Irrlicht 3D Engine
irr::gui::IGUITable Class Referenceabstract

Default list box GUI element. More...

#include <IGUITable.h>

+ Inheritance diagram for irr::gui::IGUITable:

Public Member Functions

 IGUITable (IGUIEnvironment *environment, IGUIElement *parent, s32 id, core::rect< s32 > rectangle)
 constructor More...
 
virtual void addColumn (const wchar_t *caption, s32 columnIndex=-1)=0
 Adds a column. More...
 
virtual u32 addRow (u32 rowIndex)=0
 adds a row to the table More...
 
virtual void clear ()=0
 clears the table, deletes all items in the table More...
 
virtual void clearRows ()=0
 clears the table rows, but keeps the columns intact More...
 
virtual s32 getActiveColumn () const =0
 Returns which header is currently active. More...
 
virtual EGUI_ORDERING_MODE getActiveColumnOrdering () const =0
 Returns the ordering used by the currently active column. More...
 
virtual IGUIFontgetActiveFont () const =0
 Get the font which is used right now for drawing. More...
 
virtual void * getCellData (u32 rowIndex, u32 columnIndex) const =0
 Get the data of a cell. More...
 
virtual const wchar_t * getCellText (u32 rowIndex, u32 columnIndex) const =0
 Get the text of a cell. More...
 
virtual s32 getColumnCount () const =0
 Returns the number of columns in the table control. More...
 
virtual u32 getColumnWidth (u32 columnIndex) const =0
 Get the width of a column. More...
 
virtual s32 getDrawFlags () const =0
 Get the flags, as defined in EGUI_TABLE_DRAW_FLAGS, which influence the layout. More...
 
virtual IGUIScrollBargetHorizontalScrollBar () const =0
 Access the horizontal scrollbar. More...
 
virtual s32 getItemHeight () const =0
 Get the height of items/rows. More...
 
virtual IGUIFontgetOverrideFont (void) const =0
 Gets the override font (if any) More...
 
virtual s32 getRowCount () const =0
 Get amount of rows in the tabcontrol. More...
 
virtual s32 getSelected () const =0
 Returns which row is currently selected. More...
 
virtual IGUIScrollBargetVerticalScrollBar () const =0
 Access the vertical scrollbar. More...
 
virtual bool hasResizableColumns () const =0
 can columns be resized by drag 'n drop? More...
 
virtual bool isDrawBackgroundEnabled () const =0
 Checks if background drawing is enabled. More...
 
virtual void orderRows (s32 columnIndex=-1, EGUI_ORDERING_MODE mode=EGOM_NONE)=0
 This tells the table to start ordering all the rows. More...
 
virtual void removeColumn (u32 columnIndex)=0
 remove a column from the table More...
 
virtual void removeRow (u32 rowIndex)=0
 Remove a row from the table. More...
 
virtual bool setActiveColumn (s32 idx, bool doOrder=false)=0
 Makes a column active. This will trigger an ordering process. More...
 
virtual void setCellColor (u32 rowIndex, u32 columnIndex, video::SColor color)=0
 Set the color of a cell text. More...
 
virtual void setCellData (u32 rowIndex, u32 columnIndex, void *data)=0
 Set the data of a cell. More...
 
virtual void setCellText (u32 rowIndex, u32 columnIndex, const core::stringw &text)=0
 Set the text of a cell. More...
 
virtual void setCellText (u32 rowIndex, u32 columnIndex, const core::stringw &text, video::SColor color)=0
 Set the text of a cell, and set a color of this cell. More...
 
virtual void setColumnOrdering (u32 columnIndex, EGUI_COLUMN_ORDERING mode)=0
 This tells the table control which ordering mode should be used when a column header is clicked. More...
 
virtual void setColumnWidth (u32 columnIndex, u32 width)=0
 Set the width of a column. More...
 
virtual void setDrawBackground (bool draw)=0
 Sets whether to draw the background. More...
 
virtual void setDrawFlags (s32 flags)=0
 Set flags, as defined in EGUI_TABLE_DRAW_FLAGS, which influence the layout. More...
 
virtual void setOverrideFont (IGUIFont *font=0)=0
 Sets another skin independent font. More...
 
virtual void setResizableColumns (bool resizable)=0
 columns can be resized by drag 'n drop More...
 
