From: Guido van Rossum Date: Wed, 20 Nov 1996 22:17:38 +0000 (+0000) Subject: Turn leading minus sign into underscore for image widget name -- the X-Git-Tag: v1.5a1~916 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=58103d3b114cedd5dabc9cc06b3e800178324433;p=thirdparty%2FPython%2Fcpython.git Turn leading minus sign into underscore for image widget name -- the hyphen confused Tk into thinking the name was an option. --- diff --git a/Lib/lib-tk/Tkinter.py b/Lib/lib-tk/Tkinter.py index 5dd0c99b186f..c482f4612265 100644 --- a/Lib/lib-tk/Tkinter.py +++ b/Lib/lib-tk/Tkinter.py @@ -54,7 +54,6 @@ def _cnfmerge(cnfs): if type(cnfs) is DictionaryType: return cnfs elif type(cnfs) in (NoneType, StringType): - return cnfs else: cnf = {} @@ -1531,7 +1530,6 @@ class _setit: def __init__(self, var, value): self.__value = value self.__var = var - def __call__(self, *args): self.__var.set(self.__value) @@ -1564,7 +1562,11 @@ class Image: master = _default_root if not master: raise RuntimeError, 'Too early to create image' self.tk = master.tk - if not name: name = `id(self)` + if not name: + name = `id(self)` + # The following is needed for systems where id(x) + # can return a negative number, such as Linux/m68k: + if name[0] == '-': name = '_' + name[1:] if kw and cnf: cnf = _cnfmerge((cnf, kw)) elif kw: cnf = kw options = () diff --git a/Lib/tkinter/Tkinter.py b/Lib/tkinter/Tkinter.py index 5dd0c99b186f..c482f4612265 100755 --- a/Lib/tkinter/Tkinter.py +++ b/Lib/tkinter/Tkinter.py @@ -54,7 +54,6 @@ def _cnfmerge(cnfs): if type(cnfs) is DictionaryType: return cnfs elif type(cnfs) in (NoneType, StringType): - return cnfs else: cnf = {} @@ -1531,7 +1530,6 @@ class _setit: def __init__(self, var, value): self.__value = value self.__var = var - def __call__(self, *args): self.__var.set(self.__value) @@ -1564,7 +1562,11 @@ class Image: master = _default_root if not master: raise RuntimeError, 'Too early to create image' self.tk = master.tk - if not name: name = `id(self)` + if not name: + name = `id(self)` + # The following is needed for systems where id(x) + # can return a negative number, such as Linux/m68k: + if name[0] == '-': name = '_' + name[1:] if kw and cnf: cnf = _cnfmerge((cnf, kw)) elif kw: cnf = kw options = ()