Public Member Functions
GUI::MultiColumnList Class Reference

Base class for the multi column list widget. More...

Inherits GUI::Window.

List of all members.

Public Member Functions

bool isUserSortControlEnabled ()
 Return whether user manipulation of the sort column and direction are enabled.
bool isUserColumnSizingEnabled ()
 Return whether the user may size column segments.
bool isUserColumnDraggingEnabled ()
 Return whether the user may modify the order of the columns.
int getColumnCount ()
 Return the number of columns in the multi-column list.
int getRowCount ()
 Return the number of rows in the multi-column list.
int getSortColumn ()
 Return the zero based index of the current sort column. There must be at least one column to successfully call this method.
int getColumnWithID (int col_id)
 Return the zero based column index of the column with the specified ID.
int getColumnWithHeaderText (string text)
 Return the zero based index of the column whos header text matches the specified text.
UDim getTotalColumnHeadersWidth ()
 Return the total width of all column headers.
UDim getColumnHeaderWidth (int col_idx)
 Return the width of the specified column header (and therefore the column itself).
int getSortDirection ()
 Return the currently set sort direction.
ListHeaderSegment getHeaderSegmentForColumn (int col_idx)
 Return the ListHeaderSegment object for the specified column.
int getItemRowIndex (ListboxItem item)
 Return the zero based index of the Row that contains item.
int getItemColumnIndex (ListboxItem item)
 Return the current zero based index of the column that contains item.
MCLGridRef getItemGridReference (ListboxItem item)
 Return the grid reference for item.
ListboxItem getItemAtGridReference (MCLGridRef grid_ref)
 Return a pointer to the ListboxItem at the specified grid reference.
bool isListboxItemInColumn (ListboxItem item, int col_idx)
 return whether ListboxItem item is attached to the column at index col_idx.
bool isListboxItemInRow (ListboxItem item, int row_idx)
 return whether ListboxItem item is attached to the row at index row_idx.
bool isListboxItemInList (ListboxItem item)
 return whether ListboxItem item is attached to the list box.
ListboxItem findColumnItemWithText (string text, int col_idx, ListboxItem start_item=null)
 Return the ListboxItem in column col_idx that has the text string text.
ListboxItem findRowItemWithText (string text, int row_idx, ListboxItem start_item=null)
 Return the ListboxItem in row row_idx that has the text string text.
ListboxItem findListItemWithText (string text, ListboxItem start_item=null)
 Return the ListboxItem that has the text string text.
ListboxItem getFirstSelectedItem ()
 Return a pointer to the first selected ListboxItem attached to this list box.
ListboxItem getNextSelected (ListboxItem start_item)
 Return a pointer to the next selected ListboxItem after start_item.
int getSelectedCount ()
 Return the number of selected ListboxItems attached to this list box.
bool isItemSelected (MCLGridRef grid_ref)
 Return whether the ListboxItem at grid_ref is selected.
int getNominatedSelectionColumnID ()
 Return the ID of the currently set nominated selection column to be used when in one of the NominatedColumn* selection modes. There must be at least one column to successfully call this method.
int getNominatedSelectionColumn ()
 Return the index of the currently set nominated selection column to be used when in one of the NominatedColumn* selection modes.
int getNominatedSelectionRow ()
 Return the index of the currently set nominated selection row to be used when in one of the NominatedRow* selection modes.
int getSelectionMode ()
 Return the currently set selection mode.
bool isVertScrollbarAlwaysShown ()
 Return whether the vertical scroll bar is always shown.
bool isHorzScrollbarAlwaysShown ()
 Return whether the horizontal scroll bar is always shown.
int getColumnID (int col_idx)
 Return the ID code assigned to the requested column.
int getRowID (int row_idx)
 Return the ID code assigned to the requested row.
int getRowWithID (int row_id)
 Return the zero based row index of the row with the specified ID.
Rect getListRenderArea ()
 Return a Rect object describing, in un-clipped pixels, the window relative area that is to be used for rendering list items.
Scrollbar getVertScrollbar ()
 Return a pointer to the vertical scrollbar component widget for this MultiColumnList.
Scrollbar getHorzScrollbar ()
 Return a pointer to the horizontal scrollbar component widget for this MultiColumnList.
ListHeader getListHeader ()
 Return a pointer to the list header component widget for this MultiColumnList.
float getTotalRowsHeight ()
 Return the sum of all row heights in pixels.
float getWidestColumnItemWidth (int col_idx)
 Return the pixel width of the widest item in the given column.
float getHighestRowItemHeight (int row_idx)
 Return, in pixels, the height of the highest item in the given row.
void resetList ()
 Remove all items from the list.
void addColumn (string text, int col_id, UDim width)
 Add a column to the list box.
void insertColumn (string text, int col_id, UDim width, int position)
 Insert a new column in the list.
void removeColumn (int col_idx)
 Removes a column from the list box. This will cause any ListboxItem using the autoDelete option in the column to be deleted.
void removeColumnWithID (int col_id)
 Removes a column from the list box. This will cause any ListboxItem using the autoDelete option in the column to be deleted.
void moveColumn (int col_idx, int position)
 Move the column at index col_idx so it is at index position.
void moveColumnWithID (int col_id, int position)
 Move the column with ID col_id so it is at index position.
int addRow (int row_id=0)
 Add an empty row to the list box.
int addRow (ListboxItem item, int col_id, int row_id=0)
 Add a row to the list box, and set the item in the column with ID col_id to item.
int insertRow (int row_idx, int row_id=0)
 Insert an empty row into the list box.
int insertRow (ListboxItem item, int col_id, int row_idx, int row_id=0)
 Insert a row into the list box, and set the item in the column with ID col_id to item.
