\wxheading{Derived from}
-\helpref{wxObject}{wxobject}
+\helpref{wxObjectRefData}{wxobjectrefdata}
\wxheading{Include files}
\helpref{wxDataViewCtrl}{wxdataviewctrl}. You need to derive
from this class to define your own data model.
-You need to override \helpref{GetNumberOfRows}{wxdataviewlistmodelgetnumberofrows},
-\helpref{GetNumberOfCols}{wxdataviewlistmodelgetnumberofcols},
-\helpref{GetColType}{wxdataviewlistmodelgetcoltype} and
+You need to override \helpref{GetRowCount}{wxdataviewlistmodelgetrowcount},
+\helpref{GetColumnCount}{wxdataviewlistmodelgetcolumncount},
+\helpref{GetColumnType}{wxdataviewlistmodelgetcolumntype} and
\helpref{GetValue}{wxdataviewlistmodelgetvalue} in order to
define the data model (which acts as an interface between
-your actual data and the wxDataViewCtrl).
+your actual data and the wxDataViewCtrl). Since you will
+usually also allow the wxDataViewCtrl to change your data
+through its graphical interface, you will also have to override
+\helpref{SetValue}{wxdataviewlistmodelsetvalue} which the
+wxDataViewCtrl will call when a change to some data has been
+commited.
+
+The data that is presented through this data model is expected
+to change at run-time. You need to inform the data model that
+a change happens. Depending on what happened you need to call
+one of the following methods:
+\helpref{ValueChanged}{wxdataviewlistmodelvaluechanged},
+\helpref{RowChanged}{wxdataviewlistmodelrowchanged},
+\helpref{RowAppended}{wxdataviewlistmodelrowappended},
+\helpref{RowPrepended}{wxdataviewlistmodelrowprepended},
+\helpref{RowInserted}{wxdataviewlistmodelrowinserted},
+\helpref{RowDeleted}{wxdataviewlistmodelrowdeleted},
+\helpref{RowsReordered}{wxdataviewlistmodelrowsreordered} or
+\helpref{RowsCleared}{wxdataviewlistmodelcleared}.
+
+
wxDataViewModel and this class (as indeed the entire wxDataViewCtrl
code) is using \helpref{wxVariant}{wxvariant} to store data and
Call this if all data in your model has been cleared.
-\membersection{wxDataViewListModel::GetColType}\label{wxdataviewlistmodelgetcoltype}
+\membersection{wxDataViewListModel::GetColumnCount}\label{wxdataviewlistmodelgetcolumncount}
+
+\func{virtual unsigned int}{GetColumnCount}{\void}
+
+Override this to indicate, how many columns the list
+model has.
+
+\membersection{wxDataViewListModel::GetColumnType}\label{wxdataviewlistmodelgetcolumntype}
\func{virtual wxString}{GetColType}{\param{unsigned int }{col}}
column specified by {\it col}. This should return a string
indicating the type of data as reported by \helpref{wxVariant}{wxvariant}.
-\membersection{wxDataViewListModel::GetNumberOfCols}\label{wxdataviewlistmodelgetnumberofcols}
-
-\func{virtual unsigned int}{GetNumberOfCols}{\void}
-
-Override this to indicate, how many columns the list
-model has.
-
-\membersection{wxDataViewListModel::GetNumberOfRows}\label{wxdataviewlistmodelgetnumberofrows}
+\membersection{wxDataViewListModel::GetRowCount}\label{wxdataviewlistmodelgetrowcount}
-\func{virtual unsigned int}{GetNumberOfRows}{\void}
+\func{virtual unsigned int}{GetRowCount}{\void}
Override this to indicate, how many rows the list
model has.
\membersection{wxDataViewListModel::SetValue}\label{wxdataviewlistmodelsetvalue}
-\func{virtual bool}{SetValue}{\param{wxVariant\& }{variant}, \param{unsigned int }{col}, \param{unsigned int }{row}}
+\func{virtual bool}{SetValue}{\param{const wxVariant\& }{variant}, \param{unsigned int }{col}, \param{unsigned int }{row}}
This method gets called by e.g. the wxDataViewCtrl class if a
value has been changed through its graphical interface. You