GG
List of all members
GG::StateButton Class Reference

#include <Button.h>

Inheritance diagram for GG::StateButton:
GG::TextControl GG::Control GG::Wnd

Signal Types

typedef boost::signal< void(bool)> CheckedSignalType
 

Structors

 StateButton (X x, Y y, X w, Y 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=INTERACTIVE)
 
 StateButton ()
 

Accessors

CheckedSignalType CheckedSignal
 
virtual Pt MinUsableSize () const
 
bool Checked () const
 
Clr InteriorColor () const
 
StateButtonStyle Style () const
 
Pt ButtonUpperLeft () const
 
Pt ButtonLowerRight () const
 
Pt TextUpperLeft () const
 

Mutators

virtual void Render ()
 
virtual void SizeMove (const Pt &ul, const Pt &lr)
 
void Reset ()
 
void SetCheck (bool b=true)
 
void SetButtonPosition (const Pt &ul, const Pt &lr)
 
void SetDefaultButtonPosition ()
 
virtual void SetColor (Clr c)
 
void SetInteriorColor (Clr c)
 
void SetStyle (StateButtonStyle bs)
 
virtual void LClick (const Pt &pt, Flags< ModKey > mod_keys)
 
void RepositionButton ()
 

Additional Inherited Members

- Public Types inherited from GG::Wnd
enum  ChildClippingMode {
  DontClip,
  ClipToClient,
  ClipToWindow,
  ClipToClientAndWindowSeparately
}
 
typedef std::map< const Wnd
*, bool >::iterator 
DropsAcceptableIter
 
