summaryrefslogtreecommitdiffstats
path: root/ui.vala
diff options
context:
space:
mode:
Diffstat (limited to 'ui.vala')
-rw-r--r--ui.vala49
1 files changed, 46 insertions, 3 deletions
diff --git a/ui.vala b/ui.vala
index e3a21aa..843198b 100644
--- a/ui.vala
+++ b/ui.vala
@@ -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);
}