001package com.fs.starfarer.api.ui;
002
003import java.awt.Color;
004
005/**
006 * @author Alex Mosolov
007 *
008 * Copyright 2015 Fractal Softworks, LLC
009 */
010public interface LabelAPI {
011        void setHighlight(int start, int end);
012        void highlightFirst(String substring);
013        void highlightLast(String substring);
014        void setHighlight(String ... substrings);
015        void unhighlightIndex(int index);
016        void setHighlightColor(Color color);
017        void setHighlightColors(Color ... colors);
018        void setAlignment(Alignment mid);
019        void setText(String text);
020        String getText();
021        void setOpacity(float opacity);
022        float getOpacity();
023        PositionAPI getPosition();
024        
025        void italicize();
026        /**
027         * @param shear amount of shear to the right
028         */
029        void italicize(float shear);
030        void unitalicize();
031        PositionAPI autoSizeToWidth(float width);
032        
033        float computeTextWidth(String in);
034        float computeTextHeight(String in);
035        void flash(float durIn, float durOut);
036        void render(float alphaMult);
037        void advance(float amount);
038        void setHighlightOnMouseover(boolean highlightOnMouseover);
039        void setColor(Color color);
040        Color getColor();
041}