Add libwx-perl
[pkg-perl] / deb-src / libwx-perl / libwx-perl-0.96 / ext / datetime / DateTime.c
1 /*
2  * This file was generated automatically by ExtUtils::ParseXS version 2.2202 from the
3  * contents of DateTime.xs. Do not edit this file, edit DateTime.xs instead.
4  *
5  *      ANY CHANGES MADE HERE WILL BE LOST! 
6  *
7  */
8
9 /////////////////////////////////////////////////////////////////////////////
10 // Name:        ext/datetime/DateTime.xs
11 // Purpose:     XS for Wx::DateTime
12 // Author:      Mattia Barbon
13 // Modified by:
14 // Created:     22/09/2002
15 // RCS-ID:      $Id: DateTime.xs 2700 2009-12-13 11:25:50Z mbarbon $
16 // Copyright:   (c) 2002, 2006, 2008-2009 Mattia Barbon
17 // Licence:     This program is free software; you can redistribute it and/or
18 //              modify it under the same terms as Perl itself
19 /////////////////////////////////////////////////////////////////////////////
20
21 #define PERL_NO_GET_CONTEXT
22
23 #include "cpp/wxapi.h"
24
25 #undef THIS
26
27 #ifndef PERL_UNUSED_VAR
28 #  define PERL_UNUSED_VAR(var) if (0) var = var
29 #endif
30
31 #ifndef PERL_ARGS_ASSERT_CROAK_XS_USAGE
32 #define PERL_ARGS_ASSERT_CROAK_XS_USAGE assert(cv); assert(params)
33
34 /* prototype to pass -Wmissing-prototypes */
35 STATIC void
36 S_croak_xs_usage(pTHX_ const CV *const cv, const char *const params);
37
38 STATIC void
39 S_croak_xs_usage(pTHX_ const CV *const cv, const char *const params)
40 {
41     const GV *const gv = CvGV(cv);
42
43     PERL_ARGS_ASSERT_CROAK_XS_USAGE;
44
45     if (gv) {
46         const char *const gvname = GvNAME(gv);
47         const HV *const stash = GvSTASH(gv);
48         const char *const hvname = stash ? HvNAME(stash) : NULL;
49
50         if (hvname)
51             Perl_croak(aTHX_ "Usage: %s::%s(%s)", hvname, gvname, params);
52         else
53             Perl_croak(aTHX_ "Usage: %s(%s)", gvname, params);
54     } else {
55         /* Pants. I don't think that it should be possible to get here. */
56         Perl_croak(aTHX_ "Usage: CODE(0x%"UVxf")(%s)", PTR2UV(cv), params);
57     }
58 }
59 #undef  PERL_ARGS_ASSERT_CROAK_XS_USAGE
60
61 #ifdef PERL_IMPLICIT_CONTEXT
62 #define croak_xs_usage(a,b)     S_croak_xs_usage(aTHX_ a,b)
63 #else
64 #define croak_xs_usage          S_croak_xs_usage
65 #endif
66
67 #endif
68
69 /* NOTE: the prototype of newXSproto() is different in versions of perls,
70  * so we define a portable version of newXSproto()
71  */
72 #ifdef newXS_flags
73 #define newXSproto_portable(name, c_impl, file, proto) newXS_flags(name, c_impl, file, proto, 0)
74 #else
75 #define newXSproto_portable(name, c_impl, file, proto) (PL_Sv=(SV*)newXS(name, c_impl, file), sv_setpv(PL_Sv, proto), (CV*)PL_Sv)
76 #endif /* !defined(newXS_flags) */
77
78
79 /* INCLUDE:  Including 'perl -MExtUtils::XSpp::Cmd -e xspp -- -t ../../typemap.xsp XS/DateTime.xsp |' from 'DateTime.xs' */
80
81 #include <wx/datetime.h>
82 #define wxDateTime__TimeZone wxDateTime::TimeZone
83 #define Month wxDateTime::Month
84 #define WeekDay wxDateTime::WeekDay
85 #define WeekFlags wxDateTime::WeekFlags
86 #define NameFlags wxDateTime::NameFlags
87 #define wxDateTime_t wxDateTime::wxDateTime_t
88 #define Monday_First wxDateTime::Monday_First
89 #define Name_Full wxDateTime::Name_Full
90 #define Name_Abbr wxDateTime::Name_Abbr
91 #define Calendar wxDateTime::Calendar
92 #define Gregorian wxDateTime::Gregorian
93 #define Inv_Year wxDateTime::Inv_Year
94 #define Inv_Month wxDateTime::Inv_Month
95 #define wxDefaultDateTimePtr (wxDateTime*)&wxDefaultDateTime
96 #if WXPERL_W_VERSION_LT( 2, 5, 4 )
97 #define wxDefaultDateTimeFormat _T("%c")
98 #endif
99
100 XS(XS_Wx__DateTime_new); /* prototype to pass -Wmissing-prototypes */
101 XS(XS_Wx__DateTime_new)
102 {
103 #ifdef dVAR
104     dVAR; dXSARGS;
105 #else
106     dXSARGS;
107 #endif
108     if (items != 1)
109        croak_xs_usage(cv,  "CLASS");
110     {
111         char *  CLASS = (char *)SvPV_nolen(ST(0));
112         wxDateTime *    RETVAL;
113
114         RETVAL = new wxDateTime();
115         ST(0) = sv_newmortal();
116     wxPli_non_object_2_sv( aTHX_ ST(0), RETVAL, "Wx::DateTime" );
117     wxPli_thread_sv_register( aTHX_ "Wx::DateTime", RETVAL, ST(0) );
118
119     }
120     XSRETURN(1);
121 }
122
123
124 XS(XS_Wx__DateTime_newFromTimeT); /* prototype to pass -Wmissing-prototypes */
125 XS(XS_Wx__DateTime_newFromTimeT)
126 {
127 #ifdef dVAR
128     dVAR; dXSARGS;
129 #else
130     dXSARGS;
131 #endif
132     if (items != 2)
133        croak_xs_usage(cv,  "CLASS, time");
134     {
135         time_t  time = (time_t)SvNV(ST(1));
136         char *  CLASS = (char *)SvPV_nolen(ST(0));
137         wxDateTime *    RETVAL;
138     RETVAL = new wxDateTime( time );
139         ST(0) = sv_newmortal();
140     wxPli_non_object_2_sv( aTHX_ ST(0), RETVAL, "Wx::DateTime" );
141     wxPli_thread_sv_register( aTHX_ "Wx::DateTime", RETVAL, ST(0) );
142
143     }
144     XSRETURN(1);
145 }
146
147
148 XS(XS_Wx__DateTime_newFromDMY); /* prototype to pass -Wmissing-prototypes */
149 XS(XS_Wx__DateTime_newFromDMY)
150 {
151 #ifdef dVAR
152     dVAR; dXSARGS;
153 #else
154     dXSARGS;
155 #endif
156     if (items < 2 || items > 8)
157        croak_xs_usage(cv,  "CLASS, day, month = Inv_Month, year = Inv_Year, hour = 0, minute = 0, second = 0, millisec = 0");
158     {
159         wxDateTime_t    day = (wxDateTime_t)SvIV(ST(1));
160         Month   month;
161         int     year;
162         wxDateTime_t    hour;
163         wxDateTime_t    minute;
164         wxDateTime_t    second;
165         wxDateTime_t    millisec;
166         char *  CLASS = (char *)SvPV_nolen(ST(0));
167         wxDateTime *    RETVAL;
168
169         if (items < 3)
170             month = Inv_Month;
171         else {
172             month = (Month)SvIV(ST(2));
173         }
174
175         if (items < 4)
176             year = Inv_Year;
177         else {
178             year = (int)SvIV(ST(3));
179         }
180
181         if (items < 5)
182             hour = 0;
183         else {
184             hour = (wxDateTime_t)SvIV(ST(4));
185         }
186
187         if (items < 6)
188             minute = 0;
189         else {
190             minute = (wxDateTime_t)SvIV(ST(5));
191         }
192
193         if (items < 7)
194             second = 0;
195         else {
196             second = (wxDateTime_t)SvIV(ST(6));
197         }
198
199         if (items < 8)
200             millisec = 0;
201         else {
202             millisec = (wxDateTime_t)SvIV(ST(7));
203         }
204     RETVAL = new wxDateTime( day, month, year, hour, minute, second, millisec );
205         ST(0) = sv_newmortal();
206     wxPli_non_object_2_sv( aTHX_ ST(0), RETVAL, "Wx::DateTime" );
207     wxPli_thread_sv_register( aTHX_ "Wx::DateTime", RETVAL, ST(0) );
208
209     }
210     XSRETURN(1);
211 }
212
213
214 XS(XS_Wx__DateTime_CLONE); /* prototype to pass -Wmissing-prototypes */
215 XS(XS_Wx__DateTime_CLONE)
216 {
217 #ifdef dVAR
218     dVAR; dXSARGS;
219 #else
220     dXSARGS;
221 #endif
222     if (items != 1)
223        croak_xs_usage(cv,  "CLASS");
224     {
225         char *  CLASS = (char *)SvPV_nolen(ST(0));
226     wxPli_thread_sv_clone( aTHX_ CLASS, (wxPliCloneSV)wxPli_detach_object );
227     }
228     XSRETURN_EMPTY;
229 }
230
231
232 XS(XS_Wx__DateTime_DESTROY); /* prototype to pass -Wmissing-prototypes */
233 XS(XS_Wx__DateTime_DESTROY)
234 {
235 #ifdef dVAR
236     dVAR; dXSARGS;
237 #else
238     dXSARGS;
239 #endif
240     if (items != 1)
241        croak_xs_usage(cv,  "THIS");
242     {
243         wxDateTime *    THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
244      wxPli_thread_sv_unregister( aTHX_ "Wx::DateTime", THIS, ST(0) );
245                 delete THIS;
246     }
247     XSRETURN_EMPTY;
248 }
249
250 #define wxPL_DATETIME_FORMAT wxT("%c")
251
252 XS(XS_Wx__DateTime_Format); /* prototype to pass -Wmissing-prototypes */
253 XS(XS_Wx__DateTime_Format)
254 {
255 #ifdef dVAR
256     dVAR; dXSARGS;
257 #else
258     dXSARGS;
259 #endif
260     if (items < 1 || items > 3)
261        croak_xs_usage(cv,  "THIS, format = wxPL_DATETIME_FORMAT, tz = wxDateTime::Local");
262     {
263         const wxChar*   format;
264         wxDateTime__TimeZone    tz;
265         wxDateTime *    THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
266         wxString        RETVAL;
267
268         if (items < 2)
269             format = wxPL_DATETIME_FORMAT;
270         else {
271     WXCHAR_INPUT( format, wxChar*, ST(1) );
272         }
273
274         if (items < 3)
275             tz = wxDateTime::Local;
276         else {
277     tz = (wxDateTime::TZ)SvIV(ST(2));
278         }
279
280         RETVAL = THIS->Format(format, tz);
281         ST(0) = sv_newmortal();
282     WXSTRING_OUTPUT( RETVAL, ST(0) );
283
284     }
285     XSRETURN(1);
286 }
287
288
289 XS(XS_Wx__DateTime_FormatDate); /* prototype to pass -Wmissing-prototypes */
290 XS(XS_Wx__DateTime_FormatDate)
291 {
292 #ifdef dVAR
293     dVAR; dXSARGS;
294 #else
295     dXSARGS;
296 #endif
297     if (items != 1)
298        croak_xs_usage(cv,  "THIS");
299     {
300         wxDateTime *    THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
301         wxString        RETVAL;
302
303         RETVAL = THIS->FormatDate();
304         ST(0) = sv_newmortal();
305     WXSTRING_OUTPUT( RETVAL, ST(0) );
306
307     }
308     XSRETURN(1);
309 }
310
311
312 XS(XS_Wx__DateTime_GetYear); /* prototype to pass -Wmissing-prototypes */
313 XS(XS_Wx__DateTime_GetYear)
314 {
315 #ifdef dVAR
316     dVAR; dXSARGS;
317 #else
318     dXSARGS;
319 #endif
320     if (items < 1 || items > 2)
321        croak_xs_usage(cv,  "THIS, tz = wxDateTime::Local");
322     {
323         wxDateTime__TimeZone    tz;
324         wxDateTime *    THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
325         int     RETVAL;
326         dXSTARG;
327
328         if (items < 2)
329             tz = wxDateTime::Local;
330         else {
331     tz = (wxDateTime::TZ)SvIV(ST(1));
332         }
333
334         RETVAL = THIS->GetYear(tz);
335         XSprePUSH; PUSHi((IV)RETVAL);
336     }
337     XSRETURN(1);
338 }
339
340
341 XS(XS_Wx__DateTime_GetMonth); /* prototype to pass -Wmissing-prototypes */
342 XS(XS_Wx__DateTime_GetMonth)
343 {
344 #ifdef dVAR
345     dVAR; dXSARGS;
346 #else
347     dXSARGS;
348 #endif
349     if (items < 1 || items > 2)
350        croak_xs_usage(cv,  "THIS, tz = wxDateTime::Local");
351     {
352         wxDateTime__TimeZone    tz;
353         wxDateTime *    THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
354         Month   RETVAL;
355         dXSTARG;
356
357         if (items < 2)
358             tz = wxDateTime::Local;
359         else {
360     tz = (wxDateTime::TZ)SvIV(ST(1));
361         }
362
363         RETVAL = THIS->GetMonth(tz);
364         XSprePUSH; PUSHi((IV)RETVAL);
365     }
366     XSRETURN(1);
367 }
368
369
370 XS(XS_Wx__DateTime_GetDay); /* prototype to pass -Wmissing-prototypes */
371 XS(XS_Wx__DateTime_GetDay)
372 {
373 #ifdef dVAR
374     dVAR; dXSARGS;
375 #else
376     dXSARGS;
377 #endif
378     if (items < 1 || items > 2)
379        croak_xs_usage(cv,  "THIS, tz = wxDateTime::Local");
380     {
381         wxDateTime__TimeZone    tz;
382         wxDateTime *    THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
383         wxDateTime_t    RETVAL;
384         dXSTARG;
385
386         if (items < 2)
387             tz = wxDateTime::Local;
388         else {
389     tz = (wxDateTime::TZ)SvIV(ST(1));
390         }
391
392         RETVAL = THIS->GetDay(tz);
393         XSprePUSH; PUSHi((IV)RETVAL);
394     }
395     XSRETURN(1);
396 }
397
398
399 XS(XS_Wx__DateTime_GetWeekDay); /* prototype to pass -Wmissing-prototypes */
400 XS(XS_Wx__DateTime_GetWeekDay)
401 {
402 #ifdef dVAR
403     dVAR; dXSARGS;
404 #else
405     dXSARGS;
406 #endif
407     if (items < 1 || items > 2)
408        croak_xs_usage(cv,  "THIS, tz = wxDateTime::Local");
409     {
410         wxDateTime__TimeZone    tz;
411         wxDateTime *    THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
412         WeekDay RETVAL;
413         dXSTARG;
414
415         if (items < 2)
416             tz = wxDateTime::Local;
417         else {
418     tz = (wxDateTime::TZ)SvIV(ST(1));
419         }
420
421         RETVAL = THIS->GetWeekDay(tz);
422         XSprePUSH; PUSHi((IV)RETVAL);
423     }
424     XSRETURN(1);
425 }
426
427
428 XS(XS_Wx__DateTime_GetHour); /* prototype to pass -Wmissing-prototypes */
429 XS(XS_Wx__DateTime_GetHour)
430 {
431 #ifdef dVAR
432     dVAR; dXSARGS;
433 #else
434     dXSARGS;
435 #endif
436     if (items < 1 || items > 2)
437        croak_xs_usage(cv,  "THIS, tz = wxDateTime::Local");
438     {
439         wxDateTime__TimeZone    tz;
440         wxDateTime *    THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
441         wxDateTime_t    RETVAL;
442         dXSTARG;
443
444         if (items < 2)
445             tz = wxDateTime::Local;
446         else {
447     tz = (wxDateTime::TZ)SvIV(ST(1));
448         }
449
450         RETVAL = THIS->GetHour(tz);
451         XSprePUSH; PUSHi((IV)RETVAL);
452     }
453     XSRETURN(1);
454 }
455
456
457 XS(XS_Wx__DateTime_GetMinute); /* prototype to pass -Wmissing-prototypes */
458 XS(XS_Wx__DateTime_GetMinute)
459 {
460 #ifdef dVAR
461     dVAR; dXSARGS;
462 #else
463     dXSARGS;
464 #endif
465     if (items < 1 || items > 2)
466        croak_xs_usage(cv,  "THIS, tz = wxDateTime::Local");
467     {
468         wxDateTime__TimeZone    tz;
469         wxDateTime *    THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
470         wxDateTime_t    RETVAL;
471         dXSTARG;
472
473         if (items < 2)
474             tz = wxDateTime::Local;
475         else {
476     tz = (wxDateTime::TZ)SvIV(ST(1));
477         }
478
479         RETVAL = THIS->GetMinute(tz);
480         XSprePUSH; PUSHi((IV)RETVAL);
481     }
482     XSRETURN(1);
483 }
484
485
486 XS(XS_Wx__DateTime_GetSecond); /* prototype to pass -Wmissing-prototypes */
487 XS(XS_Wx__DateTime_GetSecond)
488 {
489 #ifdef dVAR
490     dVAR; dXSARGS;
491 #else
492     dXSARGS;
493 #endif
494     if (items < 1 || items > 2)
495        croak_xs_usage(cv,  "THIS, tz = wxDateTime::Local");
496     {
497         wxDateTime__TimeZone    tz;
498         wxDateTime *    THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
499         wxDateTime_t    RETVAL;
500         dXSTARG;
501
502         if (items < 2)
503             tz = wxDateTime::Local;
504         else {
505     tz = (wxDateTime::TZ)SvIV(ST(1));
506         }
507
508         RETVAL = THIS->GetSecond(tz);
509         XSprePUSH; PUSHi((IV)RETVAL);
510     }
511     XSRETURN(1);
512 }
513
514
515 XS(XS_Wx__DateTime_GetMillisecond); /* prototype to pass -Wmissing-prototypes */
516 XS(XS_Wx__DateTime_GetMillisecond)
517 {
518 #ifdef dVAR
519     dVAR; dXSARGS;
520 #else
521     dXSARGS;
522 #endif
523     if (items < 1 || items > 2)
524        croak_xs_usage(cv,  "THIS, tz = wxDateTime::Local");
525     {
526         wxDateTime__TimeZone    tz;
527         wxDateTime *    THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
528         wxDateTime_t    RETVAL;
529         dXSTARG;
530
531         if (items < 2)
532             tz = wxDateTime::Local;
533         else {
534     tz = (wxDateTime::TZ)SvIV(ST(1));
535         }
536
537         RETVAL = THIS->GetMillisecond(tz);
538         XSprePUSH; PUSHi((IV)RETVAL);
539     }
540     XSRETURN(1);
541 }
542
543
544 XS(XS_Wx__DateTime_GetDayOfYear); /* prototype to pass -Wmissing-prototypes */
545 XS(XS_Wx__DateTime_GetDayOfYear)
546 {
547 #ifdef dVAR
548     dVAR; dXSARGS;
549 #else
550     dXSARGS;
551 #endif
552     if (items < 1 || items > 2)
553        croak_xs_usage(cv,  "THIS, tz = wxDateTime::Local");
554     {
555         wxDateTime__TimeZone    tz;
556         wxDateTime *    THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
557         wxDateTime_t    RETVAL;
558         dXSTARG;
559
560         if (items < 2)
561             tz = wxDateTime::Local;
562         else {
563     tz = (wxDateTime::TZ)SvIV(ST(1));
564         }
565
566         RETVAL = THIS->GetDayOfYear(tz);
567         XSprePUSH; PUSHi((IV)RETVAL);
568     }
569     XSRETURN(1);
570 }
571
572
573 XS(XS_Wx__DateTime_GetWeekOfYear); /* prototype to pass -Wmissing-prototypes */
574 XS(XS_Wx__DateTime_GetWeekOfYear)
575 {
576 #ifdef dVAR
577     dVAR; dXSARGS;
578 #else
579     dXSARGS;
580 #endif
581     if (items < 1 || items > 3)
582        croak_xs_usage(cv,  "THIS, flags = Monday_First, tz = wxDateTime::Local");
583     {
584         WeekFlags       flags;
585         wxDateTime__TimeZone    tz;
586         wxDateTime *    THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
587         wxDateTime_t    RETVAL;
588         dXSTARG;
589
590         if (items < 2)
591             flags = Monday_First;
592         else {
593             flags = (WeekFlags)SvIV(ST(1));
594         }
595
596         if (items < 3)
597             tz = wxDateTime::Local;
598         else {
599     tz = (wxDateTime::TZ)SvIV(ST(2));
600         }
601
602         RETVAL = THIS->GetWeekOfYear(flags, tz);
603         XSprePUSH; PUSHi((IV)RETVAL);
604     }
605     XSRETURN(1);
606 }
607
608
609 XS(XS_Wx__DateTime_GetWeekOfMonth); /* prototype to pass -Wmissing-prototypes */
610 XS(XS_Wx__DateTime_GetWeekOfMonth)
611 {
612 #ifdef dVAR
613     dVAR; dXSARGS;
614 #else
615     dXSARGS;
616 #endif
617     if (items < 1 || items > 3)
618        croak_xs_usage(cv,  "THIS, flags = Monday_First, tz = wxDateTime::Local");
619     {
620         WeekFlags       flags;
621         wxDateTime__TimeZone    tz;
622         wxDateTime *    THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
623         wxDateTime_t    RETVAL;
624         dXSTARG;
625
626         if (items < 2)
627             flags = Monday_First;
628         else {
629             flags = (WeekFlags)SvIV(ST(1));
630         }
631
632         if (items < 3)
633             tz = wxDateTime::Local;
634         else {
635     tz = (wxDateTime::TZ)SvIV(ST(2));
636         }
637
638         RETVAL = THIS->GetWeekOfMonth(flags, tz);
639         XSprePUSH; PUSHi((IV)RETVAL);
640     }
641     XSRETURN(1);
642 }
643
644
645 XS(XS_Wx__DateTime_SetTimeT); /* prototype to pass -Wmissing-prototypes */
646 XS(XS_Wx__DateTime_SetTimeT)
647 {
648 #ifdef dVAR
649     dVAR; dXSARGS;
650 #else
651     dXSARGS;
652 #endif
653     if (items != 2)
654        croak_xs_usage(cv,  "THIS, time");
655     {
656         time_t  time = (time_t)SvNV(ST(1));
657         wxDateTime *    THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
658         wxDateTime *    RETVAL;
659         RETVAL = &(THIS->Set( time )); 
660         ST(0) = sv_newmortal();
661     wxPli_non_object_2_sv( aTHX_ ST(0), RETVAL, "Wx::DateTime" );
662     wxPli_thread_sv_register( aTHX_ "Wx::DateTime", RETVAL, ST(0) );
663
664     }
665     XSRETURN(1);
666 }
667
668
669 XS(XS_Wx__DateTime_SetJDN); /* prototype to pass -Wmissing-prototypes */
670 XS(XS_Wx__DateTime_SetJDN)
671 {
672 #ifdef dVAR
673     dVAR; dXSARGS;
674 #else
675     dXSARGS;
676 #endif
677     if (items != 2)
678        croak_xs_usage(cv,  "THIS, jdn");
679     {
680         double  jdn = (double)SvNV(ST(1));
681         wxDateTime *    THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
682         wxDateTime *    RETVAL;
683         RETVAL = &(THIS->Set( jdn )); 
684         ST(0) = sv_newmortal();
685     wxPli_non_object_2_sv( aTHX_ ST(0), RETVAL, "Wx::DateTime" );
686     wxPli_thread_sv_register( aTHX_ "Wx::DateTime", RETVAL, ST(0) );
687
688     }
689     XSRETURN(1);
690 }
691
692
693 XS(XS_Wx__DateTime_SetHMS); /* prototype to pass -Wmissing-prototypes */
694 XS(XS_Wx__DateTime_SetHMS)
695 {
696 #ifdef dVAR
697     dVAR; dXSARGS;
698 #else
699     dXSARGS;
700 #endif
701     if (items < 2 || items > 5)
702        croak_xs_usage(cv,  "THIS, hour, minute = 0, second = 0, msec = 0");
703     {
704         wxDateTime_t    hour = (wxDateTime_t)SvIV(ST(1));
705         wxDateTime_t    minute;
706         wxDateTime_t    second;
707         wxDateTime_t    msec;
708         wxDateTime *    THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
709         wxDateTime *    RETVAL;
710
711         if (items < 3)
712             minute = 0;
713         else {
714             minute = (wxDateTime_t)SvIV(ST(2));
715         }
716
717         if (items < 4)
718             second = 0;
719         else {
720             second = (wxDateTime_t)SvIV(ST(3));
721         }
722
723         if (items < 5)
724             msec = 0;
725         else {
726             msec = (wxDateTime_t)SvIV(ST(4));
727         }
728         RETVAL = &(THIS->Set( hour, minute, second, msec )); 
729         ST(0) = sv_newmortal();
730     wxPli_non_object_2_sv( aTHX_ ST(0), RETVAL, "Wx::DateTime" );
731     wxPli_thread_sv_register( aTHX_ "Wx::DateTime", RETVAL, ST(0) );
732
733     }
734     XSRETURN(1);
735 }
736
737
738 XS(XS_Wx__DateTime_Set); /* prototype to pass -Wmissing-prototypes */
739 XS(XS_Wx__DateTime_Set)
740 {
741 #ifdef dVAR
742     dVAR; dXSARGS;
743 #else
744     dXSARGS;
745 #endif
746     if (items < 3 || items > 8)
747        croak_xs_usage(cv,  "THIS, day, month = Inv_Month, year = Inv_Year, hour, minute = 0, second = 0, msec = 0");
748     {
749         wxDateTime_t    day = (wxDateTime_t)SvIV(ST(1));
750         Month   month;
751         int     year;
752         wxDateTime_t    hour = (wxDateTime_t)SvIV(ST(4));
753         wxDateTime_t    minute;
754         wxDateTime_t    second;
755         wxDateTime_t    msec;
756         wxDateTime *    THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
757         wxDateTime *    RETVAL;
758
759         if (items < 3)
760             month = Inv_Month;
761         else {
762             month = (Month)SvIV(ST(2));
763         }
764
765         if (items < 4)
766             year = Inv_Year;
767         else {
768             year = (int)SvIV(ST(3));
769         }
770
771         if (items < 6)
772             minute = 0;
773         else {
774             minute = (wxDateTime_t)SvIV(ST(5));
775         }
776
777         if (items < 7)
778             second = 0;
779         else {
780             second = (wxDateTime_t)SvIV(ST(6));
781         }
782
783         if (items < 8)
784             msec = 0;
785         else {
786             msec = (wxDateTime_t)SvIV(ST(7));
787         }
788         RETVAL = &(THIS->Set( day, month, year,
789                                          hour, minute, second, msec ));
790
791         ST(0) = sv_newmortal();
792     wxPli_non_object_2_sv( aTHX_ ST(0), RETVAL, "Wx::DateTime" );
793     wxPli_thread_sv_register( aTHX_ "Wx::DateTime", RETVAL, ST(0) );
794
795     }
796     XSRETURN(1);
797 }
798
799
800 XS(XS_Wx__DateTime_SetYear); /* prototype to pass -Wmissing-prototypes */
801 XS(XS_Wx__DateTime_SetYear)
802 {
803 #ifdef dVAR
804     dVAR; dXSARGS;
805 #else
806     dXSARGS;
807 #endif
808     if (items != 2)
809        croak_xs_usage(cv,  "THIS, year");
810     {
811         int     year = (int)SvIV(ST(1));
812         wxDateTime *    THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
813         wxDateTime *    RETVAL;
814     RETVAL = new wxDateTime( THIS->SetYear( year ) );
815         ST(0) = sv_newmortal();
816     wxPli_non_object_2_sv( aTHX_ ST(0), RETVAL, "Wx::DateTime" );
817     wxPli_thread_sv_register( aTHX_ "Wx::DateTime", RETVAL, ST(0) );
818
819     }
820     XSRETURN(1);
821 }
822
823
824 XS(XS_Wx__DateTime_SetMonth); /* prototype to pass -Wmissing-prototypes */
825 XS(XS_Wx__DateTime_SetMonth)
826 {
827 #ifdef dVAR
828     dVAR; dXSARGS;
829 #else
830     dXSARGS;
831 #endif
832     if (items != 2)
833        croak_xs_usage(cv,  "THIS, month");
834     {
835         Month   month = (Month)SvIV(ST(1));
836         wxDateTime *    THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
837         wxDateTime *    RETVAL;
838     RETVAL = new wxDateTime( THIS->SetMonth( month ) );
839         ST(0) = sv_newmortal();
840     wxPli_non_object_2_sv( aTHX_ ST(0), RETVAL, "Wx::DateTime" );
841     wxPli_thread_sv_register( aTHX_ "Wx::DateTime", RETVAL, ST(0) );
842
843     }
844     XSRETURN(1);
845 }
846
847
848 XS(XS_Wx__DateTime_SetDay); /* prototype to pass -Wmissing-prototypes */
849 XS(XS_Wx__DateTime_SetDay)
850 {
851 #ifdef dVAR
852     dVAR; dXSARGS;
853 #else
854     dXSARGS;
855 #endif
856     if (items != 2)
857        croak_xs_usage(cv,  "THIS, day");
858     {
859         wxDateTime_t    day = (wxDateTime_t)SvIV(ST(1));
860         wxDateTime *    THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
861         wxDateTime *    RETVAL;
862     RETVAL = new wxDateTime( THIS->SetDay( day ) );
863         ST(0) = sv_newmortal();
864     wxPli_non_object_2_sv( aTHX_ ST(0), RETVAL, "Wx::DateTime" );
865     wxPli_thread_sv_register( aTHX_ "Wx::DateTime", RETVAL, ST(0) );
866
867     }
868     XSRETURN(1);
869 }
870
871
872 XS(XS_Wx__DateTime_SetHour); /* prototype to pass -Wmissing-prototypes */
873 XS(XS_Wx__DateTime_SetHour)
874 {
875 #ifdef dVAR
876     dVAR; dXSARGS;
877 #else
878     dXSARGS;
879 #endif
880     if (items != 2)
881        croak_xs_usage(cv,  "THIS, hour");
882     {
883         wxDateTime_t    hour = (wxDateTime_t)SvIV(ST(1));
884         wxDateTime *    THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
885         wxDateTime *    RETVAL;
886     RETVAL = new wxDateTime( THIS->SetHour( hour ) );
887         ST(0) = sv_newmortal();
888     wxPli_non_object_2_sv( aTHX_ ST(0), RETVAL, "Wx::DateTime" );
889     wxPli_thread_sv_register( aTHX_ "Wx::DateTime", RETVAL, ST(0) );
890
891     }
892     XSRETURN(1);
893 }
894
895
896 XS(XS_Wx__DateTime_SetMinute); /* prototype to pass -Wmissing-prototypes */
897 XS(XS_Wx__DateTime_SetMinute)
898 {
899 #ifdef dVAR
900     dVAR; dXSARGS;
901 #else
902     dXSARGS;
903 #endif
904     if (items != 2)
905        croak_xs_usage(cv,  "THIS, minute");
906     {
907         wxDateTime_t    minute = (wxDateTime_t)SvIV(ST(1));
908         wxDateTime *    THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
909         wxDateTime *    RETVAL;
910     RETVAL = new wxDateTime( THIS->SetMinute( minute ) );
911         ST(0) = sv_newmortal();
912     wxPli_non_object_2_sv( aTHX_ ST(0), RETVAL, "Wx::DateTime" );
913     wxPli_thread_sv_register( aTHX_ "Wx::DateTime", RETVAL, ST(0) );
914
915     }
916     XSRETURN(1);
917 }
918
919
920 XS(XS_Wx__DateTime_SetSecond); /* prototype to pass -Wmissing-prototypes */
921 XS(XS_Wx__DateTime_SetSecond)
922 {
923 #ifdef dVAR
924     dVAR; dXSARGS;
925 #else
926     dXSARGS;
927 #endif
928     if (items != 2)
929        croak_xs_usage(cv,  "THIS, second");
930     {
931         wxDateTime_t    second = (wxDateTime_t)SvIV(ST(1));
932         wxDateTime *    THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
933         wxDateTime *    RETVAL;
934     RETVAL = new wxDateTime( THIS->SetSecond( second ) );
935         ST(0) = sv_newmortal();
936     wxPli_non_object_2_sv( aTHX_ ST(0), RETVAL, "Wx::DateTime" );
937     wxPli_thread_sv_register( aTHX_ "Wx::DateTime", RETVAL, ST(0) );
938
939     }
940     XSRETURN(1);
941 }
942
943
944 XS(XS_Wx__DateTime_SetMillisecond); /* prototype to pass -Wmissing-prototypes */
945 XS(XS_Wx__DateTime_SetMillisecond)
946 {
947 #ifdef dVAR
948     dVAR; dXSARGS;
949 #else
950     dXSARGS;
951 #endif
952     if (items != 2)
953        croak_xs_usage(cv,  "THIS, millisecond");
954     {
955         wxDateTime_t    millisecond = (wxDateTime_t)SvIV(ST(1));
956         wxDateTime *    THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
957         wxDateTime *    RETVAL;
958     RETVAL = new wxDateTime( THIS->SetMillisecond( millisecond ) );
959         ST(0) = sv_newmortal();
960     wxPli_non_object_2_sv( aTHX_ ST(0), RETVAL, "Wx::DateTime" );
961     wxPli_thread_sv_register( aTHX_ "Wx::DateTime", RETVAL, ST(0) );
962
963     }
964     XSRETURN(1);
965 }
966
967
968 XS(XS_Wx__DateTime_FormatISODate); /* prototype to pass -Wmissing-prototypes */
969 XS(XS_Wx__DateTime_FormatISODate)
970 {
971 #ifdef dVAR
972     dVAR; dXSARGS;
973 #else
974     dXSARGS;
975 #endif
976     if (items != 1)
977        croak_xs_usage(cv,  "THIS");
978     {
979         wxDateTime *    THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
980         wxString        RETVAL;
981
982         RETVAL = THIS->FormatISODate();
983         ST(0) = sv_newmortal();
984     WXSTRING_OUTPUT( RETVAL, ST(0) );
985
986     }
987     XSRETURN(1);
988 }
989
990
991 XS(XS_Wx__DateTime_FormatTime); /* prototype to pass -Wmissing-prototypes */
992 XS(XS_Wx__DateTime_FormatTime)
993 {
994 #ifdef dVAR
995     dVAR; dXSARGS;
996 #else
997     dXSARGS;
998 #endif
999     if (items != 1)
1000        croak_xs_usage(cv,  "THIS");
1001     {
1002         wxDateTime *    THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
1003         wxString        RETVAL;
1004
1005         RETVAL = THIS->FormatTime();
1006         ST(0) = sv_newmortal();
1007     WXSTRING_OUTPUT( RETVAL, ST(0) );
1008
1009     }
1010     XSRETURN(1);
1011 }
1012
1013
1014 XS(XS_Wx__DateTime_FormatISOTime); /* prototype to pass -Wmissing-prototypes */
1015 XS(XS_Wx__DateTime_FormatISOTime)
1016 {
1017 #ifdef dVAR
1018     dVAR; dXSARGS;
1019 #else
1020     dXSARGS;
1021 #endif
1022     if (items != 1)
1023        croak_xs_usage(cv,  "THIS");
1024     {
1025         wxDateTime *    THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
1026         wxString        RETVAL;
1027
1028         RETVAL = THIS->FormatISOTime();
1029         ST(0) = sv_newmortal();
1030     WXSTRING_OUTPUT( RETVAL, ST(0) );
1031
1032     }
1033     XSRETURN(1);
1034 }
1035
1036 #if WXPERL_W_VERSION_LT( 2, 9, 0 )
1037 #define XSubPPtmpAAAA 1
1038
1039
1040 XS(XS_Wx__DateTime_ParseFormat); /* prototype to pass -Wmissing-prototypes */
1041 XS(XS_Wx__DateTime_ParseFormat)
1042 {
1043 #ifdef dVAR
1044     dVAR; dXSARGS;
1045 #else
1046     dXSARGS;
1047 #endif
1048     if (items < 2 || items > 4)
1049        croak_xs_usage(cv,  "THIS, date, format = wxDefaultDateTimeFormat, dateDef = wxDefaultDateTimePtr");
1050     {
1051         wxString        date;
1052         wxString        format;
1053         wxDateTime*     dateDef;
1054         wxDateTime *    THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
1055         wxString        RETVAL;
1056
1057     WXSTRING_INPUT( date, wxString, ST(1) );
1058
1059         if (items < 3)
1060             format = wxDefaultDateTimeFormat;
1061         else {
1062     WXSTRING_INPUT( format, wxString, ST(2) );
1063         }
1064
1065         if (items < 4)
1066             dateDef = wxDefaultDateTimePtr;
1067         else {
1068     dateDef = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(3), "Wx::DateTime" );
1069         }
1070     RETVAL = THIS->ParseFormat( date, format, *( dateDef ) );
1071         ST(0) = sv_newmortal();
1072     WXSTRING_OUTPUT( RETVAL, ST(0) );
1073
1074     }
1075     XSRETURN(1);
1076 }
1077
1078
1079 XS(XS_Wx__DateTime_ParseDate); /* prototype to pass -Wmissing-prototypes */
1080 XS(XS_Wx__DateTime_ParseDate)
1081 {
1082 #ifdef dVAR
1083     dVAR; dXSARGS;
1084 #else
1085     dXSARGS;
1086 #endif
1087     if (items != 2)
1088        croak_xs_usage(cv,  "THIS, date");
1089     {
1090         wxString        date;
1091         wxDateTime *    THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
1092         wxString        RETVAL;
1093
1094     WXSTRING_INPUT( date, wxString, ST(1) );
1095
1096         RETVAL = THIS->ParseDate(date);
1097         ST(0) = sv_newmortal();
1098     WXSTRING_OUTPUT( RETVAL, ST(0) );
1099
1100     }
1101     XSRETURN(1);
1102 }
1103
1104
1105 XS(XS_Wx__DateTime_ParseDateTime); /* prototype to pass -Wmissing-prototypes */
1106 XS(XS_Wx__DateTime_ParseDateTime)
1107 {
1108 #ifdef dVAR
1109     dVAR; dXSARGS;
1110 #else
1111     dXSARGS;
1112 #endif
1113     if (items != 2)
1114        croak_xs_usage(cv,  "THIS, date");
1115     {
1116         wxString        date;
1117         wxDateTime *    THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
1118         wxString        RETVAL;
1119
1120     WXSTRING_INPUT( date, wxString, ST(1) );
1121
1122         RETVAL = THIS->ParseDateTime(date);
1123         ST(0) = sv_newmortal();
1124     WXSTRING_OUTPUT( RETVAL, ST(0) );
1125
1126     }
1127     XSRETURN(1);
1128 }
1129
1130
1131 XS(XS_Wx__DateTime_ParseTime); /* prototype to pass -Wmissing-prototypes */
1132 XS(XS_Wx__DateTime_ParseTime)
1133 {
1134 #ifdef dVAR
1135     dVAR; dXSARGS;
1136 #else
1137     dXSARGS;
1138 #endif
1139     if (items != 2)
1140        croak_xs_usage(cv,  "THIS, date");
1141     {
1142         wxString        date;
1143         wxDateTime *    THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
1144         wxString        RETVAL;
1145
1146     WXSTRING_INPUT( date, wxString, ST(1) );
1147
1148         RETVAL = THIS->ParseTime(date);
1149         ST(0) = sv_newmortal();
1150     WXSTRING_OUTPUT( RETVAL, ST(0) );
1151
1152     }
1153     XSRETURN(1);
1154 }
1155
1156
1157 XS(XS_Wx__DateTime_ParseRfc822Date); /* prototype to pass -Wmissing-prototypes */
1158 XS(XS_Wx__DateTime_ParseRfc822Date)
1159 {
1160 #ifdef dVAR
1161     dVAR; dXSARGS;
1162 #else
1163     dXSARGS;
1164 #endif
1165     if (items != 2)
1166        croak_xs_usage(cv,  "THIS, date");
1167     {
1168         wxString        date;
1169         wxDateTime *    THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
1170         wxString        RETVAL;
1171
1172     WXSTRING_INPUT( date, wxString, ST(1) );
1173
1174         RETVAL = THIS->ParseRfc822Date(date);
1175         ST(0) = sv_newmortal();
1176     WXSTRING_OUTPUT( RETVAL, ST(0) );
1177
1178     }
1179     XSRETURN(1);
1180 }
1181
1182 #endif
1183
1184 XS(XS_Wx__DateTime_SetToCurrent); /* prototype to pass -Wmissing-prototypes */
1185 XS(XS_Wx__DateTime_SetToCurrent)
1186 {
1187 #ifdef dVAR
1188     dVAR; dXSARGS;
1189 #else
1190     dXSARGS;
1191 #endif
1192     if (items != 1)
1193        croak_xs_usage(cv,  "THIS");
1194     {
1195         wxDateTime *    THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
1196         wxDateTime *    RETVAL;
1197     RETVAL = new wxDateTime( THIS->SetToCurrent() );
1198         ST(0) = sv_newmortal();
1199     wxPli_non_object_2_sv( aTHX_ ST(0), RETVAL, "Wx::DateTime" );
1200     wxPli_thread_sv_register( aTHX_ "Wx::DateTime", RETVAL, ST(0) );
1201
1202     }
1203     XSRETURN(1);
1204 }
1205
1206
1207 XS(XS_Wx__DateTime_ResetTime); /* prototype to pass -Wmissing-prototypes */
1208 XS(XS_Wx__DateTime_ResetTime)
1209 {
1210 #ifdef dVAR
1211     dVAR; dXSARGS;
1212 #else
1213     dXSARGS;
1214 #endif
1215     if (items != 1)
1216        croak_xs_usage(cv,  "THIS");
1217     {
1218         wxDateTime *    THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
1219         wxDateTime *    RETVAL;
1220     RETVAL = new wxDateTime( THIS->ResetTime() );
1221         ST(0) = sv_newmortal();
1222     wxPli_non_object_2_sv( aTHX_ ST(0), RETVAL, "Wx::DateTime" );
1223     wxPli_thread_sv_register( aTHX_ "Wx::DateTime", RETVAL, ST(0) );
1224
1225     }
1226     XSRETURN(1);
1227 }
1228
1229
1230 XS(XS_Wx__DateTime_IsEqualTo); /* prototype to pass -Wmissing-prototypes */
1231 XS(XS_Wx__DateTime_IsEqualTo)
1232 {
1233 #ifdef dVAR
1234     dVAR; dXSARGS;
1235 #else
1236     dXSARGS;
1237 #endif
1238     if (items != 2)
1239        croak_xs_usage(cv,  "THIS, dt");
1240     {
1241         wxDateTime*    dt = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::DateTime" );
1242         wxDateTime *    THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
1243         bool    RETVAL;
1244     RETVAL = THIS->IsEqualTo( *( dt ) );
1245         ST(0) = boolSV(RETVAL);
1246         sv_2mortal(ST(0));
1247     }
1248     XSRETURN(1);
1249 }
1250
1251
1252 XS(XS_Wx__DateTime_IsEarlierThan); /* prototype to pass -Wmissing-prototypes */
1253 XS(XS_Wx__DateTime_IsEarlierThan)
1254 {
1255 #ifdef dVAR
1256     dVAR; dXSARGS;
1257 #else
1258     dXSARGS;
1259 #endif
1260     if (items != 2)
1261        croak_xs_usage(cv,  "THIS, dt");
1262     {
1263         wxDateTime*    dt = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::DateTime" );
1264         wxDateTime *    THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
1265         bool    RETVAL;
1266     RETVAL = THIS->IsEarlierThan( *( dt ) );
1267         ST(0) = boolSV(RETVAL);
1268         sv_2mortal(ST(0));
1269     }
1270     XSRETURN(1);
1271 }
1272
1273
1274 XS(XS_Wx__DateTime_IsLaterThan); /* prototype to pass -Wmissing-prototypes */
1275 XS(XS_Wx__DateTime_IsLaterThan)
1276 {
1277 #ifdef dVAR
1278     dVAR; dXSARGS;
1279 #else
1280     dXSARGS;
1281 #endif
1282     if (items != 2)
1283        croak_xs_usage(cv,  "THIS, dt");
1284     {
1285         wxDateTime*    dt = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::DateTime" );
1286         wxDateTime *    THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
1287         bool    RETVAL;
1288     RETVAL = THIS->IsLaterThan( *( dt ) );
1289         ST(0) = boolSV(RETVAL);
1290         sv_2mortal(ST(0));
1291     }
1292     XSRETURN(1);
1293 }
1294
1295
1296 XS(XS_Wx__DateTime_IsBetween); /* prototype to pass -Wmissing-prototypes */
1297 XS(XS_Wx__DateTime_IsBetween)
1298 {
1299 #ifdef dVAR
1300     dVAR; dXSARGS;
1301 #else
1302     dXSARGS;
1303 #endif
1304     if (items != 3)
1305        croak_xs_usage(cv,  "THIS, dt1, dt2");
1306     {
1307         wxDateTime*    dt1 = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::DateTime" );
1308         wxDateTime*    dt2 = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(2), "Wx::DateTime" );
1309         wxDateTime *    THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
1310         bool    RETVAL;
1311     RETVAL = THIS->IsBetween( *( dt1 ), *( dt2 ) );
1312         ST(0) = boolSV(RETVAL);
1313         sv_2mortal(ST(0));
1314     }
1315     XSRETURN(1);
1316 }
1317
1318
1319 XS(XS_Wx__DateTime_IsStrictlyBetween); /* prototype to pass -Wmissing-prototypes */
1320 XS(XS_Wx__DateTime_IsStrictlyBetween)
1321 {
1322 #ifdef dVAR
1323     dVAR; dXSARGS;
1324 #else
1325     dXSARGS;
1326 #endif
1327     if (items != 3)
1328        croak_xs_usage(cv,  "THIS, dt1, dt2");
1329     {
1330         wxDateTime*    dt1 = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::DateTime" );
1331         wxDateTime*    dt2 = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(2), "Wx::DateTime" );
1332         wxDateTime *    THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
1333         bool    RETVAL;
1334     RETVAL = THIS->IsStrictlyBetween( *( dt1 ), *( dt2 ) );
1335         ST(0) = boolSV(RETVAL);
1336         sv_2mortal(ST(0));
1337     }
1338     XSRETURN(1);
1339 }
1340
1341
1342 XS(XS_Wx__DateTime_IsSameDate); /* prototype to pass -Wmissing-prototypes */
1343 XS(XS_Wx__DateTime_IsSameDate)
1344 {
1345 #ifdef dVAR
1346     dVAR; dXSARGS;
1347 #else
1348     dXSARGS;
1349 #endif
1350     if (items != 2)
1351        croak_xs_usage(cv,  "THIS, dt");
1352     {
1353         wxDateTime*    dt = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::DateTime" );
1354         wxDateTime *    THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
1355         bool    RETVAL;
1356     RETVAL = THIS->IsSameDate( *( dt ) );
1357         ST(0) = boolSV(RETVAL);
1358         sv_2mortal(ST(0));
1359     }
1360     XSRETURN(1);
1361 }
1362
1363
1364 XS(XS_Wx__DateTime_IsSameTime); /* prototype to pass -Wmissing-prototypes */
1365 XS(XS_Wx__DateTime_IsSameTime)
1366 {
1367 #ifdef dVAR
1368     dVAR; dXSARGS;
1369 #else
1370     dXSARGS;
1371 #endif
1372     if (items != 2)
1373        croak_xs_usage(cv,  "THIS, dt");
1374     {
1375         wxDateTime*    dt = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::DateTime" );
1376         wxDateTime *    THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
1377         bool    RETVAL;
1378     RETVAL = THIS->IsSameTime( *( dt ) );
1379         ST(0) = boolSV(RETVAL);
1380         sv_2mortal(ST(0));
1381     }
1382     XSRETURN(1);
1383 }
1384
1385
1386 XS(XS_Wx__DateTime_AddDate); /* prototype to pass -Wmissing-prototypes */
1387 XS(XS_Wx__DateTime_AddDate)
1388 {
1389 #ifdef dVAR
1390     dVAR; dXSARGS;
1391 #else
1392     dXSARGS;
1393 #endif
1394     if (items != 2)
1395        croak_xs_usage(cv,  "THIS, ds");
1396     {
1397         wxDateSpan*    ds = (wxDateSpan *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::DateSpan" );
1398         wxDateTime *    THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
1399         wxDateTime *    RETVAL;
1400     RETVAL = new wxDateTime( THIS->Add( *( ds ) ) );
1401         ST(0) = sv_newmortal();
1402     wxPli_non_object_2_sv( aTHX_ ST(0), RETVAL, "Wx::DateTime" );
1403     wxPli_thread_sv_register( aTHX_ "Wx::DateTime", RETVAL, ST(0) );
1404
1405     }
1406     XSRETURN(1);
1407 }
1408
1409
1410 XS(XS_Wx__DateTime_AddTime); /* prototype to pass -Wmissing-prototypes */
1411 XS(XS_Wx__DateTime_AddTime)
1412 {
1413 #ifdef dVAR
1414     dVAR; dXSARGS;
1415 #else
1416     dXSARGS;
1417 #endif
1418     if (items != 2)
1419        croak_xs_usage(cv,  "THIS, ds");
1420     {
1421         wxTimeSpan*    ds = (wxTimeSpan *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::TimeSpan" );
1422         wxDateTime *    THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
1423         wxDateTime *    RETVAL;
1424     RETVAL = new wxDateTime( THIS->Add( *( ds ) ) );
1425         ST(0) = sv_newmortal();
1426     wxPli_non_object_2_sv( aTHX_ ST(0), RETVAL, "Wx::DateTime" );
1427     wxPli_thread_sv_register( aTHX_ "Wx::DateTime", RETVAL, ST(0) );
1428
1429     }
1430     XSRETURN(1);
1431 }
1432
1433
1434 XS(XS_Wx__DateTime_GetAmPmStrings); /* prototype to pass -Wmissing-prototypes */
1435 XS(XS_Wx__DateTime_GetAmPmStrings)
1436 {
1437 #ifdef dVAR
1438     dVAR; dXSARGS;
1439 #else
1440     dXSARGS;
1441 #endif
1442     if (items != 1)
1443        croak_xs_usage(cv,  "THIS");
1444     PERL_UNUSED_VAR(ax); /* -Wall */
1445     SP -= items;
1446     {
1447         wxDateTime *    THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
1448     wxString am, pm;
1449     THIS->GetAmPmStrings( &am, &pm );
1450     SV* ams = wxPli_wxString_2_sv( aTHX_ am, sv_newmortal() ),
1451       * pms = wxPli_wxString_2_sv( aTHX_ pm, sv_newmortal() );
1452     EXTEND( SP, 2 );
1453     PUSHs( ams );
1454     PUSHs( pms );    
1455         PUTBACK;
1456         return;
1457     }
1458 }
1459
1460
1461 XS(XS_Wx__DateTime_Today); /* prototype to pass -Wmissing-prototypes */
1462 XS(XS_Wx__DateTime_Today)
1463 {
1464 #ifdef dVAR
1465     dVAR; dXSARGS;
1466 #else
1467     dXSARGS;
1468 #endif
1469     if (items != 0)
1470        croak_xs_usage(cv,  "");
1471     {
1472         wxDateTime *    RETVAL;
1473     RETVAL = new wxDateTime( wxDateTime::Today() );
1474         ST(0) = sv_newmortal();
1475     wxPli_non_object_2_sv( aTHX_ ST(0), RETVAL, "Wx::DateTime" );
1476     wxPli_thread_sv_register( aTHX_ "Wx::DateTime", RETVAL, ST(0) );
1477
1478     }
1479     XSRETURN(1);
1480 }
1481
1482
1483 XS(XS_Wx__DateTime_Now); /* prototype to pass -Wmissing-prototypes */
1484 XS(XS_Wx__DateTime_Now)
1485 {
1486 #ifdef dVAR
1487     dVAR; dXSARGS;
1488 #else
1489     dXSARGS;
1490 #endif
1491     if (items != 0)
1492        croak_xs_usage(cv,  "");
1493     {
1494         wxDateTime *    RETVAL;
1495     RETVAL = new wxDateTime( wxDateTime::Now() );
1496         ST(0) = sv_newmortal();
1497     wxPli_non_object_2_sv( aTHX_ ST(0), RETVAL, "Wx::DateTime" );
1498     wxPli_thread_sv_register( aTHX_ "Wx::DateTime", RETVAL, ST(0) );
1499
1500     }
1501     XSRETURN(1);
1502 }
1503
1504
1505 XS(XS_Wx__DateTime_UNow); /* prototype to pass -Wmissing-prototypes */
1506 XS(XS_Wx__DateTime_UNow)
1507 {
1508 #ifdef dVAR
1509     dVAR; dXSARGS;
1510 #else
1511     dXSARGS;
1512 #endif
1513     if (items != 0)
1514        croak_xs_usage(cv,  "");
1515     {
1516         wxDateTime *    RETVAL;
1517     RETVAL = new wxDateTime( wxDateTime::UNow() );
1518         ST(0) = sv_newmortal();
1519     wxPli_non_object_2_sv( aTHX_ ST(0), RETVAL, "Wx::DateTime" );
1520     wxPli_thread_sv_register( aTHX_ "Wx::DateTime", RETVAL, ST(0) );
1521
1522     }
1523     XSRETURN(1);
1524 }
1525
1526
1527 XS(XS_Wx__DateTime_IsLeapYear); /* prototype to pass -Wmissing-prototypes */
1528 XS(XS_Wx__DateTime_IsLeapYear)
1529 {
1530 #ifdef dVAR
1531     dVAR; dXSARGS;
1532 #else
1533     dXSARGS;
1534 #endif
1535     if (items < 1 || items > 2)
1536        croak_xs_usage(cv,  "year, cal= Gregorian");
1537     {
1538         bool    RETVAL;
1539         int     year = (int)SvIV(ST(0));
1540         Calendar        cal;
1541
1542         if (items < 2)
1543             cal = Gregorian;
1544         else {
1545             cal = (Calendar)SvIV(ST(1));
1546         }
1547     RETVAL = wxDateTime::IsLeapYear( year, cal );
1548         ST(0) = boolSV(RETVAL);
1549         sv_2mortal(ST(0));
1550     }
1551     XSRETURN(1);
1552 }
1553
1554
1555 XS(XS_Wx__DateTime_GetMonthName); /* prototype to pass -Wmissing-prototypes */
1556 XS(XS_Wx__DateTime_GetMonthName)
1557 {
1558 #ifdef dVAR
1559     dVAR; dXSARGS;
1560 #else
1561     dXSARGS;
1562 #endif
1563     if (items < 1 || items > 2)
1564        croak_xs_usage(cv,  "month, flags= Name_Full");
1565     {
1566         wxString        RETVAL;
1567         Month   month = (Month)SvIV(ST(0));
1568         NameFlags       flags;
1569
1570         if (items < 2)
1571             flags = Name_Full;
1572         else {
1573             flags = (NameFlags)SvIV(ST(1));
1574         }
1575     RETVAL = wxDateTime::GetMonthName( month, flags );
1576         ST(0) = sv_newmortal();
1577     WXSTRING_OUTPUT( RETVAL, ST(0) );
1578
1579     }
1580     XSRETURN(1);
1581 }
1582
1583
1584 XS(XS_Wx__DateTime_GetWeekDayName); /* prototype to pass -Wmissing-prototypes */
1585 XS(XS_Wx__DateTime_GetWeekDayName)
1586 {
1587 #ifdef dVAR
1588     dVAR; dXSARGS;
1589 #else
1590     dXSARGS;
1591 #endif
1592     if (items < 1 || items > 2)
1593        croak_xs_usage(cv,  "weekday, flags= Name_Full");
1594     {
1595         wxString        RETVAL;
1596         WeekDay weekday = (WeekDay)SvIV(ST(0));
1597         NameFlags       flags;
1598
1599         if (items < 2)
1600             flags = Name_Full;
1601         else {
1602             flags = (NameFlags)SvIV(ST(1));
1603         }
1604     RETVAL = wxDateTime::GetWeekDayName( weekday, flags );
1605         ST(0) = sv_newmortal();
1606     WXSTRING_OUTPUT( RETVAL, ST(0) );
1607
1608     }
1609     XSRETURN(1);
1610 }
1611
1612
1613 XS(XS_Wx__DateTime_GetNumberOfDaysInYear); /* prototype to pass -Wmissing-prototypes */
1614 XS(XS_Wx__DateTime_GetNumberOfDaysInYear)
1615 {
1616 #ifdef dVAR
1617     dVAR; dXSARGS;
1618 #else
1619     dXSARGS;
1620 #endif
1621     if (items < 0 || items > 2)
1622        croak_xs_usage(cv,  "year= Inv_Year, cal= Gregorian");
1623     {
1624         wxDateTime_t    RETVAL;
1625         dXSTARG;
1626         int     year;
1627         Calendar        cal;
1628
1629         if (items < 1)
1630             year = Inv_Year;
1631         else {
1632             year = (int)SvIV(ST(0));
1633         }
1634
1635         if (items < 2)
1636             cal = Gregorian;
1637         else {
1638             cal = (Calendar)SvIV(ST(1));
1639         }
1640     RETVAL = wxDateTime::GetNumberOfDays( year, cal );
1641         XSprePUSH; PUSHi((IV)RETVAL);
1642     }
1643     XSRETURN(1);
1644 }
1645
1646
1647 XS(XS_Wx__DateTime_GetNumberOfDaysInMonth); /* prototype to pass -Wmissing-prototypes */
1648 XS(XS_Wx__DateTime_GetNumberOfDaysInMonth)
1649 {
1650 #ifdef dVAR
1651     dVAR; dXSARGS;
1652 #else
1653     dXSARGS;
1654 #endif
1655     if (items < 1 || items > 3)
1656        croak_xs_usage(cv,  "month, year= Inv_Year, cal= Gregorian");
1657     {
1658         wxDateTime_t    RETVAL;
1659         dXSTARG;
1660         Month   month = (Month)SvIV(ST(0));
1661         int     year;
1662         Calendar        cal;
1663
1664         if (items < 2)
1665             year = Inv_Year;
1666         else {
1667             year = (int)SvIV(ST(1));
1668         }
1669
1670         if (items < 3)
1671             cal = Gregorian;
1672         else {
1673             cal = (Calendar)SvIV(ST(2));
1674         }
1675     RETVAL = wxDateTime::GetNumberOfDays( month, year, cal );
1676         XSprePUSH; PUSHi((IV)RETVAL);
1677     }
1678     XSRETURN(1);
1679 }
1680
1681
1682 XS(XS_Wx__DateTime_GetCentury); /* prototype to pass -Wmissing-prototypes */
1683 XS(XS_Wx__DateTime_GetCentury)
1684 {
1685 #ifdef dVAR
1686     dVAR; dXSARGS;
1687 #else
1688     dXSARGS;
1689 #endif
1690     if (items < 0 || items > 1)
1691        croak_xs_usage(cv,  "year= Inv_Year");
1692     {
1693         int     RETVAL;
1694         dXSTARG;
1695         int     year;
1696
1697         if (items < 1)
1698             year = Inv_Year;
1699         else {
1700             year = (int)SvIV(ST(0));
1701         }
1702     RETVAL = wxDateTime::GetCentury( year );
1703         XSprePUSH; PUSHi((IV)RETVAL);
1704     }
1705     XSRETURN(1);
1706 }
1707
1708
1709 XS(XS_Wx__DateTime_GetCurrentYear); /* prototype to pass -Wmissing-prototypes */
1710 XS(XS_Wx__DateTime_GetCurrentYear)
1711 {
1712 #ifdef dVAR
1713     dVAR; dXSARGS;
1714 #else
1715     dXSARGS;
1716 #endif
1717     if (items < 0 || items > 1)
1718        croak_xs_usage(cv,  "cal= Gregorian");
1719     {
1720         int     RETVAL;
1721         dXSTARG;
1722         Calendar        cal;
1723
1724         if (items < 1)
1725             cal = Gregorian;
1726         else {
1727             cal = (Calendar)SvIV(ST(0));
1728         }
1729     RETVAL = wxDateTime::GetCurrentYear( cal );
1730         XSprePUSH; PUSHi((IV)RETVAL);
1731     }
1732     XSRETURN(1);
1733 }
1734
1735
1736 XS(XS_Wx__DateTime_GetCurrentMonth); /* prototype to pass -Wmissing-prototypes */
1737 XS(XS_Wx__DateTime_GetCurrentMonth)
1738 {
1739 #ifdef dVAR
1740     dVAR; dXSARGS;
1741 #else
1742     dXSARGS;
1743 #endif
1744     if (items < 0 || items > 1)
1745        croak_xs_usage(cv,  "cal= Gregorian");
1746     {
1747         int     RETVAL;
1748         dXSTARG;
1749         Calendar        cal;
1750
1751         if (items < 1)
1752             cal = Gregorian;
1753         else {
1754             cal = (Calendar)SvIV(ST(0));
1755         }
1756     RETVAL = wxDateTime::GetCurrentMonth( cal );
1757         XSprePUSH; PUSHi((IV)RETVAL);
1758     }
1759     XSRETURN(1);
1760 }
1761
1762
1763 /* INCLUDE: Returning to 'DateTime.xs' from 'perl -MExtUtils::XSpp::Cmd -e xspp -- -t ../../typemap.xsp XS/DateTime.xsp |' */
1764
1765
1766 /* INCLUDE:  Including 'perl -MExtUtils::XSpp::Cmd -e xspp -- -t ../../typemap.xsp XS/DateSpan.xsp |' from 'DateTime.xs' */
1767
1768 #include <wx/datetime.h>
1769
1770 XS(XS_Wx__DateSpan_new); /* prototype to pass -Wmissing-prototypes */
1771 XS(XS_Wx__DateSpan_new)
1772 {
1773 #ifdef dVAR
1774     dVAR; dXSARGS;
1775 #else
1776     dXSARGS;
1777 #endif
1778     if (items < 1 || items > 5)
1779        croak_xs_usage(cv,  "CLASS, year = 0, month = 0, week = 0, day = 0");
1780     {
1781         int     year;
1782         int     month;
1783         int     week;
1784         int     day;
1785         char *  CLASS = (char *)SvPV_nolen(ST(0));
1786         wxDateSpan *    RETVAL;
1787
1788         if (items < 2)
1789             year = 0;
1790         else {
1791             year = (int)SvIV(ST(1));
1792         }
1793
1794         if (items < 3)
1795             month = 0;
1796         else {
1797             month = (int)SvIV(ST(2));
1798         }
1799
1800         if (items < 4)
1801             week = 0;
1802         else {
1803             week = (int)SvIV(ST(3));
1804         }
1805
1806         if (items < 5)
1807             day = 0;
1808         else {
1809             day = (int)SvIV(ST(4));
1810         }
1811
1812         RETVAL = new wxDateSpan(year, month, week, day);
1813         ST(0) = sv_newmortal();
1814     wxPli_non_object_2_sv( aTHX_ ST(0), RETVAL, "Wx::DateSpan" );
1815
1816     }
1817     XSRETURN(1);
1818 }
1819
1820
1821 XS(XS_Wx__DateSpan_GetDays); /* prototype to pass -Wmissing-prototypes */
1822 XS(XS_Wx__DateSpan_GetDays)
1823 {
1824 #ifdef dVAR
1825     dVAR; dXSARGS;
1826 #else
1827     dXSARGS;
1828 #endif
1829     if (items != 1)
1830        croak_xs_usage(cv,  "THIS");
1831     {
1832         wxDateSpan *    THIS = (wxDateSpan *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateSpan" );
1833         int     RETVAL;
1834         dXSTARG;
1835
1836         RETVAL = THIS->GetDays();
1837         XSprePUSH; PUSHi((IV)RETVAL);
1838     }
1839     XSRETURN(1);
1840 }
1841
1842
1843 XS(XS_Wx__DateSpan_GetMonths); /* prototype to pass -Wmissing-prototypes */
1844 XS(XS_Wx__DateSpan_GetMonths)
1845 {
1846 #ifdef dVAR
1847     dVAR; dXSARGS;
1848 #else
1849     dXSARGS;
1850 #endif
1851     if (items != 1)
1852        croak_xs_usage(cv,  "THIS");
1853     {
1854         wxDateSpan *    THIS = (wxDateSpan *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateSpan" );
1855         int     RETVAL;
1856         dXSTARG;
1857
1858         RETVAL = THIS->GetMonths();
1859         XSprePUSH; PUSHi((IV)RETVAL);
1860     }
1861     XSRETURN(1);
1862 }
1863
1864
1865 XS(XS_Wx__DateSpan_GetTotalDays); /* prototype to pass -Wmissing-prototypes */
1866 XS(XS_Wx__DateSpan_GetTotalDays)
1867 {
1868 #ifdef dVAR
1869     dVAR; dXSARGS;
1870 #else
1871     dXSARGS;
1872 #endif
1873     if (items != 1)
1874        croak_xs_usage(cv,  "THIS");
1875     {
1876         wxDateSpan *    THIS = (wxDateSpan *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateSpan" );
1877         int     RETVAL;
1878         dXSTARG;
1879
1880         RETVAL = THIS->GetTotalDays();
1881         XSprePUSH; PUSHi((IV)RETVAL);
1882     }
1883     XSRETURN(1);
1884 }
1885
1886
1887 XS(XS_Wx__DateSpan_GetWeeks); /* prototype to pass -Wmissing-prototypes */
1888 XS(XS_Wx__DateSpan_GetWeeks)
1889 {
1890 #ifdef dVAR
1891     dVAR; dXSARGS;
1892 #else
1893     dXSARGS;
1894 #endif
1895     if (items != 1)
1896        croak_xs_usage(cv,  "THIS");
1897     {
1898         wxDateSpan *    THIS = (wxDateSpan *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateSpan" );
1899         int     RETVAL;
1900         dXSTARG;
1901
1902         RETVAL = THIS->GetWeeks();
1903         XSprePUSH; PUSHi((IV)RETVAL);
1904     }
1905     XSRETURN(1);
1906 }
1907
1908
1909 XS(XS_Wx__DateSpan_GetYears); /* prototype to pass -Wmissing-prototypes */
1910 XS(XS_Wx__DateSpan_GetYears)
1911 {
1912 #ifdef dVAR
1913     dVAR; dXSARGS;
1914 #else
1915     dXSARGS;
1916 #endif
1917     if (items != 1)
1918        croak_xs_usage(cv,  "THIS");
1919     {
1920         wxDateSpan *    THIS = (wxDateSpan *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateSpan" );
1921         int     RETVAL;
1922         dXSTARG;
1923
1924         RETVAL = THIS->GetYears();
1925         XSprePUSH; PUSHi((IV)RETVAL);
1926     }
1927     XSRETURN(1);
1928 }
1929
1930
1931 XS(XS_Wx__DateSpan_Add); /* prototype to pass -Wmissing-prototypes */
1932 XS(XS_Wx__DateSpan_Add)
1933 {
1934 #ifdef dVAR
1935     dVAR; dXSARGS;
1936 #else
1937     dXSARGS;
1938 #endif
1939     if (items != 2)
1940        croak_xs_usage(cv,  "THIS, ds");
1941     {
1942         wxDateSpan*    ds = (wxDateSpan *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::DateSpan" );
1943         wxDateSpan *    THIS = (wxDateSpan *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateSpan" );
1944         wxDateSpan *    RETVAL;
1945     RETVAL = new wxDateSpan( THIS->Add( *( ds ) ) );
1946         ST(0) = sv_newmortal();
1947     wxPli_non_object_2_sv( aTHX_ ST(0), RETVAL, "Wx::DateSpan" );
1948
1949     }
1950     XSRETURN(1);
1951 }
1952
1953
1954 XS(XS_Wx__DateSpan_Multiply); /* prototype to pass -Wmissing-prototypes */
1955 XS(XS_Wx__DateSpan_Multiply)
1956 {
1957 #ifdef dVAR
1958     dVAR; dXSARGS;
1959 #else
1960     dXSARGS;
1961 #endif
1962     if (items != 2)
1963        croak_xs_usage(cv,  "THIS, factor");
1964     {
1965         int     factor = (int)SvIV(ST(1));
1966         wxDateSpan *    THIS = (wxDateSpan *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateSpan" );
1967         wxDateSpan *    RETVAL;
1968     RETVAL = new wxDateSpan( THIS->Multiply( factor ) );
1969         ST(0) = sv_newmortal();
1970     wxPli_non_object_2_sv( aTHX_ ST(0), RETVAL, "Wx::DateSpan" );
1971
1972     }
1973     XSRETURN(1);
1974 }
1975
1976
1977 XS(XS_Wx__DateSpan_Neg); /* prototype to pass -Wmissing-prototypes */
1978 XS(XS_Wx__DateSpan_Neg)
1979 {
1980 #ifdef dVAR
1981     dVAR; dXSARGS;
1982 #else
1983     dXSARGS;
1984 #endif
1985     if (items != 1)
1986        croak_xs_usage(cv,  "THIS");
1987     {
1988         wxDateSpan *    THIS = (wxDateSpan *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateSpan" );
1989         wxDateSpan *    RETVAL;
1990     RETVAL = new wxDateSpan( THIS->Neg() );
1991         ST(0) = sv_newmortal();
1992     wxPli_non_object_2_sv( aTHX_ ST(0), RETVAL, "Wx::DateSpan" );
1993
1994     }
1995     XSRETURN(1);
1996 }
1997
1998
1999 XS(XS_Wx__DateSpan_SetDays); /* prototype to pass -Wmissing-prototypes */
2000 XS(XS_Wx__DateSpan_SetDays)
2001 {
2002 #ifdef dVAR
2003     dVAR; dXSARGS;
2004 #else
2005     dXSARGS;
2006 #endif
2007     if (items != 2)
2008        croak_xs_usage(cv,  "THIS, n");
2009     {
2010         int     n = (int)SvIV(ST(1));
2011         wxDateSpan *    THIS = (wxDateSpan *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateSpan" );
2012         wxDateSpan *    RETVAL;
2013     RETVAL = new wxDateSpan( THIS->SetDays( n ) );
2014         ST(0) = sv_newmortal();
2015     wxPli_non_object_2_sv( aTHX_ ST(0), RETVAL, "Wx::DateSpan" );
2016
2017     }
2018     XSRETURN(1);
2019 }
2020
2021
2022 XS(XS_Wx__DateSpan_SetYears); /* prototype to pass -Wmissing-prototypes */
2023 XS(XS_Wx__DateSpan_SetYears)
2024 {
2025 #ifdef dVAR
2026     dVAR; dXSARGS;
2027 #else
2028     dXSARGS;
2029 #endif
2030     if (items != 2)
2031        croak_xs_usage(cv,  "THIS, n");
2032     {
2033         int     n = (int)SvIV(ST(1));
2034         wxDateSpan *    THIS = (wxDateSpan *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateSpan" );
2035         wxDateSpan *    RETVAL;
2036     RETVAL = new wxDateSpan( THIS->SetYears( n ) );
2037         ST(0) = sv_newmortal();
2038     wxPli_non_object_2_sv( aTHX_ ST(0), RETVAL, "Wx::DateSpan" );
2039
2040     }
2041     XSRETURN(1);
2042 }
2043
2044
2045 XS(XS_Wx__DateSpan_SetMonths); /* prototype to pass -Wmissing-prototypes */
2046 XS(XS_Wx__DateSpan_SetMonths)
2047 {
2048 #ifdef dVAR
2049     dVAR; dXSARGS;
2050 #else
2051     dXSARGS;
2052 #endif
2053     if (items != 2)
2054        croak_xs_usage(cv,  "THIS, n");
2055     {
2056         int     n = (int)SvIV(ST(1));
2057         wxDateSpan *    THIS = (wxDateSpan *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateSpan" );
2058         wxDateSpan *    RETVAL;
2059     RETVAL = new wxDateSpan( THIS->SetMonths( n ) );
2060         ST(0) = sv_newmortal();
2061     wxPli_non_object_2_sv( aTHX_ ST(0), RETVAL, "Wx::DateSpan" );
2062
2063     }
2064     XSRETURN(1);
2065 }
2066
2067
2068 XS(XS_Wx__DateSpan_SetWeeks); /* prototype to pass -Wmissing-prototypes */
2069 XS(XS_Wx__DateSpan_SetWeeks)
2070 {
2071 #ifdef dVAR
2072     dVAR; dXSARGS;
2073 #else
2074     dXSARGS;
2075 #endif
2076     if (items != 2)
2077        croak_xs_usage(cv,  "THIS, n");
2078     {
2079         int     n = (int)SvIV(ST(1));
2080         wxDateSpan *    THIS = (wxDateSpan *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateSpan" );
2081         wxDateSpan *    RETVAL;
2082     RETVAL = new wxDateSpan( THIS->SetWeeks( n ) );
2083         ST(0) = sv_newmortal();
2084     wxPli_non_object_2_sv( aTHX_ ST(0), RETVAL, "Wx::DateSpan" );
2085
2086     }
2087     XSRETURN(1);
2088 }
2089
2090
2091 XS(XS_Wx__DateSpan_Subtract); /* prototype to pass -Wmissing-prototypes */
2092 XS(XS_Wx__DateSpan_Subtract)
2093 {
2094 #ifdef dVAR
2095     dVAR; dXSARGS;
2096 #else
2097     dXSARGS;
2098 #endif
2099     if (items != 2)
2100        croak_xs_usage(cv,  "THIS, ds");
2101     {
2102         wxDateSpan*    ds = (wxDateSpan *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::DateSpan" );
2103         wxDateSpan *    THIS = (wxDateSpan *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateSpan" );
2104         wxDateSpan *    RETVAL;
2105     RETVAL = new wxDateSpan( THIS->Subtract( *( ds ) ) );
2106         ST(0) = sv_newmortal();
2107     wxPli_non_object_2_sv( aTHX_ ST(0), RETVAL, "Wx::DateSpan" );
2108
2109     }
2110     XSRETURN(1);
2111 }
2112
2113
2114 /* INCLUDE: Returning to 'DateTime.xs' from 'perl -MExtUtils::XSpp::Cmd -e xspp -- -t ../../typemap.xsp XS/DateSpan.xsp |' */
2115
2116
2117 /* INCLUDE:  Including 'perl -MExtUtils::XSpp::Cmd -e xspp -- -t ../../typemap.xsp XS/TimeSpan.xsp |' from 'DateTime.xs' */
2118
2119 #include <wx/datetime.h>
2120
2121 XS(XS_Wx__TimeSpan_new); /* prototype to pass -Wmissing-prototypes */
2122 XS(XS_Wx__TimeSpan_new)
2123 {
2124 #ifdef dVAR
2125     dVAR; dXSARGS;
2126 #else
2127     dXSARGS;
2128 #endif
2129     if (items != 1)
2130        croak_xs_usage(cv,  "CLASS");
2131     {
2132         char *  CLASS = (char *)SvPV_nolen(ST(0));
2133         wxTimeSpan *    RETVAL;
2134
2135         RETVAL = new wxTimeSpan();
2136         ST(0) = sv_newmortal();
2137     wxPli_non_object_2_sv( aTHX_ ST(0), RETVAL, "Wx::TimeSpan" );
2138
2139     }
2140     XSRETURN(1);
2141 }
2142
2143
2144 XS(XS_Wx__TimeSpan_newFromHMS); /* prototype to pass -Wmissing-prototypes */
2145 XS(XS_Wx__TimeSpan_newFromHMS)
2146 {
2147 #ifdef dVAR
2148     dVAR; dXSARGS;
2149 #else
2150     dXSARGS;
2151 #endif
2152     if (items < 1 || items > 5)
2153        croak_xs_usage(cv,  "CLASS, hour = 0, minute = 0, second = 0, millisec = 0");
2154     {
2155         long    hour;
2156         long    minute;
2157         long    second;
2158         long    millisec;
2159         char *  CLASS = (char *)SvPV_nolen(ST(0));
2160         wxTimeSpan *    RETVAL;
2161
2162         if (items < 2)
2163             hour = 0;
2164         else {
2165             hour = (long)SvIV(ST(1));
2166         }
2167
2168         if (items < 3)
2169             minute = 0;
2170         else {
2171             minute = (long)SvIV(ST(2));
2172         }
2173
2174         if (items < 4)
2175             second = 0;
2176         else {
2177             second = (long)SvIV(ST(3));
2178         }
2179
2180         if (items < 5)
2181             millisec = 0;
2182         else {
2183             millisec = (long)SvIV(ST(4));
2184         }
2185     RETVAL = new wxTimeSpan( hour, minute, second, millisec );
2186         ST(0) = sv_newmortal();
2187     wxPli_non_object_2_sv( aTHX_ ST(0), RETVAL, "Wx::TimeSpan" );
2188
2189     }
2190     XSRETURN(1);
2191 }
2192
2193
2194 XS(XS_Wx__TimeSpan_GetHours); /* prototype to pass -Wmissing-prototypes */
2195 XS(XS_Wx__TimeSpan_GetHours)
2196 {
2197 #ifdef dVAR
2198     dVAR; dXSARGS;
2199 #else
2200     dXSARGS;
2201 #endif
2202     if (items != 1)
2203        croak_xs_usage(cv,  "THIS");
2204     {
2205         wxTimeSpan *    THIS = (wxTimeSpan *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::TimeSpan" );
2206         int     RETVAL;
2207         dXSTARG;
2208
2209         RETVAL = THIS->GetHours();
2210         XSprePUSH; PUSHi((IV)RETVAL);
2211     }
2212     XSRETURN(1);
2213 }
2214
2215
2216 XS(XS_Wx__TimeSpan_GetDays); /* prototype to pass -Wmissing-prototypes */
2217 XS(XS_Wx__TimeSpan_GetDays)
2218 {
2219 #ifdef dVAR
2220     dVAR; dXSARGS;
2221 #else
2222     dXSARGS;
2223 #endif
2224     if (items != 1)
2225        croak_xs_usage(cv,  "THIS");
2226     {
2227         wxTimeSpan *    THIS = (wxTimeSpan *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::TimeSpan" );
2228         int     RETVAL;
2229         dXSTARG;
2230
2231         RETVAL = THIS->GetDays();
2232         XSprePUSH; PUSHi((IV)RETVAL);
2233     }
2234     XSRETURN(1);
2235 }
2236
2237
2238 XS(XS_Wx__TimeSpan_GetWeeks); /* prototype to pass -Wmissing-prototypes */
2239 XS(XS_Wx__TimeSpan_GetWeeks)
2240 {
2241 #ifdef dVAR
2242     dVAR; dXSARGS;
2243 #else
2244     dXSARGS;
2245 #endif
2246     if (items != 1)
2247        croak_xs_usage(cv,  "THIS");
2248     {
2249         wxTimeSpan *    THIS = (wxTimeSpan *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::TimeSpan" );
2250         int     RETVAL;
2251         dXSTARG;
2252
2253         RETVAL = THIS->GetWeeks();
2254         XSprePUSH; PUSHi((IV)RETVAL);
2255     }
2256     XSRETURN(1);
2257 }
2258
2259
2260 XS(XS_Wx__TimeSpan_IsNull); /* prototype to pass -Wmissing-prototypes */
2261 XS(XS_Wx__TimeSpan_IsNull)
2262 {
2263 #ifdef dVAR
2264     dVAR; dXSARGS;
2265 #else
2266     dXSARGS;
2267 #endif
2268     if (items != 1)
2269        croak_xs_usage(cv,  "THIS");
2270     {
2271         wxTimeSpan *    THIS = (wxTimeSpan *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::TimeSpan" );
2272         bool    RETVAL;
2273
2274         RETVAL = THIS->IsNull();
2275         ST(0) = boolSV(RETVAL);
2276         sv_2mortal(ST(0));
2277     }
2278     XSRETURN(1);
2279 }
2280
2281
2282 XS(XS_Wx__TimeSpan_IsPositive); /* prototype to pass -Wmissing-prototypes */
2283 XS(XS_Wx__TimeSpan_IsPositive)
2284 {
2285 #ifdef dVAR
2286     dVAR; dXSARGS;
2287 #else
2288     dXSARGS;
2289 #endif
2290     if (items != 1)
2291        croak_xs_usage(cv,  "THIS");
2292     {
2293         wxTimeSpan *    THIS = (wxTimeSpan *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::TimeSpan" );
2294         bool    RETVAL;
2295
2296         RETVAL = THIS->IsPositive();
2297         ST(0) = boolSV(RETVAL);
2298         sv_2mortal(ST(0));
2299     }
2300     XSRETURN(1);
2301 }
2302
2303
2304 XS(XS_Wx__TimeSpan_IsNegative); /* prototype to pass -Wmissing-prototypes */
2305 XS(XS_Wx__TimeSpan_IsNegative)
2306 {
2307 #ifdef dVAR
2308     dVAR; dXSARGS;
2309 #else
2310     dXSARGS;
2311 #endif
2312     if (items != 1)
2313        croak_xs_usage(cv,  "THIS");
2314     {
2315         wxTimeSpan *    THIS = (wxTimeSpan *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::TimeSpan" );
2316         bool    RETVAL;
2317
2318         RETVAL = THIS->IsNegative();
2319         ST(0) = boolSV(RETVAL);
2320         sv_2mortal(ST(0));
2321     }
2322     XSRETURN(1);
2323 }
2324
2325
2326 XS(XS_Wx__TimeSpan_IsEqualTo); /* prototype to pass -Wmissing-prototypes */
2327 XS(XS_Wx__TimeSpan_IsEqualTo)
2328 {
2329 #ifdef dVAR
2330     dVAR; dXSARGS;
2331 #else
2332     dXSARGS;
2333 #endif
2334     if (items != 2)
2335        croak_xs_usage(cv,  "THIS, ts");
2336     {
2337         wxTimeSpan*    ts = (wxTimeSpan *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::TimeSpan" );
2338         wxTimeSpan *    THIS = (wxTimeSpan *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::TimeSpan" );
2339         bool    RETVAL;
2340     RETVAL = THIS->IsEqualTo( *( ts ) );
2341         ST(0) = boolSV(RETVAL);
2342         sv_2mortal(ST(0));
2343     }
2344     XSRETURN(1);
2345 }
2346
2347
2348 XS(XS_Wx__TimeSpan_IsLongerThan); /* prototype to pass -Wmissing-prototypes */
2349 XS(XS_Wx__TimeSpan_IsLongerThan)
2350 {
2351 #ifdef dVAR
2352     dVAR; dXSARGS;
2353 #else
2354     dXSARGS;
2355 #endif
2356     if (items != 2)
2357        croak_xs_usage(cv,  "THIS, ts");
2358     {
2359         wxTimeSpan*    ts = (wxTimeSpan *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::TimeSpan" );
2360         wxTimeSpan *    THIS = (wxTimeSpan *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::TimeSpan" );
2361         bool    RETVAL;
2362     RETVAL = THIS->IsLongerThan( *( ts ) );
2363         ST(0) = boolSV(RETVAL);
2364         sv_2mortal(ST(0));
2365     }
2366     XSRETURN(1);
2367 }
2368
2369
2370 XS(XS_Wx__TimeSpan_IsShorterThan); /* prototype to pass -Wmissing-prototypes */
2371 XS(XS_Wx__TimeSpan_IsShorterThan)
2372 {
2373 #ifdef dVAR
2374     dVAR; dXSARGS;
2375 #else
2376     dXSARGS;
2377 #endif
2378     if (items != 2)
2379        croak_xs_usage(cv,  "THIS, ts");
2380     {
2381         wxTimeSpan*    ts = (wxTimeSpan *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::TimeSpan" );
2382         wxTimeSpan *    THIS = (wxTimeSpan *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::TimeSpan" );
2383         bool    RETVAL;
2384     RETVAL = THIS->IsShorterThan( *( ts ) );
2385         ST(0) = boolSV(RETVAL);
2386         sv_2mortal(ST(0));
2387     }
2388     XSRETURN(1);
2389 }
2390
2391
2392 /* INCLUDE: Returning to 'DateTime.xs' from 'perl -MExtUtils::XSpp::Cmd -e xspp -- -t ../../typemap.xsp XS/TimeSpan.xsp |' */
2393
2394 #if defined(__WXMSW__)
2395 #undef XS
2396 #define XS( name ) WXXS( name )
2397 #endif
2398 #ifdef __cplusplus
2399 extern "C"
2400 #endif
2401 XS(boot_Wx__DateTime); /* prototype to pass -Wmissing-prototypes */
2402 XS(boot_Wx__DateTime)
2403 {
2404 #ifdef dVAR
2405     dVAR; dXSARGS;
2406 #else
2407     dXSARGS;
2408 #endif
2409 #if (PERL_REVISION == 5 && PERL_VERSION < 9)
2410     char* file = __FILE__;
2411 #else
2412     const char* file = __FILE__;
2413 #endif
2414
2415     PERL_UNUSED_VAR(cv); /* -W */
2416     PERL_UNUSED_VAR(items); /* -W */
2417     XS_VERSION_BOOTCHECK ;
2418
2419         newXS("Wx::DateTime::new", XS_Wx__DateTime_new, file);
2420         newXS("Wx::DateTime::newFromTimeT", XS_Wx__DateTime_newFromTimeT, file);
2421         newXS("Wx::DateTime::newFromDMY", XS_Wx__DateTime_newFromDMY, file);
2422         newXS("Wx::DateTime::CLONE", XS_Wx__DateTime_CLONE, file);
2423         newXS("Wx::DateTime::DESTROY", XS_Wx__DateTime_DESTROY, file);
2424         newXS("Wx::DateTime::Format", XS_Wx__DateTime_Format, file);
2425         newXS("Wx::DateTime::FormatDate", XS_Wx__DateTime_FormatDate, file);
2426         newXS("Wx::DateTime::GetYear", XS_Wx__DateTime_GetYear, file);
2427         newXS("Wx::DateTime::GetMonth", XS_Wx__DateTime_GetMonth, file);
2428         newXS("Wx::DateTime::GetDay", XS_Wx__DateTime_GetDay, file);
2429         newXS("Wx::DateTime::GetWeekDay", XS_Wx__DateTime_GetWeekDay, file);
2430         newXS("Wx::DateTime::GetHour", XS_Wx__DateTime_GetHour, file);
2431         newXS("Wx::DateTime::GetMinute", XS_Wx__DateTime_GetMinute, file);
2432         newXS("Wx::DateTime::GetSecond", XS_Wx__DateTime_GetSecond, file);
2433         newXS("Wx::DateTime::GetMillisecond", XS_Wx__DateTime_GetMillisecond, file);
2434         newXS("Wx::DateTime::GetDayOfYear", XS_Wx__DateTime_GetDayOfYear, file);
2435         newXS("Wx::DateTime::GetWeekOfYear", XS_Wx__DateTime_GetWeekOfYear, file);
2436         newXS("Wx::DateTime::GetWeekOfMonth", XS_Wx__DateTime_GetWeekOfMonth, file);
2437         newXS("Wx::DateTime::SetTimeT", XS_Wx__DateTime_SetTimeT, file);
2438         newXS("Wx::DateTime::SetJDN", XS_Wx__DateTime_SetJDN, file);
2439         newXS("Wx::DateTime::SetHMS", XS_Wx__DateTime_SetHMS, file);
2440         newXS("Wx::DateTime::Set", XS_Wx__DateTime_Set, file);
2441         newXS("Wx::DateTime::SetYear", XS_Wx__DateTime_SetYear, file);
2442         newXS("Wx::DateTime::SetMonth", XS_Wx__DateTime_SetMonth, file);
2443         newXS("Wx::DateTime::SetDay", XS_Wx__DateTime_SetDay, file);
2444         newXS("Wx::DateTime::SetHour", XS_Wx__DateTime_SetHour, file);
2445         newXS("Wx::DateTime::SetMinute", XS_Wx__DateTime_SetMinute, file);
2446         newXS("Wx::DateTime::SetSecond", XS_Wx__DateTime_SetSecond, file);
2447         newXS("Wx::DateTime::SetMillisecond", XS_Wx__DateTime_SetMillisecond, file);
2448         newXS("Wx::DateTime::FormatISODate", XS_Wx__DateTime_FormatISODate, file);
2449         newXS("Wx::DateTime::FormatTime", XS_Wx__DateTime_FormatTime, file);
2450         newXS("Wx::DateTime::FormatISOTime", XS_Wx__DateTime_FormatISOTime, file);
2451 #if XSubPPtmpAAAA
2452         newXS("Wx::DateTime::ParseFormat", XS_Wx__DateTime_ParseFormat, file);
2453         newXS("Wx::DateTime::ParseDate", XS_Wx__DateTime_ParseDate, file);
2454         newXS("Wx::DateTime::ParseDateTime", XS_Wx__DateTime_ParseDateTime, file);
2455         newXS("Wx::DateTime::ParseTime", XS_Wx__DateTime_ParseTime, file);
2456         newXS("Wx::DateTime::ParseRfc822Date", XS_Wx__DateTime_ParseRfc822Date, file);
2457 #endif
2458         newXS("Wx::DateTime::SetToCurrent", XS_Wx__DateTime_SetToCurrent, file);
2459         newXS("Wx::DateTime::ResetTime", XS_Wx__DateTime_ResetTime, file);
2460         newXS("Wx::DateTime::IsEqualTo", XS_Wx__DateTime_IsEqualTo, file);
2461         newXS("Wx::DateTime::IsEarlierThan", XS_Wx__DateTime_IsEarlierThan, file);
2462         newXS("Wx::DateTime::IsLaterThan", XS_Wx__DateTime_IsLaterThan, file);
2463         newXS("Wx::DateTime::IsBetween", XS_Wx__DateTime_IsBetween, file);
2464         newXS("Wx::DateTime::IsStrictlyBetween", XS_Wx__DateTime_IsStrictlyBetween, file);
2465         newXS("Wx::DateTime::IsSameDate", XS_Wx__DateTime_IsSameDate, file);
2466         newXS("Wx::DateTime::IsSameTime", XS_Wx__DateTime_IsSameTime, file);
2467         newXS("Wx::DateTime::AddDate", XS_Wx__DateTime_AddDate, file);
2468         newXS("Wx::DateTime::AddTime", XS_Wx__DateTime_AddTime, file);
2469         newXS("Wx::DateTime::GetAmPmStrings", XS_Wx__DateTime_GetAmPmStrings, file);
2470         newXS("Wx::DateTime::Today", XS_Wx__DateTime_Today, file);
2471         newXS("Wx::DateTime::Now", XS_Wx__DateTime_Now, file);
2472         newXS("Wx::DateTime::UNow", XS_Wx__DateTime_UNow, file);
2473         newXS("Wx::DateTime::IsLeapYear", XS_Wx__DateTime_IsLeapYear, file);
2474         newXS("Wx::DateTime::GetMonthName", XS_Wx__DateTime_GetMonthName, file);
2475         newXS("Wx::DateTime::GetWeekDayName", XS_Wx__DateTime_GetWeekDayName, file);
2476         newXS("Wx::DateTime::GetNumberOfDaysInYear", XS_Wx__DateTime_GetNumberOfDaysInYear, file);
2477         newXS("Wx::DateTime::GetNumberOfDaysInMonth", XS_Wx__DateTime_GetNumberOfDaysInMonth, file);
2478         newXS("Wx::DateTime::GetCentury", XS_Wx__DateTime_GetCentury, file);
2479         newXS("Wx::DateTime::GetCurrentYear", XS_Wx__DateTime_GetCurrentYear, file);
2480         newXS("Wx::DateTime::GetCurrentMonth", XS_Wx__DateTime_GetCurrentMonth, file);
2481         newXS("Wx::DateSpan::new", XS_Wx__DateSpan_new, file);
2482         newXS("Wx::DateSpan::GetDays", XS_Wx__DateSpan_GetDays, file);
2483         newXS("Wx::DateSpan::GetMonths", XS_Wx__DateSpan_GetMonths, file);
2484         newXS("Wx::DateSpan::GetTotalDays", XS_Wx__DateSpan_GetTotalDays, file);
2485         newXS("Wx::DateSpan::GetWeeks", XS_Wx__DateSpan_GetWeeks, file);
2486         newXS("Wx::DateSpan::GetYears", XS_Wx__DateSpan_GetYears, file);
2487         newXS("Wx::DateSpan::Add", XS_Wx__DateSpan_Add, file);
2488         newXS("Wx::DateSpan::Multiply", XS_Wx__DateSpan_Multiply, file);
2489         newXS("Wx::DateSpan::Neg", XS_Wx__DateSpan_Neg, file);
2490         newXS("Wx::DateSpan::SetDays", XS_Wx__DateSpan_SetDays, file);
2491         newXS("Wx::DateSpan::SetYears", XS_Wx__DateSpan_SetYears, file);
2492         newXS("Wx::DateSpan::SetMonths", XS_Wx__DateSpan_SetMonths, file);
2493         newXS("Wx::DateSpan::SetWeeks", XS_Wx__DateSpan_SetWeeks, file);
2494         newXS("Wx::DateSpan::Subtract", XS_Wx__DateSpan_Subtract, file);
2495         newXS("Wx::TimeSpan::new", XS_Wx__TimeSpan_new, file);
2496         newXS("Wx::TimeSpan::newFromHMS", XS_Wx__TimeSpan_newFromHMS, file);
2497         newXS("Wx::TimeSpan::GetHours", XS_Wx__TimeSpan_GetHours, file);
2498         newXS("Wx::TimeSpan::GetDays", XS_Wx__TimeSpan_GetDays, file);
2499         newXS("Wx::TimeSpan::GetWeeks", XS_Wx__TimeSpan_GetWeeks, file);
2500         newXS("Wx::TimeSpan::IsNull", XS_Wx__TimeSpan_IsNull, file);
2501         newXS("Wx::TimeSpan::IsPositive", XS_Wx__TimeSpan_IsPositive, file);
2502         newXS("Wx::TimeSpan::IsNegative", XS_Wx__TimeSpan_IsNegative, file);
2503         newXS("Wx::TimeSpan::IsEqualTo", XS_Wx__TimeSpan_IsEqualTo, file);
2504         newXS("Wx::TimeSpan::IsLongerThan", XS_Wx__TimeSpan_IsLongerThan, file);
2505         newXS("Wx::TimeSpan::IsShorterThan", XS_Wx__TimeSpan_IsShorterThan, file);
2506
2507     /* Initialisation Section */
2508
2509   INIT_PLI_HELPERS( wx_pli_helpers );
2510
2511 #if XSubPPtmpAAAA
2512 #endif
2513
2514     /* End of Initialisation Section */
2515
2516 #if (PERL_REVISION == 5 && PERL_VERSION >= 9)
2517   if (PL_unitcheckav)
2518        call_list(PL_scopestack_ix, PL_unitcheckav);
2519 #endif
2520     XSRETURN_YES;
2521 }
2522