]> granicus.if.org Git - python/commitdiff
Restore the capability to pass a class (usually Pack) as an option to widget
authorGuido van Rossum <guido@python.org>
Sun, 21 Jul 1996 03:05:05 +0000 (03:05 +0000)
committerGuido van Rossum <guido@python.org>
Sun, 21 Jul 1996 03:05:05 +0000 (03:05 +0000)
creation; no longer support this for the config method.

Lib/lib-tk/Tkinter.py
Lib/tkinter/Tkinter.py

index 4c7fd71927e5444e95611a05f91f784159c916bc..ac814a96a2419ba6d5319408d7b5da533d199bbd 100644 (file)
@@ -827,8 +827,15 @@ class Widget(Misc, Pack, Place, Grid):
                        cnf = _cnfmerge((cnf, kw))
                self.widgetName = widgetName
                Widget._setup(self, master, cnf)
+               classes = []
+               for k in cnf.keys():
+                       if type(k) is ClassType:
+                               classes.append((k, cnf[k]))
+                               del cnf[k]
                apply(self.tk.call,
                      (widgetName, self._w) + extra + self._options(cnf))
+               for k, v in classes:
+                       k.config(self, v)
        def config(self, cnf=None, **kw):
                # XXX ought to generalize this so tag_config etc. can use it
                if kw:
@@ -845,10 +852,6 @@ class Widget(Misc, Pack, Place, Grid):
                        x = self.tk.split(self.tk.call(
                                self._w, 'configure', '-'+cnf))
                        return (x[0][1:],) + x[1:]
-               for k in cnf.keys():
-                       if type(k) is ClassType:
-                               k.config(self, cnf[k])
-                               del cnf[k]
                apply(self.tk.call, (self._w, 'configure')
                      + self._options(cnf))
        configure = config
index 4c7fd71927e5444e95611a05f91f784159c916bc..ac814a96a2419ba6d5319408d7b5da533d199bbd 100755 (executable)
@@ -827,8 +827,15 @@ class Widget(Misc, Pack, Place, Grid):
                        cnf = _cnfmerge((cnf, kw))
                self.widgetName = widgetName
                Widget._setup(self, master, cnf)
+               classes = []
+               for k in cnf.keys():
+                       if type(k) is ClassType:
+                               classes.append((k, cnf[k]))
+                               del cnf[k]
                apply(self.tk.call,
                      (widgetName, self._w) + extra + self._options(cnf))
+               for k, v in classes:
+                       k.config(self, v)
        def config(self, cnf=None, **kw):
                # XXX ought to generalize this so tag_config etc. can use it
                if kw:
@@ -845,10 +852,6 @@ class Widget(Misc, Pack, Place, Grid):
                        x = self.tk.split(self.tk.call(
                                self._w, 'configure', '-'+cnf))
                        return (x[0][1:],) + x[1:]
-               for k in cnf.keys():
-                       if type(k) is ClassType:
-                               k.config(self, cnf[k])
-                               del cnf[k]
                apply(self.tk.call, (self._w, 'configure')
                      + self._options(cnf))
        configure = config