\section{\class{wxDataViewIndexListModel}}\label{wxdataviewindexlistmodel} 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 \helpref{Compare}{wxdataviewindexlistmodelcompare} method which sorts the model's data by the index. This model is special in the it is implemented differently under OS X and other platforms. Under OS X a wxDataViewItem is always persistent and this is also the case for this class. Under other platforms, the meaning of a wxDataViewItem is changed to reflect a row number for wxDataViewIndexListModel. The consequence of this is that wxDataViewIndexListModel can be used as a virtual model with an almost infinate number of items on platforms other than OS X. \wxheading{Derived from} \helpref{wxDataViewModel}{wxdataviewmodel} \wxheading{Include files} \latexignore{\rtfignore{\wxheading{Members}}} \membersection{wxDataViewIndexListModel::wxDataViewIndexListModel}\label{wxdataviewindexlistmodelwxdataviewindexlistmodel} \func{}{wxDataViewIndexListModel}{\param{unsigned int }{initial\_size = 0}} Constructor. \membersection{wxDataViewIndexListModel::\destruct{wxDataViewIndexListModel}}\label{wxdataviewindexlistmodeldtor} \func{}{\destruct{wxDataViewIndexListModel}}{\void} Destructor. \membersection{wxDataViewIndexListModel::Compare}\label{wxdataviewindexlistmodelcompare} \func{int}{Compare}{\param{const wxDataViewItem\& }{item1}, \param{const wxDataViewItem\& }{item2}, \param{unsigned int }{column}, \param{bool }{ascending}} Compare method that sorts the items by their index. \membersection{wxDataViewIndexListModel::GetAttr}\label{wxdataviewindexlistmodelgetattr} \func{bool}{GetAttr}{\param{unsigned int }{row}, \param{unsigned int }{col}, \param{wxDataViewItemAttr\& }{attr}} Oberride this to indicate that the row has special font attributes. This only affects the \helpref{wxDataViewTextRendererText}{wxdataviewtextrendererattr} renderer. See also \helpref{wxDataViewItemAttr}{wxdataviewitemattr}. \membersection{wxDataViewIndexListModel::GetItem}\label{wxdataviewindexlistmodelgetitem} \constfunc{wxDataViewItem}{GetItem}{\param{unsigned int }{row}} Returns the wxDataViewItem at the given {\it row}. \membersection{wxDataViewIndexListModel::GetRow}\label{wxdataviewindexlistmodelgetrow} \constfunc{unsigned int}{GetRow}{\param{const wxDataViewItem\& }{item}} Returns the position of given {\it item}. \membersection{wxDataViewIndexListModel::GetValue}\label{wxdataviewindexlistmodelgetvalue} \constfunc{void}{GetValue}{\param{wxVariant\& }{variant}, \param{unsigned int }{row}, \param{unsigned int }{col}} Override this to allow getting values from the model. \membersection{wxDataViewIndexListModel::Reset}\label{wxdataviewindexlistmodelreset} \func{void}{Reset}{\param{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. \membersection{wxDataViewIndexListModel::RowAppended}\label{wxdataviewindexlistmodelrowappended} \func{void}{RowAppended}{\void} Call this after a row has been appended to the model. \membersection{wxDataViewIndexListModel::RowChanged}\label{wxdataviewindexlistmodelrowchanged} \func{void}{RowChanged}{\param{unsigned int }{row}} Call this after a row has been changed. \membersection{wxDataViewIndexListModel::RowDeleted}\label{wxdataviewindexlistmodelrowdeleted} \func{void}{RowDeleted}{\param{unsigned int }{row}} Call this after a row has been deleted. \membersection{wxDataViewIndexListModel::RowsDeleted}\label{wxdataviewindexlistmodelrowdeleted} \func{void}{RowsDeleted}{\param{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. \membersection{wxDataViewIndexListModel::RowInserted}\label{wxdataviewindexlistmodelrowinserted} \func{void}{RowInserted}{\param{unsigned int }{before}} Call this after a row has been inserted at the given position. \membersection{wxDataViewIndexListModel::RowPrepended}\label{wxdataviewindexlistmodelrowprepended} \func{void}{RowPrepended}{\void} Call this after a row has been prepended to the model. \membersection{wxDataViewIndexListModel::RowValueChanged}\label{wxdataviewindexlistmodelrowvaluechanged} \func{void}{RowValueChanged}{\param{unsigned int }{row}, \param{unsigned int }{col}} Call this after a value has been changed. \membersection{wxDataViewIndexListModel::SetValue}\label{wxdataviewindexlistmodelsetvalue} \func{bool}{SetValue}{\param{const wxVariant\& }{variant}, \param{unsigned int }{row}, \param{unsigned int }{col}} Called in order to set a value in the model.