]> git.saurik.com Git - wxWidgets.git/blobdiff - samples/dataview/dataview.cpp
use wxString in wxFileSystem::FindFileInPath()
[wxWidgets.git] / samples / dataview / dataview.cpp
index 788508256b35f5ccf2bf6f5279c9005678bac00c..0d488672aac9e8110592c27d62bd9cedd422c09c 100644 (file)
@@ -118,7 +118,7 @@ public:
                 variant = tmp;
             }
         }
-    virtual bool SetValue( wxVariant &value, unsigned int col, unsigned int row )
+    virtual bool SetValue( const wxVariant &value, unsigned int col, unsigned int row )
         {
             if (col == 6)
             {
@@ -134,6 +134,12 @@ public:
             }
             return true;
         }
+        
+    virtual void GetAttr( wxListItemAttr &attr, unsigned int col, unsigned int row )
+        {
+            if (row == 4)
+                attr.SetBackgroundColour( *wxGREEN );
+        }
 
     wxArrayString m_list;
     wxArrayInt    m_bools;
@@ -343,7 +349,7 @@ public:
         variant = tmp;
     }
 
-    virtual bool SetValue( wxVariant &variant, unsigned int col, unsigned int row )
+    virtual bool SetValue( const wxVariant &variant, unsigned int col, unsigned int row )
     {
         if (col == 0)
         {
@@ -682,10 +688,12 @@ void MyFrame::CreateDataViewControls()
         style |= wxDV_MULTIPLE;
     if (GetMenuBar()->FindItem(ID_NO_HEADER_MODE)->IsChecked())
         style |= wxDV_NO_HEADER;
+#if 0
     if (GetMenuBar()->FindItem(ID_HORIZ_RULES_MODE)->IsChecked())
         style |= wxDV_HORIZ_RULES;
     if (GetMenuBar()->FindItem(ID_VERT_RULES_MODE)->IsChecked())
         style |= wxDV_VERT_RULES;
+#endif
 
 
     // Left wxDataViewCtrl
@@ -693,6 +701,9 @@ void MyFrame::CreateDataViewControls()
                                         wxDefaultSize, style );
 
 
+    wxDataViewTextRenderer *text_renderer;
+    wxDataViewColumn *column;
+    
     wxObjectDataPtr<MyTextModel> model(new MyTextModel);
     dataview_left->AssociateModel( model.get() );
 
@@ -701,10 +712,8 @@ void MyFrame::CreateDataViewControls()
     dataview_left->AppendTextColumn( wxT("Second"), 1, wxDATAVIEW_CELL_INERT, -1,
                                      DEFAULT_ALIGN );
 
-    wxDataViewTextRenderer *text_renderer = 
-        new wxDataViewTextRenderer( wxT("string"), wxDATAVIEW_CELL_EDITABLE );
-    wxDataViewColumn *column = new wxDataViewColumn( wxT("editable"), text_renderer, 2,
-                                                     -1, DEFAULT_ALIGN );
+    text_renderer = new wxDataViewTextRenderer( wxT("string"), wxDATAVIEW_CELL_EDITABLE );
+    column = new wxDataViewColumn( wxT("editable"), text_renderer, 2, -1, DEFAULT_ALIGN );
     dataview_left->AppendColumn( column );
 
     dataview_left->AppendToggleColumn( wxT("fourth"), 3, wxDATAVIEW_CELL_INERT, -1, 
@@ -719,7 +728,6 @@ void MyFrame::CreateDataViewControls()
 
     dataview_left->AppendDateColumn( wxT("date"), 6, wxDATAVIEW_CELL_INERT, -1, DEFAULT_ALIGN );
 
-
     // Right wxDataViewCtrl using the same model
     dataview_right = new wxDataViewCtrl( m_panelRight, wxID_ANY );
     dataview_right->AssociateModel( model.get() );
@@ -1003,7 +1011,7 @@ MySortingFrame::MySortingFrame(wxFrame *frame, wxChar *title, int x, int y, int
     dataview_left = new wxDataViewCtrl( main, ID_UNSORTED, wxDefaultPosition, 
                                         wxDefaultSize, wxDV_MULTIPLE );
 
-    m_unsorted_model.reset(new MyUnsortedTextModel);
+    m_unsorted_model = new MyUnsortedTextModel;
     dataview_left->AssociateModel( m_unsorted_model.get() );
 
     wxDataViewTextRenderer *text_renderer = 
@@ -1019,7 +1027,7 @@ MySortingFrame::MySortingFrame(wxFrame *frame, wxChar *title, int x, int y, int
     // Right wxDataViewCtrl using the sorting model
     dataview_right = new wxDataViewCtrl( main, ID_SORTED );
     
-    m_sorted_model.reset(new wxDataViewSortedListModel( m_unsorted_model.get() ));
+    m_sorted_model = new wxDataViewSortedListModel( m_unsorted_model.get() );
     dataview_right->AssociateModel( m_sorted_model.get() );
 
     text_renderer = new wxDataViewTextRenderer( wxT("string"), wxDATAVIEW_CELL_EDITABLE );