GG: GG::TabBar Class Reference

GG

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

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

Public Attributes | Static Public Attributes | List of all members
GG::TabBar Class Reference

`#include <TabWnd.h>`

Inheritance diagram for GG::TabBar:

## Public Attributes
TabChangedSignalType | TabChangedSignal

## Static Public Attributes
static const std::size_t | NO_TAB
static const X | BUTTON_WIDTH

## Signal Types
typedef boost::signal< void(std::size_t)> | TabChangedSignalType

## Structors
| TabBar (X x, Y y, X w, const boost::shared_ptr< Font > &font, Clr color, Clr text_color=CLR_BLACK, TabBarStyle style=TAB_BAR_ATTACHED, Flags< WndFlag > flags=INTERACTIVE)
| TabBar ()

## Accessors
virtual Pt | MinUsableSize () const
bool | Empty () const
std::size_t | NumTabs () const
std::size_t | CurrentTabIndex () const
Clr | TextColor () const
const Button * | LeftButton () const
const Button * | RightButton () const

## Mutators
virtual void | SizeMove (const Pt &ul, const Pt &lr)
virtual void | Render ()
std::size_t | AddTab (const std::string &name)
void | InsertTab (std::size_t index, const std::string &name)
void | RemoveTab (const std::string &name)
void | SetCurrentTab (std::size_t index)
virtual bool | EventFilter (Wnd *w, const WndEvent &event)
void | RaiseCurrentTabButton ()

## 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::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 | SetColor (Clr c)
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::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

Contains a sequence of buttons (hereafter "tabs") that act together in a RadioButtonGroup.

This class is intended to be used to select the current Wnd in a TabWnd.

Definition at line 214 of file TabWnd.h.

## Member Typedef Documentation

typedef boost::signal<void (std::size_t)> GG::TabBar::TabChangedSignalType

Emitted when the currently-selected tab has changed; the new selected tab's index in the group is provided (this may be NO_TAB if no tab is currently selected).

Definition at line 221 of file TabWnd.h.

## Constructor & Destructor Documentation

GG::TabBar::TabBar | ( | X | x,
|  | Y | y,
|  | X | w,
|  | const boost::shared_ptr< Font > & | font,
|  | Clr | color,
|  | Clr | text_color = `CLR_BLACK`,
|  | TabBarStyle | style = `TAB_BAR_ATTACHED`,
|  | Flags< WndFlag > | flags = `INTERACTIVE`
| ) |  |

Basic ctor.

## Member Function Documentation

virtual Pt GG::TabBar::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::Wnd.

bool GG::TabBar::Empty | ( |  | ) | const

Returns true iff NumWnds() == 0.

std::size_t GG::TabBar::NumTabs | ( |  | ) | const

Returns the number of tabs currently in this TabWnd.

std::size_t GG::TabBar::CurrentTabIndex | ( |  | ) | const

Returns the index into the sequence of tabs in this TabBar of the tab currently selected. NO_TAB is returned if there is no tab currently selected.

Clr GG::TabBar::TextColor | ( |  | ) | const

Returns the color used to render the text in this TabBar.

virtual void GG::TabBar::SizeMove | ( | const Pt & | ul,
|  | const Pt & | lr
| ) |  |
| virtual

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

Reimplemented from GG::Wnd.

virtual void GG::TabBar::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().

Implements GG::Control.

std::size_t GG::TabBar::AddTab | ( | const std::string & | name | ) |

Adds a tab called name to the sequence of tabs in this TabBar. name can be used later to remove the tab (name is not checked for uniqueness). Returns the index at which the tab is placed.

void GG::TabBar::InsertTab | ( | std::size_t | index,
|  | const std::string & | name
| ) |  |

Adds tab to the sequence of tabs in this TabBar, inserting it at the index location within the sequence. name can be used later to remove the tab (name is not checked for uniqueness). Not range checked.

void GG::TabBar::RemoveTab | ( | const std::string & | name | ) |

Removes the first tab previously added witht he name name from the sequence of tab in this TabBar.

void GG::TabBar::SetCurrentTab | ( | std::size_t | index | ) |

Sets the current tab in the sequence to the tab in the index position within the sequence. Not range checked.

virtual bool GG::TabBar::EventFilter | ( | Wnd * | w,
|  | const WndEvent & | event
| ) |  |
| protectedvirtual

Handles an WndEvent destined for Wnd w, but which this Wnd is allowed to handle first. Returns true if this filter processed the message.

Reimplemented from GG::Wnd.

void GG::TabBar::RaiseCurrentTabButton | ( |  | ) |
| protected

Brings the currently-selected tab button to the top within the tab button group.

## Member Data Documentation

const std::size_t GG::TabBar::NO_TAB
| static

The invalid tab position index that there is no currently-selected tab.

Definition at line 276 of file TabWnd.h.

const X GG::TabBar::BUTTON_WIDTH
| static

The default width to use for the left and right buttons.

Definition at line 279 of file TabWnd.h.

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

- TabWnd.h