My fix to Mark's code: restore the universal check on <KeyRelease>.

Always cancel on <Key-Escape> or <ButtonPress>.
This commit is contained in:
Guido van Rossum 1999-06-02 18:18:57 +00:00
parent 6290dabdbb
commit 094189f108
1 changed files with 2 additions and 14 deletions

View File

@ -2,18 +2,6 @@ import string
import sys
import types
# These keys check if cancellation is nesessary.
_check_cancel_keys = ["Left", "Right"]
# These keys (with the modifiers) call cancel unconditionally.
_cancel_keys_base = ["Up", "Down", "Next", "Prior", "Home"]
_cancel_keys_modifiers = ['Key-', 'Control-', 'Shift-', 'Control-Shift-']
_cancel_keys = []
for key in _cancel_keys_base:
for mod in _cancel_keys_modifiers:
_cancel_keys.append(mod+key)
class CallTips:
menudefs = [
@ -22,8 +10,8 @@ class CallTips:
keydefs = {
'<<paren-open>>': ['<Key-parenleft>'],
'<<paren-close>>': ['<Key-parenright>'],
'<<check-calltip-cancel>>': map(lambda key: "<Key-%s>" % key, _check_cancel_keys),
'<<calltip-cancel>>': map(lambda key: "<%s>" % key, _cancel_keys),
'<<check-calltip-cancel>>': ['<KeyRelease>'],
'<<calltip-cancel>>': ['<ButtonPress>', '<Key-Escape>'],
}
windows_keydefs = {