ui/gtk/container.c

changeset 987
77c5e7cadf96
parent 941
e7459e9fbed2
--- a/ui/gtk/container.c	Thu Dec 11 20:07:16 2025 +0100
+++ b/ui/gtk/container.c	Thu Dec 11 20:58:33 2025 +0100
@@ -112,6 +112,21 @@
     return add;
 }
 
+/* -------------------- Custom Container -------------------- */
+
+void ui_custom_container_add(UiContainerPrivate *ct, GtkWidget *widget, UiLayout *layout) {
+    UiCustomContainer *custom = (UiCustomContainer*)ct;
+    custom->add(custom->obj, ct->widget, widget, custom->userdata);
+}
+
+void ui_custom_container_create(UiObject *obj, UIWIDGET widget, ui_addwidget_func add_child, void *userdata) {
+    UiCustomContainer *container = cxZalloc(obj->ctx->allocator, sizeof(UiCustomContainer));
+    container->container.add = ui_custom_container_add;
+    container->container.widget = widget;
+    container->add = add_child;
+    container->userdata = userdata;
+    uic_object_push_container(obj, (UiContainerX*)container);
+}
 
 /* -------------------- Box Container -------------------- */
 UiContainerX* ui_box_container(UiObject *obj, GtkWidget *box, UiSubContainerType type) {
@@ -985,6 +1000,8 @@
             GtkWidget *box = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 6);
             hb->centerbox = box;
             UI_HEADERBAR_SET_TITLE_WIDGET(ct->widget, box);
+            UI_HEADERBAR_SHOW_TITLE_WIDGET(ct->widget, TRUE);
+            UI_HEADERBAR_SETTINGS(ct->widget);
         }
         BOX_ADD(hb->centerbox, widget);
     }

mercurial