From 178ff353e88c41f6f3d26f3f6e4d9772a5dc7713 Mon Sep 17 00:00:00 2001 From: Guido van Rossum Date: Fri, 27 Dec 1996 15:40:31 +0000 Subject: Fix bogus implementation of Group.bind(). Added unbind() to CanvasItem and Group classes. --- Lib/lib-tk/Canvas.py | 8 ++++++-- Lib/tkinter/Canvas.py | 8 ++++++-- 2 files changed, 12 insertions(+), 4 deletions(-) diff --git a/Lib/lib-tk/Canvas.py b/Lib/lib-tk/Canvas.py index 6eccd4d..ad0cc56 100644 --- a/Lib/lib-tk/Canvas.py +++ b/Lib/lib-tk/Canvas.py @@ -43,6 +43,8 @@ class CanvasItem: return (x1, y1), (x2, y2) def bind(self, sequence=None, command=None): return self.canvas.tag_bind(self.id, sequence, command) + def unbind(self, sequence): + self.canvas.tag_bind(self.id, sequence, '') def config(self, cnf={}, **kw): return self.canvas.itemconfig(self.id, _cnfmerge((cnf, kw))) def coords(self, pts = ()): @@ -140,8 +142,10 @@ class Group: self._do('addtag', 'withtag', tagOrId) def bbox(self): return self._getints(self._do('bbox')) - def bind(self, sequence=None, command=None): # XXX args? - return self._do('bind', sequence, command) + def bind(self, sequence=None, command=None): + return self.canvas.tag_bind(self.id, sequence, command) + def unbind(self, sequence): + self.canvas.tag_bind(self.id, sequence, '') def coords(self, *pts): return self._do('coords', pts) def dchars(self, first, last=None): diff --git a/Lib/tkinter/Canvas.py b/Lib/tkinter/Canvas.py index 6eccd4d..ad0cc56 100755 --- a/Lib/tkinter/Canvas.py +++ b/Lib/tkinter/Canvas.py @@ -43,6 +43,8 @@ class CanvasItem: return (x1, y1), (x2, y2) def bind(self, sequence=None, command=None): return self.canvas.tag_bind(self.id, sequence, command) + def unbind(self, sequence): + self.canvas.tag_bind(self.id, sequence, '') def config(self, cnf={}, **kw): return self.canvas.itemconfig(self.id, _cnfmerge((cnf, kw))) def coords(self, pts = ()): @@ -140,8 +142,10 @@ class Group: self._do('addtag', 'withtag', tagOrId) def bbox(self): return self._getints(self._do('bbox')) - def bind(self, sequence=None, command=None): # XXX args? - return self._do('bind', sequence, command) + def bind(self, sequence=None, command=None): + return self.canvas.tag_bind(self.id, sequence, command) + def unbind(self, sequence): + self.canvas.tag_bind(self.id, sequence, '') def coords(self, *pts): return self._do('coords', pts) def dchars(self, first, last=None): -- cgit v0.12