]> git.saurik.com Git - wxWidgets.git/blobdiff - wxPython/demo/PrintFramework.py
Patch from FN that fixes bug in RefreshItem on an item that has no
[wxWidgets.git] / wxPython / demo / PrintFramework.py
index 6aa0b5700f809c926ca76572b0c8d347fa3d7fae..74124550867a76d31a84e26265c45bec5fea8037 100644 (file)
@@ -4,9 +4,6 @@ import  ScrolledWindow
 
 #----------------------------------------------------------------------
 
-ID_Setup    =   wx.NewId()
-ID_Preview  =   wx.NewId()
-ID_Print    =   wx.NewId()
 
 class MyPrintout(wx.Printout):
     def __init__(self, canvas, log):
@@ -107,15 +104,15 @@ class TestPrintPanel(wx.Panel):
         self.box.Add(self.canvas, 1, wx.GROW)
 
         subbox = wx.BoxSizer(wx.HORIZONTAL)
-        btn = wx.Button(self, ID_Setup, "Print Setup")
-        self.Bind(wx.EVT_BUTTON, self.OnPrintSetup, btn)
+        btn = wx.Button(self, -1, "Page Setup")
+        self.Bind(wx.EVT_BUTTON, self.OnPageSetup, btn)
         subbox.Add(btn, 1, wx.GROW | wx.ALL, 2)
 
-        btn = wx.Button(self, ID_Preview, "Print Preview")
+        btn = wx.Button(self, -1, "Print Preview")
         self.Bind(wx.EVT_BUTTON, self.OnPrintPreview, btn)
         subbox.Add(btn, 1, wx.GROW | wx.ALL, 2)
 
-        btn = wx.Button(self, ID_Print, "Print")
+        btn = wx.Button(self, -1, "Print")
         self.Bind(wx.EVT_BUTTON, self.OnDoPrint, btn)
         subbox.Add(btn, 1, wx.GROW | wx.ALL, 2)
 
@@ -125,22 +122,21 @@ class TestPrintPanel(wx.Panel):
         self.SetSizer(self.box)
 
 
-    def OnPrintSetup(self, event):
-        data = wx.PrintDialogData(self.printData)
-        printerDialog = wx.PrintDialog(self, data)
-        #printerDialog.GetPrintDialogData().SetSetupDialog(True)
-        printerDialog.ShowModal();
+
+    def OnPageSetup(self, evt):
+        psdd = wx.PageSetupDialogData(self.printData)
+        psdd.CalculatePaperSizeFromId()
+        dlg = wx.PageSetupDialog(self, psdd)
+        dlg.ShowModal()
 
         # this makes a copy of the wx.PrintData instead of just saving
         # a reference to the one inside the PrintDialogData that will
         # be destroyed when the dialog is destroyed
-        self.printData = wx.PrintData( printerDialog.GetPrintDialogData().GetPrintData() )
-        
-        printerDialog.Destroy()
+        self.printData = wx.PrintData( dlg.GetPageSetupData().GetPrintData() )
 
+        dlg.Destroy()
 
     def OnPrintPreview(self, event):
-        self.log.WriteText("OnPrintPreview\n")
         data = wx.PrintDialogData(self.printData)
         printout = MyPrintout(self.canvas, self.log)
         printout2 = MyPrintout(self.canvas, self.log)
@@ -150,12 +146,12 @@ class TestPrintPanel(wx.Panel):
             self.log.WriteText("Houston, we have a problem...\n")
             return
 
-        frame = wx.PreviewFrame(self.preview, self.frame, "This is a print preview")
+        pfrm = wx.PreviewFrame(self.preview, self.frame, "This is a print preview")
 
-        frame.Initialize()
-        frame.SetPosition(self.frame.GetPosition())
-        frame.SetSize(self.frame.GetSize())
-        frame.Show(True)
+        pfrm.Initialize()
+        pfrm.SetPosition(self.frame.GetPosition())
+        pfrm.SetSize(self.frame.GetSize())
+        pfrm.Show(True)