X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/b31cbeb974904ba251cde0926a43917e575897e9..db679b8c836e69c111cdc31e62cf92cebe4f938f:/wxPython/wx/lib/plot.py?ds=sidebyside diff --git a/wxPython/wx/lib/plot.py b/wxPython/wx/lib/plot.py index ea44480451..a5fbb89e98 100644 --- a/wxPython/wx/lib/plot.py +++ b/wxPython/wx/lib/plot.py @@ -556,7 +556,7 @@ class PlotCanvas(wx.Window): self.pageSetupData.SetMarginBottomRight(data.GetMarginBottomRight()) self.pageSetupData.SetMarginTopLeft(data.GetMarginTopLeft()) self.pageSetupData.SetPrintData(data.GetPrintData()) - self.print_data=data.GetPrintData() # updates print_data + self.print_data=wx.PrintData(data.GetPrintData()) # updates print_data finally: dlg.Destroy() @@ -570,7 +570,7 @@ class PlotCanvas(wx.Window): out = PlotPrintout(self) print_ok = printer.Print(self.parent, out) if print_ok: - self.print_data = printer.GetPrintDialogData().GetPrintData() + self.print_data = wx.PrintData(printer.GetPrintDialogData().GetPrintData()) out.Destroy() def PrintPreview(self): @@ -630,8 +630,8 @@ class PlotCanvas(wx.Window): def SetEnableGrid(self, value): """Set True to enable grid.""" - if value not in [True,False]: - raise TypeError, "Value should be True or False" + if value not in [True,False,'Horizontal','Vertical']: + raise TypeError, "Value should be True, False, Horizontal or Vertical" self._gridEnabled= value self.Redraw() @@ -689,10 +689,11 @@ class PlotCanvas(wx.Window): def ScrollUp(self, units): """Move view up number of axis units.""" self.last_PointLabel = None #reset pointLabel - if self.last_draw is not None: - graphics, xAxis, yAxis= self.last_draw - yAxis= (yAxis[0]+units, yAxis[1]+units) - self.Draw(graphics,xAxis,yAxis) + if self.last_draw is not None: + graphics, xAxis, yAxis= self.last_draw + yAxis= (yAxis[0]+units, yAxis[1]+units) + self.Draw(graphics,xAxis,yAxis) + def GetXY(self,event): """Takes a mouse event and returns the XY user axis values.""" @@ -1026,7 +1027,9 @@ class PlotCanvas(wx.Window): # The Buffer init is done here, to make sure the buffer is always # the same size as the Window Size = self.GetClientSize() - + if Size.width <= 0 or Size.height <= 0: + return + # Make new offscreen bitmap: this bitmap will always have the # current drawing in it, so it can be used to save the image to # a file, or whatever. @@ -1229,8 +1232,15 @@ class PlotCanvas(wx.Window): # set length of tick marks--long ones make grid if self._gridEnabled: x,y,width,height= self._point2ClientCoord(p1,p2) - yTickLength= width/2.0 +1 - xTickLength= height/2.0 +1 + if self._gridEnabled == 'Horizontal': + yTickLength= width/2.0 +1 + xTickLength= 3 * self.printerScale + elif self._gridEnabled == 'Vertical': + yTickLength= 3 * self.printerScale + xTickLength= height/2.0 +1 + else: + yTickLength= width/2.0 +1 + xTickLength= height/2.0 +1 else: yTickLength= 3 * self.printerScale # lengthens lines for printing xTickLength= 3 * self.printerScale