From 68350608bc6a662e2ed00ee50da05bd82680e494 Mon Sep 17 00:00:00 2001 From: Robin Dunn Date: Sun, 20 Feb 2005 00:15:10 +0000 Subject: [PATCH] reSWIGged git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32228 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- wxPython/src/gtk/_core.py | 20 ++ wxPython/src/gtk/_core_wrap.cpp | 90 ++++++ wxPython/src/gtk/_misc.py | 4 + wxPython/src/gtk/_misc_wrap.cpp | 289 ++++++++++++----- wxPython/src/mac/_core.py | 27 ++ wxPython/src/mac/_core_wrap.cpp | 244 +++++++++++++++ wxPython/src/mac/_misc.py | 15 + wxPython/src/mac/_misc_wrap.cpp | 531 +++++++++++++++++++++++++++----- wxPython/src/msw/_core.py | 27 ++ wxPython/src/msw/_core_wrap.cpp | 244 +++++++++++++++ wxPython/src/msw/_misc.py | 15 + wxPython/src/msw/_misc_wrap.cpp | 531 +++++++++++++++++++++++++++----- wxPython/wxPython/_misc.py | 1 + 13 files changed, 1810 insertions(+), 228 deletions(-) diff --git a/wxPython/src/gtk/_core.py b/wxPython/src/gtk/_core.py index 33aa4393c0..8fcf6b6480 100644 --- a/wxPython/src/gtk/_core.py +++ b/wxPython/src/gtk/_core.py @@ -2177,6 +2177,17 @@ class Image(Object): """HasAlpha(self) -> bool""" return _core_.Image_HasAlpha(*args, **kwargs) + def InitAlpha(*args, **kwargs): + """ + InitAlpha(self) + + Initializes the image alpha channel data. It is an error to call it if + the image already has alpha data. If it doesn't, alpha data will be by + default initialized to all pixels being fully opaque. But if the image + has a a mask colour, all mask pixels will be completely transparent. + """ + return _core_.Image_InitAlpha(*args, **kwargs) + def FindFirstUnusedColour(*args, **kwargs): """ FindFirstUnusedColour(int startR=1, int startG=0, int startB=0) -> (success, r, g, b) @@ -4571,6 +4582,14 @@ class NavigationKeyEvent(Event): """SetWindowChange(self, bool ischange)""" return _core_.NavigationKeyEvent_SetWindowChange(*args, **kwargs) + def IsFromTab(*args, **kwargs): + """IsFromTab(self) -> bool""" + return _core_.NavigationKeyEvent_IsFromTab(*args, **kwargs) + + def SetFromTab(*args, **kwargs): + """SetFromTab(self, bool bIs)""" + return _core_.NavigationKeyEvent_SetFromTab(*args, **kwargs) + def SetFlags(*args, **kwargs): """SetFlags(self, long flags)""" return _core_.NavigationKeyEvent_SetFlags(*args, **kwargs) @@ -4586,6 +4605,7 @@ class NavigationKeyEvent(Event): IsBackward = _core_.NavigationKeyEvent_IsBackward IsForward = _core_.NavigationKeyEvent_IsForward WinChange = _core_.NavigationKeyEvent_WinChange + FromTab = _core_.NavigationKeyEvent_FromTab class NavigationKeyEventPtr(NavigationKeyEvent): def __init__(self, this): diff --git a/wxPython/src/gtk/_core_wrap.cpp b/wxPython/src/gtk/_core_wrap.cpp index b1df947377..27edb0ff9d 100644 --- a/wxPython/src/gtk/_core_wrap.cpp +++ b/wxPython/src/gtk/_core_wrap.cpp @@ -11212,6 +11212,31 @@ static PyObject *_wrap_Image_HasAlpha(PyObject *, PyObject *args, PyObject *kwar } +static PyObject *_wrap_Image_InitAlpha(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxImage *arg1 = (wxImage *) 0 ; + PyObject * obj0 = 0 ; + char *kwnames[] = { + (char *) "self", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:Image_InitAlpha",kwnames,&obj0)) goto fail; + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxImage, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + (arg1)->InitAlpha(); + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; + fail: + return NULL; +} + + static PyObject *_wrap_Image_FindFirstUnusedColour(PyObject *, PyObject *args, PyObject *kwargs) { PyObject *resultobj; wxImage *arg1 = (wxImage *) 0 ; @@ -21160,6 +21185,65 @@ static PyObject *_wrap_NavigationKeyEvent_SetWindowChange(PyObject *, PyObject * } +static PyObject *_wrap_NavigationKeyEvent_IsFromTab(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxNavigationKeyEvent *arg1 = (wxNavigationKeyEvent *) 0 ; + bool result; + PyObject * obj0 = 0 ; + char *kwnames[] = { + (char *) "self", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:NavigationKeyEvent_IsFromTab",kwnames,&obj0)) goto fail; + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxNavigationKeyEvent, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + result = (bool)((wxNavigationKeyEvent const *)arg1)->IsFromTab(); + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + { + resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj); + } + return resultobj; + fail: + return NULL; +} + + +static PyObject *_wrap_NavigationKeyEvent_SetFromTab(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxNavigationKeyEvent *arg1 = (wxNavigationKeyEvent *) 0 ; + bool arg2 ; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + char *kwnames[] = { + (char *) "self",(char *) "bIs", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:NavigationKeyEvent_SetFromTab",kwnames,&obj0,&obj1)) goto fail; + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxNavigationKeyEvent, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + { + arg2 = (bool)(SWIG_As_bool(obj1)); + if (SWIG_arg_fail(2)) SWIG_fail; + } + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + (arg1)->SetFromTab(arg2); + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; + fail: + return NULL; +} + + static PyObject *_wrap_NavigationKeyEvent_SetFlags(PyObject *, PyObject *args, PyObject *kwargs) { PyObject *resultobj; wxNavigationKeyEvent *arg1 = (wxNavigationKeyEvent *) 0 ; @@ -44403,6 +44487,7 @@ static PyMethodDef SwigMethods[] = { { (char *)"Image_SetAlpha", (PyCFunction) _wrap_Image_SetAlpha, METH_VARARGS | METH_KEYWORDS, NULL}, { (char *)"Image_GetAlpha", (PyCFunction) _wrap_Image_GetAlpha, METH_VARARGS | METH_KEYWORDS, NULL}, { (char *)"Image_HasAlpha", (PyCFunction) _wrap_Image_HasAlpha, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"Image_InitAlpha", (PyCFunction) _wrap_Image_InitAlpha, METH_VARARGS | METH_KEYWORDS, NULL}, { (char *)"Image_FindFirstUnusedColour", (PyCFunction) _wrap_Image_FindFirstUnusedColour, METH_VARARGS | METH_KEYWORDS, NULL}, { (char *)"Image_ConvertAlphaToMask", (PyCFunction) _wrap_Image_ConvertAlphaToMask, METH_VARARGS | METH_KEYWORDS, NULL}, { (char *)"Image_ConvertColourToAlpha", (PyCFunction) _wrap_Image_ConvertColourToAlpha, METH_VARARGS | METH_KEYWORDS, NULL}, @@ -44751,6 +44836,8 @@ static PyMethodDef SwigMethods[] = { { (char *)"NavigationKeyEvent_SetDirection", (PyCFunction) _wrap_NavigationKeyEvent_SetDirection, METH_VARARGS | METH_KEYWORDS, NULL}, { (char *)"NavigationKeyEvent_IsWindowChange", (PyCFunction) _wrap_NavigationKeyEvent_IsWindowChange, METH_VARARGS | METH_KEYWORDS, NULL}, { (char *)"NavigationKeyEvent_SetWindowChange", (PyCFunction) _wrap_NavigationKeyEvent_SetWindowChange, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"NavigationKeyEvent_IsFromTab", (PyCFunction) _wrap_NavigationKeyEvent_IsFromTab, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"NavigationKeyEvent_SetFromTab", (PyCFunction) _wrap_NavigationKeyEvent_SetFromTab, METH_VARARGS | METH_KEYWORDS, NULL}, { (char *)"NavigationKeyEvent_SetFlags", (PyCFunction) _wrap_NavigationKeyEvent_SetFlags, METH_VARARGS | METH_KEYWORDS, NULL}, { (char *)"NavigationKeyEvent_GetCurrentFocus", (PyCFunction) _wrap_NavigationKeyEvent_GetCurrentFocus, METH_VARARGS | METH_KEYWORDS, NULL}, { (char *)"NavigationKeyEvent_SetCurrentFocus", (PyCFunction) _wrap_NavigationKeyEvent_SetCurrentFocus, METH_VARARGS | METH_KEYWORDS, NULL}, @@ -48543,6 +48630,9 @@ SWIGEXPORT(void) SWIG_init(void) { { PyDict_SetItemString(d,"NavigationKeyEvent_WinChange", SWIG_From_int((int)(wxNavigationKeyEvent::WinChange))); } + { + PyDict_SetItemString(d,"NavigationKeyEvent_FromTab", SWIG_From_int((int)(wxNavigationKeyEvent::FromTab))); + } { PyDict_SetItemString(d,"IDLE_PROCESS_ALL", SWIG_From_int((int)(wxIDLE_PROCESS_ALL))); } diff --git a/wxPython/src/gtk/_misc.py b/wxPython/src/gtk/_misc.py index c4dcca1725..335667a860 100644 --- a/wxPython/src/gtk/_misc.py +++ b/wxPython/src/gtk/_misc.py @@ -958,6 +958,10 @@ def PreSingleInstanceChecker(*args, **kwargs): val.thisown = 1 return val + +def DrawWindowOnDC(*args, **kwargs): + """DrawWindowOnDC(Window window, DC dc) -> bool""" + return _misc_.DrawWindowOnDC(*args, **kwargs) #--------------------------------------------------------------------------- class TipProvider(object): diff --git a/wxPython/src/gtk/_misc_wrap.cpp b/wxPython/src/gtk/_misc_wrap.cpp index d0267fbef3..d0cb482bff 100644 --- a/wxPython/src/gtk/_misc_wrap.cpp +++ b/wxPython/src/gtk/_misc_wrap.cpp @@ -1359,81 +1359,82 @@ SWIG_Python_GetTypeList() { #define SWIGTYPE_p_wxSize swig_types[18] #define SWIGTYPE_p_wxClipboard swig_types[19] #define SWIGTYPE_p_wxStopWatch swig_types[20] -#define SWIGTYPE_p_wxClipboardLocker swig_types[21] -#define SWIGTYPE_p_wxIcon swig_types[22] -#define SWIGTYPE_p_wxLogStderr swig_types[23] -#define SWIGTYPE_p_wxLogTextCtrl swig_types[24] -#define SWIGTYPE_p_wxTextCtrl swig_types[25] -#define SWIGTYPE_p_wxBusyCursor swig_types[26] -#define SWIGTYPE_p_wxBitmapDataObject swig_types[27] -#define SWIGTYPE_p_wxTextDataObject swig_types[28] -#define SWIGTYPE_p_wxDataObject swig_types[29] -#define SWIGTYPE_p_wxPyTextDataObject swig_types[30] -#define SWIGTYPE_p_wxPyBitmapDataObject swig_types[31] -#define SWIGTYPE_p_wxFileDataObject swig_types[32] -#define SWIGTYPE_p_wxCustomDataObject swig_types[33] -#define SWIGTYPE_p_wxURLDataObject swig_types[34] -#define SWIGTYPE_p_wxMetafileDataObject swig_types[35] -#define SWIGTYPE_p_wxSound swig_types[36] -#define SWIGTYPE_p_wxTimerRunner swig_types[37] -#define SWIGTYPE_p_wxLogWindow swig_types[38] -#define SWIGTYPE_p_wxTimeSpan swig_types[39] -#define SWIGTYPE_p_wxArrayString swig_types[40] -#define SWIGTYPE_p_wxWindowDisabler swig_types[41] -#define SWIGTYPE_p_form_ops_t swig_types[42] -#define SWIGTYPE_p_wxToolTip swig_types[43] -#define SWIGTYPE_p_wxDataObjectComposite swig_types[44] -#define SWIGTYPE_p_wxFileConfig swig_types[45] +#define SWIGTYPE_p_wxDC swig_types[21] +#define SWIGTYPE_p_wxClipboardLocker swig_types[22] +#define SWIGTYPE_p_wxIcon swig_types[23] +#define SWIGTYPE_p_wxLogStderr swig_types[24] +#define SWIGTYPE_p_wxLogTextCtrl swig_types[25] +#define SWIGTYPE_p_wxTextCtrl swig_types[26] +#define SWIGTYPE_p_wxBusyCursor swig_types[27] +#define SWIGTYPE_p_wxBitmapDataObject swig_types[28] +#define SWIGTYPE_p_wxTextDataObject swig_types[29] +#define SWIGTYPE_p_wxDataObject swig_types[30] +#define SWIGTYPE_p_wxPyTextDataObject swig_types[31] +#define SWIGTYPE_p_wxPyBitmapDataObject swig_types[32] +#define SWIGTYPE_p_wxFileDataObject swig_types[33] +#define SWIGTYPE_p_wxCustomDataObject swig_types[34] +#define SWIGTYPE_p_wxURLDataObject swig_types[35] +#define SWIGTYPE_p_wxMetafileDataObject swig_types[36] +#define SWIGTYPE_p_wxSound swig_types[37] +#define SWIGTYPE_p_wxTimerRunner swig_types[38] +#define SWIGTYPE_p_wxLogWindow swig_types[39] +#define SWIGTYPE_p_wxTimeSpan swig_types[40] +#define SWIGTYPE_p_wxArrayString swig_types[41] +#define SWIGTYPE_p_wxWindowDisabler swig_types[42] +#define SWIGTYPE_p_form_ops_t swig_types[43] +#define SWIGTYPE_p_wxToolTip swig_types[44] +#define SWIGTYPE_p_wxDataObjectComposite swig_types[45] #define SWIGTYPE_p_wxSystemSettings swig_types[46] -#define SWIGTYPE_p_wxVideoMode swig_types[47] -#define SWIGTYPE_p_wxDataObjectSimple swig_types[48] -#define SWIGTYPE_p_wxPyDataObjectSimple swig_types[49] -#define SWIGTYPE_p_wxDuplexMode swig_types[50] -#define SWIGTYPE_p_wxEvtHandler swig_types[51] -#define SWIGTYPE_p_wxRect swig_types[52] -#define SWIGTYPE_p_char swig_types[53] -#define SWIGTYPE_p_wxSingleInstanceChecker swig_types[54] -#define SWIGTYPE_p_wxStandardPaths swig_types[55] -#define SWIGTYPE_p_wxFileTypeInfo swig_types[56] -#define SWIGTYPE_p_wxFrame swig_types[57] -#define SWIGTYPE_p_wxTimer swig_types[58] -#define SWIGTYPE_p_wxPaperSize swig_types[59] -#define SWIGTYPE_p_wxMimeTypesManager swig_types[60] -#define SWIGTYPE_p_wxPyArtProvider swig_types[61] -#define SWIGTYPE_p_wxPyTipProvider swig_types[62] -#define SWIGTYPE_p_wxTipProvider swig_types[63] -#define SWIGTYPE_p_wxJoystick swig_types[64] -#define SWIGTYPE_p_wxSystemOptions swig_types[65] -#define SWIGTYPE_p_wxPoint swig_types[66] -#define SWIGTYPE_p_wxJoystickEvent swig_types[67] -#define SWIGTYPE_p_wxCursor swig_types[68] -#define SWIGTYPE_p_wxObject swig_types[69] -#define SWIGTYPE_p_wxOutputStream swig_types[70] -#define SWIGTYPE_p_wxDateTime swig_types[71] -#define SWIGTYPE_p_wxPyDropSource swig_types[72] -#define SWIGTYPE_p_unsigned_long swig_types[73] -#define SWIGTYPE_p_wxKillError swig_types[74] -#define SWIGTYPE_p_wxWindow swig_types[75] -#define SWIGTYPE_p_wxString swig_types[76] -#define SWIGTYPE_p_wxPyProcess swig_types[77] -#define SWIGTYPE_p_wxBitmap swig_types[78] -#define SWIGTYPE_p_wxConfig swig_types[79] -#define SWIGTYPE_unsigned_int swig_types[80] -#define SWIGTYPE_p_unsigned_int swig_types[81] -#define SWIGTYPE_p_unsigned_char swig_types[82] -#define SWIGTYPE_p_wxChar swig_types[83] -#define SWIGTYPE_p_wxBusyInfo swig_types[84] -#define SWIGTYPE_p_wxPyDropTarget swig_types[85] -#define SWIGTYPE_p_wxPyTextDropTarget swig_types[86] -#define SWIGTYPE_p_wxPyFileDropTarget swig_types[87] -#define SWIGTYPE_p_wxProcessEvent swig_types[88] -#define SWIGTYPE_p_wxPyLog swig_types[89] -#define SWIGTYPE_p_wxLogNull swig_types[90] -#define SWIGTYPE_p_wxColour swig_types[91] -#define SWIGTYPE_p_wxPyTimer swig_types[92] -#define SWIGTYPE_p_wxConfigPathChanger swig_types[93] -#define SWIGTYPE_p_wxDateSpan swig_types[94] -static swig_type_info *swig_types[96]; +#define SWIGTYPE_p_wxFileConfig swig_types[47] +#define SWIGTYPE_p_wxVideoMode swig_types[48] +#define SWIGTYPE_p_wxDataObjectSimple swig_types[49] +#define SWIGTYPE_p_wxPyDataObjectSimple swig_types[50] +#define SWIGTYPE_p_wxDuplexMode swig_types[51] +#define SWIGTYPE_p_wxEvtHandler swig_types[52] +#define SWIGTYPE_p_wxRect swig_types[53] +#define SWIGTYPE_p_char swig_types[54] +#define SWIGTYPE_p_wxSingleInstanceChecker swig_types[55] +#define SWIGTYPE_p_wxStandardPaths swig_types[56] +#define SWIGTYPE_p_wxFileTypeInfo swig_types[57] +#define SWIGTYPE_p_wxFrame swig_types[58] +#define SWIGTYPE_p_wxTimer swig_types[59] +#define SWIGTYPE_p_wxPaperSize swig_types[60] +#define SWIGTYPE_p_wxMimeTypesManager swig_types[61] +#define SWIGTYPE_p_wxPyArtProvider swig_types[62] +#define SWIGTYPE_p_wxPyTipProvider swig_types[63] +#define SWIGTYPE_p_wxTipProvider swig_types[64] +#define SWIGTYPE_p_wxJoystick swig_types[65] +#define SWIGTYPE_p_wxSystemOptions swig_types[66] +#define SWIGTYPE_p_wxPoint swig_types[67] +#define SWIGTYPE_p_wxJoystickEvent swig_types[68] +#define SWIGTYPE_p_wxCursor swig_types[69] +#define SWIGTYPE_p_wxObject swig_types[70] +#define SWIGTYPE_p_wxOutputStream swig_types[71] +#define SWIGTYPE_p_wxDateTime swig_types[72] +#define SWIGTYPE_p_wxPyDropSource swig_types[73] +#define SWIGTYPE_p_unsigned_long swig_types[74] +#define SWIGTYPE_p_wxKillError swig_types[75] +#define SWIGTYPE_p_wxWindow swig_types[76] +#define SWIGTYPE_p_wxString swig_types[77] +#define SWIGTYPE_p_wxPyProcess swig_types[78] +#define SWIGTYPE_p_wxBitmap swig_types[79] +#define SWIGTYPE_p_wxConfig swig_types[80] +#define SWIGTYPE_unsigned_int swig_types[81] +#define SWIGTYPE_p_unsigned_int swig_types[82] +#define SWIGTYPE_p_unsigned_char swig_types[83] +#define SWIGTYPE_p_wxChar swig_types[84] +#define SWIGTYPE_p_wxBusyInfo swig_types[85] +#define SWIGTYPE_p_wxPyDropTarget swig_types[86] +#define SWIGTYPE_p_wxPyTextDropTarget swig_types[87] +#define SWIGTYPE_p_wxPyFileDropTarget swig_types[88] +#define SWIGTYPE_p_wxProcessEvent swig_types[89] +#define SWIGTYPE_p_wxPyLog swig_types[90] +#define SWIGTYPE_p_wxLogNull swig_types[91] +#define SWIGTYPE_p_wxColour swig_types[92] +#define SWIGTYPE_p_wxPyTimer swig_types[93] +#define SWIGTYPE_p_wxConfigPathChanger swig_types[94] +#define SWIGTYPE_p_wxDateSpan swig_types[95] +static swig_type_info *swig_types[97]; /* -------- TYPES TABLE (END) -------- */ @@ -1721,6 +1722,101 @@ static void wxCaret_Destroy(wxCaret *self){ #include +#ifdef __WXMSW__ +#include +#include +#endif + + + +bool wxDrawWindowOnDC(wxWindow* window, const wxDC& dc +#if 0 + , int method +#endif + ) +{ +#ifdef __WXMSW__ +#if 0 + switch (method) + { + case 1: + // This one only partially works. Appears to be an undocumented + // "standard" convention that not all widgets adhear to. For + // example, for some widgets backgrounds or non-client areas may + // not be painted. + ::SendMessage(GetHwndOf(window), WM_PAINT, (long)GetHdcOf(dc), 0); + break; + + case 2: +#endif + // This one works much better, nearly all widgets and their + // children are captured correctly[**]. Prior to the big + // background erase changes that Vadim did in 2004-2005 this + // method failed badly on XP with Themes activated, most native + // widgets draw only partially, if at all. Without themes it + // worked just like on Win2k. After those changes this method + // works very well. + // + // ** For example the radio buttons in a wxRadioBox are not its + // children by default, but you can capture it via the panel + // instead, or change RADIOBTN_PARENT_IS_RADIOBOX in radiobox.cpp. + ::SendMessage(GetHwndOf(window), WM_PRINT, (long)GetHdcOf(dc), + PRF_CLIENT | PRF_NONCLIENT | PRF_CHILDREN | + PRF_ERASEBKGND | PRF_OWNED ); + return true; +#if 0 + break; + + case 3: + // This one is only defined in the latest SDK and is only + // available on XP. MSDN says it is similar to sending WM_PRINT + // so I expect that it will work similar to the above. Since it + // is avaialble only on XP, it can't be compiled like this and + // will have to be loaded dynamically. + // //::PrintWindow(GetHwndOf(window), GetHdcOf(dc), 0); //break; + + // fall through + + case 4: + // Use PrintWindow if available, or fallback to WM_PRINT + // otherwise. Unfortunately using PrintWindow is even worse than + // WM_PRINT. For most native widgets nothing is drawn to the dc + // at all, with or without Themes. + typedef BOOL (WINAPI *PrintWindow_t)(HWND, HDC, UINT); + static bool s_triedToLoad = false; + static PrintWindow_t pfnPrintWindow = NULL; + if ( !s_triedToLoad ) + { + + s_triedToLoad = true; + wxDynamicLibrary dllUser32(_T("user32.dll")); + if ( dllUser32.IsLoaded() ) + { + wxLogNull nolog; // Don't report errors here + pfnPrintWindow = (PrintWindow_t)dllUser32.GetSymbol(_T("PrintWindow")); + } + } + if (pfnPrintWindow) + { + //printf("Using PrintWindow\n"); + pfnPrintWindow(GetHwndOf(window), GetHdcOf(dc), 0); + } + else + { + //printf("Using WM_PRINT\n"); + ::SendMessage(GetHwndOf(window), WM_PRINT, (long)GetHdcOf(dc), + PRF_CLIENT | PRF_NONCLIENT | PRF_CHILDREN | + PRF_ERASEBKGND | PRF_OWNED ); + } + } +#endif // 0 +#else + return false; +#endif // __WXMSW__ +} + + + #include @@ -7725,6 +7821,44 @@ static PyObject * SingleInstanceChecker_swigregister(PyObject *, PyObject *args) Py_INCREF(obj); return Py_BuildValue((char *)""); } +static PyObject *_wrap_DrawWindowOnDC(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxWindow *arg1 = (wxWindow *) 0 ; + wxDC *arg2 = 0 ; + bool result; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + char *kwnames[] = { + (char *) "window",(char *) "dc", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:DrawWindowOnDC",kwnames,&obj0,&obj1)) goto fail; + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxWindow, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + { + SWIG_Python_ConvertPtr(obj1, (void **)&arg2, SWIGTYPE_p_wxDC, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(2)) SWIG_fail; + if (arg2 == NULL) { + SWIG_null_ref("wxDC"); + } + if (SWIG_arg_fail(2)) SWIG_fail; + } + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + result = (bool)wxDrawWindowOnDC(arg1,(wxDC const &)*arg2); + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + { + resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj); + } + return resultobj; + fail: + return NULL; +} + + static PyObject *_wrap_delete_TipProvider(PyObject *, PyObject *args, PyObject *kwargs) { PyObject *resultobj; wxTipProvider *arg1 = (wxTipProvider *) 0 ; @@ -31297,6 +31431,7 @@ static PyMethodDef SwigMethods[] = { { (char *)"SingleInstanceChecker_Create", (PyCFunction) _wrap_SingleInstanceChecker_Create, METH_VARARGS | METH_KEYWORDS, NULL}, { (char *)"SingleInstanceChecker_IsAnotherRunning", (PyCFunction) _wrap_SingleInstanceChecker_IsAnotherRunning, METH_VARARGS | METH_KEYWORDS, NULL}, { (char *)"SingleInstanceChecker_swigregister", SingleInstanceChecker_swigregister, METH_VARARGS, NULL}, + { (char *)"DrawWindowOnDC", (PyCFunction) _wrap_DrawWindowOnDC, METH_VARARGS | METH_KEYWORDS, NULL}, { (char *)"delete_TipProvider", (PyCFunction) _wrap_delete_TipProvider, METH_VARARGS | METH_KEYWORDS, NULL}, { (char *)"TipProvider_GetTip", (PyCFunction) _wrap_TipProvider_GetTip, METH_VARARGS | METH_KEYWORDS, NULL}, { (char *)"TipProvider_GetCurrentTip", (PyCFunction) _wrap_TipProvider_GetCurrentTip, METH_VARARGS | METH_KEYWORDS, NULL}, @@ -32494,6 +32629,7 @@ static swig_type_info _swigt__p_int[] = {{"_p_int", 0, "int *", 0, 0, 0, 0},{"_p static swig_type_info _swigt__p_wxSize[] = {{"_p_wxSize", 0, "wxSize *", 0, 0, 0, 0},{"_p_wxSize", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}}; static swig_type_info _swigt__p_wxClipboard[] = {{"_p_wxClipboard", 0, "wxClipboard *", 0, 0, 0, 0},{"_p_wxClipboard", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}}; static swig_type_info _swigt__p_wxStopWatch[] = {{"_p_wxStopWatch", 0, "wxStopWatch *", 0, 0, 0, 0},{"_p_wxStopWatch", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}}; +static swig_type_info _swigt__p_wxDC[] = {{"_p_wxDC", 0, "wxDC *", 0, 0, 0, 0},{"_p_wxDC", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}}; static swig_type_info _swigt__p_wxClipboardLocker[] = {{"_p_wxClipboardLocker", 0, "wxClipboardLocker *", 0, 0, 0, 0},{"_p_wxClipboardLocker", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}}; static swig_type_info _swigt__p_wxIcon[] = {{"_p_wxIcon", 0, "wxIcon *", 0, 0, 0, 0},{"_p_wxIcon", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}}; static swig_type_info _swigt__p_wxLogStderr[] = {{"_p_wxLogStderr", 0, "wxLogStderr *", 0, 0, 0, 0},{"_p_wxLogStderr", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}}; @@ -32518,8 +32654,8 @@ static swig_type_info _swigt__p_wxWindowDisabler[] = {{"_p_wxWindowDisabler", 0, static swig_type_info _swigt__p_form_ops_t[] = {{"_p_form_ops_t", 0, "enum form_ops_t *|form_ops_t *", 0, 0, 0, 0},{"_p_form_ops_t", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}}; static swig_type_info _swigt__p_wxToolTip[] = {{"_p_wxToolTip", 0, "wxToolTip *", 0, 0, 0, 0},{"_p_wxToolTip", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}}; static swig_type_info _swigt__p_wxDataObjectComposite[] = {{"_p_wxDataObjectComposite", 0, "wxDataObjectComposite *", 0, 0, 0, 0},{"_p_wxDataObjectComposite", 0, 0, 0, 0, 0, 0},{"_p_wxURLDataObject", _p_wxURLDataObjectTo_p_wxDataObjectComposite, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}}; -static swig_type_info _swigt__p_wxFileConfig[] = {{"_p_wxFileConfig", 0, "wxFileConfig *", 0, 0, 0, 0},{"_p_wxFileConfig", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}}; static swig_type_info _swigt__p_wxSystemSettings[] = {{"_p_wxSystemSettings", 0, "wxSystemSettings *", 0, 0, 0, 0},{"_p_wxSystemSettings", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}}; +static swig_type_info _swigt__p_wxFileConfig[] = {{"_p_wxFileConfig", 0, "wxFileConfig *", 0, 0, 0, 0},{"_p_wxFileConfig", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}}; static swig_type_info _swigt__p_wxVideoMode[] = {{"_p_wxVideoMode", 0, "wxVideoMode *", 0, 0, 0, 0},{"_p_wxVideoMode", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}}; static swig_type_info _swigt__p_wxDataObjectSimple[] = {{"_p_wxDataObjectSimple", 0, "wxDataObjectSimple *", 0, 0, 0, 0},{"_p_wxDataObjectSimple", 0, 0, 0, 0, 0, 0},{"_p_wxPyDataObjectSimple", _p_wxPyDataObjectSimpleTo_p_wxDataObjectSimple, 0, 0, 0, 0, 0},{"_p_wxTextDataObject", _p_wxTextDataObjectTo_p_wxDataObjectSimple, 0, 0, 0, 0, 0},{"_p_wxPyTextDataObject", _p_wxPyTextDataObjectTo_p_wxDataObjectSimple, 0, 0, 0, 0, 0},{"_p_wxBitmapDataObject", _p_wxBitmapDataObjectTo_p_wxDataObjectSimple, 0, 0, 0, 0, 0},{"_p_wxPyBitmapDataObject", _p_wxPyBitmapDataObjectTo_p_wxDataObjectSimple, 0, 0, 0, 0, 0},{"_p_wxFileDataObject", _p_wxFileDataObjectTo_p_wxDataObjectSimple, 0, 0, 0, 0, 0},{"_p_wxCustomDataObject", _p_wxCustomDataObjectTo_p_wxDataObjectSimple, 0, 0, 0, 0, 0},{"_p_wxMetafileDataObject", _p_wxMetafileDataObjectTo_p_wxDataObjectSimple, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}}; static swig_type_info _swigt__p_wxPyDataObjectSimple[] = {{"_p_wxPyDataObjectSimple", 0, "wxPyDataObjectSimple *", 0, 0, 0, 0},{"_p_wxPyDataObjectSimple", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}}; @@ -32591,6 +32727,7 @@ _swigt__p_int, _swigt__p_wxSize, _swigt__p_wxClipboard, _swigt__p_wxStopWatch, +_swigt__p_wxDC, _swigt__p_wxClipboardLocker, _swigt__p_wxIcon, _swigt__p_wxLogStderr, @@ -32615,8 +32752,8 @@ _swigt__p_wxWindowDisabler, _swigt__p_form_ops_t, _swigt__p_wxToolTip, _swigt__p_wxDataObjectComposite, -_swigt__p_wxFileConfig, _swigt__p_wxSystemSettings, +_swigt__p_wxFileConfig, _swigt__p_wxVideoMode, _swigt__p_wxDataObjectSimple, _swigt__p_wxPyDataObjectSimple, diff --git a/wxPython/src/mac/_core.py b/wxPython/src/mac/_core.py index 6fa4e99430..8fcf6b6480 100644 --- a/wxPython/src/mac/_core.py +++ b/wxPython/src/mac/_core.py @@ -2177,6 +2177,17 @@ class Image(Object): """HasAlpha(self) -> bool""" return _core_.Image_HasAlpha(*args, **kwargs) + def InitAlpha(*args, **kwargs): + """ + InitAlpha(self) + + Initializes the image alpha channel data. It is an error to call it if + the image already has alpha data. If it doesn't, alpha data will be by + default initialized to all pixels being fully opaque. But if the image + has a a mask colour, all mask pixels will be completely transparent. + """ + return _core_.Image_InitAlpha(*args, **kwargs) + def FindFirstUnusedColour(*args, **kwargs): """ FindFirstUnusedColour(int startR=1, int startG=0, int startB=0) -> (success, r, g, b) @@ -2539,11 +2550,18 @@ class BMPHandlerPtr(BMPHandler): self.__class__ = BMPHandler _core_.BMPHandler_swigregister(BMPHandlerPtr) NullImage = cvar.NullImage +IMAGE_OPTION_FILENAME = cvar.IMAGE_OPTION_FILENAME IMAGE_OPTION_BMP_FORMAT = cvar.IMAGE_OPTION_BMP_FORMAT IMAGE_OPTION_CUR_HOTSPOT_X = cvar.IMAGE_OPTION_CUR_HOTSPOT_X IMAGE_OPTION_CUR_HOTSPOT_Y = cvar.IMAGE_OPTION_CUR_HOTSPOT_Y IMAGE_OPTION_RESOLUTION = cvar.IMAGE_OPTION_RESOLUTION +IMAGE_OPTION_RESOLUTIONX = cvar.IMAGE_OPTION_RESOLUTIONX +IMAGE_OPTION_RESOLUTIONY = cvar.IMAGE_OPTION_RESOLUTIONY IMAGE_OPTION_RESOLUTIONUNIT = cvar.IMAGE_OPTION_RESOLUTIONUNIT +IMAGE_OPTION_BITSPERSAMPLE = cvar.IMAGE_OPTION_BITSPERSAMPLE +IMAGE_OPTION_SAMPLESPERPIXEL = cvar.IMAGE_OPTION_SAMPLESPERPIXEL +IMAGE_OPTION_COMPRESSION = cvar.IMAGE_OPTION_COMPRESSION +IMAGE_OPTION_IMAGEDESCRIPTOR = cvar.IMAGE_OPTION_IMAGEDESCRIPTOR class ICOHandler(BMPHandler): """Proxy of C++ ICOHandler class""" @@ -4564,6 +4582,14 @@ class NavigationKeyEvent(Event): """SetWindowChange(self, bool ischange)""" return _core_.NavigationKeyEvent_SetWindowChange(*args, **kwargs) + def IsFromTab(*args, **kwargs): + """IsFromTab(self) -> bool""" + return _core_.NavigationKeyEvent_IsFromTab(*args, **kwargs) + + def SetFromTab(*args, **kwargs): + """SetFromTab(self, bool bIs)""" + return _core_.NavigationKeyEvent_SetFromTab(*args, **kwargs) + def SetFlags(*args, **kwargs): """SetFlags(self, long flags)""" return _core_.NavigationKeyEvent_SetFlags(*args, **kwargs) @@ -4579,6 +4605,7 @@ class NavigationKeyEvent(Event): IsBackward = _core_.NavigationKeyEvent_IsBackward IsForward = _core_.NavigationKeyEvent_IsForward WinChange = _core_.NavigationKeyEvent_WinChange + FromTab = _core_.NavigationKeyEvent_FromTab class NavigationKeyEventPtr(NavigationKeyEvent): def __init__(self, this): diff --git a/wxPython/src/mac/_core_wrap.cpp b/wxPython/src/mac/_core_wrap.cpp index 441b6d3e1f..27edb0ff9d 100644 --- a/wxPython/src/mac/_core_wrap.cpp +++ b/wxPython/src/mac/_core_wrap.cpp @@ -2463,11 +2463,18 @@ static wxBitmap wxImage_ConvertToMonoBitmap(wxImage *self,unsigned char red,unsi wxBitmap bitmap( mono, 1 ); return bitmap; } + static const wxString wxPyIMAGE_OPTION_FILENAME(wxIMAGE_OPTION_FILENAME); static const wxString wxPyIMAGE_OPTION_BMP_FORMAT(wxIMAGE_OPTION_BMP_FORMAT); static const wxString wxPyIMAGE_OPTION_CUR_HOTSPOT_X(wxIMAGE_OPTION_CUR_HOTSPOT_X); static const wxString wxPyIMAGE_OPTION_CUR_HOTSPOT_Y(wxIMAGE_OPTION_CUR_HOTSPOT_Y); static const wxString wxPyIMAGE_OPTION_RESOLUTION(wxIMAGE_OPTION_RESOLUTION); + static const wxString wxPyIMAGE_OPTION_RESOLUTIONX(wxIMAGE_OPTION_RESOLUTIONX); + static const wxString wxPyIMAGE_OPTION_RESOLUTIONY(wxIMAGE_OPTION_RESOLUTIONY); static const wxString wxPyIMAGE_OPTION_RESOLUTIONUNIT(wxIMAGE_OPTION_RESOLUTIONUNIT); + static const wxString wxPyIMAGE_OPTION_BITSPERSAMPLE(wxIMAGE_OPTION_BITSPERSAMPLE); + static const wxString wxPyIMAGE_OPTION_SAMPLESPERPIXEL(wxIMAGE_OPTION_SAMPLESPERPIXEL); + static const wxString wxPyIMAGE_OPTION_COMPRESSION(wxIMAGE_OPTION_COMPRESSION); + static const wxString wxPyIMAGE_OPTION_IMAGEDESCRIPTOR(wxIMAGE_OPTION_IMAGEDESCRIPTOR); #include @@ -11205,6 +11212,31 @@ static PyObject *_wrap_Image_HasAlpha(PyObject *, PyObject *args, PyObject *kwar } +static PyObject *_wrap_Image_InitAlpha(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxImage *arg1 = (wxImage *) 0 ; + PyObject * obj0 = 0 ; + char *kwnames[] = { + (char *) "self", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:Image_InitAlpha",kwnames,&obj0)) goto fail; + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxImage, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + (arg1)->InitAlpha(); + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; + fail: + return NULL; +} + + static PyObject *_wrap_Image_FindFirstUnusedColour(PyObject *, PyObject *args, PyObject *kwargs) { PyObject *resultobj; wxImage *arg1 = (wxImage *) 0 ; @@ -13352,6 +13384,26 @@ static PyObject *_wrap_NullImage_get(void) { } +static int _wrap_IMAGE_OPTION_FILENAME_set(PyObject *) { + PyErr_SetString(PyExc_TypeError,"Variable IMAGE_OPTION_FILENAME is read-only."); + return 1; +} + + +static PyObject *_wrap_IMAGE_OPTION_FILENAME_get(void) { + PyObject *pyobj; + + { +#if wxUSE_UNICODE + pyobj = PyUnicode_FromWideChar((&wxPyIMAGE_OPTION_FILENAME)->c_str(), (&wxPyIMAGE_OPTION_FILENAME)->Len()); +#else + pyobj = PyString_FromStringAndSize((&wxPyIMAGE_OPTION_FILENAME)->c_str(), (&wxPyIMAGE_OPTION_FILENAME)->Len()); +#endif + } + return pyobj; +} + + static int _wrap_IMAGE_OPTION_BMP_FORMAT_set(PyObject *) { PyErr_SetString(PyExc_TypeError,"Variable IMAGE_OPTION_BMP_FORMAT is read-only."); return 1; @@ -13432,6 +13484,46 @@ static PyObject *_wrap_IMAGE_OPTION_RESOLUTION_get(void) { } +static int _wrap_IMAGE_OPTION_RESOLUTIONX_set(PyObject *) { + PyErr_SetString(PyExc_TypeError,"Variable IMAGE_OPTION_RESOLUTIONX is read-only."); + return 1; +} + + +static PyObject *_wrap_IMAGE_OPTION_RESOLUTIONX_get(void) { + PyObject *pyobj; + + { +#if wxUSE_UNICODE + pyobj = PyUnicode_FromWideChar((&wxPyIMAGE_OPTION_RESOLUTIONX)->c_str(), (&wxPyIMAGE_OPTION_RESOLUTIONX)->Len()); +#else + pyobj = PyString_FromStringAndSize((&wxPyIMAGE_OPTION_RESOLUTIONX)->c_str(), (&wxPyIMAGE_OPTION_RESOLUTIONX)->Len()); +#endif + } + return pyobj; +} + + +static int _wrap_IMAGE_OPTION_RESOLUTIONY_set(PyObject *) { + PyErr_SetString(PyExc_TypeError,"Variable IMAGE_OPTION_RESOLUTIONY is read-only."); + return 1; +} + + +static PyObject *_wrap_IMAGE_OPTION_RESOLUTIONY_get(void) { + PyObject *pyobj; + + { +#if wxUSE_UNICODE + pyobj = PyUnicode_FromWideChar((&wxPyIMAGE_OPTION_RESOLUTIONY)->c_str(), (&wxPyIMAGE_OPTION_RESOLUTIONY)->Len()); +#else + pyobj = PyString_FromStringAndSize((&wxPyIMAGE_OPTION_RESOLUTIONY)->c_str(), (&wxPyIMAGE_OPTION_RESOLUTIONY)->Len()); +#endif + } + return pyobj; +} + + static int _wrap_IMAGE_OPTION_RESOLUTIONUNIT_set(PyObject *) { PyErr_SetString(PyExc_TypeError,"Variable IMAGE_OPTION_RESOLUTIONUNIT is read-only."); return 1; @@ -13452,6 +13544,86 @@ static PyObject *_wrap_IMAGE_OPTION_RESOLUTIONUNIT_get(void) { } +static int _wrap_IMAGE_OPTION_BITSPERSAMPLE_set(PyObject *) { + PyErr_SetString(PyExc_TypeError,"Variable IMAGE_OPTION_BITSPERSAMPLE is read-only."); + return 1; +} + + +static PyObject *_wrap_IMAGE_OPTION_BITSPERSAMPLE_get(void) { + PyObject *pyobj; + + { +#if wxUSE_UNICODE + pyobj = PyUnicode_FromWideChar((&wxPyIMAGE_OPTION_BITSPERSAMPLE)->c_str(), (&wxPyIMAGE_OPTION_BITSPERSAMPLE)->Len()); +#else + pyobj = PyString_FromStringAndSize((&wxPyIMAGE_OPTION_BITSPERSAMPLE)->c_str(), (&wxPyIMAGE_OPTION_BITSPERSAMPLE)->Len()); +#endif + } + return pyobj; +} + + +static int _wrap_IMAGE_OPTION_SAMPLESPERPIXEL_set(PyObject *) { + PyErr_SetString(PyExc_TypeError,"Variable IMAGE_OPTION_SAMPLESPERPIXEL is read-only."); + return 1; +} + + +static PyObject *_wrap_IMAGE_OPTION_SAMPLESPERPIXEL_get(void) { + PyObject *pyobj; + + { +#if wxUSE_UNICODE + pyobj = PyUnicode_FromWideChar((&wxPyIMAGE_OPTION_SAMPLESPERPIXEL)->c_str(), (&wxPyIMAGE_OPTION_SAMPLESPERPIXEL)->Len()); +#else + pyobj = PyString_FromStringAndSize((&wxPyIMAGE_OPTION_SAMPLESPERPIXEL)->c_str(), (&wxPyIMAGE_OPTION_SAMPLESPERPIXEL)->Len()); +#endif + } + return pyobj; +} + + +static int _wrap_IMAGE_OPTION_COMPRESSION_set(PyObject *) { + PyErr_SetString(PyExc_TypeError,"Variable IMAGE_OPTION_COMPRESSION is read-only."); + return 1; +} + + +static PyObject *_wrap_IMAGE_OPTION_COMPRESSION_get(void) { + PyObject *pyobj; + + { +#if wxUSE_UNICODE + pyobj = PyUnicode_FromWideChar((&wxPyIMAGE_OPTION_COMPRESSION)->c_str(), (&wxPyIMAGE_OPTION_COMPRESSION)->Len()); +#else + pyobj = PyString_FromStringAndSize((&wxPyIMAGE_OPTION_COMPRESSION)->c_str(), (&wxPyIMAGE_OPTION_COMPRESSION)->Len()); +#endif + } + return pyobj; +} + + +static int _wrap_IMAGE_OPTION_IMAGEDESCRIPTOR_set(PyObject *) { + PyErr_SetString(PyExc_TypeError,"Variable IMAGE_OPTION_IMAGEDESCRIPTOR is read-only."); + return 1; +} + + +static PyObject *_wrap_IMAGE_OPTION_IMAGEDESCRIPTOR_get(void) { + PyObject *pyobj; + + { +#if wxUSE_UNICODE + pyobj = PyUnicode_FromWideChar((&wxPyIMAGE_OPTION_IMAGEDESCRIPTOR)->c_str(), (&wxPyIMAGE_OPTION_IMAGEDESCRIPTOR)->Len()); +#else + pyobj = PyString_FromStringAndSize((&wxPyIMAGE_OPTION_IMAGEDESCRIPTOR)->c_str(), (&wxPyIMAGE_OPTION_IMAGEDESCRIPTOR)->Len()); +#endif + } + return pyobj; +} + + static PyObject *_wrap_new_BMPHandler(PyObject *, PyObject *args, PyObject *kwargs) { PyObject *resultobj; wxBMPHandler *result; @@ -21013,6 +21185,65 @@ static PyObject *_wrap_NavigationKeyEvent_SetWindowChange(PyObject *, PyObject * } +static PyObject *_wrap_NavigationKeyEvent_IsFromTab(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxNavigationKeyEvent *arg1 = (wxNavigationKeyEvent *) 0 ; + bool result; + PyObject * obj0 = 0 ; + char *kwnames[] = { + (char *) "self", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:NavigationKeyEvent_IsFromTab",kwnames,&obj0)) goto fail; + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxNavigationKeyEvent, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + result = (bool)((wxNavigationKeyEvent const *)arg1)->IsFromTab(); + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + { + resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj); + } + return resultobj; + fail: + return NULL; +} + + +static PyObject *_wrap_NavigationKeyEvent_SetFromTab(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxNavigationKeyEvent *arg1 = (wxNavigationKeyEvent *) 0 ; + bool arg2 ; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + char *kwnames[] = { + (char *) "self",(char *) "bIs", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:NavigationKeyEvent_SetFromTab",kwnames,&obj0,&obj1)) goto fail; + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxNavigationKeyEvent, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + { + arg2 = (bool)(SWIG_As_bool(obj1)); + if (SWIG_arg_fail(2)) SWIG_fail; + } + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + (arg1)->SetFromTab(arg2); + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; + fail: + return NULL; +} + + static PyObject *_wrap_NavigationKeyEvent_SetFlags(PyObject *, PyObject *args, PyObject *kwargs) { PyObject *resultobj; wxNavigationKeyEvent *arg1 = (wxNavigationKeyEvent *) 0 ; @@ -44256,6 +44487,7 @@ static PyMethodDef SwigMethods[] = { { (char *)"Image_SetAlpha", (PyCFunction) _wrap_Image_SetAlpha, METH_VARARGS | METH_KEYWORDS, NULL}, { (char *)"Image_GetAlpha", (PyCFunction) _wrap_Image_GetAlpha, METH_VARARGS | METH_KEYWORDS, NULL}, { (char *)"Image_HasAlpha", (PyCFunction) _wrap_Image_HasAlpha, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"Image_InitAlpha", (PyCFunction) _wrap_Image_InitAlpha, METH_VARARGS | METH_KEYWORDS, NULL}, { (char *)"Image_FindFirstUnusedColour", (PyCFunction) _wrap_Image_FindFirstUnusedColour, METH_VARARGS | METH_KEYWORDS, NULL}, { (char *)"Image_ConvertAlphaToMask", (PyCFunction) _wrap_Image_ConvertAlphaToMask, METH_VARARGS | METH_KEYWORDS, NULL}, { (char *)"Image_ConvertColourToAlpha", (PyCFunction) _wrap_Image_ConvertColourToAlpha, METH_VARARGS | METH_KEYWORDS, NULL}, @@ -44604,6 +44836,8 @@ static PyMethodDef SwigMethods[] = { { (char *)"NavigationKeyEvent_SetDirection", (PyCFunction) _wrap_NavigationKeyEvent_SetDirection, METH_VARARGS | METH_KEYWORDS, NULL}, { (char *)"NavigationKeyEvent_IsWindowChange", (PyCFunction) _wrap_NavigationKeyEvent_IsWindowChange, METH_VARARGS | METH_KEYWORDS, NULL}, { (char *)"NavigationKeyEvent_SetWindowChange", (PyCFunction) _wrap_NavigationKeyEvent_SetWindowChange, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"NavigationKeyEvent_IsFromTab", (PyCFunction) _wrap_NavigationKeyEvent_IsFromTab, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"NavigationKeyEvent_SetFromTab", (PyCFunction) _wrap_NavigationKeyEvent_SetFromTab, METH_VARARGS | METH_KEYWORDS, NULL}, { (char *)"NavigationKeyEvent_SetFlags", (PyCFunction) _wrap_NavigationKeyEvent_SetFlags, METH_VARARGS | METH_KEYWORDS, NULL}, { (char *)"NavigationKeyEvent_GetCurrentFocus", (PyCFunction) _wrap_NavigationKeyEvent_GetCurrentFocus, METH_VARARGS | METH_KEYWORDS, NULL}, { (char *)"NavigationKeyEvent_SetCurrentFocus", (PyCFunction) _wrap_NavigationKeyEvent_SetCurrentFocus, METH_VARARGS | METH_KEYWORDS, NULL}, @@ -48195,10 +48429,13 @@ SWIGEXPORT(void) SWIG_init(void) { wxPyPtrTypeMap_Add("wxFileSystemHandler", "wxPyFileSystemHandler"); SWIG_addvarlink(SWIG_globals,(char*)"NullImage",_wrap_NullImage_get, _wrap_NullImage_set); + SWIG_addvarlink(SWIG_globals,(char*)"IMAGE_OPTION_FILENAME",_wrap_IMAGE_OPTION_FILENAME_get, _wrap_IMAGE_OPTION_FILENAME_set); SWIG_addvarlink(SWIG_globals,(char*)"IMAGE_OPTION_BMP_FORMAT",_wrap_IMAGE_OPTION_BMP_FORMAT_get, _wrap_IMAGE_OPTION_BMP_FORMAT_set); SWIG_addvarlink(SWIG_globals,(char*)"IMAGE_OPTION_CUR_HOTSPOT_X",_wrap_IMAGE_OPTION_CUR_HOTSPOT_X_get, _wrap_IMAGE_OPTION_CUR_HOTSPOT_X_set); SWIG_addvarlink(SWIG_globals,(char*)"IMAGE_OPTION_CUR_HOTSPOT_Y",_wrap_IMAGE_OPTION_CUR_HOTSPOT_Y_get, _wrap_IMAGE_OPTION_CUR_HOTSPOT_Y_set); SWIG_addvarlink(SWIG_globals,(char*)"IMAGE_OPTION_RESOLUTION",_wrap_IMAGE_OPTION_RESOLUTION_get, _wrap_IMAGE_OPTION_RESOLUTION_set); + SWIG_addvarlink(SWIG_globals,(char*)"IMAGE_OPTION_RESOLUTIONX",_wrap_IMAGE_OPTION_RESOLUTIONX_get, _wrap_IMAGE_OPTION_RESOLUTIONX_set); + SWIG_addvarlink(SWIG_globals,(char*)"IMAGE_OPTION_RESOLUTIONY",_wrap_IMAGE_OPTION_RESOLUTIONY_get, _wrap_IMAGE_OPTION_RESOLUTIONY_set); SWIG_addvarlink(SWIG_globals,(char*)"IMAGE_OPTION_RESOLUTIONUNIT",_wrap_IMAGE_OPTION_RESOLUTIONUNIT_get, _wrap_IMAGE_OPTION_RESOLUTIONUNIT_set); { PyDict_SetItemString(d,"IMAGE_RESOLUTION_INCHES", SWIG_From_int((int)(wxIMAGE_RESOLUTION_INCHES))); @@ -48206,6 +48443,10 @@ SWIGEXPORT(void) SWIG_init(void) { { PyDict_SetItemString(d,"IMAGE_RESOLUTION_CM", SWIG_From_int((int)(wxIMAGE_RESOLUTION_CM))); } + SWIG_addvarlink(SWIG_globals,(char*)"IMAGE_OPTION_BITSPERSAMPLE",_wrap_IMAGE_OPTION_BITSPERSAMPLE_get, _wrap_IMAGE_OPTION_BITSPERSAMPLE_set); + SWIG_addvarlink(SWIG_globals,(char*)"IMAGE_OPTION_SAMPLESPERPIXEL",_wrap_IMAGE_OPTION_SAMPLESPERPIXEL_get, _wrap_IMAGE_OPTION_SAMPLESPERPIXEL_set); + SWIG_addvarlink(SWIG_globals,(char*)"IMAGE_OPTION_COMPRESSION",_wrap_IMAGE_OPTION_COMPRESSION_get, _wrap_IMAGE_OPTION_COMPRESSION_set); + SWIG_addvarlink(SWIG_globals,(char*)"IMAGE_OPTION_IMAGEDESCRIPTOR",_wrap_IMAGE_OPTION_IMAGEDESCRIPTOR_get, _wrap_IMAGE_OPTION_IMAGEDESCRIPTOR_set); { PyDict_SetItemString(d,"BMP_24BPP", SWIG_From_int((int)(wxBMP_24BPP))); } @@ -48389,6 +48630,9 @@ SWIGEXPORT(void) SWIG_init(void) { { PyDict_SetItemString(d,"NavigationKeyEvent_WinChange", SWIG_From_int((int)(wxNavigationKeyEvent::WinChange))); } + { + PyDict_SetItemString(d,"NavigationKeyEvent_FromTab", SWIG_From_int((int)(wxNavigationKeyEvent::FromTab))); + } { PyDict_SetItemString(d,"IDLE_PROCESS_ALL", SWIG_From_int((int)(wxIDLE_PROCESS_ALL))); } diff --git a/wxPython/src/mac/_misc.py b/wxPython/src/mac/_misc.py index 2f1235a772..6545bb4c8b 100644 --- a/wxPython/src/mac/_misc.py +++ b/wxPython/src/mac/_misc.py @@ -958,6 +958,10 @@ def PreSingleInstanceChecker(*args, **kwargs): val.thisown = 1 return val + +def DrawWindowOnDC(*args, **kwargs): + """DrawWindowOnDC(Window window, DC dc) -> bool""" + return _misc_.DrawWindowOnDC(*args, **kwargs) #--------------------------------------------------------------------------- class TipProvider(object): @@ -2577,6 +2581,8 @@ ART_GO_DOWN = cvar.ART_GO_DOWN ART_GO_TO_PARENT = cvar.ART_GO_TO_PARENT ART_GO_HOME = cvar.ART_GO_HOME ART_FILE_OPEN = cvar.ART_FILE_OPEN +ART_FILE_SAVE = cvar.ART_FILE_SAVE +ART_FILE_SAVE_AS = cvar.ART_FILE_SAVE_AS ART_PRINT = cvar.ART_PRINT ART_HELP = cvar.ART_HELP ART_TIP = cvar.ART_TIP @@ -2599,6 +2605,15 @@ ART_QUESTION = cvar.ART_QUESTION ART_WARNING = cvar.ART_WARNING ART_INFORMATION = cvar.ART_INFORMATION ART_MISSING_IMAGE = cvar.ART_MISSING_IMAGE +ART_COPY = cvar.ART_COPY +ART_CUT = cvar.ART_CUT +ART_PASTE = cvar.ART_PASTE +ART_DELETE = cvar.ART_DELETE +ART_UNDO = cvar.ART_UNDO +ART_REDO = cvar.ART_REDO +ART_QUIT = cvar.ART_QUIT +ART_FIND = cvar.ART_FIND +ART_FIND_AND_REPLACE = cvar.ART_FIND_AND_REPLACE def ArtProvider_PushProvider(*args, **kwargs): """ diff --git a/wxPython/src/mac/_misc_wrap.cpp b/wxPython/src/mac/_misc_wrap.cpp index 499a6fbb00..143d7a2eef 100644 --- a/wxPython/src/mac/_misc_wrap.cpp +++ b/wxPython/src/mac/_misc_wrap.cpp @@ -1360,81 +1360,82 @@ SWIG_Python_GetTypeList() { #define SWIGTYPE_p_wxSize swig_types[19] #define SWIGTYPE_p_wxClipboard swig_types[20] #define SWIGTYPE_p_wxStopWatch swig_types[21] -#define SWIGTYPE_p_wxClipboardLocker swig_types[22] -#define SWIGTYPE_p_wxIcon swig_types[23] -#define SWIGTYPE_p_wxLogStderr swig_types[24] -#define SWIGTYPE_p_wxLogTextCtrl swig_types[25] -#define SWIGTYPE_p_wxTextCtrl swig_types[26] -#define SWIGTYPE_p_wxBusyCursor swig_types[27] -#define SWIGTYPE_p_wxBitmapDataObject swig_types[28] -#define SWIGTYPE_p_wxTextDataObject swig_types[29] -#define SWIGTYPE_p_wxDataObject swig_types[30] -#define SWIGTYPE_p_wxPyTextDataObject swig_types[31] -#define SWIGTYPE_p_wxPyBitmapDataObject swig_types[32] -#define SWIGTYPE_p_wxFileDataObject swig_types[33] -#define SWIGTYPE_p_wxCustomDataObject swig_types[34] -#define SWIGTYPE_p_wxURLDataObject swig_types[35] -#define SWIGTYPE_p_wxMetafileDataObject swig_types[36] -#define SWIGTYPE_p_wxSound swig_types[37] -#define SWIGTYPE_p_wxTimerRunner swig_types[38] -#define SWIGTYPE_p_wxLogWindow swig_types[39] -#define SWIGTYPE_p_wxTimeSpan swig_types[40] -#define SWIGTYPE_p_wxArrayString swig_types[41] -#define SWIGTYPE_p_wxWindowDisabler swig_types[42] -#define SWIGTYPE_p_form_ops_t swig_types[43] -#define SWIGTYPE_p_wxToolTip swig_types[44] -#define SWIGTYPE_p_wxDataObjectComposite swig_types[45] -#define SWIGTYPE_p_wxFileConfig swig_types[46] +#define SWIGTYPE_p_wxDC swig_types[22] +#define SWIGTYPE_p_wxClipboardLocker swig_types[23] +#define SWIGTYPE_p_wxIcon swig_types[24] +#define SWIGTYPE_p_wxLogStderr swig_types[25] +#define SWIGTYPE_p_wxLogTextCtrl swig_types[26] +#define SWIGTYPE_p_wxTextCtrl swig_types[27] +#define SWIGTYPE_p_wxBusyCursor swig_types[28] +#define SWIGTYPE_p_wxBitmapDataObject swig_types[29] +#define SWIGTYPE_p_wxTextDataObject swig_types[30] +#define SWIGTYPE_p_wxDataObject swig_types[31] +#define SWIGTYPE_p_wxPyTextDataObject swig_types[32] +#define SWIGTYPE_p_wxPyBitmapDataObject swig_types[33] +#define SWIGTYPE_p_wxFileDataObject swig_types[34] +#define SWIGTYPE_p_wxCustomDataObject swig_types[35] +#define SWIGTYPE_p_wxURLDataObject swig_types[36] +#define SWIGTYPE_p_wxMetafileDataObject swig_types[37] +#define SWIGTYPE_p_wxSound swig_types[38] +#define SWIGTYPE_p_wxTimerRunner swig_types[39] +#define SWIGTYPE_p_wxLogWindow swig_types[40] +#define SWIGTYPE_p_wxTimeSpan swig_types[41] +#define SWIGTYPE_p_wxArrayString swig_types[42] +#define SWIGTYPE_p_wxWindowDisabler swig_types[43] +#define SWIGTYPE_p_form_ops_t swig_types[44] +#define SWIGTYPE_p_wxToolTip swig_types[45] +#define SWIGTYPE_p_wxDataObjectComposite swig_types[46] #define SWIGTYPE_p_wxSystemSettings swig_types[47] -#define SWIGTYPE_p_wxVideoMode swig_types[48] -#define SWIGTYPE_p_wxDataObjectSimple swig_types[49] -#define SWIGTYPE_p_wxPyDataObjectSimple swig_types[50] -#define SWIGTYPE_p_wxDuplexMode swig_types[51] -#define SWIGTYPE_p_wxEvtHandler swig_types[52] -#define SWIGTYPE_p_wxRect swig_types[53] -#define SWIGTYPE_p_char swig_types[54] -#define SWIGTYPE_p_wxSingleInstanceChecker swig_types[55] -#define SWIGTYPE_p_wxStandardPaths swig_types[56] -#define SWIGTYPE_p_wxFileTypeInfo swig_types[57] -#define SWIGTYPE_p_wxFrame swig_types[58] -#define SWIGTYPE_p_wxTimer swig_types[59] -#define SWIGTYPE_p_wxPaperSize swig_types[60] -#define SWIGTYPE_p_wxMimeTypesManager swig_types[61] -#define SWIGTYPE_p_wxPyArtProvider swig_types[62] -#define SWIGTYPE_p_wxPyTipProvider swig_types[63] -#define SWIGTYPE_p_wxTipProvider swig_types[64] -#define SWIGTYPE_p_wxJoystick swig_types[65] -#define SWIGTYPE_p_wxSystemOptions swig_types[66] -#define SWIGTYPE_p_wxPoint swig_types[67] -#define SWIGTYPE_p_wxJoystickEvent swig_types[68] -#define SWIGTYPE_p_wxCursor swig_types[69] -#define SWIGTYPE_p_wxObject swig_types[70] -#define SWIGTYPE_p_wxOutputStream swig_types[71] -#define SWIGTYPE_p_wxDateTime swig_types[72] -#define SWIGTYPE_p_wxPyDropSource swig_types[73] -#define SWIGTYPE_p_unsigned_long swig_types[74] -#define SWIGTYPE_p_wxKillError swig_types[75] -#define SWIGTYPE_p_wxWindow swig_types[76] -#define SWIGTYPE_p_wxString swig_types[77] -#define SWIGTYPE_p_wxPyProcess swig_types[78] -#define SWIGTYPE_p_wxBitmap swig_types[79] -#define SWIGTYPE_p_wxConfig swig_types[80] -#define SWIGTYPE_unsigned_int swig_types[81] -#define SWIGTYPE_p_unsigned_int swig_types[82] -#define SWIGTYPE_p_unsigned_char swig_types[83] -#define SWIGTYPE_p_wxChar swig_types[84] -#define SWIGTYPE_p_wxBusyInfo swig_types[85] -#define SWIGTYPE_p_wxPyDropTarget swig_types[86] -#define SWIGTYPE_p_wxPyTextDropTarget swig_types[87] -#define SWIGTYPE_p_wxPyFileDropTarget swig_types[88] -#define SWIGTYPE_p_wxProcessEvent swig_types[89] -#define SWIGTYPE_p_wxPyLog swig_types[90] -#define SWIGTYPE_p_wxLogNull swig_types[91] -#define SWIGTYPE_p_wxColour swig_types[92] -#define SWIGTYPE_p_wxPyTimer swig_types[93] -#define SWIGTYPE_p_wxConfigPathChanger swig_types[94] -#define SWIGTYPE_p_wxDateSpan swig_types[95] -static swig_type_info *swig_types[97]; +#define SWIGTYPE_p_wxFileConfig swig_types[48] +#define SWIGTYPE_p_wxVideoMode swig_types[49] +#define SWIGTYPE_p_wxDataObjectSimple swig_types[50] +#define SWIGTYPE_p_wxPyDataObjectSimple swig_types[51] +#define SWIGTYPE_p_wxDuplexMode swig_types[52] +#define SWIGTYPE_p_wxEvtHandler swig_types[53] +#define SWIGTYPE_p_wxRect swig_types[54] +#define SWIGTYPE_p_char swig_types[55] +#define SWIGTYPE_p_wxSingleInstanceChecker swig_types[56] +#define SWIGTYPE_p_wxStandardPaths swig_types[57] +#define SWIGTYPE_p_wxFileTypeInfo swig_types[58] +#define SWIGTYPE_p_wxFrame swig_types[59] +#define SWIGTYPE_p_wxTimer swig_types[60] +#define SWIGTYPE_p_wxPaperSize swig_types[61] +#define SWIGTYPE_p_wxMimeTypesManager swig_types[62] +#define SWIGTYPE_p_wxPyArtProvider swig_types[63] +#define SWIGTYPE_p_wxPyTipProvider swig_types[64] +#define SWIGTYPE_p_wxTipProvider swig_types[65] +#define SWIGTYPE_p_wxJoystick swig_types[66] +#define SWIGTYPE_p_wxSystemOptions swig_types[67] +#define SWIGTYPE_p_wxPoint swig_types[68] +#define SWIGTYPE_p_wxJoystickEvent swig_types[69] +#define SWIGTYPE_p_wxCursor swig_types[70] +#define SWIGTYPE_p_wxObject swig_types[71] +#define SWIGTYPE_p_wxOutputStream swig_types[72] +#define SWIGTYPE_p_wxDateTime swig_types[73] +#define SWIGTYPE_p_wxPyDropSource swig_types[74] +#define SWIGTYPE_p_unsigned_long swig_types[75] +#define SWIGTYPE_p_wxKillError swig_types[76] +#define SWIGTYPE_p_wxWindow swig_types[77] +#define SWIGTYPE_p_wxString swig_types[78] +#define SWIGTYPE_p_wxPyProcess swig_types[79] +#define SWIGTYPE_p_wxBitmap swig_types[80] +#define SWIGTYPE_p_wxConfig swig_types[81] +#define SWIGTYPE_unsigned_int swig_types[82] +#define SWIGTYPE_p_unsigned_int swig_types[83] +#define SWIGTYPE_p_unsigned_char swig_types[84] +#define SWIGTYPE_p_wxChar swig_types[85] +#define SWIGTYPE_p_wxBusyInfo swig_types[86] +#define SWIGTYPE_p_wxPyDropTarget swig_types[87] +#define SWIGTYPE_p_wxPyTextDropTarget swig_types[88] +#define SWIGTYPE_p_wxPyFileDropTarget swig_types[89] +#define SWIGTYPE_p_wxProcessEvent swig_types[90] +#define SWIGTYPE_p_wxPyLog swig_types[91] +#define SWIGTYPE_p_wxLogNull swig_types[92] +#define SWIGTYPE_p_wxColour swig_types[93] +#define SWIGTYPE_p_wxPyTimer swig_types[94] +#define SWIGTYPE_p_wxConfigPathChanger swig_types[95] +#define SWIGTYPE_p_wxDateSpan swig_types[96] +static swig_type_info *swig_types[98]; /* -------- TYPES TABLE (END) -------- */ @@ -1715,6 +1716,101 @@ static void wxCaret_Destroy(wxCaret *self){ #include +#ifdef __WXMSW__ +#include +#include +#endif + + + +bool wxDrawWindowOnDC(wxWindow* window, const wxDC& dc +#if 0 + , int method +#endif + ) +{ +#ifdef __WXMSW__ +#if 0 + switch (method) + { + case 1: + // This one only partially works. Appears to be an undocumented + // "standard" convention that not all widgets adhear to. For + // example, for some widgets backgrounds or non-client areas may + // not be painted. + ::SendMessage(GetHwndOf(window), WM_PAINT, (long)GetHdcOf(dc), 0); + break; + + case 2: +#endif + // This one works much better, nearly all widgets and their + // children are captured correctly[**]. Prior to the big + // background erase changes that Vadim did in 2004-2005 this + // method failed badly on XP with Themes activated, most native + // widgets draw only partially, if at all. Without themes it + // worked just like on Win2k. After those changes this method + // works very well. + // + // ** For example the radio buttons in a wxRadioBox are not its + // children by default, but you can capture it via the panel + // instead, or change RADIOBTN_PARENT_IS_RADIOBOX in radiobox.cpp. + ::SendMessage(GetHwndOf(window), WM_PRINT, (long)GetHdcOf(dc), + PRF_CLIENT | PRF_NONCLIENT | PRF_CHILDREN | + PRF_ERASEBKGND | PRF_OWNED ); + return true; +#if 0 + break; + + case 3: + // This one is only defined in the latest SDK and is only + // available on XP. MSDN says it is similar to sending WM_PRINT + // so I expect that it will work similar to the above. Since it + // is avaialble only on XP, it can't be compiled like this and + // will have to be loaded dynamically. + // //::PrintWindow(GetHwndOf(window), GetHdcOf(dc), 0); //break; + + // fall through + + case 4: + // Use PrintWindow if available, or fallback to WM_PRINT + // otherwise. Unfortunately using PrintWindow is even worse than + // WM_PRINT. For most native widgets nothing is drawn to the dc + // at all, with or without Themes. + typedef BOOL (WINAPI *PrintWindow_t)(HWND, HDC, UINT); + static bool s_triedToLoad = false; + static PrintWindow_t pfnPrintWindow = NULL; + if ( !s_triedToLoad ) + { + + s_triedToLoad = true; + wxDynamicLibrary dllUser32(_T("user32.dll")); + if ( dllUser32.IsLoaded() ) + { + wxLogNull nolog; // Don't report errors here + pfnPrintWindow = (PrintWindow_t)dllUser32.GetSymbol(_T("PrintWindow")); + } + } + if (pfnPrintWindow) + { + //printf("Using PrintWindow\n"); + pfnPrintWindow(GetHwndOf(window), GetHdcOf(dc), 0); + } + else + { + //printf("Using WM_PRINT\n"); + ::SendMessage(GetHwndOf(window), WM_PRINT, (long)GetHdcOf(dc), + PRF_CLIENT | PRF_NONCLIENT | PRF_CHILDREN | + PRF_ERASEBKGND | PRF_OWNED ); + } + } +#endif // 0 +#else + return false; +#endif // __WXMSW__ +} + + + #include @@ -2246,6 +2342,8 @@ static PyObject *wxMimeTypesManager_EnumAllFileTypes(wxMimeTypesManager *self){ static const wxString wxPyART_GO_TO_PARENT(wxART_GO_TO_PARENT); static const wxString wxPyART_GO_HOME(wxART_GO_HOME); static const wxString wxPyART_FILE_OPEN(wxART_FILE_OPEN); + static const wxString wxPyART_FILE_SAVE(wxART_FILE_SAVE); + static const wxString wxPyART_FILE_SAVE_AS(wxART_FILE_SAVE_AS); static const wxString wxPyART_PRINT(wxART_PRINT); static const wxString wxPyART_HELP(wxART_HELP); static const wxString wxPyART_TIP(wxART_TIP); @@ -2268,6 +2366,15 @@ static PyObject *wxMimeTypesManager_EnumAllFileTypes(wxMimeTypesManager *self){ static const wxString wxPyART_WARNING(wxART_WARNING); static const wxString wxPyART_INFORMATION(wxART_INFORMATION); static const wxString wxPyART_MISSING_IMAGE(wxART_MISSING_IMAGE); + static const wxString wxPyART_COPY(wxART_COPY); + static const wxString wxPyART_CUT(wxART_CUT); + static const wxString wxPyART_PASTE(wxART_PASTE); + static const wxString wxPyART_DELETE(wxART_DELETE); + static const wxString wxPyART_UNDO(wxART_UNDO); + static const wxString wxPyART_REDO(wxART_REDO); + static const wxString wxPyART_QUIT(wxART_QUIT); + static const wxString wxPyART_FIND(wxART_FIND); + static const wxString wxPyART_FIND_AND_REPLACE(wxART_FIND_AND_REPLACE); // Python aware wxArtProvider class wxPyArtProvider : public wxArtProvider { public: @@ -7706,6 +7813,44 @@ static PyObject * SingleInstanceChecker_swigregister(PyObject *, PyObject *args) Py_INCREF(obj); return Py_BuildValue((char *)""); } +static PyObject *_wrap_DrawWindowOnDC(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxWindow *arg1 = (wxWindow *) 0 ; + wxDC *arg2 = 0 ; + bool result; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + char *kwnames[] = { + (char *) "window",(char *) "dc", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:DrawWindowOnDC",kwnames,&obj0,&obj1)) goto fail; + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxWindow, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + { + SWIG_Python_ConvertPtr(obj1, (void **)&arg2, SWIGTYPE_p_wxDC, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(2)) SWIG_fail; + if (arg2 == NULL) { + SWIG_null_ref("wxDC"); + } + if (SWIG_arg_fail(2)) SWIG_fail; + } + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + result = (bool)wxDrawWindowOnDC(arg1,(wxDC const &)*arg2); + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + { + resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj); + } + return resultobj; + fail: + return NULL; +} + + static PyObject *_wrap_delete_TipProvider(PyObject *, PyObject *args, PyObject *kwargs) { PyObject *resultobj; wxTipProvider *arg1 = (wxTipProvider *) 0 ; @@ -15647,6 +15792,46 @@ static PyObject *_wrap_ART_FILE_OPEN_get(void) { } +static int _wrap_ART_FILE_SAVE_set(PyObject *) { + PyErr_SetString(PyExc_TypeError,"Variable ART_FILE_SAVE is read-only."); + return 1; +} + + +static PyObject *_wrap_ART_FILE_SAVE_get(void) { + PyObject *pyobj; + + { +#if wxUSE_UNICODE + pyobj = PyUnicode_FromWideChar((&wxPyART_FILE_SAVE)->c_str(), (&wxPyART_FILE_SAVE)->Len()); +#else + pyobj = PyString_FromStringAndSize((&wxPyART_FILE_SAVE)->c_str(), (&wxPyART_FILE_SAVE)->Len()); +#endif + } + return pyobj; +} + + +static int _wrap_ART_FILE_SAVE_AS_set(PyObject *) { + PyErr_SetString(PyExc_TypeError,"Variable ART_FILE_SAVE_AS is read-only."); + return 1; +} + + +static PyObject *_wrap_ART_FILE_SAVE_AS_get(void) { + PyObject *pyobj; + + { +#if wxUSE_UNICODE + pyobj = PyUnicode_FromWideChar((&wxPyART_FILE_SAVE_AS)->c_str(), (&wxPyART_FILE_SAVE_AS)->Len()); +#else + pyobj = PyString_FromStringAndSize((&wxPyART_FILE_SAVE_AS)->c_str(), (&wxPyART_FILE_SAVE_AS)->Len()); +#endif + } + return pyobj; +} + + static int _wrap_ART_PRINT_set(PyObject *) { PyErr_SetString(PyExc_TypeError,"Variable ART_PRINT is read-only."); return 1; @@ -16087,6 +16272,186 @@ static PyObject *_wrap_ART_MISSING_IMAGE_get(void) { } +static int _wrap_ART_COPY_set(PyObject *) { + PyErr_SetString(PyExc_TypeError,"Variable ART_COPY is read-only."); + return 1; +} + + +static PyObject *_wrap_ART_COPY_get(void) { + PyObject *pyobj; + + { +#if wxUSE_UNICODE + pyobj = PyUnicode_FromWideChar((&wxPyART_COPY)->c_str(), (&wxPyART_COPY)->Len()); +#else + pyobj = PyString_FromStringAndSize((&wxPyART_COPY)->c_str(), (&wxPyART_COPY)->Len()); +#endif + } + return pyobj; +} + + +static int _wrap_ART_CUT_set(PyObject *) { + PyErr_SetString(PyExc_TypeError,"Variable ART_CUT is read-only."); + return 1; +} + + +static PyObject *_wrap_ART_CUT_get(void) { + PyObject *pyobj; + + { +#if wxUSE_UNICODE + pyobj = PyUnicode_FromWideChar((&wxPyART_CUT)->c_str(), (&wxPyART_CUT)->Len()); +#else + pyobj = PyString_FromStringAndSize((&wxPyART_CUT)->c_str(), (&wxPyART_CUT)->Len()); +#endif + } + return pyobj; +} + + +static int _wrap_ART_PASTE_set(PyObject *) { + PyErr_SetString(PyExc_TypeError,"Variable ART_PASTE is read-only."); + return 1; +} + + +static PyObject *_wrap_ART_PASTE_get(void) { + PyObject *pyobj; + + { +#if wxUSE_UNICODE + pyobj = PyUnicode_FromWideChar((&wxPyART_PASTE)->c_str(), (&wxPyART_PASTE)->Len()); +#else + pyobj = PyString_FromStringAndSize((&wxPyART_PASTE)->c_str(), (&wxPyART_PASTE)->Len()); +#endif + } + return pyobj; +} + + +static int _wrap_ART_DELETE_set(PyObject *) { + PyErr_SetString(PyExc_TypeError,"Variable ART_DELETE is read-only."); + return 1; +} + + +static PyObject *_wrap_ART_DELETE_get(void) { + PyObject *pyobj; + + { +#if wxUSE_UNICODE + pyobj = PyUnicode_FromWideChar((&wxPyART_DELETE)->c_str(), (&wxPyART_DELETE)->Len()); +#else + pyobj = PyString_FromStringAndSize((&wxPyART_DELETE)->c_str(), (&wxPyART_DELETE)->Len()); +#endif + } + return pyobj; +} + + +static int _wrap_ART_UNDO_set(PyObject *) { + PyErr_SetString(PyExc_TypeError,"Variable ART_UNDO is read-only."); + return 1; +} + + +static PyObject *_wrap_ART_UNDO_get(void) { + PyObject *pyobj; + + { +#if wxUSE_UNICODE + pyobj = PyUnicode_FromWideChar((&wxPyART_UNDO)->c_str(), (&wxPyART_UNDO)->Len()); +#else + pyobj = PyString_FromStringAndSize((&wxPyART_UNDO)->c_str(), (&wxPyART_UNDO)->Len()); +#endif + } + return pyobj; +} + + +static int _wrap_ART_REDO_set(PyObject *) { + PyErr_SetString(PyExc_TypeError,"Variable ART_REDO is read-only."); + return 1; +} + + +static PyObject *_wrap_ART_REDO_get(void) { + PyObject *pyobj; + + { +#if wxUSE_UNICODE + pyobj = PyUnicode_FromWideChar((&wxPyART_REDO)->c_str(), (&wxPyART_REDO)->Len()); +#else + pyobj = PyString_FromStringAndSize((&wxPyART_REDO)->c_str(), (&wxPyART_REDO)->Len()); +#endif + } + return pyobj; +} + + +static int _wrap_ART_QUIT_set(PyObject *) { + PyErr_SetString(PyExc_TypeError,"Variable ART_QUIT is read-only."); + return 1; +} + + +static PyObject *_wrap_ART_QUIT_get(void) { + PyObject *pyobj; + + { +#if wxUSE_UNICODE + pyobj = PyUnicode_FromWideChar((&wxPyART_QUIT)->c_str(), (&wxPyART_QUIT)->Len()); +#else + pyobj = PyString_FromStringAndSize((&wxPyART_QUIT)->c_str(), (&wxPyART_QUIT)->Len()); +#endif + } + return pyobj; +} + + +static int _wrap_ART_FIND_set(PyObject *) { + PyErr_SetString(PyExc_TypeError,"Variable ART_FIND is read-only."); + return 1; +} + + +static PyObject *_wrap_ART_FIND_get(void) { + PyObject *pyobj; + + { +#if wxUSE_UNICODE + pyobj = PyUnicode_FromWideChar((&wxPyART_FIND)->c_str(), (&wxPyART_FIND)->Len()); +#else + pyobj = PyString_FromStringAndSize((&wxPyART_FIND)->c_str(), (&wxPyART_FIND)->Len()); +#endif + } + return pyobj; +} + + +static int _wrap_ART_FIND_AND_REPLACE_set(PyObject *) { + PyErr_SetString(PyExc_TypeError,"Variable ART_FIND_AND_REPLACE is read-only."); + return 1; +} + + +static PyObject *_wrap_ART_FIND_AND_REPLACE_get(void) { + PyObject *pyobj; + + { +#if wxUSE_UNICODE + pyobj = PyUnicode_FromWideChar((&wxPyART_FIND_AND_REPLACE)->c_str(), (&wxPyART_FIND_AND_REPLACE)->Len()); +#else + pyobj = PyString_FromStringAndSize((&wxPyART_FIND_AND_REPLACE)->c_str(), (&wxPyART_FIND_AND_REPLACE)->Len()); +#endif + } + return pyobj; +} + + static PyObject *_wrap_new_ArtProvider(PyObject *, PyObject *args, PyObject *kwargs) { PyObject *resultobj; wxPyArtProvider *result; @@ -31123,6 +31488,7 @@ static PyMethodDef SwigMethods[] = { { (char *)"SingleInstanceChecker_Create", (PyCFunction) _wrap_SingleInstanceChecker_Create, METH_VARARGS | METH_KEYWORDS, NULL}, { (char *)"SingleInstanceChecker_IsAnotherRunning", (PyCFunction) _wrap_SingleInstanceChecker_IsAnotherRunning, METH_VARARGS | METH_KEYWORDS, NULL}, { (char *)"SingleInstanceChecker_swigregister", SingleInstanceChecker_swigregister, METH_VARARGS, NULL}, + { (char *)"DrawWindowOnDC", (PyCFunction) _wrap_DrawWindowOnDC, METH_VARARGS | METH_KEYWORDS, NULL}, { (char *)"delete_TipProvider", (PyCFunction) _wrap_delete_TipProvider, METH_VARARGS | METH_KEYWORDS, NULL}, { (char *)"TipProvider_GetTip", (PyCFunction) _wrap_TipProvider_GetTip, METH_VARARGS | METH_KEYWORDS, NULL}, { (char *)"TipProvider_GetCurrentTip", (PyCFunction) _wrap_TipProvider_GetCurrentTip, METH_VARARGS | METH_KEYWORDS, NULL}, @@ -32323,6 +32689,7 @@ static swig_type_info _swigt__p_int[] = {{"_p_int", 0, "int *", 0, 0, 0, 0},{"_p static swig_type_info _swigt__p_wxSize[] = {{"_p_wxSize", 0, "wxSize *", 0, 0, 0, 0},{"_p_wxSize", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}}; static swig_type_info _swigt__p_wxClipboard[] = {{"_p_wxClipboard", 0, "wxClipboard *", 0, 0, 0, 0},{"_p_wxClipboard", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}}; static swig_type_info _swigt__p_wxStopWatch[] = {{"_p_wxStopWatch", 0, "wxStopWatch *", 0, 0, 0, 0},{"_p_wxStopWatch", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}}; +static swig_type_info _swigt__p_wxDC[] = {{"_p_wxDC", 0, "wxDC *", 0, 0, 0, 0},{"_p_wxDC", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}}; static swig_type_info _swigt__p_wxClipboardLocker[] = {{"_p_wxClipboardLocker", 0, "wxClipboardLocker *", 0, 0, 0, 0},{"_p_wxClipboardLocker", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}}; static swig_type_info _swigt__p_wxIcon[] = {{"_p_wxIcon", 0, "wxIcon *", 0, 0, 0, 0},{"_p_wxIcon", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}}; static swig_type_info _swigt__p_wxLogStderr[] = {{"_p_wxLogStderr", 0, "wxLogStderr *", 0, 0, 0, 0},{"_p_wxLogStderr", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}}; @@ -32347,8 +32714,8 @@ static swig_type_info _swigt__p_wxWindowDisabler[] = {{"_p_wxWindowDisabler", 0, static swig_type_info _swigt__p_form_ops_t[] = {{"_p_form_ops_t", 0, "enum form_ops_t *|form_ops_t *", 0, 0, 0, 0},{"_p_form_ops_t", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}}; static swig_type_info _swigt__p_wxToolTip[] = {{"_p_wxToolTip", 0, "wxToolTip *", 0, 0, 0, 0},{"_p_wxToolTip", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}}; static swig_type_info _swigt__p_wxDataObjectComposite[] = {{"_p_wxDataObjectComposite", 0, "wxDataObjectComposite *", 0, 0, 0, 0},{"_p_wxDataObjectComposite", 0, 0, 0, 0, 0, 0},{"_p_wxURLDataObject", _p_wxURLDataObjectTo_p_wxDataObjectComposite, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}}; -static swig_type_info _swigt__p_wxFileConfig[] = {{"_p_wxFileConfig", 0, "wxFileConfig *", 0, 0, 0, 0},{"_p_wxFileConfig", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}}; static swig_type_info _swigt__p_wxSystemSettings[] = {{"_p_wxSystemSettings", 0, "wxSystemSettings *", 0, 0, 0, 0},{"_p_wxSystemSettings", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}}; +static swig_type_info _swigt__p_wxFileConfig[] = {{"_p_wxFileConfig", 0, "wxFileConfig *", 0, 0, 0, 0},{"_p_wxFileConfig", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}}; static swig_type_info _swigt__p_wxVideoMode[] = {{"_p_wxVideoMode", 0, "wxVideoMode *", 0, 0, 0, 0},{"_p_wxVideoMode", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}}; static swig_type_info _swigt__p_wxDataObjectSimple[] = {{"_p_wxDataObjectSimple", 0, "wxDataObjectSimple *", 0, 0, 0, 0},{"_p_wxDataObjectSimple", 0, 0, 0, 0, 0, 0},{"_p_wxPyDataObjectSimple", _p_wxPyDataObjectSimpleTo_p_wxDataObjectSimple, 0, 0, 0, 0, 0},{"_p_wxTextDataObject", _p_wxTextDataObjectTo_p_wxDataObjectSimple, 0, 0, 0, 0, 0},{"_p_wxPyTextDataObject", _p_wxPyTextDataObjectTo_p_wxDataObjectSimple, 0, 0, 0, 0, 0},{"_p_wxBitmapDataObject", _p_wxBitmapDataObjectTo_p_wxDataObjectSimple, 0, 0, 0, 0, 0},{"_p_wxPyBitmapDataObject", _p_wxPyBitmapDataObjectTo_p_wxDataObjectSimple, 0, 0, 0, 0, 0},{"_p_wxFileDataObject", _p_wxFileDataObjectTo_p_wxDataObjectSimple, 0, 0, 0, 0, 0},{"_p_wxCustomDataObject", _p_wxCustomDataObjectTo_p_wxDataObjectSimple, 0, 0, 0, 0, 0},{"_p_wxMetafileDataObject", _p_wxMetafileDataObjectTo_p_wxDataObjectSimple, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}}; static swig_type_info _swigt__p_wxPyDataObjectSimple[] = {{"_p_wxPyDataObjectSimple", 0, "wxPyDataObjectSimple *", 0, 0, 0, 0},{"_p_wxPyDataObjectSimple", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}}; @@ -32421,6 +32788,7 @@ _swigt__p_int, _swigt__p_wxSize, _swigt__p_wxClipboard, _swigt__p_wxStopWatch, +_swigt__p_wxDC, _swigt__p_wxClipboardLocker, _swigt__p_wxIcon, _swigt__p_wxLogStderr, @@ -32445,8 +32813,8 @@ _swigt__p_wxWindowDisabler, _swigt__p_form_ops_t, _swigt__p_wxToolTip, _swigt__p_wxDataObjectComposite, -_swigt__p_wxFileConfig, _swigt__p_wxSystemSettings, +_swigt__p_wxFileConfig, _swigt__p_wxVideoMode, _swigt__p_wxDataObjectSimple, _swigt__p_wxPyDataObjectSimple, @@ -33366,6 +33734,8 @@ SWIGEXPORT(void) SWIG_init(void) { SWIG_addvarlink(SWIG_globals,(char*)"ART_GO_TO_PARENT",_wrap_ART_GO_TO_PARENT_get, _wrap_ART_GO_TO_PARENT_set); SWIG_addvarlink(SWIG_globals,(char*)"ART_GO_HOME",_wrap_ART_GO_HOME_get, _wrap_ART_GO_HOME_set); SWIG_addvarlink(SWIG_globals,(char*)"ART_FILE_OPEN",_wrap_ART_FILE_OPEN_get, _wrap_ART_FILE_OPEN_set); + SWIG_addvarlink(SWIG_globals,(char*)"ART_FILE_SAVE",_wrap_ART_FILE_SAVE_get, _wrap_ART_FILE_SAVE_set); + SWIG_addvarlink(SWIG_globals,(char*)"ART_FILE_SAVE_AS",_wrap_ART_FILE_SAVE_AS_get, _wrap_ART_FILE_SAVE_AS_set); SWIG_addvarlink(SWIG_globals,(char*)"ART_PRINT",_wrap_ART_PRINT_get, _wrap_ART_PRINT_set); SWIG_addvarlink(SWIG_globals,(char*)"ART_HELP",_wrap_ART_HELP_get, _wrap_ART_HELP_set); SWIG_addvarlink(SWIG_globals,(char*)"ART_TIP",_wrap_ART_TIP_get, _wrap_ART_TIP_set); @@ -33388,6 +33758,15 @@ SWIGEXPORT(void) SWIG_init(void) { SWIG_addvarlink(SWIG_globals,(char*)"ART_WARNING",_wrap_ART_WARNING_get, _wrap_ART_WARNING_set); SWIG_addvarlink(SWIG_globals,(char*)"ART_INFORMATION",_wrap_ART_INFORMATION_get, _wrap_ART_INFORMATION_set); SWIG_addvarlink(SWIG_globals,(char*)"ART_MISSING_IMAGE",_wrap_ART_MISSING_IMAGE_get, _wrap_ART_MISSING_IMAGE_set); + SWIG_addvarlink(SWIG_globals,(char*)"ART_COPY",_wrap_ART_COPY_get, _wrap_ART_COPY_set); + SWIG_addvarlink(SWIG_globals,(char*)"ART_CUT",_wrap_ART_CUT_get, _wrap_ART_CUT_set); + SWIG_addvarlink(SWIG_globals,(char*)"ART_PASTE",_wrap_ART_PASTE_get, _wrap_ART_PASTE_set); + SWIG_addvarlink(SWIG_globals,(char*)"ART_DELETE",_wrap_ART_DELETE_get, _wrap_ART_DELETE_set); + SWIG_addvarlink(SWIG_globals,(char*)"ART_UNDO",_wrap_ART_UNDO_get, _wrap_ART_UNDO_set); + SWIG_addvarlink(SWIG_globals,(char*)"ART_REDO",_wrap_ART_REDO_get, _wrap_ART_REDO_set); + SWIG_addvarlink(SWIG_globals,(char*)"ART_QUIT",_wrap_ART_QUIT_get, _wrap_ART_QUIT_set); + SWIG_addvarlink(SWIG_globals,(char*)"ART_FIND",_wrap_ART_FIND_get, _wrap_ART_FIND_set); + SWIG_addvarlink(SWIG_globals,(char*)"ART_FIND_AND_REPLACE",_wrap_ART_FIND_AND_REPLACE_get, _wrap_ART_FIND_AND_REPLACE_set); wxPyPtrTypeMap_Add("wxArtProvider", "wxPyArtProvider"); diff --git a/wxPython/src/msw/_core.py b/wxPython/src/msw/_core.py index 8f59b45efa..38eb65943b 100644 --- a/wxPython/src/msw/_core.py +++ b/wxPython/src/msw/_core.py @@ -2177,6 +2177,17 @@ class Image(Object): """HasAlpha(self) -> bool""" return _core_.Image_HasAlpha(*args, **kwargs) + def InitAlpha(*args, **kwargs): + """ + InitAlpha(self) + + Initializes the image alpha channel data. It is an error to call it if + the image already has alpha data. If it doesn't, alpha data will be by + default initialized to all pixels being fully opaque. But if the image + has a a mask colour, all mask pixels will be completely transparent. + """ + return _core_.Image_InitAlpha(*args, **kwargs) + def FindFirstUnusedColour(*args, **kwargs): """ FindFirstUnusedColour(int startR=1, int startG=0, int startB=0) -> (success, r, g, b) @@ -2539,11 +2550,18 @@ class BMPHandlerPtr(BMPHandler): self.__class__ = BMPHandler _core_.BMPHandler_swigregister(BMPHandlerPtr) NullImage = cvar.NullImage +IMAGE_OPTION_FILENAME = cvar.IMAGE_OPTION_FILENAME IMAGE_OPTION_BMP_FORMAT = cvar.IMAGE_OPTION_BMP_FORMAT IMAGE_OPTION_CUR_HOTSPOT_X = cvar.IMAGE_OPTION_CUR_HOTSPOT_X IMAGE_OPTION_CUR_HOTSPOT_Y = cvar.IMAGE_OPTION_CUR_HOTSPOT_Y IMAGE_OPTION_RESOLUTION = cvar.IMAGE_OPTION_RESOLUTION +IMAGE_OPTION_RESOLUTIONX = cvar.IMAGE_OPTION_RESOLUTIONX +IMAGE_OPTION_RESOLUTIONY = cvar.IMAGE_OPTION_RESOLUTIONY IMAGE_OPTION_RESOLUTIONUNIT = cvar.IMAGE_OPTION_RESOLUTIONUNIT +IMAGE_OPTION_BITSPERSAMPLE = cvar.IMAGE_OPTION_BITSPERSAMPLE +IMAGE_OPTION_SAMPLESPERPIXEL = cvar.IMAGE_OPTION_SAMPLESPERPIXEL +IMAGE_OPTION_COMPRESSION = cvar.IMAGE_OPTION_COMPRESSION +IMAGE_OPTION_IMAGEDESCRIPTOR = cvar.IMAGE_OPTION_IMAGEDESCRIPTOR class ICOHandler(BMPHandler): """Proxy of C++ ICOHandler class""" @@ -4564,6 +4582,14 @@ class NavigationKeyEvent(Event): """SetWindowChange(self, bool ischange)""" return _core_.NavigationKeyEvent_SetWindowChange(*args, **kwargs) + def IsFromTab(*args, **kwargs): + """IsFromTab(self) -> bool""" + return _core_.NavigationKeyEvent_IsFromTab(*args, **kwargs) + + def SetFromTab(*args, **kwargs): + """SetFromTab(self, bool bIs)""" + return _core_.NavigationKeyEvent_SetFromTab(*args, **kwargs) + def SetFlags(*args, **kwargs): """SetFlags(self, long flags)""" return _core_.NavigationKeyEvent_SetFlags(*args, **kwargs) @@ -4579,6 +4605,7 @@ class NavigationKeyEvent(Event): IsBackward = _core_.NavigationKeyEvent_IsBackward IsForward = _core_.NavigationKeyEvent_IsForward WinChange = _core_.NavigationKeyEvent_WinChange + FromTab = _core_.NavigationKeyEvent_FromTab class NavigationKeyEventPtr(NavigationKeyEvent): def __init__(self, this): diff --git a/wxPython/src/msw/_core_wrap.cpp b/wxPython/src/msw/_core_wrap.cpp index 783ea9f7ab..8f0acff84b 100644 --- a/wxPython/src/msw/_core_wrap.cpp +++ b/wxPython/src/msw/_core_wrap.cpp @@ -2463,11 +2463,18 @@ static wxBitmap wxImage_ConvertToMonoBitmap(wxImage *self,unsigned char red,unsi wxBitmap bitmap( mono, 1 ); return bitmap; } + static const wxString wxPyIMAGE_OPTION_FILENAME(wxIMAGE_OPTION_FILENAME); static const wxString wxPyIMAGE_OPTION_BMP_FORMAT(wxIMAGE_OPTION_BMP_FORMAT); static const wxString wxPyIMAGE_OPTION_CUR_HOTSPOT_X(wxIMAGE_OPTION_CUR_HOTSPOT_X); static const wxString wxPyIMAGE_OPTION_CUR_HOTSPOT_Y(wxIMAGE_OPTION_CUR_HOTSPOT_Y); static const wxString wxPyIMAGE_OPTION_RESOLUTION(wxIMAGE_OPTION_RESOLUTION); + static const wxString wxPyIMAGE_OPTION_RESOLUTIONX(wxIMAGE_OPTION_RESOLUTIONX); + static const wxString wxPyIMAGE_OPTION_RESOLUTIONY(wxIMAGE_OPTION_RESOLUTIONY); static const wxString wxPyIMAGE_OPTION_RESOLUTIONUNIT(wxIMAGE_OPTION_RESOLUTIONUNIT); + static const wxString wxPyIMAGE_OPTION_BITSPERSAMPLE(wxIMAGE_OPTION_BITSPERSAMPLE); + static const wxString wxPyIMAGE_OPTION_SAMPLESPERPIXEL(wxIMAGE_OPTION_SAMPLESPERPIXEL); + static const wxString wxPyIMAGE_OPTION_COMPRESSION(wxIMAGE_OPTION_COMPRESSION); + static const wxString wxPyIMAGE_OPTION_IMAGEDESCRIPTOR(wxIMAGE_OPTION_IMAGEDESCRIPTOR); #include @@ -11203,6 +11210,31 @@ static PyObject *_wrap_Image_HasAlpha(PyObject *, PyObject *args, PyObject *kwar } +static PyObject *_wrap_Image_InitAlpha(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxImage *arg1 = (wxImage *) 0 ; + PyObject * obj0 = 0 ; + char *kwnames[] = { + (char *) "self", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:Image_InitAlpha",kwnames,&obj0)) goto fail; + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxImage, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + (arg1)->InitAlpha(); + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; + fail: + return NULL; +} + + static PyObject *_wrap_Image_FindFirstUnusedColour(PyObject *, PyObject *args, PyObject *kwargs) { PyObject *resultobj; wxImage *arg1 = (wxImage *) 0 ; @@ -13350,6 +13382,26 @@ static PyObject *_wrap_NullImage_get(void) { } +static int _wrap_IMAGE_OPTION_FILENAME_set(PyObject *) { + PyErr_SetString(PyExc_TypeError,"Variable IMAGE_OPTION_FILENAME is read-only."); + return 1; +} + + +static PyObject *_wrap_IMAGE_OPTION_FILENAME_get(void) { + PyObject *pyobj; + + { +#if wxUSE_UNICODE + pyobj = PyUnicode_FromWideChar((&wxPyIMAGE_OPTION_FILENAME)->c_str(), (&wxPyIMAGE_OPTION_FILENAME)->Len()); +#else + pyobj = PyString_FromStringAndSize((&wxPyIMAGE_OPTION_FILENAME)->c_str(), (&wxPyIMAGE_OPTION_FILENAME)->Len()); +#endif + } + return pyobj; +} + + static int _wrap_IMAGE_OPTION_BMP_FORMAT_set(PyObject *) { PyErr_SetString(PyExc_TypeError,"Variable IMAGE_OPTION_BMP_FORMAT is read-only."); return 1; @@ -13430,6 +13482,46 @@ static PyObject *_wrap_IMAGE_OPTION_RESOLUTION_get(void) { } +static int _wrap_IMAGE_OPTION_RESOLUTIONX_set(PyObject *) { + PyErr_SetString(PyExc_TypeError,"Variable IMAGE_OPTION_RESOLUTIONX is read-only."); + return 1; +} + + +static PyObject *_wrap_IMAGE_OPTION_RESOLUTIONX_get(void) { + PyObject *pyobj; + + { +#if wxUSE_UNICODE + pyobj = PyUnicode_FromWideChar((&wxPyIMAGE_OPTION_RESOLUTIONX)->c_str(), (&wxPyIMAGE_OPTION_RESOLUTIONX)->Len()); +#else + pyobj = PyString_FromStringAndSize((&wxPyIMAGE_OPTION_RESOLUTIONX)->c_str(), (&wxPyIMAGE_OPTION_RESOLUTIONX)->Len()); +#endif + } + return pyobj; +} + + +static int _wrap_IMAGE_OPTION_RESOLUTIONY_set(PyObject *) { + PyErr_SetString(PyExc_TypeError,"Variable IMAGE_OPTION_RESOLUTIONY is read-only."); + return 1; +} + + +static PyObject *_wrap_IMAGE_OPTION_RESOLUTIONY_get(void) { + PyObject *pyobj; + + { +#if wxUSE_UNICODE + pyobj = PyUnicode_FromWideChar((&wxPyIMAGE_OPTION_RESOLUTIONY)->c_str(), (&wxPyIMAGE_OPTION_RESOLUTIONY)->Len()); +#else + pyobj = PyString_FromStringAndSize((&wxPyIMAGE_OPTION_RESOLUTIONY)->c_str(), (&wxPyIMAGE_OPTION_RESOLUTIONY)->Len()); +#endif + } + return pyobj; +} + + static int _wrap_IMAGE_OPTION_RESOLUTIONUNIT_set(PyObject *) { PyErr_SetString(PyExc_TypeError,"Variable IMAGE_OPTION_RESOLUTIONUNIT is read-only."); return 1; @@ -13450,6 +13542,86 @@ static PyObject *_wrap_IMAGE_OPTION_RESOLUTIONUNIT_get(void) { } +static int _wrap_IMAGE_OPTION_BITSPERSAMPLE_set(PyObject *) { + PyErr_SetString(PyExc_TypeError,"Variable IMAGE_OPTION_BITSPERSAMPLE is read-only."); + return 1; +} + + +static PyObject *_wrap_IMAGE_OPTION_BITSPERSAMPLE_get(void) { + PyObject *pyobj; + + { +#if wxUSE_UNICODE + pyobj = PyUnicode_FromWideChar((&wxPyIMAGE_OPTION_BITSPERSAMPLE)->c_str(), (&wxPyIMAGE_OPTION_BITSPERSAMPLE)->Len()); +#else + pyobj = PyString_FromStringAndSize((&wxPyIMAGE_OPTION_BITSPERSAMPLE)->c_str(), (&wxPyIMAGE_OPTION_BITSPERSAMPLE)->Len()); +#endif + } + return pyobj; +} + + +static int _wrap_IMAGE_OPTION_SAMPLESPERPIXEL_set(PyObject *) { + PyErr_SetString(PyExc_TypeError,"Variable IMAGE_OPTION_SAMPLESPERPIXEL is read-only."); + return 1; +} + + +static PyObject *_wrap_IMAGE_OPTION_SAMPLESPERPIXEL_get(void) { + PyObject *pyobj; + + { +#if wxUSE_UNICODE + pyobj = PyUnicode_FromWideChar((&wxPyIMAGE_OPTION_SAMPLESPERPIXEL)->c_str(), (&wxPyIMAGE_OPTION_SAMPLESPERPIXEL)->Len()); +#else + pyobj = PyString_FromStringAndSize((&wxPyIMAGE_OPTION_SAMPLESPERPIXEL)->c_str(), (&wxPyIMAGE_OPTION_SAMPLESPERPIXEL)->Len()); +#endif + } + return pyobj; +} + + +static int _wrap_IMAGE_OPTION_COMPRESSION_set(PyObject *) { + PyErr_SetString(PyExc_TypeError,"Variable IMAGE_OPTION_COMPRESSION is read-only."); + return 1; +} + + +static PyObject *_wrap_IMAGE_OPTION_COMPRESSION_get(void) { + PyObject *pyobj; + + { +#if wxUSE_UNICODE + pyobj = PyUnicode_FromWideChar((&wxPyIMAGE_OPTION_COMPRESSION)->c_str(), (&wxPyIMAGE_OPTION_COMPRESSION)->Len()); +#else + pyobj = PyString_FromStringAndSize((&wxPyIMAGE_OPTION_COMPRESSION)->c_str(), (&wxPyIMAGE_OPTION_COMPRESSION)->Len()); +#endif + } + return pyobj; +} + + +static int _wrap_IMAGE_OPTION_IMAGEDESCRIPTOR_set(PyObject *) { + PyErr_SetString(PyExc_TypeError,"Variable IMAGE_OPTION_IMAGEDESCRIPTOR is read-only."); + return 1; +} + + +static PyObject *_wrap_IMAGE_OPTION_IMAGEDESCRIPTOR_get(void) { + PyObject *pyobj; + + { +#if wxUSE_UNICODE + pyobj = PyUnicode_FromWideChar((&wxPyIMAGE_OPTION_IMAGEDESCRIPTOR)->c_str(), (&wxPyIMAGE_OPTION_IMAGEDESCRIPTOR)->Len()); +#else + pyobj = PyString_FromStringAndSize((&wxPyIMAGE_OPTION_IMAGEDESCRIPTOR)->c_str(), (&wxPyIMAGE_OPTION_IMAGEDESCRIPTOR)->Len()); +#endif + } + return pyobj; +} + + static PyObject *_wrap_new_BMPHandler(PyObject *, PyObject *args, PyObject *kwargs) { PyObject *resultobj; wxBMPHandler *result; @@ -21011,6 +21183,65 @@ static PyObject *_wrap_NavigationKeyEvent_SetWindowChange(PyObject *, PyObject * } +static PyObject *_wrap_NavigationKeyEvent_IsFromTab(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxNavigationKeyEvent *arg1 = (wxNavigationKeyEvent *) 0 ; + bool result; + PyObject * obj0 = 0 ; + char *kwnames[] = { + (char *) "self", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:NavigationKeyEvent_IsFromTab",kwnames,&obj0)) goto fail; + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxNavigationKeyEvent, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + result = (bool)((wxNavigationKeyEvent const *)arg1)->IsFromTab(); + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + { + resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj); + } + return resultobj; + fail: + return NULL; +} + + +static PyObject *_wrap_NavigationKeyEvent_SetFromTab(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxNavigationKeyEvent *arg1 = (wxNavigationKeyEvent *) 0 ; + bool arg2 ; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + char *kwnames[] = { + (char *) "self",(char *) "bIs", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:NavigationKeyEvent_SetFromTab",kwnames,&obj0,&obj1)) goto fail; + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxNavigationKeyEvent, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + { + arg2 = (bool)(SWIG_As_bool(obj1)); + if (SWIG_arg_fail(2)) SWIG_fail; + } + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + (arg1)->SetFromTab(arg2); + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; + fail: + return NULL; +} + + static PyObject *_wrap_NavigationKeyEvent_SetFlags(PyObject *, PyObject *args, PyObject *kwargs) { PyObject *resultobj; wxNavigationKeyEvent *arg1 = (wxNavigationKeyEvent *) 0 ; @@ -44769,6 +45000,7 @@ static PyMethodDef SwigMethods[] = { { (char *)"Image_SetAlpha", (PyCFunction) _wrap_Image_SetAlpha, METH_VARARGS | METH_KEYWORDS, NULL}, { (char *)"Image_GetAlpha", (PyCFunction) _wrap_Image_GetAlpha, METH_VARARGS | METH_KEYWORDS, NULL}, { (char *)"Image_HasAlpha", (PyCFunction) _wrap_Image_HasAlpha, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"Image_InitAlpha", (PyCFunction) _wrap_Image_InitAlpha, METH_VARARGS | METH_KEYWORDS, NULL}, { (char *)"Image_FindFirstUnusedColour", (PyCFunction) _wrap_Image_FindFirstUnusedColour, METH_VARARGS | METH_KEYWORDS, NULL}, { (char *)"Image_ConvertAlphaToMask", (PyCFunction) _wrap_Image_ConvertAlphaToMask, METH_VARARGS | METH_KEYWORDS, NULL}, { (char *)"Image_ConvertColourToAlpha", (PyCFunction) _wrap_Image_ConvertColourToAlpha, METH_VARARGS | METH_KEYWORDS, NULL}, @@ -45117,6 +45349,8 @@ static PyMethodDef SwigMethods[] = { { (char *)"NavigationKeyEvent_SetDirection", (PyCFunction) _wrap_NavigationKeyEvent_SetDirection, METH_VARARGS | METH_KEYWORDS, NULL}, { (char *)"NavigationKeyEvent_IsWindowChange", (PyCFunction) _wrap_NavigationKeyEvent_IsWindowChange, METH_VARARGS | METH_KEYWORDS, NULL}, { (char *)"NavigationKeyEvent_SetWindowChange", (PyCFunction) _wrap_NavigationKeyEvent_SetWindowChange, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"NavigationKeyEvent_IsFromTab", (PyCFunction) _wrap_NavigationKeyEvent_IsFromTab, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"NavigationKeyEvent_SetFromTab", (PyCFunction) _wrap_NavigationKeyEvent_SetFromTab, METH_VARARGS | METH_KEYWORDS, NULL}, { (char *)"NavigationKeyEvent_SetFlags", (PyCFunction) _wrap_NavigationKeyEvent_SetFlags, METH_VARARGS | METH_KEYWORDS, NULL}, { (char *)"NavigationKeyEvent_GetCurrentFocus", (PyCFunction) _wrap_NavigationKeyEvent_GetCurrentFocus, METH_VARARGS | METH_KEYWORDS, NULL}, { (char *)"NavigationKeyEvent_SetCurrentFocus", (PyCFunction) _wrap_NavigationKeyEvent_SetCurrentFocus, METH_VARARGS | METH_KEYWORDS, NULL}, @@ -48724,10 +48958,13 @@ SWIGEXPORT(void) SWIG_init(void) { wxPyPtrTypeMap_Add("wxFileSystemHandler", "wxPyFileSystemHandler"); SWIG_addvarlink(SWIG_globals,(char*)"NullImage",_wrap_NullImage_get, _wrap_NullImage_set); + SWIG_addvarlink(SWIG_globals,(char*)"IMAGE_OPTION_FILENAME",_wrap_IMAGE_OPTION_FILENAME_get, _wrap_IMAGE_OPTION_FILENAME_set); SWIG_addvarlink(SWIG_globals,(char*)"IMAGE_OPTION_BMP_FORMAT",_wrap_IMAGE_OPTION_BMP_FORMAT_get, _wrap_IMAGE_OPTION_BMP_FORMAT_set); SWIG_addvarlink(SWIG_globals,(char*)"IMAGE_OPTION_CUR_HOTSPOT_X",_wrap_IMAGE_OPTION_CUR_HOTSPOT_X_get, _wrap_IMAGE_OPTION_CUR_HOTSPOT_X_set); SWIG_addvarlink(SWIG_globals,(char*)"IMAGE_OPTION_CUR_HOTSPOT_Y",_wrap_IMAGE_OPTION_CUR_HOTSPOT_Y_get, _wrap_IMAGE_OPTION_CUR_HOTSPOT_Y_set); SWIG_addvarlink(SWIG_globals,(char*)"IMAGE_OPTION_RESOLUTION",_wrap_IMAGE_OPTION_RESOLUTION_get, _wrap_IMAGE_OPTION_RESOLUTION_set); + SWIG_addvarlink(SWIG_globals,(char*)"IMAGE_OPTION_RESOLUTIONX",_wrap_IMAGE_OPTION_RESOLUTIONX_get, _wrap_IMAGE_OPTION_RESOLUTIONX_set); + SWIG_addvarlink(SWIG_globals,(char*)"IMAGE_OPTION_RESOLUTIONY",_wrap_IMAGE_OPTION_RESOLUTIONY_get, _wrap_IMAGE_OPTION_RESOLUTIONY_set); SWIG_addvarlink(SWIG_globals,(char*)"IMAGE_OPTION_RESOLUTIONUNIT",_wrap_IMAGE_OPTION_RESOLUTIONUNIT_get, _wrap_IMAGE_OPTION_RESOLUTIONUNIT_set); { PyDict_SetItemString(d,"IMAGE_RESOLUTION_INCHES", SWIG_From_int((int)(wxIMAGE_RESOLUTION_INCHES))); @@ -48735,6 +48972,10 @@ SWIGEXPORT(void) SWIG_init(void) { { PyDict_SetItemString(d,"IMAGE_RESOLUTION_CM", SWIG_From_int((int)(wxIMAGE_RESOLUTION_CM))); } + SWIG_addvarlink(SWIG_globals,(char*)"IMAGE_OPTION_BITSPERSAMPLE",_wrap_IMAGE_OPTION_BITSPERSAMPLE_get, _wrap_IMAGE_OPTION_BITSPERSAMPLE_set); + SWIG_addvarlink(SWIG_globals,(char*)"IMAGE_OPTION_SAMPLESPERPIXEL",_wrap_IMAGE_OPTION_SAMPLESPERPIXEL_get, _wrap_IMAGE_OPTION_SAMPLESPERPIXEL_set); + SWIG_addvarlink(SWIG_globals,(char*)"IMAGE_OPTION_COMPRESSION",_wrap_IMAGE_OPTION_COMPRESSION_get, _wrap_IMAGE_OPTION_COMPRESSION_set); + SWIG_addvarlink(SWIG_globals,(char*)"IMAGE_OPTION_IMAGEDESCRIPTOR",_wrap_IMAGE_OPTION_IMAGEDESCRIPTOR_get, _wrap_IMAGE_OPTION_IMAGEDESCRIPTOR_set); { PyDict_SetItemString(d,"BMP_24BPP", SWIG_From_int((int)(wxBMP_24BPP))); } @@ -48918,6 +49159,9 @@ SWIGEXPORT(void) SWIG_init(void) { { PyDict_SetItemString(d,"NavigationKeyEvent_WinChange", SWIG_From_int((int)(wxNavigationKeyEvent::WinChange))); } + { + PyDict_SetItemString(d,"NavigationKeyEvent_FromTab", SWIG_From_int((int)(wxNavigationKeyEvent::FromTab))); + } { PyDict_SetItemString(d,"IDLE_PROCESS_ALL", SWIG_From_int((int)(wxIDLE_PROCESS_ALL))); } diff --git a/wxPython/src/msw/_misc.py b/wxPython/src/msw/_misc.py index 2f1235a772..6545bb4c8b 100644 --- a/wxPython/src/msw/_misc.py +++ b/wxPython/src/msw/_misc.py @@ -958,6 +958,10 @@ def PreSingleInstanceChecker(*args, **kwargs): val.thisown = 1 return val + +def DrawWindowOnDC(*args, **kwargs): + """DrawWindowOnDC(Window window, DC dc) -> bool""" + return _misc_.DrawWindowOnDC(*args, **kwargs) #--------------------------------------------------------------------------- class TipProvider(object): @@ -2577,6 +2581,8 @@ ART_GO_DOWN = cvar.ART_GO_DOWN ART_GO_TO_PARENT = cvar.ART_GO_TO_PARENT ART_GO_HOME = cvar.ART_GO_HOME ART_FILE_OPEN = cvar.ART_FILE_OPEN +ART_FILE_SAVE = cvar.ART_FILE_SAVE +ART_FILE_SAVE_AS = cvar.ART_FILE_SAVE_AS ART_PRINT = cvar.ART_PRINT ART_HELP = cvar.ART_HELP ART_TIP = cvar.ART_TIP @@ -2599,6 +2605,15 @@ ART_QUESTION = cvar.ART_QUESTION ART_WARNING = cvar.ART_WARNING ART_INFORMATION = cvar.ART_INFORMATION ART_MISSING_IMAGE = cvar.ART_MISSING_IMAGE +ART_COPY = cvar.ART_COPY +ART_CUT = cvar.ART_CUT +ART_PASTE = cvar.ART_PASTE +ART_DELETE = cvar.ART_DELETE +ART_UNDO = cvar.ART_UNDO +ART_REDO = cvar.ART_REDO +ART_QUIT = cvar.ART_QUIT +ART_FIND = cvar.ART_FIND +ART_FIND_AND_REPLACE = cvar.ART_FIND_AND_REPLACE def ArtProvider_PushProvider(*args, **kwargs): """ diff --git a/wxPython/src/msw/_misc_wrap.cpp b/wxPython/src/msw/_misc_wrap.cpp index 5ee4e17fa4..07470dba1b 100644 --- a/wxPython/src/msw/_misc_wrap.cpp +++ b/wxPython/src/msw/_misc_wrap.cpp @@ -1360,81 +1360,82 @@ SWIG_Python_GetTypeList() { #define SWIGTYPE_p_wxSize swig_types[19] #define SWIGTYPE_p_wxClipboard swig_types[20] #define SWIGTYPE_p_wxStopWatch swig_types[21] -#define SWIGTYPE_p_wxClipboardLocker swig_types[22] -#define SWIGTYPE_p_wxIcon swig_types[23] -#define SWIGTYPE_p_wxLogStderr swig_types[24] -#define SWIGTYPE_p_wxLogTextCtrl swig_types[25] -#define SWIGTYPE_p_wxTextCtrl swig_types[26] -#define SWIGTYPE_p_wxBusyCursor swig_types[27] -#define SWIGTYPE_p_wxBitmapDataObject swig_types[28] -#define SWIGTYPE_p_wxTextDataObject swig_types[29] -#define SWIGTYPE_p_wxDataObject swig_types[30] -#define SWIGTYPE_p_wxPyTextDataObject swig_types[31] -#define SWIGTYPE_p_wxPyBitmapDataObject swig_types[32] -#define SWIGTYPE_p_wxFileDataObject swig_types[33] -#define SWIGTYPE_p_wxCustomDataObject swig_types[34] -#define SWIGTYPE_p_wxURLDataObject swig_types[35] -#define SWIGTYPE_p_wxMetafileDataObject swig_types[36] -#define SWIGTYPE_p_wxSound swig_types[37] -#define SWIGTYPE_p_wxTimerRunner swig_types[38] -#define SWIGTYPE_p_wxLogWindow swig_types[39] -#define SWIGTYPE_p_wxTimeSpan swig_types[40] -#define SWIGTYPE_p_wxArrayString swig_types[41] -#define SWIGTYPE_p_wxWindowDisabler swig_types[42] -#define SWIGTYPE_p_form_ops_t swig_types[43] -#define SWIGTYPE_p_wxToolTip swig_types[44] -#define SWIGTYPE_p_wxDataObjectComposite swig_types[45] -#define SWIGTYPE_p_wxFileConfig swig_types[46] +#define SWIGTYPE_p_wxDC swig_types[22] +#define SWIGTYPE_p_wxClipboardLocker swig_types[23] +#define SWIGTYPE_p_wxIcon swig_types[24] +#define SWIGTYPE_p_wxLogStderr swig_types[25] +#define SWIGTYPE_p_wxLogTextCtrl swig_types[26] +#define SWIGTYPE_p_wxTextCtrl swig_types[27] +#define SWIGTYPE_p_wxBusyCursor swig_types[28] +#define SWIGTYPE_p_wxBitmapDataObject swig_types[29] +#define SWIGTYPE_p_wxTextDataObject swig_types[30] +#define SWIGTYPE_p_wxDataObject swig_types[31] +#define SWIGTYPE_p_wxPyTextDataObject swig_types[32] +#define SWIGTYPE_p_wxPyBitmapDataObject swig_types[33] +#define SWIGTYPE_p_wxFileDataObject swig_types[34] +#define SWIGTYPE_p_wxCustomDataObject swig_types[35] +#define SWIGTYPE_p_wxURLDataObject swig_types[36] +#define SWIGTYPE_p_wxMetafileDataObject swig_types[37] +#define SWIGTYPE_p_wxSound swig_types[38] +#define SWIGTYPE_p_wxTimerRunner swig_types[39] +#define SWIGTYPE_p_wxLogWindow swig_types[40] +#define SWIGTYPE_p_wxTimeSpan swig_types[41] +#define SWIGTYPE_p_wxArrayString swig_types[42] +#define SWIGTYPE_p_wxWindowDisabler swig_types[43] +#define SWIGTYPE_p_form_ops_t swig_types[44] +#define SWIGTYPE_p_wxToolTip swig_types[45] +#define SWIGTYPE_p_wxDataObjectComposite swig_types[46] #define SWIGTYPE_p_wxSystemSettings swig_types[47] -#define SWIGTYPE_p_wxVideoMode swig_types[48] -#define SWIGTYPE_p_wxDataObjectSimple swig_types[49] -#define SWIGTYPE_p_wxPyDataObjectSimple swig_types[50] -#define SWIGTYPE_p_wxDuplexMode swig_types[51] -#define SWIGTYPE_p_wxEvtHandler swig_types[52] -#define SWIGTYPE_p_wxRect swig_types[53] -#define SWIGTYPE_p_char swig_types[54] -#define SWIGTYPE_p_wxSingleInstanceChecker swig_types[55] -#define SWIGTYPE_p_wxStandardPaths swig_types[56] -#define SWIGTYPE_p_wxFileTypeInfo swig_types[57] -#define SWIGTYPE_p_wxFrame swig_types[58] -#define SWIGTYPE_p_wxTimer swig_types[59] -#define SWIGTYPE_p_wxPaperSize swig_types[60] -#define SWIGTYPE_p_wxMimeTypesManager swig_types[61] -#define SWIGTYPE_p_wxPyArtProvider swig_types[62] -#define SWIGTYPE_p_wxPyTipProvider swig_types[63] -#define SWIGTYPE_p_wxTipProvider swig_types[64] -#define SWIGTYPE_p_wxJoystick swig_types[65] -#define SWIGTYPE_p_wxSystemOptions swig_types[66] -#define SWIGTYPE_p_wxPoint swig_types[67] -#define SWIGTYPE_p_wxJoystickEvent swig_types[68] -#define SWIGTYPE_p_wxCursor swig_types[69] -#define SWIGTYPE_p_wxObject swig_types[70] -#define SWIGTYPE_p_wxOutputStream swig_types[71] -#define SWIGTYPE_p_wxDateTime swig_types[72] -#define SWIGTYPE_p_wxPyDropSource swig_types[73] -#define SWIGTYPE_p_unsigned_long swig_types[74] -#define SWIGTYPE_p_wxKillError swig_types[75] -#define SWIGTYPE_p_wxWindow swig_types[76] -#define SWIGTYPE_p_wxString swig_types[77] -#define SWIGTYPE_p_wxPyProcess swig_types[78] -#define SWIGTYPE_p_wxBitmap swig_types[79] -#define SWIGTYPE_p_wxConfig swig_types[80] -#define SWIGTYPE_unsigned_int swig_types[81] -#define SWIGTYPE_p_unsigned_int swig_types[82] -#define SWIGTYPE_p_unsigned_char swig_types[83] -#define SWIGTYPE_p_wxChar swig_types[84] -#define SWIGTYPE_p_wxBusyInfo swig_types[85] -#define SWIGTYPE_p_wxPyDropTarget swig_types[86] -#define SWIGTYPE_p_wxPyTextDropTarget swig_types[87] -#define SWIGTYPE_p_wxPyFileDropTarget swig_types[88] -#define SWIGTYPE_p_wxProcessEvent swig_types[89] -#define SWIGTYPE_p_wxPyLog swig_types[90] -#define SWIGTYPE_p_wxLogNull swig_types[91] -#define SWIGTYPE_p_wxColour swig_types[92] -#define SWIGTYPE_p_wxPyTimer swig_types[93] -#define SWIGTYPE_p_wxConfigPathChanger swig_types[94] -#define SWIGTYPE_p_wxDateSpan swig_types[95] -static swig_type_info *swig_types[97]; +#define SWIGTYPE_p_wxFileConfig swig_types[48] +#define SWIGTYPE_p_wxVideoMode swig_types[49] +#define SWIGTYPE_p_wxDataObjectSimple swig_types[50] +#define SWIGTYPE_p_wxPyDataObjectSimple swig_types[51] +#define SWIGTYPE_p_wxDuplexMode swig_types[52] +#define SWIGTYPE_p_wxEvtHandler swig_types[53] +#define SWIGTYPE_p_wxRect swig_types[54] +#define SWIGTYPE_p_char swig_types[55] +#define SWIGTYPE_p_wxSingleInstanceChecker swig_types[56] +#define SWIGTYPE_p_wxStandardPaths swig_types[57] +#define SWIGTYPE_p_wxFileTypeInfo swig_types[58] +#define SWIGTYPE_p_wxFrame swig_types[59] +#define SWIGTYPE_p_wxTimer swig_types[60] +#define SWIGTYPE_p_wxPaperSize swig_types[61] +#define SWIGTYPE_p_wxMimeTypesManager swig_types[62] +#define SWIGTYPE_p_wxPyArtProvider swig_types[63] +#define SWIGTYPE_p_wxPyTipProvider swig_types[64] +#define SWIGTYPE_p_wxTipProvider swig_types[65] +#define SWIGTYPE_p_wxJoystick swig_types[66] +#define SWIGTYPE_p_wxSystemOptions swig_types[67] +#define SWIGTYPE_p_wxPoint swig_types[68] +#define SWIGTYPE_p_wxJoystickEvent swig_types[69] +#define SWIGTYPE_p_wxCursor swig_types[70] +#define SWIGTYPE_p_wxObject swig_types[71] +#define SWIGTYPE_p_wxOutputStream swig_types[72] +#define SWIGTYPE_p_wxDateTime swig_types[73] +#define SWIGTYPE_p_wxPyDropSource swig_types[74] +#define SWIGTYPE_p_unsigned_long swig_types[75] +#define SWIGTYPE_p_wxKillError swig_types[76] +#define SWIGTYPE_p_wxWindow swig_types[77] +#define SWIGTYPE_p_wxString swig_types[78] +#define SWIGTYPE_p_wxPyProcess swig_types[79] +#define SWIGTYPE_p_wxBitmap swig_types[80] +#define SWIGTYPE_p_wxConfig swig_types[81] +#define SWIGTYPE_unsigned_int swig_types[82] +#define SWIGTYPE_p_unsigned_int swig_types[83] +#define SWIGTYPE_p_unsigned_char swig_types[84] +#define SWIGTYPE_p_wxChar swig_types[85] +#define SWIGTYPE_p_wxBusyInfo swig_types[86] +#define SWIGTYPE_p_wxPyDropTarget swig_types[87] +#define SWIGTYPE_p_wxPyTextDropTarget swig_types[88] +#define SWIGTYPE_p_wxPyFileDropTarget swig_types[89] +#define SWIGTYPE_p_wxProcessEvent swig_types[90] +#define SWIGTYPE_p_wxPyLog swig_types[91] +#define SWIGTYPE_p_wxLogNull swig_types[92] +#define SWIGTYPE_p_wxColour swig_types[93] +#define SWIGTYPE_p_wxPyTimer swig_types[94] +#define SWIGTYPE_p_wxConfigPathChanger swig_types[95] +#define SWIGTYPE_p_wxDateSpan swig_types[96] +static swig_type_info *swig_types[98]; /* -------- TYPES TABLE (END) -------- */ @@ -1715,6 +1716,101 @@ static void wxCaret_Destroy(wxCaret *self){ #include +#ifdef __WXMSW__ +#include +#include +#endif + + + +bool wxDrawWindowOnDC(wxWindow* window, const wxDC& dc +#if 0 + , int method +#endif + ) +{ +#ifdef __WXMSW__ +#if 0 + switch (method) + { + case 1: + // This one only partially works. Appears to be an undocumented + // "standard" convention that not all widgets adhear to. For + // example, for some widgets backgrounds or non-client areas may + // not be painted. + ::SendMessage(GetHwndOf(window), WM_PAINT, (long)GetHdcOf(dc), 0); + break; + + case 2: +#endif + // This one works much better, nearly all widgets and their + // children are captured correctly[**]. Prior to the big + // background erase changes that Vadim did in 2004-2005 this + // method failed badly on XP with Themes activated, most native + // widgets draw only partially, if at all. Without themes it + // worked just like on Win2k. After those changes this method + // works very well. + // + // ** For example the radio buttons in a wxRadioBox are not its + // children by default, but you can capture it via the panel + // instead, or change RADIOBTN_PARENT_IS_RADIOBOX in radiobox.cpp. + ::SendMessage(GetHwndOf(window), WM_PRINT, (long)GetHdcOf(dc), + PRF_CLIENT | PRF_NONCLIENT | PRF_CHILDREN | + PRF_ERASEBKGND | PRF_OWNED ); + return true; +#if 0 + break; + + case 3: + // This one is only defined in the latest SDK and is only + // available on XP. MSDN says it is similar to sending WM_PRINT + // so I expect that it will work similar to the above. Since it + // is avaialble only on XP, it can't be compiled like this and + // will have to be loaded dynamically. + // //::PrintWindow(GetHwndOf(window), GetHdcOf(dc), 0); //break; + + // fall through + + case 4: + // Use PrintWindow if available, or fallback to WM_PRINT + // otherwise. Unfortunately using PrintWindow is even worse than + // WM_PRINT. For most native widgets nothing is drawn to the dc + // at all, with or without Themes. + typedef BOOL (WINAPI *PrintWindow_t)(HWND, HDC, UINT); + static bool s_triedToLoad = false; + static PrintWindow_t pfnPrintWindow = NULL; + if ( !s_triedToLoad ) + { + + s_triedToLoad = true; + wxDynamicLibrary dllUser32(_T("user32.dll")); + if ( dllUser32.IsLoaded() ) + { + wxLogNull nolog; // Don't report errors here + pfnPrintWindow = (PrintWindow_t)dllUser32.GetSymbol(_T("PrintWindow")); + } + } + if (pfnPrintWindow) + { + //printf("Using PrintWindow\n"); + pfnPrintWindow(GetHwndOf(window), GetHdcOf(dc), 0); + } + else + { + //printf("Using WM_PRINT\n"); + ::SendMessage(GetHwndOf(window), WM_PRINT, (long)GetHdcOf(dc), + PRF_CLIENT | PRF_NONCLIENT | PRF_CHILDREN | + PRF_ERASEBKGND | PRF_OWNED ); + } + } +#endif // 0 +#else + return false; +#endif // __WXMSW__ +} + + + #include @@ -2246,6 +2342,8 @@ static PyObject *wxMimeTypesManager_EnumAllFileTypes(wxMimeTypesManager *self){ static const wxString wxPyART_GO_TO_PARENT(wxART_GO_TO_PARENT); static const wxString wxPyART_GO_HOME(wxART_GO_HOME); static const wxString wxPyART_FILE_OPEN(wxART_FILE_OPEN); + static const wxString wxPyART_FILE_SAVE(wxART_FILE_SAVE); + static const wxString wxPyART_FILE_SAVE_AS(wxART_FILE_SAVE_AS); static const wxString wxPyART_PRINT(wxART_PRINT); static const wxString wxPyART_HELP(wxART_HELP); static const wxString wxPyART_TIP(wxART_TIP); @@ -2268,6 +2366,15 @@ static PyObject *wxMimeTypesManager_EnumAllFileTypes(wxMimeTypesManager *self){ static const wxString wxPyART_WARNING(wxART_WARNING); static const wxString wxPyART_INFORMATION(wxART_INFORMATION); static const wxString wxPyART_MISSING_IMAGE(wxART_MISSING_IMAGE); + static const wxString wxPyART_COPY(wxART_COPY); + static const wxString wxPyART_CUT(wxART_CUT); + static const wxString wxPyART_PASTE(wxART_PASTE); + static const wxString wxPyART_DELETE(wxART_DELETE); + static const wxString wxPyART_UNDO(wxART_UNDO); + static const wxString wxPyART_REDO(wxART_REDO); + static const wxString wxPyART_QUIT(wxART_QUIT); + static const wxString wxPyART_FIND(wxART_FIND); + static const wxString wxPyART_FIND_AND_REPLACE(wxART_FIND_AND_REPLACE); // Python aware wxArtProvider class wxPyArtProvider : public wxArtProvider { public: @@ -7705,6 +7812,44 @@ static PyObject * SingleInstanceChecker_swigregister(PyObject *, PyObject *args) Py_INCREF(obj); return Py_BuildValue((char *)""); } +static PyObject *_wrap_DrawWindowOnDC(PyObject *, PyObject *args, PyObject *kwargs) { + PyObject *resultobj; + wxWindow *arg1 = (wxWindow *) 0 ; + wxDC *arg2 = 0 ; + bool result; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + char *kwnames[] = { + (char *) "window",(char *) "dc", NULL + }; + + if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:DrawWindowOnDC",kwnames,&obj0,&obj1)) goto fail; + SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxWindow, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(1)) SWIG_fail; + { + SWIG_Python_ConvertPtr(obj1, (void **)&arg2, SWIGTYPE_p_wxDC, SWIG_POINTER_EXCEPTION | 0); + if (SWIG_arg_fail(2)) SWIG_fail; + if (arg2 == NULL) { + SWIG_null_ref("wxDC"); + } + if (SWIG_arg_fail(2)) SWIG_fail; + } + { + PyThreadState* __tstate = wxPyBeginAllowThreads(); + result = (bool)wxDrawWindowOnDC(arg1,(wxDC const &)*arg2); + + wxPyEndAllowThreads(__tstate); + if (PyErr_Occurred()) SWIG_fail; + } + { + resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj); + } + return resultobj; + fail: + return NULL; +} + + static PyObject *_wrap_delete_TipProvider(PyObject *, PyObject *args, PyObject *kwargs) { PyObject *resultobj; wxTipProvider *arg1 = (wxTipProvider *) 0 ; @@ -15646,6 +15791,46 @@ static PyObject *_wrap_ART_FILE_OPEN_get(void) { } +static int _wrap_ART_FILE_SAVE_set(PyObject *) { + PyErr_SetString(PyExc_TypeError,"Variable ART_FILE_SAVE is read-only."); + return 1; +} + + +static PyObject *_wrap_ART_FILE_SAVE_get(void) { + PyObject *pyobj; + + { +#if wxUSE_UNICODE + pyobj = PyUnicode_FromWideChar((&wxPyART_FILE_SAVE)->c_str(), (&wxPyART_FILE_SAVE)->Len()); +#else + pyobj = PyString_FromStringAndSize((&wxPyART_FILE_SAVE)->c_str(), (&wxPyART_FILE_SAVE)->Len()); +#endif + } + return pyobj; +} + + +static int _wrap_ART_FILE_SAVE_AS_set(PyObject *) { + PyErr_SetString(PyExc_TypeError,"Variable ART_FILE_SAVE_AS is read-only."); + return 1; +} + + +static PyObject *_wrap_ART_FILE_SAVE_AS_get(void) { + PyObject *pyobj; + + { +#if wxUSE_UNICODE + pyobj = PyUnicode_FromWideChar((&wxPyART_FILE_SAVE_AS)->c_str(), (&wxPyART_FILE_SAVE_AS)->Len()); +#else + pyobj = PyString_FromStringAndSize((&wxPyART_FILE_SAVE_AS)->c_str(), (&wxPyART_FILE_SAVE_AS)->Len()); +#endif + } + return pyobj; +} + + static int _wrap_ART_PRINT_set(PyObject *) { PyErr_SetString(PyExc_TypeError,"Variable ART_PRINT is read-only."); return 1; @@ -16086,6 +16271,186 @@ static PyObject *_wrap_ART_MISSING_IMAGE_get(void) { } +static int _wrap_ART_COPY_set(PyObject *) { + PyErr_SetString(PyExc_TypeError,"Variable ART_COPY is read-only."); + return 1; +} + + +static PyObject *_wrap_ART_COPY_get(void) { + PyObject *pyobj; + + { +#if wxUSE_UNICODE + pyobj = PyUnicode_FromWideChar((&wxPyART_COPY)->c_str(), (&wxPyART_COPY)->Len()); +#else + pyobj = PyString_FromStringAndSize((&wxPyART_COPY)->c_str(), (&wxPyART_COPY)->Len()); +#endif + } + return pyobj; +} + + +static int _wrap_ART_CUT_set(PyObject *) { + PyErr_SetString(PyExc_TypeError,"Variable ART_CUT is read-only."); + return 1; +} + + +static PyObject *_wrap_ART_CUT_get(void) { + PyObject *pyobj; + + { +#if wxUSE_UNICODE + pyobj = PyUnicode_FromWideChar((&wxPyART_CUT)->c_str(), (&wxPyART_CUT)->Len()); +#else + pyobj = PyString_FromStringAndSize((&wxPyART_CUT)->c_str(), (&wxPyART_CUT)->Len()); +#endif + } + return pyobj; +} + + +static int _wrap_ART_PASTE_set(PyObject *) { + PyErr_SetString(PyExc_TypeError,"Variable ART_PASTE is read-only."); + return 1; +} + + +static PyObject *_wrap_ART_PASTE_get(void) { + PyObject *pyobj; + + { +#if wxUSE_UNICODE + pyobj = PyUnicode_FromWideChar((&wxPyART_PASTE)->c_str(), (&wxPyART_PASTE)->Len()); +#else + pyobj = PyString_FromStringAndSize((&wxPyART_PASTE)->c_str(), (&wxPyART_PASTE)->Len()); +#endif + } + return pyobj; +} + + +static int _wrap_ART_DELETE_set(PyObject *) { + PyErr_SetString(PyExc_TypeError,"Variable ART_DELETE is read-only."); + return 1; +} + + +static PyObject *_wrap_ART_DELETE_get(void) { + PyObject *pyobj; + + { +#if wxUSE_UNICODE + pyobj = PyUnicode_FromWideChar((&wxPyART_DELETE)->c_str(), (&wxPyART_DELETE)->Len()); +#else + pyobj = PyString_FromStringAndSize((&wxPyART_DELETE)->c_str(), (&wxPyART_DELETE)->Len()); +#endif + } + return pyobj; +} + + +static int _wrap_ART_UNDO_set(PyObject *) { + PyErr_SetString(PyExc_TypeError,"Variable ART_UNDO is read-only."); + return 1; +} + + +static PyObject *_wrap_ART_UNDO_get(void) { + PyObject *pyobj; + + { +#if wxUSE_UNICODE + pyobj = PyUnicode_FromWideChar((&wxPyART_UNDO)->c_str(), (&wxPyART_UNDO)->Len()); +#else + pyobj = PyString_FromStringAndSize((&wxPyART_UNDO)->c_str(), (&wxPyART_UNDO)->Len()); +#endif + } + return pyobj; +} + + +static int _wrap_ART_REDO_set(PyObject *) { + PyErr_SetString(PyExc_TypeError,"Variable ART_REDO is read-only."); + return 1; +} + + +static PyObject *_wrap_ART_REDO_get(void) { + PyObject *pyobj; + + { +#if wxUSE_UNICODE + pyobj = PyUnicode_FromWideChar((&wxPyART_REDO)->c_str(), (&wxPyART_REDO)->Len()); +#else + pyobj = PyString_FromStringAndSize((&wxPyART_REDO)->c_str(), (&wxPyART_REDO)->Len()); +#endif + } + return pyobj; +} + + +static int _wrap_ART_QUIT_set(PyObject *) { + PyErr_SetString(PyExc_TypeError,"Variable ART_QUIT is read-only."); + return 1; +} + + +static PyObject *_wrap_ART_QUIT_get(void) { + PyObject *pyobj; + + { +#if wxUSE_UNICODE + pyobj = PyUnicode_FromWideChar((&wxPyART_QUIT)->c_str(), (&wxPyART_QUIT)->Len()); +#else + pyobj = PyString_FromStringAndSize((&wxPyART_QUIT)->c_str(), (&wxPyART_QUIT)->Len()); +#endif + } + return pyobj; +} + + +static int _wrap_ART_FIND_set(PyObject *) { + PyErr_SetString(PyExc_TypeError,"Variable ART_FIND is read-only."); + return 1; +} + + +static PyObject *_wrap_ART_FIND_get(void) { + PyObject *pyobj; + + { +#if wxUSE_UNICODE + pyobj = PyUnicode_FromWideChar((&wxPyART_FIND)->c_str(), (&wxPyART_FIND)->Len()); +#else + pyobj = PyString_FromStringAndSize((&wxPyART_FIND)->c_str(), (&wxPyART_FIND)->Len()); +#endif + } + return pyobj; +} + + +static int _wrap_ART_FIND_AND_REPLACE_set(PyObject *) { + PyErr_SetString(PyExc_TypeError,"Variable ART_FIND_AND_REPLACE is read-only."); + return 1; +} + + +static PyObject *_wrap_ART_FIND_AND_REPLACE_get(void) { + PyObject *pyobj; + + { +#if wxUSE_UNICODE + pyobj = PyUnicode_FromWideChar((&wxPyART_FIND_AND_REPLACE)->c_str(), (&wxPyART_FIND_AND_REPLACE)->Len()); +#else + pyobj = PyString_FromStringAndSize((&wxPyART_FIND_AND_REPLACE)->c_str(), (&wxPyART_FIND_AND_REPLACE)->Len()); +#endif + } + return pyobj; +} + + static PyObject *_wrap_new_ArtProvider(PyObject *, PyObject *args, PyObject *kwargs) { PyObject *resultobj; wxPyArtProvider *result; @@ -31122,6 +31487,7 @@ static PyMethodDef SwigMethods[] = { { (char *)"SingleInstanceChecker_Create", (PyCFunction) _wrap_SingleInstanceChecker_Create, METH_VARARGS | METH_KEYWORDS, NULL}, { (char *)"SingleInstanceChecker_IsAnotherRunning", (PyCFunction) _wrap_SingleInstanceChecker_IsAnotherRunning, METH_VARARGS | METH_KEYWORDS, NULL}, { (char *)"SingleInstanceChecker_swigregister", SingleInstanceChecker_swigregister, METH_VARARGS, NULL}, + { (char *)"DrawWindowOnDC", (PyCFunction) _wrap_DrawWindowOnDC, METH_VARARGS | METH_KEYWORDS, NULL}, { (char *)"delete_TipProvider", (PyCFunction) _wrap_delete_TipProvider, METH_VARARGS | METH_KEYWORDS, NULL}, { (char *)"TipProvider_GetTip", (PyCFunction) _wrap_TipProvider_GetTip, METH_VARARGS | METH_KEYWORDS, NULL}, { (char *)"TipProvider_GetCurrentTip", (PyCFunction) _wrap_TipProvider_GetCurrentTip, METH_VARARGS | METH_KEYWORDS, NULL}, @@ -32322,6 +32688,7 @@ static swig_type_info _swigt__p_int[] = {{"_p_int", 0, "int *", 0, 0, 0, 0},{"_p static swig_type_info _swigt__p_wxSize[] = {{"_p_wxSize", 0, "wxSize *", 0, 0, 0, 0},{"_p_wxSize", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}}; static swig_type_info _swigt__p_wxClipboard[] = {{"_p_wxClipboard", 0, "wxClipboard *", 0, 0, 0, 0},{"_p_wxClipboard", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}}; static swig_type_info _swigt__p_wxStopWatch[] = {{"_p_wxStopWatch", 0, "wxStopWatch *", 0, 0, 0, 0},{"_p_wxStopWatch", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}}; +static swig_type_info _swigt__p_wxDC[] = {{"_p_wxDC", 0, "wxDC *", 0, 0, 0, 0},{"_p_wxDC", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}}; static swig_type_info _swigt__p_wxClipboardLocker[] = {{"_p_wxClipboardLocker", 0, "wxClipboardLocker *", 0, 0, 0, 0},{"_p_wxClipboardLocker", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}}; static swig_type_info _swigt__p_wxIcon[] = {{"_p_wxIcon", 0, "wxIcon *", 0, 0, 0, 0},{"_p_wxIcon", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}}; static swig_type_info _swigt__p_wxLogStderr[] = {{"_p_wxLogStderr", 0, "wxLogStderr *", 0, 0, 0, 0},{"_p_wxLogStderr", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}}; @@ -32346,8 +32713,8 @@ static swig_type_info _swigt__p_wxWindowDisabler[] = {{"_p_wxWindowDisabler", 0, static swig_type_info _swigt__p_form_ops_t[] = {{"_p_form_ops_t", 0, "enum form_ops_t *|form_ops_t *", 0, 0, 0, 0},{"_p_form_ops_t", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}}; static swig_type_info _swigt__p_wxToolTip[] = {{"_p_wxToolTip", 0, "wxToolTip *", 0, 0, 0, 0},{"_p_wxToolTip", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}}; static swig_type_info _swigt__p_wxDataObjectComposite[] = {{"_p_wxDataObjectComposite", 0, "wxDataObjectComposite *", 0, 0, 0, 0},{"_p_wxDataObjectComposite", 0, 0, 0, 0, 0, 0},{"_p_wxURLDataObject", _p_wxURLDataObjectTo_p_wxDataObjectComposite, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}}; -static swig_type_info _swigt__p_wxFileConfig[] = {{"_p_wxFileConfig", 0, "wxFileConfig *", 0, 0, 0, 0},{"_p_wxFileConfig", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}}; static swig_type_info _swigt__p_wxSystemSettings[] = {{"_p_wxSystemSettings", 0, "wxSystemSettings *", 0, 0, 0, 0},{"_p_wxSystemSettings", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}}; +static swig_type_info _swigt__p_wxFileConfig[] = {{"_p_wxFileConfig", 0, "wxFileConfig *", 0, 0, 0, 0},{"_p_wxFileConfig", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}}; static swig_type_info _swigt__p_wxVideoMode[] = {{"_p_wxVideoMode", 0, "wxVideoMode *", 0, 0, 0, 0},{"_p_wxVideoMode", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}}; static swig_type_info _swigt__p_wxDataObjectSimple[] = {{"_p_wxDataObjectSimple", 0, "wxDataObjectSimple *", 0, 0, 0, 0},{"_p_wxDataObjectSimple", 0, 0, 0, 0, 0, 0},{"_p_wxPyDataObjectSimple", _p_wxPyDataObjectSimpleTo_p_wxDataObjectSimple, 0, 0, 0, 0, 0},{"_p_wxTextDataObject", _p_wxTextDataObjectTo_p_wxDataObjectSimple, 0, 0, 0, 0, 0},{"_p_wxPyTextDataObject", _p_wxPyTextDataObjectTo_p_wxDataObjectSimple, 0, 0, 0, 0, 0},{"_p_wxBitmapDataObject", _p_wxBitmapDataObjectTo_p_wxDataObjectSimple, 0, 0, 0, 0, 0},{"_p_wxPyBitmapDataObject", _p_wxPyBitmapDataObjectTo_p_wxDataObjectSimple, 0, 0, 0, 0, 0},{"_p_wxFileDataObject", _p_wxFileDataObjectTo_p_wxDataObjectSimple, 0, 0, 0, 0, 0},{"_p_wxCustomDataObject", _p_wxCustomDataObjectTo_p_wxDataObjectSimple, 0, 0, 0, 0, 0},{"_p_wxMetafileDataObject", _p_wxMetafileDataObjectTo_p_wxDataObjectSimple, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}}; static swig_type_info _swigt__p_wxPyDataObjectSimple[] = {{"_p_wxPyDataObjectSimple", 0, "wxPyDataObjectSimple *", 0, 0, 0, 0},{"_p_wxPyDataObjectSimple", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}}; @@ -32420,6 +32787,7 @@ _swigt__p_int, _swigt__p_wxSize, _swigt__p_wxClipboard, _swigt__p_wxStopWatch, +_swigt__p_wxDC, _swigt__p_wxClipboardLocker, _swigt__p_wxIcon, _swigt__p_wxLogStderr, @@ -32444,8 +32812,8 @@ _swigt__p_wxWindowDisabler, _swigt__p_form_ops_t, _swigt__p_wxToolTip, _swigt__p_wxDataObjectComposite, -_swigt__p_wxFileConfig, _swigt__p_wxSystemSettings, +_swigt__p_wxFileConfig, _swigt__p_wxVideoMode, _swigt__p_wxDataObjectSimple, _swigt__p_wxPyDataObjectSimple, @@ -33365,6 +33733,8 @@ SWIGEXPORT(void) SWIG_init(void) { SWIG_addvarlink(SWIG_globals,(char*)"ART_GO_TO_PARENT",_wrap_ART_GO_TO_PARENT_get, _wrap_ART_GO_TO_PARENT_set); SWIG_addvarlink(SWIG_globals,(char*)"ART_GO_HOME",_wrap_ART_GO_HOME_get, _wrap_ART_GO_HOME_set); SWIG_addvarlink(SWIG_globals,(char*)"ART_FILE_OPEN",_wrap_ART_FILE_OPEN_get, _wrap_ART_FILE_OPEN_set); + SWIG_addvarlink(SWIG_globals,(char*)"ART_FILE_SAVE",_wrap_ART_FILE_SAVE_get, _wrap_ART_FILE_SAVE_set); + SWIG_addvarlink(SWIG_globals,(char*)"ART_FILE_SAVE_AS",_wrap_ART_FILE_SAVE_AS_get, _wrap_ART_FILE_SAVE_AS_set); SWIG_addvarlink(SWIG_globals,(char*)"ART_PRINT",_wrap_ART_PRINT_get, _wrap_ART_PRINT_set); SWIG_addvarlink(SWIG_globals,(char*)"ART_HELP",_wrap_ART_HELP_get, _wrap_ART_HELP_set); SWIG_addvarlink(SWIG_globals,(char*)"ART_TIP",_wrap_ART_TIP_get, _wrap_ART_TIP_set); @@ -33387,6 +33757,15 @@ SWIGEXPORT(void) SWIG_init(void) { SWIG_addvarlink(SWIG_globals,(char*)"ART_WARNING",_wrap_ART_WARNING_get, _wrap_ART_WARNING_set); SWIG_addvarlink(SWIG_globals,(char*)"ART_INFORMATION",_wrap_ART_INFORMATION_get, _wrap_ART_INFORMATION_set); SWIG_addvarlink(SWIG_globals,(char*)"ART_MISSING_IMAGE",_wrap_ART_MISSING_IMAGE_get, _wrap_ART_MISSING_IMAGE_set); + SWIG_addvarlink(SWIG_globals,(char*)"ART_COPY",_wrap_ART_COPY_get, _wrap_ART_COPY_set); + SWIG_addvarlink(SWIG_globals,(char*)"ART_CUT",_wrap_ART_CUT_get, _wrap_ART_CUT_set); + SWIG_addvarlink(SWIG_globals,(char*)"ART_PASTE",_wrap_ART_PASTE_get, _wrap_ART_PASTE_set); + SWIG_addvarlink(SWIG_globals,(char*)"ART_DELETE",_wrap_ART_DELETE_get, _wrap_ART_DELETE_set); + SWIG_addvarlink(SWIG_globals,(char*)"ART_UNDO",_wrap_ART_UNDO_get, _wrap_ART_UNDO_set); + SWIG_addvarlink(SWIG_globals,(char*)"ART_REDO",_wrap_ART_REDO_get, _wrap_ART_REDO_set); + SWIG_addvarlink(SWIG_globals,(char*)"ART_QUIT",_wrap_ART_QUIT_get, _wrap_ART_QUIT_set); + SWIG_addvarlink(SWIG_globals,(char*)"ART_FIND",_wrap_ART_FIND_get, _wrap_ART_FIND_set); + SWIG_addvarlink(SWIG_globals,(char*)"ART_FIND_AND_REPLACE",_wrap_ART_FIND_AND_REPLACE_get, _wrap_ART_FIND_AND_REPLACE_set); wxPyPtrTypeMap_Add("wxArtProvider", "wxPyArtProvider"); diff --git a/wxPython/wxPython/_misc.py b/wxPython/wxPython/_misc.py index fabf1d3ce8..f1f305d82d 100644 --- a/wxPython/wxPython/_misc.py +++ b/wxPython/wxPython/_misc.py @@ -216,6 +216,7 @@ wxFileHistoryPtr = wx._misc.FileHistoryPtr wxSingleInstanceChecker = wx._misc.SingleInstanceChecker wxSingleInstanceCheckerPtr = wx._misc.SingleInstanceCheckerPtr wxPreSingleInstanceChecker = wx._misc.PreSingleInstanceChecker +wxDrawWindowOnDC = wx._misc.DrawWindowOnDC wxTipProvider = wx._misc.TipProvider wxTipProviderPtr = wx._misc.TipProviderPtr wxPyTipProvider = wx._misc.PyTipProvider -- 2.47.2