diff options
Diffstat (limited to 'ui.vala')
-rw-r--r-- | ui.vala | 49 |
1 files changed, 46 insertions, 3 deletions
@@ -1,5 +1,30 @@ +/* Copyright 2012, Sebastian Reichel <sre@ring0.de> + * + * Permission to use, copy, modify, and/or distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR + * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN + * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF + * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + */ + public void init_ui() { init_restock_dialog(); + init_main_window(); +} + +public void init_main_window() { + var window = builder.get_object("main") as Gtk.Window; + + /* TODO */ + window.destroy.connect(() => { + Gtk.main_quit(); + }); } public void init_restock_dialog() { @@ -29,8 +54,7 @@ public void init_restock_dialog() { 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); + write_to_log("restock: %lld - %d\n", product, amount); if(db.restock(product, amount)) { spinner.value = 0.0; @@ -41,5 +65,24 @@ public void init_restock_dialog() { } public void show_restock_dialog() { - (builder.get_object("restock_dialog") as Gtk.Window).show(); + (builder.get_object("restock-dialog") as Gtk.Window).show(); +} + +public void show_about_dialog() { + (builder.get_object("about-dialog") as Gtk.Window).show(); +} + +public void show_main_window() { + (builder.get_object("main") as Gtk.Window).show(); +} + +[PrintfFormat] +public void write_to_log(string format, ...) { + var arguments = va_list(); + var message = format.vprintf(arguments); + var time = new DateTime.now_local(); + + var view = builder.get_object("logview") as Gtk.TextView; + view.buffer.insert_at_cursor(time.format("[%Y-%m-%d %H:%M:%S] ") + message + "\n", -1); + view.scroll_to_mark(view.buffer.get_insert(), 0.0, true, 0.0, 1.0); } |