[libgda] GdaBrowser: improved icons usage



commit 9e6faafd60ea20c841a372517673099ef6273890
Author: Vivien Malerba <malerba gnome-db org>
Date:   Fri Aug 21 15:50:55 2009 +0200

    GdaBrowser: improved icons usage

 configure.in                                       |    1 +
 tools/browser/Makefile.am                          |    7 +-
 tools/browser/browser-stock-icons.c                |   89 +++++
 tools/browser/browser-stock-icons.h                |   37 ++
 tools/browser/browser-window.c                     |    3 +-
 tools/browser/data/Makefile.am                     |   85 +++++
 .../data/hicolor_actions_16x16_bookmark-view.png   |  Bin 0 -> 474 bytes
 .../data/hicolor_actions_16x16_history-view.png    |  Bin 0 -> 842 bytes
 .../data/hicolor_actions_22x22_bookmark-view.png   |  Bin 0 -> 595 bytes
 .../data/hicolor_actions_22x22_history-view.png    |  Bin 0 -> 1498 bytes
 .../data/hicolor_actions_24x24_bookmark-view.png   |  Bin 0 -> 585 bytes
 .../data/hicolor_actions_24x24_history-view.png    |  Bin 0 -> 1511 bytes
 .../data/hicolor_actions_32x32_bookmark-view.png   |  Bin 0 -> 934 bytes
 .../data/hicolor_actions_32x32_history-view.png    |  Bin 0 -> 2426 bytes
 .../hicolor_actions_scalable_bookmark-view.svg     |  355 ++++++++++++++++++++
 .../data/hicolor_actions_scalable_history-view.svg |  299 ++++++++++++++++
 tools/browser/main.c                               |    2 +
 tools/browser/schema-browser/table-info.c          |    3 +-
 18 files changed, 877 insertions(+), 4 deletions(-)
---
diff --git a/configure.in b/configure.in
index c014879..c785172 100644
--- a/configure.in
+++ b/configure.in
@@ -1725,6 +1725,7 @@ control-center/Makefile
 tools/Makefile
 tools/gda-sql-4.0.1:tools/gda-sql.1.in
 tools/browser/Makefile
+tools/browser/data/Makefile
 tools/browser/common/Makefile
 tools/browser/schema-browser/Makefile
 tools/browser/dummy-perspective/Makefile
diff --git a/tools/browser/Makefile.am b/tools/browser/Makefile.am
index ed63432..060a3ae 100644
--- a/tools/browser/Makefile.am
+++ b/tools/browser/Makefile.am
@@ -1,7 +1,7 @@
 bin_PROGRAMS=gda-browser-4.0
 noinst_PROGRAMS = favorites-test
 
-SUBDIRS = common schema-browser dummy-perspective
+SUBDIRS = data common schema-browser dummy-perspective
 if HAVE_GOOCANVAS
 SUBDIRS+=canvas
 noinst_PROGRAMS+=canvas-example
@@ -57,7 +57,10 @@ gda_browser_4_0_SOURCES=\
 	browser-connections-list.h \
 	main.c \
 	mgr-favorites.h \
-	mgr-favorites.c
+	mgr-favorites.c \
+	browser-stock-icons.c \
+	browser-stock-icons.h
+
 
 $(OBJECTS): marshal.c marshal.h
 