void removeRow (int row_idx)
 Remove the list box row with index row_idx. Any ListboxItem in row row_idx using autoDelete mode will be deleted.
void setItem (ListboxItem item, MCLGridRef position)
 Set the ListboxItem for grid reference position.
void setItem (ListboxItem item, int col_id, int row_idx)
 Set the ListboxItem for the column with ID col_id in row row_idx.
void setSelectionMode (int sel_mode)
 Set the selection mode for the list box.
void setNominatedSelectionColumnID (int col_id)
 Set the column to be used for the NominatedColumn* selection modes.
void setNominatedSelectionColumn (int col_idx)
 Set the column to be used for the NominatedColumn* selection modes.
void setNominatedSelectionRow (int row_idx)
 Set the row to be used for the NominatedRow* selection modes.
void setSortDirection (int direction)
 Set the sort direction to be used.
void setSortColumn (int col_idx)
 Set the column to be used as the sort key.
void setSortColumnByID (int col_id)
 Set the column to be used as the sort key.
void setShowVertScrollbar (bool setting)
 Set whether the vertical scroll bar should always be shown, or just when needed.
void setShowHorzScrollbar (bool setting)
 Set whether the horizontal scroll bar should always be shown, or just when needed.
void clearAllSelections ()
 Removed the selected state from any currently selected ListboxItem attached to the list.
void setItemSelectState (ListboxItem item, bool state)
 Sets or clears the selected state of the given ListboxItem which must be attached to the list.
void setItemSelectState (MCLGridRef grid_ref, bool state)
 Sets or clears the selected state of the ListboxItem at the given grid reference.
void handleUpdatedItemData ()
 Inform the list box that one or more attached ListboxItems have been externally modified, and the list should re-sync its internal state and refresh the display as needed.
void setColumnHeaderWidth (int col_idx, UDim width)
 Set the width of the specified column header (and therefore the column itself).
void setUserSortControlEnabled (bool setting)
 Set whether user manipulation of the sort column and direction are enabled.
void setUserColumnSizingEnabled (bool setting)
 Set whether the user may size column segments.
void setUserColumnDraggingEnabled (bool setting)
 Set whether the user may modify the order of the columns.
void autoSizeColumnHeader (int col_idx)
 Automatically determines the "best fit" size for the specified column and sets the column width to the same.
void setRowID (int row_idx, int row_id)
 Set the ID code assigned to a given row.
- Public Member Functions inherited from GUI::Window
string getType ()
 return a String object holding the type name for this Window.
string getName ()
 return a String object holding the name of this Window.
bool isDestroyedByParent ()
 returns whether or not this Window is set to be destroyed when its parent window is destroyed.
bool isAlwaysOnTop ()
 returns whether or not this Window is an always on top Window. Also known as a top-most window.
bool isDisabled (bool localOnly=false)
 return whether the Window is currently disabled
bool isVisible (bool localOnly=false)
 return true if the Window is currently visible.
bool isActive ()
 return true if this is the active Window. An active window is a window that may receive user inputs.
bool isClippedByParent ()
 return true if this Window is clipped so that its rendering will not pass outside of its parent Window area.
int getID ()
 return the ID code currently assigned to this Window by client code.
int getChildCount ()
 return the number of child Window objects currently attached to this Window.
bool isChild (string name)
 returns whether a Window with the specified name is currently attached to this Window as a child.
bool isChild (int ID)
 returns whether at least one window with the given ID code is attached to this Window as a child.
bool isChildRecursive (int ID)
 returns whether at least one window with the given ID code is attached to this Window or any of it's children as a child.
bool isChild (Window window)
 return true if the given Window is a child of this window.
Window getChild (string name)
 return a pointer to the child window with the specified name.
Window getChild (int ID)
 return a pointer to the first attached child window with the specified ID value.
Window getChildRecursive (string name)
 return a pointer to the first attached child window with the specified name. Children are traversed recursively.
Window getChildRecursive (int ID)
 return a pointer to the first attached child window with the specified ID value. Children are traversed recursively.
Window getChildAtIdx (int idx)
 return a pointer to the child window that is attached to 'this' at the given index.
Window getActiveChild ()
 return a pointer to the Window that currently has input focus starting with this Window.
bool isAncestor (string name)
 return true if the specified Window is some ancestor of this Window
bool isAncestor (int ID)
 return true if any Window with the given ID is some ancestor of this Window.
bool isAncestor (Window window)
 return true if the specified Window is some ancestor of this Window.
Font getFont ()
 return the active Font object for the Window.
string getText ()
 return the current text for the Window
bool inheritsAlpha ()
 return true if the Window inherits alpha from its parent(s).
float getAlpha ()
 return the current alpha value set for this Window
float getEffectiveAlpha ()
 return the effective alpha value that will be used when rendering this window, taking into account inheritance of parent window(s) alpha.
Rect getPixelRect ()
 return a Rect object describing the Window area in screen space.
Rect getInnerRect ()
 return a Rect object describing the clipped inner area for this window.
Rect getUnclippedPixelRect ()
 return a Rect object describing the Window area unclipped, in screen space.
Rect getUnclippedInnerRect ()
 Return a Rect object that describes, unclipped, the inner rectangle for this window. The inner rectangle is typically an area that excludes some frame or other rendering that should not be touched by subsequent rendering.
Window getCaptureWindow ()
 return the Window that currently has inputs captured.
bool isCapturedByThis ()
 return true if this Window has input captured.
bool isCapturedByAncestor ()
 return true if an ancestor window has captured inputs.
bool isCapturedByChild (void)
 return true if a child window has captured inputs.
bool isHit (Vector2 position)
 check if the given pixel position would hit this window.
Window getChildAtPosition (Vector2 position)
 return the child Window that is hit by the given pixel position
