// Created: 01/02/97
// RCS-ID: $Id$
// Copyright: (c) 1997,1998 Robert Roebling
-// Licence: wxWindows license
+// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifndef _GENERIC_TREECTRL_H_
class WXDLLEXPORT wxTreeRenameTimer;
class WXDLLEXPORT wxTreeFindTimer;
class WXDLLEXPORT wxTreeTextCtrl;
+class WXDLLEXPORT wxTextCtrl;
// -----------------------------------------------------------------------------
// wxGenericTreeCtrl - the tree control
// 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
// ---------
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
// 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
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;
wxGenericTreeItem *m_dropTarget;
wxCursor m_oldCursor; // cursor is changed while dragging
wxGenericTreeItem *m_oldSelection;
+ wxTreeTextCtrl *m_textCtrl;
wxTimer *m_renameTimer;
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;
void OnRenameTimer();
bool OnRenameAccept(wxGenericTreeItem *item, const wxString& value);
+ void OnRenameCancelled(wxGenericTreeItem *item);
void FillArray(wxGenericTreeItem*, wxArrayTreeItemIds&) const;
void SelectItemRange( wxGenericTreeItem *item1, wxGenericTreeItem *item2 );
private:
DECLARE_EVENT_TABLE()
DECLARE_DYNAMIC_CLASS(wxGenericTreeCtrl)
+ DECLARE_NO_COPY_CLASS(wxGenericTreeCtrl)
};
#if !defined(__WXMSW__) || defined(__WIN16__) || defined(__WXUNIVERSAL__)