]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/generic/treectlg.h
Applied patch [ 619705 ] Fixes wxApp::GetComCtl32Version
[wxWidgets.git] / include / wx / generic / treectlg.h
index b5e4c2f5498dfa2c7ec0d5006f3f98fe02123db3..72da30c0f2d858f89a9fbd3e771089809c87d091 100644 (file)
@@ -6,7 +6,7 @@
 // Created:     01/02/97
 // RCS-ID:      $Id$
 // Copyright:   (c) 1997,1998 Robert Roebling
-// Licence:     wxWindows license
+// Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 #ifndef _GENERIC_TREECTRL_H_
@@ -33,6 +33,7 @@ class WXDLLEXPORT wxTreeItemData;
 class WXDLLEXPORT wxTreeRenameTimer;
 class WXDLLEXPORT wxTreeFindTimer;
 class WXDLLEXPORT wxTreeTextCtrl;
+class WXDLLEXPORT wxTextCtrl;
 
 // -----------------------------------------------------------------------------
 // wxGenericTreeCtrl - the tree control
@@ -117,6 +118,15 @@ public:
         // get the data associated with the item
     wxTreeItemData *GetItemData(const wxTreeItemId& item) const;
 
+        // get the item's text colour
+    wxColour GetItemTextColour(const wxTreeItemId& item) const;
+
+        // get the item's background colour
+    wxColour GetItemBackgroundColour(const wxTreeItemId& item) const;
+
+        // get the item's font
+    wxFont GetItemFont(const wxTreeItemId& item) const;
+
     // modifiers
     // ---------
 
@@ -192,7 +202,16 @@ public:
     size_t GetSelections(wxArrayTreeItemIds&) const;
 
         // get the parent of this item (may return NULL if root)
-    wxTreeItemId GetParent(const wxTreeItemId& item) const;
+    wxTreeItemId GetItemParent(const wxTreeItemId& item) const;
+
+#if WXWIN_COMPATIBILITY_2_2
+        // deprecated:  Use GetItemParent instead.
+    wxTreeItemId GetParent(const wxTreeItemId& item) const
+        { return GetItemParent( item ); }
+
+        // Expose the base class method hidden by the one above.
+    wxWindow *GetParent() const { return wxScrolledWindow::GetParent(); }
+#endif  // WXWIN_COMPATIBILITY_2_2
 
         // for this enumeration function you must pass in a "cookie" parameter
         // which is opaque for the application but is necessary for the library
@@ -306,6 +325,10 @@ public:
         // been before.
     void EditLabel( const wxTreeItemId& item ) { Edit( item ); }
     void Edit( const wxTreeItemId& item );
+        // returns a pointer to the text edit control if the item is being
+        // edited, NULL otherwise (it's assumed that no more than one item may
+        // be edited simultaneously)
+    wxTextCtrl* GetEditControl() const;
 
     // sorting
         // this function is called to compare 2 items and should return -1, 0
@@ -353,7 +376,9 @@ protected:
 
     wxGenericTreeItem   *m_anchor;
     wxGenericTreeItem   *m_current,
-                        *m_key_current;
+                        *m_key_current,
+                        // A hint to select a parent item after deleting a child
+                        *m_select_me;
     unsigned short       m_indent;
     unsigned short       m_spacing;
     int                  m_lineHeight;
@@ -376,6 +401,7 @@ protected:
     wxGenericTreeItem   *m_dropTarget;
     wxCursor             m_oldCursor;  // cursor is changed while dragging
     wxGenericTreeItem   *m_oldSelection;
+    wxTreeTextCtrl      *m_textCtrl;
 
     wxTimer             *m_renameTimer;
 
@@ -402,6 +428,9 @@ protected:
                               int image, int selectedImage,
                               wxTreeItemData *data);
 
+    // called by wxTextTreeCtrl when it marks itself for deletion
+    void ResetTextControl();
+
     // find the first item starting with the given prefix after the given item
     wxTreeItemId FindItem(const wxTreeItemId& id, const wxString& prefix) const;
 
@@ -429,6 +458,7 @@ protected:
 
     void OnRenameTimer();
     bool OnRenameAccept(wxGenericTreeItem *item, const wxString& value);
+    void OnRenameCancelled(wxGenericTreeItem *item);
 
     void FillArray(wxGenericTreeItem*, wxArrayTreeItemIds&) const;
     void SelectItemRange( wxGenericTreeItem *item1, wxGenericTreeItem *item2 );
@@ -439,6 +469,7 @@ protected:
 private:
     DECLARE_EVENT_TABLE()
     DECLARE_DYNAMIC_CLASS(wxGenericTreeCtrl)
+    DECLARE_NO_COPY_CLASS(wxGenericTreeCtrl)
 };
 
 #if !defined(__WXMSW__) || defined(__WIN16__) || defined(__WXUNIVERSAL__)