]> git.saurik.com Git - wxWidgets.git/blame_incremental - wxPython/src/_defs.i
added defines for wxchar workaround
[wxWidgets.git] / wxPython / src / _defs.i
... / ...
CommitLineData
1/////////////////////////////////////////////////////////////////////////////
2// Name: _defs.i
3// Purpose: Definitions and stuff
4//
5// Author: Robin Dunn
6//
7// Created: 6/24/97
8// RCS-ID: $Id$
9// Copyright: (c) 1998 by Total Control Software
10// Licence: wxWindows license
11/////////////////////////////////////////////////////////////////////////////
12
13
14// Globally turn on the autodoc feature
15%feature("autodoc", "1"); // 0 == no param types, 1 == show param types
16
17
18//---------------------------------------------------------------------------
19// some type definitions to simplify things for SWIG
20
21// typedef int wxWindowID;
22// typedef int wxCoord;
23// typedef int wxInt32;
24// typedef unsigned int wxUint32;
25typedef int wxEventType;
26typedef unsigned int size_t;
27typedef unsigned int time_t;
28typedef unsigned char byte;
29
30#define wxWindowID int
31#define wxCoord int
32#define wxInt32 int
33#define wxUint32 unsigned int
34//#define wxEventType int
35//#define size_t unsigned int
36//#define time_t unsigned int
37//#define byte unsigned char
38
39
40//----------------------------------------------------------------------
41// Various SWIG macros and such
42
43#define %pythonAppend %feature("pythonappend")
44#define %pythonPrepend %feature("pythonprepend")
45#define %kwargs %feature("kwargs")
46#define %nokwargs %feature("nokwargs")
47
48//#ifndef %shadow
49//#define %shadow %insert("shadow")
50//#endif
51
52#ifndef %pythoncode
53#define %pythoncode %insert("python")
54#endif
55
56#define WXUNUSED(x) x
57
58
59// Given the name of a wxChar (or wxString) constant in C++, make
60// a static wxString for wxPython, and also let SWIG wrap it.
61%define MAKE_CONST_WXSTRING(strname)
62 %{ static const wxString wxPy##strname(wx##strname); %}
63 %immutable;
64 %name(strname) const wxString wxPy##strname;
65 %mutable;
66%enddef
67
68%define MAKE_CONST_WXSTRING2(strname, val)
69 %{ static const wxString wxPy##strname(val); %}
70 %immutable;
71 %name(strname) const wxString wxPy##strname;
72 %mutable;
73%enddef
74
75%define MAKE_CONST_WXSTRING_NOSWIG(strname)
76 %{ static const wxString wxPy##strname(wx##strname); %}
77%enddef
78
79// Generate code in the module init for the event types, since they may not be
80// initialized yet when they are used in the static swig_const_table.
81%typemap(consttab) wxEventType; // TODO: how to prevent code inserted into the consttab?
82%typemap(constcode) wxEventType "PyDict_SetItemString(d, \"$symname\", PyInt_FromLong($value));";
83
84
85
86// Macros for the docstring and autodoc features of SWIG.
87
88// Set the docsring for the given full or partial declaration
89%define DocStr(decl, docstr)
90 %feature("docstring") decl docstr;
91 //%feature("refdoc") decl "";
92%enddef
93
94// Set the autodoc string for a full or partial declaration
95%define DocA(decl, astr)
96 %feature("autodoc") decl astr;
97%enddef
98
99// Set both the autodoc and docstring for a full or partial declaration
100%define DocAStr(decl, astr, docstr)
101 %feature("autodoc") decl astr;
102 %feature("docstring") decl docstr
103%enddef
104
105// Set the detailed reference docs for full or partial declaration
106#define DocRef(decl, str) %feature("docref") decl str
107
108
109
110
111// Set the docstring for a decl and then define the decl too. Must use the
112// full declaration of the item.
113%define DocDeclStr(type, decl, docstr)
114 %feature("docstring") decl docstr;
115 type decl
116%enddef
117
118// As above, but also give the decl a new %name
119%define DocDeclStrName(type, decl, docstr, newname)
120 %feature("docstring") decl docstr;
121 %name(newname) type decl
122%enddef
123
124
125// Set the autodoc string for a decl and then define the decl too. Must use the
126// full declaration of the item.
127%define DocDeclA(type, decl, astr)
128 %feature("autodoc") decl astr;
129 type decl
130%enddef
131
132// As above, but also give the decl a new %name
133%define DocDeclAName(type, decl, astr, newname)
134 %feature("autodoc") decl astr;
135 %name(newname) type decl
136%enddef
137
138
139
140// Set the autodoc and the docstring for a decl and then define the decl too.
141// Must use the full declaration of the item.
142%define DocDeclAStr(type, decl, astr, docstr)
143 %feature("autodoc") decl astr;
144 %feature("docstring") decl docstr;
145 type decl
146%enddef
147
148// As above, but also give the decl a new %name
149%define DocDeclAStrName(type, decl, astr, docstr, newname)
150 %feature("autodoc") decl astr;
151 %feature("docstring") decl docstr;
152 %name(newname) type decl
153%enddef
154
155
156
157
158// Set the docstring for a constructor decl and then define the decl too.
159// Must use the full declaration of the item.
160%define DocCtorStr(decl, docstr)
161 %feature("docstring") decl docstr;
162 decl
163%enddef
164
165// As above, but also give the decl a new %name
166%define DocCtorStrName(decl, docstr, newname)
167 %feature("docstring") decl docstr;
168 %name(newname) decl
169%enddef
170
171
172// Set the autodoc string for a decl and then define the decl too. Must use the
173// full declaration of the item.
174%define DocCtorA(decl, astr)
175 %feature("autodoc") decl astr;
176 decl
177%enddef
178
179// As above, but also give the decl a new %name
180%define DocCtorAname(decl, astr, newname)
181 %feature("autodoc") decl astr;
182 %name(newname) decl
183%enddef
184
185
186
187// Set the autodoc and the docstring for a decl and then define the decl too.
188// Must use the full declaration of the item.
189%define DocCtorAStr(decl, astr, docstr)
190 %feature("autodoc") decl astr;
191 %feature("docstring") decl docstr;
192 decl
193%enddef
194
195// As above, but also give the decl a new %name
196%define DocCtorAStrName(decl, astr, docstr, newname)
197 %feature("autodoc") decl astr;
198 %feature("docstring") decl docstr;
199 %name(newname) decl
200%enddef
201
202
203// A placeholder for the detailed reference docs.
204%define RefDoc(decl, docstr)
205 %feature("refdoc") decl docstr;
206%enddef
207
208
209%define %newgroup
210%pythoncode {
211%#---------------------------------------------------------------------------
212}
213%enddef
214
215//---------------------------------------------------------------------------
216// Forward declarations and %renames for some classes, so the autodoc strings
217// will be able to use the right types even when the real class declaration is
218// not in the module being processed.
219
220#ifdef BUILDING_RENAMERS
221 #define FORWARD_DECLARE(wxName, Name)
222#else
223 %define FORWARD_DECLARE(wxName, Name)
224 %rename(Name) wxName;
225 class wxName;
226 %enddef
227#endif
228
229FORWARD_DECLARE(wxString, String);
230FORWARD_DECLARE(wxBitmap, Bitmap);
231FORWARD_DECLARE(wxDateTime, DateTime);
232FORWARD_DECLARE(wxInputStream, InputStream);
233FORWARD_DECLARE(wxDC, DC);
234FORWARD_DECLARE(wxCursor, Cursor);
235FORWARD_DECLARE(wxRegion, Region);
236FORWARD_DECLARE(wxColour, Colour);
237FORWARD_DECLARE(wxFont, Font);
238FORWARD_DECLARE(wxCaret, Caret);
239FORWARD_DECLARE(wxToolTip, ToolTip);
240FORWARD_DECLARE(wxPyDropTarget, DropTarget);
241FORWARD_DECLARE(wxImageList, ImageList);
242FORWARD_DECLARE(wxMemoryDC, MemoryDC);
243FORWARD_DECLARE(wxHtmlTagHandler, HtmlTagHandler);
244FORWARD_DECLARE(wxConfigBase, ConfigBase);
245FORWARD_DECLARE(wxIcon, Icon);
246
247
248//---------------------------------------------------------------------------
249
250// General numeric #define's and etc. Making them all enums makes SWIG use the
251// real macro when making the Python Int
252
253enum {
254// wxMAJOR_VERSION,
255// wxMINOR_VERSION,
256// wxRELEASE_NUMBER,
257
258 wxNOT_FOUND,
259
260 wxVSCROLL,
261 wxHSCROLL,
262 wxCAPTION,
263 wxDOUBLE_BORDER,
264 wxSUNKEN_BORDER,
265 wxRAISED_BORDER,
266 wxBORDER,
267 wxSIMPLE_BORDER,
268 wxSTATIC_BORDER,
269 wxTRANSPARENT_WINDOW,
270 wxNO_BORDER,
271
272 wxTAB_TRAVERSAL,
273 wxWANTS_CHARS,
274 wxPOPUP_WINDOW,
275 wxCENTER_FRAME,
276 wxCENTRE_ON_SCREEN,
277 wxCENTER_ON_SCREEN,
278
279 wxED_CLIENT_MARGIN,
280 wxED_BUTTONS_BOTTOM,
281 wxED_BUTTONS_RIGHT,
282 wxED_STATIC_LINE,
283 wxEXT_DIALOG_STYLE,
284
285 wxCLIP_CHILDREN,
286 wxCLIP_SIBLINGS,
287
288 wxALWAYS_SHOW_SB,
289
290 wxRETAINED,
291 wxBACKINGSTORE,
292
293 wxCOLOURED,
294 wxFIXED_LENGTH,
295
296 wxLB_NEEDED_SB,
297 wxLB_ALWAYS_SB,
298 wxLB_SORT,
299 wxLB_SINGLE,
300 wxLB_MULTIPLE,
301 wxLB_EXTENDED,
302 wxLB_OWNERDRAW,
303 wxLB_HSCROLL,
304 wxPROCESS_ENTER,
305 wxPASSWORD,
306
307 wxCB_SIMPLE,
308 wxCB_DROPDOWN,
309 wxCB_SORT,
310 wxCB_READONLY,
311 wxRA_HORIZONTAL,
312 wxRA_VERTICAL,
313 wxRA_SPECIFY_ROWS,
314 wxRA_SPECIFY_COLS,
315 wxRB_GROUP,
316 wxRB_SINGLE,
317 wxSL_HORIZONTAL,
318 wxSL_VERTICAL,
319 wxSL_AUTOTICKS,
320 wxSL_LABELS,
321 wxSL_LEFT,
322 wxSL_TOP,
323 wxSL_RIGHT,
324 wxSL_BOTTOM,
325 wxSL_BOTH,
326 wxSL_SELRANGE,
327 wxSB_HORIZONTAL,
328 wxSB_VERTICAL,
329 wxST_SIZEGRIP,
330 wxST_NO_AUTORESIZE,
331
332 wxFLOOD_SURFACE,
333 wxFLOOD_BORDER,
334 wxODDEVEN_RULE,
335 wxWINDING_RULE,
336 wxTOOL_TOP,
337 wxTOOL_BOTTOM,
338 wxTOOL_LEFT,
339 wxTOOL_RIGHT,
340 wxOK,
341 wxYES_NO,
342 wxCANCEL,
343 wxYES,
344 wxNO,
345 wxNO_DEFAULT,
346 wxYES_DEFAULT,
347 wxICON_EXCLAMATION,
348 wxICON_HAND,
349 wxICON_QUESTION,
350 wxICON_INFORMATION,
351 wxICON_STOP,
352 wxICON_ASTERISK,
353 wxICON_MASK,
354 wxICON_WARNING,
355 wxICON_ERROR,
356
357 wxFORWARD,
358 wxBACKWARD,
359 wxRESET,
360 wxHELP,
361 wxMORE,
362 wxSETUP,
363
364
365 wxSIZE_AUTO_WIDTH,
366 wxSIZE_AUTO_HEIGHT,
367 wxSIZE_AUTO,
368 wxSIZE_USE_EXISTING,
369 wxSIZE_ALLOW_MINUS_ONE,
370 wxPORTRAIT,
371 wxLANDSCAPE,
372 wxPRINT_QUALITY_HIGH,
373 wxPRINT_QUALITY_MEDIUM,
374 wxPRINT_QUALITY_LOW,
375 wxPRINT_QUALITY_DRAFT,
376
377 wxID_ANY,
378 wxID_SEPARATOR,
379
380 wxID_LOWEST,
381 wxID_OPEN,
382 wxID_CLOSE,
383 wxID_NEW,
384 wxID_SAVE,
385 wxID_SAVEAS,
386 wxID_REVERT,
387 wxID_EXIT,
388 wxID_UNDO,
389 wxID_REDO,
390 wxID_HELP,
391 wxID_PRINT,
392 wxID_PRINT_SETUP,
393 wxID_PREVIEW,
394 wxID_ABOUT,
395 wxID_HELP_CONTENTS,
396 wxID_HELP_COMMANDS,
397 wxID_HELP_PROCEDURES,
398 wxID_HELP_CONTEXT,
399 wxID_CLOSE_ALL,
400 wxID_PREFERENCES,
401
402 wxID_CUT,
403 wxID_COPY,
404 wxID_PASTE,
405 wxID_CLEAR,
406 wxID_FIND,
407 wxID_DUPLICATE,
408 wxID_SELECTALL,
409
410 wxID_DELETE,
411 wxID_REPLACE,
412 wxID_REPLACE_ALL,
413 wxID_PROPERTIES,
414
415 wxID_VIEW_DETAILS,
416 wxID_VIEW_LARGEICONS,
417 wxID_VIEW_SMALLICONS,
418 wxID_VIEW_LIST,
419 wxID_VIEW_SORTDATE,
420 wxID_VIEW_SORTNAME,
421 wxID_VIEW_SORTSIZE,
422 wxID_VIEW_SORTTYPE,
423
424 wxID_FILE1,
425 wxID_FILE2,
426 wxID_FILE3,
427 wxID_FILE4,
428 wxID_FILE5,
429 wxID_FILE6,
430 wxID_FILE7,
431 wxID_FILE8,
432 wxID_FILE9,
433
434 wxID_OK,
435 wxID_CANCEL,
436 wxID_APPLY,
437 wxID_YES,
438 wxID_NO,
439 wxID_STATIC,
440 wxID_FORWARD,
441 wxID_BACKWARD,
442 wxID_DEFAULT,
443 wxID_MORE,
444 wxID_SETUP,
445 wxID_RESET,
446 wxID_CONTEXT_HELP,
447 wxID_YESTOALL,
448 wxID_NOTOALL,
449 wxID_ABORT,
450 wxID_RETRY,
451 wxID_IGNORE,
452
453 wxID_HIGHEST,
454
455 wxOPEN,
456 wxSAVE,
457 wxHIDE_READONLY,
458 wxOVERWRITE_PROMPT,
459 wxFILE_MUST_EXIST,
460 wxMULTIPLE,
461 wxCHANGE_DIR,
462
463 wxACCEL_ALT,
464 wxACCEL_CTRL,
465 wxACCEL_SHIFT,
466 wxACCEL_NORMAL,
467
468 wxPD_AUTO_HIDE,
469 wxPD_APP_MODAL,
470 wxPD_CAN_ABORT,
471 wxPD_ELAPSED_TIME,
472 wxPD_ESTIMATED_TIME,
473 wxPD_REMAINING_TIME,
474
475 wxDD_NEW_DIR_BUTTON,
476 wxDD_DEFAULT_STYLE,
477
478 wxMENU_TEAROFF,
479 wxMB_DOCKABLE,
480 wxNO_FULL_REPAINT_ON_RESIZE,
481 wxFULL_REPAINT_ON_RESIZE,
482
483 wxLI_HORIZONTAL,
484 wxLI_VERTICAL,
485
486 wxWS_EX_VALIDATE_RECURSIVELY,
487 wxWS_EX_BLOCK_EVENTS,
488 wxWS_EX_TRANSIENT,
489
490 wxWS_EX_THEMED_BACKGROUND,
491 wxWS_EX_PROCESS_IDLE,
492 wxWS_EX_PROCESS_UI_UPDATES,
493
494
495 // Mapping modes (as per Windows)
496 wxMM_TEXT,
497 wxMM_LOMETRIC,
498 wxMM_HIMETRIC,
499 wxMM_LOENGLISH,
500 wxMM_HIENGLISH,
501 wxMM_TWIPS,
502 wxMM_ISOTROPIC,
503 wxMM_ANISOTROPIC,
504 wxMM_POINTS,
505 wxMM_METRIC,
506
507
508 // It looks like wxTabCtrl may rise from the dead. Uncomment these if
509 // it gets an implementation for all platforms...
510// wxTC_RIGHTJUSTIFY,
511// wxTC_FIXEDWIDTH,
512// wxTC_TOP,
513// wxTC_LEFT,
514// wxTC_RIGHT,
515// wxTC_BOTTOM,
516// wxTC_MULTILINE,
517// wxTC_OWNERDRAW,
518
519};
520
521
522#ifdef __WXGTK__
523#define wxDEFAULT_STATUSBAR_STYLE wxST_SIZEGRIP|wxFULL_REPAINT_ON_RESIZE
524#else
525#define wxDEFAULT_STATUSBAR_STYLE wxST_SIZEGRIP
526#endif
527
528
529
530enum wxGeometryCentre
531{
532 wxCENTRE = 0x0001,
533 wxCENTER = wxCENTRE
534};
535
536
537enum wxOrientation
538{
539 wxHORIZONTAL,
540 wxVERTICAL,
541 wxBOTH
542};
543
544enum wxDirection
545{
546 wxLEFT,
547 wxRIGHT,
548 wxUP,
549 wxDOWN,
550
551 wxTOP,
552 wxBOTTOM,
553
554 wxNORTH,
555 wxSOUTH,
556 wxWEST,
557 wxEAST,
558
559 wxALL
560};
561
562enum wxAlignment
563{
564 wxALIGN_NOT,
565 wxALIGN_CENTER_HORIZONTAL,
566 wxALIGN_CENTRE_HORIZONTAL,
567 wxALIGN_LEFT,
568 wxALIGN_TOP,
569 wxALIGN_RIGHT,
570 wxALIGN_BOTTOM,
571 wxALIGN_CENTER_VERTICAL,
572 wxALIGN_CENTRE_VERTICAL,
573
574 wxALIGN_CENTER,
575 wxALIGN_CENTRE,
576
577 wxALIGN_MASK,
578};
579
580enum wxStretch
581{
582 wxSTRETCH_NOT,
583 wxSHRINK,
584 wxGROW,
585 wxEXPAND,
586 wxSHAPED,
587 wxFIXED_MINSIZE,
588 wxTILE,
589 wxADJUST_MINSIZE,
590};
591
592
593enum wxBorder
594{
595 wxBORDER_DEFAULT,
596 wxBORDER_NONE,
597 wxBORDER_STATIC,
598 wxBORDER_SIMPLE,
599 wxBORDER_RAISED,
600 wxBORDER_SUNKEN,
601 wxBORDER_DOUBLE,
602 wxBORDER_MASK,
603};
604
605
606enum {
607 wxDEFAULT ,
608 wxDECORATIVE,
609 wxROMAN,
610 wxSCRIPT,
611 wxSWISS,
612 wxMODERN,
613 wxTELETYPE,
614 wxVARIABLE,
615 wxFIXED,
616 wxNORMAL,
617 wxLIGHT,
618 wxBOLD,
619 wxITALIC,
620 wxSLANT,
621 wxSOLID,
622 wxDOT,
623 wxLONG_DASH,
624 wxSHORT_DASH,
625 wxDOT_DASH,
626 wxUSER_DASH,
627 wxTRANSPARENT,
628 wxSTIPPLE,
629 wxBDIAGONAL_HATCH,
630 wxCROSSDIAG_HATCH,
631 wxFDIAGONAL_HATCH,
632 wxCROSS_HATCH,
633 wxHORIZONTAL_HATCH,
634 wxVERTICAL_HATCH,
635 wxJOIN_BEVEL,
636 wxJOIN_MITER,
637 wxJOIN_ROUND,
638 wxCAP_ROUND,
639 wxCAP_PROJECTING,
640 wxCAP_BUTT
641};
642
643typedef enum {
644 wxCLEAR, // 0
645 wxXOR, // src XOR dst
646 wxINVERT, // NOT dst
647 wxOR_REVERSE, // src OR (NOT dst)
648 wxAND_REVERSE,// src AND (NOT dst)
649 wxCOPY, // src
650 wxAND, // src AND dst
651 wxAND_INVERT, // (NOT src) AND dst
652 wxNO_OP, // dst
653 wxNOR, // (NOT src) AND (NOT dst)
654 wxEQUIV, // (NOT src) XOR dst
655 wxSRC_INVERT, // (NOT src)
656 wxOR_INVERT, // (NOT src) OR dst
657 wxNAND, // (NOT src) OR (NOT dst)
658 wxOR, // src OR dst
659 wxSET, // 1
660// wxSRC_OR, // source _bitmap_ OR destination
661// wxSRC_AND // source _bitmap_ AND destination
662} form_ops_t;
663
664enum wxKeyCode {
665 WXK_BACK = 8,
666 WXK_TAB = 9,
667 WXK_RETURN = 13,
668 WXK_ESCAPE = 27,
669 WXK_SPACE = 32,
670 WXK_DELETE = 127,
671
672 WXK_START = 300,
673 WXK_LBUTTON,
674 WXK_RBUTTON,
675 WXK_CANCEL,
676 WXK_MBUTTON,
677 WXK_CLEAR,
678 WXK_SHIFT,
679 WXK_ALT,
680 WXK_CONTROL,
681 WXK_MENU,
682 WXK_PAUSE,
683 WXK_CAPITAL,
684 WXK_PRIOR, /* Page up */
685 WXK_NEXT, /* Page down */
686 WXK_END,
687 WXK_HOME,
688 WXK_LEFT,
689 WXK_UP,
690 WXK_RIGHT,
691 WXK_DOWN,
692 WXK_SELECT,
693 WXK_PRINT,
694 WXK_EXECUTE,
695 WXK_SNAPSHOT,
696 WXK_INSERT,
697 WXK_HELP,
698 WXK_NUMPAD0,
699 WXK_NUMPAD1,
700 WXK_NUMPAD2,
701 WXK_NUMPAD3,
702 WXK_NUMPAD4,
703 WXK_NUMPAD5,
704 WXK_NUMPAD6,
705 WXK_NUMPAD7,
706 WXK_NUMPAD8,
707 WXK_NUMPAD9,
708 WXK_MULTIPLY,
709 WXK_ADD,
710 WXK_SEPARATOR,
711 WXK_SUBTRACT,
712 WXK_DECIMAL,
713 WXK_DIVIDE,
714 WXK_F1,
715 WXK_F2,
716 WXK_F3,
717 WXK_F4,
718 WXK_F5,
719 WXK_F6,
720 WXK_F7,
721 WXK_F8,
722 WXK_F9,
723 WXK_F10,
724 WXK_F11,
725 WXK_F12,
726 WXK_F13,
727 WXK_F14,
728 WXK_F15,
729 WXK_F16,
730 WXK_F17,
731 WXK_F18,
732 WXK_F19,
733 WXK_F20,
734 WXK_F21,
735 WXK_F22,
736 WXK_F23,
737 WXK_F24,
738 WXK_NUMLOCK,
739 WXK_SCROLL,
740 WXK_PAGEUP,
741 WXK_PAGEDOWN,
742
743 WXK_NUMPAD_SPACE,
744 WXK_NUMPAD_TAB,
745 WXK_NUMPAD_ENTER,
746 WXK_NUMPAD_F1,
747 WXK_NUMPAD_F2,
748 WXK_NUMPAD_F3,
749 WXK_NUMPAD_F4,
750 WXK_NUMPAD_HOME,
751 WXK_NUMPAD_LEFT,
752 WXK_NUMPAD_UP,
753 WXK_NUMPAD_RIGHT,
754 WXK_NUMPAD_DOWN,
755 WXK_NUMPAD_PRIOR,
756 WXK_NUMPAD_PAGEUP,
757 WXK_NUMPAD_NEXT,
758 WXK_NUMPAD_PAGEDOWN,
759 WXK_NUMPAD_END,
760 WXK_NUMPAD_BEGIN,
761 WXK_NUMPAD_INSERT,
762 WXK_NUMPAD_DELETE,
763 WXK_NUMPAD_EQUAL,
764 WXK_NUMPAD_MULTIPLY,
765 WXK_NUMPAD_ADD,
766 WXK_NUMPAD_SEPARATOR,
767 WXK_NUMPAD_SUBTRACT,
768 WXK_NUMPAD_DECIMAL,
769 WXK_NUMPAD_DIVIDE,
770
771 WXK_WINDOWS_LEFT,
772 WXK_WINDOWS_RIGHT,
773 WXK_WINDOWS_MENU
774
775};
776
777
778
779typedef enum {
780 wxPAPER_NONE, // Use specific dimensions
781 wxPAPER_LETTER, // Letter, 8 1/2 by 11 inches
782 wxPAPER_LEGAL, // Legal, 8 1/2 by 14 inches
783 wxPAPER_A4, // A4 Sheet, 210 by 297 millimeters
784 wxPAPER_CSHEET, // C Sheet, 17 by 22 inches
785 wxPAPER_DSHEET, // D Sheet, 22 by 34 inches
786 wxPAPER_ESHEET, // E Sheet, 34 by 44 inches
787 wxPAPER_LETTERSMALL, // Letter Small, 8 1/2 by 11 inches
788 wxPAPER_TABLOID, // Tabloid, 11 by 17 inches
789 wxPAPER_LEDGER, // Ledger, 17 by 11 inches
790 wxPAPER_STATEMENT, // Statement, 5 1/2 by 8 1/2 inches
791 wxPAPER_EXECUTIVE, // Executive, 7 1/4 by 10 1/2 inches
792 wxPAPER_A3, // A3 sheet, 297 by 420 millimeters
793 wxPAPER_A4SMALL, // A4 small sheet, 210 by 297 millimeters
794 wxPAPER_A5, // A5 sheet, 148 by 210 millimeters
795 wxPAPER_B4, // B4 sheet, 250 by 354 millimeters
796 wxPAPER_B5, // B5 sheet, 182-by-257-millimeter paper
797 wxPAPER_FOLIO, // Folio, 8-1/2-by-13-inch paper
798 wxPAPER_QUARTO, // Quarto, 215-by-275-millimeter paper
799 wxPAPER_10X14, // 10-by-14-inch sheet
800 wxPAPER_11X17, // 11-by-17-inch sheet
801 wxPAPER_NOTE, // Note, 8 1/2 by 11 inches
802 wxPAPER_ENV_9, // #9 Envelope, 3 7/8 by 8 7/8 inches
803 wxPAPER_ENV_10, // #10 Envelope, 4 1/8 by 9 1/2 inches
804 wxPAPER_ENV_11, // #11 Envelope, 4 1/2 by 10 3/8 inches
805 wxPAPER_ENV_12, // #12 Envelope, 4 3/4 by 11 inches
806 wxPAPER_ENV_14, // #14 Envelope, 5 by 11 1/2 inches
807 wxPAPER_ENV_DL, // DL Envelope, 110 by 220 millimeters
808 wxPAPER_ENV_C5, // C5 Envelope, 162 by 229 millimeters
809 wxPAPER_ENV_C3, // C3 Envelope, 324 by 458 millimeters
810 wxPAPER_ENV_C4, // C4 Envelope, 229 by 324 millimeters
811 wxPAPER_ENV_C6, // C6 Envelope, 114 by 162 millimeters
812 wxPAPER_ENV_C65, // C65 Envelope, 114 by 229 millimeters
813 wxPAPER_ENV_B4, // B4 Envelope, 250 by 353 millimeters
814 wxPAPER_ENV_B5, // B5 Envelope, 176 by 250 millimeters
815 wxPAPER_ENV_B6, // B6 Envelope, 176 by 125 millimeters
816 wxPAPER_ENV_ITALY, // Italy Envelope, 110 by 230 millimeters
817 wxPAPER_ENV_MONARCH, // Monarch Envelope, 3 7/8 by 7 1/2 inches
818 wxPAPER_ENV_PERSONAL, // 6 3/4 Envelope, 3 5/8 by 6 1/2 inches
819 wxPAPER_FANFOLD_US, // US Std Fanfold, 14 7/8 by 11 inches
820 wxPAPER_FANFOLD_STD_GERMAN, // German Std Fanfold, 8 1/2 by 12 inches
821 wxPAPER_FANFOLD_LGL_GERMAN, // German Legal Fanfold, 8 1/2 by 13 inches
822
823 wxPAPER_ISO_B4, // B4 (ISO) 250 x 353 mm
824 wxPAPER_JAPANESE_POSTCARD, // Japanese Postcard 100 x 148 mm
825 wxPAPER_9X11, // 9 x 11 in
826 wxPAPER_10X11, // 10 x 11 in
827 wxPAPER_15X11, // 15 x 11 in
828 wxPAPER_ENV_INVITE, // Envelope Invite 220 x 220 mm
829 wxPAPER_LETTER_EXTRA, // Letter Extra 9 \275 x 12 in
830 wxPAPER_LEGAL_EXTRA, // Legal Extra 9 \275 x 15 in
831 wxPAPER_TABLOID_EXTRA, // Tabloid Extra 11.69 x 18 in
832 wxPAPER_A4_EXTRA, // A4 Extra 9.27 x 12.69 in
833 wxPAPER_LETTER_TRANSVERSE, // Letter Transverse 8 \275 x 11 in
834 wxPAPER_A4_TRANSVERSE, // A4 Transverse 210 x 297 mm
835 wxPAPER_LETTER_EXTRA_TRANSVERSE, // Letter Extra Transverse 9\275 x 12 in
836 wxPAPER_A_PLUS, // SuperA/SuperA/A4 227 x 356 mm
837 wxPAPER_B_PLUS, // SuperB/SuperB/A3 305 x 487 mm
838 wxPAPER_LETTER_PLUS, // Letter Plus 8.5 x 12.69 in
839 wxPAPER_A4_PLUS, // A4 Plus 210 x 330 mm
840 wxPAPER_A5_TRANSVERSE, // A5 Transverse 148 x 210 mm
841 wxPAPER_B5_TRANSVERSE, // B5 (JIS) Transverse 182 x 257 mm
842 wxPAPER_A3_EXTRA, // A3 Extra 322 x 445 mm
843 wxPAPER_A5_EXTRA, // A5 Extra 174 x 235 mm
844 wxPAPER_B5_EXTRA, // B5 (ISO) Extra 201 x 276 mm
845 wxPAPER_A2, // A2 420 x 594 mm
846 wxPAPER_A3_TRANSVERSE, // A3 Transverse 297 x 420 mm
847 wxPAPER_A3_EXTRA_TRANSVERSE // A3 Extra Transverse 322 x 445 mm
848
849} wxPaperSize ;
850
851typedef enum {
852 wxDUPLEX_SIMPLEX, // Non-duplex
853 wxDUPLEX_HORIZONTAL,
854 wxDUPLEX_VERTICAL
855} wxDuplexMode;
856
857
858
859// menu and toolbar item kinds
860enum wxItemKind
861{
862 wxITEM_SEPARATOR,
863 wxITEM_NORMAL,
864 wxITEM_CHECK,
865 wxITEM_RADIO,
866 wxITEM_MAX
867};
868
869
870enum wxHitTest
871{
872 wxHT_NOWHERE,
873
874 // scrollbar
875 wxHT_SCROLLBAR_FIRST = wxHT_NOWHERE,
876 wxHT_SCROLLBAR_ARROW_LINE_1, // left or upper arrow to scroll by line
877 wxHT_SCROLLBAR_ARROW_LINE_2, // right or down
878 wxHT_SCROLLBAR_ARROW_PAGE_1, // left or upper arrow to scroll by page
879 wxHT_SCROLLBAR_ARROW_PAGE_2, // right or down
880 wxHT_SCROLLBAR_THUMB, // on the thumb
881 wxHT_SCROLLBAR_BAR_1, // bar to the left/above the thumb
882 wxHT_SCROLLBAR_BAR_2, // bar to the right/below the thumb
883 wxHT_SCROLLBAR_LAST,
884
885 // window
886 wxHT_WINDOW_OUTSIDE, // not in this window at all
887 wxHT_WINDOW_INSIDE, // in the client area
888 wxHT_WINDOW_VERT_SCROLLBAR, // on the vertical scrollbar
889 wxHT_WINDOW_HORZ_SCROLLBAR, // on the horizontal scrollbar
890 wxHT_WINDOW_CORNER, // on the corner between 2 scrollbars
891
892 wxHT_MAX
893};
894
895
896%{
897#if ! wxUSE_HOTKEY
898enum wxHotkeyModifier
899{
900 wxMOD_NONE = 0,
901 wxMOD_ALT = 1,
902 wxMOD_CONTROL = 2,
903 wxMOD_SHIFT = 4,
904 wxMOD_WIN = 8
905};
906#define wxEVT_HOTKEY 9999
907#endif
908%}
909
910enum wxHotkeyModifier
911{
912 wxMOD_NONE = 0,
913 wxMOD_ALT = 1,
914 wxMOD_CONTROL = 2,
915 wxMOD_SHIFT = 4,
916 wxMOD_WIN = 8
917};
918
919
920enum wxUpdateUI
921{
922 wxUPDATE_UI_NONE = 0x0000,
923 wxUPDATE_UI_RECURSE = 0x0001,
924 wxUPDATE_UI_FROMIDLE = 0x0002 // Invoked from On(Internal)Idle
925};
926
927
928
929//---------------------------------------------------------------------------
930