|
|
|
|
@ -72,6 +72,18 @@ GtkTreeIter *yon_subcategory_check(GtkTreeStore *target, GtkTreeIter *parent_ite
|
|
|
|
|
|
|
|
|
|
void yon_packages_tab_init(main_window *widgets){
|
|
|
|
|
gtk_tree_store_clear(widgets->PackagesList);
|
|
|
|
|
char *modules = config(modules_parameter);
|
|
|
|
|
if (modules&&!strcmp(modules,"auto")){
|
|
|
|
|
int final_size;
|
|
|
|
|
config_str final = NULL;
|
|
|
|
|
for (int i=0;i<main_config.modules_size;i++){
|
|
|
|
|
int parsed_size=0;
|
|
|
|
|
config_str parsed = yon_char_parse(main_config.modules[i],&parsed_size,";");
|
|
|
|
|
yon_char_parsed_add_or_create_if_exists(final,&final_size,parsed[1]);
|
|
|
|
|
yon_char_parsed_free(parsed,parsed_size);
|
|
|
|
|
}
|
|
|
|
|
modules = yon_char_parsed_to_string(final,final_size,",");
|
|
|
|
|
}
|
|
|
|
|
int size;
|
|
|
|
|
char *config_packages = config(packages_parameter);
|
|
|
|
|
|
|
|
|
|
@ -87,7 +99,7 @@ void yon_packages_tab_init(main_window *widgets){
|
|
|
|
|
GtkTreeIter package_iter;
|
|
|
|
|
gtk_tree_store_append(widgets->PackagesList,&package_iter,subcategory_iter);
|
|
|
|
|
char *full_string = yon_char_unite("<b>",parsed[2],"</b>\n",_(parsed[3]),NULL);
|
|
|
|
|
gtk_tree_store_set(widgets->PackagesList,&package_iter,0,!!yon_char_check_element(config_packages,parsed[2],","),1,parsed[2],2,full_string,3,1,-1);
|
|
|
|
|
gtk_tree_store_set(widgets->PackagesList,&package_iter,0,!!yon_char_check_element(config_packages,parsed[2],","),1,parsed[2],2,full_string,3,1,4,yon_char_check_element(modules,parsed[2],","),-1);
|
|
|
|
|
free(full_string);
|
|
|
|
|
gtk_tree_iter_free(subcategory_iter);
|
|
|
|
|
} else {
|
|
|
|
|
@ -97,14 +109,14 @@ void yon_packages_tab_init(main_window *widgets){
|
|
|
|
|
gtk_tree_store_set(widgets->PackagesList,&subcatiter,1,parsed[1],2,_(parsed[3]),3,0,-1);
|
|
|
|
|
gtk_tree_store_append(widgets->PackagesList,&package_iter,&subcatiter);
|
|
|
|
|
char *full_string = yon_char_unite("<b>",parsed[2],"</b>\n",_(parsed[3]),NULL);
|
|
|
|
|
gtk_tree_store_set(widgets->PackagesList,&package_iter,0,!!yon_char_check_element(config_packages,parsed[2],","),1,parsed[2],2,full_string,3,1,-1);
|
|
|
|
|
gtk_tree_store_set(widgets->PackagesList,&package_iter,0,!!yon_char_check_element(config_packages,parsed[2],","),1,parsed[2],2,full_string,3,1,4,yon_char_check_element(modules,parsed[2],","),-1);
|
|
|
|
|
free(full_string);
|
|
|
|
|
}
|
|
|
|
|
} else {
|
|
|
|
|
GtkTreeIter package_iter;
|
|
|
|
|
gtk_tree_store_append(widgets->PackagesList,&package_iter,category_iter);
|
|
|
|
|
char *full_string = yon_char_unite("<b>",parsed[2],"</b>\n",_(parsed[3]),NULL);
|
|
|
|
|
gtk_tree_store_set(widgets->PackagesList,&package_iter,0,!!yon_char_check_element(config_packages,parsed[2],","),1,parsed[2],2,full_string,3,1,-1);
|
|
|
|
|
gtk_tree_store_set(widgets->PackagesList,&package_iter,0,!!yon_char_check_element(config_packages,parsed[2],","),1,parsed[2],2,full_string,3,1,4,yon_char_check_element(modules,parsed[2],","),-1);
|
|
|
|
|
free(full_string);
|
|
|
|
|
}
|
|
|
|
|
gtk_tree_iter_free(category_iter);
|
|
|
|
|
@ -128,11 +140,12 @@ void yon_packages_tab_init(main_window *widgets){
|
|
|
|
|
gtk_tree_store_set(widgets->PackagesList,&catiter,1,parsed[0],2,_(parsed[0]),3,0,-1);
|
|
|
|
|
gtk_tree_store_append(widgets->PackagesList,&package_iter,&catiter);
|
|
|
|
|
char *full_string = yon_char_unite("<b>",parsed[2],"</b>\n",_(parsed[3]),NULL);
|
|
|
|
|
gtk_tree_store_set(widgets->PackagesList,&package_iter,0,!!yon_char_check_element(config_packages,parsed[2],","),1,parsed[2],2,full_string,3,1,-1);
|
|
|
|
|
gtk_tree_store_set(widgets->PackagesList,&package_iter,0,!!yon_char_check_element(config_packages,parsed[2],","),1,parsed[2],2,full_string,3,1,4,yon_char_check_element(modules,parsed[2],","),-1);
|
|
|
|
|
free(full_string);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
if (!yon_char_is_empty(modules)) free(modules);
|
|
|
|
|
gtk_tree_view_expand_all(GTK_TREE_VIEW(widgets->PackagesTree));
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|