#include <wx/print.h>
#include <wx/printdlg.h>
+#include "printfw.h"
+
static PyObject* l_output_helper(PyObject* target, PyObject* o) {
PyObject* o2;
PyObject* o3;
static char* wxStringErrorMsg = "string type is required for parameter";
-class wxPyPrintout : public wxPrintout {
-public:
- wxPyPrintout(const wxString& title) : wxPrintout(title) {}
-
- DEC_PYCALLBACK_BOOL_INTINT(OnBeginDocument);
- DEC_PYCALLBACK__(OnEndDocument);
- DEC_PYCALLBACK__(OnBeginPrinting);
- DEC_PYCALLBACK__(OnEndPrinting);
- DEC_PYCALLBACK__(OnPreparePrinting);
- DEC_PYCALLBACK_BOOL_INT_pure(OnPrintPage);
- DEC_PYCALLBACK_BOOL_INT(HasPage);
-
-
- // Since this one would be tough and ugly to do with the Macros...
- void GetPageInfo(int *minPage, int *maxPage, int *pageFrom, int *pageTo) {
- bool hadErr = false;
-
- bool doSave = wxPyRestoreThread();
- if (m_myInst.findCallback("GetPageInfo")) {
- PyObject* result = m_myInst.callCallbackObj(Py_BuildValue("()"));
- if (result && PyTuple_Check(result) && PyTuple_Size(result) == 4) {
- PyObject* val;
-
- val = PyTuple_GetItem(result, 0);
- if (PyInt_Check(val)) *minPage = PyInt_AsLong(val);
- else hadErr = true;
-
- val = PyTuple_GetItem(result, 1);
- if (PyInt_Check(val)) *maxPage = PyInt_AsLong(val);
- else hadErr = true;
-
- val = PyTuple_GetItem(result, 2);
- if (PyInt_Check(val)) *pageFrom = PyInt_AsLong(val);
- else hadErr = true;
-
- val = PyTuple_GetItem(result, 3);
- if (PyInt_Check(val)) *pageTo = PyInt_AsLong(val);
- else hadErr = true;
- }
- else
- hadErr = true;
-
- if (hadErr) {
- PyErr_SetString(PyExc_TypeError, "GetPageInfo should return a tuple of 4 integers.");
- PyErr_Print();
- }
- Py_DECREF(result);
+
+
+// Since this one would be tough and ugly to do with the Macros...
+void wxPyPrintout::GetPageInfo(int *minPage, int *maxPage, int *pageFrom, int *pageTo) {
+ bool hadErr = false;
+
+ bool doSave = wxPyRestoreThread();
+ if (m_myInst.findCallback("GetPageInfo")) {
+ PyObject* result = m_myInst.callCallbackObj(Py_BuildValue("()"));
+ if (result && PyTuple_Check(result) && PyTuple_Size(result) == 4) {
+ PyObject* val;
+
+ val = PyTuple_GetItem(result, 0);
+ if (PyInt_Check(val)) *minPage = PyInt_AsLong(val);
+ else hadErr = true;
+
+ val = PyTuple_GetItem(result, 1);
+ if (PyInt_Check(val)) *maxPage = PyInt_AsLong(val);
+ else hadErr = true;
+
+ val = PyTuple_GetItem(result, 2);
+ if (PyInt_Check(val)) *pageFrom = PyInt_AsLong(val);
+ else hadErr = true;
+
+ val = PyTuple_GetItem(result, 3);
+ if (PyInt_Check(val)) *pageTo = PyInt_AsLong(val);
+ else hadErr = true;
}
else
- wxPrintout::GetPageInfo(minPage, maxPage, pageFrom, pageTo);
+ hadErr = true;
- wxPySaveThread(doSave);
+ if (hadErr) {
+ PyErr_SetString(PyExc_TypeError, "GetPageInfo should return a tuple of 4 integers.");
+ PyErr_Print();
+ }
+ Py_DECREF(result);
}
-
- void base_GetPageInfo(int *minPage, int *maxPage, int *pageFrom, int *pageTo) {
+ else
wxPrintout::GetPageInfo(minPage, maxPage, pageFrom, pageTo);
- }
- PYPRIVATE;
-};
+ wxPySaveThread(doSave);
+}
+
+void wxPyPrintout::base_GetPageInfo(int *minPage, int *maxPage, int *pageFrom, int *pageTo) {
+ wxPrintout::GetPageInfo(minPage, maxPage, pageFrom, pageTo);
+}
+
IMP_PYCALLBACK_BOOL_INTINT(wxPyPrintout, wxPrintout, OnBeginDocument);
IMP_PYCALLBACK__(wxPyPrintout, wxPrintout, OnEndDocument);
{ "_size_t","_wxWindowID",0},
{ "_size_t","_uint",0},
{ "_class_wxRealPoint","_wxRealPoint",0},
+ { "_wxNavigationKeyEvent","_class_wxNavigationKeyEvent",0},
{ "_wxPrinterDC","_class_wxPrinterDC",0},
+ { "_wxWindowCreateEvent","_class_wxWindowCreateEvent",0},
{ "_class_wxMenuItem","_wxMenuItem",0},
{ "_class_wxPaintEvent","_wxPaintEvent",0},
{ "_wxSysColourChangedEvent","_class_wxSysColourChangedEvent",0},
{ "_EBool","_wxWindowID",0},
{ "_class_wxRegion","_wxRegion",0},
{ "_class_wxDropFilesEvent","_wxDropFilesEvent",0},
+ { "_wxWindowDestroyEvent","_class_wxWindowDestroyEvent",0},
{ "_class_wxPreviewFrame","_wxPreviewFrame",0},
{ "_wxStaticText","_class_wxStaticText",0},
{ "_wxFont","_class_wxFont",0},
{ "_class_wxDC","_wxDC",0},
{ "_wxScrollWinEvent","_class_wxScrollWinEvent",0},
{ "_class_wxProgressDialog","_wxProgressDialog",0},
+ { "_wxQueryNewPaletteEvent","_class_wxQueryNewPaletteEvent",0},
+ { "_class_wxWindowCreateEvent","_wxWindowCreateEvent",0},
{ "_class_wxDirDialog","_wxDirDialog",0},
{ "_class_wxPyTimer","_wxPyTimer",0},
{ "_wxFocusEvent","_class_wxFocusEvent",0},
{ "_class_wxFont","_wxFont",0},
{ "_class_wxPyValidator","_wxPyValidator",0},
{ "_class_wxCloseEvent","_wxCloseEvent",0},
+ { "_wxBusyInfo","_class_wxBusyInfo",0},
{ "_class_wxMenuEvent","_wxMenuEvent",0},
+ { "_wxPaletteChangedEvent","_class_wxPaletteChangedEvent",0},
{ "_wxClientDC","_class_wxClientDC",0},
{ "_wxMouseEvent","_class_wxMouseEvent",0},
{ "_wxSingleChoiceDialog","_class_wxSingleChoiceDialog",0},
{ "_wxFrame","_class_wxPreviewFrame",SwigwxPreviewFrameTowxFrame},
{ "_wxFrame","_wxPreviewFrame",SwigwxPreviewFrameTowxFrame},
{ "_wxFrame","_class_wxFrame",0},
+ { "_class_wxPaletteChangedEvent","_wxPaletteChangedEvent",0},
{ "_wxWindowID","_wxPrintQuality",0},
{ "_wxWindowID","_size_t",0},
{ "_wxWindowID","_EBool",0},
{ "_wxPyCommandEvent","_class_wxPyCommandEvent",0},
{ "_class_wxPrintPreview","_wxPrintPreview",0},
{ "_class_wxSpinEvent","_wxSpinEvent",0},
+ { "_class_wxQueryNewPaletteEvent","_wxQueryNewPaletteEvent",0},
+ { "_class_wxNavigationKeyEvent","_wxNavigationKeyEvent",0},
{ "_wxButton","_class_wxButton",0},
{ "_wxSize","_class_wxSize",0},
{ "_wxRegionIterator","_class_wxRegionIterator",0},
{ "_wxActivateEvent","_class_wxActivateEvent",0},
{ "_wxGauge","_class_wxGauge",0},
{ "_class_wxCheckListBox","_wxCheckListBox",0},
+ { "_class_wxBusyInfo","_wxBusyInfo",0},
{ "_class_wxCommandEvent","_wxCommandEvent",0},
{ "_class_wxClientDC","_wxClientDC",0},
{ "_class_wxSizeEvent","_wxSizeEvent",0},
{ "_wxWindow","_class_wxPageSetupDialog",SwigwxPageSetupDialogTowxWindow},
{ "_wxWindow","_wxPageSetupDialog",SwigwxPageSetupDialogTowxWindow},
{ "_wxWindow","_class_wxWindow",0},
+ { "_class_wxWindowDestroyEvent","_wxWindowDestroyEvent",0},
{ "_class_wxFrame","_class_wxPreviewFrame",SwigwxPreviewFrameTowxFrame},
{ "_class_wxFrame","_wxPreviewFrame",SwigwxPreviewFrameTowxFrame},
{ "_class_wxFrame","_wxFrame",0},