diff --git a/sample/GtkDemo/DemoSpinner.cs b/sample/GtkDemo/DemoSpinner.cs new file mode 100644 index 000000000..ef81feda1 --- /dev/null +++ b/sample/GtkDemo/DemoSpinner.cs @@ -0,0 +1,73 @@ +/* Spinner + * + * GtkSpinner allows to show that background activity is on-going. + * + */ + +using System; +using Gtk; + +namespace GtkDemo +{ + [Demo ("Spinner", "DemoSpinner.cs")] + public class DemoSpinner : Dialog + { + Spinner spinner_sensitive; + Spinner spinner_unsensitive; + + public DemoSpinner () : base ("Spinner", null, DialogFlags.DestroyWithParent) + { + Resizable = false; + + VBox vbox = new VBox (false, 5); + vbox.BorderWidth = 5; + ContentArea.PackStart (vbox, true, true, 0); + + /* Sensitive */ + HBox hbox = new HBox (false, 5); + spinner_sensitive = new Spinner (); + hbox.Add (spinner_sensitive); + hbox.Add (new Entry ()); + vbox.Add (hbox); + + /* Disabled */ + hbox = new HBox (false, 5); + spinner_unsensitive = new Spinner (); + spinner_unsensitive.Sensitive = false; + hbox.Add (spinner_unsensitive); + hbox.Add (new Entry ()); + vbox.Add (hbox); + + Button btn_play = new Button (); + btn_play.Label = "Play"; + btn_play.Clicked += OnPlayClicked; + vbox.Add (btn_play); + + Button btn_stop = new Button (); + btn_stop.Label = "Stop"; + btn_stop.Clicked += OnStopClicked; + vbox.Add (btn_stop); + + AddButton (Stock.Close, ResponseType.Close); + + OnPlayClicked (null, null); + + ShowAll (); + Run (); + Destroy (); + } + + private void OnPlayClicked (object sender, EventArgs e) + { + spinner_sensitive.Start (); + spinner_unsensitive.Start (); + } + + private void OnStopClicked (object sender, EventArgs e) + { + spinner_sensitive.Stop (); + spinner_unsensitive.Stop (); + } + } +} + diff --git a/sample/GtkDemo/Makefile.am b/sample/GtkDemo/Makefile.am index 89f25c486..3532a19b7 100644 --- a/sample/GtkDemo/Makefile.am +++ b/sample/GtkDemo/Makefile.am @@ -36,6 +36,7 @@ sources = \ DemoPixbuf.cs \ DemoRotatedText.cs \ DemoSizeGroup.cs \ + DemoSpinner.cs \ DemoStockBrowser.cs \ DemoTextView.cs \ DemoTreeStore.cs \ diff --git a/sample/sample.csproj b/sample/sample.csproj index 4b2f0fd71..f91d7a0e8 100644 --- a/sample/sample.csproj +++ b/sample/sample.csproj @@ -109,6 +109,7 @@ +