]> granicus.if.org Git - python/commitdiff
made it work again with changed Tkinter
authorGuido van Rossum <guido@python.org>
Tue, 28 May 1996 23:15:20 +0000 (23:15 +0000)
committerGuido van Rossum <guido@python.org>
Tue, 28 May 1996 23:15:20 +0000 (23:15 +0000)
Lib/lib-tk/Canvas.py
Lib/tkinter/Canvas.py

index 4d278ca13d7fef08638145e4b2b94f3a4e367c13..1e4a5c86940d50174fcecf2a8b775423cc81ecea 100644 (file)
@@ -1,10 +1,19 @@
 # This module exports classes for the various canvas item types
 
-from Tkinter import Canvas, _flatten
+from Tkinter import Canvas
 
 StringType = type('')
 DictionaryType = type({})
 
+def _flatten(tuple):
+       res = ()
+       for item in tuple:
+               if type(item) in (TupleType, ListType):
+                       res = res + _flatten(item)
+               elif item is not None:
+                       res = res + (item,)
+       return res
+
 class CanvasItem:
        def __init__(self, canvas, itemType, *args, **kw):
                self.canvas = canvas
@@ -25,7 +34,7 @@ class CanvasItem:
                        self.id, '-' + key))
                return v[4]
        def __setitem__(self, key, value):
-               self.canvas._itemconfig(self.id, {key: value})
+               self.canvas.itemconfig(self.id, {key: value})
        def keys(self):
                if not hasattr(self, '_keys'):
                        self._keys = map(lambda x, tk=self.canvas.tk:
@@ -34,7 +43,7 @@ class CanvasItem:
                                                 self.canvas._do(
                                                         'itemconfigure',
                                                         (self.id,))))
-                       return self._keys
+               return self._keys
        def has_key(self, key):
                return key in self.keys()
        def addtag(self, tag, option='withtag'):
@@ -68,8 +77,9 @@ class CanvasItem:
                self.canvas.lower(self.id, belowthis)
        def move(self, xamount, yamount):
                self.canvas.move(self.id, xamount, yamount)
-       def raise_(self, abovethis=None):
-               self.canvas.raise_(self.id, abovethis)
+       def tkraise(self, abovethis=None):
+               self.canvas.tkraise(self.id, abovethis)
+       raise_ = tkraise # BW compat
        def scale(self, xorigin, yorigin, xscale, yscale):
                self.canvas.scale(self.id, xorigin, yorigin, xscale, yscale)
        def type(self):
@@ -83,6 +93,10 @@ class Bitmap(CanvasItem):
        def __init__(self, canvas, *args):
                CanvasItem.__init__(self, canvas, 'bitmap', args)
 
+class ImageItem(CanvasItem):
+       def __init__(self, canvas, *args):
+               CanvasItem.__init__(self, canvas, 'image', args)
+
 class Line(CanvasItem):
        def __init__(self, canvas, *args):
                CanvasItem.__init__(self, canvas, 'line', args)
index 4d278ca13d7fef08638145e4b2b94f3a4e367c13..1e4a5c86940d50174fcecf2a8b775423cc81ecea 100755 (executable)
@@ -1,10 +1,19 @@
 # This module exports classes for the various canvas item types
 
-from Tkinter import Canvas, _flatten
+from Tkinter import Canvas
 
 StringType = type('')
 DictionaryType = type({})
 
+def _flatten(tuple):
+       res = ()
+       for item in tuple:
+               if type(item) in (TupleType, ListType):
+                       res = res + _flatten(item)
+               elif item is not None:
+                       res = res + (item,)
+       return res
+
 class CanvasItem:
        def __init__(self, canvas, itemType, *args, **kw):
                self.canvas = canvas
@@ -25,7 +34,7 @@ class CanvasItem:
                        self.id, '-' + key))
                return v[4]
        def __setitem__(self, key, value):
-               self.canvas._itemconfig(self.id, {key: value})
+               self.canvas.itemconfig(self.id, {key: value})
        def keys(self):
                if not hasattr(self, '_keys'):
                        self._keys = map(lambda x, tk=self.canvas.tk:
@@ -34,7 +43,7 @@ class CanvasItem:
                                                 self.canvas._do(
                                                         'itemconfigure',
                                                         (self.id,))))
-                       return self._keys
+               return self._keys
        def has_key(self, key):
                return key in self.keys()
        def addtag(self, tag, option='withtag'):
@@ -68,8 +77,9 @@ class CanvasItem:
                self.canvas.lower(self.id, belowthis)
        def move(self, xamount, yamount):
                self.canvas.move(self.id, xamount, yamount)
-       def raise_(self, abovethis=None):
-               self.canvas.raise_(self.id, abovethis)
+       def tkraise(self, abovethis=None):
+               self.canvas.tkraise(self.id, abovethis)
+       raise_ = tkraise # BW compat
        def scale(self, xorigin, yorigin, xscale, yscale):
                self.canvas.scale(self.id, xorigin, yorigin, xscale, yscale)
        def type(self):
@@ -83,6 +93,10 @@ class Bitmap(CanvasItem):
        def __init__(self, canvas, *args):
                CanvasItem.__init__(self, canvas, 'bitmap', args)
 
+class ImageItem(CanvasItem):
+       def __init__(self, canvas, *args):
+               CanvasItem.__init__(self, canvas, 'image', args)
+
 class Line(CanvasItem):
        def __init__(self, canvas, *args):
                CanvasItem.__init__(self, canvas, 'line', args)