Added wxPy versions of wxPrintPreview, wxPreviewFrame, and
wxPreviewControlBar so they can be derived from in Python and be able to override the C++ virtual methods. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_2_4_BRANCH@20968 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -59,6 +59,10 @@ wxTreeCtrl.)
|
|||||||
Added wxFutureCall, a subclass of wxTimer that makes it easy to delay
|
Added wxFutureCall, a subclass of wxTimer that makes it easy to delay
|
||||||
a call to any Python callable object.
|
a call to any Python callable object.
|
||||||
|
|
||||||
|
Added wxPy versions of wxPrintPreview, wxPreviewFrame, and
|
||||||
|
wxPreviewControlBar so they can be derived from in Python and be able
|
||||||
|
to override the C++ virtual methods.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@@ -526,6 +526,27 @@ extern wxPyApp *wxPythonApp;
|
|||||||
|
|
||||||
//---------------------------------------------------------------------------
|
//---------------------------------------------------------------------------
|
||||||
|
|
||||||
|
#define DEC_PYCALLBACK_VOID_(CBNAME) \
|
||||||
|
void CBNAME(); \
|
||||||
|
void base_##CBNAME();
|
||||||
|
|
||||||
|
|
||||||
|
#define IMP_PYCALLBACK_VOID_(CLASS, PCLASS, CBNAME) \
|
||||||
|
void CLASS::CBNAME() { \
|
||||||
|
bool found; \
|
||||||
|
wxPyBeginBlockThreads(); \
|
||||||
|
if ((found = wxPyCBH_findCallback(m_myInst, #CBNAME))) \
|
||||||
|
wxPyCBH_callCallback(m_myInst, Py_BuildValue("()")); \
|
||||||
|
wxPyEndBlockThreads(); \
|
||||||
|
if (! found) \
|
||||||
|
PCLASS::CBNAME(); \
|
||||||
|
} \
|
||||||
|
void CLASS::base_##CBNAME() { \
|
||||||
|
PCLASS::CBNAME(); \
|
||||||
|
}
|
||||||
|
|
||||||
|
//---------------------------------------------------------------------------
|
||||||
|
|
||||||
#define DEC_PYCALLBACK_VOID_INTINT(CBNAME) \
|
#define DEC_PYCALLBACK_VOID_INTINT(CBNAME) \
|
||||||
void CBNAME(int a, int b); \
|
void CBNAME(int a, int b); \
|
||||||
void base_##CBNAME(int a, int b);
|
void base_##CBNAME(int a, int b);
|
||||||
@@ -547,6 +568,27 @@ extern wxPyApp *wxPythonApp;
|
|||||||
|
|
||||||
//---------------------------------------------------------------------------
|
//---------------------------------------------------------------------------
|
||||||
|
|
||||||
|
#define DEC_PYCALLBACK_VOID_INT(CBNAME) \
|
||||||
|
void CBNAME(int a); \
|
||||||
|
void base_##CBNAME(int a);
|
||||||
|
|
||||||
|
|
||||||
|
#define IMP_PYCALLBACK_VOID_INT(CLASS, PCLASS, CBNAME) \
|
||||||
|
void CLASS::CBNAME(int a) { \
|
||||||
|
bool found; \
|
||||||
|
wxPyBeginBlockThreads(); \
|
||||||
|
if ((found = wxPyCBH_findCallback(m_myInst, #CBNAME))) \
|
||||||
|
wxPyCBH_callCallback(m_myInst, Py_BuildValue("(i)",a)); \
|
||||||
|
wxPyEndBlockThreads(); \
|
||||||
|
if (! found) \
|
||||||
|
PCLASS::CBNAME(a); \
|
||||||
|
} \
|
||||||
|
void CLASS::base_##CBNAME(int a) { \
|
||||||
|
PCLASS::CBNAME(a); \
|
||||||
|
}
|
||||||
|
|
||||||
|
//---------------------------------------------------------------------------
|
||||||
|
|
||||||
#define DEC_PYCALLBACK_VOID_INT4(CBNAME) \
|
#define DEC_PYCALLBACK_VOID_INT4(CBNAME) \
|
||||||
void CBNAME(int a, int b, int c, int d); \
|
void CBNAME(int a, int b, int c, int d); \
|
||||||
void base_##CBNAME(int a, int b, int c, int d);
|
void base_##CBNAME(int a, int b, int c, int d);
|
||||||
@@ -674,6 +716,28 @@ extern wxPyApp *wxPythonApp;
|
|||||||
|
|
||||||
//---------------------------------------------------------------------------
|
//---------------------------------------------------------------------------
|
||||||
|
|
||||||
|
#define DEC_PYCALLBACK_BOOL_BOOL(CBNAME) \
|
||||||
|
bool CBNAME(bool a); \
|
||||||
|
bool base_##CBNAME(bool a);
|
||||||
|
|
||||||
|
|
||||||
|
#define IMP_PYCALLBACK_BOOL_BOOL(CLASS, PCLASS, CBNAME) \
|
||||||
|
bool CLASS::CBNAME(bool a) { \
|
||||||
|
bool rval=FALSE, found; \
|
||||||
|
wxPyBeginBlockThreads(); \
|
||||||
|
if ((found = wxPyCBH_findCallback(m_myInst, #CBNAME))) \
|
||||||
|
rval = wxPyCBH_callCallback(m_myInst, Py_BuildValue("(i)",a));\
|
||||||
|
wxPyEndBlockThreads(); \
|
||||||
|
if (! found) \
|
||||||
|
rval = PCLASS::CBNAME(a); \
|
||||||
|
return rval; \
|
||||||
|
} \
|
||||||
|
bool CLASS::base_##CBNAME(bool a) { \
|
||||||
|
return PCLASS::CBNAME(a); \
|
||||||
|
}
|
||||||
|
|
||||||
|
//---------------------------------------------------------------------------
|
||||||
|
|
||||||
#define DEC_PYCALLBACK_BOOL_INT(CBNAME) \
|
#define DEC_PYCALLBACK_BOOL_INT(CBNAME) \
|
||||||
bool CBNAME(int a); \
|
bool CBNAME(int a); \
|
||||||
bool base_##CBNAME(int a);
|
bool base_##CBNAME(int a);
|
||||||
@@ -1408,6 +1472,34 @@ extern wxPyApp *wxPythonApp;
|
|||||||
|
|
||||||
//---------------------------------------------------------------------------
|
//---------------------------------------------------------------------------
|
||||||
|
|
||||||
|
#define DEC_PYCALLBACK_BOOL_WXWINDC(CBNAME) \
|
||||||
|
bool CBNAME(wxWindow* a, wxDC& b); \
|
||||||
|
bool base_##CBNAME(wxWindow* a, wxDC& b);
|
||||||
|
|
||||||
|
|
||||||
|
#define IMP_PYCALLBACK_BOOL_WXWINDC(CLASS, PCLASS, CBNAME) \
|
||||||
|
bool CLASS::CBNAME(wxWindow* a, wxDC& b) { \
|
||||||
|
bool rval=FALSE; \
|
||||||
|
bool found; \
|
||||||
|
wxPyBeginBlockThreads(); \
|
||||||
|
if ((found = wxPyCBH_findCallback(m_myInst, #CBNAME))) { \
|
||||||
|
PyObject* win = wxPyMake_wxObject(a); \
|
||||||
|
PyObject* dc = wxPyMake_wxObject(&b); \
|
||||||
|
rval = wxPyCBH_callCallback(m_myInst, Py_BuildValue("(OO)", win, dc));\
|
||||||
|
Py_DECREF(win); \
|
||||||
|
Py_DECREF(dc); \
|
||||||
|
} \
|
||||||
|
wxPyEndBlockThreads(); \
|
||||||
|
if (! found) \
|
||||||
|
rval = PCLASS::CBNAME(a, b); \
|
||||||
|
return rval; \
|
||||||
|
} \
|
||||||
|
bool CLASS::base_##CBNAME(wxWindow* a, wxDC& b) { \
|
||||||
|
return PCLASS::CBNAME(a, b); \
|
||||||
|
}
|
||||||
|
|
||||||
|
//---------------------------------------------------------------------------
|
||||||
|
|
||||||
#define DEC_PYCALLBACK_VOID_WXWINBASE(CBNAME) \
|
#define DEC_PYCALLBACK_VOID_WXWINBASE(CBNAME) \
|
||||||
void CBNAME(wxWindowBase* a); \
|
void CBNAME(wxWindowBase* a); \
|
||||||
void base_##CBNAME(wxWindowBase* a);
|
void base_##CBNAME(wxWindowBase* a);
|
||||||
|
@@ -27,8 +27,13 @@
|
|||||||
// Put some wx default wxChar* values into wxStrings.
|
// Put some wx default wxChar* values into wxStrings.
|
||||||
static const wxChar* wxPrintoutTitleStr = wxT("Printout");
|
static const wxChar* wxPrintoutTitleStr = wxT("Printout");
|
||||||
DECLARE_DEF_STRING(PrintoutTitleStr);
|
DECLARE_DEF_STRING(PrintoutTitleStr);
|
||||||
|
static const wxChar* wxPreviewCanvasNameStr = wxT("previewcanvas");
|
||||||
|
DECLARE_DEF_STRING(PreviewCanvasNameStr);
|
||||||
|
|
||||||
DECLARE_DEF_STRING(FrameNameStr);
|
DECLARE_DEF_STRING(FrameNameStr);
|
||||||
|
DECLARE_DEF_STRING(PanelNameStr);
|
||||||
|
DECLARE_DEF_STRING(DialogNameStr);
|
||||||
|
|
||||||
%}
|
%}
|
||||||
|
|
||||||
//----------------------------------------------------------------------
|
//----------------------------------------------------------------------
|
||||||
@@ -381,32 +386,65 @@ public:
|
|||||||
|
|
||||||
//----------------------------------------------------------------------
|
//----------------------------------------------------------------------
|
||||||
|
|
||||||
|
class wxPrintAbortDialog: public wxDialog
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
wxPrintAbortDialog(wxWindow *parent,
|
||||||
|
const wxString& title,
|
||||||
|
const wxPoint& pos = wxDefaultPosition,
|
||||||
|
const wxSize& size = wxDefaultSize,
|
||||||
|
long style = 0,
|
||||||
|
const wxString& name = wxPyDialogNameStr);
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
//----------------------------------------------------------------------
|
||||||
|
|
||||||
class wxPrintPreview : public wxObject {
|
class wxPrintPreview : public wxObject {
|
||||||
public:
|
public:
|
||||||
wxPrintPreview(wxPyPrintout* printout, wxPyPrintout* printoutForPrinting, wxPrintData* data=NULL);
|
wxPrintPreview(wxPyPrintout* printout,
|
||||||
// ~wxPrintPreview(); **** ????
|
wxPyPrintout* printoutForPrinting,
|
||||||
|
wxPrintData* data=NULL);
|
||||||
|
|
||||||
wxWindow* GetCanvas();
|
virtual bool SetCurrentPage(int pageNum);
|
||||||
int GetCurrentPage();
|
int GetCurrentPage();
|
||||||
wxFrame * GetFrame();
|
|
||||||
|
void SetPrintout(wxPyPrintout *printout);
|
||||||
|
wxPyPrintout *GetPrintout();
|
||||||
|
wxPyPrintout *GetPrintoutForPrinting();
|
||||||
|
|
||||||
|
void SetFrame(wxFrame *frame);
|
||||||
|
void SetCanvas(wxWindow *canvas);
|
||||||
|
|
||||||
|
virtual wxFrame *GetFrame();
|
||||||
|
virtual wxWindow *GetCanvas();
|
||||||
|
|
||||||
|
// The preview canvas should call this from OnPaint
|
||||||
|
virtual bool PaintPage(wxWindow *canvas, wxDC& dc);
|
||||||
|
|
||||||
|
// This draws a blank page onto the preview canvas
|
||||||
|
virtual bool DrawBlankPage(wxWindow *canvas, wxDC& dc);
|
||||||
|
|
||||||
|
// This is called by wxPrintPreview to render a page into a wxMemoryDC.
|
||||||
|
virtual bool RenderPage(int pageNum);
|
||||||
|
|
||||||
|
wxPrintDialogData& GetPrintDialogData();
|
||||||
|
|
||||||
|
virtual void SetZoom(int percent);
|
||||||
|
int GetZoom();
|
||||||
|
|
||||||
int GetMaxPage();
|
int GetMaxPage();
|
||||||
int GetMinPage();
|
int GetMinPage();
|
||||||
wxPrintDialogData& GetPrintDialogData();
|
|
||||||
wxPyPrintout * GetPrintout();
|
|
||||||
wxPyPrintout * GetPrintoutForPrinting();
|
|
||||||
int GetZoom();
|
|
||||||
bool Ok();
|
bool Ok();
|
||||||
bool Print(bool prompt);
|
void SetOk(bool ok);
|
||||||
void SetCanvas(wxWindow* window);
|
|
||||||
void SetCurrentPage(int pageNum);
|
virtual bool Print(bool interactive);
|
||||||
void SetFrame(wxFrame *frame);
|
virtual void DetermineScaling();
|
||||||
void SetPrintout(wxPyPrintout *printout);
|
|
||||||
void SetZoom(int percent);
|
|
||||||
|
|
||||||
%pragma(python) addtoclass = "def __nonzero__(self): return self.Ok()"
|
%pragma(python) addtoclass = "def __nonzero__(self): return self.Ok()"
|
||||||
};
|
};
|
||||||
|
|
||||||
//----------------------------------------------------------------------
|
|
||||||
|
|
||||||
class wxPreviewFrame : public wxFrame {
|
class wxPreviewFrame : public wxFrame {
|
||||||
public:
|
public:
|
||||||
@@ -419,13 +457,234 @@ public:
|
|||||||
%pragma(python) addtomethod = "__init__:self._setOORInfo(self)"
|
%pragma(python) addtomethod = "__init__:self._setOORInfo(self)"
|
||||||
|
|
||||||
void Initialize();
|
void Initialize();
|
||||||
|
void CreateControlBar();
|
||||||
// **** need to use derived class so these can be properly overridden:
|
void CreateCanvas();
|
||||||
//void CreateControlBar()
|
|
||||||
//void CreateCanvas()
|
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
class wxPreviewCanvas: public wxScrolledWindow
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
wxPreviewCanvas(wxPrintPreview *preview,
|
||||||
|
wxWindow *parent,
|
||||||
|
const wxPoint& pos = wxDefaultPosition,
|
||||||
|
const wxSize& size = wxDefaultSize,
|
||||||
|
long style = 0,
|
||||||
|
const wxString& name = wxPyPreviewCanvasNameStr);
|
||||||
|
%pragma(python) addtomethod = "__init__:self._setOORInfo(self)"
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
enum {
|
||||||
|
wxPREVIEW_PRINT,
|
||||||
|
wxPREVIEW_PREVIOUS,
|
||||||
|
wxPREVIEW_NEXT,
|
||||||
|
wxPREVIEW_ZOOM,
|
||||||
|
wxPREVIEW_FIRST,
|
||||||
|
wxPREVIEW_LAST,
|
||||||
|
wxPREVIEW_GOTO,
|
||||||
|
wxPREVIEW_DEFAULT,
|
||||||
|
|
||||||
|
wxID_PREVIEW_CLOSE,
|
||||||
|
wxID_PREVIEW_NEXT,
|
||||||
|
wxID_PREVIEW_PREVIOUS,
|
||||||
|
wxID_PREVIEW_PRINT,
|
||||||
|
wxID_PREVIEW_ZOOM,
|
||||||
|
wxID_PREVIEW_FIRST,
|
||||||
|
wxID_PREVIEW_LAST,
|
||||||
|
wxID_PREVIEW_GOTO
|
||||||
|
};
|
||||||
|
|
||||||
|
class wxPreviewControlBar: public wxPanel
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
wxPreviewControlBar(wxPrintPreview *preview,
|
||||||
|
long buttons,
|
||||||
|
wxWindow *parent,
|
||||||
|
const wxPoint& pos = wxDefaultPosition,
|
||||||
|
const wxSize& size = wxDefaultSize,
|
||||||
|
long style = 0,
|
||||||
|
const wxString& name = wxPyPanelNameStr);
|
||||||
|
%pragma(python) addtomethod = "__init__:self._setOORInfo(self)"
|
||||||
|
|
||||||
|
int GetZoomControl();
|
||||||
|
void SetZoomControl(int zoom);
|
||||||
|
wxPrintPreview* GetPrintPreview();
|
||||||
|
|
||||||
|
void OnNext();
|
||||||
|
void OnPrevious();
|
||||||
|
void OnFirst();
|
||||||
|
void OnLast();
|
||||||
|
void OnGoto();
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
//----------------------------------------------------------------------
|
||||||
|
// Python-derivable versions of the above preview classes
|
||||||
|
|
||||||
|
%{
|
||||||
|
class wxPyPrintPreview : public wxPrintPreview
|
||||||
|
{
|
||||||
|
DECLARE_CLASS(wxPyPrintPreview)
|
||||||
|
public:
|
||||||
|
wxPyPrintPreview(wxPyPrintout* printout,
|
||||||
|
wxPyPrintout* printoutForPrinting,
|
||||||
|
wxPrintData* data=NULL)
|
||||||
|
: wxPrintPreview(printout, printoutForPrinting, data)
|
||||||
|
{}
|
||||||
|
|
||||||
|
DEC_PYCALLBACK_BOOL_INT(SetCurrentPage);
|
||||||
|
DEC_PYCALLBACK_BOOL_WXWINDC(PaintPage);
|
||||||
|
DEC_PYCALLBACK_BOOL_WXWINDC(DrawBlankPage);
|
||||||
|
DEC_PYCALLBACK_BOOL_INT(RenderPage);
|
||||||
|
DEC_PYCALLBACK_VOID_INT(SetZoom);
|
||||||
|
DEC_PYCALLBACK_BOOL_BOOL(Print);
|
||||||
|
DEC_PYCALLBACK_VOID_(DetermineScaling);
|
||||||
|
|
||||||
|
PYPRIVATE;
|
||||||
|
};
|
||||||
|
|
||||||
|
IMPLEMENT_CLASS( wxPyPrintPreview, wxPrintPreview );
|
||||||
|
|
||||||
|
IMP_PYCALLBACK_BOOL_INT (wxPyPrintPreview, wxPrintPreview, SetCurrentPage);
|
||||||
|
IMP_PYCALLBACK_BOOL_WXWINDC(wxPyPrintPreview, wxPrintPreview, PaintPage);
|
||||||
|
IMP_PYCALLBACK_BOOL_WXWINDC(wxPyPrintPreview, wxPrintPreview, DrawBlankPage);
|
||||||
|
IMP_PYCALLBACK_BOOL_INT (wxPyPrintPreview, wxPrintPreview, RenderPage);
|
||||||
|
IMP_PYCALLBACK_VOID_INT (wxPyPrintPreview, wxPrintPreview, SetZoom);
|
||||||
|
IMP_PYCALLBACK_BOOL_BOOL (wxPyPrintPreview, wxPrintPreview, Print);
|
||||||
|
IMP_PYCALLBACK_VOID_ (wxPyPrintPreview, wxPrintPreview, DetermineScaling);
|
||||||
|
%}
|
||||||
|
|
||||||
|
|
||||||
|
class wxPyPrintPreview : public wxPrintPreview
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
wxPyPrintPreview(wxPyPrintout* printout,
|
||||||
|
wxPyPrintout* printoutForPrinting,
|
||||||
|
wxPrintData* data=NULL);
|
||||||
|
|
||||||
|
void _setCallbackInfo(PyObject* self, PyObject* _class);
|
||||||
|
%pragma(python) addtomethod = "__init__:self._setCallbackInfo(self, wxPyPrintPreview)"
|
||||||
|
|
||||||
|
bool base_SetCurrentPage(int pageNum);
|
||||||
|
bool base_PaintPage(wxWindow *canvas, wxDC& dc);
|
||||||
|
bool base_DrawBlankPage(wxWindow *canvas, wxDC& dc);
|
||||||
|
bool base_RenderPage(int pageNum);
|
||||||
|
void base_SetZoom(int percent);
|
||||||
|
bool base_Print(bool interactive);
|
||||||
|
void base_DetermineScaling();
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
%{
|
||||||
|
class wxPyPreviewFrame : public wxPreviewFrame
|
||||||
|
{
|
||||||
|
DECLARE_CLASS(wxPyPreviewFrame);
|
||||||
|
public:
|
||||||
|
wxPyPreviewFrame(wxPrintPreview* preview, wxFrame* parent,
|
||||||
|
const wxString& title,
|
||||||
|
const wxPoint& pos = wxDefaultPosition,
|
||||||
|
const wxSize& size = wxDefaultSize,
|
||||||
|
long style = wxDEFAULT_FRAME_STYLE,
|
||||||
|
const wxString& name = wxPyFrameNameStr)
|
||||||
|
: wxPreviewFrame(preview, parent, title, pos, size, style, name)
|
||||||
|
{}
|
||||||
|
|
||||||
|
void SetPreviewCanvas(wxWindow* canvas) { m_previewCanvas = canvas; }
|
||||||
|
void SetControlBar(wxPreviewControlBar* bar) { m_controlBar = bar; }
|
||||||
|
|
||||||
|
DEC_PYCALLBACK_VOID_(Initialize);
|
||||||
|
DEC_PYCALLBACK_VOID_(CreateCanvas);
|
||||||
|
DEC_PYCALLBACK_VOID_(CreateControlBar);
|
||||||
|
|
||||||
|
PYPRIVATE;
|
||||||
|
};
|
||||||
|
|
||||||
|
IMPLEMENT_CLASS(wxPyPreviewFrame, wxPreviewFrame);
|
||||||
|
|
||||||
|
IMP_PYCALLBACK_VOID_(wxPyPreviewFrame, wxPreviewFrame, Initialize);
|
||||||
|
IMP_PYCALLBACK_VOID_(wxPyPreviewFrame, wxPreviewFrame, CreateCanvas);
|
||||||
|
IMP_PYCALLBACK_VOID_(wxPyPreviewFrame, wxPreviewFrame, CreateControlBar);
|
||||||
|
%}
|
||||||
|
|
||||||
|
class wxPyPreviewFrame : public wxPreviewFrame
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
wxPyPreviewFrame(wxPrintPreview* preview, wxFrame* parent,
|
||||||
|
const wxString& title,
|
||||||
|
const wxPoint& pos = wxDefaultPosition,
|
||||||
|
const wxSize& size = wxDefaultSize,
|
||||||
|
long style = wxDEFAULT_FRAME_STYLE,
|
||||||
|
const wxString& name = wxPyFrameNameStr);
|
||||||
|
|
||||||
|
void _setCallbackInfo(PyObject* self, PyObject* _class);
|
||||||
|
%pragma(python) addtomethod = "__init__:self._setCallbackInfo(self, wxPyPreviewFrame)"
|
||||||
|
%pragma(python) addtomethod = "__init__:self._setOORInfo(self)"
|
||||||
|
|
||||||
|
void SetPreviewCanvas(wxWindow* canvas);
|
||||||
|
void SetControlBar(wxPreviewControlBar* bar);
|
||||||
|
|
||||||
|
void base_Initialize();
|
||||||
|
void base_CreateCanvas();
|
||||||
|
void base_CreateControlBar();
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
%{
|
||||||
|
class wxPyPreviewControlBar : public wxPreviewControlBar
|
||||||
|
{
|
||||||
|
DECLARE_CLASS(wxPyPreviewControlBar);
|
||||||
|
public:
|
||||||
|
wxPyPreviewControlBar(wxPrintPreview *preview,
|
||||||
|
long buttons,
|
||||||
|
wxWindow *parent,
|
||||||
|
const wxPoint& pos = wxDefaultPosition,
|
||||||
|
const wxSize& size = wxDefaultSize,
|
||||||
|
long style = 0,
|
||||||
|
const wxString& name = wxPyPanelNameStr)
|
||||||
|
: wxPreviewControlBar(preview, buttons, parent, pos, size, style, name)
|
||||||
|
{}
|
||||||
|
|
||||||
|
void SetPrintPreview(wxPrintPreview* preview) { m_printPreview = preview; }
|
||||||
|
|
||||||
|
DEC_PYCALLBACK_VOID_(CreateButtons);
|
||||||
|
DEC_PYCALLBACK_VOID_INT(SetZoomControl);
|
||||||
|
|
||||||
|
PYPRIVATE;
|
||||||
|
};
|
||||||
|
|
||||||
|
IMPLEMENT_CLASS(wxPyPreviewControlBar, wxPreviewControlBar);
|
||||||
|
IMP_PYCALLBACK_VOID_(wxPyPreviewControlBar, wxPreviewControlBar, CreateButtons);
|
||||||
|
IMP_PYCALLBACK_VOID_INT(wxPyPreviewControlBar, wxPreviewControlBar, SetZoomControl);
|
||||||
|
%}
|
||||||
|
|
||||||
|
class wxPyPreviewControlBar : public wxPreviewControlBar
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
wxPyPreviewControlBar(wxPrintPreview *preview,
|
||||||
|
long buttons,
|
||||||
|
wxWindow *parent,
|
||||||
|
const wxPoint& pos = wxDefaultPosition,
|
||||||
|
const wxSize& size = wxDefaultSize,
|
||||||
|
long style = 0,
|
||||||
|
const wxString& name = wxPyPanelNameStr);
|
||||||
|
|
||||||
|
void _setCallbackInfo(PyObject* self, PyObject* _class);
|
||||||
|
%pragma(python) addtomethod = "__init__:self._setCallbackInfo(self, wxPyPreviewControlBar)"
|
||||||
|
%pragma(python) addtomethod = "__init__:self._setOORInfo(self)"
|
||||||
|
|
||||||
|
void SetPrintPreview(wxPrintPreview* preview);
|
||||||
|
|
||||||
|
void base_CreateButtons();
|
||||||
|
void base_SetZoomControl(int zoom);
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
//----------------------------------------------------------------------
|
//----------------------------------------------------------------------
|
||||||
|
|
||||||
%init %{
|
%init %{
|
||||||
|
Reference in New Issue
Block a user