/////////////////////////////////////////////////////////////////////////////
// Name: treectrl.h
-// Purpose: documentation for wxTreeItemData class
+// Purpose: interface of wxTreeItemData
// Author: wxWidgets team
// RCS-ID: $Id$
// Licence: wxWindows license
@library{wxcore}
@category{FIXME}
- @seealso
- wxTreeCtrl
+ @see wxTreeCtrl
*/
class wxTreeItemData : public wxClientData
{
public:
/**
Default constructor.
-
+
In addition, the following methods are added in wxPython for accessing
the object:
-
+
@b GetData()
-
+
Returns a reference to the Python Object
-
+
@b SetData(obj)
-
+
Associates a new Python Object with the
wxTreeItemData
*/
};
+
/**
@class wxTreeCtrl
@wxheader{treectrl.h}
@category{ctrl}
@appearance{treectrl.png}
- @seealso
- wxTreeItemData, @ref overview_wxtreectrloverview "wxTreeCtrl overview",
+ @see wxTreeItemData, @ref overview_wxtreectrloverview "wxTreeCtrl overview",
wxListBox, wxListCtrl, wxImageList, wxTreeEvent
*/
class wxTreeCtrl : public wxControl
//@{
/**
Constructor, creating and showing a tree control.
-
+
@param parent
Parent window. Must not be @NULL.
@param id
Window validator.
@param name
Window name.
-
+
@see Create(), wxValidator
*/
wxTreeCtrl();
/**
Collapses the root item.
-
+
@see ExpandAll()
*/
void CollapseAll();
/**
Collapses this item and all of its children, recursively.
-
+
@see ExpandAllChildren()
*/
void CollapseAllChildren(const wxTreeItemId& item);
If the user changed the label (i.e. s/he does not press ESC or leave
the text control without changes, a EVT_TREE_END_LABEL_EDIT event
will be sent which can be vetoed as well.
-
+
@see EndEditLabel(), wxTreeEvent
*/
void EditLabel(const wxTreeItemId& item);
/**
Ends label editing. If @a cancelEdit is @true, the edit will be cancelled.
This function is currently supported under Windows only.
-
+
@see EditLabel()
*/
void EndEditLabel(bool cancelEdit);
scrollbar and its position is not 0.
*/
bool GetBoundingRect(const wxTreeItemId& item, wxRect& rect,
- bool textOnly = false);
+ bool textOnly = false) const;
/**
Returns the buttons image list (from which application-defined button images
are taken).
This function is only available in the generic version.
*/
- wxImageList* GetButtonsImageList();
+ wxImageList* GetButtonsImageList() const;
/**
Returns the number of items in the branch. If @a recursively is @true,
of descendants, otherwise only one level of children is counted.
*/
unsigned int GetChildrenCount(const wxTreeItemId& item,
- bool recursively = true);
+ bool recursively = true) const;
/**
Returns the number of items in the control.
*/
- unsigned int GetCount();
+ unsigned int GetCount() const;
/**
Returns the edit control being currently used to edit a label. Returns @NULL
if no label is being edited.
- @b NB: It is currently only implemented for wxMSW.
+ @note It is currently only implemented for wxMSW.
*/
- wxTextCtrl* GetEditControl();
+ wxTextCtrl* GetEditControl() const;
/**
Returns the first child; call GetNextChild() for the next child.
GetFirstChild and GetNextChild should be the same variable.
Returns an invalid tree item (i.e. IsOk() returns @false) if there are no
further children.
-
+
@see GetNextChild(), GetNextSibling()
*/
wxTreeItemId GetFirstChild(const wxTreeItemId& item,
- wxTreeItemIdValue& cookie);
+ wxTreeItemIdValue& cookie) const;
/**
Returns the first visible item.
*/
- wxTreeItemId GetFirstVisibleItem();
+ wxTreeItemId GetFirstVisibleItem() const;
/**
Returns the normal image list.
*/
- wxImageList* GetImageList();
+ wxImageList* GetImageList() const;
/**
Returns the current tree control indentation.
*/
- int GetIndent();
+ int GetIndent() const;
/**
Returns the background colour of the item.
*/
- wxColour GetItemBackgroundColour(const wxTreeItemId& item);
+ wxColour GetItemBackgroundColour(const wxTreeItemId& item) const;
//@{
/**
Returns the font of the item label.
- */
- wxTreeItemData* GetItemData(const wxTreeItemId& item);
-See also wxPython note:
-wxPython provides the following shortcut method:
-
-
+ @see wxTreeItemData
-
-
-
- GetPyData(item)
-
-
-
-
- Returns the Python Object
- associated with the wxTreeItemData for the given item Id.
-
-
-
-
-
-
-
- wxFont GetItemFont(const wxTreeItemId& item);
+ @beginWxPythonOnly
+ wxPython provides the following shortcut method:
+ @li GetPyData(item): Returns the Python Object associated with the
+ wxTreeItemData for the given item Id.
+ @endWxPythonOnly
+ */
+ wxTreeItemData* GetItemData(const wxTreeItemId& item) const;
+ wxFont GetItemFont(const wxTreeItemId& item) const;
//@}
/**
(which is shown when an expanded item is currently selected)
*/
int GetItemImage(const wxTreeItemId& item,
- wxTreeItemIcon which = wxTreeItemIcon_Normal);
+ wxTreeItemIcon which = wxTreeItemIcon_Normal) const;
/**
Returns the item's parent.
*/
- wxTreeItemId GetItemParent(const wxTreeItemId& item);
+ wxTreeItemId GetItemParent(const wxTreeItemId& item) const;
/**
Gets the selected item image (this function is obsolete, use
@c GetItemImage(item, wxTreeItemIcon_Selected) instead).
*/
- int GetItemSelectedImage(const wxTreeItemId& item);
+ int GetItemSelectedImage(const wxTreeItemId& item) const;
/**
Returns the item label.
*/
- wxString GetItemText(const wxTreeItemId& item);
+ wxString GetItemText(const wxTreeItemId& item) const;
/**
Returns the colour of the item label.
*/
- wxColour GetItemTextColour(const wxTreeItemId& item);
+ wxColour GetItemTextColour(const wxTreeItemId& item) const;
/**
Returns the last child of the item (or an invalid tree item if this item has no
children).
-
+
@see GetFirstChild(), GetNextSibling(),
GetLastChild()
*/
- wxTreeItemId GetLastChild(const wxTreeItemId& item);
+ wxTreeItemId GetLastChild(const wxTreeItemId& item) const;
/**
Returns the next child; call GetFirstChild() for the first child.
enumeration on one and the same object simultaneously). The cookie passed to
GetFirstChild and GetNextChild should be the same.
Returns an invalid tree item if there are no further children.
-
+
@see GetFirstChild()
*/
wxTreeItemId GetNextChild(const wxTreeItemId& item,
- wxTreeItemIdValue& cookie);
+ wxTreeItemIdValue& cookie) const;
/**
Returns the next sibling of the specified item; call GetPrevSibling() for the
previous sibling.
Returns an invalid tree item if there are no further siblings.
-
+
@see GetPrevSibling()
*/
- wxTreeItemId GetNextSibling(const wxTreeItemId& item);
+ wxTreeItemId GetNextSibling(const wxTreeItemId& item) const;
/**
Returns the next visible item or an invalid item if this item is the last
visible one.
Notice that the @a item itself must be visible.
*/
- wxTreeItemId GetNextVisible(const wxTreeItemId& item);
+ wxTreeItemId GetNextVisible(const wxTreeItemId& item) const;
/**
Returns the previous sibling of the specified item; call GetNextSibling() for
the next sibling.
Returns an invalid tree item if there are no further children.
-
+
@see GetNextSibling()
*/
- wxTreeItemId GetPrevSibling(const wxTreeItemId& item);
+ wxTreeItemId GetPrevSibling(const wxTreeItemId& item) const;
/**
Returns the previous visible item or an invalid item if this item is the first
visible one.
Notice that the @a item itself must be visible.
*/
- wxTreeItemId GetPrevVisible(const wxTreeItemId& item);
+ wxTreeItemId GetPrevVisible(const wxTreeItemId& item) const;
/**
Returns @true if the control will use a quick calculation for the best size,
looking only at the first and last items. The default is @false.
-
+
@see SetQuickBestSize()
*/
- bool GetQuickBestSize();
+ bool GetQuickBestSize() const;
/**
Returns the root item for the tree control.
*/
- wxTreeItemId GetRootItem();
+ wxTreeItemId GetRootItem() const;
/**
Returns the selection, or an invalid item if there is no selection.
GetSelections() for the controls which do have
this style.
*/
- wxTreeItemId GetSelection();
+ wxTreeItemId GetSelection() const;
/**
Fills the array of tree items passed in with the currently selected items. This
function can be called only if the control has the wxTR_MULTIPLE style.
Returns the number of selected items.
*/
- unsigned int GetSelections(wxArrayTreeItemIds& selection);
+ unsigned int GetSelections(wxArrayTreeItemIds& selection) const;
/**
Returns the state image list (from which application-defined state images are
taken).
*/
- wxImageList* GetStateImageList();
+ wxImageList* GetStateImageList() const;
/**
Calculates which (if any) item is under the given point, returning the tree item
id at this point plus extra information @e flags. @a flags is a bitlist of the
following:
-
+
wxTREE_HITTEST_ABOVE
-
+
Above the client area.
-
+
wxTREE_HITTEST_BELOW
-
+
Below the client area.
-
+
wxTREE_HITTEST_NOWHERE
-
+
In the client area but below the last item.
-
+
wxTREE_HITTEST_ONITEMBUTTON
-
+
On the button associated with an item.
-
+
wxTREE_HITTEST_ONITEMICON
-
+
On the bitmap associated with an item.
-
+
wxTREE_HITTEST_ONITEMINDENT
-
+
In the indentation associated with an item.
-
+
wxTREE_HITTEST_ONITEMLABEL
-
+
On the label (string) associated with an item.
-
+
wxTREE_HITTEST_ONITEMRIGHT
-
+
In the area to the right of an item.
-
+
wxTREE_HITTEST_ONITEMSTATEICON
-
+
On the state icon for a tree view item that is in a user-defined state.
-
+
wxTREE_HITTEST_TOLEFT
-
+
To the right of the client area.
-
+
wxTREE_HITTEST_TORIGHT
-
+
To the left of the client area.
*/
- wxTreeItemId HitTest(const wxPoint& point, int& flags);
+ wxTreeItemId HitTest(const wxPoint& point, int& flags) const;
//@{
/**
Returns @true if the given item is in bold state.
See also: SetItemBold()
*/
- bool IsBold(const wxTreeItemId& item);
+ bool IsBold(const wxTreeItemId& item) const;
/**
Returns @true if the control is empty (i.e. has no items, even no root one).
*/
- bool IsEmpty();
+ bool IsEmpty() const;
/**
Returns @true if the item is expanded (only makes sense if it has children).
*/
- bool IsExpanded(const wxTreeItemId& item);
+ bool IsExpanded(const wxTreeItemId& item) const;
/**
Returns @true if the item is selected.
*/
- bool IsSelected(const wxTreeItemId& item);
+ bool IsSelected(const wxTreeItemId& item) const;
/**
Returns @true if the item is visible on the screen.
*/
- bool IsVisible(const wxTreeItemId& item);
+ bool IsVisible(const wxTreeItemId& item) const;
/**
Returns @true if the item has children.
*/
- bool ItemHasChildren(const wxTreeItemId& item);
+ bool ItemHasChildren(const wxTreeItemId& item) const;
/**
Override this function in the derived class to change the sort order of the
positive value if the first item is less than, equal to or greater than the
second one.
Please note that you @b must use wxRTTI macros
- DECLARE_DYNAMIC_CLASS and
- IMPLEMENT_DYNAMIC_CLASS if you override this
+ DECLARE_DYNAMIC_CLASS() and
+ IMPLEMENT_DYNAMIC_CLASS() if you override this
function because otherwise the base class considers that it is not overridden
and uses the default comparison, i.e. sorts the items alphabetically, which
allows it optimize away the calls to the virtual function completely.
Sets the item's font. All items in the tree should have the same height to avoid
text clipping, so the fonts height should be the same for all of them,
although font attributes may vary.
-
+
@see SetItemBold()
*/
void SetItemFont(const wxTreeItemId& item, const wxFont& font);
the best size,
looking only at the first and last items. Otherwise, it will look at all items.
The default is @false.
-
+
@see GetQuickBestSize()
*/
void SetQuickBestSize(bool quickBestSize);
OnCompareItems() method of wxTreeCtrl. You
should override that method to change the sort order (the default is ascending
case-sensitive alphabetical order).
-
+
@see wxTreeItemData, OnCompareItems()
*/
void SortChildren(const wxTreeItemId& item);
};
+
/**
@class wxTreeEvent
@wxheader{treectrl.h}
@library{wxbase}
@category{events}
- @seealso
- wxTreeCtrl
+ @see wxTreeCtrl
*/
class wxTreeEvent : public wxNotifyEvent
{
/**
Returns the item (valid for all events).
*/
- wxTreeItemId GetItem();
+ wxTreeItemId GetItem() const;
/**
Returns the key code if the event is a key event. Use
GetKeyEvent() to get the values of the
modifier keys for this event (i.e. Shift or Ctrl).
*/
- int GetKeyCode();
+ int GetKeyCode() const;
/**
Returns the key event for @c EVT_TREE_KEY_DOWN events.
*/
- const wxKeyEvent GetKeyEvent();
+ const wxKeyEvent GetKeyEvent() const;
/**
Returns the label if the event is a begin or end edit label event.
*/
- const wxString GetLabel();
+ const wxString GetLabel() const;
/**
Returns the old item index (valid for EVT_TREE_ITEM_CHANGING and CHANGED events)
*/
- wxTreeItemId GetOldItem();
+ wxTreeItemId GetOldItem() const;
/**
Returns the position of the mouse pointer if the event is a drag or
wxTreeCtrl
window (so that you can pass it directly to e.g. wxWindow::PopupMenu).
*/
- wxPoint GetPoint();
+ wxPoint GetPoint() const;
/**
Returns @true if the label edit was cancelled. This should be
called from within an EVT_TREE_END_LABEL_EDIT handler.
*/
- bool IsEditCancelled();
+ bool IsEditCancelled() const;
/**
Set the tooltip for the item (valid for EVT_TREE_ITEM_GETTOOLTIP events).
*/
void SetToolTip(const wxString& tooltip);
};
+