diff options
Diffstat (limited to 'Lib/idlelib/CallTipWindow.py')
-rw-r--r-- | Lib/idlelib/CallTipWindow.py | 57 |
1 files changed, 29 insertions, 28 deletions
diff --git a/Lib/idlelib/CallTipWindow.py b/Lib/idlelib/CallTipWindow.py index 8e29dab..84d22fd 100644 --- a/Lib/idlelib/CallTipWindow.py +++ b/Lib/idlelib/CallTipWindow.py @@ -2,9 +2,8 @@ After ToolTip.py, which uses ideas gleaned from PySol Used by the CallTips IDLE extension. - """ -from tkinter import * +from tkinter import Toplevel, Label, LEFT, SOLID, TclError HIDE_VIRTUAL_EVENT_NAME = "<<calltipwindow-hide>>" HIDE_SEQUENCES = ("<Key-Escape>", "<FocusOut>") @@ -133,37 +132,39 @@ class CallTip: return bool(self.tipwindow) +def _calltip_window(parent): # htest # + import re + from tkinter import Tk, Text, LEFT, BOTH + + root = Tk() + root.title("Test calltips") + width, height, x, y = list(map(int, re.split('[x+]', parent.geometry()))) + root.geometry("+%d+%d"%(x, y + 150)) -############################### -# -# Test Code -# -class container: # Conceptually an editor_window - def __init__(self): - root = Tk() - text = self.text = Text(root) - text.pack(side=LEFT, fill=BOTH, expand=1) - text.insert("insert", "string.split") - root.update() - self.calltip = CallTip(text) + class MyEditWin: # conceptually an editor_window + def __init__(self): + text = self.text = Text(root) + text.pack(side=LEFT, fill=BOTH, expand=1) + text.insert("insert", "string.split") + root.update() + self.calltip = CallTip(text) - text.event_add("<<calltip-show>>", "(") - text.event_add("<<calltip-hide>>", ")") - text.bind("<<calltip-show>>", self.calltip_show) - text.bind("<<calltip-hide>>", self.calltip_hide) + text.event_add("<<calltip-show>>", "(") + text.event_add("<<calltip-hide>>", ")") + text.bind("<<calltip-show>>", self.calltip_show) + text.bind("<<calltip-hide>>", self.calltip_hide) - text.focus_set() - root.mainloop() + text.focus_set() + root.mainloop() - def calltip_show(self, event): - self.calltip.showtip("Hello world") + def calltip_show(self, event): + self.calltip.showtip("Hello world", "insert", "end") - def calltip_hide(self, event): - self.calltip.hidetip() + def calltip_hide(self, event): + self.calltip.hidetip() -def main(): - # Test code - c=container() + MyEditWin() if __name__=='__main__': - main() + from idlelib.idle_test.htest import run + run(_calltip_window) |