Window getTargetChildAtPosition (Vector2 position)
 return the child Window that is 'hit' by the given position, and is allowed to handle mouse events.
Window getParent ()
 return the parent of this Window.
Image getMouseCursor ()
 Return a pointer to the mouse cursor image to use when the mouse cursor is within this window's area.
bool restoresOldCapture (void)
 Return whether this window is set to restore old input capture when it loses input capture.
bool isZOrderingEnabled ()
 Return whether z-order changes are enabled or disabled for this Window.
bool wantsMultiClickEvents ()
 Return whether this window will receive multi-click events or multiple 'down' events instead.
bool isMouseAutoRepeatEnabled ()
 Return whether mouse button down event autorepeat is enabled for this window.
float getAutoRepeatDelay ()
 Return the current auto-repeat delay setting for this window.
float getAutoRepeatRate ()
 Return the current auto-repeat rate setting for this window.
bool distributesCapturedInputs ()
 Return whether the window wants inputs passed to its attached child windows when the window has inputs captured.
bool isUsingDefaultTooltip ()
 Return whether this Window is using the system default Tooltip for its Tooltip window.
Tooltip getTooltip ()
 Return a pointer to the Tooltip object used by this Window. The value returned may point to the system default Tooltip, a custom Window specific Tooltip, or be NULL.
string getTooltipType ()
 Return the custom tooltip type.
string getTooltipText ()
 Return the current tooltip text set for this Window.
bool inheritsTooltipText ()
 Return whether this window inherits Tooltip text from its parent when its own tooltip text is not set.
bool isRiseOnClickEnabled ()
 Return whether this window will rise to the top of the z-order when clicked with the left mouse button.
bool testClassName (string class_name)
 Return whether this window was inherited from the given class name at some point in the inheritance hierarchy.
int getVerticalAlignment ()
 Get the vertical alignment.
int getHorizontalAlignment ()
 Get the horizontal alignment.
string getLookNFeel ()
 Get the name of the LookNFeel assigned to this window.
bool getModalState ()
 Get whether or not this Window is the modal target.
string getUserString (string name)
 Returns a named user string.
bool isUserStringDefined (string name)
 Return whether a user string with the specified name exists.
Size getParentPixelSize ()
 Return the pixel size of the parent element. This always returns a valid object.
float getParentPixelWidth ()
 Return the pixel Width of the parent element. This always returns a valid number.
float getParentPixelHeight ()
 Return the pixel Height of the parent element. This always returns a valid number.
bool isMousePassThroughEnabled ()
 Returns whether this window should ignore mouse event and pass them through to and other windows behind it. In effect making the window transparent to the mouse.
bool isDragDropTarget ()
 Returns whether this Window object will receive events generated by the drag and drop support in the system.
void rename (string new_name)
 Renames the window.
void setDestroyedByParent (bool setting)
 Set whether or not this Window will automatically be destroyed when its parent Window is destroyed.
void setAlwaysOnTop (bool setting)
 Set whether this window is always on top, or not.
void setEnabled (bool setting)
 Set whether this window is enabled or disabled. A disabled window normally can not be interacted with, and may have different rendering.
void enable (void)
 enable the Window to allow interaction.
void disable (void)
 disable the Window to prevent interaction.
void setVisible (bool setting)
 Set whether the Window is visible or hidden.
void show (void)
 show the Window.
void hide (void)
 hide the Window.
void activate (void)
 Activate the Window giving it input focus and bringing it to the top of all windows with the same always-on-top settig as this Window.
void deactivate (void)
 Deactivate the window. No further inputs will be received by the window until it is re-activated either programmatically or by the user interacting with the gui.
void setClippedByParent (bool setting)
 Set whether this Window will be clipped by its parent window(s).
void setID (int ID)
 Set the current ID for the Window.
void setText (string text)
 Set the current text string for the Window.
void insertText (string text, int position)
 Insert the text string text into the current text string for the Window object at the position specified by position.
void appendText (string text)
 Append the string text to the currect text string for the Window object.
void setFont (Font font)
 Set the font used by this Window.
void setFont (string name)
 Set the font used by this Window.
void addChildWindow (string name)
 Add the named Window as a child of this Window. If the Window name is already attached to a Window, it is detached before being added to this Window.
void addChildWindow (Window window)
 Add the specified Window as a child of this Window. If the Window window is already attached to a Window, it is detached before being added to this Window.
void removeChildWindow (string name)
 Remove the named Window from this windows child list.
void removeChildWindow (Window window)
 Remove the specified Window form this windows child list.
void removeChildWindow (int ID)
 Remove the first child Window with the specified ID. If there is more than one attached Window objects with the specified ID, only the fist one encountered will be removed.
void moveToFront ()
 Move the Window to the top of the z order.
void moveToBack ()
 Move the Window to the bottom of the Z order.
bool captureInput ()
 Captures input to this window.
void releaseInput ()
 Releases input capture from this Window. If this Window does not have inputs captured, nothing happens.
void setRestoreCapture (bool setting)
 Set whether this window will remember and restore the previous window that had inputs captured.
void setAlpha (float alpha)
 Set the current alpha value for this window.
void setInheritsAlpha (bool setting)
 Sets whether this Window will inherit alpha from its parent windows.
void requestRedraw (void)
 Signal the System object to redraw (at least) this Window on the next render cycle.
void setMouseCursor (string imageset, string image_name)
 Set the mouse cursor image to be used when the mouse enters this window.
void setZOrderingEnabled (bool setting)
 Set whether z-order changes are enabled or disabled for this Window.
void setWantsMultiClickEvents (bool setting)
 Set whether this window will receive multi-click events or multiple 'down' events instead.
void setMouseAutoRepeatEnabled (bool setting)
 Set whether mouse button down event autorepeat is enabled for this window.
