#include <DropDownList.h>
Public Types | |
typedef ListBox::Row | Row |
Signal Types | |
typedef boost::signal< void(iterator)> | SelChangedSignalType |
Accessors | |
SelChangedSignalType | SelChangedSignal |
iterator | CurrentItem () const |
std::size_t | CurrentItemIndex () const |
std::size_t | IteratorToIndex (iterator it) const |
iterator | IndexToIterator (std::size_t n) const |
bool | Empty () const |
const_iterator | begin () const |
const_iterator | end () const |
const_reverse_iterator | rbegin () const |
const_reverse_iterator | rend () const |
const Row & | GetRow (std::size_t n) const |
bool | Selected (iterator it) const |
bool | Selected (std::size_t n) const |
Clr | InteriorColor () const |
Y | DropHeight () const |
Flags< ListBoxStyle > | Style () const |
std::size_t | NumRows () const |
std::size_t | NumCols () const |
std::size_t | SortCol () const |
X | ColWidth (std::size_t n) const |
Alignment | ColAlignment (std::size_t n) const |
Alignment | RowAlignment (iterator it) const |
virtual Pt | ClientUpperLeft () const |
virtual Pt | ClientLowerRight () const |
Structors | |
DropDownList (X x, Y y, X w, Y h, Y drop_ht, Clr color, Flags< WndFlag > flags=INTERACTIVE) | |
~DropDownList () | |
Mutators | |
virtual void | Render () |
virtual void | SizeMove (const Pt &ul, const Pt &lr) |
virtual void | SetColor (Clr c) |
iterator | Insert (Row *row, iterator it) |
iterator | Insert (Row *row) |
Row * | Erase (iterator it) |
void | Clear () |
iterator | begin () |
iterator | end () |
reverse_iterator | rbegin () |
reverse_iterator | rend () |
Row & | GetRow (std::size_t n) |
void | Select (iterator it) |
void | Select (std::size_t n) |
void | SetInteriorColor (Clr c) |
void | SetDropHeight (Y h) |
void | SetStyle (Flags< ListBoxStyle > s) |
void | SetNumCols (std::size_t n) |
void | SetSortCol (std::size_t n) |
void | SetColWidth (std::size_t n, X w) |
void | LockColWidths () |
void | UnLockColWidths () |
void | SetColAlignment (std::size_t n, Alignment align) |
void | SetRowAlignment (iterator it, Alignment align) |
virtual void | DefineAttributes (WndEditor *editor) |
Structors | |
DropDownList () | |
Mutators | |
virtual void | LClick (const Pt &pt, Flags< ModKey > mod_keys) |
virtual void | KeyPress (Key key, boost::uint32_t key_code_point, Flags< ModKey > mod_keys) |
ListBox * | LB () |
DropDownList is similar to GG::ListBox, but has significant restrictions over the functionality of GG::ListBox. Specifically, all list items must have the same height, and there is no dragging or dropping. Though any Control-derived object may be placed in an item cell, the items are only interactive in the drop-down list; the currently selected item is displayed only. Most of the ListBox interface is duplicated in DropDownList. Though you can still set the alignment, etc. of individual rows, as in ListBox, the currently-selected row will have the same alignment, etc. when displayed in the control in its unopened state. Note that this may look quite ugly.
Definition at line 52 of file DropDownList.h.
typedef ListBox::Row GG::DropDownList::Row |
This is a single item in a dropdown list.
Definition at line 56 of file DropDownList.h.
typedef boost::signal<void (iterator)> GG::DropDownList::SelChangedSignalType |
emitted when a new item is selected; will be end() when no item is selected
Definition at line 64 of file DropDownList.h.
GG::DropDownList::DropDownList | ( | X | x, | |
Y | y, | |||
X | w, | |||
Y | h, | |||
Y | drop_ht, | |||
Clr | color, | |||
Flags< WndFlag > | flags = INTERACTIVE | |||
) |
basic ctor. DropDownList retains ownership of lb, if it is non-null.
GG::DropDownList::~DropDownList | ( | ) |
dtor
GG::DropDownList::DropDownList | ( | ) | [protected] |
default ctor
iterator GG::DropDownList::CurrentItem | ( | ) | const |
returns the currently selected list item (returns end() if none is selected)
std::size_t GG::DropDownList::CurrentItemIndex | ( | ) | const |
returns the position of the currently selected list item within the list (returns -1 if none is selected)
std::size_t GG::DropDownList::IteratorToIndex | ( | iterator | it | ) | const |
returns the position of it within the list (returns -1 if it == end())
iterator GG::DropDownList::IndexToIterator | ( | std::size_t | n | ) | const |
returns an iterator to the row in position n (returns end() if n is an invalid index)
bool GG::DropDownList::Empty | ( | ) | const |
returns true when the list is empty
const_iterator GG::DropDownList::begin | ( | ) | const |
returns an iterator to the first list row
const_iterator GG::DropDownList::end | ( | ) | const |
returns an iterator to the imaginary row one past the last
const_reverse_iterator GG::DropDownList::rbegin | ( | ) | const |
returns an iterator to the last list row
const_reverse_iterator GG::DropDownList::rend | ( | ) | const |
returns an iterator to the imaginary row one past the first
const Row& GG::DropDownList::GetRow | ( | std::size_t | n | ) | const |
returns a const reference to the row at index n; not range-checked.
bool GG::DropDownList::Selected | ( | iterator | it | ) | const |
returns true if row it is selected
bool GG::DropDownList::Selected | ( | std::size_t | n | ) | const |
returns true if row at position n is selected
Clr GG::DropDownList::InteriorColor | ( | ) | const |
returns the color painted into the client area of the control
Y GG::DropDownList::DropHeight | ( | ) | const |
returns the height of the drop-down list
Flags<ListBoxStyle> GG::DropDownList::Style | ( | ) | const |
Returns the style flags of the list
std::size_t GG::DropDownList::NumRows | ( | ) | const |
returns the total number of items in the list
std::size_t GG::DropDownList::NumCols | ( | ) | const |
returns the total number of columns in each list item
std::size_t GG::DropDownList::SortCol | ( | ) | const |
Returns the index of the column used to sort items, when sorting is enabled.
X GG::DropDownList::ColWidth | ( | std::size_t | n | ) | const |
returns the width of column n in pixels; not range-checked
Alignment GG::DropDownList::ColAlignment | ( | std::size_t | n | ) | const |
returns the alignment of column n; must be LIST_LEFT, LIST_CENTER, or LIST_RIGHT; not range-checked
Alignment GG::DropDownList::RowAlignment | ( | iterator | it | ) | const |
returns the alignment of row n; must be LIST_TOP, LIST_VCENTER, or LIST_BOTTOM; not range-checked
virtual Pt GG::DropDownList::ClientUpperLeft | ( | ) | const [virtual] |
Returns upper-left corner of window's client area in screen coordinates (or of the entire area, if no client area is specified). Virtual because different windows have different shapes (and so ways of calculating client area).
Reimplemented from GG::Wnd.
virtual Pt GG::DropDownList::ClientLowerRight | ( | ) | const [virtual] |
Returns (one pixel past) lower-right corner of window's client area in screen coordinates (or of the entire area, if no client area is specified). Virtual because different windows have different shapes (and so ways of calculating client area).
Reimplemented from GG::Wnd.
virtual void GG::DropDownList::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.
resizes the control, ensuring the proper height is maintained based on the list's row height
Reimplemented from GG::Wnd.
virtual void GG::DropDownList::SetColor | ( | Clr | c | ) | [virtual] |
iterator GG::DropDownList::Insert | ( | Row * | row, | |
iterator | it | |||
) |
Insertion sorts row into a sorted list, or inserts into an unsorted list before it; returns index of insertion point. This Row becomes the property of the DropDownList and should not be deleted or inserted into any other DropDownLists
iterator GG::DropDownList::Insert | ( | Row * | row | ) |
Insertion sorts row into a sorted list, or inserts into an unsorted list at the end of the list; returns index of insertion point. This Row becomes the property of the DropDownList and should not be deleted or inserted into any other DropDownLists
Row* GG::DropDownList::Erase | ( | iterator | it | ) |
removes and returns it from the list, or 0 if no such row exists
void GG::DropDownList::Clear | ( | ) |
empties the list
iterator GG::DropDownList::begin | ( | ) |
returns an iterator to the first list row
iterator GG::DropDownList::end | ( | ) |
returns an iterator to the imaginary row one past the last one
reverse_iterator GG::DropDownList::rbegin | ( | ) |
returns an iterator to the last list row
reverse_iterator GG::DropDownList::rend | ( | ) |
returns an iterator to the imaginary row one past the first
Row& GG::DropDownList::GetRow | ( | std::size_t | n | ) |
returns a reference to the Row at row index n; not range-checked.
void GG::DropDownList::Select | ( | iterator | it | ) |
selects row-item it in the list
void GG::DropDownList::Select | ( | std::size_t | n | ) |
selects row-item it in the list
void GG::DropDownList::SetInteriorColor | ( | Clr | c | ) |
sets the color painted into the client area of the control
void GG::DropDownList::SetDropHeight | ( | Y | h | ) |
sets the height of the drop-down list
void GG::DropDownList::SetStyle | ( | Flags< ListBoxStyle > | s | ) |
sets the style flags for the list to s (invalidates currently selected item).
void GG::DropDownList::SetNumCols | ( | std::size_t | n | ) |
sets the number of columns in each list item to n; if no column widths exist before this call, proportional widths are calulated and set, otherwise no column widths are set
void GG::DropDownList::SetSortCol | ( | std::size_t | n | ) |
sets the index of the column used to sort rows when sorting is enabled (invalidates currently selected item); not range-checked
void GG::DropDownList::SetColWidth | ( | std::size_t | n, | |
X | w | |||
) |
sets the width of column
to w; not range-checked
void GG::DropDownList::LockColWidths | ( | ) |
Fixes the column widths; by default, an empty list will take on the number of columns of its first added row.
void GG::DropDownList::UnLockColWidths | ( | ) |
Allows the number of columns to be determined by the first row added to an empty ListBox
void GG::DropDownList::SetColAlignment | ( | std::size_t | n, | |
Alignment | align | |||
) |
sets the alignment of column n to align; not range-checked
void GG::DropDownList::SetRowAlignment | ( | iterator | it, | |
Alignment | align | |||
) |
sets the alignment of the Row at row index n to align; not range-checked
virtual void GG::DropDownList::DefineAttributes | ( | WndEditor * | editor | ) | [virtual] |
Provides the attributes of this object that are appropriate for a user to edit in a WndEditor; see WndEditor for details.
Reimplemented from GG::Control.
virtual void GG::DropDownList::LClick | ( | const Pt & | pt, | |
Flags< ModKey > | mod_keys | |||
) | [protected, virtual] |
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::DropDownList::KeyPress | ( | Key | key, | |
boost::uint32_t | key_code_point, | |||
Flags< ModKey > | mod_keys | |||
) | [protected, virtual] |
Respond to down-keystrokes (focus window only). A window may receive KeyPress() messages passed up to it from its children. For instance, Control-derived classes pass KeyPress() messages to their Parent() windows by default.
key_code_point will be zero if Unicode support is unavailable.
Reimplemented from GG::Control.
ListBox* GG::DropDownList::LB | ( | ) | [protected] |
returns the ListBox used to render the selected row and the popup list
the selection change signal object for this DropDownList
Definition at line 113 of file DropDownList.h.