From 18e9a50506641bcd594c3a33817e7b6b564e8cf3 Mon Sep 17 00:00:00 2001 From: Roberto Alsina Date: Fri, 31 May 2024 18:13:07 -0300 Subject: [PATCH] Examples from 0.1 release --- samples/README | 18 +++++++++++ samples/demo1.py | 34 +++++++++++++++++++++ samples/demo2.py | 51 ++++++++++++++++++++++++++++++++ samples/demo3.py | 75 ++++++++++++++++++++++++++++++++++++++++++++++ samples/demo4.py | 77 ++++++++++++++++++++++++++++++++++++++++++++++++ samples/demo5.py | 60 +++++++++++++++++++++++++++++++++++++ 6 files changed, 315 insertions(+) create mode 100644 samples/README create mode 100755 samples/demo1.py create mode 100755 samples/demo2.py create mode 100755 samples/demo3.py create mode 100755 samples/demo4.py create mode 100755 samples/demo5.py diff --git a/samples/README b/samples/README new file mode 100644 index 0000000..582e5d6 --- /dev/null +++ b/samples/README @@ -0,0 +1,18 @@ +This is a pathetic attempt to make samples for the library. +It suffers the same problem as the library itself: no time. + +It should get better soon + +In order to fully understand this (and use the hundreds of things not +demonstrated), you should: + +a) Read the XForms docs +b) Read the Pyxform.py file +c) Read all the .c files + +Anyway, it's just a sampler, this should get MUCH more complete soon + +Anyway, you can email me + +Roberto Alsina +ralsina@unl.edu.ar diff --git a/samples/demo1.py b/samples/demo1.py new file mode 100755 index 0000000..a333bdb --- /dev/null +++ b/samples/demo1.py @@ -0,0 +1,34 @@ +#!/usr/local/bin/python +from Pyxform import * + +# +# Init the library (sucks but works) +# + +xfinit ('Something','1',sys.argv[0]) + +# +# Create a "Window" - A form in XForms parlance + +win=Form() + +# +# Show it + +win.Show() + +# +# Create a button + +a_button=Button(0,10,10,100,30,"Press Me") + +# +# Put it inside win + +win.Add (a_button) + +# +# Start the event loop +# It will run forever, because the button doesn't do anything + +runforms() \ No newline at end of file diff --git a/samples/demo2.py b/samples/demo2.py new file mode 100755 index 0000000..a53e301 --- /dev/null +++ b/samples/demo2.py @@ -0,0 +1,51 @@ +#!/usr/local/bin/python + +from Pyxform import * +from goodies import * + +# +# Init the library (sucks but works) +# + +xfinit ('Something','1',sys.argv[0]) + +# +# Create a "Window" - A form in XForms parlance + +win=Form() + +# +# Show it + +win.Show() + +# +# Create a button + +a_button=Button(0,10,10,100,30,"Press Me") + +# +# Put it inside win + +win.Add (a_button) + +# +# Define a function, that will be executed when the button is pressed + +def funct (self): + # It shows a message and exits (or not) + answer=show_question ("Do you want","to exit?","") + if answer==1: + sys.exit() + +# +# And bind the function to the button + +a_button.cb=funct + + +# +# Start the event loop +# It will run until you press the button and say yes + +runforms() \ No newline at end of file diff --git a/samples/demo3.py b/samples/demo3.py new file mode 100755 index 0000000..8a42b07 --- /dev/null +++ b/samples/demo3.py @@ -0,0 +1,75 @@ +#!/usr/local/bin/python + +from Pyxform import * +from goodies import * + +# +# Init the library (sucks but works) +# + +xfinit ('Something','1',sys.argv[0]) + +# +# Create a "Window" - A form in XForms parlance + +win=Form() + +# +# Show it + +win.Show() + +# +# Create a button, and 2 sliders + +a_button=Button(0,10,10,100,30,"Press Me") +h_slider=Slider(5,0,180,200,20,"") +v_slider=Slider(4,180,0,20,180,"") + +# +# Set some values for the sliders + +h_slider.Setbounds(0,200) +h_slider.Set(0) + +v_slider.Setbounds(0,200) +v_slider.Set(0) + +# +# Put them inside win + +win.Add (a_button) +win.Add (h_slider) +win.Add (v_slider) + +# +# Define a function, that will be executed when the button is pressed + +def funct (self): + # It shows a message and exits (or not) + answer=show_question ("Do you want","to exit?","") + if answer==1: + sys.exit() + +# +# And another one, for when the sliders move + +def slide (self): + # It moves the button to the position of the sliders + a_button.x=h_slider.Get() + a_button.y=v_slider.Get() + + + +# +# And bind the functions to the controls + +a_button.cb=funct +h_slider.cb=v_slider.cb=slide + + +# +# Start the event loop +# It will run until you press the button and say yes + +runforms() \ No newline at end of file diff --git a/samples/demo4.py b/samples/demo4.py new file mode 100755 index 0000000..01b4b63 --- /dev/null +++ b/samples/demo4.py @@ -0,0 +1,77 @@ +#!/usr/local/bin/python + +from Pyxform import * +from goodies import * + +# +# Init the library (sucks but works) +# + +xfinit ('Something','1',sys.argv[0]) + +# +# Create a "Window" - A form in XForms parlance + +win=Form() + +# +# Show it + +win.Show() + +# +# Create a button, and 2 valsliders + +a_button=Button(0,10,10,100,30,"Press Me") +h_slider=Valslider(5,0,180,200,20,"") +v_slider=Valslider(4,180,0,20,180,"") + +# +# Set some values for the sliders + +h_slider.Setbounds(0,200) +h_slider.Set(0) +h_slider.Setprecision(0) + +v_slider.Setbounds(0,200) +v_slider.Set(0) +v_slider.Setprecision(0) + +# +# Put them inside win + +win.Add (a_button) +win.Add (h_slider) +win.Add (v_slider) + +# +# Define a function, that will be executed when the button is pressed + +def funct (self): + # It shows a message and exits (or not) + answer=show_question ("Do you want","to exit?","") + if answer==1: + sys.exit() + +# +# And another one, for when the sliders move + +def slide (self): + # It moves the button to the position of the sliders + a_button.x=h_slider.Get() + a_button.y=v_slider.Get() + + + +# +# And bind the functions to the controls + +a_button.cb=funct +h_slider.cb=v_slider.cb=slide + + +# +# Start the event loop +# It will run until you press the button and say yes + +runforms() \ No newline at end of file diff --git a/samples/demo5.py b/samples/demo5.py new file mode 100755 index 0000000..d58178b --- /dev/null +++ b/samples/demo5.py @@ -0,0 +1,60 @@ +#!/usr/local/bin/python + +from Pyxform import * +from goodies import * + +# +# Init the library (sucks but works) +# + +xfinit ('Something','1',sys.argv[0]) + +# +# Create a "Window" - A form in XForms parlance + +win=Form(6,640,480) + +# +# Show it + +win.Show() + +# +# Create a browser and a Button + +brow=Browser(0,10,10,620,440,"Read Me") +but1=Button (0,10,450,100,25,"Push Me") +but2=Button (0,120,450,100,25,"Exit") +# +# Put them inside win + +win.Add (brow) +win.Add (but1) +win.Add (but2) + +# +# The exit function + +def funct (self): + # It shows a message and exits (or not) + answer=show_question ("Do you want","to exit?","") + if answer==1: + sys.exit() +but2.cb=funct + +# +# And the interesting function + +def browse_file(self): + # Asks for a file, and puts it in the browser + filename=show_fselector("","","","") + brow.Load (filename) + +but1.cb=browse_file + + +# +# Start the event loop +# It will run until you press the button and say yes + +runforms()