wxWidgets: wxDataViewIndexListModel Class Reference

| Version: 3.0.2

- Main Page
- Related Pages
- Categories
- Classes
- Files

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

Public Member Functions | List of all members
wxDataViewIndexListModel Class Reference
wxDataViewCtrl Related Classes

`#include <wx/dataview.h>`

Inheritance diagram for wxDataViewIndexListModel:
[legend]

## Detailed Description

wxDataViewIndexListModel is a specialized data model which lets you address an item by its position (row) rather than its wxDataViewItem (which you can obtain from this class).

This model also provides its own wxDataViewIndexListModel::Compare method which sorts the model's data by the index.

This model is not a virtual model since the control stores each wxDataViewItem. Use wxDataViewVirtualListModel if you need to display millions of items or have other reason to use a virtual control.

See Also
  wxDataViewListModel for the API.

##

Library: wxAdvanced
Category: wxDataViewCtrl Related Classes

## Public Member Functions
| wxDataViewIndexListModel (unsigned int initial_size=0)
| Constructor.
wxDataViewItem | GetItem (unsigned int row) const
| Returns the wxDataViewItem at the given row.
void | Reset (unsigned int new_size)
| Call this after if the data has to be read again from the model.
void | RowAppended ()
| Call this after a row has been appended to the model.
void | RowChanged (unsigned int row)
| Call this after a row has been changed.
void | RowDeleted (unsigned int row)
| Call this after a row has been deleted.
void | RowInserted (unsigned int before)
| Call this after a row has been inserted at the given position.
void | RowPrepended ()
| Call this after a row has been prepended to the model.
void | RowValueChanged (unsigned int row, unsigned int col)
| Call this after a value has been changed.
void | RowsDeleted (const wxArrayInt &rows)
| Call this after rows have been deleted.
Public Member Functions inherited from wxDataViewListModel
virtual | ~wxDataViewListModel ()
| Destructor.
int | Compare (const wxDataViewItem &item1, const wxDataViewItem &item2, unsigned int column, bool ascending) const
| Compare method that sorts the items by their index.
virtual bool | GetAttrByRow (unsigned int row, unsigned int col, wxDataViewItemAttr &attr) const
| Override this to indicate that the row has special font attributes.
virtual bool | IsEnabledByRow (unsigned int row, unsigned int col) const
| Override this if you want to disable specific items.
unsigned int | GetCount () const =0
| Returns the number of items (or rows) in the list.
unsigned int | GetRow (const wxDataViewItem &item) const =0
| Returns the position of given item.
virtual void | GetValueByRow (wxVariant &variant, unsigned int row, unsigned int col) const =0
| Override this to allow getting values from the model.
virtual bool | SetValueByRow (const wxVariant &variant, unsigned int row, unsigned int col)=0
| Called in order to set a value in the model.
Public Member Functions inherited from wxDataViewModel
| wxDataViewModel ()
| Constructor.
void | AddNotifier (wxDataViewModelNotifier *notifier)
| Adds a wxDataViewModelNotifier to the model.
bool | ChangeValue (const wxVariant &variant, const wxDataViewItem &item, unsigned int col)
| Change the value of the given item and update the control to reflect it.
virtual bool | Cleared ()
| Called to inform the model that all data has been cleared.
virtual bool | GetAttr (const wxDataViewItem &item, unsigned int col, wxDataViewItemAttr &attr) const
| Override this to indicate that the item has special font attributes.
virtual bool | IsEnabled (const wxDataViewItem &item, unsigned int col) const
| Override this to indicate that the item should be disabled.
virtual unsigned int | GetChildren (const wxDataViewItem &item, wxDataViewItemArray &children) const =0
| Override this so the control can query the child items of an item.
virtual unsigned int | GetColumnCount () const =0
| Override this to indicate the number of columns in the model.
virtual wxString | GetColumnType (unsigned int col) const =0
| Override this to indicate what type of data is stored in the column specified by col.
virtual wxDataViewItem | GetParent (const wxDataViewItem &item) const =0
| Override this to indicate which wxDataViewItem representing the parent of item or an invalid wxDataViewItem if the root item is the parent item.
virtual void | GetValue (wxVariant &variant, const wxDataViewItem &item, unsigned int col) const =0
| Override this to indicate the value of item.
virtual bool | HasContainerColumns (const wxDataViewItem &item) const
| Override this method to indicate if a container item merely acts as a headline (or for categorisation) or if it also acts a normal item with entries for further columns.
virtual bool | HasDefaultCompare () const
| Override this to indicate that the model provides a default compare function that the control should use if no wxDataViewColumn has been chosen for sorting.
bool | HasValue (const wxDataViewItem &item, unsigned col) const
| Return true if there is a value in the given column of this item.
virtual bool | IsContainer (const wxDataViewItem &item) const =0
| Override this to indicate of item is a container, i.e. if it can have child items.
bool | ItemAdded (const wxDataViewItem &parent, const wxDataViewItem &item)
| Call this to inform the model that an item has been added to the data.
bool | ItemChanged (const wxDataViewItem &item)
| Call this to inform the model that an item has changed.
bool | ItemDeleted (const wxDataViewItem &parent, const wxDataViewItem &item)
| Call this to inform the model that an item has been deleted from the data.
bool | ItemsAdded (const wxDataViewItem &parent, const wxDataViewItemArray &items)
| Call this to inform the model that several items have been added to the data.
bool | ItemsChanged (const wxDataViewItemArray &items)
| Call this to inform the model that several items have changed.
bool | ItemsDeleted (const wxDataViewItem &parent, const wxDataViewItemArray &items)
| Call this to inform the model that several items have been deleted.
void | RemoveNotifier (wxDataViewModelNotifier *notifier)
| Remove the notifier from the list of notifiers.
virtual void | Resort ()
| Call this to initiate a resort after the sort function has been changed.
virtual bool | SetValue (const wxVariant &variant, const wxDataViewItem &item, unsigned int col)=0
| This gets called in order to set a value in the data model.
virtual bool | ValueChanged (const wxDataViewItem &item, unsigned int col)
| Call this to inform this model that a value in the model has been changed.
virtual bool | IsListModel () const
virtual bool | IsVirtualListModel () const
Public Member Functions inherited from wxRefCounter
| wxRefCounter ()
| Default constructor.
void | DecRef ()
| Decrements the reference count associated with this shared data and, if it reaches zero, destroys this instance of wxRefCounter releasing its memory.
int | GetRefCount () const
| Returns the reference count associated with this shared data.
void | IncRef ()
| Increments the reference count associated with this shared data.

