Blame platform-demos/C/samples/spinner.vala

Packit 1470ea
public class MyWindow : Gtk.ApplicationWindow {
Packit 1470ea
Packit 1470ea
	Gtk.Widget spinner;
Packit 1470ea
Packit 1470ea
	internal MyWindow (MyApplication app) {
Packit 1470ea
Packit 1470ea
		Object (application: app, title: "Spinner Example");
Packit 1470ea
Packit 1470ea
		this.set_default_size (200, 200);
Packit 1470ea
		this.border_width = 30;
Packit 1470ea
Packit 1470ea
		spinner = new Gtk.Spinner ();
Packit 1470ea
Packit 1470ea
		this.add (spinner);
Packit 1470ea
		(spinner as Gtk.Spinner).active = true;
Packit 1470ea
		spinner.show ();
Packit 1470ea
	}
Packit 1470ea
Packit 1470ea
	protected override bool key_press_event (Gdk.EventKey event) {
Packit 1470ea
Packit 1470ea
		//print (Gdk.keyval_name(event.keyval) +"\n");
Packit 1470ea
		if (Gdk.keyval_name(event.keyval) == "space") {
Packit 1470ea
Packit 1470ea
			if ((spinner as Gtk.Spinner).active) {
Packit 1470ea
				(spinner as Gtk.Spinner).stop ();
Packit 1470ea
				//spinner.visible = false;
Packit 1470ea
			}
Packit 1470ea
			else {
Packit 1470ea
				(spinner as Gtk.Spinner).start ();
Packit 1470ea
				//spinner.visible = true;
Packit 1470ea
			}
Packit 1470ea
		}
Packit 1470ea
		return true;
Packit 1470ea
	}
Packit 1470ea
}
Packit 1470ea
Packit 1470ea
public class MyApplication : Gtk.Application {
Packit 1470ea
Packit 1470ea
	protected override void activate () {
Packit 1470ea
		MyWindow window = new MyWindow (this);
Packit 1470ea
		window.show ();
Packit 1470ea
	}
Packit 1470ea
Packit 1470ea
	internal MyApplication () {
Packit 1470ea
		Object (application_id: "org.example.spinner");
Packit 1470ea
	}
Packit 1470ea
}
Packit 1470ea
Packit 1470ea
public int main (string[] args) {
Packit 1470ea
	return new MyApplication ().run (args);
Packit 1470ea
}