define new icons, add definitions for gtk and cocoa

Thu, 18 Jun 2026 17:55:52 +0200

author
Olaf Wintermann <olaf.wintermann@gmail.com>
date
Thu, 18 Jun 2026 17:55:52 +0200
changeset 1209
31b2b5a23062
parent 1208
6a1a43a1b526
child 1210
fd3a3d237ecc

define new icons, add definitions for gtk and cocoa

ui/common/icons.c file | annotate | diff | comparison | revisions
ui/ui/icons.h file | annotate | diff | comparison | revisions
--- a/ui/common/icons.c	Wed Jun 17 21:16:55 2026 +0200
+++ b/ui/common/icons.c	Thu Jun 18 17:55:52 2026 +0200
@@ -30,21 +30,47 @@
 
 const char* ui_icon_name(enum UiIconId icon_id) {
     switch(icon_id) {
-        case UI_ICON_ID_HOME        : return UI_ICON_HOME;
-        case UI_ICON_ID_NEW_WINDOW  : return UI_ICON_NEW_WINDOW;
-        case UI_ICON_ID_REFRESH     : return UI_ICON_REFRESH;
-        case UI_ICON_ID_NEW_FOLDER  : return UI_ICON_NEW_FOLDER;
-        case UI_ICON_ID_ADD         : return UI_ICON_ADD;
-        case UI_ICON_ID_UPLOAD      : return UI_ICON_UPLOAD;
-        case UI_ICON_ID_SAVE_LOCAL  : return UI_ICON_SAVE_LOCAL;
-        case UI_ICON_ID_DELETE      : return UI_ICON_DELETE;
-        case UI_ICON_ID_DOCK_LEFT   : return UI_ICON_DOCK_LEFT;
-        case UI_ICON_ID_DOCK_RIGHT  : return UI_ICON_DOCK_RIGHT;
-        case UI_ICON_ID_GO_BACK     : return UI_ICON_GO_BACK;
-        case UI_ICON_ID_GO_FORWARD  : return UI_ICON_GO_FORWARD;
-        case UI_ICON_ID_GO_UP       : return UI_ICON_GO_UP;
-        case UI_ICON_ID_GO_DOWN     : return UI_ICON_GO_DOWN;
-        case UI_ICON_ID_LIST        : return UI_ICON_LIST;
+        case UI_ICON_ID_HOME                 : return UI_ICON_HOME;
+        case UI_ICON_ID_NEW_WINDOW           : return UI_ICON_NEW_WINDOW;
+        case UI_ICON_ID_NEW_TAB              : return UI_ICON_NEW_TAB;
+        case UI_ICON_ID_NEW_FOLDER           : return UI_ICON_NEW_FOLDER;
+        case UI_ICON_ID_NEW_DOCUMENT         : return UI_ICON_NEW_DOCUMENT;
+        case UI_ICON_ID_NEW_APPOINTMENT      : return UI_ICON_NEW_APPOINTMENT;
+        case UI_ICON_ID_NEW_CHAT_MESSAGE     : return UI_ICON_NEW_CHAT_MESSAGE;
+        case UI_ICON_ID_NEW_CONTACT          : return UI_ICON_NEW_CONTACT;
+        case UI_ICON_ID_NEW_MAIL             : return UI_ICON_NEW_MAIL;
+        case UI_ICON_ID_ADD_BOOKMARK         : return UI_ICON_ADD_BOOKMARK;
+        case UI_ICON_ID_ADD_IMAGE            : return UI_ICON_ADD_IMAGE;
+        case UI_ICON_ID_ADD_LINK             : return UI_ICON_ADD_LINK;
+        case UI_ICON_ID_ADD_TEXT             : return UI_ICON_ADD_TEXT;
+        case UI_ICON_ID_ADD                  : return UI_ICON_ADD;
+        case UI_ICON_ID_REMOVE               : return UI_ICON_REMOVE;
+        case UI_ICON_ID_REFRESH              : return UI_ICON_REFRESH;
+        case UI_ICON_ID_UPLOAD               : return UI_ICON_UPLOAD;
+        case UI_ICON_ID_SAVE_LOCAL           : return UI_ICON_SAVE_LOCAL;
+        case UI_ICON_ID_EDIT_COPY            : return UI_ICON_EDIT_COPY;
+        case UI_ICON_ID_EDIT_CUT             : return UI_ICON_EDIT_CUT;
+        case UI_ICON_ID_EDIT_DELETE          : return UI_ICON_EDIT_DELETE;
+        case UI_ICON_ID_EDIT_PASTE           : return UI_ICON_EDIT_PASTE ;
+        case UI_ICON_ID_UNDO                 : return UI_ICON_UNDO;
+        case UI_ICON_ID_REDO                 : return UI_ICON_REDO;
+        case UI_ICON_ID_SIDEBAR_LEFT         : return UI_ICON_SIDEBAR_LEFT;
+        case UI_ICON_ID_SIDEBAR_RIGHT        : return UI_ICON_SIDEBAR_RIGHT;
+        case UI_ICON_ID_GO_BACK              : return UI_ICON_GO_BACK;
+        case UI_ICON_ID_GO_FORWARD           : return UI_ICON_GO_FORWARD ;
+        case UI_ICON_ID_GO_UP                : return UI_ICON_GO_UP;
+        case UI_ICON_ID_GO_DOWN              : return UI_ICON_GO_DOWN;
+        case UI_ICON_ID_VIEW_LIST            : return UI_ICON_VIEW_LIST;
+        case UI_ICON_ID_VIEW_GRID            : return UI_ICON_VIEW_GRID;
+        case UI_ICON_ID_VIEW_DUAL            : return UI_ICON_VIEW_DUAL;
+        case UI_ICON_ID_VIEW_FULLSCREEN      : return UI_ICON_VIEW_FULLSCREEN;
+        case UI_ICON_ID_VIEW_RESTORE         : return UI_ICON_VIEW_RESTORE;
+        case UI_ICON_ID_TEXT_BOLD            : return UI_ICON_TEXT_BOLD;
+        case UI_ICON_ID_TEXT_ITALIC          : return UI_ICON_TEXT_ITALIC;
+        case UI_ICON_ID_TEXT_UNDERLINE       : return UI_ICON_TEXT_UNDERLINE;
+        case UI_ICON_ID_LIST_BULLET          : return UI_ICON_LIST_BULLET ;
+        case UI_ICON_ID_LIST_ORDERED         : return UI_ICON_LIST_ORDERED;
+        case UI_ICON_ID_LIST_CHECK           : return UI_ICON_LIST_CHECK;
     }
     return NULL;
 }