void setAutoRepeatDelay (float delay)
 Set the current auto-repeat delay setting for this window.
void setAutoRepeatRate (float rate)
 Set the current auto-repeat rate setting for this window.
void setDistributesCapturedInputs (bool setting)
 Set whether the window wants inputs passed to its attached child windows when the window has inputs captured.
void notifyDragDropItemEnters (DragContainer item)
 Internal support method for drag & drop. You do not normally call this directly from client code. See the DragContainer class.
void notifyDragDropItemLeaves (DragContainer item)
 Internal support method for drag & drop. You do not normally call this directly from client code. See the DragContainer class.
void notifyDragDropItemDropped (DragContainer item)
 Internal support method for drag & drop. You do not normally call this directly from client code. See the DragContainer class.
void setTooltip (Tooltip tooltip)
 Set the custom Tooltip object for this Window. This value may be 0 to indicate that the Window should use the system default Tooltip object.
void setTooltipType (string tooltipType)
 Set the custom Tooltip to be used by this Window by specifying a Window type.
void setTooltipText (string tip)
 Set the tooltip text for this window.
void setInheritsTooltipText (bool setting)
 Set whether this window inherits Tooltip text from its parent when its own tooltip text is not set.
void setRiseOnClickEnabled (bool setting)
 Set whether this window will rise to the top of the z-order when clicked with the left mouse button.
void setVerticalAlignment (int alignment)
 Set the vertical alignment.
void setHorizontalAlignment (int alignment)
 Set the horizontal alignment.
void setLookNFeel (string look)
 Set the LookNFeel that shoule be used for this window.
void setModalState (bool state)
 Set the modal state for this Window.
void setUserString (string name, string value)
 Sets the value a named user string, creating it as required.
void setArea (UDim xpos, UDim ypos, UDim width, UDim height)
 Set the window area.
void setArea (UVector2 pos, UVector2 size)
 Set the window area.
void setArea (URect area)
 Set the window area.
void setPosition (UVector2 pos)
 Set the window's position.
void setXPosition (UDim x)
 Set the window's X position.
void setYPosition (UDim y)
 Set the window's Y position.
void setSize (UVector2 size)
 Set the window's size.
void setWidth (UDim width)
 Set the window's width.
void setHeight (UDim height)
 Set the window's height.
void setMaxSize (UVector2 size)
 Set the window's maximum size.
void setMinSize (UVector2 size)
 Set the window's minimum size.
URect getArea ()
 Return the windows area.
UVector2 getPosition ()
 Get the window's position.
UDim getXPosition ()
 Get the window's X position.
UDim getYPosition ()
 Get the window's Y position.
UVector2 getSize ()
 Get the window's size.
UDim getWidth ()
 Get the window's width.
UDim getHeight ()
 Get the window's height.
UVector2 getMaxSize ()
 Get the window's maximum size.
UVector2 getMinSize ()
 Get the window's minimum size.
void setMousePassThroughEnabled (bool setting)
 Sets whether this window should ignore mouse events and pass them through to any windows behind it. In effect making the window transparent to the mouse.
void setWindowRenderer (string name)
 Assign the WindowRenderer to specify the Look'N'Feel specification to be used.
string getWindowRendererName ()
 Get the factory name of the currently assigned WindowRenderer. (Look'N'Feel specification).
void setDragDropTarget (bool setting)
 Specifies whether this Window object will receive events generated by the drag and drop support in the system.
- Public Member Functions inherited from GUI::EventSet
void addEvent (string name)
 Add a new Event to the EventSet with the given name.
void removeEvent (string name)
 Removes the Event with the given name. All connections to the event are disconnected.
void removeAllEvents ()
 Remove all Event objects from the EventSet.
bool isEventPresent (string name)
 Checks to see if an Event with the given name is present in the EventSet.
EventConnection subscribeEvent (string name, string subscriber_name)
 Subscribes the named Event to a scripted funtion.
void fireEvent (string name, EventArgs args, string eventNamespace="")
 Fires the named event passing the given EventArgs object.
bool isMuted ()
 Return whether the EventSet is muted or not.
void setMutedState (bool setting)
 Set the mute state for this EventSet.

Additional Inherited Members

- Public Attributes inherited from GUI::Window
Property Property
 Can be used to iterate over the properties currently added to the PropertySet of this Window.

Detailed Description

Base class for the multi column list widget.


Member Function Documentation

bool GUI::MultiColumnList::isUserSortControlEnabled ( )

Return whether user manipulation of the sort column and direction are enabled.

Returns:
true if the user may interactively modify the sort column and direction. false if the user may not modify the sort column and direction (these can still be set programmatically).
bool GUI::MultiColumnList::isUserColumnSizingEnabled ( )

Return whether the user may size column segments.

Returns:
true if the user may interactively modify the width of columns, false if they may not.
bool GUI::MultiColumnList::isUserColumnDraggingEnabled ( )

Return whether the user may modify the order of the columns.

Returns:
true if the user may interactively modify the order of the columns, false if they may not.
int GUI::MultiColumnList::getColumnCount ( )

Return the number of columns in the multi-column list.

Returns:
int value equal to the number of columns in the list.
int GUI::MultiColumnList::getRowCount ( )

Return the number of rows in the multi-column list.

Returns:
int value equal to the number of rows currently in the list.
int GUI::MultiColumnList::getSortColumn ( )

Return the zero based index of the current sort column. There must be at least one column to successfully call this method.

Returns:
Zero based column index that is the current sort column.
Exceptions:
InvalidRequestExceptionthrown if there are no columns in this multi column list.
int GUI::MultiColumnList::getColumnWithID ( int  col_id)

Return the zero based column index of the column with the specified ID.

