]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/treectrl.h
added wxWindow::HasFocus() for more convenient way of determining if a (possibly...
[wxWidgets.git] / include / wx / treectrl.h
index 873d77905921d09cfdcbbb2dd2720d22f9d0bb2a..a8693594b32175edd2e366bad2103c7ecc857031 100644 (file)
@@ -24,7 +24,7 @@
 #include "wx/treebase.h"
 #include "wx/textctrl.h" // wxTextCtrl::ms_classinfo used through CLASSINFO macro
 
-class WXDLLEXPORT wxImageList;
+class WXDLLIMPEXP_FWD_CORE wxImageList;
 
 // ----------------------------------------------------------------------------
 // wxTreeCtrlBase
@@ -123,7 +123,7 @@ public:
 
         // set items label
     virtual void SetItemText(const wxTreeItemId& item, const wxString& text) = 0;
-        // get one of the images associated with the item (normal by default)
+        // set one of the images associated with the item (normal by default)
     virtual void SetItemImage(const wxTreeItemId& item,
                               int image,
                               wxTreeItemIcon which = wxTreeItemIcon_Normal) = 0;
@@ -172,6 +172,9 @@ public:
     virtual bool IsSelected(const wxTreeItemId& item) const = 0;
         // is item text in bold font?
     virtual bool IsBold(const wxTreeItemId& item) const = 0;
+        // is the control empty?
+    bool IsEmpty() const;
+
 
     // number of children
     // ------------------
@@ -287,8 +290,16 @@ public:
 
         // expand this item
     virtual void Expand(const wxTreeItemId& item) = 0;
+        // expand the item and all its children recursively
+    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 all its children
+    void CollapseAllChildren(const wxTreeItemId& item);
+        // collapse all items
+    void CollapseAll();
         // collapse the item and remove all children
     virtual void CollapseAndReset(const wxTreeItemId& item) = 0;
         // toggles the current state
@@ -353,9 +364,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)
@@ -398,7 +409,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