1 #############################################################################
2 ## Name: ext/dataview/XS/DataViewTreeCtrl.xsp
3 ## Purpose: XS++ for Wx::DataViewTreeCtrl
4 ## Author: Mattia Barbon
7 ## RCS-ID: $Id: DataViewTreeCtrl.xsp 2523 2009-02-04 23:50:57Z mbarbon $
8 ## Copyright: (c) 2007, 2009 Mattia Barbon
9 ## Licence: This program is free software; you can redistribute it and/or
10 ## modify it under the same terms as Perl itself
11 #############################################################################
13 #if wxUSE_DATAVIEWCTRL
17 #include <wx/dataview.h>
18 #include <wx/imaglist.h>
20 #define wxPLI_DEFAULT_DV_CTRL (wxDV_NO_HEADER|wxDV_ROW_LINES)
22 %name{Wx::DataViewTreeCtrl} class wxDataViewTreeCtrl
29 MATCH_VOIDM_REDISP( newDefault )
30 MATCH_ANY_REDISP( newFull )
31 END_OVERLOAD( "Wx::DataViewTreeCtrl::new" )
34 %name{newDefault} wxDataViewTreeCtrl()
35 %code{% RETVAL = new wxDataViewTreeCtrl();
36 wxPli_create_evthandler( aTHX_ RETVAL, CLASS );
38 %name{newFull} wxDataViewTreeCtrl( wxWindow* parent,
39 wxWindowID id = wxID_ANY,
40 const wxPoint& pos = wxDefaultPosition,
41 const wxSize& size = wxDefaultSize,
42 long style = wxPLI_DEFAULT_DV_CTRL,
43 const wxValidator& validator = wxDefaultValidatorPtr )
44 %code{% RETVAL = new wxDataViewTreeCtrl( parent, id, pos, size,
46 wxPli_create_evthandler( aTHX_ RETVAL, CLASS );
49 bool Create( wxWindow* parent, wxWindowID id = wxID_ANY,
50 const wxPoint& pos = wxDefaultPosition,
51 const wxSize& size = wxDefaultSize,
52 long style = wxPLI_DEFAULT_DV_CTRL,
53 const wxValidator& validator = wxDefaultValidatorPtr );
55 wxDataViewTreeStore *GetStore();
57 void SetImageList( wxImageList *imagelist );
58 wxImageList* GetImageList();
60 wxDataViewItem& AppendItem( const wxDataViewItem& parent,
61 const wxString &text, int icon = -1,
62 wxPliUserDataCD *data = NULL );
63 wxDataViewItem& PrependItem( const wxDataViewItem& parent,
64 const wxString &text, int icon = -1,
65 wxPliUserDataCD *data = NULL );
66 wxDataViewItem& InsertItem( const wxDataViewItem& parent,
67 const wxDataViewItem& previous,
68 const wxString &text, int icon = -1,
69 wxPliUserDataCD *data = NULL );
71 wxDataViewItem& PrependContainer( const wxDataViewItem& parent,
72 const wxString &text, int icon = -1,
74 wxPliUserDataCD *data = NULL );
75 wxDataViewItem& AppendContainer( const wxDataViewItem& parent,
76 const wxString &text, int icon = -1,
78 wxPliUserDataCD *data = NULL );
79 wxDataViewItem& InsertContainer( const wxDataViewItem& parent,
80 const wxDataViewItem& previous,
81 const wxString &text, int icon = -1,
83 wxPliUserDataCD *data = NULL );
85 wxDataViewItem& GetNthChild( const wxDataViewItem& parent,
86 unsigned int pos ) const;
87 int GetChildCount( const wxDataViewItem& parent ) const;
89 void SetItemText( const wxDataViewItem& item, const wxString &text );
90 wxString GetItemText( const wxDataViewItem& item ) const;
91 void SetItemIcon( const wxDataViewItem& item, const wxIcon &icon );
92 const wxIcon &GetItemIcon( const wxDataViewItem& item ) const;
93 void SetItemExpandedIcon( const wxDataViewItem& item, const wxIcon &icon );
94 const wxIcon &GetItemExpandedIcon( const wxDataViewItem& item ) const;
95 void SetItemData( const wxDataViewItem& item, wxPliUserDataCD *data );
96 wxPliUserDataCD *GetItemData( const wxDataViewItem& item ) const
97 %code{% RETVAL = (wxPliUserDataCD*) THIS->GetItemData( *item );
100 void DeleteItem( const wxDataViewItem& item );
101 void DeleteChildren( const wxDataViewItem& item );
102 void DeleteAllItems();