--- a/ui/ui/icons.h	Wed Jun 17 21:16:55 2026 +0200
+++ b/ui/ui/icons.h	Thu Jun 18 17:55:52 2026 +0200
@@ -38,40 +38,92 @@
 #ifdef UI_GTK
     
 #define UI_ICON_HOME "go-home"
-#define UI_ICON_NEW_WINDOW "list-add"
+#define UI_ICON_NEW_WINDOW "window-new"
+#define UI_ICON_NEW_TAB "tab-new"
+#define UI_ICON_NEW_FOLDER "folder-new"
+#define UI_ICON_NEW_DOCUMENT "document-new"
+#define UI_ICON_NEW_APPOINTMENT "appointment-new"
+#define UI_ICON_NEW_CHAT_MESSAGE "chat-message-new"
+#define UI_ICON_NEW_CONTACT "contact-new"
+#define UI_ICON_NEW_MAIL "mail-message-new"
+#define UI_ICON_ADD_BOOKMARK "bookmark-new"
+#define UI_ICON_ADD_IMAGE "insert-image"
+#define UI_ICON_ADD_LINK "insert-link"
+#define UI_ICON_ADD_TEXT "insert-text"
+#define UI_ICON_ADD "list-add"
+#define UI_ICON_REMOVE "list-remove"
 #define UI_ICON_REFRESH "view-refresh"
-#define UI_ICON_NEW_FOLDER "folder-new"
-#define UI_ICON_ADD "document-new"
 #define UI_ICON_UPLOAD "document-open"
 #define UI_ICON_SAVE_LOCAL "document-save-as"
