You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
ubinstall-gtk/source/ubinstall-gtk-components.c

88 lines
2.5 KiB

#include "ubinstall-gtk.h"
int yon_kernel_save(main_window *widgets){
GtkTreeIter iter;
GtkTreeModel *model = GTK_TREE_MODEL(widgets->KernelsList);
int size = 0;
config_str kernels = NULL;
for_iter(model,&iter){
char *target;
int status,loaded;
gtk_tree_model_get(model,&iter,0,&status,1,&loaded,2,&target,-1);
if (status){
yon_char_parsed_add_or_create_if_exists(kernels,&size,target);
}
}
return 1;
}
int yon_os_components_save(main_window *widgets){
GtkTreeIter iter;
GtkTreeModel *model = GTK_TREE_MODEL(widgets->OSSoftwareList);
int size = 0;
config_str modules = NULL;
for_iter(model,&iter){
char *target;
int status;
gtk_tree_model_get(model,&iter,0,&status,1,&target,-1);
if (status){
yon_char_parsed_add_or_create_if_exists(modules,&size,target);
}
}
if (size){
char *final = yon_char_parsed_to_string(modules,size,",");
yon_config_register(modules_parameter,modules_parameter_command,final);
} else {
yon_config_remove_by_key(modules_parameter);
}
return 1;
}
int yon_software_save(main_window *widgets){
GtkTreeIter iter;
GtkTreeModel *model = GTK_TREE_MODEL(widgets->AdditionalSoftwareList);
int size = 0;
config_str modules = NULL;
for_iter(model,&iter){
char *target;
int status;
gtk_tree_model_get(model,&iter,0,&status,1,&target,-1);
if (status){
yon_char_parsed_add_or_create_if_exists(modules,&size,target);
}
}
if (size){
char *final = yon_char_parsed_to_string(modules,size,",");
yon_config_register(modules_extra_parameter,modules_extra_parameter_command,final);
} else {
yon_config_remove_by_key(modules_extra_parameter);
}
return 1;
}
int yon_startup_save(main_window *widgets){
GtkTreeIter iter;
GtkTreeModel *model = GTK_TREE_MODEL(widgets->StartupList);
int size = 0;
config_str modules = NULL;
for_iter(model,&iter){
char *target;
int status;
gtk_tree_model_get(model,&iter,0,&status,1,&target,-1);
if (status){
yon_char_parsed_add_or_create_if_exists(modules,&size,target);
}
}
if (size){
// char *final = yon_char_parsed_to_string(modules,size,",");
// yon_config_register(modules_extra_parameter,modules_extra_parameter_command,final);
} else {
// yon_config_remove_by_key(modules_extra_parameter);
}
return 1;
}