#include <StyleFactory.h>
Structors | |
StyleFactory () | |
virtual | ~StyleFactory () |
Controls | |
virtual Button * | NewButton (int x, int y, int w, int h, const std::string &str, const boost::shared_ptr< Font > &font, Clr color, Clr text_color=CLR_BLACK, Flags< WndFlag > flags=CLICKABLE) const |
virtual StateButton * | NewStateButton (int x, int y, int w, int h, const std::string &str, const boost::shared_ptr< Font > &font, Flags< TextFormat > format, Clr color, Clr text_color=CLR_BLACK, Clr interior=CLR_ZERO, StateButtonStyle style=SBSTYLE_3D_XBOX, Flags< WndFlag > flags=CLICKABLE) const |
virtual RadioButtonGroup * | NewRadioButtonGroup (int x, int y, int w, int h, Orientation orientation) const |
virtual DropDownList * | NewDropDownList (int x, int y, int w, int h, int drop_ht, Clr color, Flags< WndFlag > flags=CLICKABLE) const |
virtual DynamicGraphic * | NewDynamicGraphic (int x, int y, int w, int h, bool loop, int frame_width, int frame_height, int margin, const std::vector< boost::shared_ptr< Texture > > &textures, Flags< GraphicStyle > style=GRAPHIC_NONE, int frames=-1, Flags< WndFlag > flags=Flags< WndFlag >()) const |
virtual Edit * | NewEdit (int x, int y, int w, const std::string &str, const boost::shared_ptr< Font > &font, Clr color, Clr text_color=CLR_BLACK, Clr interior=CLR_ZERO, Flags< WndFlag > flags=CLICKABLE) const |
virtual ListBox * | NewListBox (int x, int y, int w, int h, Clr color, Clr interior=CLR_ZERO, Flags< WndFlag > flags=CLICKABLE) const |
virtual MenuBar * | NewMenuBar (int x, int y, int w, const boost::shared_ptr< Font > &font, Clr text_color=CLR_WHITE, Clr color=CLR_BLACK, Clr interior=CLR_SHADOW) const |
virtual MultiEdit * | NewMultiEdit (int x, int y, int w, int h, const std::string &str, const boost::shared_ptr< Font > &font, Clr color, Flags< MultiEditStyle > style=MULTI_LINEWRAP, Clr text_color=CLR_BLACK, Clr interior=CLR_ZERO, Flags< WndFlag > flags=CLICKABLE) const |
virtual Scroll * | NewScroll (int x, int y, int w, int h, Orientation orientation, Clr color, Clr interior, Flags< WndFlag > flags=CLICKABLE|REPEAT_BUTTON_DOWN) const |
virtual Slider * | NewSlider (int x, int y, int w, int h, int min, int max, Orientation orientation, SliderLineStyle style, Clr color, int tab_width, int line_width=5, Flags< WndFlag > flags=CLICKABLE) const |
virtual Spin< int > * | NewIntSpin (int x, int y, int w, int value, int step, int min, int max, bool edits, const boost::shared_ptr< Font > &font, Clr color, Clr text_color=CLR_BLACK, Clr interior=CLR_ZERO, Flags< WndFlag > flags=CLICKABLE) const |
virtual Spin< double > * | NewDoubleSpin (int x, int y, int w, double value, double step, double min, double max, bool edits, const boost::shared_ptr< Font > &font, Clr color, Clr text_color=CLR_BLACK, Clr interior=CLR_ZERO, Flags< WndFlag > flags=CLICKABLE) const |
virtual StaticGraphic * | NewStaticGraphic (int x, int y, int w, int h, const boost::shared_ptr< Texture > &texture, Flags< GraphicStyle > style=GRAPHIC_NONE, Flags< WndFlag > flags=Flags< WndFlag >()) const |
virtual TabBar * | NewTabBar (int x, int y, int w, const boost::shared_ptr< Font > &font, Clr color, Clr text_color=CLR_BLACK, TabBarStyle style=TAB_BAR_ATTACHED, Flags< WndFlag > flags=CLICKABLE) const |
virtual TextControl * | NewTextControl (int x, int y, int w, int h, const std::string &str, const boost::shared_ptr< Font > &font, Clr color=CLR_BLACK, Flags< TextFormat > format=FORMAT_NONE, Flags< WndFlag > flags=Flags< WndFlag >()) const |
virtual TextControl * | NewTextControl (int x, int y, const std::string &str, const boost::shared_ptr< Font > &font, Clr color=CLR_BLACK, Flags< TextFormat > format=FORMAT_NONE, Flags< WndFlag > flags=Flags< WndFlag >()) const |
Subcontrols | |
virtual ListBox * | NewDropDownListListBox (int x, int y, int w, int h, Clr color, Clr interior=CLR_ZERO, Flags< WndFlag > flags=CLICKABLE) const |
virtual Scroll * | NewListBoxVScroll (int x, int y, int w, int h, Clr color, Clr interior, Flags< WndFlag > flags=CLICKABLE|REPEAT_BUTTON_DOWN) const |
virtual Scroll * | NewListBoxHScroll (int x, int y, int w, int h, Clr color, Clr interior, Flags< WndFlag > flags=CLICKABLE|REPEAT_BUTTON_DOWN) const |
virtual Scroll * | NewMultiEditVScroll (int x, int y, int w, int h, Clr color, Clr interior, Flags< WndFlag > flags=CLICKABLE|REPEAT_BUTTON_DOWN) const |
virtual Scroll * | NewMultiEditHScroll (int x, int y, int w, int h, Clr color, Clr interior, Flags< WndFlag > flags=CLICKABLE|REPEAT_BUTTON_DOWN) const |
virtual Button * | NewScrollUpButton (int x, int y, int w, int h, const std::string &str, const boost::shared_ptr< Font > &font, Clr color, Clr text_color=CLR_BLACK, Flags< WndFlag > flags=CLICKABLE|REPEAT_BUTTON_DOWN) const |
virtual Button * | NewScrollDownButton (int x, int y, int w, int h, const std::string &str, const boost::shared_ptr< Font > &font, Clr color, Clr text_color=CLR_BLACK, Flags< WndFlag > flags=CLICKABLE|REPEAT_BUTTON_DOWN) const |
virtual Button * | NewVScrollTabButton (int x, int y, int w, int h, const std::string &str, const boost::shared_ptr< Font > &font, Clr color, Clr text_color=CLR_BLACK, Flags< WndFlag > flags=CLICKABLE) const |
virtual Button * | NewScrollLeftButton (int x, int y, int w, int h, const std::string &str, const boost::shared_ptr< Font > &font, Clr color, Clr text_color=CLR_BLACK, Flags< WndFlag > flags=CLICKABLE|REPEAT_BUTTON_DOWN) const |
virtual Button * | NewScrollRightButton (int x, int y, int w, int h, const std::string &str, const boost::shared_ptr< Font > &font, Clr color, Clr text_color=CLR_BLACK, Flags< WndFlag > flags=CLICKABLE|REPEAT_BUTTON_DOWN) const |
virtual Button * | NewHScrollTabButton (int x, int y, int w, int h, const std::string &str, const boost::shared_ptr< Font > &font, Clr color, Clr text_color=CLR_BLACK, Flags< WndFlag > flags=CLICKABLE) const |
virtual Button * | NewVSliderTabButton (int x, int y, int w, int h, const std::string &str, const boost::shared_ptr< Font > &font, Clr color, Clr text_color=CLR_BLACK, Flags< WndFlag > flags=CLICKABLE) const |
virtual Button * | NewHSliderTabButton (int x, int y, int w, int h, const std::string &str, const boost::shared_ptr< Font > &font, Clr color, Clr text_color=CLR_BLACK, Flags< WndFlag > flags=CLICKABLE) const |
virtual Button * | NewSpinIncrButton (int x, int y, int w, int h, const std::string &str, const boost::shared_ptr< Font > &font, Clr color, Clr text_color=CLR_BLACK, Flags< WndFlag > flags=CLICKABLE|REPEAT_BUTTON_DOWN) const |
virtual Button * | NewSpinDecrButton (int x, int y, int w, int h, const std::string &str, const boost::shared_ptr< Font > &font, Clr color, Clr text_color=CLR_BLACK, Flags< WndFlag > flags=CLICKABLE|REPEAT_BUTTON_DOWN) const |
virtual Edit * | NewSpinEdit (int x, int y, int w, const std::string &str, const boost::shared_ptr< Font > &font, Clr color, Clr text_color=CLR_BLACK, Clr interior=CLR_ZERO, Flags< WndFlag > flags=CLICKABLE) const |
virtual StateButton * | NewTabBarTab (int x, int y, int w, int h, const std::string &str, const boost::shared_ptr< Font > &font, Flags< TextFormat > format, Clr color, Clr text_color=CLR_BLACK, Clr interior=CLR_ZERO, StateButtonStyle style=SBSTYLE_3D_TOP_ATTACHED_TAB, Flags< WndFlag > flags=CLICKABLE) const |
virtual Button * | NewTabBarLeftButton (int x, int y, int w, int h, const std::string &str, const boost::shared_ptr< Font > &font, Clr color, Clr text_color=CLR_BLACK, Flags< WndFlag > flags=CLICKABLE) const |
virtual Button * | NewTabBarRightButton (int x, int y, int w, int h, const std::string &str, const boost::shared_ptr< Font > &font, Clr color, Clr text_color=CLR_BLACK, Flags< WndFlag > flags=CLICKABLE) const |
Wnds | |
virtual TabWnd * | NewTabWnd (int x, int y, int w, int h, const boost::shared_ptr< Font > &font, Clr color, Clr text_color=CLR_BLACK, TabBarStyle style=TAB_BAR_ATTACHED, Flags< WndFlag > flags=CLICKABLE|DRAGABLE) const |
Dialogs | |
virtual ColorDlg * | NewColorDlg (int x, int y, const boost::shared_ptr< Font > &font, Clr dialog_color, Clr border_color, Clr text_color=CLR_BLACK) const |
virtual ColorDlg * | NewColorDlg (int x, int y, Clr original_color, const boost::shared_ptr< Font > &font, Clr dialog_color, Clr border_color, Clr text_color=CLR_BLACK) const |
virtual FileDlg * | NewFileDlg (const std::string &directory, const std::string &filename, bool save, bool multi, const boost::shared_ptr< Font > &font, Clr color, Clr border_color, Clr text_color=CLR_BLACK) const |
virtual ThreeButtonDlg * | NewThreeButtonDlg (int x, int y, int w, int h, const std::string &msg, const boost::shared_ptr< Font > &font, Clr color, Clr border_color, Clr button_color, Clr text_color, int buttons, const std::string &zero="", const std::string &one="", const std::string &two="") const |
virtual ThreeButtonDlg * | NewThreeButtonDlg (int w, int h, const std::string &msg, const boost::shared_ptr< Font > &font, Clr color, Clr border_color, Clr button_color, Clr text_color, int buttons, const std::string &zero="", const std::string &one="", const std::string &two="") const |
Public Member Functions | |
virtual void | DeleteWnd (Wnd *wnd) const |
template<class Archive> | |
void | serialize (Archive &ar, const unsigned int version) |
This class can be used to create a look for the entire GUI by providing user-defined subclasses of the standard Controls. A Control or dialog can then use the StyleFactory to create the dialogs/controls it needs (e.g. a vertical Scroll uses NewVScrollTabButton() to create its tab). This reduces the amount of subclass code that is required to produce a set of custom GG classes. Note that the subcontrol factory methods below may be the same as or different from their generic counterparts, allowing greater flexibility in which controls are created in different contexts. For example, NewButton() may create a generic, basic GG Button, but NewHSliderTabButton() may produce a specialized button that looks better on horizontal sliders. By default, all subcontrol methods invoke the more generic control method for the type of control they each return.
Definition at line 66 of file StyleFactory.h.
GG::StyleFactory::StyleFactory | ( | ) |
Default ctor.
virtual GG::StyleFactory::~StyleFactory | ( | ) | [virtual] |
Virtual dtor.
virtual StateButton* GG::StyleFactory::NewStateButton | ( | int | x, | |
int | y, | |||
int | w, | |||
int | h, | |||
const std::string & | str, | |||
const boost::shared_ptr< Font > & | font, | |||
Flags< TextFormat > | format, | |||
Clr | color, | |||
Clr | text_color = CLR_BLACK , |
|||
Clr | interior = CLR_ZERO , |
|||
StateButtonStyle | style = SBSTYLE_3D_XBOX , |
|||
Flags< WndFlag > | flags = CLICKABLE | |||
) | const [virtual] |
Returns a new GG StateButton.
virtual RadioButtonGroup* GG::StyleFactory::NewRadioButtonGroup | ( | int | x, | |
int | y, | |||
int | w, | |||
int | h, | |||
Orientation | orientation | |||
) | const [virtual] |
Returns a new GG RadioButtonGroup.
virtual DropDownList* GG::StyleFactory::NewDropDownList | ( | int | x, | |
int | y, | |||
int | w, | |||
int | h, | |||
int | drop_ht, | |||
Clr | color, | |||
Flags< WndFlag > | flags = CLICKABLE | |||
) | const [virtual] |
Returns a new GG DropDownList.
virtual DynamicGraphic* GG::StyleFactory::NewDynamicGraphic | ( | int | x, | |
int | y, | |||
int | w, | |||
int | h, | |||
bool | loop, | |||
int | frame_width, | |||
int | frame_height, | |||
int | margin, | |||
const std::vector< boost::shared_ptr< Texture > > & | textures, | |||
Flags< GraphicStyle > | style = GRAPHIC_NONE , |
|||
int | frames = -1 , |
|||
Flags< WndFlag > | flags = Flags< WndFlag >() | |||
) | const [virtual] |
Returns a new GG DynamicGraphic.
virtual MultiEdit* GG::StyleFactory::NewMultiEdit | ( | int | x, | |
int | y, | |||
int | w, | |||
int | h, | |||
const std::string & | str, | |||
const boost::shared_ptr< Font > & | font, | |||
Clr | color, | |||
Flags< MultiEditStyle > | style = MULTI_LINEWRAP , |
|||
Clr | text_color = CLR_BLACK , |
|||
Clr | interior = CLR_ZERO , |
|||
Flags< WndFlag > | flags = CLICKABLE | |||
) | const [virtual] |
virtual Scroll* GG::StyleFactory::NewScroll | ( | int | x, | |
int | y, | |||
int | w, | |||
int | h, | |||
Orientation | orientation, | |||
Clr | color, | |||
Clr | interior, | |||
Flags< WndFlag > | flags = CLICKABLE|REPEAT_BUTTON_DOWN | |||
) | const [virtual] |
virtual Slider* GG::StyleFactory::NewSlider | ( | int | x, | |
int | y, | |||
int | w, | |||
int | h, | |||
int | min, | |||
int | max, | |||
Orientation | orientation, | |||
SliderLineStyle | style, | |||
Clr | color, | |||
int | tab_width, | |||
int | line_width = 5 , |
|||
Flags< WndFlag > | flags = CLICKABLE | |||
) | const [virtual] |
virtual Spin<int>* GG::StyleFactory::NewIntSpin | ( | int | x, | |
int | y, | |||
int | w, | |||
int | value, | |||
int | step, | |||
int | min, | |||
int | max, | |||
bool | edits, | |||
const boost::shared_ptr< Font > & | font, | |||
Clr | color, | |||
Clr | text_color = CLR_BLACK , |
|||
Clr | interior = CLR_ZERO , |
|||
Flags< WndFlag > | flags = CLICKABLE | |||
) | const [virtual] |
Returns a new GG Spin<int>.
virtual Spin<double>* GG::StyleFactory::NewDoubleSpin | ( | int | x, | |
int | y, | |||
int | w, | |||
double | value, | |||
double | step, | |||
double | min, | |||
double | max, | |||
bool | edits, | |||
const boost::shared_ptr< Font > & | font, | |||
Clr | color, | |||
Clr | text_color = CLR_BLACK , |
|||
Clr | interior = CLR_ZERO , |
|||
Flags< WndFlag > | flags = CLICKABLE | |||
) | const [virtual] |
Returns a new GG Spin<int>.
virtual StaticGraphic* GG::StyleFactory::NewStaticGraphic | ( | int | x, | |
int | y, | |||
int | w, | |||
int | h, | |||
const boost::shared_ptr< Texture > & | texture, | |||
Flags< GraphicStyle > | style = GRAPHIC_NONE , |
|||
Flags< WndFlag > | flags = Flags< WndFlag >() | |||
) | const [virtual] |
Returns a new GG StaticGraphic.
virtual TextControl* GG::StyleFactory::NewTextControl | ( | int | x, | |
int | y, | |||
int | w, | |||
int | h, | |||
const std::string & | str, | |||
const boost::shared_ptr< Font > & | font, | |||
Clr | color = CLR_BLACK , |
|||
Flags< TextFormat > | format = FORMAT_NONE , |
|||
Flags< WndFlag > | flags = Flags< WndFlag >() | |||
) | const [virtual] |
Returns a new GG TextControl.
virtual TextControl* GG::StyleFactory::NewTextControl | ( | int | x, | |
int | y, | |||
const std::string & | str, | |||
const boost::shared_ptr< Font > & | font, | |||
Clr | color = CLR_BLACK , |
|||
Flags< TextFormat > | format = FORMAT_NONE , |
|||
Flags< WndFlag > | flags = Flags< WndFlag >() | |||
) | const [virtual] |
Returns a new GG TextControl whose size is exactly that required to hold its text.
virtual ListBox* GG::StyleFactory::NewDropDownListListBox | ( | int | x, | |
int | y, | |||
int | w, | |||
int | h, | |||
Clr | color, | |||
Clr | interior = CLR_ZERO , |
|||
Flags< WndFlag > | flags = CLICKABLE | |||
) | const [virtual] |
Returns a new ListBox, to be used in a DropDownList.
virtual StateButton* GG::StyleFactory::NewTabBarTab | ( | int | x, | |
int | y, | |||
int | w, | |||
int | h, | |||
const std::string & | str, | |||
const boost::shared_ptr< Font > & | font, | |||
Flags< TextFormat > | format, | |||
Clr | color, | |||
Clr | text_color = CLR_BLACK , |
|||
Clr | interior = CLR_ZERO , |
|||
StateButtonStyle | style = SBSTYLE_3D_TOP_ATTACHED_TAB , |
|||
Flags< WndFlag > | flags = CLICKABLE | |||
) | const [virtual] |
Returns a new StateButton, to be used in a TabBar.
virtual ThreeButtonDlg* GG::StyleFactory::NewThreeButtonDlg | ( | int | x, | |
int | y, | |||
int | w, | |||
int | h, | |||
const std::string & | msg, | |||
const boost::shared_ptr< Font > & | font, | |||
Clr | color, | |||
Clr | border_color, | |||
Clr | button_color, | |||
Clr | text_color, | |||
int | buttons, | |||
const std::string & | zero = "" , |
|||
const std::string & | one = "" , |
|||
const std::string & | two = "" | |||
) | const [virtual] |
Returns a new GG ThreeButtonDlg.
virtual ThreeButtonDlg* GG::StyleFactory::NewThreeButtonDlg | ( | int | w, | |
int | h, | |||
const std::string & | msg, | |||
const boost::shared_ptr< Font > & | font, | |||
Clr | color, | |||
Clr | border_color, | |||
Clr | button_color, | |||
Clr | text_color, | |||
int | buttons, | |||
const std::string & | zero = "" , |
|||
const std::string & | one = "" , |
|||
const std::string & | two = "" | |||
) | const [virtual] |
Returns a new GG ThreeButtonDlg that automatically centers itself in the app.
virtual void GG::StyleFactory::DeleteWnd | ( | Wnd * | wnd | ) | const [virtual] |
Deletes wnd.
It is only necessary to use this method to destroy Wnds when the factory that created them exists in a plugin.