X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/88c7f3f938da664299073a412a146440de447e06..015fd9ef4833ec3d8b0043a1c7e448c8be4f734a:/wxPython/src/_defs.i?ds=sidebyside diff --git a/wxPython/src/_defs.i b/wxPython/src/_defs.i index 8438ac2783..77d040b614 100644 --- a/wxPython/src/_defs.i +++ b/wxPython/src/_defs.i @@ -11,156 +11,334 @@ ///////////////////////////////////////////////////////////////////////////// - //--------------------------------------------------------------------------- -// Forward declares... - -class wxAcceleratorEntry; -class wxAcceleratorTable; -class wxActivateEvent; -class wxBitmapButton; -class wxBitmap; -class wxBrush; -class wxButton; -class wxCalculateLayoutEvent; -class wxCaret; -class wxCheckBox; -class wxCheckListBox; -class wxChoice; -class wxClientDC; -class wxCloseEvent; -class wxColourData; -class wxColourDialog; -class wxColour; -class wxComboBox; -class wxCommandEvent; -class wxConfig; -class wxControl; -class wxCursor; -class wxDC; -class wxDialog; -class wxDirDialog; -class wxDropFilesEvent; -class wxEraseEvent; -class wxEvent; -class wxEvtHandler; -class wxFileDialog; -class wxFocusEvent; -class wxFontData; -class wxFontDialog; -class wxFont; -class wxFrame; -class wxGauge; -class wxGridCell; -class wxGridEvent; -class wxGrid; -class wxIconizeEvent; -class wxIcon; -class wxIdleEvent; -class wxImageList; -class wxIndividualLayoutConstraint; -class wxInitDialogEvent; -class wxJoystickEvent; -class wxKeyEvent; -class wxLayoutAlgorithm; -class wxLayoutConstraints; -class wxListBox; -class wxListCtrl; -class wxListEvent; -class wxListItem; -class wxMDIChildFrame; -class wxMDIClientWindow; -class wxMDIParentFrame; -class wxMask; -class wxMaximizeEvent; -class wxMemoryDC; -class wxMenuBar; -class wxMenuEvent; -class wxMenuItem; -class wxMenu; -class wxMessageDialog; -class wxMetaFileDC; -class wxMiniFrame; -class wxMouseEvent; -class wxMoveEvent; -class wxNotebookEvent; -class wxNotebook; -class wxPageSetupData; -class wxPageSetupDialog; -class wxPaintDC; -class wxPaintEvent; -class wxPalette; -class wxPanel; -class wxPen; -class wxPoint; -class wxPostScriptDC; -class wxPrintData; -class wxPrintDialog; -class wxPrinterDC; -class wxQueryLayoutInfoEvent; -class wxRadioBox; -class wxRadioButton; -class wxRealPoint; -class wxRect; -class wxRegionIterator; -class wxRegion; -class wxSashEvent; -class wxSashLayoutWindow; -class wxSashWindow; -class wxScreenDC; -class wxScrollBar; -class wxScrollEvent; -class wxScrollWinEvent; -class wxScrolledWindow; -class wxShowEvent; -class wxSingleChoiceDialog; -class wxSizeEvent; -class wxSize; -class wxSlider; -class wxSpinButton; -class wxSpinEvent; -class wxSplitterWindow; -class wxStaticBitmap; -class wxStaticBox; -class wxStaticText; -class wxStatusBar; -class wxSysColourChangedEvent; -class wxTaskBarIcon; -class wxTextCtrl; -class wxTextEntryDialog; -class wxTimer; -class wxToolBarTool; -class wxToolBar; -class wxToolTip; -class wxTreeCtrl; -class wxTreeEvent; -class wxTreeItemData; -class wxTreeItemId; -class wxUpdateUIEvent; -class wxWindowDC; -class wxWindow; -class wxSizer; -class wxBoxSizer; -class wxStaticBoxSizer; - -class wxPyApp; -class wxPyMenu; -class wxPyTimer; +// Globally turn on the autodoc feature + +%feature("autodoc", "1"); // 0 == no param types, 1 == show param types +//--------------------------------------------------------------------------- +// Tell SWIG to wrap all the wrappers with our thread protection by default + +%exception { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + $action + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; +} + + +// This one can be used to add a check for an existing wxApp before the real +// work is done. An exception is raised if there isn't one. +%define MustHaveApp(name) + %exception name { + if (!wxPyCheckForApp()) SWIG_fail; + PyThreadState* __tstate = wxPyBeginAllowThreads(); + $action + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } +%enddef + + //--------------------------------------------------------------------------- +// some type definitions to simplify things for SWIG -// some definitions for SWIG only +typedef int wxEventType; +typedef unsigned int size_t; +typedef unsigned int time_t; typedef unsigned char byte; -typedef short int WXTYPE; -typedef int wxWindowID; -typedef unsigned int uint; -typedef signed int EBool; -typedef unsigned int size_t -typedef unsigned int time_t -typedef int wxPrintQuality; -typedef int wxCoord; -typedef char wxChar; + +#define wxWindowID int +#define wxCoord int +#define wxInt32 int +#define wxUint32 unsigned int + + +//---------------------------------------------------------------------- +// Various SWIG macros and such + +#define %pythonAppend %feature("pythonappend") +#define %pythonPrepend %feature("pythonprepend") +#define %kwargs %feature("kwargs") +#define %nokwargs %feature("nokwargs") +#define %noautodoc %feature("noautodoc") + + +//#ifndef %shadow +//#define %shadow %insert("shadow") +//#endif + +#ifndef %pythoncode +#define %pythoncode %insert("python") +#endif + +#define WXUNUSED(x) x + + +// Given the name of a wxChar (or wxString) constant in C++, make +// a static wxString for wxPython, and also let SWIG wrap it. +%define MAKE_CONST_WXSTRING(strname) + %{ static const wxString wxPy##strname(wx##strname); %} + %immutable; + %name(strname) const wxString wxPy##strname; + %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. +%typemap(consttab) wxEventType; // TODO: how to prevent code inserted into the consttab? +%typemap(constcode) wxEventType "PyDict_SetItemString(d, \"$symname\", PyInt_FromLong($value));"; + + + +//---------------------------------------------------------------------- +// Macros for the docstring and autodoc features of SWIG. These will +// help make the code look more readable, and pretty, as well as help +// reduce typing in some cases. + +// Set the docsring for the given full or partial declaration +#ifdef _DO_FULL_DOCS + %define DocStr(decl, docstr, details) + %feature("docstring") decl docstr details; + %enddef +#else + %define DocStr(decl, docstr, details) + %feature("docstring") decl docstr; + %enddef +#endif + + +// Set the autodoc string for a full or partial declaration +%define DocA(decl, astr) + %feature("autodoc") decl astr; +%enddef + + +// Set both the autodoc and docstring for a full or partial declaration +#ifdef _DO_FULL_DOCS + %define DocAStr(decl, astr, docstr, details) + %feature("autodoc") decl astr; + %feature("docstring") decl docstr details + %enddef +#else + %define DocAStr(decl, astr, docstr, details) + %feature("autodoc") decl astr; + %feature("docstring") decl docstr + %enddef +#endif + + + + +// Set the docstring for a decl and then define the decl too. Must use the +// full declaration of the item. +#ifdef _DO_FULL_DOCS + %define DocDeclStr(type, decl, docstr, details) + %feature("docstring") decl docstr details; + type decl + %enddef +#else + %define DocDeclStr(type, decl, docstr, details) + %feature("docstring") decl docstr; + type decl + %enddef +#endif + + + +// As above, but also give the decl a new %name +#ifdef _DO_FULL_DOCS + %define DocDeclStrName(type, decl, docstr, details, newname) + %feature("docstring") decl docstr details; + %name(newname) type decl + %enddef +#else + %define DocDeclStrName(type, decl, docstr, details, newname) + %feature("docstring") decl docstr; + %name(newname) type decl + %enddef +#endif + + +// Set the autodoc string for a decl and then define the decl too. Must use the +// full declaration of the item. +%define DocDeclA(type, decl, astr) + %feature("autodoc") decl astr; + type decl +%enddef + +// As above, but also give the decl a new %name +%define DocDeclAName(type, decl, astr, newname) + %feature("autodoc") decl astr; + %name(newname) type decl +%enddef + + + +// Set the autodoc and the docstring for a decl and then define the decl too. +// Must use the full declaration of the item. +#ifdef _DO_FULL_DOCS + %define DocDeclAStr(type, decl, astr, docstr, details) + %feature("autodoc") decl astr; + %feature("docstring") decl docstr details; + type decl + %enddef +#else + %define DocDeclAStr(type, decl, astr, docstr, details) + %feature("autodoc") decl astr; + %feature("docstring") decl docstr; + type decl + %enddef +#endif + + +// As above, but also give the decl a new %name +#ifdef _DO_FULL_DOCS + %define DocDeclAStrName(type, decl, astr, docstr, details, newname) + %feature("autodoc") decl astr; + %feature("docstring") decl docstr details; + %name(newname) type decl + %enddef +#else + %define DocDeclAStrName(type, decl, astr, docstr, details, newname) + %feature("autodoc") decl astr; + %feature("docstring") decl docstr; + %name(newname) type decl + %enddef +#endif + + + +// Set the docstring for a constructor decl and then define the decl too. +// Must use the full declaration of the item. +#ifdef _DO_FULL_DOCS + %define DocCtorStr(decl, docstr, details) + %feature("docstring") decl docstr details; + decl + %enddef +#else + %define DocCtorStr(decl, docstr, details) + %feature("docstring") decl docstr; + decl + %enddef +#endif + + +// As above, but also give the decl a new %name +#ifdef _DO_FULL_DOCS + %define DocCtorStrName(decl, docstr, details, newname) + %feature("docstring") decl docstr details; + %name(newname) decl + %enddef +#else + %define DocCtorStrName(decl, docstr, details, newname) + %feature("docstring") decl docstr; + %name(newname) decl + %enddef +#endif + + + +// Set the autodoc string for a constructor decl and then define the decl too. +// Must use the full declaration of the item. +%define DocCtorA(decl, astr) + %feature("autodoc") decl astr; + decl +%enddef + +// As above, but also give the decl a new %name +%define DocCtorAName(decl, astr, newname) + %feature("autodoc") decl astr; + %name(newname) decl +%enddef + + + +// Set the autodoc and the docstring for a constructor decl and then define +// the decl too. Must use the full declaration of the item. +#ifdef _DO_FULL_DOCS + %define DocCtorAStr(decl, astr, docstr, details) + %feature("autodoc") decl astr; + %feature("docstring") decl docstr details; + decl + %enddef +#else + %define DocCtorAStr(decl, astr, docstr, details) + %feature("autodoc") decl astr; + %feature("docstring") decl docstr; + decl + %enddef +#endif + + + +// As above, but also give the decl a new %name +#ifdef _DO_FULL_DOCS + %define DocCtorAStrName(decl, astr, docstr, details, newname) + %feature("autodoc") decl astr; + %feature("docstring") decl docstr details; + %name(newname) decl + %enddef +#else + %define DocCtorAStrName(decl, astr, docstr, details, newname) + %feature("autodoc") decl astr; + %feature("docstring") decl docstr; + %name(newname) decl + %enddef +#endif + + + +%define %newgroup +%pythoncode { +%#--------------------------------------------------------------------------- +} +%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 or seen by %import's. + +#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); +FORWARD_DECLARE(wxStaticBox, StaticBox); //--------------------------------------------------------------------------- @@ -169,9 +347,9 @@ typedef char wxChar; // real macro when making the Python Int enum { - wxMAJOR_VERSION, - wxMINOR_VERSION, - wxRELEASE_NUMBER, +// wxMAJOR_VERSION, +// wxMINOR_VERSION, +// wxRELEASE_NUMBER, wxNOT_FOUND, @@ -186,42 +364,14 @@ enum { wxSTATIC_BORDER, wxTRANSPARENT_WINDOW, wxNO_BORDER, - wxUSER_COLOURS, - wxNO_3D, -//wxOVERRIDE_KEY_TRANSLATIONS, + wxTAB_TRAVERSAL, wxWANTS_CHARS, wxPOPUP_WINDOW, - wxHORIZONTAL, - wxVERTICAL, - wxBOTH, wxCENTER_FRAME, wxCENTRE_ON_SCREEN, wxCENTER_ON_SCREEN, - wxSTAY_ON_TOP, - wxICONIZE, - wxMINIMIZE, - wxMAXIMIZE, - 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, - wxED_CLIENT_MARGIN, wxED_BUTTONS_BOTTOM, wxED_BUTTONS_RIGHT, @@ -231,27 +381,13 @@ enum { wxCLIP_CHILDREN, wxCLIP_SIBLINGS, + wxALWAYS_SHOW_SB, + wxRETAINED, wxBACKINGSTORE, - wxTB_3DBUTTONS, - wxTB_HORIZONTAL, - wxTB_VERTICAL, - wxTB_FLAT, - wxTB_DOCKABLE, + wxCOLOURED, wxFIXED_LENGTH, - wxALIGN_LEFT, - wxALIGN_CENTER_HORIZONTAL, - wxALIGN_CENTRE_HORIZONTAL, - wxALIGN_RIGHT, - wxALIGN_BOTTOM, - wxALIGN_CENTER_VERTICAL, - wxALIGN_CENTRE_VERTICAL, - wxALIGN_TOP, - wxALIGN_CENTER, - wxALIGN_CENTRE, - wxSHAPED, - wxADJUST_MINSIZE, wxLB_NEEDED_SB, wxLB_ALWAYS_SB, @@ -264,21 +400,6 @@ enum { wxPROCESS_ENTER, wxPASSWORD, - wxTE_READONLY, - wxTE_MULTILINE, - wxTE_PROCESS_TAB, - wxTE_RICH, - wxTE_RICH2, - wxTE_NO_VSCROLL, - wxTE_AUTO_SCROLL, - wxTE_PROCESS_ENTER, - wxTE_PASSWORD, - wxTE_AUTO_URL, - wxTE_NOHIDESEL, - wxTE_DONTWRAP, - wxTE_LINEWRAP, - wxTE_WORDWRAP, - wxCB_SIMPLE, wxCB_DROPDOWN, wxCB_SORT, @@ -288,10 +409,7 @@ enum { wxRA_SPECIFY_ROWS, wxRA_SPECIFY_COLS, wxRB_GROUP, - wxGA_PROGRESSBAR, - wxGA_HORIZONTAL, - wxGA_VERTICAL, - wxGA_SMOOTH, + wxRB_SINGLE, wxSL_HORIZONTAL, wxSL_VERTICAL, wxSL_AUTOTICKS, @@ -306,21 +424,7 @@ enum { wxSB_VERTICAL, wxST_SIZEGRIP, wxST_NO_AUTORESIZE, - wxBU_AUTODRAW, - wxBU_NOAUTODRAW, - wxSP_VERTICAL, - wxSP_HORIZONTAL, - wxSP_ARROW_KEYS, - wxSP_WRAP, - wxSP_NOBORDER, - wxSP_3D, - wxSP_3DSASH, - wxSP_3DBORDER, - wxSP_FULLSASH, - wxSP_BORDER, - wxSP_LIVE_UPDATE, - wxSP_PERMIT_UNSPLIT, - //wxSP_SASH_AQUA, + wxFLOOD_SURFACE, wxFLOOD_BORDER, wxODDEVEN_RULE, @@ -354,8 +458,6 @@ enum { wxSETUP, - wxCENTRE, - wxCENTER, wxSIZE_AUTO_WIDTH, wxSIZE_AUTO_HEIGHT, wxSIZE_AUTO, @@ -367,6 +469,11 @@ enum { wxPRINT_QUALITY_MEDIUM, wxPRINT_QUALITY_LOW, wxPRINT_QUALITY_DRAFT, + + wxID_ANY, + wxID_SEPARATOR, + + wxID_LOWEST, wxID_OPEN, wxID_CLOSE, wxID_NEW, @@ -386,6 +493,8 @@ enum { wxID_HELP_PROCEDURES, wxID_HELP_CONTEXT, wxID_CLOSE_ALL, + wxID_PREFERENCES, + wxID_CUT, wxID_COPY, wxID_PASTE, @@ -393,6 +502,21 @@ enum { wxID_FIND, wxID_DUPLICATE, wxID_SELECTALL, + + wxID_DELETE, + wxID_REPLACE, + wxID_REPLACE_ALL, + wxID_PROPERTIES, + + wxID_VIEW_DETAILS, + wxID_VIEW_LARGEICONS, + wxID_VIEW_SMALLICONS, + wxID_VIEW_LIST, + wxID_VIEW_SORTDATE, + wxID_VIEW_SORTNAME, + wxID_VIEW_SORTSIZE, + wxID_VIEW_SORTTYPE, + wxID_FILE1, wxID_FILE2, wxID_FILE3, @@ -402,17 +526,27 @@ enum { wxID_FILE7, wxID_FILE8, wxID_FILE9, + wxID_OK, wxID_CANCEL, wxID_APPLY, wxID_YES, wxID_NO, wxID_STATIC, - wxID_SEPARATOR, wxID_FORWARD, wxID_BACKWARD, - wxID_SETUP, + wxID_DEFAULT, wxID_MORE, + wxID_SETUP, + wxID_RESET, + wxID_CONTEXT_HELP, + wxID_YESTOALL, + wxID_NOTOALL, + wxID_ABORT, + wxID_RETRY, + wxID_IGNORE, + + wxID_HIGHEST, wxOPEN, wxSAVE, @@ -434,49 +568,26 @@ enum { wxPD_ESTIMATED_TIME, wxPD_REMAINING_TIME, + wxDD_NEW_DIR_BUTTON, + wxDD_DEFAULT_STYLE, + wxMENU_TEAROFF, wxMB_DOCKABLE, wxNO_FULL_REPAINT_ON_RESIZE, - - wxLEFT, - wxRIGHT, - wxUP, - wxDOWN, - wxALL, - wxTOP, - wxBOTTOM, - - wxNORTH, - wxSOUTH, - wxEAST, - wxWEST, - - wxSTRETCH_NOT, - wxSHRINK, - wxGROW, - wxEXPAND, - - wxNB_FIXEDWIDTH, - wxNB_LEFT, - wxNB_RIGHT, - wxNB_BOTTOM, - wxNB_MULTILINE, - + wxFULL_REPAINT_ON_RESIZE, + wxLI_HORIZONTAL, wxLI_VERTICAL, - wxJOYSTICK1, - wxJOYSTICK2, - wxJOY_BUTTON1, - wxJOY_BUTTON2, - wxJOY_BUTTON3, - wxJOY_BUTTON4, - wxJOY_BUTTON_ANY, - wxWS_EX_VALIDATE_RECURSIVELY, wxWS_EX_BLOCK_EVENTS, wxWS_EX_TRANSIENT, + wxWS_EX_THEMED_BACKGROUND, + wxWS_EX_PROCESS_IDLE, + wxWS_EX_PROCESS_UI_UPDATES, + + // Mapping modes (as per Windows) wxMM_TEXT, wxMM_LOMETRIC, @@ -489,6 +600,89 @@ enum { wxMM_POINTS, wxMM_METRIC, + + // It looks like wxTabCtrl may rise from the dead. Uncomment these if + // it gets an implementation for all platforms... +// wxTC_RIGHTJUSTIFY, +// wxTC_FIXEDWIDTH, +// wxTC_TOP, +// wxTC_LEFT, +// wxTC_RIGHT, +// wxTC_BOTTOM, +// wxTC_MULTILINE, +// wxTC_OWNERDRAW, + +}; + + +#ifdef __WXGTK__ +#define wxDEFAULT_STATUSBAR_STYLE wxST_SIZEGRIP|wxFULL_REPAINT_ON_RESIZE +#else +#define wxDEFAULT_STATUSBAR_STYLE wxST_SIZEGRIP +#endif + + + +enum wxGeometryCentre +{ + wxCENTRE = 0x0001, + wxCENTER = wxCENTRE +}; + + +enum wxOrientation +{ + wxHORIZONTAL, + wxVERTICAL, + wxBOTH +}; + +enum wxDirection +{ + wxLEFT, + wxRIGHT, + wxUP, + wxDOWN, + + wxTOP, + wxBOTTOM, + + wxNORTH, + wxSOUTH, + wxWEST, + wxEAST, + + wxALL +}; + +enum wxAlignment +{ + wxALIGN_NOT, + wxALIGN_CENTER_HORIZONTAL, + wxALIGN_CENTRE_HORIZONTAL, + wxALIGN_LEFT, + wxALIGN_TOP, + wxALIGN_RIGHT, + wxALIGN_BOTTOM, + wxALIGN_CENTER_VERTICAL, + wxALIGN_CENTRE_VERTICAL, + + wxALIGN_CENTER, + wxALIGN_CENTRE, + + wxALIGN_MASK, +}; + +enum wxStretch +{ + wxSTRETCH_NOT, + wxSHRINK, + wxGROW, + wxEXPAND, + wxSHAPED, + wxFIXED_MINSIZE, + wxTILE, + wxADJUST_MINSIZE, }; @@ -505,16 +699,6 @@ enum wxBorder }; -// // Standard error codes -// enum ErrCode -// { -// ERR_PARAM = (-4000), -// ERR_NODATA, -// ERR_CANCEL, -// ERR_SUCCESS = 0 -// }; - - enum { wxDEFAULT , wxDECORATIVE, @@ -678,90 +862,12 @@ enum wxKeyCode { WXK_NUMPAD_SEPARATOR, WXK_NUMPAD_SUBTRACT, WXK_NUMPAD_DECIMAL, - WXK_NUMPAD_DIVIDE - -}; + WXK_NUMPAD_DIVIDE, + WXK_WINDOWS_LEFT, + WXK_WINDOWS_RIGHT, + WXK_WINDOWS_MENU -// Bitmap flags -enum wxBitmapType -{ - wxBITMAP_TYPE_INVALID, // should be == 0 for compatibility! - wxBITMAP_TYPE_BMP, - wxBITMAP_TYPE_BMP_RESOURCE, - wxBITMAP_TYPE_RESOURCE = wxBITMAP_TYPE_BMP_RESOURCE, - wxBITMAP_TYPE_ICO, - wxBITMAP_TYPE_ICO_RESOURCE, - wxBITMAP_TYPE_CUR, - wxBITMAP_TYPE_CUR_RESOURCE, - wxBITMAP_TYPE_XBM, - wxBITMAP_TYPE_XBM_DATA, - wxBITMAP_TYPE_XPM, - wxBITMAP_TYPE_XPM_DATA, - wxBITMAP_TYPE_TIF, - wxBITMAP_TYPE_TIF_RESOURCE, - wxBITMAP_TYPE_GIF, - wxBITMAP_TYPE_GIF_RESOURCE, - wxBITMAP_TYPE_PNG, - wxBITMAP_TYPE_PNG_RESOURCE, - wxBITMAP_TYPE_JPEG, - wxBITMAP_TYPE_JPEG_RESOURCE, - wxBITMAP_TYPE_PNM, - wxBITMAP_TYPE_PNM_RESOURCE, - wxBITMAP_TYPE_PCX, - wxBITMAP_TYPE_PCX_RESOURCE, - wxBITMAP_TYPE_PICT, - wxBITMAP_TYPE_PICT_RESOURCE, - wxBITMAP_TYPE_ICON, - wxBITMAP_TYPE_ICON_RESOURCE, - wxBITMAP_TYPE_ANI, - wxBITMAP_TYPE_IFF, - wxBITMAP_TYPE_MACCURSOR, - wxBITMAP_TYPE_MACCURSOR_RESOURCE, - wxBITMAP_TYPE_ANY = 50 -}; - - - - -// Standard cursors -enum wxStockCursor -{ - wxCURSOR_NONE, // should be 0 - wxCURSOR_ARROW, - wxCURSOR_BULLSEYE, - wxCURSOR_CHAR, - wxCURSOR_CROSS, - wxCURSOR_HAND, - wxCURSOR_IBEAM, - wxCURSOR_LEFT_BUTTON, - wxCURSOR_MAGNIFIER, - wxCURSOR_MIDDLE_BUTTON, - wxCURSOR_NO_ENTRY, - wxCURSOR_PAINT_BRUSH, - wxCURSOR_PENCIL, - wxCURSOR_POINT_LEFT, - wxCURSOR_POINT_RIGHT, - wxCURSOR_QUESTION_ARROW, - wxCURSOR_RIGHT_BUTTON, - wxCURSOR_SIZENESW, - wxCURSOR_SIZENS, - wxCURSOR_SIZENWSE, - wxCURSOR_SIZEWE, - wxCURSOR_SIZING, - wxCURSOR_SPRAYCAN, - wxCURSOR_WAIT, - wxCURSOR_WATCH, - wxCURSOR_BLANK, - wxCURSOR_DEFAULT, -// // Not yet implemented for Windows -// wxCURSOR_CROSS_REVERSE, -// wxCURSOR_DOUBLE_ARROW, -// wxCURSOR_BASED_ARROW_UP, -// wxCURSOR_BASED_ARROW_DOWN, - - wxCURSOR_ARROWWAIT, - wxCURSOR_MAX }; @@ -846,6 +952,17 @@ typedef enum { +// menu and toolbar item kinds +enum wxItemKind +{ + wxITEM_SEPARATOR, + wxITEM_NORMAL, + wxITEM_CHECK, + wxITEM_RADIO, + wxITEM_MAX +}; + + enum wxHitTest { wxHT_NOWHERE, @@ -872,169 +989,38 @@ enum wxHitTest }; +%{ +#if ! wxUSE_HOTKEY +enum wxHotkeyModifier +{ + wxMOD_NONE = 0, + wxMOD_ALT = 1, + wxMOD_CONTROL = 2, + wxMOD_SHIFT = 4, + wxMOD_WIN = 8 +}; +#define wxEVT_HOTKEY 9999 +#endif +%} -#define FALSE 0 -#define false 0 -#define TRUE 1 -#define true 1 - -const char* wxVERSION_STRING; - -//--------------------------------------------------------------------------- -//--------------------------------------------------------------------------- +enum wxHotkeyModifier +{ + wxMOD_NONE = 0, + wxMOD_ALT = 1, + wxMOD_CONTROL = 2, + wxMOD_SHIFT = 4, + wxMOD_WIN = 8 +}; -/* - * Event types - * - */ -enum wxEventType { - wxEVT_NULL = 0, - wxEVT_FIRST = 10000, - - // New names - wxEVT_COMMAND_BUTTON_CLICKED, - wxEVT_COMMAND_CHECKBOX_CLICKED, - wxEVT_COMMAND_CHOICE_SELECTED, - wxEVT_COMMAND_LISTBOX_SELECTED, - wxEVT_COMMAND_LISTBOX_DOUBLECLICKED, - wxEVT_COMMAND_CHECKLISTBOX_TOGGLED, - wxEVT_COMMAND_SPINCTRL_UPDATED, - wxEVT_COMMAND_TEXT_UPDATED, - wxEVT_COMMAND_TEXT_ENTER, - wxEVT_COMMAND_TEXT_URL, - wxEVT_COMMAND_TEXT_MAXLEN, - wxEVT_COMMAND_MENU_SELECTED, - wxEVT_COMMAND_SLIDER_UPDATED, - wxEVT_COMMAND_RADIOBOX_SELECTED, - wxEVT_COMMAND_RADIOBUTTON_SELECTED, -// wxEVT_COMMAND_SCROLLBAR_UPDATED is now obsolete since we use wxEVT_SCROLL... events - wxEVT_COMMAND_SCROLLBAR_UPDATED, - wxEVT_COMMAND_VLBOX_SELECTED, - wxEVT_COMMAND_COMBOBOX_SELECTED, - wxEVT_COMMAND_TOOL_CLICKED, - wxEVT_COMMAND_TOOL_RCLICKED, - wxEVT_COMMAND_TOOL_ENTER, - wxEVT_SET_FOCUS, - wxEVT_KILL_FOCUS, - wxEVT_CHILD_FOCUS, - wxEVT_MOUSEWHEEL, - -/* Mouse event types */ - wxEVT_LEFT_DOWN, - wxEVT_LEFT_UP, - wxEVT_MIDDLE_DOWN, - wxEVT_MIDDLE_UP, - wxEVT_RIGHT_DOWN, - wxEVT_RIGHT_UP, - wxEVT_MOTION, - wxEVT_ENTER_WINDOW, - wxEVT_LEAVE_WINDOW, - wxEVT_LEFT_DCLICK, - wxEVT_MIDDLE_DCLICK, - wxEVT_RIGHT_DCLICK, - - // Non-client mouse events - wxEVT_NC_LEFT_DOWN, - wxEVT_NC_LEFT_UP, - wxEVT_NC_MIDDLE_DOWN, - wxEVT_NC_MIDDLE_UP, - wxEVT_NC_RIGHT_DOWN, - wxEVT_NC_RIGHT_UP, - wxEVT_NC_MOTION, - wxEVT_NC_ENTER_WINDOW, - wxEVT_NC_LEAVE_WINDOW, - wxEVT_NC_LEFT_DCLICK, - wxEVT_NC_MIDDLE_DCLICK, - wxEVT_NC_RIGHT_DCLICK, - -/* Character input event type */ - wxEVT_CHAR, - wxEVT_KEY_DOWN, - wxEVT_KEY_UP, - wxEVT_CHAR_HOOK, - - /* - * Scrollbar event identifiers - */ - wxEVT_SCROLL_TOP, - wxEVT_SCROLL_BOTTOM, - wxEVT_SCROLL_LINEUP, - wxEVT_SCROLL_LINEDOWN, - wxEVT_SCROLL_PAGEUP, - wxEVT_SCROLL_PAGEDOWN, - wxEVT_SCROLL_THUMBTRACK, - wxEVT_SCROLL_THUMBRELEASE, - - /* - * Scrolled Window - */ - wxEVT_SCROLLWIN_TOP, - wxEVT_SCROLLWIN_BOTTOM, - wxEVT_SCROLLWIN_LINEUP, - wxEVT_SCROLLWIN_LINEDOWN, - wxEVT_SCROLLWIN_PAGEUP, - wxEVT_SCROLLWIN_PAGEDOWN, - wxEVT_SCROLLWIN_THUMBTRACK, - wxEVT_SCROLLWIN_THUMBRELEASE, - - wxEVT_SIZE = wxEVT_FIRST + 200, - wxEVT_MOVE, - wxEVT_CLOSE_WINDOW, - wxEVT_END_SESSION, - wxEVT_QUERY_END_SESSION, - wxEVT_ACTIVATE_APP, - wxEVT_POWER, - wxEVT_ACTIVATE, - wxEVT_CREATE, - wxEVT_DESTROY, - wxEVT_SHOW, - wxEVT_ICONIZE, - wxEVT_MAXIMIZE, - wxEVT_MOUSE_CAPTURE_CHANGED, - wxEVT_PAINT, - wxEVT_ERASE_BACKGROUND, - wxEVT_NC_PAINT, - wxEVT_PAINT_ICON, - wxEVT_MENU_OPEN, - wxEVT_MENU_CLOSE, - wxEVT_MENU_HIGHLIGHT, - wxEVT_CONTEXT_MENU, - wxEVT_SYS_COLOUR_CHANGED, - wxEVT_DISPLAY_CHANGED, - wxEVT_SETTING_CHANGED, - wxEVT_QUERY_NEW_PALETTE, - wxEVT_PALETTE_CHANGED, - wxEVT_JOY_BUTTON_DOWN, - wxEVT_JOY_BUTTON_UP, - wxEVT_JOY_MOVE, - wxEVT_JOY_ZMOVE, - wxEVT_DROP_FILES, - wxEVT_DRAW_ITEM, - wxEVT_MEASURE_ITEM, - wxEVT_COMPARE_ITEM, - wxEVT_INIT_DIALOG, - wxEVT_IDLE, - wxEVT_UPDATE_UI, - - - /* Generic command events */ - // Note: a click is a higher-level event - // than button down/up - wxEVT_COMMAND_LEFT_CLICK, - wxEVT_COMMAND_LEFT_DCLICK, - wxEVT_COMMAND_RIGHT_CLICK, - wxEVT_COMMAND_RIGHT_DCLICK, - wxEVT_COMMAND_SET_FOCUS, - wxEVT_COMMAND_KILL_FOCUS, - wxEVT_COMMAND_ENTER, - - wxEVT_NAVIGATION_KEY, - - wxEVT_TIMER, +enum wxUpdateUI +{ + wxUPDATE_UI_NONE = 0x0000, + wxUPDATE_UI_RECURSE = 0x0001, + wxUPDATE_UI_FROMIDLE = 0x0002 // Invoked from On(Internal)Idle }; +//--------------------------------------------------------------------------- -//----------------------------------------------------------------------