X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/fe7b9ed6fdffb7dd72c9d7d4a1070e433189954f..ab0d42f76d5594bd28fdcad35bedeb380902f3ea:/include/wx/generic/grid.h diff --git a/include/wx/generic/grid.h b/include/wx/generic/grid.h index 7b929ad6b8..8445e3101a 100644 --- a/include/wx/generic/grid.h +++ b/include/wx/generic/grid.h @@ -31,6 +31,7 @@ #include "wx/combobox.h" #include "wx/dynarray.h" #include "wx/timer.h" +#include "wx/clntdata.h" // ---------------------------------------------------------------------------- // constants @@ -98,7 +99,7 @@ class WXDLLEXPORT wxSpinCtrl; // class is not documented and is not public at all // ---------------------------------------------------------------------------- -class WXDLLEXPORT wxGridCellWorker +class WXDLLEXPORT wxGridCellWorker : public wxClientDataContainer { public: wxGridCellWorker() { m_nRef = 1; } @@ -569,7 +570,7 @@ private: // class may be returned by wxGridTable::GetAttr(). // ---------------------------------------------------------------------------- -class WXDLLEXPORT wxGridCellAttr +class WXDLLEXPORT wxGridCellAttr : public wxClientDataContainer { public: enum wxAttrKind @@ -583,9 +584,10 @@ public: }; // ctors - wxGridCellAttr() + wxGridCellAttr(wxGridCellAttr *attrDefault = NULL) { - Init(); + Init(attrDefault); + // MB: args used to be 0,0 here but wxALIGN_LEFT is 0 SetAlignment(-1, -1); } @@ -664,17 +666,7 @@ private: }; // the common part of all ctors - void Init() - { - m_nRef = 1; - - m_isReadOnly = Unset; - - m_renderer = NULL; - m_editor = NULL; - - m_attrkind = wxGridCellAttr::Cell; - } + void Init(wxGridCellAttr *attrDefault = NULL); // the dtor is private because only DecRef() can delete us ~wxGridCellAttr() @@ -720,7 +712,7 @@ private: // the default implementation is reasonably efficient for the generic case, // but you might still wish to implement your own for some specific situations // if you have performance problems with the stock one -class WXDLLEXPORT wxGridCellAttrProvider +class WXDLLEXPORT wxGridCellAttrProvider : public wxClientDataContainer { public: wxGridCellAttrProvider(); @@ -754,7 +746,7 @@ private: ////////////////////////////////////////////////////////////////////// -class WXDLLEXPORT wxGridTableBase : public wxObject +class WXDLLEXPORT wxGridTableBase : public wxObject, public wxClientDataContainer { public: wxGridTableBase(); @@ -1414,6 +1406,8 @@ public: { m_extraWidth = extraWidth; m_extraHeight = extraHeight; + + CalcDimensions(); } // Accessors for component windows