Python. This is so we can ensure we get a copy of the data objects
when needed instead of just a reference to a data object within
another that may get deleted unexpectedly.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@27681
c3d73ce0-8a6f-49c7-b76d-
6d57e0e08775
printerDialog = wx.PrintDialog(self, data)
printerDialog.GetPrintDialogData().SetSetupDialog(True)
printerDialog.ShowModal();
printerDialog = wx.PrintDialog(self, data)
printerDialog.GetPrintDialogData().SetSetupDialog(True)
printerDialog.ShowModal();
- self.printData = printerDialog.GetPrintDialogData().GetPrintData()
+
+ # this makes a copy of the wx.PrintData instead of just saving
+ # a reference to the one inside the printDialogData that will
+ # be destroyed
+ self.printData = wx.PrintData( printerDialog.GetPrintDialogData().GetPrintData() )
+
if not printer.Print(self.frame, printout, True):
wx.MessageBox("There was a problem printing.\nPerhaps your current printer is not set correctly?", "Printing", wx.OK)
else:
if not printer.Print(self.frame, printout, True):
wx.MessageBox("There was a problem printing.\nPerhaps your current printer is not set correctly?", "Printing", wx.OK)
else:
- self.printData = printer.GetPrintDialogData().GetPrintData()
+ self.printData = wx.PrintData( printer.GetPrintDialogData().GetPrintData() )
class wxPrintData : public wxObject {
public:
class wxPrintData : public wxObject {
public:
+ wxPrintData(const wxPrintData& data); // for making copies
+
~wxPrintData();
int GetNoCopies();
~wxPrintData();
int GetNoCopies();
class wxPageSetupDialogData : public wxObject {
public:
class wxPageSetupDialogData : public wxObject {
public:
+ %nokwargs wxPageSetupDialogData;
+ wxPageSetupDialogData(const wxPageSetupDialogData& data); // for making copies
~wxPageSetupDialogData();
void EnableHelp(bool flag);
~wxPageSetupDialogData();
void EnableHelp(bool flag);
public:
%nokwargs wxPrintDialogData;
wxPrintDialogData();
public:
%nokwargs wxPrintDialogData;
wxPrintDialogData();
- wxPrintDialogData(const wxPrintData& printData);
+ wxPrintDialogData(const wxPrintData& printData); // for making copies
~wxPrintDialogData();
int GetFromPage() const;
~wxPrintDialogData();
int GetFromPage() const;