-#define UI_ICON_DELETE "edit-delete"
-#define UI_ICON_DOCK_LEFT ""
-#define UI_ICON_DOCK_RIGHT ""
+#define UI_ICON_EDIT_COPY "edit-copy"
+#define UI_ICON_EDIT_CUT "edit-cut"
+#define UI_ICON_EDIT_DELETE "edit-delete"
+#define UI_ICON_EDIT_PASTE "edit-paste"
+#define UI_ICON_UNDO "edit-undo"
+#define UI_ICON_REDO "edit-redo"
+#define UI_ICON_SIDEBAR_LEFT "sidebar-show"
+#define UI_ICON_SIDEBAR_RIGHT "sidebar-show-right"
 #define UI_ICON_GO_BACK "go-previous"
 #define UI_ICON_GO_FORWARD "go-next"
 #define UI_ICON_GO_UP "go-up"
 #define UI_ICON_GO_DOWN "go-down"
-#define UI_ICON_LIST "view-list"
+#define UI_ICON_VIEW_LIST "view-list"
+#define UI_ICON_VIEW_GRID "view-grid"
+#define UI_ICON_VIEW_DUAL "view-dual"
+#define UI_ICON_VIEW_FULLSCREEN "view-fullscreen"
+#define UI_ICON_VIEW_RESTORE "view-restore"
+#define UI_ICON_TEXT_BOLD "format-text-bold"
+#define UI_ICON_TEXT_ITALIC "format-text-italic"
+#define UI_ICON_TEXT_UNDERLINE "format-text-underline"
+#define UI_ICON_LIST_BULLET "view-list-bullet"
+#define UI_ICON_LIST_ORDERED "view-list-ordered"
+#define UI_ICON_LIST_CHECK "checkbox-checked"
     
 #endif /* UI_GTK */
     
 #ifdef UI_QT
     
 #define UI_ICON_HOME "go-home"
-#define UI_ICON_NEW_WINDOW "list-add"
+#define UI_ICON_NEW_WINDOW "window-new"
+#define UI_ICON_NEW_TAB "tab-new"
+#define UI_ICON_NEW_FOLDER "folder-new"
+#define UI_ICON_NEW_DOCUMENT "document-new"
+#define UI_ICON_NEW_APPOINTMENT "appointment-new"
+#define UI_ICON_NEW_CHAT_MESSAGE "chat-message-new"
+#define UI_ICON_NEW_CONTACT "contact-new"
+#define UI_ICON_NEW_MAIL "mail-message-new"
+#define UI_ICON_ADD_BOOKMARK "bookmark-new"
+#define UI_ICON_ADD_IMAGE "insert-image"
+#define UI_ICON_ADD_LINK "insert-link"
+#define UI_ICON_ADD_TEXT "insert-text"
+#define UI_ICON_ADD "list-add"
+#define UI_ICON_REMOVE "list-remove"
 #define UI_ICON_REFRESH "view-refresh"
-#define UI_ICON_NEW_FOLDER "folder-new"
-#define UI_ICON_ADD "document-new"
 #define UI_ICON_UPLOAD "document-open"
 #define UI_ICON_SAVE_LOCAL "document-save-as"
-#define UI_ICON_DELETE "edit-delete"
-#define UI_ICON_DOCK_LEFT ""
-#define UI_ICON_DOCK_RIGHT ""
+#define UI_ICON_EDIT_COPY "edit-copy"
+#define UI_ICON_EDIT_CUT "edit-cut"
+#define UI_ICON_EDIT_DELETE "edit-delete"
+#define UI_ICON_EDIT_PASTE "edit-paste"
+#define UI_ICON_UNDO "edit-undo"
+#define UI_ICON_REDO "edit-redo"
+#define UI_ICON_SIDEBAR_LEFT "sidebar-show"
+#define UI_ICON_SIDEBAR_RIGHT "sidebar-show-right"
 #define UI_ICON_GO_BACK "go-previous"
 #define UI_ICON_GO_FORWARD "go-next"
 #define UI_ICON_GO_UP "go-up"
 #define UI_ICON_GO_DOWN "go-down"