- Public Member Functions inherited from GG::TextControl
 TextControl (X x, Y y, X w, Y 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 >())
 
 TextControl (X x, Y 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 std::string & Text () const
 
Flags< TextFormat > GetTextFormat () const
 
Clr TextColor () const
 
bool ClipText () const
 
bool SetMinSize () const
 
template<class T >
void operator>> (T &t) const
 
template<class T >
GetValue () const
 
 operator const std::string & () const
 
bool Empty () const
 
CPSize Length () const
 
Pt TextUpperLeft () const
 
Pt TextLowerRight () const
 
virtual void SetText (const std::string &str)
 
void SetTextFormat (Flags< TextFormat > format)
 
void SetTextColor (Clr color)
 
void ClipText (bool b)
 
void SetMinSize (bool b)
 
template<class T >
void operator<< (T t)
 
void operator+= (const std::string &s)
 
void operator+= (char c)
 
void Clear ()
 
void Insert (CPSize pos, char c)
 
void Insert (CPSize pos, const std::string &s)
 
void Erase (CPSize pos, CPSize num=CP1)
 
void Insert (std::size_t line, CPSize pos, char c)
 
void Insert (std::size_t line, CPSize pos, const std::string &s)
 
void Erase (std::size_t line, CPSize pos, CPSize num=CP1)
 
- Public Member Functions inherited from GG::Control
virtual void DropsAcceptable (DropsAcceptableIter first, DropsAcceptableIter last, const Pt &pt) const
 
Clr Color () const
 
bool Disabled () const
 
virtual void AcceptDrops (const std::vector< Wnd * > &wnds, const Pt &pt)
 
virtual void Disable (bool b=true)
 
- Public Member Functions inherited from GG::Wnd
virtual ~Wnd ()
 
bool Interactive () const
 
bool RepeatButtonDown () const
 
bool Dragable () const
 
bool Resizable () const
 
bool OnTop () const
 
bool Modal () const
 
ChildClippingMode GetChildClippingMode () const
 
bool NonClientChild () const
 
bool Visible () const
 
const std::string & Name () const
 
const std::string & DragDropDataType () const
 
Pt UpperLeft () const
 
Pt LowerRight () const
 
Pt RelativeUpperLeft () const
 
Pt RelativeLowerRight () const
 
X Width () const
 
Y Height () const
 
int ZOrder () const
 
Pt Size () const
 
Pt MinSize () const
 
Pt MaxSize () const
 
virtual Pt ClientUpperLeft () const
 
virtual Pt ClientLowerRight () const
 
Pt ClientSize () const
 
X ClientWidth () const
 
Y ClientHeight () const
 
Pt ScreenToWindow (const Pt &pt) const
 
Pt ScreenToClient (const Pt &pt) const
 
virtual bool InWindow (const Pt &pt) const
 
virtual bool InClient (const Pt &pt) const
 
const std::list< Wnd * > & Children () const
 
WndParent () const
 
WndRootParent () const
 
LayoutGetLayout () const
 
LayoutContainingLayout () const
 
const std::vector
< BrowseInfoMode > & 
BrowseModes () const
 
const std::string & BrowseInfoText (std::size_t mode) const
 
const boost::shared_ptr
< StyleFactory > & 
GetStyleFactory () const
 
virtual WndRegion WindowRegion (const Pt &pt) const
 
void SetDragDropDataType (const std::string &data_type)
 
virtual void StartingChildDragDrop (const Wnd *wnd, const Pt &offset)
 
virtual void CancellingChildDragDrop (const std::vector< const Wnd * > &wnds)
 
virtual void ChildrenDraggedAway (const std::vector< Wnd * > &wnds, const Wnd *destination)
 
void SetName (const std::string &name)
 
void Hide (bool children=true)
 
void Show (bool children=true)
 
virtual void ModalInit ()
 
void SetChildClippingMode (ChildClippingMode mode)
 
void NonClientChild (bool b)
 
void MoveTo (const Pt &pt)
 
void OffsetMove (const Pt &pt)
 
void Resize (const Pt &sz)
 
void SetMinSize (const Pt &sz)
 
void SetMaxSize (const Pt &sz)
 
void AttachChild (Wnd *wnd)
 
void MoveChildUp (Wnd *wnd)
 
void MoveChildDown (Wnd *wnd)
 
void DetachChild (Wnd *wnd)
 
void DetachChildren ()
 
void DeleteChild (Wnd *wnd)
 
void DeleteChildren ()
 
void InstallEventFilter (Wnd *wnd)
 
void RemoveEventFilter (Wnd *wnd)
 
void HorizontalLayout ()
 
void VerticalLayout ()
 
void GridLayout ()
 
void SetLayout (Layout *layout)
 
void RemoveLayout ()
 
LayoutDetachLayout ()
 
void SetLayoutBorderMargin (unsigned int margin)
 
void SetLayoutCellMargin (unsigned int margin)
 
virtual bool Run ()
 
void EndRun ()
 
void SetBrowseModeTime (unsigned int time, std::size_t mode=0)
 
void SetBrowseInfoWnd (const boost::shared_ptr< BrowseInfoWnd > &wnd, std::size_t mode=0)
 
void ClearBrowseInfoWnd (std::size_t mode=0)
 
void SetBrowseText (const std::string &text, std::size_t mode=0)
 
void SetBrowseModes (const std::vector< BrowseInfoMode > &modes)
 
void SetStyleFactory (const boost::shared_ptr< StyleFactory > &factory)
 
 GG_ABSTRACT_EXCEPTION (Exception)
 
 GG_CONCRETE_EXCEPTION (BadLayout, GG::Wnd, Exception)
 
- Static Public Member Functions inherited from GG::Wnd
static unsigned int DefaultBrowseTime ()
 
static void SetDefaultBrowseTime (unsigned int time)
 
static const boost::shared_ptr
< BrowseInfoWnd > & 
DefaultBrowseInfoWnd ()
 
static void SetDefaultBrowseInfoWnd (const boost::shared_ptr< BrowseInfoWnd > &browse_info_wnd)
 
- Protected Types inherited from GG::Wnd
enum  DragDropRenderingState {
  NOT_DRAGGED,
  IN_PLACE_COPY,
  DRAGGED_OVER_UNACCEPTING_DROP_TARGET,
  DRAGGED_OVER_ACCEPTING_DROP_TARGET
}
 
- Protected Member Functions inherited from GG::TextControl
 TextControl ()
 
const std::vector
< Font::LineData > & 
GetLineData () const
 
const boost::shared_ptr< Font > & GetFont () const
 
bool FitToText () const
 
- Protected Member Functions inherited from GG::Control
virtual void MouseWheel (const Pt &pt, int move, Flags< ModKey > mod_keys)
 
virtual void KeyPress (Key key, boost::uint32_t key_code_point, Flags< ModKey > mod_keys)
 
virtual void KeyRelease (Key key, boost::uint32_t key_code_point, Flags< ModKey > mod_keys)
 
 Control ()
 
 Control (X x, Y y, X w, Y h, Flags< WndFlag > flags=INTERACTIVE)
 
- Protected Attributes inherited from GG::Control
Clr m_color
 
bool m_disabled
 

Detailed Description

This is a basic state button control.

This class is for checkboxes and radio buttons, etc. The button/checkbox area is determined from the text height and format; the button height and width will be the text height, and the the button will be positioned to the left of the text and vertically the same as the text, unless the text is centered, in which case the button and text will be centered, and the button will appear above or below the text. Whenever there is not room to place the button and the text in the proper orientation because the entire control's size is too small, the button and text are positioned in their default spots (button on left, text on right, centered vertically).

Definition at line 140 of file Button.h.

Member Function Documentation

virtual Pt GG::StateButton::MinUsableSize ( ) const
virtual

Returns the size of the minimum bounding box that can enclose the Wnd and still show all of its elements, plus enough room for interaction with those elements (if applicable). For example, a TextControl's MinUsableSize() is just the area of its text, and a Scroll's MinUsableSize() is the combined sizes of its up-button, down-button, and tab (plus a bit of room in which to drag the tab).

Reimplemented from GG::TextControl.

StateButtonStyle GG::StateButton::Style ( ) const

Returns the visual style of the button

See Also
StateButtonStyle
virtual void GG::StateButton::Render ( )
virtual

Draws this Wnd. Note that Wnds being dragged for a drag-and-drop operation are rendered twice – once in-place as normal, once in the location of the drag operation, attached to the cursor. Such Wnds may wish to render themselves differently in those two cases. To determine which render is being performed, they can call GUI::GetGUI()->RenderingDragDropWnds().

Reimplemented from GG::TextControl.

virtual void GG::StateButton::SizeMove ( const Pt ul,
const Pt lr 
)
virtual

Resizes and/or moves window to new upper-left and lower right boundaries.

Reimplemented from GG::TextControl.

void GG::StateButton::SetStyle ( StateButtonStyle  bs)

Sets the visual style of the button

See Also
StateButtonStyle
virtual void GG::StateButton::LClick ( const Pt pt,
Flags< ModKey >  mod_keys 
)
protectedvirtual

Respond to release of left mouse button over this Wnd, if it was also originally depressed over this Wnd. A Wnd will receive an LButtonUp() message whenever a drag that started over its area ends over its area as well.

Reimplemented from GG::Wnd.


The documentation for this class was generated from the following file: