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