master #376

Merged
asmeron merged 3 commits from YanTheKaller/ubinstall-gtk:master into master 3 weeks ago

@ -4,7 +4,7 @@ int yon_packages_tab_save(main_window *widgets){
GtkTreeIter parentiter, subiter,packiter; GtkTreeIter parentiter, subiter,packiter;
if (yon_char_is_empty(config(packages_parameter))){ if (yon_char_is_empty(config(packages_parameter))){
yon_config_register(packages_parameter,packages_parameter_command,NULL); yon_config_register(packages_parameter,packages_parameter_command,NULL);
yon_config_set_status(packages_parameter,-1); yon_config_set_status(packages_parameter,0);
} }
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)){
@ -12,8 +12,7 @@ int yon_packages_tab_save(main_window *widgets){
int sensitive=0; int sensitive=0;
char *package; char *package;
gtk_tree_model_get(GTK_TREE_MODEL(widgets->PackagesList),&subiter,0,&status,1,&package,3,&selectable,4,&sensitive,-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&&sensitive){
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_all(packages_parameter,package,","); yon_config_remove_elements_all(packages_parameter,package,",");
@ -87,7 +86,9 @@ void yon_packages_remove_empty_groups(main_window *widgets){
if (gtk_tree_model_iter_has_child(model,&iter)){ if (gtk_tree_model_iter_has_child(model,&iter)){
GtkTreeIter subiter; GtkTreeIter subiter;
for (int valid2 = gtk_tree_model_iter_children(model,&subiter,&iter);valid2;valid2 = gtk_tree_model_iter_next(model,&subiter)){ for (int valid2 = gtk_tree_model_iter_children(model,&subiter,&iter);valid2;valid2 = gtk_tree_model_iter_next(model,&subiter)){
if (!gtk_tree_model_iter_has_child(model,&subiter)){ char *packages;
gtk_tree_model_get(model,&subiter,5,&packages,-1);
if (yon_char_is_empty(packages)&&!gtk_tree_model_iter_has_child(model,&subiter)){
gtk_tree_store_remove(widgets->PackagesList,&subiter); gtk_tree_store_remove(widgets->PackagesList,&subiter);
if (!gtk_tree_model_iter_children(model,&subiter,&iter)){ if (!gtk_tree_model_iter_children(model,&subiter,&iter)){
valid2=0; valid2=0;
@ -124,9 +125,7 @@ void yon_packages_tab_init(main_window *widgets){
for (int i=0;i<main_config.modules_size;i++){ for (int i=0;i<main_config.modules_size;i++){
int parsed_size=0; int parsed_size=0;
config_str parsed = yon_char_parse(main_config.modules[i],&parsed_size,";"); config_str parsed = yon_char_parse(main_config.modules[i],&parsed_size,";");
if (yon_packages_check_exist(parsed[1])){
yon_char_parsed_add_or_create_if_exists(final,&final_size,parsed[1]); yon_char_parsed_add_or_create_if_exists(final,&final_size,parsed[1]);
}
yon_char_parsed_free(parsed,parsed_size); yon_char_parsed_free(parsed,parsed_size);
} }
modules = yon_char_parsed_to_string(final,final_size,","); modules = yon_char_parsed_to_string(final,final_size,",");
@ -162,6 +161,7 @@ void yon_packages_tab_init(main_window *widgets){
empty = 1; empty = 1;
continue; continue;
} }
yon_char_parsed_add_or_create_if_exists(final,&final_size,modules_parsed[j]);
} }
if (empty) continue; if (empty) continue;
yon_char_parsed_free(modules_parsed,modules_parsed_size); yon_char_parsed_free(modules_parsed,modules_parsed_size);

@ -210,7 +210,10 @@ int yon_startup_app_save(main_window *widgets){
} }
if (size){ if (size){
char *final = yon_char_parsed_to_string(modules,size,","); char *final = yon_char_parsed_to_string(modules,size,",");
char *config_parameter = config(AUTOEXEC_parameter);
if (!yon_char_check_elements(config_parameter,final,",")||!yon_char_check_elements(final,config_parameter,",")){
yon_config_register(AUTOEXEC_parameter,AUTOEXEC_parameter_command,final); yon_config_register(AUTOEXEC_parameter,AUTOEXEC_parameter_command,final);
}
yon_char_parsed_free(modules,size); yon_char_parsed_free(modules,size);
} else { } else {
yon_config_remove_by_key(AUTOEXEC_parameter); yon_config_remove_by_key(AUTOEXEC_parameter);

@ -80,7 +80,7 @@ void yon_startup_services_init(main_window *widgets){
config_str parsed = yon_char_parse(startup,&parsed_size,","); config_str parsed = yon_char_parse(startup,&parsed_size,",");
for_iter(GTK_TREE_MODEL(widgets->StartupList),&iter){ for_iter(GTK_TREE_MODEL(widgets->StartupList),&iter){
char *target; char *target;
gtk_tree_model_get(GTK_TREE_MODEL(widgets->StartupList),&iter,2,&target,-1); gtk_tree_model_get(GTK_TREE_MODEL(widgets->StartupList),&iter,1,&target,-1);
if (strstr(target,",")){ if (strstr(target,",")){
int target_size; int target_size;
config_str target_parsed = yon_char_parse(target,&target_size,","); config_str target_parsed = yon_char_parse(target,&target_size,",");
@ -111,7 +111,7 @@ void yon_startup_services_init(main_window *widgets){
if (parsed_size&&parsed){ if (parsed_size&&parsed){
for (int i=0;i<parsed_size;i++){ for (int i=0;i<parsed_size;i++){
gtk_list_store_append(widgets->StartupList,&iter); gtk_list_store_append(widgets->StartupList,&iter);
gtk_list_store_set(widgets->StartupList,&iter,0,1,2,parsed[i],-1); gtk_list_store_set(widgets->StartupList,&iter,0,1,1,parsed[i],-1);
} }
} }
yon_char_parsed_free(parsed,parsed_size); yon_char_parsed_free(parsed,parsed_size);
@ -148,7 +148,7 @@ void on_startup_edit_accept(GtkWidget *self, main_window *widgets){
yon_ubl_status_highlight_incorrect(window->ServiceEntry); yon_ubl_status_highlight_incorrect(window->ServiceEntry);
return; return;
} }
gtk_list_store_set(widgets->StartupList,&iter,0,1,1,unit,2,service,3,description,4,1,-1); gtk_list_store_set(widgets->StartupList,&iter,0,1,2,unit,1,service,3,description,4,1,-1);
} }
on_subwindow_close(self); on_subwindow_close(self);
} }
@ -207,14 +207,17 @@ int yon_startup_save(main_window *widgets){
list_size++; list_size++;
char *target; char *target;
int status; int status;
gtk_tree_model_get(model,&iter,0,&status,2,&target,-1); gtk_tree_model_get(model,&iter,0,&status,1,&target,-1);
if (status){ if (status){
yon_char_parsed_add_or_create_if_exists(modules,&size,target); yon_char_parsed_add_or_create_if_exists(modules,&size,target);
} }
} }
if (size){ if (size){
char *final = yon_char_parsed_to_string(modules,size,","); char *final = yon_char_parsed_to_string(modules,size,",");
char *config_parameter = config(SERVICES_ENABLE_parameter);
if (!yon_char_check_elements(config_parameter,final,",")||!yon_char_check_elements(final,config_parameter,",")){
yon_config_register(SERVICES_ENABLE_parameter,SERVICES_ENABLE_parameter_command,final); yon_config_register(SERVICES_ENABLE_parameter,SERVICES_ENABLE_parameter_command,final);
}
yon_char_parsed_free(modules,size); yon_char_parsed_free(modules,size);
} else { } else {
yon_config_remove_by_key(SERVICES_ENABLE_parameter); yon_config_remove_by_key(SERVICES_ENABLE_parameter);

@ -309,7 +309,7 @@
<property name="halign">start</property> <property name="halign">start</property>
<property name="valign">start</property> <property name="valign">start</property>
<property name="margin-start">20</property> <property name="margin-start">20</property>
<property name="margin-top">3</property> <property name="margin-top">6</property>
<property name="label" translatable="yes">Name</property> <property name="label" translatable="yes">Name</property>
<property name="width-chars">0</property> <property name="width-chars">0</property>
<property name="track-visited-links">False</property> <property name="track-visited-links">False</property>

Loading…
Cancel
Save