From f996c36f5c8453783c077a896208a3e58adc7f77 Mon Sep 17 00:00:00 2001 From: Olaf Wintermann Date: Wed, 14 May 2025 20:42:04 +0200 Subject: [PATCH] simplify New Notebook dialog, remove option to create a new group --- application/window.c | 46 ++------------------------------------------ application/window.h | 4 +--- 2 files changed, 3 insertions(+), 47 deletions(-) diff --git a/application/window.c b/application/window.c index 9428d6b..4aeb970 100644 --- a/application/window.c +++ b/application/window.c @@ -257,25 +257,6 @@ void window_navigate(MainWindow *window, NavStack *nav) { -static void action_nnd_new_group(UiEvent *event, void *userdata) { - NewNotebookDialog *wdata = event->window; - if(event->set) { - return; - } - - ui_set(wdata->gs_new_group, event->intval); - ui_set(wdata->gn_new_group, event->intval); - if(event->intval) { - wdata->new_group = 1; - ui_set_group(event->obj->ctx, NEWNOTEBOOK_DIALOG_STATE_NEW_GROUP); - ui_unset_group(event->obj->ctx, NEWNOTEBOOK_DIALOG_STATE_SELECT_GROUP); - } else { - wdata->new_group = 0; - ui_set_group(event->obj->ctx, NEWNOTEBOOK_DIALOG_STATE_SELECT_GROUP); - ui_unset_group(event->obj->ctx, NEWNOTEBOOK_DIALOG_STATE_NEW_GROUP); - } -} - typedef struct NotebookCreatedResult { MainWindow *window; Resource *parent; @@ -344,41 +325,23 @@ void action_notebook_add(UiEvent *event, void *userdata) { .rbutton4 = "Cancel", .default_button = 1, .onclick = action_nnd_button); - // TODO: enable when creating new groups is implemented - //ui_set_group(obj->ctx, NEWNOTEBOOK_DIALOG_STATE_SELECT_GROUP); NewNotebookDialog *wdata = ui_malloc(obj->ctx, sizeof(NewNotebookDialog)); wdata->parent = event->window; wdata->groups = ui_list_new(obj->ctx, NULL); - wdata->group_name = ui_string_new(obj->ctx, NULL); wdata->notebook_name = ui_string_new(obj->ctx, NULL); - wdata->gs_new_group = ui_int_new(obj->ctx, NULL); - wdata->gn_new_group = ui_int_new(obj->ctx, NULL); wdata->new_group = 0; obj->window = wdata; // Dialog UI ui_grid(obj, .margin = 10, .columnspacing = 10, .rowspacing = 10, .def_vfill = TRUE, .fill = UI_ON) { UIWIDGET gs_label = ui_rlabel(obj, .label = "Group"); - UIWIDGET gs_list = ui_combobox(obj, .list = wdata->groups, .getvalue = nnd_group_value, .hexpand = TRUE, .hfill = TRUE); - UIWIDGET gs_button = ui_togglebutton(obj, .label = "New Group", .value = wdata->gs_new_group, .onchange = action_nnd_new_group); + UIWIDGET gs_list = ui_combobox(obj, .list = wdata->groups, .getvalue = nnd_group_value); ui_newline(obj); - ui_widget_set_groups(obj->ctx, gs_label, (ui_enablefunc)ui_set_visible, NEWNOTEBOOK_DIALOG_STATE_SELECT_GROUP, -1); - ui_widget_set_groups(obj->ctx, gs_list, (ui_enablefunc)ui_set_visible, NEWNOTEBOOK_DIALOG_STATE_SELECT_GROUP, -1); - ui_widget_set_groups(obj->ctx, gs_button, (ui_enablefunc)ui_set_visible, NEWNOTEBOOK_DIALOG_STATE_SELECT_GROUP, -1); - - UIWIDGET gn_label = ui_rlabel(obj, .label = "Group"); - UIWIDGET gn_textfield = ui_textfield(obj, .value = wdata->group_name, .hexpand = TRUE, .hfill = TRUE); - UIWIDGET gn_button = ui_togglebutton(obj, .label = "New Group", .value = wdata->gn_new_group, .onchange = action_nnd_new_group); - ui_newline(obj); - - ui_widget_set_groups(obj->ctx, gn_label, (ui_enablefunc)ui_set_visible, NEWNOTEBOOK_DIALOG_STATE_NEW_GROUP, -1); - ui_widget_set_groups(obj->ctx, gn_textfield, (ui_enablefunc)ui_set_visible, NEWNOTEBOOK_DIALOG_STATE_NEW_GROUP, -1); - ui_widget_set_groups(obj->ctx, gn_button, (ui_enablefunc)ui_set_visible, NEWNOTEBOOK_DIALOG_STATE_NEW_GROUP, -1); ui_newline(obj); ui_rlabel(obj, .label = "Name"); - ui_textfield(obj, .value = wdata->notebook_name, .colspan = 2, .hfill = TRUE); + ui_textfield(obj, .value = wdata->notebook_name, .hfill = TRUE, .hexpand = TRUE); } // Dialog Data @@ -390,11 +353,6 @@ void action_notebook_add(UiEvent *event, void *userdata) { ui_list_append(wdata->groups, group); } ui_list_update(wdata->groups); - } else { - // if no notebooks are available, show the textfield for new groups - ui_set(wdata->gs_new_group, 1); - ui_set_group(event->obj->ctx, NEWNOTEBOOK_DIALOG_STATE_NEW_GROUP); - ui_unset_group(event->obj->ctx, NEWNOTEBOOK_DIALOG_STATE_SELECT_GROUP); } } diff --git a/application/window.h b/application/window.h index dc06ae5..d0f2eb3 100644 --- a/application/window.h +++ b/application/window.h @@ -35,9 +35,7 @@ #ifdef __cplusplus extern "C" { #endif - -#define NEWNOTEBOOK_DIALOG_STATE_SELECT_GROUP 1 -#define NEWNOTEBOOK_DIALOG_STATE_NEW_GROUP 2 + #define ACTION_DATA_INSERT_LIST_ORDERED (void*)(intptr_t)1 #define ACTION_DATA_INSERT_LIST_UNORDERED (void*)(intptr_t)0 -- 2.43.5