virtual void setSelected (s32 index)=0
 set which row is currently selected More...
 
virtual void swapRows (u32 rowIndexA, u32 rowIndexB)=0
 Swap two row positions. More...
 
- Public Member Functions inherited from irr::gui::IGUIElement
 IGUIElement (EGUI_ELEMENT_TYPE type, IGUIEnvironment *environment, IGUIElement *parent, s32 id, const core::rect< s32 > &rectangle)
 Constructor. More...
 
virtual ~IGUIElement ()
 Destructor. More...
 
virtual void addChild (IGUIElement *child)
 Adds a GUI element as new child of this element. More...
 
virtual bool bringToFront (IGUIElement *element)
 Brings a child to front. More...
 
virtual void deserializeAttributes (io::IAttributes *in, io::SAttributeReadWriteOptions *options=0)
 Reads attributes of the scene node. More...
 
virtual void draw ()
 Draws the element and its children. More...
 
core::rect< s32getAbsoluteClippingRect () const
 Returns the visible area of the element. More...
 
core::rect< s32getAbsolutePosition () const
 Gets the absolute rectangle of this element. More...
 
virtual const core::list< IGUIElement * > & getChildren () const
 Returns list with children of this element. More...
 
virtual IGUIElementgetElementFromId (s32 id, bool searchchildren=false) const
 Finds the first element with the given id. More...
 
virtual IGUIElementgetElementFromPoint (const core::position2d< s32 > &point)
 Returns the topmost GUI element at the specific position. More...
 
virtual s32 getID () const
 Returns id. Can be used to identify the element. More...
 
virtual const c8getName () const
 Returns the name of the element. More...
 
bool getNextElement (s32 startOrder, bool reverse, bool group, IGUIElement *&first, IGUIElement *&closest, bool includeInvisible=false, bool includeDisabled=false) const
 searches elements to find the closest next element to tab to More...
 
IGUIElementgetParent () const
 Returns parent of this element. More...
 
core::rect< s32getRelativePosition () const
 Returns the relative rectangle of this element. More...
 
IGUIElementgetTabGroup ()
 Returns the container element which holds all elements in this element's tab group. More...
 
s32 getTabOrder () const
 Returns the number in the tab order sequence. More...
 
virtual const wchar_t * getText () const
 Returns caption of this element. More...
 
virtual const core::stringwgetToolTipText () const
 Returns caption of this element. More...
 
EGUI_ELEMENT_TYPE getType () const
 Returns the type of the gui element. More...
 
virtual const c8getTypeName () const
 Returns the type name of the gui element. More...
 
virtual bool hasType (EGUI_ELEMENT_TYPE type) const
 Returns true if the gui element supports the given type. More...
 
virtual bool isEnabled () const
 Returns true if element is enabled. More...
 
bool isMyChild (IGUIElement *child) const
 
bool isNotClipped () const
 Gets whether the element will ignore its parent's clipping rectangle. More...
 
virtual bool isPointInside (const core::position2d< s32 > &point) const
 Returns true if a point is within this element. More...
 
virtual bool isSubElement () const
 Returns true if this element was created as part of its parent control. More...
 
bool isTabGroup () const
 Returns true if this element is a tab group. More...
 
bool isTabStop () const
 Returns true if this element can be focused by navigating with the tab key. More...
 
virtual bool isTrulyVisible () const
 Check whether the element is truly visible, taking into accounts its parents' visibility. More...
 
virtual bool isVisible () const
 Returns true if element is visible. More...
 
virtual void move (core::position2d< s32 > absoluteMovement)
 Moves this element. More...
 
virtual bool OnEvent (const SEvent &event)
 Called if an event happened. More...
 
virtual void OnPostRender (u32 timeMs)
 animate the element and its children. More...
 
virtual void remove ()
 Removes this element from its parent. More...
 
virtual void removeChild (IGUIElement *child)
 Removes a child. More...
 
virtual bool sendToBack (IGUIElement *child)
 Moves a child to the back, so it's siblings are drawn on top of it. More...
 
virtual void serializeAttributes (io::IAttributes *out, io::SAttributeReadWriteOptions *options=0) const
 Writes attributes of the scene node. More...
 
