]> git.saurik.com Git - wxWidgets.git/blobdiff - samples/newgrid/griddemo.h
grid autosize fixes/changes
[wxWidgets.git] / samples / newgrid / griddemo.h
index dc227bfd478bb5c4d681de51c43ff49bb67c77c1..2bc68c20823fe3345221129ac0d0dd99c17e6619 100644 (file)
@@ -37,6 +37,9 @@ class GridFrame : public wxFrame
     void ToggleRowLabels( wxCommandEvent& );
     void ToggleColLabels( wxCommandEvent& );
     void ToggleEditing( wxCommandEvent& );
+    void ToggleRowSizing( wxCommandEvent& );
+    void ToggleColSizing( wxCommandEvent& );
+    void ToggleGridSizing( wxCommandEvent& );
     void SetLabelColour( wxCommandEvent& );
     void SetLabelTextColour( wxCommandEvent& );
     void SetRowLabelHorizAlignment( wxCommandEvent& );
@@ -72,12 +75,16 @@ public:
     void OnQuit( wxCommandEvent& );
     void About( wxCommandEvent& );
     void OnVTable( wxCommandEvent& );
+    void OnBugsTable( wxCommandEvent& );
 
     enum
     {
         ID_TOGGLEROWLABELS = 100,
         ID_TOGGLECOLLABELS,
         ID_TOGGLEEDIT,
+        ID_TOGGLEROWSIZING,
+        ID_TOGGLECOLSIZING,
+        ID_TOGGLEGRIDSIZING,
         ID_SETLABELCOLOUR,
         ID_SETLABELTEXTCOLOUR,
         ID_ROWLABELALIGN,
@@ -96,10 +103,13 @@ public:
         ID_SET_CELL_BG_COLOUR,
         ID_ABOUT,
         ID_VTABLE,
+        ID_BUGS_TABLE,
 
         ID_TESTFUNC
     };
 
+    wxLog *m_logOld;
+
     DECLARE_EVENT_TABLE()
 };
 
@@ -126,7 +136,6 @@ public:
 
     long GetNumberRows() { return m_sizeGrid; }
     long GetNumberCols() { return m_sizeGrid; }
-
     wxString GetValue( int row, int col )
     {
         return wxString::Format("(%d, %d)", row, col);
@@ -149,6 +158,39 @@ private:
     BigGridTable* m_table;
 };
 
+// ----------------------------------------------------------------------------
+// another, more realistic, grid example: shows typed columns and more
+// ----------------------------------------------------------------------------
+
+class BugsGridTable : public wxGridTableBase
+{
+public:
+    BugsGridTable();
+
+    virtual long GetNumberRows();
+    virtual long GetNumberCols();
+    virtual bool IsEmptyCell( int row, int col );
+    virtual wxString GetValue( int row, int col );
+    virtual void SetValue( int row, int col, const wxString& value );
+
+    virtual wxString GetColLabelValue( int col );
+
+    virtual wxString GetTypeName( int row, int col );
+    virtual bool CanGetValueAs( int row, int col, const wxString& typeName );
+    virtual bool CanSetValueAs( int row, int col, const wxString& typeName );
+
+    virtual long GetValueAsLong( int row, int col );
+    virtual bool GetValueAsBool( int row, int col );
+
+    virtual void SetValueAsLong( int row, int col, long value );
+    virtual void SetValueAsBool( int row, int col, bool value );
+};
+
+class BugsGridFrame : public wxFrame
+{
+public:
+    BugsGridFrame();
+};
 
 #endif // griddemo_h