X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/6a8b9da42c22b34c1f8ea5f10080e7c51e21a330..5020e71e3def44f53aed389b5a09d4ec3cd1155d:/wxPython/src/_defs.i diff --git a/wxPython/src/_defs.i b/wxPython/src/_defs.i index 85d6a8049a..c887d74f81 100644 --- a/wxPython/src/_defs.i +++ b/wxPython/src/_defs.i @@ -40,13 +40,14 @@ typedef unsigned char byte; //---------------------------------------------------------------------- // Various SWIG macros and such -#define %addtofunc %feature("addtofunc") +#define %pythonAppend %feature("pythonappend") +#define %pythonPrepend %feature("pythonprepend") #define %kwargs %feature("kwargs") #define %nokwargs %feature("nokwargs") -#ifndef %shadow -#define %shadow %insert("shadow") -#endif +//#ifndef %shadow +//#define %shadow %insert("shadow") +//#endif #ifndef %pythoncode #define %pythoncode %insert("python") @@ -64,6 +65,16 @@ typedef unsigned char byte; %mutable; %enddef +%define MAKE_CONST_WXSTRING2(strname, val) + %{ static const wxString wxPy##strname(val); %} + %immutable; + %name(strname) const wxString wxPy##strname; + %mutable; +%enddef + +%define MAKE_CONST_WXSTRING_NOSWIG(strname) + %{ static const wxString wxPy##strname(wx##strname); %} +%enddef // Generate code in the module init for the event types, since they may not be // initialized yet when they are used in the static swig_const_table. @@ -75,10 +86,15 @@ typedef unsigned char byte; // Macros for the docstring and autodoc features of SWIG. // Set the docsring for the given full or partial declaration -#define DocStr(decl, docstr) %feature("docstring") decl docstr +%define DocStr(decl, docstr) + %feature("docstring") decl docstr; + //%feature("refdoc") decl ""; +%enddef // Set the autodoc string for a full or partial declaration -#define DocA(decl, astr) %feature("autodoc") decl astr +%define DocA(decl, astr) + %feature("autodoc") decl astr; +%enddef // Set both the autodoc and docstring for a full or partial declaration %define DocAStr(decl, astr, docstr) @@ -186,6 +202,7 @@ typedef unsigned char byte; // A placeholder for the detailed reference docs. %define RefDoc(decl, docstr) + %feature("refdoc") decl docstr; %enddef @@ -195,6 +212,39 @@ typedef unsigned char byte; } %enddef +//--------------------------------------------------------------------------- +// Forward declarations and %renames for some classes, so the autodoc strings +// will be able to use the right types even when the real class declaration is +// not in the module being processed. + +#ifdef BUILDING_RENAMERS + #define FORWARD_DECLARE(wxName, Name) +#else + %define FORWARD_DECLARE(wxName, Name) + %rename(Name) wxName; + class wxName; + %enddef +#endif + +FORWARD_DECLARE(wxString, String); +FORWARD_DECLARE(wxBitmap, Bitmap); +FORWARD_DECLARE(wxDateTime, DateTime); +FORWARD_DECLARE(wxInputStream, InputStream); +FORWARD_DECLARE(wxDC, DC); +FORWARD_DECLARE(wxCursor, Cursor); +FORWARD_DECLARE(wxRegion, Region); +FORWARD_DECLARE(wxColour, Colour); +FORWARD_DECLARE(wxFont, Font); +FORWARD_DECLARE(wxCaret, Caret); +FORWARD_DECLARE(wxToolTip, ToolTip); +FORWARD_DECLARE(wxPyDropTarget, DropTarget); +FORWARD_DECLARE(wxImageList, ImageList); +FORWARD_DECLARE(wxMemoryDC, MemoryDC); +FORWARD_DECLARE(wxHtmlTagHandler, HtmlTagHandler); +FORWARD_DECLARE(wxConfigBase, ConfigBase); +FORWARD_DECLARE(wxIcon, Icon); + + //--------------------------------------------------------------------------- // General numeric #define's and etc. Making them all enums makes SWIG use the @@ -218,8 +268,6 @@ enum { wxSTATIC_BORDER, wxTRANSPARENT_WINDOW, wxNO_BORDER, - wxUSER_COLOURS, - wxNO_3D, wxTAB_TRAVERSAL, wxWANTS_CHARS, @@ -228,31 +276,6 @@ enum { wxCENTRE_ON_SCREEN, wxCENTER_ON_SCREEN, - wxSTAY_ON_TOP, - wxICONIZE, - wxMINIMIZE, - wxMAXIMIZE, - wxCLOSE_BOX, - wxTHICK_FRAME, - wxSYSTEM_MENU, - wxMINIMIZE_BOX, - wxMAXIMIZE_BOX, - wxTINY_CAPTION_HORIZ, - wxTINY_CAPTION_VERT, - wxRESIZE_BOX, - wxRESIZE_BORDER, - wxDIALOG_MODAL, - wxDIALOG_MODELESS, - wxDIALOG_NO_PARENT, - wxDEFAULT_FRAME_STYLE, - wxDEFAULT_DIALOG_STYLE, - - wxFRAME_TOOL_WINDOW, - wxFRAME_FLOAT_ON_PARENT, - wxFRAME_NO_WINDOW_MENU, - wxFRAME_NO_TASKBAR, - wxFRAME_SHAPED, - wxED_CLIENT_MARGIN, wxED_BUTTONS_BOTTOM, wxED_BUTTONS_RIGHT, @@ -262,6 +285,8 @@ enum { wxCLIP_CHILDREN, wxCLIP_SIBLINGS, + wxALWAYS_SHOW_SB, + wxRETAINED, wxBACKINGSTORE, @@ -494,6 +519,13 @@ enum { }; +#ifdef __WXGTK__ +#define wxDEFAULT_STATUSBAR_STYLE wxST_SIZEGRIP|wxFULL_REPAINT_ON_RESIZE +#else +#define wxDEFAULT_STATUSBAR_STYLE wxST_SIZEGRIP +#endif + + enum wxGeometryCentre { @@ -552,8 +584,9 @@ enum wxStretch wxGROW, wxEXPAND, wxSHAPED, - wxADJUST_MINSIZE, + wxFIXED_MINSIZE, wxTILE, + wxADJUST_MINSIZE, }; @@ -826,13 +859,14 @@ typedef enum { // menu and toolbar item kinds enum wxItemKind { - wxITEM_SEPARATOR = -1, + wxITEM_SEPARATOR, wxITEM_NORMAL, wxITEM_CHECK, wxITEM_RADIO, wxITEM_MAX }; + enum wxHitTest { wxHT_NOWHERE,