// SetImageList helper
void SetAnyImageList(wxImageList *imageList, int which);
+ // refresh a single item
+ void RefreshItem(const wxTreeItemId& item);
+
wxTextCtrl *m_textCtrl; // used while editing the item label
wxImageList *m_imageListNormal, // images for tree elements
*m_imageListState; // special images for app defined states
void DeleteTextCtrl();
- // support for additional item images
- friend class wxTreeItemIndirectData;
+ // support for additional item images which we implement using
+ // wxTreeItemIndirectData technique - see the comments in msw/treectrl.cpp
void SetIndirectItemData(const wxTreeItemId& item,
- wxTreeItemIndirectData *data);
+ class wxTreeItemIndirectData *data);
bool HasIndirectData(const wxTreeItemId& item) const;
-
- // the array storing all item ids which have indirect data
- wxArrayTreeItemIds m_itemsWithIndirectData;
+ bool IsDataIndirect(wxTreeItemData *data) const
+ { return data && data->GetId().m_pItem == 0; }
// the hash storing the items attributes (indexed by items ids)
wxHashTable m_attrs;
// used for dragging
wxDragImage *m_dragImage;
+ // Virtual root item, if wxTR_HIDE_ROOT is set.
+ void* m_pVirtualRoot;
+
// the starting item for selection with Shift
WXHTREEITEM m_htSelStart;
+ friend class wxTreeItemIndirectData;
+ friend class wxTreeSortHelper;
+
DECLARE_DYNAMIC_CLASS(wxTreeCtrl)
};