-#define UI_ICON_LIST "view-list"
+#define UI_ICON_VIEW_LIST "view-list"
+#define UI_ICON_VIEW_GRID "view-grid"
+#define UI_ICON_VIEW_DUAL "view-dual"
+#define UI_ICON_VIEW_FULLSCREEN "view-fullscreen"
+#define UI_ICON_VIEW_RESTORE "view-restore"
+#define UI_ICON_TEXT_BOLD "format-text-bold"
+#define UI_ICON_TEXT_ITALIC "format-text-italic"
+#define UI_ICON_TEXT_UNDERLINE "format-text-underline"
+#define UI_ICON_LIST_BULLET "view-list-bullet"
+#define UI_ICON_LIST_ORDERED "view-list-ordered"
+#define UI_ICON_LIST_CHECK "checkbox-checked"
     
 #endif /* UI_QT */
 
@@ -97,21 +149,47 @@
 
 #ifdef UI_COCOA
 
-#define UI_ICON_HOME "NSImageNameHomeTemplate"
-#define UI_ICON_NEW_WINDOW ""
-#define UI_ICON_REFRESH "NSImageNameRefreshTemplate"
-#define UI_ICON_NEW_FOLDER ""
-#define UI_ICON_ADD "NSImageNameAddTemplate"
-#define UI_ICON_UPLOAD ""
-#define UI_ICON_SAVE_LOCAL ""
-#define UI_ICON_DELETE ""
-#define UI_ICON_DOCK_LEFT ""
-#define UI_ICON_DOCK_RIGHT ""
-#define UI_ICON_GO_BACK "NSImageNameGoLeftTemplate"
-#define UI_ICON_GO_FORWARD "NSImageNameGoRightTemplate"
-#define UI_ICON_GO_UP ""
-#define UI_ICON_GO_DOWN ""
-#define UI_ICON_LIST ""
+#define UI_ICON_HOME "go-home"
+#define UI_ICON_NEW_WINDOW "macwindow.badge.plus"
+#define UI_ICON_NEW_TAB "plus.square"
+#define UI_ICON_NEW_FOLDER "folder.badge.plus"
+#define UI_ICON_NEW_DOCUMENT "document.badge.plus"
+#define UI_ICON_NEW_APPOINTMENT "calendar.badge.plus"
+#define UI_ICON_NEW_CHAT_MESSAGE "plus.bubble"
+#define UI_ICON_NEW_CONTACT "person.badge.plus"
+#define UI_ICON_NEW_MAIL "envelope.badge.plus"
+#define UI_ICON_ADD_BOOKMARK "book.badge.plus"
+#define UI_ICON_ADD_IMAGE "photo.badge.plus"
+#define UI_ICON_ADD_LINK "link.badge.plus"
+#define UI_ICON_ADD_TEXT "text.badge.plus"
+#define UI_ICON_ADD "plus"
+#define UI_ICON_REMOVE "minus"
+#define UI_ICON_REFRESH "arrow.clockwise"
+#define UI_ICON_UPLOAD "square.and.arrow.up"
+#define UI_ICON_SAVE_LOCAL "square.and.arrow.down"
+#define UI_ICON_EDIT_COPY "document.on.document"
+#define UI_ICON_EDIT_CUT "scissors"
+#define UI_ICON_EDIT_DELETE "minus.circle"
+#define UI_ICON_EDIT_PASTE "document.on.clipboard"
+#define UI_ICON_UNDO "arrow.uturn.backward"
+#define UI_ICON_REDO "arrow.uturn.forward"
+#define UI_ICON_SIDEBAR_LEFT "sidebar.left"
+#define UI_ICON_SIDEBAR_RIGHT "sidebar.right"
+#define UI_ICON_GO_BACK "chevron.left"
+#define UI_ICON_GO_FORWARD "chevron.right"
+#define UI_ICON_GO_UP "chevron.up"
+#define UI_ICON_GO_DOWN "chevron.down"
+#define UI_ICON_VIEW_LIST "list.bullet"
+#define UI_ICON_VIEW_GRID "square.grid.2x2"
+#define UI_ICON_VIEW_DUAL "rectangle.split.2x1"
+#define UI_ICON_VIEW_FULLSCREEN "arrow.up.left.and.arrow.down.right.rectangle"
+#define UI_ICON_VIEW_RESTORE "arrow.down.forward.and.arrow.up.backward.rectangle"
+#define UI_ICON_TEXT_BOLD "bold"
+#define UI_ICON_TEXT_ITALIC "italic"
+#define UI_ICON_TEXT_UNDERLINE "underline"
+#define UI_ICON_LIST_BULLET "list.bullet"
+#define UI_ICON_LIST_ORDERED "list.number"
+#define UI_ICON_LIST_CHECK "checklist"
 
 #endif /* UI_COCOA */
     
