#include "ubinstall-gtk.h" int yon_kernel_save(main_window *widgets){ GList *list = gtk_container_get_children(GTK_CONTAINER(widgets->KernelListBox)); char *install_modules = ""; char *enabled_module = NULL; for(GList *iter = list;iter;iter = iter->next){ kernel_row *row = g_object_get_data(G_OBJECT(iter->data),"kernel_row"); if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(row->InstallCheck))){ char *temp = yon_char_unite(install_modules,!yon_char_is_empty(install_modules)?" ":"",row->modules,NULL); if (!yon_char_is_empty(install_modules)) free(install_modules); install_modules = temp; } if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(row->EnableRadio))){ enabled_module = row->package; } } yon_config_register(KERNEL_BOOT_parameter,KERNEL_BOOT_parameter_command,enabled_module); 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; }