Parameters:
col_idID code of the column whos index is to be returned.
Returns:
Zero based column index of the first column whos ID matches col_id.
Exceptions:
InvalidRequestExceptionthrown if no attached column has the requested ID.
int GUI::MultiColumnList::getColumnWithHeaderText ( string  text)

Return the zero based index of the column whos header text matches the specified text.

Parameters:
textString object containing the text to be searched for.
Returns:
Zero based column index of the column whos header has the specified text.
Exceptions:
InvalidRequestExceptionthrown if no columns header has the requested text.
UDim GUI::MultiColumnList::getTotalColumnHeadersWidth ( )

Return the total width of all column headers.

Returns:
Sum total of all the column header widths as a UDim.
UDim GUI::MultiColumnList::getColumnHeaderWidth ( int  col_idx)

Return the width of the specified column header (and therefore the column itself).

Parameters:
col_idxZero based column index of the column whos width is to be returned.
Returns:
Width of the column header at the zero based column index specified by col_idx, as a UDim
Exceptions:
InvalidRequestExceptionthrown if column is out of range.
int GUI::MultiColumnList::getSortDirection ( )

Return the currently set sort direction.

Returns:
One of the ListHeaderSegment::SortDirection enumerated values specifying the current sort direction.
ListHeaderSegment GUI::MultiColumnList::getHeaderSegmentForColumn ( int  col_idx)

Return the ListHeaderSegment object for the specified column.

Parameters:
col_idxzero based index of the column whos ListHeaderSegment is to be returned.
Returns:
ListHeaderSegment object for the column at the requested index.
Exceptions:
InvalidRequestExceptionthrown if col_idx is out of range.
int GUI::MultiColumnList::getItemRowIndex ( ListboxItem  item)

Return the zero based index of the Row that contains item.

Parameters:
itemPointer to the ListboxItem that the row index is to returned for.
Returns:
Zero based index of the row that contains ListboxItem item.
Exceptions:
InvalidRequestExceptionthrown if item is not attached to the list box.
int GUI::MultiColumnList::getItemColumnIndex ( ListboxItem  item)

Return the current zero based index of the column that contains item.

Parameters:
itemPointer to the ListboxItem that the column index is to returned for.
Returns:
Zero based index of the column that contains ListboxItem item.
Exceptions:
InvalidRequestExceptionthrown if item is not attached to the list box.
MCLGridRef GUI::MultiColumnList::getItemGridReference ( ListboxItem  item)

Return the grid reference for item.

Parameters:
itemPointer to the ListboxItem whos current grid reference is to be returned.
Returns:
MCLGridRef object describing the current grid reference of ListboxItem item.
Exceptions:
InvalidRequestExceptionthrown if item is not attached to the list box.
ListboxItem GUI::MultiColumnList::getItemAtGridReference ( MCLGridRef  grid_ref)

Return a pointer to the ListboxItem at the specified grid reference.

Parameters:
grid_refMCLGridRef object that describes the position of the ListboxItem to be returned.
Returns:
Pointer to the ListboxItem at grid reference grid_ref.
Exceptions:
InvalidRequestExceptionthrown if grid_ref is invalid for this list box.
bool GUI::MultiColumnList::isListboxItemInColumn ( ListboxItem  item,
int  col_idx 
)

return whether ListboxItem item is attached to the column at index col_idx.

Parameters:
itemPointer to the ListboxItem to look for.
col_idxZero based index of the column that is to be searched.
Returns:
  • true if item is attached to list box column col_idx.
  • false if item is not attached to list box column col_idx.
Exceptions:
InvalidRequestExceptionthrown if col_idx is out of range.
bool GUI::MultiColumnList::isListboxItemInRow ( ListboxItem  item,
int  row_idx 
)

return whether ListboxItem item is attached to the row at index row_idx.

Parameters:
itemPointer to the ListboxItem to look for.
row_idxZero based index of the row that is to be searched.
Returns:
  • true if item is attached to list box row row_idx.
  • false if item is not attached to list box row row_idx.
Exceptions:
InvalidRequestExceptionthrown if row_idx is out of range.
bool GUI::MultiColumnList::isListboxItemInList ( ListboxItem  item)

return whether ListboxItem item is attached to the list box.

Parameters:
itemPointer to the ListboxItem to look for.
Returns:
  • true if item is attached to list box.
  • false if item is not attached to list box.
ListboxItem GUI::MultiColumnList::findColumnItemWithText ( string  text,
int  col_idx,
ListboxItem  start_item = null 
)

Return the ListboxItem in column col_idx that has the text string text.

Parameters:
textString object containing the text to be searched for.
col_idxZero based index of the column to be searched.
start_itemPointer to the ListboxItem where the exclusive search is to start, or NULL to search from the top of the column.
Returns:
Pointer to the first ListboxItem in column col_idx, after start_item, that has the string text.
Exceptions:
InvalidRequestExceptionthrown if start_item is not attached to the list box, or if col_idx is out of range.
ListboxItem GUI::MultiColumnList::findRowItemWithText ( string  text,
int  row_idx,
ListboxItem  start_item = null 
)

Return the ListboxItem in row row_idx that has the text string text.

Parameters:
textString object containing the text to be searched for.
row_idxZero based index of the row to be searched.
start_itemPointer to the ListboxItem where the exclusive search is to start, or NULL to search from the start of the row.
Returns:
Pointer to the first ListboxItem in row row_idx, after start_item, that has the string text.
Exceptions:
InvalidRequestExceptionthrown if start_item is not attached to the list box, or if row_idx is out of range.
ListboxItem GUI::MultiColumnList::findListItemWithText ( string  text,
ListboxItem  start_item = null 
)

Return the ListboxItem that has the text string text.

