X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/027d45e8fc3cbb7a1efa91c727bcee6c52c4519c..6b44a3355390abef75580416efa5cd3b02fe2ca7:/include/wx/treectrl.h diff --git a/include/wx/treectrl.h b/include/wx/treectrl.h index c161d0d098..e964012a4f 100644 --- a/include/wx/treectrl.h +++ b/include/wx/treectrl.h @@ -42,6 +42,9 @@ public: // arbitrary default m_spacing = 18; + + // quick DoGetBestSize calculation + m_quickBestSize = true; } virtual ~wxTreeCtrlBase(); @@ -284,6 +287,10 @@ public: // expand this item virtual void Expand(const wxTreeItemId& item) = 0; + // expand the item and all its childs and thats childs + void ExpandAllChildren(const wxTreeItemId& item); + // expand all items + void ExpandAll(); // collapse the item without removing its children virtual void Collapse(const wxTreeItemId& item) = 0; // collapse the item and remove all children @@ -350,9 +357,9 @@ public: // coordinates specified are relative to the client area of tree ctrl) // and, in the second variant, fill the flags parameter with a bitmask // of wxTREE_HITTEST_xxx constants. - wxTreeItemId HitTest(const wxPoint& point) + wxTreeItemId HitTest(const wxPoint& point) const { int dummy; return DoTreeHitTest(point, dummy); } - wxTreeItemId HitTest(const wxPoint& point, int& flags) + wxTreeItemId HitTest(const wxPoint& point, int& flags) const { return DoTreeHitTest(point, flags); } // get the bounding rectangle of the item (or of its label only) @@ -366,6 +373,10 @@ public: virtual bool ShouldInheritColours() const { return false; } + // hint whether to calculate best size quickly or accurately + void SetQuickBestSize(bool q) { m_quickBestSize = q; } + bool GetQuickBestSize() const { return m_quickBestSize; } + protected: virtual wxSize DoGetBestSize() const; @@ -391,7 +402,8 @@ protected: // real HitTest() implementation: again, can't be called just HitTest() // because it's overloaded and so the non-virtual overload would be hidden // (and can't be called DoHitTest() because this is already in wxWindow) - virtual wxTreeItemId DoTreeHitTest(const wxPoint& point, int& flags) = 0; + virtual wxTreeItemId DoTreeHitTest(const wxPoint& point, + int& flags) const = 0; wxImageList *m_imageListNormal, // images for tree elements @@ -402,6 +414,9 @@ protected: // spacing between left border and the text unsigned int m_spacing; + // whether full or quick calculation is done in DoGetBestSize + bool m_quickBestSize; + DECLARE_NO_COPY_CLASS(wxTreeCtrlBase) };