Fixed packages saving

pull/336/head
parent 1fa79eb446
commit a45f0a3479

@ -15,12 +15,14 @@ int yon_kernel_save(main_window *widgets){
overall_size++; overall_size++;
kernel_row *row = g_object_get_data(G_OBJECT(iter->data),"kernel_row"); kernel_row *row = g_object_get_data(G_OBJECT(iter->data),"kernel_row");
if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(row->InstallCheck))){ if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(row->InstallCheck))){
char *append_str = yon_char_replace(row->modules," ",","); if (gtk_widget_get_sensitive(row->InstallCheck)){
yon_config_append_elements(packages_parameter,append_str,","); char *append_str = yon_char_replace(row->modules," ",",");
free(append_str); yon_config_append_elements(packages_parameter,append_str,",");
active_size++; free(append_str);
if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(row->EnableRadio))){ active_size++;
enabled_module = row->package; if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(row->EnableRadio))){
enabled_module = row->package;
}
} }
} else { } else {
char *append_str = yon_char_replace(row->modules," ",","); char *append_str = yon_char_replace(row->modules," ",",");
@ -51,7 +53,9 @@ int yon_kernel_addon_save(main_window *widgets){
for(GList *iter = list;iter;iter = iter->next){ for(GList *iter = list;iter;iter = iter->next){
kernel_addon_row *row = g_object_get_data(G_OBJECT(iter->data),"kernel_row"); kernel_addon_row *row = g_object_get_data(G_OBJECT(iter->data),"kernel_row");
if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(row->InstallCheck))){ if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(row->InstallCheck))){
yon_config_append_elements(packages_parameter,row->modules,","); if (gtk_widget_get_sensitive(row->InstallCheck)){
yon_config_append_elements(packages_parameter,row->modules,",");
}
} else { } else {
char *append_str = yon_char_replace(row->modules," ",","); char *append_str = yon_char_replace(row->modules," ",",");
yon_config_remove_elements(packages_parameter,row->modules,","); yon_config_remove_elements(packages_parameter,row->modules,",");
@ -368,7 +372,9 @@ int yon_software_save(main_window *widgets){
int status = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(row->InstallCheck)); int status = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(row->InstallCheck));
if (status){ if (status){
if (!yon_char_check_element(config_val,target,",")){ if (!yon_char_check_element(config_val,target,",")){
yon_config_append_elements(packages_parameter,target,","); if (gtk_widget_get_sensitive(row->InstallCheck)){
yon_config_append_elements(packages_parameter,target,",");
}
} }
} else{ } else{
char *append_str = yon_char_replace(target," ",","); char *append_str = yon_char_replace(target," ",",");
@ -637,7 +643,7 @@ gboolean yon_pacman_fill(struct pacman_struct *pacman){
for (int i=0;i<size;i++){ for (int i=0;i<size;i++){
if (g_hash_table_contains(widgets->pacmanchosen,loaded[i])) continue; if (yon_char_is_empty(loaded[i])||g_hash_table_contains(widgets->pacmanchosen,loaded[i])) continue;
char *version = yon_packages_get_version(YON_PACKAGES_SYNC,loaded[i]); char *version = yon_packages_get_version(YON_PACKAGES_SYNC,loaded[i]);
char *description = yon_packages_get_description(YON_PACKAGES_SYNC,loaded[i]); char *description = yon_packages_get_description(YON_PACKAGES_SYNC,loaded[i]);
GtkTreeIter iter; GtkTreeIter iter;

@ -9,9 +9,11 @@ int yon_packages_tab_save(main_window *widgets){
for_iter(widgets->PackagesList,&parentiter){ for_iter(widgets->PackagesList,&parentiter){
for (int valid2 = gtk_tree_model_iter_children(GTK_TREE_MODEL(widgets->PackagesList),&subiter,&parentiter);valid2;valid2 = gtk_tree_model_iter_next(GTK_TREE_MODEL(widgets->PackagesList),&subiter)){ for (int valid2 = gtk_tree_model_iter_children(GTK_TREE_MODEL(widgets->PackagesList),&subiter,&parentiter);valid2;valid2 = gtk_tree_model_iter_next(GTK_TREE_MODEL(widgets->PackagesList),&subiter)){
int selectable, status; int selectable, status;
int sensitive=0;
char *package; char *package;
gtk_tree_model_get(GTK_TREE_MODEL(widgets->PackagesList),&subiter,0,&status,1,&package,3,&selectable,-1); gtk_tree_model_get(GTK_TREE_MODEL(widgets->PackagesList),&subiter,0,&status,1,&package,3,&selectable,4,&sensitive,-1);
if (selectable&&status){ if (selectable&&status){
yon_config_append_elements(packages_parameter,package,","); yon_config_append_elements(packages_parameter,package,",");
}else if (selectable&&!status){ }else if (selectable&&!status){
yon_config_remove_elements(packages_parameter,package,","); yon_config_remove_elements(packages_parameter,package,",");
@ -19,7 +21,9 @@ int yon_packages_tab_save(main_window *widgets){
for (int valid3 = gtk_tree_model_iter_children(GTK_TREE_MODEL(widgets->PackagesList),&packiter,&subiter);valid3;valid3 = gtk_tree_model_iter_next(GTK_TREE_MODEL(widgets->PackagesList),&packiter)){ for (int valid3 = gtk_tree_model_iter_children(GTK_TREE_MODEL(widgets->PackagesList),&packiter,&subiter);valid3;valid3 = gtk_tree_model_iter_next(GTK_TREE_MODEL(widgets->PackagesList),&packiter)){
gtk_tree_model_get(GTK_TREE_MODEL(widgets->PackagesList),&packiter,0,&status,1,&package,3,&selectable,-1); gtk_tree_model_get(GTK_TREE_MODEL(widgets->PackagesList),&packiter,0,&status,1,&package,3,&selectable,-1);
if (status){ if (status){
yon_config_append_elements(packages_parameter,package,","); if (sensitive){
yon_config_append_elements(packages_parameter,package,",");
}
} else { } else {
yon_config_remove_elements(packages_parameter,package,","); yon_config_remove_elements(packages_parameter,package,",");
} }

Loading…
Cancel
Save