Note:
List box searching progresses across the columns in each row.
Parameters:
textString object containing the text to be searched for.
start_itemPointer to the ListboxItem where the exclusive search is to start, or NULL to search the whole list box.
Returns:
Pointer to the first ListboxItem, after start_item, that has the string text.
Exceptions:
InvalidRequestExceptionthrown if start_item is not attached to the list box.
ListboxItem GUI::MultiColumnList::getFirstSelectedItem ( )

Return a pointer to the first selected ListboxItem attached to this list box.

Note:
List box searching progresses across the columns in each row.
Returns:
Pointer to the first ListboxItem attached to this list box that is selected, or NULL if no item is selected.
ListboxItem GUI::MultiColumnList::getNextSelected ( ListboxItem  start_item)

Return a pointer to the next selected ListboxItem after start_item.

Note:
List box searching progresses across the columns in each row.
Parameters:
start_itemPointer to the ListboxItem where the exclusive search is to start, or NULL to search the whole list box.
Returns:
Pointer to the first selected ListboxItem attached to this list box, after start_item, or NULL if no item is selected.
Exceptions:
InvalidRequestExceptionthrown if start_item is not attached to the list box.
int GUI::MultiColumnList::getSelectedCount ( )

Return the number of selected ListboxItems attached to this list box.

return int value equal to the number of ListboxItems attached to this list box that are currently selected.

bool GUI::MultiColumnList::isItemSelected ( MCLGridRef  grid_ref)

Return whether the ListboxItem at grid_ref is selected.

Parameters:
grid_refMCLGridRef object describing the grid reference that is to be examined.
Returns:
  • true if there is a ListboxItem at grid_ref and it is selected.
  • false if there is no ListboxItem at grid_ref, or if the item is not selected.
Exceptions:
InvalidRequestExceptionthrown if grid_ref contains an invalid grid position.
int GUI::MultiColumnList::getNominatedSelectionColumnID ( )

Return the ID of the currently set nominated selection column to be used when in one of the NominatedColumn* selection modes. There must be at least one column to successfully call this method.

Note:
You should only ever call this when getColumnCount() returns > 0.
Returns:
ID code of the nominated selection column.
int GUI::MultiColumnList::getNominatedSelectionColumn ( )

Return the index of the currently set nominated selection column to be used when in one of the NominatedColumn* selection modes.

Returns:
Zero based index of the nominated selection column.
int GUI::MultiColumnList::getNominatedSelectionRow ( )

Return the index of the currently set nominated selection row to be used when in one of the NominatedRow* selection modes.

Returns:
Zero based index of the nominated selection column.
int GUI::MultiColumnList::getSelectionMode ( )

Return the currently set selection mode.

Returns:
One of the MultiColumnList::SelectionMode enumerated values specifying the current selection mode.
bool GUI::MultiColumnList::isVertScrollbarAlwaysShown ( )

Return whether the vertical scroll bar is always shown.

Returns:
  • true if the scroll bar will always be shown even if it is not required.
  • false if the scroll bar will only be shown when it is required.
bool GUI::MultiColumnList::isHorzScrollbarAlwaysShown ( )

Return whether the horizontal scroll bar is always shown.

Returns:
  • true if the scroll bar will always be shown even if it is not required.
  • false if the scroll bar will only be shown when it is required.
int GUI::MultiColumnList::getColumnID ( int  col_idx)

Return the ID code assigned to the requested column.

Parameters:
col_idxZero based index of the column whos ID code is to be returned.
Returns:
Current ID code assigned to the column at the requested index.
Exceptions:
InvalidRequestExceptionthrown if col_idx is out of range
int GUI::MultiColumnList::getRowID ( int  row_idx)

Return the ID code assigned to the requested row.

Parameters:
row_idxZero based index of the row who's ID code is to be returned.
Returns:
Current ID code assigned to the row at the requested index.
Exceptions:
InvalidRequestExceptionthrown if row_idx is out of range
int GUI::MultiColumnList::getRowWithID ( int  row_id)

Return the zero based row index of the row with the specified ID.

Parameters:
row_idID code of the row who's index is to be returned.
Returns:
Zero based row index of the first row who's ID matches row_id.
Exceptions:
InvalidRequestExceptionthrown if no row has the requested ID.
Rect GUI::MultiColumnList::getListRenderArea ( )

Return a Rect object describing, in un-clipped pixels, the window relative area that is to be used for rendering list items.

Returns:
Rect object describing the area of the Window to be used for rendering list box items.
Scrollbar GUI::MultiColumnList::getVertScrollbar ( )

Return a pointer to the vertical scrollbar component widget for this MultiColumnList.

Returns:
Pointer to a Scrollbar object.
Exceptions:
UnknownObjectExceptionThrown if the vertical Scrollbar component does not exist.
Scrollbar GUI::MultiColumnList::getHorzScrollbar ( )

Return a pointer to the horizontal scrollbar component widget for this MultiColumnList.

Returns:
Pointer to a Scrollbar object.
Exceptions:
UnknownObjectExceptionThrown if the horizontal Scrollbar component does not exist.
ListHeader GUI::MultiColumnList::getListHeader ( )

Return a pointer to the list header component widget for this MultiColumnList.

Returns:
Pointer to a ListHeader object.
Exceptions:
UnknownObjectExceptionThrown if the list header component does not exist.
void GUI::MultiColumnList::resetList ( )

Remove all items from the list.

Note that this will cause 'AutoDelete' items to be deleted.

void GUI::MultiColumnList::addColumn ( string  text,
int  col_id,
UDim  width 
)

Add a column to the list box.

Parameters:
textString object containing the text label for the column header.
col_idID code to be assigned to the column header.
widthUDim describing the initial width to be set for the column.
Returns:
Nothing.
void GUI::MultiColumnList::insertColumn ( string  text,
int  col_id,
UDim  width,
int  position 
)

