From e7e8d1e15ca620fdfa66ee7903ca1d73e7546596 Mon Sep 17 00:00:00 2001 From: Guido van Rossum Date: Wed, 13 Jul 1994 12:56:10 +0000 Subject: Change remote operation -- display the widget tree in a listbox and open relevant dialogs on double click --- Demo/tkinter/guido/AttrDialog.py | 26 ++++++++++++++++++++++---- 1 file changed, 22 insertions(+), 4 deletions(-) (limited to 'Demo/tkinter/guido/AttrDialog.py') diff --git a/Demo/tkinter/guido/AttrDialog.py b/Demo/tkinter/guido/AttrDialog.py index 05da37d52b..496aae1c9c 100755 --- a/Demo/tkinter/guido/AttrDialog.py +++ b/Demo/tkinter/guido/AttrDialog.py @@ -12,7 +12,6 @@ # -- totally static, though different between PackDialog and WidgetDialog # (but even that could be unified) - from Tkinter import * class Option: @@ -406,9 +405,8 @@ def test(): import sys root = Tk() root.minsize(1, 1) - if sys.argv[2:]: - pd = RemotePackDialog(root, sys.argv[1], sys.argv[2]) - wd = RemoteWidgetDialog(root, sys.argv[1], sys.argv[2]) + if sys.argv[1:]: + remotetest(root, sys.argv[1]) else: frame = Frame(root, {'name': 'frame', Pack: {'expand': 1, 'fill': 'both'}, @@ -426,4 +424,24 @@ def test(): cwd = WidgetDialog(canvas) root.mainloop() +def remotetest(root, app): + from listtree import listtree + list = listtree(root, app) + list.bind('', opendialogs) + list.app = app # Pass it on to handler + +def opendialogs(e): + import string + list = e.widget + sel = list.curselection() + for i in sel: + item = list.get(i) + widget = string.split(item)[0] + RemoteWidgetDialog(list, list.app, widget) + if widget == '.': continue + try: + RemotePackDialog(list, list.app, widget) + except TclError, msg: + print msg + test() -- cgit v1.2.1