X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/edb8f2985fc838f92c60d9efd42462441f3caea9..ef094fa075bc56bcbc33b12159c395ea28afda3b:/include/wx/generic/treectlg.h diff --git a/include/wx/generic/treectlg.h b/include/wx/generic/treectlg.h index 87351c4865..72da30c0f2 100644 --- a/include/wx/generic/treectlg.h +++ b/include/wx/generic/treectlg.h @@ -6,13 +6,13 @@ // Created: 01/02/97 // RCS-ID: $Id$ // Copyright: (c) 1997,1998 Robert Roebling -// Licence: wxWindows license +// Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// #ifndef _GENERIC_TREECTRL_H_ #define _GENERIC_TREECTRL_H_ -#ifdef __GNUG__ +#if defined(__GNUG__) && !defined(__APPLE__) #pragma interface "treectlg.h" #endif @@ -20,12 +20,12 @@ #include "wx/scrolwin.h" #include "wx/pen.h" +#include "wx/imaglist.h" // ----------------------------------------------------------------------------- // forward declaration // ----------------------------------------------------------------------------- -class WXDLLEXPORT wxImageList; class WXDLLEXPORT wxGenericTreeItem; class WXDLLEXPORT wxTreeItemData; @@ -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__)