void setAlignment (EGUI_ALIGNMENT left, EGUI_ALIGNMENT right, EGUI_ALIGNMENT top, EGUI_ALIGNMENT bottom)
 The alignment defines how the borders of this element will be positioned when the parent element is resized. More...
 
virtual void setEnabled (bool enabled)
 Sets the enabled state of this element. More...
 
virtual void setID (s32 id)
 Sets the id of this element. More...
 
void setMaxSize (core::dimension2du size)
 Sets the maximum size allowed for this element. More...
 
void setMinSize (core::dimension2du size)
 Sets the minimum size allowed for this element. More...
 
virtual void setName (const c8 *name)
 Sets the name of the element. More...
 
virtual void setName (const core::stringc &name)
 Sets the name of the element. More...
 
void setNotClipped (bool noClip)
 Sets whether the element will ignore its parent's clipping rectangle. More...
 
void setRelativePosition (const core::rect< s32 > &r)
 Sets the relative rectangle of this element. More...
 
void setRelativePosition (const core::position2di &position)
 Sets the relative rectangle of this element, maintaining its current width and height. More...
 
void setRelativePositionProportional (const core::rect< f32 > &r)
 Sets the relative rectangle of this element as a proportion of its parent's area. More...
 
virtual void setSubElement (bool subElement)
 Sets whether this control was created as part of its parent. More...
 
void setTabGroup (bool isGroup)
 Sets whether this element is a container for a group of elements which can be navigated using the tab key. More...
 
void setTabOrder (s32 index)
 Sets the priority of focus when using the tab key to navigate between a group of elements. More...
 
void setTabStop (bool enable)
 If set to true, the focus will visit this element when using the tab key to cycle through elements. More...
 
virtual void setText (const wchar_t *text)
 Sets the new caption of this element. More...
 
virtual void setToolTipText (const wchar_t *text)
 Sets the new caption of this element. More...
 
virtual void setVisible (bool visible)
 Sets the visible state of this element. More...
 
virtual void updateAbsolutePosition ()
 Updates the absolute position. More...
 
- Public Member Functions inherited from irr::IReferenceCounted
 IReferenceCounted ()
 Constructor. More...
 
virtual ~IReferenceCounted ()
 Destructor. More...
 
bool drop () const
 Drops the object. Decrements the reference counter by one. More...
 
const c8getDebugName () const
 Returns the debug name of the object. More...
 
s32 getReferenceCount () const
 Get the reference count. More...
 
void grab () const
 Grabs the object. Increments the reference counter by one. More...
 
- Public Member Functions inherited from irr::IEventReceiver
virtual ~IEventReceiver ()
 Destructor. More...
 

Additional Inherited Members

- Protected Member Functions inherited from irr::gui::IGUIElement
void addChildToEnd (IGUIElement *child)
 
void recalculateAbsolutePosition (bool recursive)
 
- Protected Member Functions inherited from irr::IReferenceCounted
void setDebugName (const c8 *newName)
 Sets the debug name of the object. More...
 
- Protected Attributes inherited from irr::gui::IGUIElement
core::rect< s32AbsoluteClippingRect
 absolute clipping rect of element More...
 
core::rect< s32AbsoluteRect
 absolute rect of element More...
 
EGUI_ALIGNMENT AlignBottom
 
EGUI_ALIGNMENT AlignLeft
 tells the element how to act when its parent is resized More...
 
EGUI_ALIGNMENT AlignRight
 
EGUI_ALIGNMENT AlignTop
 
core::list< IGUIElement * > Children
 List of all children of this element. More...
 
core::rect< s32DesiredRect
 
IGUIEnvironmentEnvironment
 GUI Environment. More...
 
s32 ID
 users can set this for identifying the element by integer More...
 
bool IsEnabled
 is enabled? More...
 
bool IsSubElement
 is a part of a larger whole and should not be serialized? More...
 
bool IsTabGroup
 tab groups are containers like windows, use ctrl+tab to navigate More...
 
bool IsTabStop
 tab stop like in windows More...
 
bool IsVisible
 is visible? More...
 
core::rect< s32LastParentRect
 for calculating the difference when resizing parent More...
 
core::dimension2du MaxSize
 maximum and minimum size of the element More...
 
core::dimension2du MinSize
 
core::stringc Name
 users can set this for identifying the element by string More...
 
bool NoClip
 does this element ignore its parent's clipping rectangle? More...
 