diff --git a/tools/browser/browser-stock-icons.c b/tools/browser/browser-stock-icons.c
new file mode 100644
index 0000000..2887e10
--- /dev/null
+++ b/tools/browser/browser-stock-icons.c
@@ -0,0 +1,89 @@
+/*
+ *  Copyright © 2002 Jorn Baayen
+ *  Copyright © 2009 Vivien Malerba <malerba nome-db org>
+ *
+ *  This program 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 2, or (at your option)
+ *  any later version.
+ *
+ *  This program 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 this program; if not, write to the Free Software
+ *  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+#include <gtk/gtk.h>
+#include <glib.h>
+#include <stdio.h>
+#include <string.h>
+#include <glib/gi18n.h>
+
+#include "browser-stock-icons.h"
+#include <binreloc/gda-binreloc.h>
+
+void
+browser_stock_icons_init (void)
+{
+	GtkIconFactory *factory;
+	GtkIconSet *icon_set;
+	GtkIconSource *icon_source;
+	int i;
+
+	const char *icon_theme_items[] =
+	{
+		STOCK_NEW_WINDOW,
+		STOCK_ADD_BOOKMARK,
+	};
+
+	static const GtkStockItem items[] =
+	{
+		{ BROWSER_STOCK_HISTORY,	N_("History"),		0, 0, NULL },
+		{ BROWSER_STOCK_BOOKMARKS, N_("Bookmarks"),	0, 0, NULL },
+	};
+
+	factory = gtk_icon_factory_new ();
+
+	for (i = 0; i < (int) G_N_ELEMENTS (items); i++)
+	{
+		icon_source = gtk_icon_source_new ();
+		gtk_icon_source_set_icon_name (icon_source, items[i].stock_id);
+
+		icon_set = gtk_icon_set_new ();
+		gtk_icon_set_add_source (icon_set, icon_source);
+		gtk_icon_source_free (icon_source);
+
+		gtk_icon_factory_add (factory, items[i].stock_id, icon_set);
+		gtk_icon_set_unref (icon_set);
+	}
+
+	gtk_stock_add_static (items, G_N_ELEMENTS (items));
+
+	for (i = 0; i < (int) G_N_ELEMENTS (icon_theme_items); i++)
+	{
+		icon_source = gtk_icon_source_new ();
+		gtk_icon_source_set_icon_name (icon_source, icon_theme_items[i]);
+
+		icon_set = gtk_icon_set_new ();
+		gtk_icon_set_add_source (icon_set, icon_source);
+		gtk_icon_source_free (icon_source);
+
+		gtk_icon_factory_add (factory, icon_theme_items[i], icon_set);
+		gtk_icon_set_unref (icon_set);
+	}
+
+	gtk_icon_factory_add_default (factory);
+	g_object_unref (factory);
+
+	/* GtkIconTheme will then look in Browser custom hicolor dir
+	 * for icons as well as the standard search paths
+	 */
+	/* FIXME: multi-head! */
+	gchar *path;
+	path = gda_gbr_get_file_path (GDA_DATA_DIR, "libgda", "icons", NULL);
+	gtk_icon_theme_append_search_path (gtk_icon_theme_get_default (), path);
+}
diff --git a/tools/browser/browser-stock-icons.h b/tools/browser/browser-stock-icons.h
new file mode 100644
index 0000000..021030e
--- /dev/null
+++ b/tools/browser/browser-stock-icons.h
@@ -0,0 +1,37 @@
+/*
+ *  Copyright © 2002 Jorn Baayen
+ *  Copyright © 2009 Vivien Malerba <malerba nome-db org>
+ *
+ *  This program 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 2, or (at your option)
+ *  any later version.
+ *
+ *  This program 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 this program; if not, write to the Free Software
+ *  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+#ifndef BROWSER_STOCK_ICONS_H
+#define BROWSER_STOCK_ICONS_H
+
+G_BEGIN_DECLS
+
+#define BROWSER_STOCK_HISTORY         "history-view"
+#define BROWSER_STOCK_BOOKMARKS       "bookmark-view"
+
+/* Named icons defined in fd.o Icon Naming Spec */
+#define STOCK_NEW_WINDOW           "window-new"
+#define STOCK_ADD_BOOKMARK         "bookmark-new"
+#define STOCK_PRINT_SETUP          "document-page-setup"
+
+void browser_stock_icons_init (void);
+
+G_END_DECLS
+
+#endif
diff --git a/tools/browser/browser-window.c b/tools/browser/browser-window.c
index 99ccdf8..3631581 100644
--- a/tools/browser/browser-window.c
+++ b/tools/browser/browser-window.c
@@ -28,6 +28,7 @@
 #include "browser-connection.h"
 #include "browser-connections-list.h"
 #include "browser-spinner.h"