Insert a new column in the list.

Parameters:
textString object containing the text label for the column header.
col_idID code to be assigned to the column header.
widthUDim describing the initial width to be set for the column.
positionZero based index where the column is to be inserted. If this is greater than the current number of columns, the new column is inserted at the end.
Returns:
Nothing.
void GUI::MultiColumnList::removeColumn ( int  col_idx)

Removes a column from the list box. This will cause any ListboxItem using the autoDelete option in the column to be deleted.

Parameters:
col_idxZero based index of the column to be removed.
Returns:
Nothing.
Exceptions:
InvalidRequestExceptionthrown if col_idx is invalid.
void GUI::MultiColumnList::removeColumnWithID ( int  col_id)

Removes a column from the list box. This will cause any ListboxItem using the autoDelete option in the column to be deleted.

Parameters:
col_idID code of the column to be deleted.
Returns:
Nothing.
Exceptions:
InvalidRequestExceptionthrown if no column with col_id is available on this list box.
void GUI::MultiColumnList::moveColumn ( int  col_idx,
int  position 
)

Move the column at index col_idx so it is at index position.

Parameters:
col_idxZero based index of the column to be moved.
positionZero based index of the new position for the column.
Returns:
Nothing.
Exceptions:
InvalidRequestExceptionthrown if col_idx is invalid.
void GUI::MultiColumnList::moveColumnWithID ( int  col_id,
int  position 
)

Move the column with ID col_id so it is at index position.

Parameters:
col_idID code of the column to be moved.
positionZero based index of the new position for the column.
Returns:
Nothing.
Exceptions:
InvalidRequestExceptionthrown if no column with col_id is available on this list box.
int GUI::MultiColumnList::addRow ( int  row_id = 0)

Add an empty row to the list box.

Parameters:
row_idID code to be assigned to the new row.
Note:
If the list is being sorted, the new row will appear at an appropriate position according to the sorting being applied. If no sorting is being done, the new row will appear at the bottom of the list.
Returns:
Initial zero based index of the new row.
int GUI::MultiColumnList::addRow ( ListboxItem  item,
int  col_id,
int  row_id = 0 
)

Add a row to the list box, and set the item in the column with ID col_id to item.

Note:
If the list is being sorted, the new row will appear at an appropriate position according to the sorting being applied. If no sorting is being done, the new row will appear at the bottom of the list.
Parameters:
itemPointer to a ListboxItem to be used as the initial contents for the column with ID col_id.
col_idID code of the column whos initial item is to be set to item.
row_idID code to be assigned to the new row.
Returns:
Initial zero based index of the new row.
Exceptions:
InvalidRequestExceptionthrown if no column with the specified ID is attached to the list box.
int GUI::MultiColumnList::insertRow ( int  row_idx,
int  row_id = 0 
)

Insert an empty row into the list box.

Note:
If the list is being sorted, the new row will appear at an appropriate position according to the sorting being applied. If no sorting is being done, the new row will appear at the specified index.
Parameters:
row_idxZero based index where the row should be inserted. If this is greater than the current number of rows, the row is appended to the list.
row_idID code to be assigned to the new row.
Returns:
Zero based index where the row was actually inserted.
int GUI::MultiColumnList::insertRow ( ListboxItem  item,
int  col_id,
int  row_idx,
int  row_id = 0 
)

Insert a row into the list box, and set the item in the column with ID col_id to item.

Note:
If the list is being sorted, the new row will appear at an appropriate position according to the sorting being applied. If no sorting is being done, the new row will appear at the specified index.
Parameters:
itemPointer to a ListboxItem to be used as the initial contents for the column with ID col_id.
col_idID code of the column whos initial item is to be set to item.
row_idxZero based index where the row should be inserted. If this is greater than the current number of rows, the row is appended to the list.
row_idID code to be assigned to the new row.
Returns:
Zero based index where the row was actually inserted.
Exceptions:
InvalidRequestExceptionthrown if no column with the specified ID is attached to the list box.
void GUI::MultiColumnList::removeRow ( int  row_idx)

Remove the list box row with index row_idx. Any ListboxItem in row row_idx using autoDelete mode will be deleted.

Parameters:
row_idxZero based index of the row to be removed.
Returns:
Nothing.
Exceptions:
InvalidRequestExceptionthrown if row_idx is invalid.
void GUI::MultiColumnList::setItem ( ListboxItem  item,
MCLGridRef  position 
)

Set the ListboxItem for grid reference position.

Parameters:
itemPointer to the ListboxItem to be set at position.
positionMCLGridRef describing the grid reference of the item to be set.
Returns:
Nothing.
Exceptions:
InvalidRequestExceptionthrown if position contains an invalid grid reference.
void GUI::MultiColumnList::setItem ( ListboxItem  item,
int  col_id,
int  row_idx 
)

Set the ListboxItem for the column with ID col_id in row row_idx.

Parameters:
itemPointer to the ListboxItem to be set into the list.
col_idID code of the column to receive item.
row_idxZero based index of the row to receive item.
Returns:
Nothing.
Exceptions:
InvalidRequestExceptionthrown if no column with ID col_id exists, or of row_idx is out of range.
void GUI::MultiColumnList::setSelectionMode ( int  sel_mode)

Set the selection mode for the list box.

Parameters:
sel_modeOne of the MultiColumnList::SelectionMode enumerated values specifying the selection mode to be used.
Returns:
Nothing.
Exceptions:
InvalidRequestExceptionthrown if the value specified for sel_mode is invalid.
void GUI::MultiColumnList::setNominatedSelectionColumnID ( int  col_id)

Set the column to be used for the NominatedColumn* selection modes.

