Add libwx-perl
[pkg-perl] / deb-src / libwx-perl / libwx-perl-0.96 / XS / ToolBar.xs
1 #############################################################################
2 ## Name:        XS/ToolBar.xs
3 ## Purpose:     XS for Wx::ToolBar
4 ## Author:      Mattia Barbon
5 ## Modified by:
6 ## Created:     29/10/2000
7 ## RCS-ID:      $Id: ToolBar.xs 2503 2008-11-06 00:23:45Z mbarbon $
8 ## Copyright:   (c) 2000-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 #############################################################################
12
13 #include <wx/toolbar.h>
14 #include <wx/menu.h>
15
16 MODULE=Wx PACKAGE=Wx::ToolBarToolBase
17
18 void
19 wxToolBarToolBase::Destroy()
20   CODE:
21     delete THIS;
22
23 int
24 wxToolBarToolBase::GetId()
25
26 wxControl*
27 wxToolBarToolBase::GetControl()
28
29 wxToolBarBase*
30 wxToolBarToolBase::GetToolBar()
31
32 bool
33 wxToolBarToolBase::IsButton()
34
35 bool
36 wxToolBarToolBase::IsControl()
37
38 bool
39 wxToolBarToolBase::IsSeparator()
40
41 int
42 wxToolBarToolBase::GetStyle()
43
44 wxItemKind
45 wxToolBarToolBase::GetKind()
46
47 bool
48 wxToolBarToolBase::IsEnabled()
49
50 bool
51 wxToolBarToolBase::IsToggled()
52
53 bool
54 wxToolBarToolBase::CanBeToggled()
55
56 wxBitmap*
57 wxToolBarToolBase::GetNormalBitmap()
58   CODE:
59     RETVAL = new wxBitmap( THIS->GetNormalBitmap() );
60   OUTPUT:
61     RETVAL
62
63 wxBitmap*
64 wxToolBarToolBase::GetDisabledBitmap()
65   CODE:
66     RETVAL = new wxBitmap( THIS->GetDisabledBitmap() );
67   OUTPUT:
68     RETVAL
69
70 wxBitmap*
71 wxToolBarToolBase::GetBitmap1()
72   CODE:
73     RETVAL = new wxBitmap( THIS->GetNormalBitmap() );
74   OUTPUT:
75     RETVAL
76
77 wxBitmap*
78 wxToolBarToolBase::GetBitmap2()
79   CODE:
80     RETVAL = new wxBitmap( THIS->GetDisabledBitmap() );
81   OUTPUT:
82     RETVAL
83
84 wxBitmap*
85 wxToolBarToolBase::GetBitmap()
86   CODE:
87     RETVAL = new wxBitmap( THIS->GetBitmap() );
88   OUTPUT:
89     RETVAL
90
91 wxString
92 wxToolBarToolBase::GetLabel()
93
94 wxString
95 wxToolBarToolBase::GetShortHelp()
96
97 wxString
98 wxToolBarToolBase::GetLongHelp()
99
100 Wx_UserDataO*
101 wxToolBarToolBase::GetClientData()
102   CODE:
103     RETVAL = (Wx_UserDataO*) THIS->GetClientData();
104   OUTPUT:
105     RETVAL
106
107 bool
108 wxToolBarToolBase::Enable( enable )
109     bool enable
110
111 bool
112 wxToolBarToolBase::Toggle( enable )
113     bool enable
114
115 bool
116 wxToolBarToolBase::SetToggle( toggle )
117     bool toggle
118
119 bool
120 wxToolBarToolBase::SetShortHelp( help )
121     wxString help
122
123 bool
124 wxToolBarToolBase::SetLongHelp( help )
125     wxString help
126
127 void
128 wxToolBarToolBase::SetNormalBitmap( bmp )
129     wxBitmap* bmp
130   CODE:
131     THIS->SetNormalBitmap( *bmp );
132
133 void
134 wxToolBarToolBase::SetDisabledBitmap( bmp )
135     wxBitmap* bmp
136   CODE:
137     THIS->SetDisabledBitmap( *bmp );
138
139 void
140 wxToolBarToolBase::SetLabel( label )
141     wxString label
142
143 void
144 wxToolBarToolBase::SetBitmap1( bmp )
145     wxBitmap* bmp
146   CODE:
147     THIS->SetNormalBitmap( *bmp );
148
149 void
150 wxToolBarToolBase::SetBitmap2( bmp )
151     wxBitmap* bmp
152   CODE:
153     THIS->SetDisabledBitmap( *bmp );
154
155 void
156 wxToolBarToolBase::SetClientData( data = 0 )
157     Wx_UserDataO* data
158
159 #if WXPERL_W_VERSION_GE( 2, 9, 0 )
160
161 void
162 wxToolBarToolBase::SetDropdownMenu( menu )
163     wxMenu* menu
164
165 wxMenu*
166 wxToolBarToolBase::GetDropdownMenu()
167
168 #endif
169
170 MODULE=Wx PACKAGE=Wx::ToolBarBase
171
172 void
173 wxToolBarBase::Destroy()
174   CODE:
175     delete THIS;
176
177 bool
178 wxToolBarBase::AddControl( control )
179     wxControl* control
180
181 void
182 wxToolBar::AddSeparator()
183
184 void
185 wxToolBarBase::AddTool( ... )
186   PPCODE:
187     BEGIN_OVERLOAD()
188         MATCH_REDISP_COUNT_ALLOWMORE( wxPliOvl_n_wbmp_wbmp_b_s_s_s,
189                                       AddToolLong, 3 )
190         MATCH_REDISP_COUNT_ALLOWMORE( wxPliOvl_n_wbmp_s_s, AddToolShort, 2 )
191         MATCH_REDISP_COUNT_ALLOWMORE( wxPliOvl_n_s_wbmp_wbmp_n_s_s_s,
192                                       AddToolNewLong, 3 )
193         MATCH_REDISP_COUNT_ALLOWMORE( wxPliOvl_n_s_wbmp_s_n,
194                                       AddToolNewShort, 3 )
195     END_OVERLOAD( Wx::ToolBarBase::AddTool )
196
197 wxToolBarToolBase*
198 wxToolBarBase::AddToolShort( toolId, bitmap1, shortHelp = wxEmptyString, longHelp = wxEmptyString )
199     int toolId
200     wxBitmap* bitmap1
201     wxString shortHelp
202     wxString longHelp
203   CODE:
204 #if WXPERL_W_VERSION_GE( 2, 9, 0 )
205     RETVAL = THIS->AddTool( toolId, wxEmptyString, *bitmap1, wxNullBitmap,
206                             wxITEM_NORMAL, shortHelp, longHelp );
207 #else
208     RETVAL = THIS->AddTool( toolId, *bitmap1, shortHelp, longHelp );
209 #endif
210   OUTPUT:
211     RETVAL
212
213 wxToolBarToolBase*
214 wxToolBarBase::AddToolLong( toolId, bitmap1, bitmap2 = (wxBitmap*)&wxNullBitmap, isToggle = false, clientData = 0, shortHelp = wxEmptyString, longHelp = wxEmptyString )
215     int toolId
216     wxBitmap* bitmap1
217     wxBitmap* bitmap2
218     bool isToggle
219     wxPliUserDataO* clientData
220     wxString shortHelp
221     wxString longHelp
222   CODE:
223 #if WXPERL_W_VERSION_GE( 2, 9, 0 )
224     RETVAL = THIS->AddTool( toolId, wxEmptyString, *bitmap1, *bitmap2,
225                             isToggle ? wxITEM_CHECK : wxITEM_NORMAL,
226                             shortHelp, longHelp );
227     if( clientData )
228       RETVAL->SetClientData( clientData );
229 #else
230     RETVAL = THIS->AddTool( toolId, *bitmap1, *bitmap2, isToggle,
231         0, shortHelp, longHelp );
232     if( clientData )
233       RETVAL->SetClientData( clientData );
234 #endif
235   OUTPUT:
236     RETVAL
237
238 wxToolBarToolBase*
239 wxToolBarBase::AddToolNewLong( toolId, label, bitmap1, bitmap2 = (wxBitmap*)&wxNullBitmap, kind = wxITEM_NORMAL, shortHelp = wxEmptyString, longHelp = wxEmptyString, clientData = 0 )
240     int toolId
241     wxString label
242     wxBitmap* bitmap1
243     wxBitmap* bitmap2
244     wxItemKind kind
245     wxString shortHelp
246     wxString longHelp
247     wxPliUserDataO* clientData
248   CODE:
249     RETVAL = THIS->AddTool( toolId, label, *bitmap1, *bitmap2, kind,
250                             shortHelp, longHelp );
251     if( clientData )
252         RETVAL->SetClientData( clientData );
253   OUTPUT: RETVAL
254
255 wxToolBarToolBase*
256 wxToolBarBase::AddToolNewShort( toolId, label, bitmap, shortHelp = wxEmptyString, kind = wxITEM_NORMAL )
257     int toolId
258     wxString label
259     wxBitmap* bitmap
260     wxString shortHelp
261     wxItemKind kind
262   CODE:
263     RETVAL = THIS->AddTool( toolId, label, *bitmap, shortHelp, kind );
264   OUTPUT: RETVAL
265
266 wxToolBarToolBase*
267 wxToolBarBase::AddCheckTool( toolId, label, bitmap1, bitmap2, shortHelpString = wxEmptyString, longHelpString = wxEmptyString, clientData = NULL )
268     int toolId
269     wxString label
270     wxBitmap* bitmap1
271     wxBitmap* bitmap2
272     wxString shortHelpString
273     wxString longHelpString
274     wxPliUserDataO* clientData
275   C_ARGS: toolId, label, *bitmap1, *bitmap2, shortHelpString, longHelpString, clientData
276
277 wxToolBarToolBase*
278 wxToolBarBase::AddRadioTool( toolId, label, bitmap1, bitmap2, shortHelpString = wxEmptyString, longHelpString = wxEmptyString, clientData = NULL )
279     int toolId
280     wxString label
281     wxBitmap* bitmap1
282     wxBitmap* bitmap2
283     wxString shortHelpString
284     wxString longHelpString
285     wxPliUserDataO* clientData
286   C_ARGS: toolId, label, *bitmap1, *bitmap2, shortHelpString, longHelpString, clientData
287
288 bool
289 wxToolBarBase::DeleteTool( toolId )
290     int toolId
291
292 bool
293 wxToolBarBase::DeleteToolByPos( pos )
294     size_t pos
295
296 void
297 wxToolBarBase::EnableTool( toolId, enable )
298     int toolId
299     bool enable
300
301 #if WXPERL_W_VERSION_GE( 2, 5, 1 )
302
303 wxToolBarToolBase*
304 wxToolBarBase::FindById( toolid )
305     int toolid
306
307 #endif
308
309 wxControl*
310 wxToolBarBase::FindControl( toolid )
311     int toolid
312
313 wxToolBarToolBase*
314 wxToolBarBase::FindToolForPosition( x, y )
315     int x
316     int y
317
318 wxSize*
319 wxToolBarBase::GetMargins()
320   CODE:
321     RETVAL = new wxSize( THIS->GetMargins() );
322   OUTPUT:
323     RETVAL
324
325 int
326 wxToolBarBase::GetMaxRows()
327
328 int
329 wxToolBarBase::GetMaxCols()
330
331 wxSize*
332 wxToolBarBase::GetToolSize()
333   CODE:
334     RETVAL = new wxSize( THIS->GetToolSize() );
335   OUTPUT:
336     RETVAL
337
338 wxSize*
339 wxToolBarBase::GetToolBitmapSize()
340   CODE:
341     RETVAL = new wxSize( THIS->GetToolBitmapSize() );
342   OUTPUT:
343     RETVAL
344
345 Wx_UserDataO*
346 wxToolBar::GetToolClientData( toolId )
347     int toolId
348   CODE:
349     RETVAL = (Wx_UserDataO*) THIS->GetToolClientData( toolId );
350   OUTPUT:
351     RETVAL
352
353 bool
354 wxToolBarBase::GetToolEnabled( toolId )
355     int toolId
356
357 wxString
358 wxToolBarBase::GetToolLongHelp( toolId )
359     int toolId
360
361 int
362 wxToolBarBase::GetToolPacking()
363
364 int
365 wxToolBarBase::GetToolSeparation()
366
367 wxString
368 wxToolBarBase::GetToolShortHelp( toolId )
369    int toolId
370
371 bool
372 wxToolBarBase::GetToolState( toolId )
373     int toolId
374
375 wxToolBarToolBase*
376 wxToolBarBase::InsertControl( pos, control )
377    size_t pos
378    wxControl* control
379
380 wxToolBarToolBase*
381 wxToolBarBase::InsertSeparator( pos )
382     size_t pos
383
384 void
385 wxToolBarBase::InsertTool( ... )
386   PPCODE:
387     BEGIN_OVERLOAD()
388         MATCH_REDISP_COUNT_ALLOWMORE( wxPliOvl_n_n_wbmp_wbmp_b_s_s_s,
389                                       InsertToolLong, 3 )
390         MATCH_REDISP_COUNT_ALLOWMORE( wxPliOvl_n_n_s_wbmp_wbmp_b_s_s_s,
391                                       InsertToolNewLong, 4 )
392     END_OVERLOAD( Wx::ToolBarBase::InsertTool )
393
394 wxToolBarToolBase*
395 wxToolBarBase::InsertToolLong( pos, toolId, bitmap1, bitmap2 = (wxBitmap*)&wxNullBitmap, isToggle = false, clientData = 0, shortHelp = wxEmptyString, longHelp = wxEmptyString )
396     size_t pos
397     int toolId
398     wxBitmap* bitmap1
399     wxBitmap* bitmap2
400     bool isToggle
401     Wx_UserDataO* clientData
402     wxString shortHelp
403     wxString longHelp
404   CODE:
405 #if WXPERL_W_VERSION_GE( 2, 9, 0 )
406     RETVAL = THIS->InsertTool( pos, toolId, wxEmptyString, *bitmap1, *bitmap2,
407                                isToggle ? wxITEM_CHECK : wxITEM_NORMAL,
408                                shortHelp, longHelp );
409     if( clientData )
410         THIS->SetClientData( clientData );
411 #else
412     RETVAL = THIS->InsertTool( pos, toolId, *bitmap1, *bitmap2, isToggle,
413         0, shortHelp, longHelp );
414     if( clientData )
415         THIS->SetClientData( clientData );
416 #endif
417   OUTPUT: RETVAL
418
419 #if WXPERL_W_VERSION_GE( 2, 5, 3 )
420
421 wxToolBarToolBase*
422 wxToolBarBase::InsertToolNewLong( pos, toolId, label, bitmap1, bitmap2 = (wxBitmap*)&wxNullBitmap, kind = wxITEM_NORMAL, shortHelp = wxEmptyString, longHelp = wxEmptyString, clientData = 0 )
423     size_t pos
424     int toolId
425     wxString label
426     wxBitmap* bitmap1
427     wxBitmap* bitmap2
428     wxItemKind kind
429     Wx_UserDataO* clientData
430     wxString shortHelp
431     wxString longHelp
432   CODE:
433     RETVAL = THIS->InsertTool( pos, toolId, label, *bitmap1,
434         *bitmap2, kind, shortHelp, longHelp, 0 );
435     if( clientData )
436         THIS->SetClientData( clientData );
437   OUTPUT: RETVAL
438
439 #endif
440
441 void
442 wxToolBarBase::ClearTools()
443
444 int
445 wxToolBarBase::GetToolsCount()
446
447 int
448 wxToolBarBase::GetToolPos( toolId )
449     int toolId
450
451 bool
452 wxToolBarBase::Realize()
453
454 wxToolBarToolBase*
455 wxToolBarBase::RemoveTool( id )
456     int id
457
458 void
459 wxToolBarBase::SetMarginsSize( size )
460     wxSize size
461   CODE:
462     THIS->SetMargins( size );
463
464 void
465 wxToolBarBase::SetMarginsXY( x, y )
466     int x
467     int y
468   CODE:
469     THIS->SetMargins( x, y );
470
471 void
472 wxToolBarBase::SetMargins( ... )
473   PPCODE:
474     BEGIN_OVERLOAD()
475         MATCH_REDISP( wxPliOvl_n_n, SetMarginsXY )
476         MATCH_REDISP( wxPliOvl_wsiz, SetMarginsSize )
477     END_OVERLOAD( Wx::ToolBarBase::SetMargins )
478
479 void
480 wxToolBarBase::SetMaxRowsCols( mRows, mCols )
481     int mRows
482     int mCols
483
484 void
485 wxToolBarBase::SetRows( nRows )
486     int nRows
487
488 void
489 wxToolBarBase::SetToolBitmapSize( size )
490     wxSize size
491
492 void
493 wxToolBarBase::SetToolClientData( id, data )
494     int id
495     Wx_UserDataO* data
496   CODE:
497     delete THIS->GetToolClientData( id );
498
499     THIS->SetToolClientData( id, data );
500
501 void
502 wxToolBarBase::SetToolLongHelp( toolId, helpString )
503     int toolId
504     wxString helpString
505
506 void
507 wxToolBarBase::SetToolPacking( packing )
508     int packing
509
510 void
511 wxToolBarBase::SetToolShortHelp( toolId, helpString )
512     int toolId
513     wxString helpString
514
515 void
516 wxToolBarBase::SetToolSeparation( separation )
517     int separation
518
519 #if WXPERL_W_VERSION_GE( 2, 9, 0 )
520
521 void
522 wxToolBarBase::SetToolNormalBitmap( id, bitmap )
523     int id
524     wxBitmap* bitmap
525   C_ARGS: id, *bitmap
526
527 void
528 wxToolBarBase::SetToolDisabledBitmap( id, bitmap );
529     int id
530     wxBitmap* bitmap
531   C_ARGS: id, *bitmap
532
533 #endif
534
535 void
536 wxToolBarBase::ToggleTool( toolId, toggle )
537     int toolId
538     bool toggle
539
540 #if WXPERL_W_VERSION_GE( 2, 9, 0 )
541
542 bool
543 wxToolBarBase::SetDropdownMenu( toolid, menu )
544     int toolid
545     wxMenu* menu
546
547 #endif
548
549 MODULE=Wx PACKAGE=Wx::ToolBar
550
551 void
552 new( ... )
553   PPCODE:
554     BEGIN_OVERLOAD()
555         MATCH_VOIDM_REDISP( newDefault )
556         MATCH_ANY_REDISP( newFull )
557     END_OVERLOAD( "Wx::ToolBar::new" )
558
559 wxToolBar*
560 newDefault( CLASS )
561     PlClassName CLASS
562   CODE:
563     RETVAL = new wxToolBar();
564     wxPli_create_evthandler( aTHX_ RETVAL, CLASS );
565   OUTPUT: RETVAL
566
567 wxToolBar*
568 newFull( CLASS, parent, id = wxID_ANY, pos = wxDefaultPosition, size = wxDefaultSize, style = wxTB_HORIZONTAL | wxNO_BORDER, name = wxPanelNameStr )
569     PlClassName CLASS
570     wxWindow* parent
571     wxWindowID id
572     wxPoint pos
573     wxSize size
574     long style
575     wxString name
576   CODE:
577     RETVAL = new wxToolBar( parent, id, pos, size, style, name );
578     wxPli_create_evthandler( aTHX_ RETVAL, CLASS );
579   OUTPUT: RETVAL
580
581 bool
582 wxToolBar::Create( parent, id = wxID_ANY, pos = wxDefaultPosition, size = wxDefaultSize, style = wxTB_HORIZONTAL | wxNO_BORDER, name = wxPanelNameStr )
583     wxWindow* parent
584     wxWindowID id
585     wxPoint pos
586     wxSize size
587     long style
588     wxString name
589