-
- // add the root node to the tree
- wxTreeItemId AddRoot(const wxString& text,
- int image = -1, int selectedImage = -1,
- wxTreeItemData *data = NULL);
-
- // insert a new item in as the first child of the parent
- wxTreeItemId PrependItem(const wxTreeItemId& parent,
- const wxString& text,
- int image = -1, int selectedImage = -1,
- wxTreeItemData *data = NULL);
-
- // insert a new item after a given one
- wxTreeItemId InsertItem(const wxTreeItemId& parent,
- const wxTreeItemId& idPrevious,
- const wxString& text,
- int image = -1, int selectedImage = -1,
- wxTreeItemData *data = NULL);
-
- // insert a new item in as the last child of the parent
- wxTreeItemId AppendItem(const wxTreeItemId& parent,
- const wxString& text,
- int image = -1, int selectedImage = -1,
- wxTreeItemData *data = NULL);
-
- // delete this item and associated data if any
- void Delete(const wxTreeItemId& item);
- // delete all children (but don't delete the item itself)
- // NB: this won't send wxEVT_COMMAND_TREE_ITEM_DELETED events
- void DeleteChildren(const wxTreeItemId& item);
- // delete all items from the tree
- // NB: this won't send wxEVT_COMMAND_TREE_ITEM_DELETED events
- void DeleteAllItems();
-
- // expand this item
- void Expand(const wxTreeItemId& item);
- // collapse the item without removing its children
- void Collapse(const wxTreeItemId& item);
- // collapse the item and remove all children
- void CollapseAndReset(const wxTreeItemId& item);
- // toggles the current state
- void Toggle(const wxTreeItemId& item);
-
- // remove the selection from currently selected item (if any)
- void Unselect();
- // unselect all items (only makes sense for multiple selection control)
- void UnselectAll();
- // select this item
- void SelectItem(const wxTreeItemId& item);
- // make sure this item is visible (expanding the parent item and/or
- // scrolling to this item if necessary)
- void EnsureVisible(const wxTreeItemId& item);
- // scroll to this item (but don't expand its parent)
- void ScrollTo(const wxTreeItemId& item);
-
- // start editing the item label: this (temporarily) replaces the item
- // with a one line edit control. The item will be selected if it hadn't
- // been before. textCtrlClass parameter allows you to create an edit
- // control of arbitrary user-defined class deriving from wxTextCtrl.
- wxTextCtrl* EditLabel(const wxTreeItemId& item,
- wxClassInfo* textCtrlClass = CLASSINFO(wxTextCtrl));
- // returns the same pointer as StartEdit() if the item is being edited,
- // NULL otherwise (it's assumed that no more than one item may be
- // edited simultaneously)
- wxTextCtrl* GetEditControl() const;
- // end editing and accept or discard the changes to item label
- void EndEditLabel(const wxTreeItemId& item, bool discardChanges = FALSE);
-
- // sorting
- // this function is called to compare 2 items and should return -1, 0
- // or +1 if the first item is less than, equal to or greater than the
- // second one. The base class version performs alphabetic comparaison
- // of item labels (GetText)
- virtual int OnCompareItems(const wxTreeItemId& item1,
- const wxTreeItemId& item2);
- // sort the children of this item using OnCompareItems
- //
- // NB: this function is not reentrant and not MT-safe (FIXME)!
- void SortChildren(const wxTreeItemId& item);
-
- // helpers
+ //
+
+ //
+ // Add the root node to the tree
+ //
+ wxTreeItemId AddRoot( const wxString& rsText
+ ,int nImage = -1
+ ,int nSelectedImage = -1
+ ,wxTreeItemData* pData = NULL
+ );
+
+ //
+ // Insert a new item in as the first child of the parent
+ //
+ wxTreeItemId PrependItem( const wxTreeItemId& rParent
+ ,const wxString& rsText
+ ,int nImage = -1
+ ,int nSelectedImage = -1
+ ,wxTreeItemData* pData = NULL
+ );
+
+ //
+ // Insert a new item after a given one
+ //
+ wxTreeItemId InsertItem( const wxTreeItemId& rParent
+ ,const wxTreeItemId& rIdPrevious
+ ,const wxString& rsText
+ ,int nImage = -1
+ ,int nSelectedImage = -1
+ ,wxTreeItemData* pData = NULL
+ );
+
+ //
+ // Insert a new item before the one with the given index
+ //
+ wxTreeItemId InsertItem( const wxTreeItemId& pParent
+ ,size_t nIndex
+ ,const wxString& rsText
+ ,int nImage = -1
+ ,int nSelectedImage = -1
+ ,wxTreeItemData* pData = NULL
+ );
+
+ //
+ // Insert a new item in as the last child of the parent
+ //
+ wxTreeItemId AppendItem( const wxTreeItemId& rParent
+ ,const wxString& rsText
+ ,int nImage = -1
+ ,int nSelectedImage = -1
+ ,wxTreeItemData* pData = NULL
+ );
+
+ //
+ // Delete this item and associated data if any
+ //
+ void Delete(const wxTreeItemId& rItem);
+
+ //
+ // Delete all children (but don't delete the item itself)
+ //
+ void DeleteChildren(const wxTreeItemId& rItem);
+
+ //
+ // Delete all items from the tree
+ //
+ void DeleteAllItems(void);
+
+ //
+ // Expand this item
+ //
+ void Expand(const wxTreeItemId& rItem);
+
+ //
+ // Collapse the item without removing its children
+ //
+ void Collapse(const wxTreeItemId& rItem);
+
+ //
+ // Collapse the item and remove all children
+ //
+ void CollapseAndReset(const wxTreeItemId& rItem);
+
+ //
+ // Toggles the current state
+ //
+ void Toggle(const wxTreeItemId& rItem);
+
+ //
+ // Remove the selection from currently selected item (if any)
+ //
+ void Unselect(void);
+
+ //
+ // Unselect all items (only makes sense for multiple selection control)
+ //
+ void UnselectAll(void);
+
+ //
+ // Select this item
+ //
+ void SelectItem(const wxTreeItemId& rItem);
+
+ //
+ // Make sure this item is visible (expanding the parent item and/or
+ // scrolling to this item if necessary)
+ //
+ void EnsureVisible(const wxTreeItemId& rItem);
+
+ //
+ // Scroll to this item (but don't expand its parent)
+ //
+ void ScrollTo(const wxTreeItemId& rItem);
+
+ //
+ // OS/2 does not use a separate edit field for editting text. Here for
+ // interface compatibility, only.
+ //
+ wxTextCtrl* EditLabel( const wxTreeItemId& rItem
+ ,wxClassInfo* pTextCtrlClass = CLASSINFO(wxTextCtrl)
+ );
+
+ //
+ // returns NULL for OS/2 in ALL cases
+ //
+ wxTextCtrl* GetEditControl(void) const {return (wxTextCtrl*)NULL;}
+
+ //
+ // End editing and accept or discard the changes to item label
+ //
+ void EndEditLabel( const wxTreeItemId& rItem
+ ,bool bDiscardChanges = false
+ );
+
+ //
+ // Sorting