summaryrefslogtreecommitdiffstats
path: root/src/window.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/window.c')
-rw-r--r--src/window.c21
1 files changed, 20 insertions, 1 deletions
diff --git a/src/window.c b/src/window.c
index 1158b38..1dd83b3 100644
--- a/src/window.c
+++ b/src/window.c
@@ -25,16 +25,35 @@
#include "window.h"
+static void
+add_tab(MqWindow *window, gchar *uri, gint position)
+{
+ /* TODO: Set tab label (container widget with icon and title) */
+ position = gtk_notebook_insert_page(GTK_NOTEBOOK(window->gtk_notebook),
+ gtk_label_new(uri), NULL, position);
+}
+
MqWindow *
-mq_window_new(gchar __attribute__((unused)) **uris)
+mq_window_new(gchar **uris)
{
MqWindow *window;
+ guint i;
window = malloc(sizeof(*window));
window->gtk_window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
+ /* TODO: Don't quit on window close */
g_signal_connect(window->gtk_window, "destroy",
G_CALLBACK(gtk_main_quit), NULL);
+
+ window->gtk_notebook = gtk_notebook_new();
+ gtk_container_add(GTK_CONTAINER(window->gtk_window),
+ window->gtk_notebook);
+
+ for (i = 0; uris && uris[i]; ++i) {
+ add_tab(window, uris[i], -1);
+ }
+
gtk_widget_show_all(window->gtk_window);
return window;