IGUIElementParent
 Pointer to the parent. More...
 
core::rect< s32RelativeRect
 relative rect of element More...
 
core::rect< f32ScaleRect
 relative scale of the element inside its parent More...
 
s32 TabOrder
 tab order More...
 
core::stringw Text
 caption More...
 
core::stringw ToolTipText
 tooltip More...
 
EGUI_ELEMENT_TYPE Type
 type of element More...
 

Detailed Description

Default list box GUI element.

This element can create the following events of type EGUI_EVENT_TYPE:
  • EGET_TABLE_CHANGED
  • EGET_TABLE_SELECTED_AGAIN
  • EGET_TABLE_HEADER_CHANGED

Definition at line 89 of file IGUITable.h.

Constructor & Destructor Documentation

◆ IGUITable()

irr::gui::IGUITable::IGUITable ( IGUIEnvironment environment,
IGUIElement parent,
s32  id,
core::rect< s32 rectangle 
)
inline

constructor

Definition at line 93 of file IGUITable.h.

Member Function Documentation

◆ addColumn()

virtual void irr::gui::IGUITable::addColumn ( const wchar_t *  caption,
s32  columnIndex = -1 
)
pure virtual

Adds a column.

If columnIndex is outside the current range, do push new column at the end

◆ addRow()

virtual u32 irr::gui::IGUITable::addRow ( u32  rowIndex)
pure virtual

adds a row to the table

Parameters
rowIndexZero based index of rows. The row will be inserted at this position, if a row already exist there, it will be placed after it. If the row is larger than the actual number of row by more than one, it won't be created. Note that if you create a row that's not at the end, there might be performance issues.
Returns
index of inserted row.

◆ clear()

virtual void irr::gui::IGUITable::clear ( )
pure virtual

clears the table, deletes all items in the table

◆ clearRows()

virtual void irr::gui::IGUITable::clearRows ( )
pure virtual

clears the table rows, but keeps the columns intact

◆ getActiveColumn()

virtual s32 irr::gui::IGUITable::getActiveColumn ( ) const
pure virtual

Returns which header is currently active.

◆ getActiveColumnOrdering()

virtual EGUI_ORDERING_MODE irr::gui::IGUITable::getActiveColumnOrdering ( ) const
pure virtual

Returns the ordering used by the currently active column.

◆ getActiveFont()

virtual IGUIFont* irr::gui::IGUITable::getActiveFont ( ) const
pure virtual

Get the font which is used right now for drawing.

Currently this is the override font when one is set and the font of the active skin otherwise

◆ getCellData()

virtual void* irr::gui::IGUITable::getCellData ( u32  rowIndex,
u32  columnIndex 
) const
pure virtual

Get the data of a cell.

◆ getCellText()

virtual const wchar_t* irr::gui::IGUITable::getCellText ( u32  rowIndex,
u32  columnIndex 
) const
pure virtual

Get the text of a cell.

◆ getColumnCount()

virtual s32 irr::gui::IGUITable::getColumnCount ( ) const
pure virtual

Returns the number of columns in the table control.

◆ getColumnWidth()

virtual u32 irr::gui::IGUITable::getColumnWidth ( u32  columnIndex) const
pure virtual

Get the width of a column.

◆ getDrawFlags()

virtual s32 irr::gui::IGUITable::getDrawFlags ( ) const
pure virtual

Get the flags, as defined in EGUI_TABLE_DRAW_FLAGS, which influence the layout.

◆ getHorizontalScrollBar()

virtual IGUIScrollBar* irr::gui::IGUITable::getHorizontalScrollBar ( ) const
pure virtual

Access the horizontal scrollbar.

◆ getItemHeight()

virtual s32 irr::gui::IGUITable::getItemHeight ( ) const
pure virtual

Get the height of items/rows.

◆ getOverrideFont()

virtual IGUIFont* irr::gui::IGUITable::getOverrideFont ( void  ) const
pure virtual

Gets the override font (if any)

Returns
The override font (may be 0)

◆ getRowCount()

virtual s32 irr::gui::IGUITable::getRowCount ( ) const
pure virtual

Get amount of rows in the tabcontrol.

◆ getSelected()

virtual s32 irr::gui::IGUITable::getSelected ( ) const
pure virtual

Returns which row is currently selected.