+#include "browser-stock-icons.h"
 
 /*
  * structure representing a 'tab' in a window
@@ -207,7 +208,7 @@ static const GtkActionEntry ui_actions[] = {
         { "Quit", GTK_STOCK_QUIT, "_Quit", NULL, "Quit", G_CALLBACK (quit_cb)},
         { "Perspective", NULL, "_Perspective", NULL, "Perspective", NULL },
         { "Window", NULL, "_Window", NULL, "Window", NULL },
-        { "WindowNew", GTK_STOCK_NEW, "_New window", NULL, "Open a new window for current connection", G_CALLBACK (window_new_cb)},
+        { "WindowNew", STOCK_NEW_WINDOW, "_New window", NULL, "Open a new window for current connection", G_CALLBACK (window_new_cb)},
         { "WindowNewOthers", NULL, "New window for _connection", NULL, "Open a new window for a connection", NULL},
         { "WindowClose", GTK_STOCK_CLOSE, "_Close", "", "Close this window", G_CALLBACK (window_close_cb)},
         { "Help", NULL, "_Help", NULL, "Help", NULL },
diff --git a/tools/browser/data/Makefile.am b/tools/browser/data/Makefile.am
new file mode 100644
index 0000000..eb220ae
--- /dev/null
+++ b/tools/browser/data/Makefile.am
@@ -0,0 +1,85 @@
+NULL =
+
+public_icons_themes = \
+	hicolor	\
+	$(NULL)
+
+public_icons = \
+	$(NULL)
+
+private_icons = \
+	hicolor_actions_16x16_bookmark-view.png \
+	hicolor_actions_16x16_history-view.png \
+	hicolor_actions_22x22_bookmark-view.png \
+	hicolor_actions_22x22_history-view.png \
+	hicolor_actions_24x24_bookmark-view.png \
+	hicolor_actions_24x24_history-view.png \
+	hicolor_actions_32x32_bookmark-view.png \
+	hicolor_actions_32x32_history-view.png \
+	hicolor_actions_scalable_bookmark-view.svg \
+	hicolor_actions_scalable_history-view.svg \
+	$(NULL)
+
+noinst_DATA = \
+	$(NULL)
+
+EXTRA_DIST = \
+	$(public_icons)		\
+	$(private_icons)	\
+	$(noinst_DATA)		\
+	$(NULL)
+
+###############################################################################
+
+gtk_update_icon_cache = gtk-update-icon-cache -f -t
+
+update-icon-cache:
+	@-if test -z "$(DESTDIR)"; then \
+		echo "Updating Gtk icon cache."; \
+		for theme in $(public_icons_themes); do \
+			$(gtk_update_icon_cache) $(datadir)/icons/$$theme; \
+		done; \
+	else \
+		echo "*** Icon cache not updated.  After (un)install, run this:"; \
+		for theme in $(public_icons_themes); do \
+			echo "***   $(gtk_update_icon_cache) $(datadir)/icons/$$theme"; \
+		done; \
+	fi
+
+install-icons:
+	for icon in $(public_icons); do \
+		THEME=`echo $$icon | cut -d_ -f1`; \
+		CONTEXT=`echo $$icon | cut -d_ -f2`; \
+		SIZE=`echo $$icon | cut -d_ -f3`; \
+		ICONFILE=`echo $$icon | cut -d_ -f4`; \
+		mkdir -p $(DESTDIR)$(datadir)/icons/$$THEME/$$SIZE/$$CONTEXT; \
+		$(INSTALL_DATA) $(srcdir)/$$icon $(DESTDIR)$(datadir)/icons/$$THEME/$$SIZE/$$CONTEXT/$$ICONFILE; \
+	done; \
+	for icon in $(private_icons); do \
+		THEME=`echo $$icon | cut -d_ -f1`; \
+		CONTEXT=`echo $$icon | cut -d_ -f2`; \
+		SIZE=`echo $$icon | cut -d_ -f3`; \
+		ICONFILE=`echo $$icon | cut -d_ -f4`; \
+		mkdir -p $(DESTDIR)$(pkgdatadir)/icons/$$THEME/$$SIZE/$$CONTEXT; \
+		$(INSTALL_DATA) $(srcdir)/$$icon $(DESTDIR)$(pkgdatadir)/icons/$$THEME/$$SIZE/$$CONTEXT/$$ICONFILE; \
+	done
+
+uninstall-icons:
+	-for icon in $(public_icons); do \
+		THEME=`echo $$icon | cut -d_ -f1`; \
+		CONTEXT=`echo $$icon | cut -d_ -f2`; \
+		SIZE=`echo $$icon | cut -d_ -f3`; \
+		ICONFILE=`echo $$icon | cut -d_ -f4`; \
+		rm -f $(DESTDIR)$(datadir)/icons/$$THEME/$$SIZE/$$CONTEXT/$$ICONFILE; \
+	done; \
+	for icon in $(private_icons); do \
+		THEME=`echo $$icon | cut -d_ -f1`; \
+		CONTEXT=`echo $$icon | cut -d_ -f2`; \
+		SIZE=`echo $$icon | cut -d_ -f3`; \
+		ICONFILE=`echo $$icon | cut -d_ -f4`; \
+		rm -f $(DESTDIR)$(pkgdatadir)/icons/$$THEME/$$SIZE/$$CONTEXT/$$ICONFILE; \
+	done
+
+install-data-local: install-icons update-icon-cache
+
+uninstall-local: uninstall-icons update-icon-cache
diff --git a/tools/browser/data/hicolor_actions_16x16_bookmark-view.png b/tools/browser/data/hicolor_actions_16x16_bookmark-view.png
new file mode 100644
index 0000000..7817a0f
Binary files /dev/null and b/tools/browser/data/hicolor_actions_16x16_bookmark-view.png differ
diff --git a/tools/browser/data/hicolor_actions_16x16_history-view.png b/tools/browser/data/hicolor_actions_16x16_history-view.png
new file mode 100644
index 0000000..63e1bc8
Binary files /dev/null and b/tools/browser/data/hicolor_actions_16x16_history-view.png differ
diff --git a/tools/browser/data/hicolor_actions_22x22_bookmark-view.png b/tools/browser/data/hicolor_actions_22x22_bookmark-view.png
new file mode 100644
index 0000000..3c94640
Binary files /dev/null and b/tools/browser/data/hicolor_actions_22x22_bookmark-view.png differ
diff --git a/tools/browser/data/hicolor_actions_22x22_history-view.png b/tools/browser/data/hicolor_actions_22x22_history-view.png
new file mode 100644
index 0000000..c57a140
Binary files /dev/null and b/tools/browser/data/hicolor_actions_22x22_history-view.png differ
diff --git a/tools/browser/data/hicolor_actions_24x24_bookmark-view.png b/tools/browser/data/hicolor_actions_24x24_bookmark-view.png
new file mode 100644
index 0000000..a2b5dd4
Binary files /dev/null and b/tools/browser/data/hicolor_actions_24x24_bookmark-view.png differ
diff --git a/tools/browser/data/hicolor_actions_24x24_history-view.png b/tools/browser/data/hicolor_actions_24x24_history-view.png
new file mode 100644
index 0000000..7174be0
Binary files /dev/null and b/tools/browser/data/hicolor_actions_24x24_history-view.png differ
diff --git a/tools/browser/data/hicolor_actions_32x32_bookmark-view.png b/tools/browser/data/hicolor_actions_32x32_bookmark-view.png
new file mode 100644
index 0000000..3b96164
Binary files /dev/null and b/tools/browser/data/hicolor_actions_32x32_bookmark-view.png differ
diff --git a/tools/browser/data/hicolor_actions_32x32_history-view.png b/tools/browser/data/hicolor_actions_32x32_history-view.png
new file mode 100644
index 0000000..275789f
Binary files /dev/null and b/tools/browser/data/hicolor_actions_32x32_history-view.png differ
diff --git a/tools/browser/data/hicolor_actions_scalable_bookmark-view.svg b/tools/browser/data/hicolor_actions_scalable_bookmark-view.svg
new file mode 100644
index 0000000..3f87fd1
--- /dev/null
+++ b/tools/browser/data/hicolor_actions_scalable_bookmark-view.svg
@@ -0,0 +1,355 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/";
+   xmlns:cc="http://web.resource.org/cc/";
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#";
+   xmlns:svg="http://www.w3.org/2000/svg";
+   xmlns="http://www.w3.org/2000/svg";
+   xmlns:xlink="http://www.w3.org/1999/xlink";
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd";
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape";
+   width="48"
+   height="48"
+   id="svg4908"
+   sodipodi:version="0.32"
+   inkscape:version="0.44+devel"
+   sodipodi:docbase="/home/andreas/project/misc icons/48x48/actions"
+   sodipodi:docname="bookmark-view.svg"
+   inkscape:output_extension="org.inkscape.output.svg.inkscape"
+   inkscape:export-filename="/home/andreas/project/misc icons/32x32/actions/bookmark-view.png"
+   inkscape:export-xdpi="90"
+   inkscape:export-ydpi="90"
+   version="1.0"
+   sodipodi:modified="true">
+  <defs
+     id="defs4910">
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient2833">
+      <stop
+         style="stop-color:white;stop-opacity:1;"
+         offset="0"
+         id="stop2835" />
+      <stop
+         style="stop-color:white;stop-opacity:0.56273764"
+         offset="1"
+         id="stop2837" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient2833"
+       id="linearGradient2839"
+       x1="13.46875"
+       y1="3.0304594"
+       x2="13.46875"
+       y2="5.5014644"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       id="linearGradient5345">
+      <stop
+         style="stop-color:#c78c2b;stop-opacity:1;"
+         offset="0"
+         id="stop5347" />
+      <stop
+         id="stop7129"
+         offset="0"
+         style="stop-color:#d9a752;stop-opacity:1;" />
+      <stop
+         style="stop-color:#e5c184;stop-opacity:1"
+         offset="1"
+         id="stop5349" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient5345"
+       id="linearGradient5351"
+       x1="17.9375"
+       y1="6.0630388"
+       x2="17.948223"
+       y2="3.1438448"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.9308123,0,0,1.0671146,11.281619,3.373487)" />
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient5060"
+       id="radialGradient5031"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(-2.774389,0,0,1.969706,112.7623,-872.8854)"
+       cx="605.71429"
+       cy="486.64789"
+       fx="605.71429"
+       fy="486.64789"
+       r="117.14286" />
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient5060">
+      <stop
+         style="stop-color:black;stop-opacity:1;"
+         offset="0"
+         id="stop5062" />
+      <stop
+         style="stop-color:black;stop-opacity:0;"
+         offset="1"
+         id="stop5064" />
+    </linearGradient>
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient5060"
+       id="radialGradient5029"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(2.774389,0,0,1.969706,-1891.633,-872.8854)"
+       cx="605.71429"
+       cy="486.64789"
+       fx="605.71429"
+       fy="486.64789"
+       r="117.14286" />
+    <linearGradient
+       id="linearGradient5048">
+      <stop
+         style="stop-color:black;stop-opacity:0;"
+         offset="0"
+         id="stop5050" />
+      <stop
+         id="stop5056"
+         offset="0.5"
+         style="stop-color:black;stop-opacity:1;" />
+      <stop
+         style="stop-color:black;stop-opacity:0;"
+         offset="1"
+         id="stop5052" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient5048"
+       id="linearGradient5027"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(2.774389,0,0,1.969706,-1892.179,-872.8854)"
+       x1="302.85715"
+       y1="366.64789"
+       x2="302.85715"
+       y2="609.50507" />
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient6232">
+      <stop
+         style="stop-color:#f0f0ef;stop-opacity:1"
+         offset="0"
+         id="stop6234" />
+      <stop
+         style="stop-color:#eaeae7;stop-opacity:1"
+         offset="1"
+         id="stop6236" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient6212">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="0"
+         id="stop6214" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:0;"
+         offset="1"
+         id="stop6216" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient6212"
+       id="linearGradient6218"
+       x1="10.875"
+       y1="7.78125"
+       x2="0.71875"
+       y2="8"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(3.2641657,0,0,3.4545453,-1.3020677,-5.5909086)" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient6232"
+       id="linearGradient6238"
+       x1="7.6382079"
+       y1="8.3582602"
+       x2="10.358378"
+       y2="12.182442"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(2.683685,0,0,3.0769234,1.5865706,-2.1923068)" />
+  </defs>
+  <sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="1"
+     inkscape:cx="33.595504"
+     inkscape:cy="29.311858"
+     inkscape:current-layer="layer1"
+     showgrid="false"
+     inkscape:grid-bbox="true"
+     inkscape:document-units="px"
+     inkscape:window-width="1674"
+     inkscape:window-height="970"
+     inkscape:window-x="0"
+     inkscape:window-y="25"
+     width="48px"
+     height="48px"
+     showguides="true"
+     inkscape:guide-bbox="true" />
+  <metadata
+     id="metadata4913">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage"; />
+        <dc:title>View Bookmark</dc:title>
+        <dc:date>December 2006</dc:date>
+        <dc:creator>
+          <cc:Agent>
+            <dc:title>Andreas Nilsson</dc:title>
+          </cc:Agent>
+        </dc:creator>
+        <dc:subject>
+          <rdf:Bag>
+            <rdf:li>bookmark</rdf:li>
+          </rdf:Bag>
+        </dc:subject>
+        <cc:license
+           rdf:resource="http://creativecommons.org/licenses/GPL/2.0/"; />
+        <dc:source>http://www.gnome.org</dc:source>
+      </cc:Work>
+      <cc:License
+         rdf:about="http://creativecommons.org/licenses/GPL/2.0/";>
+        <cc:permits
+           rdf:resource="http://web.resource.org/cc/Reproduction"; />
+        <cc:permits
+           rdf:resource="http://web.resource.org/cc/Distribution"; />
+        <cc:requires
+           rdf:resource="http://web.resource.org/cc/Notice"; />
+        <cc:permits
+           rdf:resource="http://web.resource.org/cc/DerivativeWorks"; />
+        <cc:requires
+           rdf:resource="http://web.resource.org/cc/ShareAlike"; />
+        <cc:requires
+           rdf:resource="http://web.resource.org/cc/SourceCode"; />
+      </cc:License>
+    </rdf:RDF>
+  </metadata>
+  <g
+     id="layer1"
+     inkscape:label="Layer 1"
+     inkscape:groupmode="layer">
+    <g
+       style="display:inline"
+       id="g5022"
+       transform="matrix(2.1670245e-2,0,0,1.4992695e-2,43.274287,42.087489)">
+      <rect
+         y="-150.69685"
+         x="-1559.2523"
+         height="478.35718"
+         width="1339.6335"
+         id="rect4173"
+         style="opacity:0.39195981;color:#000000;fill:url(#linearGradient5027);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible" />
+      <path
+         sodipodi:nodetypes="cccc"
+         id="path5058"
+         d="M -219.61876,-150.68038 C -219.61876,-150.68038 -219.61876,327.65041 -219.61876,327.65041 C -76.744594,328.55086 125.78146,220.48075 125.78138,88.454235 C 125.78138,-43.572302 -33.655436,-150.68036 -219.61876,-150.68038 z "
+         style="opacity:0.40206185;color:#000000;fill:url(#radialGradient5029);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible" />
+      <path
+         style="opacity:0.40206185;color:#000000;fill:url(#radialGradient5031);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible"
+         d="M -1559.2523,-150.68038 C -1559.2523,-150.68038 -1559.2523,327.65041 -1559.2523,327.65041 C -1702.1265,328.55086 -1904.6525,220.48075 -1904.6525,88.454235 C -1904.6525,-43.572302 -1745.2157,-150.68036 -1559.2523,-150.68038 z "
+         id="path5018"
+         sodipodi:nodetypes="cccc" />
+    </g>
+    <rect
+       style="opacity:1;fill:#eeeeec;fill-opacity:1;stroke:#7a7c78;stroke-width:0.99999994;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:0;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+       id="rect4918"
+       width="33.155689"
+       height="41"
+       x="10.344313"
+       y="2.5000002"
+       rx="0.48613596"
+       ry="0.48613593" />
+    <rect
+       style="opacity:1;fill:url(#linearGradient6238);fill-opacity:1;stroke:#7a7c78;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:0;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+       id="rect4916"
+       width="34.887901"
+       height="39.999996"
+       x="5.6120992"
+       y="5.5"
+       rx="0.44194174"
+       ry="0.4419418" />
+    <path
+       style="fill:none;fill-opacity:1;fill-rule:evenodd;stroke:#7a7c78;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+       d="M 37.025152,5.5 L 7.912989,5.4514152 C 7.912989,5.4514152 6.3393947,5.3197948 6.3752233,4.0479689 C 6.4110523,2.7761429 8.0381274,2.5018451 7.9842501,2.5018451 L 36.969331,2.5000003"
+       id="path4920"
+       sodipodi:nodetypes="cczcc" />
+    <path
+       style="fill:#555753;fill-opacity:1;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:0;stroke-dashoffset:0;stroke-opacity:1"
+       d="M 5,4 C 7.8890919,5.4674944 10.475361,4.8588996 12,5.0103236 L 12,46 L 5,46 L 5,4 z "
+       id="rect4922"
+       sodipodi:nodetypes="ccccc" />
+    <rect
+       style="opacity:0.44021738;fill:none;fill-opacity:1;stroke:url(#linearGradient6218);stroke-width:1.00000012;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:0;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+       id="rect5893"
+       width="32.641655"
+       height="38"
+       x="6.8583469"
+       y="6.4999995" />
+    <rect
+       style="opacity:1;fill:#eeeeec;fill-opacity:1;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:0;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+       id="rect5895"
+       width="19.776337"
+       height="1.5884314"
+       x="9.2399368"
+       y="3.2942157" />
+    <rect
+       style="opacity:1;fill:#babdb6;fill-opacity:1;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+       id="rect6220"
+       width="5.964601"
+       height="2"
+       x="6.035399"
+       y="3"
+       rx="0"
+       ry="0" />
+    <path
+       style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:0;stroke-dashoffset:0;stroke-opacity:1"
+       d="M 12,4.96875 L 12,4 L 42,4 L 42,43 L 41,43 L 41,5.0625 L 12,4.96875 z "
+       id="rect4945"
+       sodipodi:nodetypes="ccccccc" />
+    <path
+       style="fill:none;fill-opacity:1;fill-rule:evenodd;stroke:#555753;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+       d="M 9.6290662,5.5 L 7.7527058,5.4408977 C 7.7527058,5.4408977 5.4643132,5.2158442 5.5004229,3.9934114 C 5.536547,2.7704953 7.8788256,2.5022447 7.8245258,2.5022447 L 14.275051,2.5"
+       id="path6139"
+       sodipodi:nodetypes="cczcc" />
+    <rect
+       style="opacity:0.09239131;fill:#000000;fill-opacity:1;stroke:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+       id="rect4921"
+       width="1.8276633"
+       height="33.565617"
+       x="9"
+       y="9"
+       rx="0.91383165"
+       ry="0.91383165" />
+    <path
+       style="opacity:0.15;fill:#2e3436;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.99999994px;stroke-linecap:butt;stroke-linejoin:round;stroke-opacity:1;display:inline"
+       d="M 13.518215,4.986098 L 27.000001,4.986098 L 27.000001,25.928002 L 21.515645,19.234797 L 15.961211,26 L 15.961211,5.941904 C 15.961211,5.404299 14.435317,4.986098 13.518215,4.986098 z "
+       id="path7273"
+       sodipodi:nodetypes="ccccccc" />
+    <path
+       style="fill:url(#linearGradient5351);fill-opacity:1;fill-rule:evenodd;stroke:#8f5902;stroke-width:0.99999994px;stroke-linecap:butt;stroke-linejoin:round;stroke-opacity:1;display:inline"
+       d="M 15.018214,4.5 L 26.422874,4.5 C 27.994418,4.5 28.5,5.007391 28.5,6.470952 L 28.5,25.441904 L 23.015644,18.748699 L 17.46121,25.513902 L 17.508085,6.455806 C 17.508085,4.870633 15.935316,4.5 15.018214,4.5 z "
+       id="path4386"
+       sodipodi:nodetypes="cccccccc" />
+    <path
+       sodipodi:type="inkscape:offset"
+       inkscape:radius="-1.03125"
+       inkscape:original="M 10.03125 2.5 C 10.948352 2.5 12.5 2.883577 12.5 4.46875 L 12.46875 23.5 L 18.03125 16.75 L 23.5 23.4375 L 23.5 4.46875 C 23.5 3.0051883 23.009044 2.5 21.4375 2.5 L 10.03125 2.5 z "
+       style="opacity:0.6;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:url(#linearGradient2839);stroke-width:0.99999994px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline"
+       id="path1934"
+       d="M 13.25,3.53125 C 13.362221,3.8338001 13.53125,4.1151264 13.53125,4.46875 L 13.5,20.625 L 17.25,16.09375 C 17.445904,15.855316 17.738283,15.717133 18.046875,15.717133 C 18.355467,15.717133 18.647846,15.855316 18.84375,16.09375 L 22.46875,20.53125 L 22.46875,4.46875 C 22.46875,3.8522811 22.365083,3.7081684 22.34375,3.6875 C 22.322417,3.6668316 22.11277,3.53125 21.4375,3.53125 L 13.25,3.53125 z "
+       transform="translate(5.0000008,2.0000005)" />
+  </g>
+</svg>
diff --git a/tools/browser/data/hicolor_actions_scalable_history-view.svg b/tools/browser/data/hicolor_actions_scalable_history-view.svg
new file mode 100644
index 0000000..2253faf
--- /dev/null
+++ b/tools/browser/data/hicolor_actions_scalable_history-view.svg
@@ -0,0 +1,299 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/";
+   xmlns:cc="http://web.resource.org/cc/";
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#";
+   xmlns:svg="http://www.w3.org/2000/svg";
+   xmlns="http://www.w3.org/2000/svg";
+   xmlns:xlink="http://www.w3.org/1999/xlink";
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd";
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape";
+   width="48"
+   height="48"
+   id="svg4908"
+   sodipodi:version="0.32"
+   inkscape:version="0.44+devel"
+   sodipodi:docbase="/home/andreas/project/misc icons/48x48"
+   sodipodi:docname="history-view.svg"
+   inkscape:output_extension="org.inkscape.output.svg.inkscape"
+   inkscape:export-filename="/home/andreas/project/misc icons/48x48/history-view.png"
+   inkscape:export-xdpi="90"
+   inkscape:export-ydpi="90"
+   version="1.0"
+   sodipodi:modified="true">
+  <defs
+     id="defs4910">
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient5966">
+      <stop
+         style="stop-color:#b992b5;stop-opacity:1"
+         offset="0"
+         id="stop5968" />
+      <stop
+         style="stop-color:#9f6a9a;stop-opacity:1"
+         offset="1"
+         id="stop5970" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient5950">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="0"
+         id="stop5952" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:0;"
+         offset="1"
+         id="stop5954" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient6016">
+      <stop
+         style="stop-color:#2e3436;stop-opacity:1;"
+         offset="0"
+         id="stop6018" />
+      <stop
+         style="stop-color:#2e3436;stop-opacity:0;"
+         offset="1"
+         id="stop6020" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient6006">
+      <stop
+         style="stop-color:#000000;stop-opacity:1;"
+         offset="0"
+         id="stop6008" />
+      <stop
+         style="stop-color:#000000;stop-opacity:0;"
+         offset="1"
+         id="stop6010" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient5996">
+      <stop
+         style="stop-color:#fbfbfb;stop-opacity:1"
+         offset="0"
+         id="stop5998" />
+      <stop
+         style="stop-color:#eeeeeb;stop-opacity:1"
+         offset="1"
+         id="stop6000" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient5904">
+      <stop
+         style="stop-color:#458805;stop-opacity:1"
+         offset="0"
+         id="stop5906" />
+      <stop
+         style="stop-color:#4e9a06;stop-opacity:0;"
+         offset="1"
+         id="stop5908" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient4927">
+      <stop
+         style="stop-color:#73d216;stop-opacity:1"
+         offset="0"
+         id="stop4929" />
+      <stop
+         style="stop-color:#73d216;stop-opacity:0"
+         offset="1"
+         id="stop4931" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient4927"
+       id="linearGradient4933"
+       x1="6.0249262"
+       y1="1.3696808"
+       x2="8.2606611"
+       y2="0.72681355"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(3.03218,0,0,2.9952924,0.9505637,-0.1814891)" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient5904"
+       id="linearGradient5910"
+       x1="6.6962228"
+       y1="1.9076259"
+       x2="8.2979403"
+       y2="1.2053516"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(3.03218,0,0,2.9952924,0.9505637,-0.1814891)" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient6006"
+       id="linearGradient6012"
+       x1="7.6248617"
+       y1="7.2615581"
+       x2="11.62093"
+       y2="11.846261"
+       gradientUnits="userSpaceOnUse" />
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient6016"
+       id="radialGradient6022"
+       cx="10.027649"
+       cy="20.279253"
+       fx="10.027649"
+       fy="20.279253"
+       r="9.7227182"
+       gradientTransform="matrix(0.9258714,-1.5361435e-2,1.5723917e-3,0.1459351,0.7114489,16.780677)"
+       gradientUnits="userSpaceOnUse" />
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient5996"
+       id="radialGradient5922"
+       cx="-2.5654936"
+       cy="9.0937586"
+       fx="-2.5654936"
+       fy="9.0937586"
+       r="11.402698"
+       gradientTransform="matrix(0.8152377,-6.055326e-3,7.9368419e-3,1.0746812,-0.5349737,-0.7056208)"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient5950"
+       id="linearGradient5956"
+       x1="16.755621"
+       y1="8.725337"
+       x2="21.20932"
+       y2="5.454968"
+       gradientUnits="userSpaceOnUse" />
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient5966"
+       id="radialGradient5972"
+       cx="5.6802015"
+       cy="7.6162586"
+       fx="5.6802015"
+       fy="7.6162586"
+       r="6.2258395"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.0682627,1.0526238e-2,-1.0659674e-2,1.0794878,-0.3065591,-0.6651907)" />
+  </defs>
+  <sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="16"
+     inkscape:cx="24.685027"
+     inkscape:cy="18.13282"
+     inkscape:current-layer="layer1"
+     showgrid="false"
+     inkscape:grid-bbox="true"
+     inkscape:document-units="px"
+     inkscape:window-width="1674"
+     inkscape:window-height="970"
+     inkscape:window-x="0"
+     inkscape:window-y="25"
+     width="48px"
+     height="48px" />
+  <metadata
+     id="metadata4913">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage"; />
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <g
+     id="layer1"
+     inkscape:label="Layer 1"
+     inkscape:groupmode="layer">
+    <path
+       sodipodi:type="arc"
+       style="opacity:0.64673911;fill:url(#radialGradient6022);fill-opacity:1;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+       id="path6014"
+       sodipodi:cx="10.297242"
+       sodipodi:cy="19.436737"
+       sodipodi:rx="9.7227182"
+       sodipodi:ry="1.7235727"
+       d="M 20.01996 19.436737 A 9.7227182 1.7235727 0 1 1  0.57452393,19.436737 A 9.7227182 1.7235727 0 1 1  20.01996 19.436737 z"
+       transform="matrix(2.2627417,0,0,2.0306654,0.7000007,5.0304895)" />
+    <path
+       sodipodi:type="arc"
+       style="opacity:1;fill:url(#radialGradient5972);fill-opacity:1.0;stroke:#4d2c55;stroke-width:0.28314096;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:0;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+       id="path4916"
+       sodipodi:cx="6.8487844"
+       sodipodi:cy="9.5971832"
+       sodipodi:rx="6.084269"
+       sodipodi:ry="6.084269"
+       d="M 12.933053 9.5971832 A 6.084269 6.084269 0 1 1  0.7645154,9.5971832 A 6.084269 6.084269 0 1 1  12.933053 9.5971832 z"
+       transform="matrix(3.5299171,0,0,3.5337031,-0.198676,-8.9135956)" />
+    <path
+       sodipodi:type="arc"
+       style="opacity:1;fill:url(#radialGradient5922);fill-opacity:1;stroke:#5c3566;stroke-width:0.62410647;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+       id="path4945"
+       sodipodi:cx="-5.40625"
+       sodipodi:cy="6.5"
+       sodipodi:rx="10.90625"
+       sodipodi:ry="10.9375"
+       d="M 5.5 6.5 A 10.90625 10.9375 0 1 1  -16.3125,6.5 A 10.90625 10.9375 0 1 1  5.5 6.5 z"
+       transform="matrix(1.6045845,0,0,1.6,32.674785,14.6)" />
+    <path
+       sodipodi:type="arc"
+       style="opacity:1;fill:none;fill-opacity:1;stroke:#2e3436;stroke-width:1.62818301;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+       id="path5928"
+       sodipodi:cx="7.7407188"
+       sodipodi:cy="9.1034336"
+       sodipodi:rx="1.7520146"
+       sodipodi:ry="1.5131035"
+       d="M 9.4927335 9.1034336 A 1.7520146 1.5131035 0 1 1  5.9887042,9.1034336 A 1.7520146 1.5131035 0 1 1  9.4927335 9.1034336 z"
+       transform="matrix(1.1415429,0,0,1.3217865,14.163638,11.967205)" />
+    <path
+       sodipodi:type="arc"
+       style="opacity:0.25;fill:none;fill-opacity:1;stroke:#ffffff;stroke-width:0.29679355;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:0;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+       id="path5992"
+       sodipodi:cx="6.8487844"
+       sodipodi:cy="9.5971832"
+       sodipodi:rx="6.084269"
+       sodipodi:ry="6.084269"
+       d="M 12.933053 9.5971832 A 6.084269 6.084269 0 1 1  0.7645154,9.5971832 A 6.084269 6.084269 0 1 1  12.933053 9.5971832 z"
+       transform="matrix(3.3693448,0,0,3.3693448,0.924084,-7.3362191)" />
+    <path
+       sodipodi:type="arc"
+       style="opacity:0.10869565;fill:none;fill-opacity:1;stroke:url(#linearGradient6012);stroke-width:0.38598743;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+       id="path6004"
+       sodipodi:cx="10.75"
+       sodipodi:cy="10.8125"
+       sodipodi:rx="6.65625"
+       sodipodi:ry="6.09375"
+       d="M 17.40625 10.8125 A 6.65625 6.09375 0 1 1  4.09375,10.8125 A 6.65625 6.09375 0 1 1  17.40625 10.8125 z"
+       transform="matrix(2.4788732,0,0,2.7076923,-2.6478875,-4.2769229)" />
+    <path
+       style="fill:url(#linearGradient4933);fill-opacity:1;fill-rule:evenodd;stroke:url(#linearGradient5910);stroke-width:1px;stroke-linecap:butt;stroke-linejoin:round;stroke-opacity:1"
+       d="M 25.018493,1.3161571 C 14.115498,1.3987432 9.7239262,7.4474539 9.4509765,13.523835 L 4.3555149,13.523835 L 13.846363,24.484903 L 25.540108,13.523835 L 19.517955,13.525336 C 19.478332,7.6279619 26.070772,4.4262012 30.609072,4.1242437 C 41.134632,3.4239214 37.522736,9.5756093 37.677469,12.829313 C 38.139813,8.6313525 34.411046,1.2450118 25.018493,1.3161571 z "
+       id="path4918"
+       sodipodi:nodetypes="ccccccscc" />
+    <path
+       style="fill:none;fill-rule:evenodd;stroke:#2e3436;stroke-width:2.00000024;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+       d="M 34.125145,24.016319 L 26.230176,24.016319"
+       id="path5930"
+       sodipodi:nodetypes="cc" />
+    <path
+       style="fill:none;fill-rule:evenodd;stroke:#2e3436;stroke-width:1px;stroke-linecap:round;stroke-linejoin:miter;stroke-opacity:1"
+       d="M 21.125001,25.9375 L 14.5,32.5"
+       id="path5932"
+       sodipodi:nodetypes="cc" />
+    <path
+       style="opacity:0.33152173;fill:none;fill-rule:evenodd;stroke:url(#linearGradient5956);stroke-width:1.00000012px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+       d="M 26.984892,3.5726096 C 16.626821,0.41218618 10.191885,7.79254 10.329532,14.48294 L 6.5263507,14.575863 L 13.876831,23.117301 L 22.730183,14.661392 L 18.32422,14.573311 C 18.255397,11.104214 20.548439,5.8330994 26.984892,3.5726096 z "
+       id="path5970"
+       sodipodi:nodetypes="ccccccc" />
+  </g>
+</svg>
diff --git a/tools/browser/main.c b/tools/browser/main.c
index a89b9aa..7d584a0 100644
--- a/tools/browser/main.c
+++ b/tools/browser/main.c
@@ -29,6 +29,7 @@
 #include "browser-window.h"
 #include "login-dialog.h"
 #include "auth-dialog.h"
+#include "browser-stock-icons.h"
 
 /* options */
 gchar *perspective = NULL;
