]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/generic/treectlg.h
workaround for bug in CW MSL
[wxWidgets.git] / include / wx / generic / treectlg.h
index e4e7ecbcebfcc7e7b73132587c8eb090d1e82bc1..f82e154ac7bf2bafd85cf2509abf28a651c79591 100644 (file)
@@ -301,9 +301,18 @@ public:
 
         // remove the selection from currently selected item (if any)
     void Unselect();
+        // or from the given one (multiselect mode only)
+    void UnselectItem(const wxTreeItemId& item) { SelectItem(item, false); }
+        // or from all
     void UnselectAll();
         // select this item
-    void SelectItem(const wxTreeItemId& item, bool unselect_others=TRUE, bool extended_select=FALSE);
+    void SelectItem(const wxTreeItemId& item, bool select = true);
+        // toggle the item selection
+    void ToggleItemSelection(const wxTreeItemId& item)
+    {
+        SelectItem(item, !IsSelected(item));
+    }
+
         // make sure this item is visible (expanding the parent item and/or
         // scrolling to this item if necessary)
     void EnsureVisible(const wxTreeItemId& item);
@@ -361,6 +370,7 @@ public:
                               long& cookie) const;
 #endif // WXWIN_COMPATIBILITY_2_4
 
+    virtual bool ShouldInheritColours() const { return false; }
 
     // implementation only from now on
 
@@ -374,6 +384,7 @@ public:
     void OnKillFocus( wxFocusEvent &event );
     void OnChar( wxKeyEvent &event );
     void OnMouse( wxMouseEvent &event );
+    void OnGetToolTip( wxTreeEvent &event );
     void OnInternalIdle( );
 
     // implementation helpers
@@ -413,6 +424,7 @@ protected:
     wxGenericTreeItem   *m_dropTarget;
     wxCursor             m_oldCursor;  // cursor is changed while dragging
     wxGenericTreeItem   *m_oldSelection;
+    wxGenericTreeItem   *m_underMouse; // for visual effects
     wxTreeTextCtrl      *m_textCtrl;
 
     wxTimer             *m_renameTimer;
@@ -431,6 +443,10 @@ protected:
     void DrawLine(const wxTreeItemId& item, bool below);
     void DrawDropEffect(wxGenericTreeItem *item);
 
+    void DoSelectItem(const wxTreeItemId& id,
+                      bool unselect_others = TRUE,
+                      bool extended_select = FALSE);
+
     wxTreeItemId DoInsertItem(const wxTreeItemId& parent,
                               size_t previous,
                               const wxString& text,