]> git.saurik.com Git - wxWidgets.git/blobdiff - samples/dataview/dataview.cpp
fixing infinite recursion for rotated text, introduced in cleanup r57915
[wxWidgets.git] / samples / dataview / dataview.cpp
index fe45436b30758ce0cfaef3d1b65efe4a5e9e5cb3..dc7fbb846d0bc7dd642c7de543ecc9c358cfb5f1 100644 (file)
@@ -530,7 +530,7 @@ public:
         return m_array.GetCount();
     }
 
-    virtual void GetValue( wxVariant &variant,
+    virtual void GetValueByRow( wxVariant &variant,
                            unsigned int row, unsigned int col ) const
     {
         if (col==0)
@@ -560,7 +560,7 @@ public:
         }
     }
 
-    virtual bool GetAttr( unsigned int row, unsigned int col, wxDataViewItemAttr &attr )
+    virtual bool GetAttrByRow( unsigned int row, unsigned int col, wxDataViewItemAttr &attr )
     {
         if (col != 2)
             return false;
@@ -574,7 +574,7 @@ public:
         return true;
     }
 
-    virtual bool SetValue( const wxVariant &variant,
+    virtual bool SetValueByRow( const wxVariant &variant,
                            unsigned int row, unsigned int col )
     {
         if (col == 0)
@@ -921,24 +921,26 @@ MyFrame::MyFrame(wxFrame *frame, const wxString &title, int x, int y, int w, int
 
     bottom_sizer->Add( m_log, 1, wxGROW );
 
-#if 1
-    // wxDataViewTreeStore
-
-    wxDataViewCtrl *treectrl = new wxDataViewCtrl( panel, -1,
-        wxDefaultPosition, wxSize(100,200), wxDV_NO_HEADER );
-
-    wxDataViewTreeStore *store = new wxDataViewTreeStore;
-    wxDataViewItem parent = store->AppendContainer( wxDataViewItem(0),wxT("Root 1"), wxIcon(small1_xpm) );
-    wxDataViewItem child = store->AppendItem( parent,wxT("Child 1"), wxIcon(small1_xpm) );
-    child = store->AppendItem( parent,wxT("Child 2"), wxIcon(small1_xpm) );
-    child = store->AppendItem( parent,wxT("Child 3, very long, long, long, long"), wxIcon(small1_xpm) );
-    treectrl->AssociateModel( store );
-    store->DecRef();
-
-    treectrl->AppendIconTextColumn( wxT("no label"), 0, wxDATAVIEW_CELL_INERT, -1, (wxAlignment) 0,
-        wxDATAVIEW_COL_RESIZABLE );
-
-    bottom_sizer->Add( treectrl, 1 );
+    // wxDataViewListCtrl
+    
+    wxDataViewListCtrl *listctrl = new wxDataViewListCtrl( panel, -1,
+        wxDefaultPosition, wxSize(100,200) );
+        
+    listctrl->AppendToggleCol( wxT("Toggle") );
+    listctrl->AppendTextCol( wxT("Text") );
+    
+    wxVector<wxVariant> data;
+    data.push_back( true );
+    data.push_back( "row 1" );
+    listctrl->AppendItem( data );
+    
+    data.clear();
+    data.push_back( false );
+    data.push_back( "row 3" );
+    listctrl->AppendItem( data );
+    
+    bottom_sizer->Add( listctrl, 1 );
+    
 
     // wxDataViewTreeCtrl
 
@@ -948,13 +950,12 @@ MyFrame::MyFrame(wxFrame *frame, const wxString &title, int x, int y, int w, int
     ilist->Add( wxIcon(small1_xpm) );
     treectrl2->SetImageList( ilist );
 
-    parent = treectrl2->AppendContainer( wxDataViewItem(0),wxT("Root 1"), 0 );
-    child = treectrl2->AppendItem( parent,wxT("Child 1"), 0 );
-    child = treectrl2->AppendItem( parent,wxT("Child 2"), 0 );
-    child = treectrl2->AppendItem( parent,wxT("Child 3, very long, long, long, long"), 0 );
+    wxDataViewItem parent2 = treectrl2->AppendContainer( wxDataViewItem(0),wxT("Root 1"), 0 );
+    wxDataViewItem child2 = treectrl2->AppendItem( parent2, wxT("Child 1"), 0 );
+    child2 = treectrl2->AppendItem( parent2, wxT("Child 2"), 0 );
+    child2 = treectrl2->AppendItem( parent2, wxT("Child 3, very long, long, long, long"), 0 );
 
     bottom_sizer->Add( treectrl2, 1 );
-#endif
 
     // main sizer