View | Details | Raw Unified | Return to bug 3285
Collapse All | Expand All

(-)Python-2.2.2.orig/Lib/lib-tk/Tkinter.py (-16 / +18 lines)
Lines 1025-1061 Link Here
1025
        if len(args) != len(self._subst_format): return args
1025
        if len(args) != len(self._subst_format): return args
1026
        getboolean = self.tk.getboolean
1026
        getboolean = self.tk.getboolean
1027
        getint = int
1027
        getint = int
1028
        def getint_event(s):
1029
            """Tk changed behavior in 8.4.2, returning "??" rather more often."""
1030
            try:
1031
                return int(s)
1032
            except ValueError:
1033
                return s
1034
            
1028
        nsign, b, f, h, k, s, t, w, x, y, A, E, K, N, W, T, X, Y, D = args
1035
        nsign, b, f, h, k, s, t, w, x, y, A, E, K, N, W, T, X, Y, D = args
1029
        # Missing: (a, c, d, m, o, v, B, R)
1036
        # Missing: (a, c, d, m, o, v, B, R)
1030
        e = Event()
1037
        e = Event()
1031
        e.serial = getint(nsign)
1038
        e.serial = getint(nsign)
1032
        e.num = getint(b)
1039
        e.num = getint_event(b)
1033
        try: e.focus = getboolean(f)
1040
        try: e.focus = getboolean(f)
1034
        except TclError: pass
1041
        except TclError: pass
1035
        e.height = getint(h)
1042
        e.height = getint_event(h)
1036
        e.keycode = getint(k)
1043
        e.keycode = getint_event(k)
1037
        # For Visibility events, event state is a string and
1044
        e.state = getint_event(s)
1038
        # not an integer:
1045
        e.time = getint_event(t)
1039
        try:
1046
        e.width = getint_event(w)
1040
            e.state = getint(s)
1047
        e.x = getint_event(x)
1041
        except ValueError:
1048
        e.y = getint_event(y)
1042
            e.state = s
1043
        e.time = getint(t)
1044
        e.width = getint(w)
1045
        e.x = getint(x)
1046
        e.y = getint(y)
1047
        e.char = A
1049
        e.char = A
1048
        try: e.send_event = getboolean(E)
1050
        try: e.send_event = getboolean(E)
1049
        except TclError: pass
1051
        except TclError: pass
1050
        e.keysym = K
1052
        e.keysym = K
1051
        e.keysym_num = getint(N)
1053
        e.keysym_num = getint_event(N)
1052
        e.type = T
1054
        e.type = T
1053
        try:
1055
        try:
1054
            e.widget = self._nametowidget(W)
1056
            e.widget = self._nametowidget(W)
1055
        except KeyError:
1057
        except KeyError:
1056
            e.widget = W
1058
            e.widget = W
1057
        e.x_root = getint(X)
1059
        e.x_root = getint_event(X)
1058
        e.y_root = getint(Y)
1060
        e.y_root = getint_event(Y)
1059
        try:
1061
        try:
1060
            e.delta = getint(D)
1062
            e.delta = getint(D)
1061
        except ValueError:
1063
        except ValueError:

Return to bug 3285