ui/gtk/toolbar.c

changeset 1028
925a345ea298
parent 1015
b459361d98ad
--- a/ui/gtk/toolbar.c	Sat Dec 27 22:05:02 2025 +0100
+++ b/ui/gtk/toolbar.c	Sat Dec 27 22:18:48 2025 +0100
@@ -44,7 +44,7 @@
 
 #if UI_GTK2 || UI_GTK3
 
-GtkWidget* ui_create_toolbar(UiObject *obj) {
+GtkWidget* ui_create_toolbar(UiObject *obj, UiBool sidebar) {
     GtkWidget *toolbar = gtk_toolbar_new();
 #ifdef UI_GTK3
     gtk_style_context_add_class(
@@ -56,25 +56,24 @@
     CxList *left_defaults = uic_get_toolbar_defaults(UI_TOOLBAR_LEFT);
     CxList *center_defaults = uic_get_toolbar_defaults(UI_TOOLBAR_CENTER);
     CxList *right_defaults = uic_get_toolbar_defaults(UI_TOOLBAR_RIGHT);
+    CxList *sidebar_left = uic_get_toolbar_defaults(UI_TOOLBAR_SIDEBAR_LEFT);
+    CxList *sidebar_right = uic_get_toolbar_defaults(UI_TOOLBAR_SIDEBAR_RIGHT);
+    CxList *rightpanel_left = uic_get_toolbar_defaults(UI_TOOLBAR_RIGHTPANEL_LEFT);
+    CxList *rightpanel_center = uic_get_toolbar_defaults(UI_TOOLBAR_RIGHTPANEL_CENTER);
+    CxList *rightpanel_right = uic_get_toolbar_defaults(UI_TOOLBAR_RIGHTPANEL_RIGHT);
+    
+    if(sidebar) {
+        ui_toolbar_add_items(obj, toolbar, items, sidebar_left);
+        ui_toolbar_add_items(obj, toolbar, items, sidebar_right);
+    }
     
     ui_toolbar_add_items(obj, toolbar, items, left_defaults);
     ui_toolbar_add_items(obj, toolbar, items, center_defaults);
     ui_toolbar_add_items(obj, toolbar, items, right_defaults);
     
-    /*
-    GtkToolbar *tb = GTK_TOOLBAR(toolbar);
-    CxIterator i = cxListIterator(defaults);
-    cx_foreach(char *, def, i) {
-        UiToolItemI *item = cxMapGet(toolbar_items, def);
-        if(item) {
-            item->add_to(tb, item, obj);
-        } else if(!strcmp(def, "@separator")) {
-            gtk_toolbar_insert(tb, gtk_separator_tool_item_new(), -1);
-        } else {
-            fprintf(stderr, "UI Error: Unknown toolbar item: %s\n", def);
-        }
-    }
-    */
+    ui_toolbar_add_items(obj, toolbar, items, rightpanel_left);
+    ui_toolbar_add_items(obj, toolbar, items, rightpanel_center);
+    ui_toolbar_add_items(obj, toolbar, items, rightpanel_right);
     
     return toolbar;
 }

mercurial