From 3a6cf45392810f86df5747da8ba3676c4e546c0a Mon Sep 17 00:00:00 2001 From: Ivan Yarcev Date: Mon, 25 Nov 2024 10:46:32 +0600 Subject: [PATCH 1/5] Command fixes --- source/ubl-settings-update.c | 1 - source/ubl-settings-update.h | 3 ++- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/source/ubl-settings-update.c b/source/ubl-settings-update.c index b94d67d..51ac740 100644 --- a/source/ubl-settings-update.c +++ b/source/ubl-settings-update.c @@ -44,7 +44,6 @@ void yon_save_interface( main_window *widgets){ case 3:yon_config_register(AUTOUPDATE_mode,AUTOUPDATE_mode_command,"system"); break; } - if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->UpdateIntervalDefaultCheck))){ yon_config_remove_by_key(AUTOUPDATE_interval); } else { diff --git a/source/ubl-settings-update.h b/source/ubl-settings-update.h index 89c569e..e2eee1a 100644 --- a/source/ubl-settings-update.h +++ b/source/ubl-settings-update.h @@ -75,8 +75,9 @@ #define AUTOUPDATE_interval "AUTOUPDATE[interval]" #define AUTOUPDATE_interval_command "ubconfig --source global get [update] AUTOUPDATE[interval]" #define AUTOUPDATE_repos "AUTOUPDATE[repos]" -#define AUTOUPDATE_repos_command "bconfig --source global get [update] AUTOUPDATE[repos]" +#define AUTOUPDATE_repos_command "ubconfig --source global get [update] AUTOUPDATE[repos]" #define AUTOUPDATE_timestamp "AUTOUPDATE[timestamp]" +#define AUTOUPDATE_timestamp_command "ubconfig --source global get [update] AUTOUPDATE[timestamp]" typedef char* string; string version_application; From 5182513387ad1ce584cf9310d1fff36f0d40cb8a Mon Sep 17 00:00:00 2001 From: Ivan Yarcev Date: Mon, 25 Nov 2024 11:35:05 +0600 Subject: [PATCH 2/5] Fixed update interval combo and spin sensitiveness --- source/ubl-settings-update.c | 5 +++++ ubl-settings-update.glade | 2 ++ 2 files changed, 7 insertions(+) diff --git a/source/ubl-settings-update.c b/source/ubl-settings-update.c index 51ac740..455f7ef 100644 --- a/source/ubl-settings-update.c +++ b/source/ubl-settings-update.c @@ -346,6 +346,7 @@ void yon_interface_update(main_window *widgets){ } autoupdate_config = config(AUTOUPDATE_interval); if (!yon_char_is_empty(autoupdate_config)){ + gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(widgets->UpdateIntervalDefaultCheck),0); if (strstr(autoupdate_config,"min")){ gtk_combo_box_set_active(GTK_COMBO_BOX(widgets->UpdateIntervalCombo),0); } else if (autoupdate_config[strlen(autoupdate_config)-1]=='h'){ @@ -356,6 +357,8 @@ void yon_interface_update(main_window *widgets){ gtk_combo_box_set_active(GTK_COMBO_BOX(widgets->UpdateIntervalCombo),3); } gtk_spin_button_set_value(GTK_SPIN_BUTTON(widgets->UpdateIntervalSpin),atol(autoupdate_config)); + } else { + gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(widgets->UpdateIntervalDefaultCheck),1); } } @@ -1518,6 +1521,8 @@ void yon_main_window_complete(main_window *widgets){ g_signal_connect(G_OBJECT(widgets->UpdateRepoListCheck),"toggled",G_CALLBACK(yon_gtk_widget_set_sensitive_from_toggle_button),widgets->UpdateRepoTree); g_signal_connect(G_OBJECT(widgets->PublicationCheck),"toggled",G_CALLBACK(yon_gtk_widget_set_sensitive_from_toggle_button),widgets->PublicationTree); g_signal_connect(G_OBJECT(widgets->PublicationCheck),"toggled",G_CALLBACK(yon_gtk_widget_set_sensitive_from_toggle_button),widgets->PublicationUpdateButton); + g_signal_connect(G_OBJECT(widgets->UpdateIntervalDefaultCheck),"toggled",G_CALLBACK(yon_gtk_widget_set_sensitive_from_toggle_button_inversed),widgets->UpdateIntervalCombo); + g_signal_connect(G_OBJECT(widgets->UpdateIntervalDefaultCheck),"toggled",G_CALLBACK(yon_gtk_widget_set_sensitive_from_toggle_button_inversed),widgets->UpdateIntervalSpin); GList *list = gtk_tree_view_get_columns(GTK_TREE_VIEW(widgets->WebPublicationTree)); diff --git a/ubl-settings-update.glade b/ubl-settings-update.glade index 524c01f..89e2950 100644 --- a/ubl-settings-update.glade +++ b/ubl-settings-update.glade @@ -326,6 +326,7 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. True + False True adjustment1 @@ -338,6 +339,7 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. True + False False 0 From 46b3efa1cc6eb7c1556584a6cd23b4408c5ae82e Mon Sep 17 00:00:00 2001 From: Ivan Yarcev Date: Mon, 25 Nov 2024 15:22:14 +0600 Subject: [PATCH 3/5] Repo parameters saving and loaing fixes --- source/ubl-settings-update.c | 62 ++++++++++++++++++++++++++++-- ubl-settings-update-repo-add.glade | 2 +- 2 files changed, 59 insertions(+), 5 deletions(-) diff --git a/source/ubl-settings-update.c b/source/ubl-settings-update.c index 455f7ef..55dcc36 100644 --- a/source/ubl-settings-update.c +++ b/source/ubl-settings-update.c @@ -737,10 +737,52 @@ void on_repo_edit(GtkWidget *,main_window *widgets){ if (size>1&&!yon_char_is_empty(parsed[1])){ //siglevel int cur_size; config_str siglevel = yon_char_parse(parsed[1],&cur_size,","); - gtk_combo_box_set_active_id(GTK_COMBO_BOX(window->RepoSignCheckCombo),siglevel[0]); - gtk_combo_box_set_active_id(GTK_COMBO_BOX(window->RepoSignConditionCombo),siglevel[1]); + if (!strcmp(siglevel[0],"Never")){ + gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(window->NeverRadio),1); + } else if (!strcmp(siglevel[0],"Optional")){ + gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(window->OptionalRadio),1); + } else if (!strcmp(siglevel[0],"Required")){ + gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(window->RequiredRadio),1); + } else if (!strcmp(siglevel[0],"TrustedOnly")){ + gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(window->TrustedOnlyRadio),1); + } else if (!strcmp(siglevel[0],"TrustAll")){ + gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(window->TrustAllRadio),1); + } + if (!strcmp(siglevel[1],"PackageNever")){ + gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(window->PackageNeverRadio),1); + } else if (!strcmp(siglevel[1],"DatabaseNever")){ + gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(window->DatabaseNeverRadio),1); + } else if (!strcmp(siglevel[1],"PackageOptional")){ + gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(window->PackageOptionalRadio),1); + } else if (!strcmp(siglevel[1],"DatabaseOptional")){ + gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(window->DatabaseOptionalRadio),1); + } else if (!strcmp(siglevel[1],"PackageRequired")){ + gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(window->PackageRequiredRadio),1); + } else if (!strcmp(siglevel[1],"DatabaseRequired")){ + gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(window->DatabaseRequiredRadio),1); + } else if (!strcmp(siglevel[1],"PackageTrustedOnly")){ + gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(window->PackageTrustedOnlyRadio),1); + } else if (!strcmp(siglevel[1],"DatabaseTrustedOnly")){ + gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(window->DatabaseTrustedOnlyRadio),1); + } else if (!strcmp(siglevel[1],"PackageTrustAll")){ + gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(window->PackageTrustAllRadio),1); + } else if (!strcmp(siglevel[1],"DatabaseTrustAll")){ + gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(window->DatabaseTrustAllRadio),1); + } } - if (size>2&&!yon_char_is_empty(parsed[2])){} //usage + if (size>2&&!yon_char_is_empty(parsed[2])){ + if (!strcmp(parsed[2],"All")){ + gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(window->UsageDefaultCheck),1); + } else if (!strcmp(parsed[2],"Sync")){ + gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(window->UsageEnableUpdateCheck),1); + } else if (!strcmp(parsed[2],"Search")){ + gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(window->UsageEnableSearchCheck),1); + } else if (!strcmp(parsed[2],"Install")){ + gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(window->UsageEnableInsallCheck),1); + } else if (!strcmp(parsed[2],"Upgrade")){ + gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(window->UsageEnableInsallCheck),1); + } + } //usage if (size<3||yon_char_is_empty(parsed[3])||strcmp(parsed[3],"disable")){ //disable gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(window->EnabledCheck),1); } @@ -974,8 +1016,20 @@ void on_repo_accept_clicked(GtkWidget *, dictionary *dict){ } else if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(window->DatabaseTrustAllRadio))){ sign_level_condiition="DatabaseTrustAll"; } + char *usage = ""; + if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(window->UsageDefaultCheck))){ + usage = "All"; + } else if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(window->UsageEnableUpdateCheck))){ + usage = "Sync"; + } else if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(window->UsageEnableSearchCheck))){ + usage = "Search"; + } else if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(window->UsageEnableInsallCheck))){ + usage = "Install"; + } else if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(window->UsageSysupgradeCheck))){ + usage = "Upgrade"; + } - char *final = yon_char_unite(sources,";",sign_level_package,",",sign_level_condiition,";",";",enabled?"":"disable",NULL); + char *final = yon_char_unite(sources,";",sign_level_package,",",sign_level_condiition,";",usage,";",enabled?"":"disable",NULL); if (!yon_char_is_empty(window->name)&&strcmp(repo_name,window->name)){ yon_config_remove_by_key(REOSITORY_command(window->name)); diff --git a/ubl-settings-update-repo-add.glade b/ubl-settings-update-repo-add.glade index 66c074e..e57d65e 100644 --- a/ubl-settings-update-repo-add.glade +++ b/ubl-settings-update-repo-add.glade @@ -1,5 +1,5 @@ - + From 85367a6ff5cefca6b182c4455b640d2964d75c69 Mon Sep 17 00:00:00 2001 From: Ivan Yarcev Date: Mon, 25 Nov 2024 17:20:51 +0600 Subject: [PATCH 4/5] Fixed usage saving --- source/ubl-settings-update.c | 61 +++++++++++++++++++++++++----------- ubl-settings-update.glade | 1 + 2 files changed, 44 insertions(+), 18 deletions(-) diff --git a/source/ubl-settings-update.c b/source/ubl-settings-update.c index 55dcc36..1005444 100644 --- a/source/ubl-settings-update.c +++ b/source/ubl-settings-update.c @@ -771,17 +771,27 @@ void on_repo_edit(GtkWidget *,main_window *widgets){ } } if (size>2&&!yon_char_is_empty(parsed[2])){ - if (!strcmp(parsed[2],"All")){ - gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(window->UsageDefaultCheck),1); - } else if (!strcmp(parsed[2],"Sync")){ - gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(window->UsageEnableUpdateCheck),1); - } else if (!strcmp(parsed[2],"Search")){ - gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(window->UsageEnableSearchCheck),1); - } else if (!strcmp(parsed[2],"Install")){ - gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(window->UsageEnableInsallCheck),1); - } else if (!strcmp(parsed[2],"Upgrade")){ - gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(window->UsageEnableInsallCheck),1); + int usage_size; + config_str usage = yon_char_parse(parsed[2],&usage_size,","); + for (int i=0;iUsageDefaultCheck),1); + } else { + if (!strcmp(usage[i],"Sync")){ + gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(window->UsageEnableUpdateCheck),1); + } + if (!strcmp(usage[i],"Search")){ + gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(window->UsageEnableSearchCheck),1); + } + if (!strcmp(usage[i],"Install")){ + gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(window->UsageEnableInsallCheck),1); + } + if (!strcmp(usage[i],"Upgrade")){ + gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(window->UsageEnableInsallCheck),1); + } + } } + if (usage_size) yon_char_parsed_free(usage,usage_size); } //usage if (size<3||yon_char_is_empty(parsed[3])||strcmp(parsed[3],"disable")){ //disable gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(window->EnabledCheck),1); @@ -1019,14 +1029,25 @@ void on_repo_accept_clicked(GtkWidget *, dictionary *dict){ char *usage = ""; if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(window->UsageDefaultCheck))){ usage = "All"; - } else if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(window->UsageEnableUpdateCheck))){ - usage = "Sync"; - } else if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(window->UsageEnableSearchCheck))){ - usage = "Search"; - } else if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(window->UsageEnableInsallCheck))){ - usage = "Install"; - } else if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(window->UsageSysupgradeCheck))){ - usage = "Upgrade"; + } else { + if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(window->UsageEnableUpdateCheck))){ + usage = yon_char_new("Sync"); + } + if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(window->UsageEnableSearchCheck))){ + char *temp = yon_char_unite(usage,!yon_char_is_empty(usage)?",":"","Search",NULL); + if (!yon_char_is_empty(usage)) free(usage); + usage=temp; + } + if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(window->UsageEnableInsallCheck))){ + char *temp = yon_char_unite(usage,!yon_char_is_empty(usage)?",":"","Install",NULL); + if (!yon_char_is_empty(usage)) free(usage); + usage=temp; + } + if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(window->UsageSysupgradeCheck))){ + char *temp = yon_char_unite(usage,!yon_char_is_empty(usage)?",":"","Upgrade",NULL); + if (!yon_char_is_empty(usage)) free(usage); + usage=temp; + } } char *final = yon_char_unite(sources,";",sign_level_package,",",sign_level_condiition,";",usage,";",enabled?"":"disable",NULL); @@ -1350,6 +1371,10 @@ repo_add_window *yon_repo_add_window_new(){ g_signal_connect(G_OBJECT(window->RepoSourceButton),"clicked",G_CALLBACK(on_file_chooser_open),window->RepoSourceEntry); g_signal_connect(G_OBJECT(window->RepoSourceAddButton),"clicked",G_CALLBACK(on_repo_source_add),window); g_signal_connect(G_OBJECT(window->CancelButton),"clicked",G_CALLBACK(on_subwindow_close),NULL); + g_signal_connect(G_OBJECT(window->UsageDefaultCheck),"toggled",G_CALLBACK(yon_gtk_widget_set_sensitive_from_toggle_button_inversed),window->UsageEnableInsallCheck); + g_signal_connect(G_OBJECT(window->UsageDefaultCheck),"toggled",G_CALLBACK(yon_gtk_widget_set_sensitive_from_toggle_button_inversed),window->UsageEnableSearchCheck); + g_signal_connect(G_OBJECT(window->UsageDefaultCheck),"toggled",G_CALLBACK(yon_gtk_widget_set_sensitive_from_toggle_button_inversed),window->UsageEnableUpdateCheck); + g_signal_connect(G_OBJECT(window->UsageDefaultCheck),"toggled",G_CALLBACK(yon_gtk_widget_set_sensitive_from_toggle_button_inversed),window->UsageSysupgradeCheck); gtk_widget_show(window->Window); return window; diff --git a/ubl-settings-update.glade b/ubl-settings-update.glade index 89e2950..393a112 100644 --- a/ubl-settings-update.glade +++ b/ubl-settings-update.glade @@ -1545,6 +1545,7 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. True True MirrorList + both From b37a11cded45a6c8ad7f7933396ad4268d1bb195 Mon Sep 17 00:00:00 2001 From: Ivan Yarcev Date: Mon, 25 Nov 2024 17:30:48 +0600 Subject: [PATCH 5/5] Fixed wrong upgrade toggle button --- source/ubl-settings-update.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/ubl-settings-update.c b/source/ubl-settings-update.c index 1005444..19310fc 100644 --- a/source/ubl-settings-update.c +++ b/source/ubl-settings-update.c @@ -787,7 +787,7 @@ void on_repo_edit(GtkWidget *,main_window *widgets){ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(window->UsageEnableInsallCheck),1); } if (!strcmp(usage[i],"Upgrade")){ - gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(window->UsageEnableInsallCheck),1); + gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(window->UsageSysupgradeCheck),1); } } }