void DeleteItem( long item );
void DeleteChildren( long item );
bool DeleteAllItems();
+ bool ExpandItem(long item) { return ExpandItem(item, wxTREE_EXPAND_EXPAND); }
+ bool CollapseItem(long item) { return ExpandItem(item, wxTREE_EXPAND_COLLAPSE); }
+ bool ToggleItem(long item) { return ExpandItem(item, wxTREE_EXPAND_TOGGLE); }
bool ExpandItem( long item, int action );
+
+ // is the item expanded now?
+ bool IsItemExpanded(long item)
+ {
+ wxGenericTreeItem *pItem = FindItem(item);
+ return pItem && (pItem->GetState() & wxTREE_STATE_EXPANDED);
+ }
+
bool GetItem( wxTreeItem &info ) const;
long GetItemData( long item ) const;
wxString GetItemText( long item ) const;
long GetParent( long item ) const;
long GetRootItem() const;
long GetSelection() const;
- bool SelectItem( long item ) const;
+ bool SelectItem( long item );
bool ItemHasChildren( long item ) const;
void SetIndent( int indent );
int GetIndent() const;
void OnChar( wxKeyEvent &event );
void OnMouse( const wxMouseEvent &event );
- void SetImageList(wxImageList *imageList) { m_imageList = imageList; }
- wxImageList *GetImageList() const { return m_imageList; }
+ wxImageList *GetImageList(int which = wxIMAGE_LIST_NORMAL) const;
+ void SetImageList(wxImageList *imageList, int which = wxIMAGE_LIST_NORMAL);
private:
+ // set the selection to the specified item generating appropriate event(s) if
+ // not disabled
+ void SelectItem(wxGenericTreeItem *item, bool bDoEvents = TRUE);
+
wxGenericTreeItem *m_anchor;
wxGenericTreeItem *m_current;
bool m_hasFocus;
wxPaintDC *m_dc;
wxBrush *m_hilightBrush;
wxImageList *m_imageList;
+ wxImageList *m_smallImageList;
void CalculateLevel( wxGenericTreeItem *item, wxPaintDC &dc, int level, int &y );
void CalculatePositions();