fixed sorting the items which have indirect data (i.e. images set for open/closed state) and made indirect data handling much simpler and more efficient as a side effect

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@13164 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Vadim Zeitlin
2001-12-23 01:00:32 +00:00
parent d6acfcb5f6
commit 502a2b1810
2 changed files with 58 additions and 32 deletions

View File

@@ -433,14 +433,13 @@ private:
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->GetId().m_pItem == 0; }
// the hash storing the items attributes (indexed by items ids)
wxHashTable m_attrs;
@@ -454,6 +453,9 @@ private:
// the starting item for selection with Shift
WXHTREEITEM m_htSelStart;
friend class wxTreeItemIndirectData;
friend class wxTreeSortHelper;
DECLARE_DYNAMIC_CLASS(wxTreeCtrl)
};