############################################################################# ## Name: XS/SingleChoiceDialog.xs ## Purpose: XS for Wx::SingleChoiceDialog ## Author: Mattia Barbon ## Modified by: ## Created: 03/02/2001 ## RCS-ID: $Id: SingleChoiceDialog.xs 2057 2007-06-18 23:03:00Z mbarbon $ ## Copyright: (c) 2001-2002, 2005 Mattia Barbon ## Licence: This program is free software; you can redistribute it and/or ## modify it under the same terms as Perl itself ############################################################################# #include #include "cpp/singlechoicedialog.h" MODULE=Wx PACKAGE=Wx::SingleChoiceDialog wxSingleChoiceDialog* wxSingleChoiceDialog::new( parent, message, caption, chs, dt = &PL_sv_undef, style = wxCHOICEDLG_STYLE, pos = wxDefaultPosition ) wxWindow* parent wxString message wxString caption SV* chs SV* dt long style wxPoint pos PREINIT: wxString* choices; SV** data; int n, n2; CODE: n = wxPli_av_2_stringarray( aTHX_ chs, &choices ); if( !SvOK( dt ) ) { RETVAL = new wxPliSingleChoiceDialog( parent, message, caption, n, choices, 0, style, pos ); } else { n2 = wxPli_av_2_svarray( aTHX_ dt, &data ); if( n != n2 ) { delete[] choices; delete[] data; choices = 0; data = 0; n = 0; croak( "supplied arrays of different size" ); } RETVAL = new wxPliSingleChoiceDialog( parent, message, caption, n, choices, data, style, pos ); delete[] data; } delete[] choices; OUTPUT: RETVAL int wxSingleChoiceDialog::GetSelection() SV* wxSingleChoiceDialog::GetSelectionClientData() PREINIT: char* t; CODE: t = THIS->GetSelectionClientData(); RETVAL = &PL_sv_undef; if( t ) { RETVAL = (SV*)t; } SvREFCNT_inc( RETVAL ); OUTPUT: RETVAL wxString wxSingleChoiceDialog::GetStringSelection() void wxSingleChoiceDialog::SetSelection( selection ) int selection MODULE=Wx PACKAGE=Wx PREFIX=wx # # Function interface # wxString wxGetSingleChoice( message, caption, chs, parent = 0, x = -1, y = -1, centre = true, width = wxCHOICE_WIDTH, height = wxCHOICE_HEIGHT ) wxString message wxString caption SV* chs wxWindow* parent int x int y bool centre int width int height PREINIT: wxString* choices; int n; CODE: n = wxPli_av_2_stringarray( aTHX_ chs, &choices ); RETVAL = wxGetSingleChoice( message, caption, n, choices, parent, x, y, centre, width, height ); delete[] choices; OUTPUT: RETVAL int wxGetSingleChoiceIndex( message, caption, chs, parent = 0, x = -1, y = -1, centre = true, width = wxCHOICE_WIDTH, height = wxCHOICE_HEIGHT ) wxString message wxString caption SV* chs wxWindow* parent int x int y bool centre int width int height PREINIT: wxString* choices; int n; CODE: n = wxPli_av_2_stringarray( aTHX_ chs, &choices ); RETVAL = wxGetSingleChoiceIndex( message, caption, n, choices, parent, x, y, centre, width, height ); delete[] choices; OUTPUT: RETVAL SV* wxGetSingleChoiceData( message, caption, chs, dt, parent = 0, x = -1, y = -1, centre = true, width = wxCHOICE_WIDTH, height = wxCHOICE_HEIGHT ) wxString message wxString caption SV* chs SV* dt wxWindow* parent int x int y bool centre int width int height PREINIT: wxString* choices; SV** data; int n, n2; void* rt; CODE: n = wxPli_av_2_stringarray( aTHX_ chs, &choices ); n2 = wxPli_av_2_svarray( aTHX_ dt, &data ); if( n != n2 ) { delete[] choices; delete[] data; choices = 0; data = 0; n = 0; croak( "supplied arrays of different sizes" ); } rt = wxGetSingleChoiceData( message, caption, n, choices, (void**)data, parent, x, y, centre, width, height ); RETVAL = rt ? (SV*)rt : &PL_sv_undef; SvREFCNT_inc( RETVAL ); delete[] choices; delete[] data; OUTPUT: RETVAL