-# 11/5/2003 - Modified by grimmtooth@softhome.net (Jeff Grimmett)
-#
-# o Updated for wx namespace
-#
-# 11/24/2003 - Modified by grimmtooth@softhome.net (Jeff Grimmett)
-#
-# o Issues around line 167. I'm stuck.
-#
import cPickle
import wx
dc.SetPen(wx.Pen(wx.BLUE, 3))
for line in self.lines:
for coords in line:
- dc.DrawLineXY(*coords)
+ dc.DrawLine(*coords)
dc.EndDrawing()
def OnLeftUp(self, event):
- self.lines.append(self.curLine)
- self.curLine = []
- self.ReleaseMouse()
+ if self.HasCapture():
+ self.lines.append(self.curLine)
+ self.curLine = []
+ self.ReleaseMouse()
def OnRightUp(self, event):
self.lines = []
self.Refresh()
def OnMotion(self, event):
- if event.Dragging() and not self.mode == "Drag":
+ if self.HasCapture() and event.Dragging() and not self.mode == "Drag":
dc = wx.ClientDC(self)
dc.BeginDrawing()
dc.SetPen(wx.Pen(wx.BLUE, 3))
- coords = ((self.x, self.y), event.GetPosition())
+ coords = (self.x, self.y) + event.GetPositionTuple()
self.curLine.append(coords)
- dc.DrawLineXY(*coords)
+ dc.DrawLine(*coords)
self.x, self.y = event.GetPositionTuple()
dc.EndDrawing()
# create our own data format and use it in a
# custom data object
- ldata = wx.CustomDataObject(wx.CustomDataFormat("DoodleLines"))
+ ldata = wx.CustomDataObject("DoodleLines")
ldata.SetData(linesdata)
# Also create a Bitmap version of the drawing
self.dv = window
# specify the type of data we will accept
- self.df = wx.CustomDataFormat("DoodleLines")
- self.data = wx.CustomDataObject(self.df)
+ self.data = wx.CustomDataObject("DoodleLines")
self.SetDataObject(self.data)
if self.GetData():
# convert it back to a list of lines and give it to the viewer
linesdata = self.data.GetData()
- lines = wx.InputStream(cPickle.loads(linesdata))
+ lines = cPickle.loads(linesdata)
self.dv.SetLines(lines)
# what is returned signals the source what to do
for line in self.lines:
for coords in line:
- dc.DrawLineXY(*coords)
+ dc.DrawLine(*coords)
dc.EndDrawing()
#----------------------------------------------------------------------
"Draw a little picture in this window\n"
"then switch the mode below and drag the\n"
"picture to the lower window or to another\n"
- "application that accepts BMP's as a drop\n"
- "target.\n"
+ "application that accepts Bitmaps as a\n"
+ "drop target.\n"
)
rb1 = wx.RadioButton(self, -1, "Draw", style=wx.RB_GROUP)