#############################################################################
## Name: ext/dataview/XS/DataViewTreeCtrl.xsp
## Purpose: XS++ for Wx::DataViewTreeCtrl
## Author: Mattia Barbon
## Modified by:
## Created: 24/12/2007
## RCS-ID: $Id: DataViewTreeCtrl.xsp 2523 2009-02-04 23:50:57Z mbarbon $
## Copyright: (c) 2007, 2009 Mattia Barbon
## Licence: This program is free software; you can redistribute it and/or
## modify it under the same terms as Perl itself
#############################################################################
#if wxUSE_DATAVIEWCTRL
%module{Wx};
#include <wx/dataview.h>
#include <wx/imaglist.h>
#define wxPLI_DEFAULT_DV_CTRL (wxDV_NO_HEADER|wxDV_ROW_LINES)
%name{Wx::DataViewTreeCtrl} class wxDataViewTreeCtrl
{
%{
void
new( ... )
PPCODE:
BEGIN_OVERLOAD()
MATCH_VOIDM_REDISP( newDefault )
MATCH_ANY_REDISP( newFull )
END_OVERLOAD( "Wx::DataViewTreeCtrl::new" )
%}
%name{newDefault} wxDataViewTreeCtrl()
%code{% RETVAL = new wxDataViewTreeCtrl();
wxPli_create_evthandler( aTHX_ RETVAL, CLASS );
%};
%name{newFull} wxDataViewTreeCtrl( wxWindow* parent,
wxWindowID id = wxID_ANY,
const wxPoint& pos = wxDefaultPosition,
const wxSize& size = wxDefaultSize,
long style = wxPLI_DEFAULT_DV_CTRL,
const wxValidator& validator = wxDefaultValidatorPtr )
%code{% RETVAL = new wxDataViewTreeCtrl( parent, id, pos, size,
style, *validator );
wxPli_create_evthandler( aTHX_ RETVAL, CLASS );
%};
bool Create( wxWindow* parent, wxWindowID id = wxID_ANY,
const wxPoint& pos = wxDefaultPosition,
const wxSize& size = wxDefaultSize,
long style = wxPLI_DEFAULT_DV_CTRL,
const wxValidator& validator = wxDefaultValidatorPtr );
wxDataViewTreeStore *GetStore();
void SetImageList( wxImageList *imagelist );
wxImageList* GetImageList();
wxDataViewItem& AppendItem( const wxDataViewItem& parent,
const wxString &text, int icon = -1,
wxPliUserDataCD *data = NULL );
wxDataViewItem& PrependItem( const wxDataViewItem& parent,
const wxString &text, int icon = -1,
wxPliUserDataCD *data = NULL );
wxDataViewItem& InsertItem( const wxDataViewItem& parent,
const wxDataViewItem& previous,
const wxString &text, int icon = -1,
wxPliUserDataCD *data = NULL );
wxDataViewItem& PrependContainer( const wxDataViewItem& parent,
const wxString &text, int icon = -1,
int expanded = -1,
wxPliUserDataCD *data = NULL );
wxDataViewItem& AppendContainer( const wxDataViewItem& parent,
const wxString &text, int icon = -1,
int expanded = -1,
wxPliUserDataCD *data = NULL );
wxDataViewItem& InsertContainer( const wxDataViewItem& parent,
const wxDataViewItem& previous,
const wxString &text, int icon = -1,
int expanded = -1,
wxPliUserDataCD *data = NULL );
wxDataViewItem& GetNthChild( const wxDataViewItem& parent,
unsigned int pos ) const;
int GetChildCount( const wxDataViewItem& parent ) const;
void SetItemText( const wxDataViewItem& item, const wxString &text );
wxString GetItemText( const wxDataViewItem& item ) const;
void SetItemIcon( const wxDataViewItem& item, const wxIcon &icon );
const wxIcon &GetItemIcon( const wxDataViewItem& item ) const;
void SetItemExpandedIcon( const wxDataViewItem& item, const wxIcon &icon );
const wxIcon &GetItemExpandedIcon( const wxDataViewItem& item ) const;
void SetItemData( const wxDataViewItem& item, wxPliUserDataCD *data );
wxPliUserDataCD *GetItemData( const wxDataViewItem& item ) const
%code{% RETVAL = (wxPliUserDataCD*) THIS->GetItemData( *item );
%};
void DeleteItem( const wxDataViewItem& item );
void DeleteChildren( const wxDataViewItem& item );
void DeleteAllItems();
};
#endif