◆ getVerticalScrollBar()

virtual IGUIScrollBar* irr::gui::IGUITable::getVerticalScrollBar ( ) const
pure virtual

Access the vertical scrollbar.

◆ hasResizableColumns()

virtual bool irr::gui::IGUITable::hasResizableColumns ( ) const
pure virtual

can columns be resized by drag 'n drop?

◆ isDrawBackgroundEnabled()

virtual bool irr::gui::IGUITable::isDrawBackgroundEnabled ( ) const
pure virtual

Checks if background drawing is enabled.

Returns
true if background drawing is enabled, false otherwise

◆ orderRows()

virtual void irr::gui::IGUITable::orderRows ( s32  columnIndex = -1,
EGUI_ORDERING_MODE  mode = EGOM_NONE 
)
pure virtual

This tells the table to start ordering all the rows.

You need to explicitly tell the table to re order the rows when a new row is added or the cells data is changed. This makes the system more flexible and doesn't make you pay the cost of ordering when adding a lot of rows.

Parameters
columnIndexWhen set to -1 the active column is used.
modeOrdering mode of the rows.

◆ removeColumn()

virtual void irr::gui::IGUITable::removeColumn ( u32  columnIndex)
pure virtual

remove a column from the table

◆ removeRow()

virtual void irr::gui::IGUITable::removeRow ( u32  rowIndex)
pure virtual

Remove a row from the table.

◆ setActiveColumn()

virtual bool irr::gui::IGUITable::setActiveColumn ( s32  idx,
bool  doOrder = false 
)
pure virtual

Makes a column active. This will trigger an ordering process.

Parameters
idxThe id of the column to make active or a negative number to make non active.
doOrderDo also the ordering which depending on mode for active column
Returns
True when the column could be set active (aka - it did exist).

◆ setCellColor()

virtual void irr::gui::IGUITable::setCellColor ( u32  rowIndex,
u32  columnIndex,
video::SColor  color 
)
pure virtual

Set the color of a cell text.

◆ setCellData()

virtual void irr::gui::IGUITable::setCellData ( u32  rowIndex,
u32  columnIndex,
void *  data 
)
pure virtual

Set the data of a cell.

◆ setCellText() [1/2]

virtual void irr::gui::IGUITable::setCellText ( u32  rowIndex,
u32  columnIndex,
const core::stringw text 
)
pure virtual

Set the text of a cell.

◆ setCellText() [2/2]

virtual void irr::gui::IGUITable::setCellText ( u32  rowIndex,
u32  columnIndex,
const core::stringw text,
video::SColor  color 
)
pure virtual

Set the text of a cell, and set a color of this cell.

◆ setColumnOrdering()

virtual void irr::gui::IGUITable::setColumnOrdering ( u32  columnIndex,
EGUI_COLUMN_ORDERING  mode 
)
pure virtual

This tells the table control which ordering mode should be used when a column header is clicked.

Parameters
columnIndexThe index of the column header.
modeOne of the modes defined in EGUI_COLUMN_ORDERING

◆ setColumnWidth()

virtual void irr::gui::IGUITable::setColumnWidth ( u32  columnIndex,
u32  width 
)
pure virtual

Set the width of a column.

◆ setDrawBackground()

virtual void irr::gui::IGUITable::setDrawBackground ( bool  draw)
pure virtual

Sets whether to draw the background.

◆ setDrawFlags()

virtual void irr::gui::IGUITable::setDrawFlags ( s32  flags)
pure virtual

Set flags, as defined in EGUI_TABLE_DRAW_FLAGS, which influence the layout.

◆ setOverrideFont()

virtual void irr::gui::IGUITable::setOverrideFont ( IGUIFont font = 0)
pure virtual

Sets another skin independent font.

If this is set to zero, the button uses the font of the skin.

Parameters
fontNew font to set.

◆ setResizableColumns()

virtual void irr::gui::IGUITable::setResizableColumns ( bool  resizable)
pure virtual

columns can be resized by drag 'n drop

◆ setSelected()

virtual void irr::gui::IGUITable::setSelected ( s32  index)
pure virtual

set which row is currently selected

◆ swapRows()

virtual void irr::gui::IGUITable::swapRows ( u32  rowIndexA,
u32  rowIndexB 
)
pure virtual

Swap two row positions.


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