]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/dataview.h
More efficient access to name and value
[wxWidgets.git] / include / wx / dataview.h
index 2e324dc752b9385843c26c83dd8641cb44c5c647..cf597a881befd89994a6e7716b1e01179bed8f35 100644 (file)
@@ -126,6 +126,10 @@ public:
     virtual bool ValueChanged( const wxDataViewItem &item, unsigned int col ) = 0;
     virtual bool Cleared() = 0;
 
     virtual bool ValueChanged( const wxDataViewItem &item, unsigned int col ) = 0;
     virtual bool Cleared() = 0;
 
+    // some platforms, such as GTK+, may need a two step procedure for ::Reset()
+    virtual bool BeforeReset() { return true; }
+    virtual bool AfterReset() { return Cleared(); }
+
     virtual void Resort() = 0;
 
     void SetOwner( wxDataViewModel *owner ) { m_owner = owner; }
     virtual void Resort() = 0;
 
     void SetOwner( wxDataViewModel *owner ) { m_owner = owner; }
@@ -245,7 +249,12 @@ public:
     bool ValueChanged( const wxDataViewItem &item, unsigned int col );
     bool Cleared();
 
     bool ValueChanged( const wxDataViewItem &item, unsigned int col );
     bool Cleared();
 
-    // delegatd action
+    // some platforms, such as GTK+, may need a two step procedure for ::Reset()
+    bool BeforeReset();
+    bool AfterReset();
+
+
+    // delegated action
     virtual void Resort();
 
     void AddNotifier( wxDataViewModelNotifier *notifier );
     virtual void Resort();
 
     void AddNotifier( wxDataViewModelNotifier *notifier );
@@ -296,6 +305,8 @@ public:
     // helper methods provided by list models only
     virtual unsigned GetRow( const wxDataViewItem &item ) const = 0;
 
     // helper methods provided by list models only
     virtual unsigned GetRow( const wxDataViewItem &item ) const = 0;
 
+    // returns the number of rows
+    virtual unsigned int GetCount() const = 0;
 
     // implement some base class pure virtual directly
     virtual wxDataViewItem
 
     // implement some base class pure virtual directly
     virtual wxDataViewItem
@@ -330,6 +341,7 @@ public:
         return GetAttrByRow( GetRow(item), col, attr );
     }
 
         return GetAttrByRow( GetRow(item), col, attr );
     }
 
+
     virtual bool IsListModel() const { return true; }
 };
 
     virtual bool IsListModel() const { return true; }
 };
 
@@ -1139,7 +1151,7 @@ public:
 
     wxDataViewItem GetNthChild( const wxDataViewItem& parent, unsigned int pos ) const;
     int GetChildCount( const wxDataViewItem& parent ) const;
 
     wxDataViewItem GetNthChild( const wxDataViewItem& parent, unsigned int pos ) const;
     int GetChildCount( const wxDataViewItem& parent ) const;
-    
+
     void SetItemText( const wxDataViewItem& item, const wxString &text );
     wxString GetItemText( const wxDataViewItem& item ) const;
     void SetItemIcon( const wxDataViewItem& item, const wxIcon &icon );
     void SetItemText( const wxDataViewItem& item, const wxString &text );
     wxString GetItemText( const wxDataViewItem& item ) const;
     void SetItemIcon( const wxDataViewItem& item, const wxIcon &icon );