GG: GG::Button Class Reference

GG

- Main Page
- Related Pages
- Namespaces
- Classes
- Files

- Class List
- Class Index
- Class Hierarchy
- Class Members

Public Types | List of all members
GG::Button Class Reference

`#include <Button.h>`

Inheritance diagram for GG::Button:

## Public Types
enum | ButtonState { BN_PRESSED, BN_UNPRESSED, BN_ROLLOVER }

## Signal Types
typedef boost::signal< void()> | ClickedSignalType

## Structors
| Button (X x, Y y, X w, Y h, const std::string &str, const boost::shared_ptr< Font > &font, Clr color, Clr text_color=CLR_BLACK, Flags< WndFlag > flags=INTERACTIVE)
| Button ()

## Accessors
ClickedSignalType | ClickedSignal
ButtonState | State () const
const SubTexture & | UnpressedGraphic () const
const SubTexture & | PressedGraphic () const
const SubTexture & | RolloverGraphic () const

## Mutators
virtual void | Render ()
virtual void | SetColor (Clr c)
void | SetState (ButtonState state)
void | SetUnpressedGraphic (const SubTexture &st)
void | SetPressedGraphic (const SubTexture &st)
void | SetRolloverGraphic (const SubTexture &st)
virtual void | LButtonDown (const Pt &pt, Flags< ModKey > mod_keys)
virtual void | LDrag (const Pt &pt, const Pt &move, Flags< ModKey > mod_keys)
virtual void | LButtonUp (const Pt &pt, Flags< ModKey > mod_keys)
virtual void | LClick (const Pt &pt, Flags< ModKey > mod_keys)
virtual void | MouseHere (const Pt &pt, Flags< ModKey > mod_keys)
virtual void | MouseLeave ()
virtual void | RenderUnpressed ()
virtual void | RenderPressed ()
virtual void | RenderRollover ()

## Additional Inherited Members
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 >())
virtual Pt | MinUsableSize () const
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 >
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)
virtual void | SizeMove (const Pt &ul, const Pt &lr)
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
Wnd * | Parent () const
Wnd * | RootParent () const
Layout * | GetLayout () const
Layout * | ContainingLayout () 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 ()
Layout * | DetachLayout ()
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 button control.

Has three states: BN_UNPRESSED, BN_PRESSED, and BN_ROLLOVER. BN_ROLLOVER is when the cursor "rolls over" the button, without depressing it, allowing rollover effects on the button. To create a bitmap button, simply set the unpressed, pressed, and/or rollover graphics to the desired SubTextures.

See Also
  GG::SubTexture

Definition at line 47 of file Button.h.

## Member Enumeration Documentation

enum GG::Button::ButtonState

the states of being for a GG::Button

Enumerator
BN_PRESSED | The button is being pressed by the user, and the cursor is over the button.
BN_UNPRESSED | The button is unpressed.
BN_ROLLOVER | The button has the cursor over it, but is unpressed.

Definition at line 51 of file Button.h.

## Member Function Documentation

ButtonState GG::Button::State | ( |  | ) | const

Returns button state

See Also
  ButtonState

virtual void GG::Button::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.

void GG::Button::SetState | ( | ButtonState | state | ) |

Sets button state programmatically

See Also
  ButtonState

virtual void GG::Button::LButtonDown | ( | const Pt & | pt,
|  | Flags< ModKey > | mod_keys
| ) |  |
| protectedvirtual

Respond to left button down msg. A window receives this whenever any input device button changes from up to down while over the window.

Note
  If this Wnd was created with the REPEAT_BUTTON_DOWN flag, this method may be called multiple times during a single button press-release cycle.

See Also
  GG::GUI

Reimplemented from GG::Wnd.

virtual void GG::Button::LDrag | ( | const Pt & | pt,
|  | const Pt & | move,
|  | Flags< ModKey > | mod_keys
| ) |  |
| protectedvirtual

Respond to left button drag msg (even if this Wnd is not dragable). Drag messages are only sent to the window over which the button was pressed at the beginning of the drag. A window receives this whenever any input device button is down and the cursor is moving while over the window. The window will also receive drag messages when the mouse is being dragged outside the window's area.

Reimplemented from GG::Wnd.

virtual void GG::Button::LButtonUp | ( | const Pt & | pt,
|  | Flags< ModKey > | mod_keys
| ) |  |
| protectedvirtual

Respond to release of left mouse button outside this Wnd, if it was originally depressed over this Wnd. A Wnd will receive an LButtonUp() message whenever a drag that started over its area ends, even if the cursor is not currently over the window when this happens.

Reimplemented from GG::Wnd.

virtual void GG::Button::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.

virtual void GG::Button::MouseHere | ( | const Pt & | pt,
|  | Flags< ModKey > | mod_keys
| ) |  |
| protectedvirtual

Respond to cursor moving about within the Wnd, or to cursor lingering within the Wnd for a long period of time. A MouseHere() message will not be generated the first time the cursor enters the window's area. In that case, a MouseEnter() message is generated.

Reimplemented from GG::Wnd.

virtual void GG::Button::MouseLeave | ( |  | ) |
| protectedvirtual

Respond to cursor leaving window's coords.

Reimplemented from GG::Wnd.

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

- Button.h