]> git.saurik.com Git - wxWidgets.git/blame - wxPython/src/_defs.i
Gave wxWindow.GetHandle something to do on wxMac, although it won't
[wxWidgets.git] / wxPython / src / _defs.i
CommitLineData
7bf85405
RD
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
dd9f7fea
RD
14// Globally turn on the autodoc feature
15%feature("autodoc", "1"); // 0 == no param types, 1 == show param types
16
7bf85405
RD
17
18//---------------------------------------------------------------------------
d14a1e28 19// some type definitions to simplify things for SWIG
af309447 20
dd9f7fea
RD
21// typedef int wxWindowID;
22// typedef int wxCoord;
23// typedef int wxInt32;
24// typedef unsigned int wxUint32;
d14a1e28
RD
25typedef int wxEventType;
26typedef unsigned int size_t;
27typedef unsigned int time_t;
28typedef unsigned char byte;
29
dd9f7fea
RD
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
d14a1e28
RD
39
40//----------------------------------------------------------------------
41// Various SWIG macros and such
42
2b9048c5
RD
43#define %pythonAppend %feature("pythonappend")
44#define %pythonPrepend %feature("pythonprepend")
d14a1e28
RD
45#define %kwargs %feature("kwargs")
46#define %nokwargs %feature("nokwargs")
d14a1e28 47
2b9048c5
RD
48//#ifndef %shadow
49//#define %shadow %insert("shadow")
50//#endif
d14a1e28
RD
51
52#ifndef %pythoncode
53#define %pythoncode %insert("python")
dd9f7fea 54#endif
d14a1e28
RD
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
b2dc1044 68%define MAKE_CONST_WXSTRING2(strname, val)
089142a5 69 %{ static const wxString wxPy##strname(val); %}
b2dc1044
RD
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
b1462dfa 78
d14a1e28
RD
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
dd9f7fea
RD
85
86// Macros for the docstring and autodoc features of SWIG.
87
88// Set the docsring for the given full or partial declaration
b2dc1044
RD
89%define DocStr(decl, docstr)
90 %feature("docstring") decl docstr;
91 //%feature("refdoc") decl "";
92%enddef
dd9f7fea
RD
93
94// Set the autodoc string for a full or partial declaration
b2dc1044
RD
95%define DocA(decl, astr)
96 %feature("autodoc") decl astr;
97%enddef
dd9f7fea
RD
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
1e0c8722
RD
202
203// A placeholder for the detailed reference docs.
204%define RefDoc(decl, docstr)
b2dc1044 205 %feature("refdoc") decl docstr;
1e0c8722 206%enddef
dd9f7fea
RD
207
208
d14a1e28
RD
209%define %newgroup
210%pythoncode {
211%#---------------------------------------------------------------------------
dd9f7fea 212}
d14a1e28 213%enddef
7bf85405 214
64e8a1f0
RD
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
b2dc1044
RD
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, PyDropTarget);
241FORWARD_DECLARE(wxImageList, ImageList);
242FORWARD_DECLARE(wxMemoryDC, MemoryDC);
243FORWARD_DECLARE(wxHtmlTagHandler, HtmlTagHandler);
244FORWARD_DECLARE(wxConfigBase, ConfigBase);
245FORWARD_DECLARE(wxIcon, Icon);
246
64e8a1f0 247
7bf85405
RD
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 {
d14a1e28
RD
254// wxMAJOR_VERSION,
255// wxMINOR_VERSION,
256// wxRELEASE_NUMBER,
7bf85405 257
08127323 258 wxNOT_FOUND,
7bf85405
RD
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 wxUSER_COLOURS,
272 wxNO_3D,
9cbf6f6e 273
7bf85405 274 wxTAB_TRAVERSAL,
1afc06c2 275 wxWANTS_CHARS,
0122b7e3 276 wxPOPUP_WINDOW,
7bf85405 277 wxCENTER_FRAME,
1afc06c2
RD
278 wxCENTRE_ON_SCREEN,
279 wxCENTER_ON_SCREEN,
280
7bf85405
RD
281 wxSTAY_ON_TOP,
282 wxICONIZE,
283 wxMINIMIZE,
284 wxMAXIMIZE,
9cbf6f6e 285 wxCLOSE_BOX,
7bf85405
RD
286 wxTHICK_FRAME,
287 wxSYSTEM_MENU,
288 wxMINIMIZE_BOX,
289 wxMAXIMIZE_BOX,
290 wxTINY_CAPTION_HORIZ,
291 wxTINY_CAPTION_VERT,
292 wxRESIZE_BOX,
293 wxRESIZE_BORDER,
294 wxDIALOG_MODAL,
295 wxDIALOG_MODELESS,
25832b3f 296 wxDIALOG_NO_PARENT,
7bf85405
RD
297 wxDEFAULT_FRAME_STYLE,
298 wxDEFAULT_DIALOG_STYLE,
b8b8dda7
RD
299
300 wxFRAME_TOOL_WINDOW,
bb0054cd 301 wxFRAME_FLOAT_ON_PARENT,
4c9993c3 302 wxFRAME_NO_WINDOW_MENU,
1b62f00d 303 wxFRAME_NO_TASKBAR,
1fded56b 304 wxFRAME_SHAPED,
4f3449b4 305
1afc06c2
RD
306 wxED_CLIENT_MARGIN,
307 wxED_BUTTONS_BOTTOM,
308 wxED_BUTTONS_RIGHT,
309 wxED_STATIC_LINE,
310 wxEXT_DIALOG_STYLE,
bb0054cd 311
08127323 312 wxCLIP_CHILDREN,
edf2f43e 313 wxCLIP_SIBLINGS,
b8b8dda7 314
7bf85405
RD
315 wxRETAINED,
316 wxBACKINGSTORE,
b96c7a38 317
7bf85405
RD
318 wxCOLOURED,
319 wxFIXED_LENGTH,
1b62f00d 320
7bf85405
RD
321 wxLB_NEEDED_SB,
322 wxLB_ALWAYS_SB,
323 wxLB_SORT,
324 wxLB_SINGLE,
325 wxLB_MULTIPLE,
326 wxLB_EXTENDED,
327 wxLB_OWNERDRAW,
328 wxLB_HSCROLL,
329 wxPROCESS_ENTER,
330 wxPASSWORD,
b1e930a5 331
7bf85405
RD
332 wxCB_SIMPLE,
333 wxCB_DROPDOWN,
334 wxCB_SORT,
335 wxCB_READONLY,
336 wxRA_HORIZONTAL,
337 wxRA_VERTICAL,
ed175610
RD
338 wxRA_SPECIFY_ROWS,
339 wxRA_SPECIFY_COLS,
7bf85405 340 wxRB_GROUP,
1e4a197e 341 wxRB_SINGLE,
7bf85405
RD
342 wxSL_HORIZONTAL,
343 wxSL_VERTICAL,
344 wxSL_AUTOTICKS,
345 wxSL_LABELS,
346 wxSL_LEFT,
347 wxSL_TOP,
348 wxSL_RIGHT,
349 wxSL_BOTTOM,
350 wxSL_BOTH,
351 wxSL_SELRANGE,
352 wxSB_HORIZONTAL,
353 wxSB_VERTICAL,
cf694132 354 wxST_SIZEGRIP,
2abc0a0f 355 wxST_NO_AUTORESIZE,
203c2f9a 356
7bf85405
RD
357 wxFLOOD_SURFACE,
358 wxFLOOD_BORDER,
359 wxODDEVEN_RULE,
360 wxWINDING_RULE,
361 wxTOOL_TOP,
362 wxTOOL_BOTTOM,
363 wxTOOL_LEFT,
364 wxTOOL_RIGHT,
365 wxOK,
366 wxYES_NO,
367 wxCANCEL,
368 wxYES,
369 wxNO,
1afc06c2
RD
370 wxNO_DEFAULT,
371 wxYES_DEFAULT,
7bf85405
RD
372 wxICON_EXCLAMATION,
373 wxICON_HAND,
374 wxICON_QUESTION,
375 wxICON_INFORMATION,
376 wxICON_STOP,
377 wxICON_ASTERISK,
378 wxICON_MASK,
1afc06c2
RD
379 wxICON_WARNING,
380 wxICON_ERROR,
381
382 wxFORWARD,
383 wxBACKWARD,
384 wxRESET,
385 wxHELP,
386 wxMORE,
387 wxSETUP,
388
f3d9dc1d 389
7bf85405
RD
390 wxSIZE_AUTO_WIDTH,
391 wxSIZE_AUTO_HEIGHT,
392 wxSIZE_AUTO,
393 wxSIZE_USE_EXISTING,
394 wxSIZE_ALLOW_MINUS_ONE,
7bf85405
RD
395 wxPORTRAIT,
396 wxLANDSCAPE,
bb0054cd
RD
397 wxPRINT_QUALITY_HIGH,
398 wxPRINT_QUALITY_MEDIUM,
399 wxPRINT_QUALITY_LOW,
400 wxPRINT_QUALITY_DRAFT,
26e335b8 401
3eb221f6
RD
402 wxID_ANY,
403 wxID_SEPARATOR,
404
d14a1e28 405 wxID_LOWEST,
7bf85405
RD
406 wxID_OPEN,
407 wxID_CLOSE,
408 wxID_NEW,
409 wxID_SAVE,
410 wxID_SAVEAS,
411 wxID_REVERT,
412 wxID_EXIT,
413 wxID_UNDO,
414 wxID_REDO,
415 wxID_HELP,
416 wxID_PRINT,
417 wxID_PRINT_SETUP,
418 wxID_PREVIEW,
419 wxID_ABOUT,
420 wxID_HELP_CONTENTS,
421 wxID_HELP_COMMANDS,
422 wxID_HELP_PROCEDURES,
423 wxID_HELP_CONTEXT,
b5a5d647 424 wxID_CLOSE_ALL,
1a10a058 425 wxID_PREFERENCES,
26e335b8 426
7bf85405
RD
427 wxID_CUT,
428 wxID_COPY,
429 wxID_PASTE,
430 wxID_CLEAR,
431 wxID_FIND,
d56cebe7
RD
432 wxID_DUPLICATE,
433 wxID_SELECTALL,
26e335b8 434
3ef86e32
RD
435 wxID_DELETE,
436 wxID_REPLACE,
437 wxID_REPLACE_ALL,
438 wxID_PROPERTIES,
439
440 wxID_VIEW_DETAILS,
441 wxID_VIEW_LARGEICONS,
442 wxID_VIEW_SMALLICONS,
443 wxID_VIEW_LIST,
444 wxID_VIEW_SORTDATE,
445 wxID_VIEW_SORTNAME,
446 wxID_VIEW_SORTSIZE,
447 wxID_VIEW_SORTTYPE,
448
7bf85405
RD
449 wxID_FILE1,
450 wxID_FILE2,
451 wxID_FILE3,
452 wxID_FILE4,
453 wxID_FILE5,
454 wxID_FILE6,
455 wxID_FILE7,
456 wxID_FILE8,
457 wxID_FILE9,
26e335b8 458
7bf85405
RD
459 wxID_OK,
460 wxID_CANCEL,
461 wxID_APPLY,
462 wxID_YES,
463 wxID_NO,
cf694132 464 wxID_STATIC,
f3d9dc1d
RD
465 wxID_FORWARD,
466 wxID_BACKWARD,
26e335b8 467 wxID_DEFAULT,
f3d9dc1d 468 wxID_MORE,
26e335b8
RD
469 wxID_SETUP,
470 wxID_RESET,
471 wxID_CONTEXT_HELP,
472 wxID_YESTOALL,
473 wxID_NOTOALL,
474 wxID_ABORT,
475 wxID_RETRY,
476 wxID_IGNORE,
f3d9dc1d 477
d14a1e28 478 wxID_HIGHEST,
dd9f7fea 479
7bf85405
RD
480 wxOPEN,
481 wxSAVE,
482 wxHIDE_READONLY,
483 wxOVERWRITE_PROMPT,
2abc0a0f 484 wxFILE_MUST_EXIST,
f6bcfd97 485 wxMULTIPLE,
1b62f00d 486 wxCHANGE_DIR,
7bf85405
RD
487
488 wxACCEL_ALT,
489 wxACCEL_CTRL,
490 wxACCEL_SHIFT,
f6bcfd97 491 wxACCEL_NORMAL,
bb0054cd
RD
492
493 wxPD_AUTO_HIDE,
494 wxPD_APP_MODAL,
495 wxPD_CAN_ABORT,
a08cbc01
RD
496 wxPD_ELAPSED_TIME,
497 wxPD_ESTIMATED_TIME,
498 wxPD_REMAINING_TIME,
bb0054cd 499
7cdaed0b 500 wxDD_NEW_DIR_BUTTON,
daa3eac9 501 wxDD_DEFAULT_STYLE,
7cdaed0b 502
8bf5d46e 503 wxMENU_TEAROFF,
1afc06c2 504 wxMB_DOCKABLE,
8bf5d46e 505 wxNO_FULL_REPAINT_ON_RESIZE,
6a8b9da4
RD
506 wxFULL_REPAINT_ON_RESIZE,
507
1afc06c2
RD
508 wxLI_HORIZONTAL,
509 wxLI_VERTICAL,
510
d1679124 511 wxWS_EX_VALIDATE_RECURSIVELY,
0122b7e3 512 wxWS_EX_BLOCK_EVENTS,
78e8819c 513 wxWS_EX_TRANSIENT,
ecc08ead 514
3ef86e32
RD
515 wxWS_EX_THEMED_BACKGROUND,
516 wxWS_EX_PROCESS_IDLE,
517 wxWS_EX_PROCESS_UI_UPDATES,
518
519
ecc08ead
RD
520 // Mapping modes (as per Windows)
521 wxMM_TEXT,
522 wxMM_LOMETRIC,
523 wxMM_HIMETRIC,
524 wxMM_LOENGLISH,
525 wxMM_HIENGLISH,
526 wxMM_TWIPS,
527 wxMM_ISOTROPIC,
528 wxMM_ANISOTROPIC,
529 wxMM_POINTS,
530 wxMM_METRIC,
531
3eb221f6 532
1e4a197e
RD
533 // It looks like wxTabCtrl may rise from the dead. Uncomment these if
534 // it gets an implementation for all platforms...
535// wxTC_RIGHTJUSTIFY,
536// wxTC_FIXEDWIDTH,
537// wxTC_TOP,
538// wxTC_LEFT,
539// wxTC_RIGHT,
540// wxTC_BOTTOM,
541// wxTC_MULTILINE,
542// wxTC_OWNERDRAW,
543
7bf85405
RD
544};
545
546
d14a1e28
RD
547
548enum wxGeometryCentre
549{
550 wxCENTRE = 0x0001,
551 wxCENTER = wxCENTRE
552};
553
554
555enum wxOrientation
556{
557 wxHORIZONTAL,
558 wxVERTICAL,
559 wxBOTH
560};
561
562enum wxDirection
563{
564 wxLEFT,
565 wxRIGHT,
566 wxUP,
567 wxDOWN,
568
569 wxTOP,
570 wxBOTTOM,
571
572 wxNORTH,
573 wxSOUTH,
574 wxWEST,
575 wxEAST,
576
577 wxALL
578};
579
580enum wxAlignment
581{
582 wxALIGN_NOT,
583 wxALIGN_CENTER_HORIZONTAL,
584 wxALIGN_CENTRE_HORIZONTAL,
585 wxALIGN_LEFT,
586 wxALIGN_TOP,
587 wxALIGN_RIGHT,
588 wxALIGN_BOTTOM,
589 wxALIGN_CENTER_VERTICAL,
590 wxALIGN_CENTRE_VERTICAL,
591
592 wxALIGN_CENTER,
593 wxALIGN_CENTRE,
594
595 wxALIGN_MASK,
596};
597
598enum wxStretch
599{
600 wxSTRETCH_NOT,
601 wxSHRINK,
602 wxGROW,
603 wxEXPAND,
604 wxSHAPED,
605 wxADJUST_MINSIZE,
606 wxTILE,
607};
608
609
ebf4302c
RD
610enum wxBorder
611{
612 wxBORDER_DEFAULT,
613 wxBORDER_NONE,
614 wxBORDER_STATIC,
615 wxBORDER_SIMPLE,
616 wxBORDER_RAISED,
617 wxBORDER_SUNKEN,
618 wxBORDER_DOUBLE,
619 wxBORDER_MASK,
620};
621
622
7bf85405
RD
623enum {
624 wxDEFAULT ,
625 wxDECORATIVE,
626 wxROMAN,
627 wxSCRIPT,
628 wxSWISS,
629 wxMODERN,
630 wxTELETYPE,
631 wxVARIABLE,
632 wxFIXED,
633 wxNORMAL,
634 wxLIGHT,
635 wxBOLD,
636 wxITALIC,
637 wxSLANT,
638 wxSOLID,
639 wxDOT,
640 wxLONG_DASH,
641 wxSHORT_DASH,
642 wxDOT_DASH,
643 wxUSER_DASH,
644 wxTRANSPARENT,
645 wxSTIPPLE,
646 wxBDIAGONAL_HATCH,
647 wxCROSSDIAG_HATCH,
648 wxFDIAGONAL_HATCH,
649 wxCROSS_HATCH,
650 wxHORIZONTAL_HATCH,
651 wxVERTICAL_HATCH,
652 wxJOIN_BEVEL,
653 wxJOIN_MITER,
654 wxJOIN_ROUND,
655 wxCAP_ROUND,
656 wxCAP_PROJECTING,
657 wxCAP_BUTT
658};
659
660typedef enum {
661 wxCLEAR, // 0
662 wxXOR, // src XOR dst
663 wxINVERT, // NOT dst
664 wxOR_REVERSE, // src OR (NOT dst)
665 wxAND_REVERSE,// src AND (NOT dst)
666 wxCOPY, // src
667 wxAND, // src AND dst
668 wxAND_INVERT, // (NOT src) AND dst
669 wxNO_OP, // dst
670 wxNOR, // (NOT src) AND (NOT dst)
671 wxEQUIV, // (NOT src) XOR dst
672 wxSRC_INVERT, // (NOT src)
673 wxOR_INVERT, // (NOT src) OR dst
674 wxNAND, // (NOT src) OR (NOT dst)
675 wxOR, // src OR dst
676 wxSET, // 1
26b9cf27
RD
677// wxSRC_OR, // source _bitmap_ OR destination
678// wxSRC_AND // source _bitmap_ AND destination
7bf85405
RD
679} form_ops_t;
680
65fe3842
RD
681enum wxKeyCode {
682 WXK_BACK = 8,
683 WXK_TAB = 9,
684 WXK_RETURN = 13,
685 WXK_ESCAPE = 27,
686 WXK_SPACE = 32,
687 WXK_DELETE = 127,
688
689 WXK_START = 300,
690 WXK_LBUTTON,
691 WXK_RBUTTON,
692 WXK_CANCEL,
693 WXK_MBUTTON,
694 WXK_CLEAR,
695 WXK_SHIFT,
696 WXK_ALT,
697 WXK_CONTROL,
698 WXK_MENU,
699 WXK_PAUSE,
700 WXK_CAPITAL,
701 WXK_PRIOR, /* Page up */
702 WXK_NEXT, /* Page down */
703 WXK_END,
704 WXK_HOME,
705 WXK_LEFT,
706 WXK_UP,
707 WXK_RIGHT,
708 WXK_DOWN,
709 WXK_SELECT,
710 WXK_PRINT,
711 WXK_EXECUTE,
712 WXK_SNAPSHOT,
713 WXK_INSERT,
714 WXK_HELP,
715 WXK_NUMPAD0,
716 WXK_NUMPAD1,
717 WXK_NUMPAD2,
718 WXK_NUMPAD3,
719 WXK_NUMPAD4,
720 WXK_NUMPAD5,
721 WXK_NUMPAD6,
722 WXK_NUMPAD7,
723 WXK_NUMPAD8,
724 WXK_NUMPAD9,
725 WXK_MULTIPLY,
726 WXK_ADD,
727 WXK_SEPARATOR,
728 WXK_SUBTRACT,
729 WXK_DECIMAL,
730 WXK_DIVIDE,
731 WXK_F1,
732 WXK_F2,
733 WXK_F3,
734 WXK_F4,
735 WXK_F5,
736 WXK_F6,
737 WXK_F7,
738 WXK_F8,
739 WXK_F9,
740 WXK_F10,
741 WXK_F11,
742 WXK_F12,
743 WXK_F13,
744 WXK_F14,
745 WXK_F15,
746 WXK_F16,
747 WXK_F17,
748 WXK_F18,
749 WXK_F19,
750 WXK_F20,
751 WXK_F21,
752 WXK_F22,
753 WXK_F23,
754 WXK_F24,
755 WXK_NUMLOCK,
756 WXK_SCROLL,
757 WXK_PAGEUP,
758 WXK_PAGEDOWN,
759
760 WXK_NUMPAD_SPACE,
761 WXK_NUMPAD_TAB,
762 WXK_NUMPAD_ENTER,
763 WXK_NUMPAD_F1,
764 WXK_NUMPAD_F2,
765 WXK_NUMPAD_F3,
766 WXK_NUMPAD_F4,
767 WXK_NUMPAD_HOME,
768 WXK_NUMPAD_LEFT,
769 WXK_NUMPAD_UP,
770 WXK_NUMPAD_RIGHT,
771 WXK_NUMPAD_DOWN,
772 WXK_NUMPAD_PRIOR,
773 WXK_NUMPAD_PAGEUP,
774 WXK_NUMPAD_NEXT,
775 WXK_NUMPAD_PAGEDOWN,
776 WXK_NUMPAD_END,
777 WXK_NUMPAD_BEGIN,
778 WXK_NUMPAD_INSERT,
779 WXK_NUMPAD_DELETE,
780 WXK_NUMPAD_EQUAL,
781 WXK_NUMPAD_MULTIPLY,
782 WXK_NUMPAD_ADD,
783 WXK_NUMPAD_SEPARATOR,
784 WXK_NUMPAD_SUBTRACT,
785 WXK_NUMPAD_DECIMAL,
9cbf6f6e
RD
786 WXK_NUMPAD_DIVIDE,
787
788 WXK_WINDOWS_LEFT,
789 WXK_WINDOWS_RIGHT,
790 WXK_WINDOWS_MENU
65fe3842 791
7bf85405
RD
792};
793
0a651eb8 794
cf694132
RD
795
796typedef enum {
797 wxPAPER_NONE, // Use specific dimensions
798 wxPAPER_LETTER, // Letter, 8 1/2 by 11 inches
799 wxPAPER_LEGAL, // Legal, 8 1/2 by 14 inches
800 wxPAPER_A4, // A4 Sheet, 210 by 297 millimeters
801 wxPAPER_CSHEET, // C Sheet, 17 by 22 inches
802 wxPAPER_DSHEET, // D Sheet, 22 by 34 inches
803 wxPAPER_ESHEET, // E Sheet, 34 by 44 inches
804 wxPAPER_LETTERSMALL, // Letter Small, 8 1/2 by 11 inches
805 wxPAPER_TABLOID, // Tabloid, 11 by 17 inches
806 wxPAPER_LEDGER, // Ledger, 17 by 11 inches
807 wxPAPER_STATEMENT, // Statement, 5 1/2 by 8 1/2 inches
808 wxPAPER_EXECUTIVE, // Executive, 7 1/4 by 10 1/2 inches
809 wxPAPER_A3, // A3 sheet, 297 by 420 millimeters
810 wxPAPER_A4SMALL, // A4 small sheet, 210 by 297 millimeters
811 wxPAPER_A5, // A5 sheet, 148 by 210 millimeters
812 wxPAPER_B4, // B4 sheet, 250 by 354 millimeters
813 wxPAPER_B5, // B5 sheet, 182-by-257-millimeter paper
814 wxPAPER_FOLIO, // Folio, 8-1/2-by-13-inch paper
815 wxPAPER_QUARTO, // Quarto, 215-by-275-millimeter paper
816 wxPAPER_10X14, // 10-by-14-inch sheet
817 wxPAPER_11X17, // 11-by-17-inch sheet
818 wxPAPER_NOTE, // Note, 8 1/2 by 11 inches
819 wxPAPER_ENV_9, // #9 Envelope, 3 7/8 by 8 7/8 inches
820 wxPAPER_ENV_10, // #10 Envelope, 4 1/8 by 9 1/2 inches
821 wxPAPER_ENV_11, // #11 Envelope, 4 1/2 by 10 3/8 inches
822 wxPAPER_ENV_12, // #12 Envelope, 4 3/4 by 11 inches
823 wxPAPER_ENV_14, // #14 Envelope, 5 by 11 1/2 inches
824 wxPAPER_ENV_DL, // DL Envelope, 110 by 220 millimeters
825 wxPAPER_ENV_C5, // C5 Envelope, 162 by 229 millimeters
826 wxPAPER_ENV_C3, // C3 Envelope, 324 by 458 millimeters
827 wxPAPER_ENV_C4, // C4 Envelope, 229 by 324 millimeters
828 wxPAPER_ENV_C6, // C6 Envelope, 114 by 162 millimeters
829 wxPAPER_ENV_C65, // C65 Envelope, 114 by 229 millimeters
830 wxPAPER_ENV_B4, // B4 Envelope, 250 by 353 millimeters
831 wxPAPER_ENV_B5, // B5 Envelope, 176 by 250 millimeters
832 wxPAPER_ENV_B6, // B6 Envelope, 176 by 125 millimeters
833 wxPAPER_ENV_ITALY, // Italy Envelope, 110 by 230 millimeters
834 wxPAPER_ENV_MONARCH, // Monarch Envelope, 3 7/8 by 7 1/2 inches
835 wxPAPER_ENV_PERSONAL, // 6 3/4 Envelope, 3 5/8 by 6 1/2 inches
836 wxPAPER_FANFOLD_US, // US Std Fanfold, 14 7/8 by 11 inches
837 wxPAPER_FANFOLD_STD_GERMAN, // German Std Fanfold, 8 1/2 by 12 inches
838 wxPAPER_FANFOLD_LGL_GERMAN, // German Legal Fanfold, 8 1/2 by 13 inches
839
840 wxPAPER_ISO_B4, // B4 (ISO) 250 x 353 mm
841 wxPAPER_JAPANESE_POSTCARD, // Japanese Postcard 100 x 148 mm
842 wxPAPER_9X11, // 9 x 11 in
843 wxPAPER_10X11, // 10 x 11 in
844 wxPAPER_15X11, // 15 x 11 in
845 wxPAPER_ENV_INVITE, // Envelope Invite 220 x 220 mm
846 wxPAPER_LETTER_EXTRA, // Letter Extra 9 \275 x 12 in
847 wxPAPER_LEGAL_EXTRA, // Legal Extra 9 \275 x 15 in
848 wxPAPER_TABLOID_EXTRA, // Tabloid Extra 11.69 x 18 in
849 wxPAPER_A4_EXTRA, // A4 Extra 9.27 x 12.69 in
850 wxPAPER_LETTER_TRANSVERSE, // Letter Transverse 8 \275 x 11 in
851 wxPAPER_A4_TRANSVERSE, // A4 Transverse 210 x 297 mm
852 wxPAPER_LETTER_EXTRA_TRANSVERSE, // Letter Extra Transverse 9\275 x 12 in
853 wxPAPER_A_PLUS, // SuperA/SuperA/A4 227 x 356 mm
854 wxPAPER_B_PLUS, // SuperB/SuperB/A3 305 x 487 mm
855 wxPAPER_LETTER_PLUS, // Letter Plus 8.5 x 12.69 in
856 wxPAPER_A4_PLUS, // A4 Plus 210 x 330 mm
857 wxPAPER_A5_TRANSVERSE, // A5 Transverse 148 x 210 mm
858 wxPAPER_B5_TRANSVERSE, // B5 (JIS) Transverse 182 x 257 mm
859 wxPAPER_A3_EXTRA, // A3 Extra 322 x 445 mm
860 wxPAPER_A5_EXTRA, // A5 Extra 174 x 235 mm
861 wxPAPER_B5_EXTRA, // B5 (ISO) Extra 201 x 276 mm
862 wxPAPER_A2, // A2 420 x 594 mm
863 wxPAPER_A3_TRANSVERSE, // A3 Transverse 297 x 420 mm
864 wxPAPER_A3_EXTRA_TRANSVERSE // A3 Extra Transverse 322 x 445 mm
865
866} wxPaperSize ;
867
bb0054cd
RD
868typedef enum {
869 wxDUPLEX_SIMPLEX, // Non-duplex
870 wxDUPLEX_HORIZONTAL,
871 wxDUPLEX_VERTICAL
872} wxDuplexMode;
873
cf694132
RD
874
875
e9159fe8
RD
876// menu and toolbar item kinds
877enum wxItemKind
878{
addd64ee 879 wxITEM_SEPARATOR,
546bfbea
VS
880 wxITEM_NORMAL,
881 wxITEM_CHECK,
882 wxITEM_RADIO,
883 wxITEM_MAX
e9159fe8
RD
884};
885
64e8a1f0 886
23bed520
RD
887enum wxHitTest
888{
889 wxHT_NOWHERE,
890
891 // scrollbar
892 wxHT_SCROLLBAR_FIRST = wxHT_NOWHERE,
893 wxHT_SCROLLBAR_ARROW_LINE_1, // left or upper arrow to scroll by line
894 wxHT_SCROLLBAR_ARROW_LINE_2, // right or down
895 wxHT_SCROLLBAR_ARROW_PAGE_1, // left or upper arrow to scroll by page
896 wxHT_SCROLLBAR_ARROW_PAGE_2, // right or down
897 wxHT_SCROLLBAR_THUMB, // on the thumb
898 wxHT_SCROLLBAR_BAR_1, // bar to the left/above the thumb
899 wxHT_SCROLLBAR_BAR_2, // bar to the right/below the thumb
900 wxHT_SCROLLBAR_LAST,
901
902 // window
903 wxHT_WINDOW_OUTSIDE, // not in this window at all
904 wxHT_WINDOW_INSIDE, // in the client area
905 wxHT_WINDOW_VERT_SCROLLBAR, // on the vertical scrollbar
906 wxHT_WINDOW_HORZ_SCROLLBAR, // on the horizontal scrollbar
907 wxHT_WINDOW_CORNER, // on the corner between 2 scrollbars
908
909 wxHT_MAX
910};
911
912
3ef86e32
RD
913%{
914#if ! wxUSE_HOTKEY
915enum wxHotkeyModifier
916{
917 wxMOD_NONE = 0,
918 wxMOD_ALT = 1,
919 wxMOD_CONTROL = 2,
920 wxMOD_SHIFT = 4,
921 wxMOD_WIN = 8
922};
923#define wxEVT_HOTKEY 9999
924#endif
925%}
926
927enum wxHotkeyModifier
928{
929 wxMOD_NONE = 0,
930 wxMOD_ALT = 1,
931 wxMOD_CONTROL = 2,
932 wxMOD_SHIFT = 4,
933 wxMOD_WIN = 8
934};
935
936
937enum wxUpdateUI
938{
939 wxUPDATE_UI_NONE = 0x0000,
940 wxUPDATE_UI_RECURSE = 0x0001,
941 wxUPDATE_UI_FROMIDLE = 0x0002 // Invoked from On(Internal)Idle
942};
943
944
23bed520 945
7bf85405
RD
946//---------------------------------------------------------------------------
947