path: root/frontends/gtk/toolbar_items.h
diff options
authorVincent Sanders <>2019-09-15 22:20:49 +0100
committerDaniel Silverstone <>2019-09-21 10:53:41 +0100
commit11aa682154af6e0d4c7920bb2983df5a6ded126f (patch)
tree9a689239267870e8eec7205c8f5820dc927dbbb8 /frontends/gtk/toolbar_items.h
parent9cd9a403e6ee69c78a575872bd399c633862d5aa (diff)
construct all toolbar items from data table
This changes toolbar item constuction to use toolbar_items.h instead of explicit macros. Additionally all remenants of old stock item themeing are done away with and GTK icon names are used instead.
Diffstat (limited to 'frontends/gtk/toolbar_items.h')
1 files changed, 63 insertions, 60 deletions
diff --git a/frontends/gtk/toolbar_items.h b/frontends/gtk/toolbar_items.h
index 661cbef1d..7a35112d6 100644
--- a/frontends/gtk/toolbar_items.h
+++ b/frontends/gtk/toolbar_items.h
@@ -80,72 +80,75 @@ typedef enum {
* Item fields are:
- * identifier enum
- * name
- * initial sensitivity
- * y/n - if there is a toolbar click signal handler
- * y/n/p - if there is a menu activate signal handler and if it calls the
- * toolbar click handler.
+ * - item identifier (enum value)
+ * - name (identifier)
+ * - initial sensitivity (true/false)
+ * - if there is a toolbar click signal handler (y/n) and it is available in
+ * the toolbar as a button (b, implies y)
+ * - if there is a menu activate signal handler (y/n) and it calls the
+ toolbar click handler directly. (p, implies y)
+ * - item label as a netsurf message (identifier)
+ * - icon image name ("string")
-#define TOOLBAR_ITEM(a, b, c, d, e)
+#define TOOLBAR_ITEM(a, b, c, d, e, f, g)
-TOOLBAR_ITEM(BACK_BUTTON, back, false, y, p)
-TOOLBAR_ITEM(HISTORY_BUTTON, history, true, y, n)
-TOOLBAR_ITEM(FORWARD_BUTTON, forward, false, y, p)
-TOOLBAR_ITEM(STOP_BUTTON, stop, false, y, p)
-TOOLBAR_ITEM(RELOAD_BUTTON, reload, true, y, p)
-TOOLBAR_ITEM(HOME_BUTTON, home, true, y, p)
-TOOLBAR_ITEM(URL_BAR_ITEM, url_bar, true, n, n)
-TOOLBAR_ITEM(WEBSEARCH_ITEM, websearch, true, n, n)
-TOOLBAR_ITEM(THROBBER_ITEM, throbber, true, n, n)
-TOOLBAR_ITEM(NEWWINDOW_BUTTON, newwindow, true, y, p)
-TOOLBAR_ITEM(NEWTAB_BUTTON, newtab, true, y, p)
-TOOLBAR_ITEM(OPENFILE_BUTTON, openfile, true, y, p)
-TOOLBAR_ITEM(CLOSETAB_BUTTON, closetab, false, n, y)
-TOOLBAR_ITEM(CLOSEWINDOW_BUTTON, closewindow, true, y, p)
-TOOLBAR_ITEM(SAVEPAGE_BUTTON, savepage, true, y, p)
-TOOLBAR_ITEM(PDF_BUTTON, pdf, false, y, p)
-TOOLBAR_ITEM(PLAINTEXT_BUTTON, plaintext, true, y, p)
-TOOLBAR_ITEM(DRAWFILE_BUTTON, drawfile, false, n, n)
-TOOLBAR_ITEM(POSTSCRIPT_BUTTON, postscript, false, n, n)
-TOOLBAR_ITEM(PRINTPREVIEW_BUTTON, printpreview, false, n, p)
-TOOLBAR_ITEM(PRINT_BUTTON, print, true, y, p)
-TOOLBAR_ITEM(QUIT_BUTTON, quit, true, y, p)
-TOOLBAR_ITEM(CUT_BUTTON, cut, true, y, p)
-TOOLBAR_ITEM(COPY_BUTTON, copy, true, y, p)
-TOOLBAR_ITEM(PASTE_BUTTON, paste, true, y, p)
-TOOLBAR_ITEM(DELETE_BUTTON, delete, false, y, p)
-TOOLBAR_ITEM(SELECTALL_BUTTON, selectall, true, y, p)
-TOOLBAR_ITEM(FIND_BUTTON, find, true, n, y)
-TOOLBAR_ITEM(PREFERENCES_BUTTON, preferences, true, y, p)
-TOOLBAR_ITEM(ZOOMPLUS_BUTTON, zoomplus, true, y, p)
-TOOLBAR_ITEM(ZOOMMINUS_BUTTON, zoomminus, true, y, p)
-TOOLBAR_ITEM(ZOOMNORMAL_BUTTON, zoomnormal, true, y, p)
-TOOLBAR_ITEM(FULLSCREEN_BUTTON, fullscreen, true, y, p)
-TOOLBAR_ITEM(VIEWSOURCE_BUTTON, viewsource, true, y, p)
-TOOLBAR_ITEM(DOWNLOADS_BUTTON, downloads, true, y, p)
-TOOLBAR_ITEM(SAVEWINDOWSIZE_BUTTON, savewindowsize, true, y, p)
-TOOLBAR_ITEM(TOGGLEDEBUGGING_BUTTON, toggledebugging, true, y, p)
-TOOLBAR_ITEM(SAVEBOXTREE_BUTTON, debugboxtree, true, y, p)
-TOOLBAR_ITEM(SAVEDOMTREE_BUTTON, debugdomtree, true, y, p)
-TOOLBAR_ITEM(LOCALHISTORY_BUTTON, localhistory, true, y, p)
-TOOLBAR_ITEM(GLOBALHISTORY_BUTTON, globalhistory, true, y, p)
-TOOLBAR_ITEM(ADDBOOKMARKS_BUTTON, addbookmarks, true, y, p)
-TOOLBAR_ITEM(SHOWBOOKMARKS_BUTTON, showbookmarks, true, y, p)
-TOOLBAR_ITEM(SHOWCOOKIES_BUTTON, showcookies, true, y, p)
-TOOLBAR_ITEM(OPENLOCATION_BUTTON, openlocation, true, y, p)
-TOOLBAR_ITEM(NEXTTAB_BUTTON, nexttab, false, n, y)
-TOOLBAR_ITEM(PREVTAB_BUTTON, prevtab, false, n, y)
-TOOLBAR_ITEM(CONTENTS_BUTTON, contents, true, y, p)
-TOOLBAR_ITEM(GUIDE_BUTTON, guide, true, y, p)
-TOOLBAR_ITEM(INFO_BUTTON, info, true, y, p)
-TOOLBAR_ITEM(ABOUT_BUTTON, about, true, y, p)
-TOOLBAR_ITEM(OPENMENU_BUTTON, openmenu, true, y, n)
-TOOLBAR_ITEM(CUSTOMIZE_BUTTON, cutomize, true, y, p)
+TOOLBAR_ITEM(BACK_BUTTON, back, false, b, p, gtkBack, "go-previous")
+TOOLBAR_ITEM(HISTORY_BUTTON, history, true, y, n, , "local-history")
+TOOLBAR_ITEM(FORWARD_BUTTON, forward, false, b, p, gtkForward, "go-next")
+TOOLBAR_ITEM(STOP_BUTTON, stop, false, b, p, gtkStop, NSGTK_STOCK_STOP)
+TOOLBAR_ITEM(URL_BAR_ITEM, url_bar, true, n, n, , NULL)
+TOOLBAR_ITEM(WEBSEARCH_ITEM, websearch, true, n, n, , NULL)
+TOOLBAR_ITEM(THROBBER_ITEM, throbber, true, n, n, , NULL)
+TOOLBAR_ITEM(NEWWINDOW_BUTTON, newwindow, true, b, p, gtkNewWindow, "document-new")
+TOOLBAR_ITEM(NEWTAB_BUTTON, newtab, true, b, p, gtkNewTab, NSGTK_STOCK_ADD)
+TOOLBAR_ITEM(OPENFILE_BUTTON, openfile, true, b, p, gtkOpenFile, "document-open")
+TOOLBAR_ITEM(CLOSETAB_BUTTON, closetab, false, n, y, , "window-close")
+TOOLBAR_ITEM(CLOSEWINDOW_BUTTON, closewindow, true, y, p, , "window-close")
+TOOLBAR_ITEM(SAVEPAGE_BUTTON, savepage, true, b, p, gtkSavePage, "text-html")
+TOOLBAR_ITEM(PDF_BUTTON, pdf, false, y, p, , "x-office-document")
+TOOLBAR_ITEM(PLAINTEXT_BUTTON, plaintext, true, b, p, gtkPlainText, "text-x-generic")
+TOOLBAR_ITEM(DRAWFILE_BUTTON, drawfile, false, n, n, , NULL)
+TOOLBAR_ITEM(POSTSCRIPT_BUTTON, postscript, false, n, n, , NULL)
+TOOLBAR_ITEM(PRINTPREVIEW_BUTTON, printpreview, false, n, p, gtkPrintPreview, "gtk-print-preview")
+TOOLBAR_ITEM(PRINT_BUTTON, print, true, b, p, gtkPrint, "document-print")
+TOOLBAR_ITEM(QUIT_BUTTON, quit, true, b, p, gtkQuitMenu, "application-exit")
+TOOLBAR_ITEM(CUT_BUTTON, cut, true, b, p, gtkCut, "edit-cut")
+TOOLBAR_ITEM(COPY_BUTTON, copy, true, b, p, gtkCopy, "edit-copy")
+TOOLBAR_ITEM(PASTE_BUTTON, paste, true, b, p, gtkPaste, "edit-paste")
+TOOLBAR_ITEM(DELETE_BUTTON, delete, false, b, p, gtkDelete, "edit-delete")
+TOOLBAR_ITEM(SELECTALL_BUTTON, selectall, true, b, p, gtkSelectAll, "edit-select-all")
+TOOLBAR_ITEM(FIND_BUTTON, find, true, n, y, gtkFind, "edit-find")
+TOOLBAR_ITEM(PREFERENCES_BUTTON, preferences, true, b, p, gtkPreferences, "preferences-system")
+TOOLBAR_ITEM(ZOOMPLUS_BUTTON, zoomplus, true, b, p, gtkZoomPlus, "gtk-zoom-in")
+TOOLBAR_ITEM(ZOOMMINUS_BUTTON, zoomminus, true, b, p, gtkZoomMinus, "gtk-zoom-out")
+TOOLBAR_ITEM(ZOOMNORMAL_BUTTON, zoomnormal, true, b, p, gtkZoomNormal, "gtk-zoom-100")
+TOOLBAR_ITEM(FULLSCREEN_BUTTON, fullscreen, true, b, p, gtkFullScreen, "gtk-fullscreen")
+TOOLBAR_ITEM(VIEWSOURCE_BUTTON, viewsource, true, b, p, gtkPageSource, "gtk-index")
+TOOLBAR_ITEM(DOWNLOADS_BUTTON, downloads, true, b, p, gtkDownloads, NSGTK_STOCK_SAVE_AS)
+TOOLBAR_ITEM(SAVEWINDOWSIZE_BUTTON, savewindowsize, true, y, p, gtkSaveWindowSize, NULL)
+TOOLBAR_ITEM(TOGGLEDEBUGGING_BUTTON, toggledebugging, true, y, p, gtkToggleDebugging, NULL)
+TOOLBAR_ITEM(SAVEBOXTREE_BUTTON, debugboxtree, true, y, p, gtkDebugBoxTree, NULL)
+TOOLBAR_ITEM(SAVEDOMTREE_BUTTON, debugdomtree, true, y, p, gtkDebugDomTree, NULL)
+TOOLBAR_ITEM(LOCALHISTORY_BUTTON, localhistory, true, y, p, , NULL)
+TOOLBAR_ITEM(GLOBALHISTORY_BUTTON, globalhistory, true, y, p, gtkGlobalHistory, NULL)
+TOOLBAR_ITEM(ADDBOOKMARKS_BUTTON, addbookmarks, true, y, p, gtkAddBookMarks, NULL)
+TOOLBAR_ITEM(SHOWBOOKMARKS_BUTTON, showbookmarks, true, b, p, gtkShowBookMarks, "user-bookmarks")
+TOOLBAR_ITEM(SHOWCOOKIES_BUTTON, showcookies, true, y, p, gtkShowCookies, NULL)
+TOOLBAR_ITEM(OPENLOCATION_BUTTON, openlocation, true, y, p, gtkOpenLocation, NULL)
+TOOLBAR_ITEM(NEXTTAB_BUTTON, nexttab, false, n, y, gtkNextTab, "media-skip-forward")
+TOOLBAR_ITEM(PREVTAB_BUTTON, prevtab, false, n, y, gtkPrevTab, "media-skip-backward")
+TOOLBAR_ITEM(CONTENTS_BUTTON, contents, true, y, p, gtkContents, "gtk-help")
+TOOLBAR_ITEM(GUIDE_BUTTON, guide, true, y, p, gtkGuide, "gtk-help")
+TOOLBAR_ITEM(INFO_BUTTON, info, true, y, p, gtkUserInformation, "dialog-information")
+TOOLBAR_ITEM(ABOUT_BUTTON, about, true, b, p, gtkAbout, "help-about")
+TOOLBAR_ITEM(CUSTOMIZE_BUTTON, cutomize, true, y, p, , NULL)