|
|
|
@ -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);
|
|
|
|
|