1 #############################################################################
2 ## Name: ext/calendar/XS/DatePickerCtrl.xsp
3 ## Purpose: XS++ for Wx::DatePickerCtrl
4 ## Author: Mattia Barbon
7 ## RCS-ID: $Id: DatePickerCtrl.xsp 2395 2008-05-19 20:39:15Z mbarbon $
8 ## Copyright: (c) 2005-2008 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 WXPERL_W_VERSION_GE( 2, 5, 4 )
16 #include <wx/datectrl.h>
17 #include <wx/calctrl.h>
18 #include "cpp/datectrl.h"
20 %typemap{wxCalendarCtrl*}{simple};
21 %typemap{wxDatePickerCtrl*}{simple};
22 %typemap{wxDateTime}{reference};
25 %file{cpp/datectrl.h};
28 #define wxDP_STYLE wxDP_DEFAULT|wxDP_SHOWCENTURY
30 double datepicker_constant( const char* name, int arg )
33 // !parser: sub { $_[0] =~ m<^\s*r\w*\(\s*(\w+)\s*\);\s*(?://(.*))?$> }
36 if( strEQ( name, #n ) ) \
39 WX_PL_CONSTANT_INIT();
47 r( wxDP_SHOWCENTURY );
53 WX_PL_CONSTANT_CLEANUP();
56 wxPlConstants datepicker_module( &datepicker_constant );
61 %name{Wx::DatePickerCtrl} class wxDatePickerCtrl
63 %name{newDefault} wxDatePickerCtrl()
64 %code{% RETVAL = new wxDatePickerCtrl();
65 wxPli_create_evthandler( aTHX_ RETVAL, CLASS );
67 %name{newFull} wxDatePickerCtrl(wxWindow *parent,
68 wxWindowID id = wxID_ANY,
69 const wxDateTime& date =
71 const wxPoint& pos = wxDefaultPosition,
72 const wxSize& size = wxDefaultSize,
73 long style = wxDP_STYLE,
74 const wxValidator& validator =
75 wxDefaultValidatorPtr,
76 const wxString& name =
77 wxDatePickerCtrlNameStr)
78 %code{% RETVAL = new wxDatePickerCtrl( parent, id, *date, pos, size,
79 style, *validator, name );
80 wxPli_create_evthandler( aTHX_ RETVAL, CLASS );
83 bool Create(wxWindow *parent,
84 wxWindowID id = wxID_ANY,
85 const wxDateTime& dt = wxDefaultDateTimePtr,
86 const wxPoint& pos = wxDefaultPosition,
87 const wxSize& size = wxDefaultSize,
88 long style = wxDP_STYLE,
89 const wxValidator& validator = wxDefaultValidatorPtr,
90 const wxString& name = wxDatePickerCtrlNameStr);
92 void SetValue(const wxDateTime& dt);
93 wxDateTime GetValue() const;
95 void SetRange(const wxDateTime& dt1, const wxDateTime& dt2);
97 #if !defined(wxHAS_NATIVE_DATEPICKCTRL)
98 ## bool SetFormat(const wxChar* format); // documented but not defined...
99 #if !defined(wxHAS_NATIVE_CALENDARCTRL)
100 wxCalendarCtrl* GetCalendar();
111 MATCH_VOIDM_REDISP( newDefault )
112 MATCH_ANY_REDISP( newFull )
113 END_OVERLOAD( "Wx::DatePickerCtrl::new" )
116 wxDatePickerCtrl::GetRange()
119 bool ok = THIS->GetRange( &dt1, &dt2 );
125 PUSHs( wxPli_non_object_2_sv( aTHX_ sv_newmortal(), new wxDateTime( dt1 ),
127 PUSHs( wxPli_non_object_2_sv( aTHX_ sv_newmortal(), new wxDateTime( dt2 ),