diff options
author | Guido van Rossum <guido@python.org> | 1992-03-30 11:39:53 (GMT) |
---|---|---|
committer | Guido van Rossum <guido@python.org> | 1992-03-30 11:39:53 (GMT) |
commit | 715a65315287876f9bd2dd9ad5d453df3f6caa7c (patch) | |
tree | 20d113d4ebfd0cfef67cc406d3c9398487188b25 /Demo/sgi/flp/test_cb.py | |
parent | 4a5ab81bc93004773070de89cc4acfad75103c7e (diff) | |
download | cpython-715a65315287876f9bd2dd9ad5d453df3f6caa7c.zip cpython-715a65315287876f9bd2dd9ad5d453df3f6caa7c.tar.gz cpython-715a65315287876f9bd2dd9ad5d453df3f6caa7c.tar.bz2 |
Initial revision
Diffstat (limited to 'Demo/sgi/flp/test_cb.py')
-rwxr-xr-x | Demo/sgi/flp/test_cb.py | 62 |
1 files changed, 62 insertions, 0 deletions
diff --git a/Demo/sgi/flp/test_cb.py b/Demo/sgi/flp/test_cb.py new file mode 100755 index 0000000..d622332 --- /dev/null +++ b/Demo/sgi/flp/test_cb.py @@ -0,0 +1,62 @@ +# +# Example 2 - Using fl in python with callbacks. +# +# The form is named 'main_form' and resides on file 'test_cb.fd'. +# It has three objects named button1, button2 and exitbutton. +# All buttons have callbacks with the same names as their corresponding +# buttons but with CB appended. +# +import fl # The forms library +import FL # Symbolic constants for the above +import flp # The module to parse .fd files +import sys + +# The following struct is created to hold the instance variables +# main_form, button1, button2 and exitbutton. + +class myform(): + # + # The init function parses and creates the form, but doesn't + # display it (yet). + def init(self, number): + # + # First we parse the form + parsetree = flp.parse_form('test_cb', 'main_form') + # + # Next we create it + + flp.create_full_form(self, parsetree) + + # And keep our number + self.number = number + return self + + # + # The show function displays the form. It doesn't do any interaction, + # though. + def show(self): + self.main_form.show_form(FL.PLACE_SIZE, 1, '') + + # The callback functions + def button1CB(self, obj, arg): + print 'Button 1 pressed on form', self.number + + def button2CB(self, obj, arg): + print 'Button 2 pressed on form', self.number + + def exitbuttonCB(self, obj, arg): + print 'Ok, bye bye' + sys.exit(0) + +# +# The main program. Instantiate two variables of the forms class +# and interact with them. + +form1 = myform().init(1) +form2 = myform().init(2) + +form1.show() +form2.show() + +obj = fl.do_forms() +print 'do_forms() returned. This should not happen. obj=', obj |