@@ -119,19 +197,45 @@
     
 #define UI_ICON_HOME ""
 #define UI_ICON_NEW_WINDOW ""
-#define UI_ICON_REFRESH ""
+#define UI_ICON_NEW_TAB ""
 #define UI_ICON_NEW_FOLDER ""
+#define UI_ICON_NEW_DOCUMENT ""
+#define UI_ICON_NEW_APPOINTMENT ""
+#define UI_ICON_NEW_CHAT_MESSAGE ""
+#define UI_ICON_NEW_CONTACT ""
+#define UI_ICON_NEW_MAIL ""
+#define UI_ICON_ADD_BOOKMARK ""
+#define UI_ICON_ADD_IMAGE ""
+#define UI_ICON_ADD_LINK ""
+#define UI_ICON_ADD_TEXT ""
 #define UI_ICON_ADD ""
+#define UI_ICON_REMOVE ""
+#define UI_ICON_REFRESH ""
 #define UI_ICON_UPLOAD ""
 #define UI_ICON_SAVE_LOCAL ""
-#define UI_ICON_DELETE ""
-#define UI_ICON_DOCK_LEFT ""
-#define UI_ICON_DOCK_RIGHT ""
+#define UI_ICON_EDIT_COPY ""
+#define UI_ICON_EDIT_CUT ""
+#define UI_ICON_EDIT_DELETE ""
+#define UI_ICON_EDIT_PASTE ""
+#define UI_ICON_UNDO ""
+#define UI_ICON_REDO ""
+#define UI_ICON_SIDEBAR_LEFT ""
+#define UI_ICON_SIDEBAR_RIGHT ""
 #define UI_ICON_GO_BACK ""
 #define UI_ICON_GO_FORWARD ""
 #define UI_ICON_GO_UP ""
-#define UI_ICON_GO_DOWN "" 
-#define UI_ICON_LIST ""
+#define UI_ICON_GO_DOWN ""
+#define UI_ICON_VIEW_LIST ""
+#define UI_ICON_VIEW_GRID ""
+#define UI_ICON_VIEW_DUAL ""
+#define UI_ICON_VIEW_FULLSCREEN ""
+#define UI_ICON_VIEW_RESTORE ""
+#define UI_ICON_TEXT_BOLD ""
+#define UI_ICON_TEXT_ITALIC ""
+#define UI_ICON_TEXT_UNDERLINE ""
+#define UI_ICON_LIST_BULLET ""
+#define UI_ICON_LIST_ORDERED ""
+#define UI_ICON_LIST_CHECK ""
     
 #endif /* UI_MOTIF */
     
@@ -139,39 +243,91 @@
     
 #define UI_ICON_HOME ""
 #define UI_ICON_NEW_WINDOW ""
-#define UI_ICON_REFRESH ""
+#define UI_ICON_NEW_TAB ""
 #define UI_ICON_NEW_FOLDER ""
+#define UI_ICON_NEW_DOCUMENT ""
+#define UI_ICON_NEW_APPOINTMENT ""
+#define UI_ICON_NEW_CHAT_MESSAGE ""
+#define UI_ICON_NEW_CONTACT ""
+#define UI_ICON_NEW_MAIL ""
+#define UI_ICON_ADD_BOOKMARK ""
+#define UI_ICON_ADD_IMAGE ""
+#define UI_ICON_ADD_LINK ""
+#define UI_ICON_ADD_TEXT ""
 #define UI_ICON_ADD ""
+#define UI_ICON_REMOVE ""
+#define UI_ICON_REFRESH ""
 #define UI_ICON_UPLOAD ""
 #define UI_ICON_SAVE_LOCAL ""
