001package com.fs.starfarer.api.campaign;
002
003import java.awt.Color;
004
005import com.fs.starfarer.api.characters.PersonAPI;
006import com.fs.starfarer.api.ui.LabelAPI;
007import com.fs.starfarer.api.ui.TooltipMakerAPI;
008import com.fs.starfarer.api.util.Highlights;
009
010public interface TextPanelAPI {
011        
012        void setFontInsignia();
013        void setFontOrbitron();
014        void setFontVictor();
015        void setFontSmallInsignia();
016        
017        LabelAPI addPara(String text);
018        LabelAPI addPara(String text, Color color);
019        LabelAPI addParagraph(String text);
020        LabelAPI addParagraph(String text, Color color);
021        void replaceLastParagraph(String text);
022        void replaceLastParagraph(String text, Color color);
023        void appendToLastParagraph(String text);
024        void appendToLastParagraph(int charsToCut, String text);
025        
026        void highlightFirstInLastPara(String text, Color color);
027        void highlightLastInLastPara(String text, Color color);
028        void highlightInLastPara(Color color, String ...strings);
029        
030        /**
031         * Must be in order they appear in the paragraph.
032         * @param strings
033         */
034        void highlightInLastPara(String ...strings);
035        void setHighlightColorsInLastPara(Color ...colors);
036        void clear();
037        
038        InteractionDialogAPI getDialog();
039        boolean isOrbitronMode();
040        void setOrbitronMode(boolean orbitronMode);
041        ResourceCostPanelAPI addCostPanel(String title, float height, Color color, Color dark);
042        void setHighlightsInLastPara(Highlights h);
043        LabelAPI addPara(String format, Color color, Color hl, String ... highlights);
044        LabelAPI addPara(String format, Color hl, String ... highlights);
045        
046        void advance(float amount);
047        
048        TooltipMakerAPI beginTooltip();
049        void addTooltip();
050        void updateSize();
051        boolean addCostPanel(String title, Color color, Color dark, Object ... params);
052        boolean addCostPanel(String title, Object ... params);
053        void addSkillPanel(PersonAPI person, boolean admin);
054        void setFontOrbitronUnnecessarilyLarge();
055        void addImage(String category, String key);
056        void addImage(String spriteName);
057}