X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=helm%2FDEVEL%2Flablgtk%2Flablgtk_20000829-0.1.0%2Fexamples%2Fold%2Fprogressbar.ml;fp=helm%2FDEVEL%2Flablgtk%2Flablgtk_20000829-0.1.0%2Fexamples%2Fold%2Fprogressbar.ml;h=f4ad465edb66ce172fafd03710cea98e1d5329d6;hb=2ee84a2a641938988703e329aef9fc3c5eb5aacf;hp=0000000000000000000000000000000000000000;hpb=34d83812af9b7064cc8f735c2a78169881140010;p=helm.git diff --git a/helm/DEVEL/lablgtk/lablgtk_20000829-0.1.0/examples/old/progressbar.ml b/helm/DEVEL/lablgtk/lablgtk_20000829-0.1.0/examples/old/progressbar.ml new file mode 100644 index 000000000..f4ad465ed --- /dev/null +++ b/helm/DEVEL/lablgtk/lablgtk_20000829-0.1.0/examples/old/progressbar.ml @@ -0,0 +1,60 @@ +(* $Id$ *) + +open Gtk +open GtkBase +open GtkMisc +open GtkWindow +open GtkRange +open GtkPack +open GtkButton +open GtkMain + + +class bar bar = object + val bar : progress_bar obj = bar + val mutable pstat = true + method progress = + let pvalue = Progress.get_percentage bar in + let pvalue = + if pvalue >= 1.0 || not pstat then (pstat <- true; 0.0) + else pvalue +. 0.01 + in + ProgressBar.update bar percent:pvalue; + true + method progress_r = + pstat <- false +end + +let main () = + + let window = Window.create `TOPLEVEL in + GtkSignal.connect sig:Object.Signals.destroy window callback:Main.quit; + Container.set_border_width window 10; + + let table = Table.create rows:3 columns:2 in + Container.add window table; + + let label = Label.create "Progress Bar Example" in + Table.attach table label left:0 right:2 top:0 expand:`X shrink:`BOTH; + + let pbar = ProgressBar.create () in + Table.attach table pbar left:0 right:2 top:1 fill:`X shrink:`BOTH; + + let bar = new bar pbar in + let ptimer = Timeout.add 100 callback:(fun () -> bar#progress) in + + let button = Button.create label:"Reset" in + GtkSignal.connect sig:Button.Signals.clicked button + callback:(fun () -> bar#progress_r); + Table.attach table button left:0 top:2 expand:`NONE fill:`X shrink:`BOTH; + + let button = Button.create label:"Cancel" in + GtkSignal.connect sig:Button.Signals.clicked button callback:Main.quit; + Table.attach table button left:1 top:2 expand:`NONE fill:`X shrink:`BOTH; + + Widget.show_all window + + +let _ = + main (); + Main.main ()