-#define UI_ICON_DELETE ""
-#define UI_ICON_DOCK_LEFT ""
-#define UI_ICON_DOCK_RIGHT ""
+#define UI_ICON_EDIT_COPY ""
+#define UI_ICON_EDIT_CUT ""
+#define UI_ICON_EDIT_DELETE ""
+#define UI_ICON_EDIT_PASTE ""
+#define UI_ICON_UNDO ""
+#define UI_ICON_REDO ""
+#define UI_ICON_SIDEBAR_LEFT ""
+#define UI_ICON_SIDEBAR_RIGHT ""
 #define UI_ICON_GO_BACK ""
 #define UI_ICON_GO_FORWARD ""
 #define UI_ICON_GO_UP ""
-#define UI_ICON_GO_DOWN "" 
-#define UI_ICON_LIST ""
+#define UI_ICON_GO_DOWN ""
+#define UI_ICON_VIEW_LIST ""
+#define UI_ICON_VIEW_GRID ""
+#define UI_ICON_VIEW_DUAL ""
+#define UI_ICON_VIEW_FULLSCREEN ""
+#define UI_ICON_VIEW_RESTORE ""
+#define UI_ICON_TEXT_BOLD ""
+#define UI_ICON_TEXT_ITALIC ""
+#define UI_ICON_TEXT_UNDERLINE ""
+#define UI_ICON_LIST_BULLET ""
+#define UI_ICON_LIST_ORDERED ""
+#define UI_ICON_LIST_CHECK ""
     
 #endif /* UI_MOTIF */
     
     
 enum UiIconId {
-    UI_ICON_ID_HOME = 0,
+    UI_ICON_ID_HOME,
     UI_ICON_ID_NEW_WINDOW,
+    UI_ICON_ID_NEW_TAB,
+    UI_ICON_ID_NEW_FOLDER,
+    UI_ICON_ID_NEW_DOCUMENT,
+    UI_ICON_ID_NEW_APPOINTMENT,
+    UI_ICON_ID_NEW_CHAT_MESSAGE,
+    UI_ICON_ID_NEW_CONTACT,
+    UI_ICON_ID_NEW_MAIL,
+    UI_ICON_ID_ADD_BOOKMARK,
+    UI_ICON_ID_ADD_IMAGE,
+    UI_ICON_ID_ADD_LINK,
+    UI_ICON_ID_ADD_TEXT,
+    UI_ICON_ID_ADD,
+    UI_ICON_ID_REMOVE,
     UI_ICON_ID_REFRESH,
-    UI_ICON_ID_NEW_FOLDER,
-    UI_ICON_ID_ADD,
     UI_ICON_ID_UPLOAD,
     UI_ICON_ID_SAVE_LOCAL,
-    UI_ICON_ID_DELETE,
-    UI_ICON_ID_DOCK_LEFT,
-    UI_ICON_ID_DOCK_RIGHT,
+    UI_ICON_ID_EDIT_COPY,
+    UI_ICON_ID_EDIT_CUT,
+    UI_ICON_ID_EDIT_DELETE,
+    UI_ICON_ID_EDIT_PASTE,
+    UI_ICON_ID_UNDO,
+    UI_ICON_ID_REDO,
+    UI_ICON_ID_SIDEBAR_LEFT,
+    UI_ICON_ID_SIDEBAR_RIGHT,
     UI_ICON_ID_GO_BACK,
     UI_ICON_ID_GO_FORWARD,
     UI_ICON_ID_GO_UP,
     UI_ICON_ID_GO_DOWN,
-    UI_ICON_ID_LIST
+    UI_ICON_ID_VIEW_LIST,
+    UI_ICON_ID_VIEW_GRID,
+    UI_ICON_ID_VIEW_DUAL,
+    UI_ICON_ID_VIEW_FULLSCREEN,
+    UI_ICON_ID_VIEW_RESTORE,
+    UI_ICON_ID_TEXT_BOLD,
+    UI_ICON_ID_TEXT_ITALIC,
+    UI_ICON_ID_TEXT_UNDERLINE,
+    UI_ICON_ID_LIST_BULLET,
+    UI_ICON_ID_LIST_ORDERED,
+    UI_ICON_ID_LIST_CHECK
 };
     
 UIEXPORT UiIcon* ui_icon(const char* name, size_t size);

mercurial