X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/68d7c6427b600fef5c91555c74d4c634fa03416d..d6f582e704041c4b133893183270d4853ea34bac:/docs/latex/wx/dataviewmodel.tex diff --git a/docs/latex/wx/dataviewmodel.tex b/docs/latex/wx/dataviewmodel.tex index 677d850ea7..925e62790b 100644 --- a/docs/latex/wx/dataviewmodel.tex +++ b/docs/latex/wx/dataviewmodel.tex @@ -39,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. +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 -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 @@ -58,7 +91,8 @@ mostly used internally. \wxheading{Derived from} -\helpref{wxDataViewModel}{wxdataviewmodel} +\helpref{wxDataViewModel}{wxdataviewmodel}\\ +\helpref{wxObject}{wxobject} \wxheading{Include files} @@ -210,7 +244,9 @@ to be fixed. \wxheading{Derived from} -\helpref{wxDataViewListModel}{wxdataviewlistmodel} +\helpref{wxDataViewListModel}{wxdataviewlistmodel}\\ +\helpref{wxDataViewModel}{wxdataviewmodel}\\ +\helpref{wxObject}{wxobject} \wxheading{Include files}