X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/a7a014180017908d32f0af32ebfa140fdc82b390..171284c29acb551868f81bd6e5c2fb0b3d069062:/wxPython/src/_defs.i diff --git a/wxPython/src/_defs.i b/wxPython/src/_defs.i index 691a02987d..1751c9d5e5 100644 --- a/wxPython/src/_defs.i +++ b/wxPython/src/_defs.i @@ -31,6 +31,10 @@ %feature("nodefaultdtor"); #endif +// For all items that don't have a %rename already, give them a %rename that +// removes the leading 'wx' (except for wxEVT_* items.) +%rename("%(wxpy)s") ""; + // For now, just supress the warning about using Python keywords as parameter // names. Will need to come back later and correct these rather than just // hide them... @@ -50,7 +54,10 @@ // This one will turn off the generation of the thread wrapper code %define %threadWrapperOff -%exception +%exception { + $action + if (PyErr_Occurred()) SWIG_fail; +} %enddef // Turn it on by default @@ -68,8 +75,16 @@ } %enddef - +// This macro can be used to disable the releasing of the GIL when calling the +// C++ function. This is like using threadWrapperOff for just this function. +%define KeepGIL(name) +%exception name { + $action + if (PyErr_Occurred()) SWIG_fail; +} +%enddef + //--------------------------------------------------------------------------- // some type definitions to simplify things for SWIG @@ -93,6 +108,7 @@ typedef unsigned long wxUIntPtr; #define %noautodoc %feature("noautodoc") #if SWIG_VERSION >= 0x010327 +#undef %kwargs #define %kwargs %feature("kwargs", "1") #define %nokwargs %feature("kwargs", "0") #else @@ -103,6 +119,8 @@ typedef unsigned long wxUIntPtr; #define %disownarg(typespec) %typemap(in) typespec = SWIGTYPE* DISOWN #define %cleardisown(typespec) %typemap(in) typespec +#define %ref %feature("ref") +#define %unref %feature("unref") #ifndef %pythoncode @@ -140,6 +158,15 @@ typedef unsigned long wxUIntPtr; %typemap(constcode) wxEventType "PyDict_SetItemString(d, \"$symname\", PyInt_FromLong($value));"; +%define %property(NAME, STUFF...) + %pythoncode { NAME = property(STUFF) } +%enddef + + +%define setCallbackInfo(klass) + "klass._setCallbackInfo(self, self, klass)" +%enddef + //---------------------------------------------------------------------- // Macros for the docstring and autodoc features of SWIG. These will @@ -475,6 +502,8 @@ enum { wxCLIP_CHILDREN, wxCLIP_SIBLINGS, + wxWINDOW_STYLE_MASK, + wxALWAYS_SHOW_SB, wxRETAINED, @@ -491,8 +520,6 @@ enum { wxLB_EXTENDED, wxLB_OWNERDRAW, wxLB_HSCROLL, - wxPROCESS_ENTER, - wxPASSWORD, wxCB_SIMPLE, wxCB_DROPDOWN, @@ -509,8 +536,7 @@ enum { wxSB_VERTICAL, wxRB_USE_CHECKBOX, wxST_SIZEGRIP, - wxST_NO_AUTORESIZE, - + wxFLOOD_SURFACE, wxFLOOD_BORDER, wxODDEVEN_RULE, @@ -574,15 +600,19 @@ enum { wxID_HELP, wxID_PRINT, wxID_PRINT_SETUP, + wxID_PAGE_SETUP, wxID_PREVIEW, wxID_ABOUT, wxID_HELP_CONTENTS, wxID_HELP_COMMANDS, wxID_HELP_PROCEDURES, wxID_HELP_CONTEXT, + wxID_HELP_INDEX, + wxID_HELP_SEARCH, wxID_CLOSE_ALL, wxID_PREFERENCES, + wxID_EDIT, wxID_CUT, wxID_COPY, wxID_PASTE, @@ -605,6 +635,7 @@ enum { wxID_VIEW_SORTSIZE, wxID_VIEW_SORTTYPE, + wxID_FILE, wxID_FILE1, wxID_FILE2, wxID_FILE3, @@ -662,31 +693,6 @@ enum { wxID_HIGHEST, - wxOPEN, - wxSAVE, - wxHIDE_READONLY, - wxOVERWRITE_PROMPT, - wxFILE_MUST_EXIST, - wxMULTIPLE, - wxCHANGE_DIR, - - wxACCEL_ALT, - wxACCEL_CTRL, - wxACCEL_SHIFT, - wxACCEL_NORMAL, - - wxPD_AUTO_HIDE, - wxPD_APP_MODAL, - wxPD_CAN_ABORT, - wxPD_ELAPSED_TIME, - wxPD_ESTIMATED_TIME, - wxPD_REMAINING_TIME, - wxPD_SMOOTH, - wxPD_CAN_SKIP, - - wxDD_NEW_DIR_BUTTON, - wxDD_DEFAULT_STYLE, - wxMENU_TEAROFF, wxMB_DOCKABLE, wxNO_FULL_REPAINT_ON_RESIZE, @@ -791,9 +797,8 @@ enum wxStretch wxSHAPED, wxFIXED_MINSIZE, wxTILE, - wxADJUST_MINSIZE, }; - +%pythoncode { ADJUST_MINSIZE = 0 } enum wxBorder { @@ -896,8 +901,6 @@ enum wxKeyCode { WXK_MENU, WXK_PAUSE, WXK_CAPITAL, - WXK_PRIOR, /* Page up */ - WXK_NEXT, /* Page down */ WXK_END, WXK_HOME, WXK_LEFT, @@ -967,9 +970,7 @@ enum wxKeyCode { WXK_NUMPAD_UP, WXK_NUMPAD_RIGHT, WXK_NUMPAD_DOWN, - WXK_NUMPAD_PRIOR, WXK_NUMPAD_PAGEUP, - WXK_NUMPAD_NEXT, WXK_NUMPAD_PAGEDOWN, WXK_NUMPAD_END, WXK_NUMPAD_BEGIN, @@ -1012,7 +1013,13 @@ enum wxKeyCode { WXK_SPECIAL20 }; - +// deprecated synonymns +%pythoncode { + WXK_PRIOR = WXK_PAGEUP + WXK_NEXT = WXK_PAGEDOWN + WXK_NUMPAD_PRIOR = WXK_NUMPAD_PAGEUP + WXK_NUMPAD_NEXT = WXK_NUMPAD_PAGEDOWN +} typedef enum { wxPAPER_NONE, // Use specific dimensions @@ -1205,6 +1212,14 @@ enum wxUpdateUI }; +enum wxLayoutDirection +{ + wxLayout_Default, + wxLayout_LeftToRight, + wxLayout_RightToLeft +}; + + //---------------------------------------------------------------------------