-Currently, this class has no functionality at all and the
-only existing implementation of it is the
-\helpref{wxDataViewListModel}{wxdataviewlistmodel}. The
-plan is to move all functionality of wxDataViewListModel
-and a to-be-written wxDataViewTreeModel into wxDataViewModel
-and make wxDataViewListModel and wxDataViewTreeModel subsets
-of the abstract wxDataViewModel.
-
-\wxheading{Derived from}
-
-\helpref{wxObject}{wxobject}
-
-\wxheading{Include files}
-
-<wx/dataview.h>
-
-\membersection{wxDataViewModel::wxDataViewModel}\label{wxdataviewmodelwxdataviewmodel}
-
-\func{}{wxDataViewModel}{\void}
-
-Constructor.
-
-\membersection{wxDataViewModel::\destruct{wxDataViewModel}}\label{wxdataviewmodeldtor}
-
-\func{}{\destruct{wxDataViewModel}}{\void}
-
-Destructor.
-
-\section{\class{wxDataViewListModel}}\label{wxdataviewlistmodel}
-
-wxDataViewListModel is currently the only existing variant
-of a \helpref{wxDataViewModel}{wxdataviewmodel}. It allows
-to define a table like data model to be displayed by a
-\helpref{wxDataViewCtrl}{wxdataviewctrl}. You need to derive
-from this class to define your own data model.
+All other models derive from it and must implement its
+pure virtual functions in order to define a complete
+data model. In detail, you need to override
+\helpref{IsContainer}{wxdataviewmodeliscontainer},
+\helpref{GetParent}{wxdataviewmodelgetparent},
+\helpref{GetColumnCount}{wxdataviewmodelgetcolumncount},
+\helpref{GetColumnType}{wxdataviewmodelgetcolumntype} and
+\helpref{GetValue}{wxdataviewmodelgetvalue} 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}{wxdataviewmodelsetvalue} which the
+wxDataViewCtrl will call when a change to some data has been
+commited.
+
+wxDataViewModel (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.
+
+The data that is presented through this data model is expected
+to change at run-time. You need to inform the data model when
+a change happened. Depending on what happened you need to call
+one of the following methods:
+\helpref{ValueChanged}{wxdataviewmodelvaluechanged},
+\helpref{ItemAdded}{wxdataviewmodelitemadded},
+\helpref{ItemDeleted}{wxdataviewmodelitemdeleted},
+\helpref{ItemChanged}{wxdataviewmodelitemchanged},
+\helpref{Cleared}{wxdataviewmodelcleared}.
+
+Note that wxDataViewModel does not define the position or
+index of any item in the control since several control might
+display the data differently, but wxDataViewModel does
+provide a \helpref{Compare}{wxdataviewmodelcompare} method
+which the wxDataViewCtrl may use to sort the data either
+in conjunction with a column header or without (see
+\helpref{HasDefaultCompare}{wxdataviewmodelhasdefaultcompare}.