@@ -57,6 +58,7 @@ main (int argc, char *argv[])
 
 	gdaui_init ();
 	gtk_init (&argc, &argv);
+	browser_stock_icons_init ();
 
 	browser_core_set_default_factory (perspective);
 
diff --git a/tools/browser/schema-browser/table-info.c b/tools/browser/schema-browser/table-info.c
index 515de8b..35f308a 100644
--- a/tools/browser/schema-browser/table-info.c
+++ b/tools/browser/schema-browser/table-info.c
@@ -33,6 +33,7 @@
 #endif
 #include "schema-browser-perspective.h"
 #include "../browser-page.h"
+#include "../browser-stock-icons.h"
 
 struct _TableInfoPrivate {
 	BrowserConnection *bcnc;
@@ -441,7 +442,7 @@ action_add_to_fav_cb (GtkAction *action, TableInfo *tinfo)
 }
 
 static GtkActionEntry ui_actions[] = {
-	{ "AddToFav", GTK_STOCK_ADD, N_("_Favorite"), NULL, N_("Add table to favorites"),
+	{ "AddToFav", STOCK_ADD_BOOKMARK, N_("_Favorite"), NULL, N_("Add table to favorites"),
 	  G_CALLBACK (action_add_to_fav_cb)},
 };
 static const gchar *ui_actions_info =



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]