summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorPatrick McDermott <pj@pehjota.net>2017-09-16 16:19:36 (EDT)
committer Patrick McDermott <pj@pehjota.net>2017-09-16 16:19:36 (EDT)
commit5b77c77487c3abccf785921241bc6734ab09a3fe (patch)
treed1addd20c0247a710725acbe8b4b3264cbc9212e /src
parent9101eb762bc996627119c31a277b7fac53b73b44 (diff)
downloadmarquee-5b77c77487c3abccf785921241bc6734ab09a3fe.zip
marquee-5b77c77487c3abccf785921241bc6734ab09a3fe.tar.gz
marquee-5b77c77487c3abccf785921241bc6734ab09a3fe.tar.bz2
src/tab-chrome.[ch]: New files
And use in src/tab.[ch].
Diffstat (limited to 'src')
-rw-r--r--src/local.mk3
-rw-r--r--src/tab-chrome.c50
-rw-r--r--src/tab-chrome.h35
-rw-r--r--src/tab.c5
-rw-r--r--src/tab.h5
5 files changed, 95 insertions, 3 deletions
diff --git a/src/local.mk b/src/local.mk
index 9c9340e..adfd8d3 100644
--- a/src/local.mk
+++ b/src/local.mk
@@ -1,4 +1,5 @@
marquee_SOURCES += \
%reldir%/main.c \
%reldir%/window.c \
- %reldir%/tab.c
+ %reldir%/tab.c \
+ %reldir%/tab-chrome.c
diff --git a/src/tab-chrome.c b/src/tab-chrome.c
new file mode 100644
index 0000000..52197d3
--- /dev/null
+++ b/src/tab-chrome.c
@@ -0,0 +1,50 @@
+/*
+ * Tab chrome
+ *
+ * Copyright (C) 2017 Patrick McDermott
+ *
+ * This file is part of Marquee.
+ *
+ * Marquee is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * Marquee is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with Marquee. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#include <stdlib.h>
+
+#include <gtk/gtk.h>
+
+#include "tab-chrome.h"
+
+MqTabChrome *
+mq_tab_chrome_new(gchar *uri)
+{
+ MqTabChrome *chrome;
+
+ chrome = malloc(sizeof(*chrome));
+
+ chrome->container = gtk_grid_new();
+ gtk_grid_attach(GTK_GRID(chrome->container), gtk_label_new("Back"),
+ 0, 0, 1, 1);
+ gtk_grid_attach(GTK_GRID(chrome->container), gtk_label_new("Forward"),
+ 1, 0, 1, 1);
+ gtk_grid_attach(GTK_GRID(chrome->container), gtk_label_new(uri),
+ 2, 0, 1, 1);
+
+ return chrome;
+}
+
+GtkWidget *
+mq_tab_chrome_get_container(MqTabChrome *chrome)
+{
+ return chrome->container;
+}
diff --git a/src/tab-chrome.h b/src/tab-chrome.h
new file mode 100644
index 0000000..27804fd
--- /dev/null
+++ b/src/tab-chrome.h
@@ -0,0 +1,35 @@
+/*
+ * Tab chrome
+ *
+ * Copyright (C) 2017 Patrick McDermott
+ *
+ * This file is part of Marquee.
+ *
+ * Marquee is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * Marquee is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with Marquee. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#ifndef MQ_TAB_CHROME_H
+#define MQ_TAB_CHROME_H
+
+typedef struct {
+ GtkWidget *container;
+} MqTabChrome;
+
+MqTabChrome *
+mq_tab_chrome_new(gchar *uri);
+
+GtkWidget *
+mq_tab_chrome_get_container(MqTabChrome *chrome);
+
+#endif
diff --git a/src/tab.c b/src/tab.c
index d274597..42c408d 100644
--- a/src/tab.c
+++ b/src/tab.c
@@ -24,6 +24,7 @@
#include <gtk/gtk.h>
#include "tab.h"
+#include "tab-chrome.h"
MqTab *
mq_tab_new(gchar *uri)
@@ -31,9 +32,11 @@ mq_tab_new(gchar *uri)
MqTab *tab;
tab = malloc(sizeof(*tab));
+ tab->chrome = mq_tab_chrome_new(uri);
tab->container = gtk_grid_new();
- gtk_grid_attach(GTK_GRID(tab->container), gtk_label_new(uri),
+ gtk_grid_attach(GTK_GRID(tab->container),
+ mq_tab_chrome_get_container(tab->chrome),
0, 0, 1, 1);
gtk_grid_attach(GTK_GRID(tab->container), gtk_label_new("Body"),
0, 1, 1, 1);
diff --git a/src/tab.h b/src/tab.h
index 12afe7e..8024c52 100644
--- a/src/tab.h
+++ b/src/tab.h
@@ -19,8 +19,11 @@
* along with Marquee. If not, see <http://www.gnu.org/licenses/>.
*/
+#include "tab-chrome.h"
+
typedef struct {
- GtkWidget *container;
+ GtkWidget *container;
+ MqTabChrome *chrome;
} MqTab;
MqTab *