summaryrefslogtreecommitdiffstats
path: root/ui.vala
blob: 9e235f3837497f1eae63957788f931b112489aae (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
public void init_ui() {
	init_restock_dialog();
}

public void init_restock_dialog() {
	var window = builder.get_object("restock_dialog") as Gtk.Window;

	/* product combobox */
	var box = builder.get_object("comboboxtext1") as Gtk.ComboBoxText;
	foreach(var entry in db.get_products().entries) {
		box.append(entry.key, entry.value);
	}

	/* spinner button */
	var spinner = builder.get_object("spinbutton1") as Gtk.SpinButton;

	/* dialog buttons */
	var cancel = builder.get_object("button-restock-cancel") as Gtk.Button;
	var ok = builder.get_object("button-restock-add") as Gtk.Button;

	cancel.clicked.connect(() => {
		window.hide();
	});

	ok.clicked.connect(() => {
		var id = box.get_active_id();
		var product = (id != null) ? uint64.parse(id) : 0;
		var amount = (int) spinner.get_value();

		int64 timestamp = (new DateTime.now_utc()).to_unix();
		stdout.printf("[%lld] restock: %lld - %d\n", timestamp, product, amount);

		if(db.restock(product, amount))
			window.hide();
	});
}

public void show_restock_dialog() {
	(builder.get_object("restock_dialog") as Gtk.Window).show();
}