summaryrefslogtreecommitdiffstats
path: root/Demo/tix/samples/OptMenu.py
diff options
context:
space:
mode:
Diffstat (limited to 'Demo/tix/samples/OptMenu.py')
-rwxr-xr-xDemo/tix/samples/OptMenu.py68
1 files changed, 68 insertions, 0 deletions
diff --git a/Demo/tix/samples/OptMenu.py b/Demo/tix/samples/OptMenu.py
new file mode 100755
index 0000000..2d05938
--- /dev/null
+++ b/Demo/tix/samples/OptMenu.py
@@ -0,0 +1,68 @@
+#!/usr/local/bin/python
+#
+# $Id$
+#
+# Tix Demostration Program
+#
+# This sample program is structured in such a way so that it can be
+# executed from the Tix demo program "tixwidgets": it must have a
+# procedure called "RunSample". It should also have the "if" statment
+# at the end of this file so that it can be run as a standalone
+# program.
+
+# This file demonstrates the use of the tixOptionMenu widget -- you can
+# use it for the user to choose from a fixed set of options
+#
+import Tix
+
+options = {'text':'Plain Text', 'post':'PostScript', 'html':'HTML',
+ 'tex':'LaTeX', 'rtf':'Rich Text Format'}
+
+def RunSample(w):
+ global demo_opt_from, demo_opt_to
+
+ demo_opt_from = Tix.StringVar()
+ demo_opt_to = Tix.StringVar()
+
+ top = Tix.Frame(w, bd=1, relief=Tix.RAISED)
+
+ from_file = Tix.OptionMenu(top, label="From File Format : ",
+ variable=demo_opt_from,
+ options = 'label.width 19 label.anchor e menubutton.width 15')
+
+ to_file = Tix.OptionMenu(top, label="To File Format : ",
+ variable=demo_opt_to,
+ options='label.width 19 label.anchor e menubutton.width 15')
+
+ # Add the available options to the two OptionMenu widgets
+ #
+ # [Hint] You have to add the options first before you set the
+ # global variables "demo_opt_from" and "demo_opt_to". Otherwise
+ # the OptionMenu widget will complain about "unknown options"!
+ #
+ for opt in options.keys():
+ from_file.add_command(opt, label=options[opt])
+ to_file.add_command(opt, label=options[opt])
+
+ demo_opt_from.set('html')
+ demo_opt_to.set('post')
+
+ from_file.pack(side=Tix.TOP, anchor=Tix.W, pady=3, padx=6)
+ to_file.pack(side=Tix.TOP, anchor=Tix.W, pady=3, padx=6)
+
+ box = Tix.ButtonBox(w, orientation=Tix.HORIZONTAL)
+ box.add('ok', text='Ok', underline=0, width=6,
+ command=lambda w=w: ok_command(w))
+ box.add('cancel', text='Cancel', underline=0, width=6,
+ command=lambda w=w: w.destroy())
+ box.pack(side=Tix.BOTTOM, fill=Tix.X)
+ top.pack(side=Tix.TOP, fill=Tix.BOTH, expand=1)
+
+def ok_command(w):
+ print "Convert file from", demo_opt_from.get(), " to", demo_opt_to.get()
+ w.destroy()
+
+if __name__ == '__main__':
+ root = Tix.Tk()
+ RunSample(root)
+ root.mainloop()