]> uap-core.de Git - note.git/commitdiff
extend notebook config dialog
authorOlaf Wintermann <olaf.wintermann@gmail.com>
Tue, 27 May 2025 18:28:27 +0000 (20:28 +0200)
committerOlaf Wintermann <olaf.wintermann@gmail.com>
Tue, 27 May 2025 18:28:27 +0000 (20:28 +0200)
application/window.c
application/window.h

index bd39ef6ccc879d83ce40cf475663b2dd39d90bc1..756f610a81a71b8288cfbce5d712f379af3b8e78 100644 (file)
@@ -366,32 +366,49 @@ void action_notebook_config(UiEvent *event, void *userdata) {
     
     NotebookConfigDialog *wdata = ui_malloc(obj->ctx, sizeof(NotebookConfigDialog));
     wdata->groups = ui_list_new(obj->ctx, NULL);
-    
-    ui_hbox(obj, .margin = 10, .spacing = 10, .fill = UI_ON) {
-        ui_vbox(obj, .fill = UI_OFF) {
-            ui_listview(obj, .list = wdata->groups, .fill = UI_ON);
-            ui_hbox(obj, .fill = UI_OFF) {
-                ui_button(obj, .label = "Add");
-                ui_button(obj, .label = "Remove");
-                ui_button(obj, .label = "Delete");
-                ui_button(obj, .label = "Up");
-                ui_button(obj, .label = "Down");
+    wdata->types = ui_list_new(obj->ctx, NULL);
+    wdata->repositories = ui_list_new(obj->ctx, NULL);
+    
+    ui_grid(obj, .margin = 10, .columnspacing = 10, .rowspacing = 10, .fill = UI_ON) {
+        ui_tabview(obj, .hfill = TRUE, .hexpand = TRUE, .vfill = TRUE, .vexpand = TRUE) {
+            ui_tab(obj, "Groups") {
+                ui_hbox(obj, .margin = 10, .spacing = 10, .fill = UI_ON) {
+                    ui_vbox(obj, .fill = UI_OFF) {
+                        ui_listview(obj, .list = wdata->groups, .fill = UI_ON);
+                        ui_hbox(obj, .fill = UI_OFF) {
+                            ui_button(obj, .icon = UI_ICON_NEW_FOLDER);
+                            ui_button(obj, .icon = UI_ICON_DELETE);
+                            ui_button(obj, .icon = "go-up");
+                            ui_button(obj, .icon = "go-down");
+                        }
+                    }
+
+                    ui_grid(obj, .columnspacing = 10, .rowspacing = 10, .fill = UI_ON, .def_vfill = TRUE) {
+                        ui_rlabel(obj, .label = "Name");
+                        ui_textfield(obj, .varname = "todo1");
+                        ui_newline(obj);
+
+                        ui_rlabel(obj, .label = "Type");
+                        ui_combobox(obj, .list = wdata->types);
+                        ui_newline(obj);
+
+                        ui_rlabel(obj, .label = "Repository");
+                        ui_combobox(obj, .list = wdata->repositories);
+                        ui_newline(obj);
+                    }
+                }
+            }
+            ui_tab(obj, "Notebooks") {
+                
+            }
+            ui_tab(obj, "Repositories") {
+                
             }
-        }
-        
-        ui_grid(obj, .columnspacing = 10, .rowspacing = 10, .fill = UI_ON) {
-            ui_rlabel(obj, .label = "Name");
-            ui_textfield(obj, .varname = "todo1");
-            ui_newline(obj);
-            
-            ui_rlabel(obj, .label = "Type");
-            ui_newline(obj);
-            
-            ui_rlabel(obj, .label = "Repository");
-            ui_newline(obj);
         }
     }
     
+    
+    
     ui_show(obj);
 }
 
index 1b697a6362f49160b5866ea52b7915871462ba7c..97f810c16bb33ea9d55463139387d1fb70724e4e 100644 (file)
@@ -51,6 +51,8 @@ typedef struct NewNotebookDialog {
 typedef struct NotebookConfigDialog {
     MainWindow *parent;
     UiList *groups;
+    UiList *types;
+    UiList *repositories;
 } NotebookConfigDialog;
     
 void window_create();