]> git.saurik.com Git - wxWidgets.git/blobdiff - interface/wx/grid.h
no changes, just reformat, remove extraneous semicolons and inline keywords
[wxWidgets.git] / interface / wx / grid.h
index 0ed7fb3ef4a619dbdfa39034ae9a6525ac2b91b2..c10743259d3294a34fc05ab84a230b80ebe93cbe 100644 (file)
@@ -298,8 +298,6 @@ public:
         arbitrary locations. In such case you may implement this method only
         and leave InsertRows() unimplemented.
 
-        @param pos
-            The position of the first new row.
         @param numRows
             The number of rows to add.
      */
@@ -388,16 +386,7 @@ public:
         neither associated with this table by SetAttrProvider() nor created on
         demand by any other methods.
      */
-    wxGridCellAttrProvider *GetAttrProvider() const { return m_attrProvider; }
-
-    /**
-        Returns true if this table supports attributes or false otherwise.
-
-        By default, the table automatically creates a wxGridCellAttrProvider
-        when this function is called if it had no attribute provider before and
-        returns @true.
-     */
-    virtual bool CanHaveAttributes();
+    wxGridCellAttrProvider *GetAttrProvider() const;
 
     /**
         Return the attribute for the given cell.
@@ -440,6 +429,15 @@ public:
     virtual void SetColAttr(wxGridCellAttr *attr, int col);
 
     //@}
+
+    /**
+        Returns true if this table supports attributes or false otherwise.
+
+        By default, the table automatically creates a wxGridCellAttrProvider
+        when this function is called if it had no attribute provider before and
+        returns @true.
+     */
+    virtual bool CanHaveAttributes();
 };
 
 
@@ -467,11 +465,6 @@ public:
     */
     wxGridCellEditor();
 
-    /**
-        The dtor is private because only DecRef() can delete us.
-    */
-    virtual ~wxGridCellEditor();
-
     /**
         Fetch the value from the table and prepare the edit control
         to begin editing. Set the focus to the edit control.
@@ -486,8 +479,8 @@ public:
     /**
         Creates the actual edit control.
     */
-    void Create(wxWindow* parent, wxWindowID id,
-                wxEvtHandler* evtHandler);
+    virtual void Create(wxWindow* parent, wxWindowID id,
+                        wxEvtHandler* evtHandler) = 0;
 
     /**
         Final cleanup.
@@ -515,8 +508,7 @@ public:
         Draws the part of the cell not occupied by the control: the base class
         version just fills it with background colour from the attribute.
     */
-    void PaintBackground(const wxRect& rectCell,
-                         wxGridCellAttr* attr);
+    virtual void PaintBackground(const wxRect& rectCell, wxGridCellAttr* attr);
 
     /**
         Reset the value in the control back to its starting value.
@@ -546,6 +538,13 @@ public:
         that first key if desired.
     */
     virtual void StartingKey(wxKeyEvent& event);
+
+protected:
+
+    /**
+        The dtor is private because only DecRef() can delete us.
+    */
+    virtual ~wxGridCellEditor();
 };
 
 
@@ -627,6 +626,12 @@ public:
     wxGridCellChoiceEditor(size_t count = 0,
                            const wxString choices[] = NULL,
                            bool allowOthers = false);
+    /**
+        @param choices
+            An array of strings from which the user can choose.
+        @param allowOthers
+            If allowOthers is @true, the user can type a string not in choices array.
+    */
     wxGridCellChoiceEditor(const wxArrayString& choices,
                            bool allowOthers = false);
     //@}
@@ -817,8 +822,8 @@ public:
     /**
         Get the preferred size of the cell for its contents.
     */
-    wxSize GetBestSize(wxGrid& grid, wxGridCellAttr& attr, wxDC& dc,
-                       int row, int col);
+    virtual wxSize GetBestSize(wxGrid& grid, wxGridCellAttr& attr, wxDC& dc,
+                               int row, int col) = 0;
 };
 
 
@@ -843,10 +848,13 @@ public:
     */
     wxGridCellNumberEditor(int min = -1, int max = -1);
 
+
     /**
-        String representation of the value.
+        Parameters string format is "min,max".
     */
-    wxString GetString() const;
+    virtual void SetParameters(const wxString& params);
+
+protected:
 
     /**
         If the return value is @true, the editor uses a wxSpinCtrl to get user input,
@@ -855,9 +863,9 @@ public:
     bool HasRange() const;
 
     /**
-        Parameters string format is "min,max".
+        String representation of the value.
     */
-    virtual void SetParameters(const wxString& params);
+    wxString GetString() const;
 };
 
 
@@ -985,27 +993,27 @@ public:
     /**
 
     */
-    const wxColour GetBackgroundColour() const;
+    const wxColour& GetBackgroundColour() const;
 
     /**
 
     */
-    wxGridCellEditor* GetEditor(wxGrid* grid, int row, int col) const;
+    wxGridCellEditor* GetEditor(const wxGrid* grid, int row, int col) const;
 
     /**
 
     */