## Additional Inherited Members
Protected Member Functions inherited from wxDataViewModel
virtual | ~wxDataViewModel ()
| Destructor.

## Constructor & Destructor Documentation

wxDataViewIndexListModel::wxDataViewIndexListModel | ( | unsigned int | initial_size = `0` | ) |

Constructor.

## Member Function Documentation

wxDataViewItem wxDataViewIndexListModel::GetItem | ( | unsigned int | row | ) | const

Returns the wxDataViewItem at the given row.

void wxDataViewIndexListModel::Reset | ( | unsigned int | new_size | ) |

Call this after if the data has to be read again from the model.

This is useful after major changes when calling the methods below (possibly thousands of times) doesn't make sense.

void wxDataViewIndexListModel::RowAppended | ( |  | ) |

Call this after a row has been appended to the model.

void wxDataViewIndexListModel::RowChanged | ( | unsigned int | row | ) |

Call this after a row has been changed.

void wxDataViewIndexListModel::RowDeleted | ( | unsigned int | row | ) |

Call this after a row has been deleted.

void wxDataViewIndexListModel::RowInserted | ( | unsigned int | before | ) |

Call this after a row has been inserted at the given position.

void wxDataViewIndexListModel::RowPrepended | ( |  | ) |

Call this after a row has been prepended to the model.

void wxDataViewIndexListModel::RowsDeleted | ( | const wxArrayInt & | rows | ) |

Call this after rows have been deleted.

The array will internally get copied and sorted in descending order so that the rows with the highest position will be deleted first.

void wxDataViewIndexListModel::RowValueChanged | ( | unsigned int | row,
|  | unsigned int | col
| ) |  |

Call this after a value has been changed.