\wxheading{Derived from}
-\helpref{wxObject}{wxobject}
+\helpref{wxObjectRefData}{wxobjectrefdata}
\wxheading{Include files}
\func{}{wxDataViewModel}{\void}
+Constructor.
\membersection{wxDataViewModel::\destruct{wxDataViewModel}}\label{wxdataviewmodeldtor}
\func{}{\destruct{wxDataViewModel}}{\void}
+Destructor.
\section{\class{wxDataViewListModel}}\label{wxdataviewlistmodel}
\helpref{wxDataViewCtrl}{wxdataviewctrl}. You need to derive
from this class to define your own data model.
+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). 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
+its type in a generic way. wxVariant can be extended to contain
+almost any data without changes to the original class.
+
This class maintains a list of
\helpref{wxDataListViewListModelNotifier}{wxdataviewlistmodelnotifier}
which link this class to the specific implementations on the
-supported platforms so that e.g. calling {\it ValueChanged()}
+supported platforms so that e.g. calling
+\helpref{ValueChanged}{wxdataviewlistmodelvaluechanged}
on this model will just call
\helpref{wxDataListViewListModelNotifier::ValueChanged}{wxdataviewlistmodelnotifiervaluechanged}
for each notifier that has been added. This is used both for
\wxheading{Derived from}
-\helpref{wxDataViewModel}{wxdataviewmodel}
+\helpref{wxDataViewModel}{wxdataviewmodel}\\
+\helpref{wxObject}{wxobject}
\wxheading{Include files}
\func{}{wxDataViewListModel}{\void}
+Constructor.
\membersection{wxDataViewListModel::\destruct{wxDataViewListModel}}\label{wxdataviewlistmodeldtor}
\func{}{\destruct{wxDataViewListModel}}{\void}
+Destructor.
\membersection{wxDataViewListModel::AddNotifier}\label{wxdataviewlistmodeladdnotifier}
Adds {\it notifier} to the internal list of notifers.
-See also \helpref{RemoveNotifier}{{wxdataviewlistmodelremovenotifier}.
+See also \helpref{RemoveNotifier}{wxdataviewlistmodelremovenotifier}.
\membersection{wxDataViewListModel::AddViewingColumn}\label{wxdataviewlistmodeladdviewingcolumn}
\membersection{wxDataViewListModel::Cleared}\label{wxdataviewlistmodelcleared}
-\func{bool}{Cleared}{\void}
+\func{bool}{virtual Cleared}{\void}
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::GetRowCount}\label{wxdataviewlistmodelgetrowcount}
-\membersection{wxDataViewListModel::GetNumberOfRows}\label{wxdataviewlistmodelgetnumberofrows}
-
-\func{virtual unsigned int}{GetNumberOfRows}{\void}
+\func{virtual unsigned int}{GetRowCount}{\void}
Override this to indicate, how many rows the list
model has.
Removes the notifier from the list of notifiers.
-See also \helpref{AddNotifier}{{wxdataviewlistmodeladdnotifier}.
+See also \helpref{AddNotifier}{wxdataviewlistmodeladdnotifier}.
\membersection{wxDataViewListModel::RemoveViewingColumn}\label{wxdataviewlistmodelremoveviewingcolumn}
\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
\wxheading{Derived from}
-\helpref{wxDataViewListModel}{wxdataviewlistmodel}
+\helpref{wxDataViewListModel}{wxdataviewlistmodel}\\
+\helpref{wxDataViewModel}{wxdataviewmodel}\\
+\helpref{wxObject}{wxobject}
\wxheading{Include files}