-    const wxFont GetFont() const;
+    const wxFont& GetFont() const;
 
     /**
 
     */
-    wxGridCellRenderer* GetRenderer(wxGrid* grid, int row, int col) const;
+    wxGridCellRenderer* GetRenderer(const wxGrid* grid, int row, int col) const;
 
     /**
 
     */
-    const wxColour GetTextColour() const;
+    const wxColour& GetTextColour() const;
 
     /**
 
@@ -1489,15 +1497,6 @@ public:
     */
     bool CanEnableCellControl() const;
 
-    /**
-        Returns @true if this grid has support for cell attributes.
-
-        The grid supports attributes if it has the associated table which, in
-        turn, has attributes support, i.e. wxGridTableBase::CanHaveAttributes()
-        returns @true.
-    */
-    bool CanHaveAttributes() const;
-
     //@{
     /**
         Return the rectangle corresponding to the grid cell's size and position
@@ -1685,7 +1684,7 @@ public:
     /**
         Overridden wxWindow method.
     */
-    void Fit();
+    virtual void Fit();
 
     /**
         Causes immediate repainting of the grid.
@@ -1721,7 +1720,7 @@ public:
     /**
         Returns a pointer to the editor for the cell at the specified location.
 
-        See wxGridCellEditor and the @ref overview_grid "wxGrid overview" 
+        See wxGridCellEditor and the @ref overview_grid "wxGrid overview"
         for more information about cell editors and renderers.
 
         The caller must call DecRef() on the returned pointer.
@@ -1808,11 +1807,6 @@ public:
     */
     wxString GetColLabelValue(int col) const;
 
-    /**
-        Returns the coordinate of the left border specified column.
-    */
-    int GetColLeft(int col) const;
-
     /**
         Returns the minimal width to which a column may be resized.
 
@@ -1821,25 +1815,11 @@ public:
     */
     int GetColMinimalAcceptableWidth() const;
 
-    /**
-        Get the minimal width of the given column/row.
-
-        The value returned by this function may be different than that returned
-        by GetColMinimalAcceptableWidth() if SetColMinimalWidth() had been
-        called for this column.
-    */
-    int GetColMinimalWidth(int col) const;
-
     /**
         Returns the position of the specified column.
     */
     int GetColPos(int colID) const;
 
-    /**
-        Returns the coordinate of the right border specified column.
-    */
-    int GetColRight(int col) const;
-
     /**
         Returns the width of the specified column.
     */
@@ -2087,15 +2067,6 @@ public:
     */
     int GetRowMinimalAcceptableHeight() const;
 
-    /**
-        Returns the minimal size for the given column.
-
-        The value returned by this function may be different than that returned
-        by GetRowMinimalAcceptableHeight() if SetRowMinimalHeight() had been
-        called for this row.
-    */
-    int GetRowMinimalHeight(int col) const;
-
     /**
         Returns the height of the specified row.
     */
@@ -2339,8 +2310,8 @@ public:
         @true even if the cell is only partially visible.
     */
     bool IsVisible(int row, int col, bool wholeCellVisible = true) const;
-    const bool IsVisible(const wxGridCellCoords& coords,
-                         bool wholeCellVisible = true) const;
+    bool IsVisible(const wxGridCellCoords& coords,
+                   bool wholeCellVisible = true) const;
     //@}
 
     //@{
@@ -2764,7 +2735,7 @@ public:
 
         The grid will take ownership of the pointer.
 
-        See wxGridCellRenderer and the @ref overview_grid "wxGrid overview" 
+        See wxGridCellRenderer and the @ref overview_grid "wxGrid overview"
         for more information about cell editors and renderers.
     */
     void SetDefaultRenderer(wxGridCellRenderer* renderer);
@@ -3014,7 +2985,45 @@ public:
 
         Returns @c wxNOT_FOUND if there is no row at the y position.
     */
-    int YToRow(int y) const;
+    int YToRow(int y, bool clipToMinMax = false) const;
+
+protected:
+    /**
+        Returns @true if this grid has support for cell attributes.
+
+        The grid supports attributes if it has the associated table which, in
+        turn, has attributes support, i.e. wxGridTableBase::CanHaveAttributes()
+        returns @true.
+    */
+    bool CanHaveAttributes() const;
+
+    /**
+        Get the minimal width of the given column/row.
+
+        The value returned by this function may be different than that returned
+        by GetColMinimalAcceptableWidth() if SetColMinimalWidth() had been
+        called for this column.
+    */
+    int GetColMinimalWidth(int col) const;
+
+    /**
+        Returns the coordinate of the right border specified column.
+    */
+    int GetColRight(int col) const;
+
+    /**
+        Returns the coordinate of the left border specified column.
+    */
+    int GetColLeft(int col) const;
+
+    /**
+        Returns the minimal size for the given column.
+
+        The value returned by this function may be different than that returned
+        by GetRowMinimalAcceptableHeight() if SetRowMinimalHeight() had been
+        called for this row.
+    */
+    int GetRowMinimalHeight(int col) const;
 };