]> git.saurik.com Git - wxWidgets.git/blobdiff - docs/latex/wx/dataviewmodel.tex
explain that wxRTTI macros must be used for OnCompareItems() to be called
[wxWidgets.git] / docs / latex / wx / dataviewmodel.tex
index fb8a80c79f61844ca33158dc803c44f13c05353e..925e62790bd7be9189282760cca560a0611bc0c7 100644 (file)
@@ -23,11 +23,13 @@ of the abstract wxDataViewModel.
 
 \func{}{wxDataViewModel}{\void}
 
 
 \func{}{wxDataViewModel}{\void}
 
+Constructor.
 
 \membersection{wxDataViewModel::\destruct{wxDataViewModel}}\label{wxdataviewmodeldtor}
 
 \func{}{\destruct{wxDataViewModel}}{\void}
 
 
 \membersection{wxDataViewModel::\destruct{wxDataViewModel}}\label{wxdataviewmodeldtor}
 
 \func{}{\destruct{wxDataViewModel}}{\void}
 
+Destructor.
 
 \section{\class{wxDataViewListModel}}\label{wxdataviewlistmodel}
 
 
 \section{\class{wxDataViewListModel}}\label{wxdataviewlistmodel}
 
@@ -37,10 +39,43 @@ 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.
 
 \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
+\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
 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
 on this model will just call 
 \helpref{wxDataListViewListModelNotifier::ValueChanged}{wxdataviewlistmodelnotifiervaluechanged}
 for each notifier that has been added. This is used both for
@@ -56,7 +91,8 @@ mostly used internally.
 
 \wxheading{Derived from}
 
 
 \wxheading{Derived from}
 
-\helpref{wxDataViewModel}{wxdataviewmodel}
+\helpref{wxDataViewModel}{wxdataviewmodel}\\
+\helpref{wxObject}{wxobject}
 
 \wxheading{Include files}
 
 
 \wxheading{Include files}
 
@@ -67,11 +103,13 @@ mostly used internally.
 
 \func{}{wxDataViewListModel}{\void}
 
 
 \func{}{wxDataViewListModel}{\void}
 
+Constructor.
 
 \membersection{wxDataViewListModel::\destruct{wxDataViewListModel}}\label{wxdataviewlistmodeldtor}
 
 \func{}{\destruct{wxDataViewListModel}}{\void}
 
 
 \membersection{wxDataViewListModel::\destruct{wxDataViewListModel}}\label{wxdataviewlistmodeldtor}
 
 \func{}{\destruct{wxDataViewListModel}}{\void}
 
+Destructor.
 
 \membersection{wxDataViewListModel::AddNotifier}\label{wxdataviewlistmodeladdnotifier}
 
 
 \membersection{wxDataViewListModel::AddNotifier}\label{wxdataviewlistmodeladdnotifier}
 
@@ -79,7 +117,7 @@ mostly used internally.
 
 Adds {\it notifier} to the internal list of notifers.
 
 
 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::AddViewingColumn}\label{wxdataviewlistmodeladdviewingcolumn}
 
@@ -91,7 +129,7 @@ display a certain column of this model.
 
 \membersection{wxDataViewListModel::Cleared}\label{wxdataviewlistmodelcleared}
 
 
 \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.
 
 
 Call this if all data in your model has been cleared.
 
@@ -131,7 +169,7 @@ is used to store the data.
 
 Removes the notifier from the list of notifiers.
 
 
 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::RemoveViewingColumn}\label{wxdataviewlistmodelremoveviewingcolumn}
 
@@ -206,7 +244,9 @@ to be fixed.
 
 \wxheading{Derived from}
 
 
 \wxheading{Derived from}
 
-\helpref{wxDataViewListModel}{wxdataviewlistmodel}
+\helpref{wxDataViewListModel}{wxdataviewlistmodel}\\
+\helpref{wxDataViewModel}{wxdataviewmodel}\\
+\helpref{wxObject}{wxobject}
 
 \wxheading{Include files}
 
 
 \wxheading{Include files}