Parameters:
col_idID code of the column to be used in NominatedColumn* selection modes.
Returns:
Nothing.
Exceptions:
InvalidRequestExceptionthrown if no column has ID code col_id.
void GUI::MultiColumnList::setNominatedSelectionColumn ( int  col_idx)

Set the column to be used for the NominatedColumn* selection modes.

Parameters:
col_idxzero based index of the column to be used in NominatedColumn* selection modes.
Returns:
Nothing.
Exceptions:
InvalidRequestExceptionthrown if col_idx is out of range.
void GUI::MultiColumnList::setNominatedSelectionRow ( int  row_idx)

Set the row to be used for the NominatedRow* selection modes.

Parameters:
row_idxzero based index of the row to be used in NominatedRow* selection modes.
Returns:
Nothing.
Exceptions:
InvalidRequestExceptionthrown if row_idx is out of range.
void GUI::MultiColumnList::setSortDirection ( int  direction)

Set the sort direction to be used.

Parameters:
directionOne of the ListHeaderSegment::SortDirection enumerated values specifying the sort direction to be used.
Returns:
Nothing.
void GUI::MultiColumnList::setSortColumn ( int  col_idx)

Set the column to be used as the sort key.

Parameters:
col_idxZero based index of the column to use as the key when sorting the list items.
Returns:
Nothing.
Exceptions:
InvalidRequestExceptionthrown if col_idx is out of range.
void GUI::MultiColumnList::setSortColumnByID ( int  col_id)

Set the column to be used as the sort key.

Parameters:
col_idID code of the column to use as the key when sorting the list items.
Returns:
Nothing.
Exceptions:
InvalidRequestExceptionthrown if col_id is invalid for this list box.
void GUI::MultiColumnList::setShowVertScrollbar ( bool  setting)

Set whether the vertical scroll bar should always be shown, or just when needed.

Parameters:
setting
  • true to have the vertical scroll bar shown at all times.
  • false to have the vertical scroll bar appear only when needed.
Returns:
Nothing.
void GUI::MultiColumnList::setShowHorzScrollbar ( bool  setting)

Set whether the horizontal scroll bar should always be shown, or just when needed.

Parameters:
setting
  • true to have the horizontal scroll bar shown at all times.
  • false to have the horizontal scroll bar appear only when needed.
Returns:
Nothing.
void GUI::MultiColumnList::clearAllSelections ( )

Removed the selected state from any currently selected ListboxItem attached to the list.

Returns:
Nothing.
void GUI::MultiColumnList::setItemSelectState ( ListboxItem  item,
bool  state 
)

Sets or clears the selected state of the given ListboxItem which must be attached to the list.

Note:
Depending upon the current selection mode, this may cause other items to be selected, other items to be deselected, or for nothing to actually happen at all.
Parameters:
itemPointer to the attached ListboxItem to be affected.
state
  • true to put the ListboxItem into the selected state.
  • false to put the ListboxItem into the de-selected state.
Returns:
Nothing.
Exceptions:
InvalidRequestExceptionthrown if item is not attached to the list box.
void GUI::MultiColumnList::setItemSelectState ( MCLGridRef  grid_ref,
bool  state 
)

Sets or clears the selected state of the ListboxItem at the given grid reference.

Note:
Depending upon the current selection mode, this may cause other items to be selected, other items to be deselected, or for nothing to actually happen at all.
Parameters:
grid_refMCLGridRef object describing the position of the item to be affected.
state
  • true to put the ListboxItem into the selected state.
  • false to put the ListboxItem into the de-selected state.
Returns:
Nothing.
Exceptions:
InvalidRequestExceptionthrown if grid_ref is invalid for this list box.
void GUI::MultiColumnList::handleUpdatedItemData ( )

Inform the list box that one or more attached ListboxItems have been externally modified, and the list should re-sync its internal state and refresh the display as needed.

Returns:
Nothing.
void GUI::MultiColumnList::setColumnHeaderWidth ( int  col_idx,
UDim  width 
)

Set the width of the specified column header (and therefore the column itself).

Parameters:
col_idxZero based column index of the column whos width is to be set.
widthUDim value specifying the new width for the column.
Returns:
Nothing.
Exceptions:
InvalidRequestExceptionthrown if column is out of range.
void GUI::MultiColumnList::setUserSortControlEnabled ( bool  setting)

Set whether user manipulation of the sort column and direction are enabled.

Parameters:
setting
  • true if the user may interactively modify the sort column and direction.
  • false if the user may not modify the sort column and direction (these can still be set programmatically).
Returns:
Nothing.
void GUI::MultiColumnList::setUserColumnSizingEnabled ( bool  setting)

Set whether the user may size column segments.

Parameters:
setting
  • true if the user may interactively modify the width of columns.
  • false if the user may not change the width of the columns.
Returns:
Nothing.
void GUI::MultiColumnList::setUserColumnDraggingEnabled ( bool  setting)

Set whether the user may modify the order of the columns.

Parameters:
setting
  • true if the user may interactively modify the order of the columns.
  • false if the user may not modify the order of the columns.
void GUI::MultiColumnList::autoSizeColumnHeader ( int  col_idx)

Automatically determines the "best fit" size for the specified column and sets the column width to the same.

Parameters:
col_idxZero based index of the column to be sized.
Returns:
Nothing.
Exceptions:
InvalidRequestExceptionthrown if col_idx is out of range.
void GUI::MultiColumnList::setRowID ( int  row_idx,
int  row_id 
)

Set the ID code assigned to a given row.

Parameters:
row_idxZero based index of the row who's ID code is to be set.
row_idID code to be assigned to the row at the requested index.
Returns:
Nothing.
Exceptions:
InvalidRequestExceptionthrown if row_idx is out of range