Added services and applications additional fields saving locally

pull/398/head
parent e0d5c97db6
commit 1c06ca2d95

@ -30,7 +30,7 @@ void on_startup_apps_remove(GtkWidget *self,main_window *widgets){
if (gtk_tree_selection_get_selected(gtk_tree_view_get_selection(GTK_TREE_VIEW(widgets->StartupAppsTree)),&model,&iter)){ if (gtk_tree_selection_get_selected(gtk_tree_view_get_selection(GTK_TREE_VIEW(widgets->StartupAppsTree)),&model,&iter)){
char *unit; char *unit;
int deletable; int deletable;
gtk_tree_model_get(model,&iter,2,&unit,4,&deletable,-1); gtk_tree_model_get(model,&iter,1,&unit,4,&deletable,-1);
if (!deletable) return; if (!deletable) return;
dialog_confirmation_data *data = yon_confirmation_dialog_data_new(); dialog_confirmation_data *data = yon_confirmation_dialog_data_new();
data->action_text = SERVICE_REMOVE_CONFIRMATION_LABEL(unit); data->action_text = SERVICE_REMOVE_CONFIRMATION_LABEL(unit);
@ -103,7 +103,11 @@ void yon_startup_apps_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->StartupAppsList,&iter); gtk_list_store_append(widgets->StartupAppsList,&iter);
gtk_list_store_set(widgets->StartupAppsList,&iter,0,1,1,parsed[i],4,1,-1); char *app = NULL;
char *description = NULL;
yon_window_config_get_parameter("service_app",parsed[i],&app,YON_TYPE_STRING);
yon_window_config_get_parameter("service_desc",parsed[i],&description,YON_TYPE_STRING);
gtk_list_store_set(widgets->StartupAppsList,&iter,0,1,1,parsed[i],2,app,3,description,4,1,-1);
} }
} }
yon_char_parsed_free(parsed,parsed_size); yon_char_parsed_free(parsed,parsed_size);
@ -204,9 +208,12 @@ int yon_startup_app_save(main_window *widgets){
list_size++; list_size++;
char *target; char *target;
int status; int status;
gtk_tree_model_get(model,&iter,0,&status,1,&target,-1); char *app, *description;
gtk_tree_model_get(model,&iter,0,&status,1,&target,2,&app,3,&description,-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);
yon_window_config_add_instant_parameter(target,"service_app",app,YON_TYPE_STRING);
yon_window_config_add_instant_parameter(target,"service_desc",description,YON_TYPE_STRING);
} }
} }
if (size){ if (size){

@ -38,7 +38,7 @@ void on_startup_services_remove(GtkWidget *self,main_window *widgets){
if (gtk_tree_selection_get_selected(gtk_tree_view_get_selection(GTK_TREE_VIEW(widgets->StartupServicesTree)),&model,&iter)){ if (gtk_tree_selection_get_selected(gtk_tree_view_get_selection(GTK_TREE_VIEW(widgets->StartupServicesTree)),&model,&iter)){
char *unit; char *unit;
int deletable; int deletable;
gtk_tree_model_get(model,&iter,2,&unit,4,&deletable,-1); gtk_tree_model_get(model,&iter,1,&unit,4,&deletable,-1);
if (!deletable) return; if (!deletable) return;
dialog_confirmation_data *data = yon_confirmation_dialog_data_new(); dialog_confirmation_data *data = yon_confirmation_dialog_data_new();
data->action_text = SERVICE_REMOVE_CONFIRMATION_LABEL(unit); data->action_text = SERVICE_REMOVE_CONFIRMATION_LABEL(unit);
@ -111,7 +111,11 @@ 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,1,parsed[i],-1); char *app = NULL;
char *description = NULL;
yon_window_config_get_parameter("service_app",parsed[i],&app,YON_TYPE_STRING);
yon_window_config_get_parameter("service_desc",parsed[i],&description,YON_TYPE_STRING);
gtk_list_store_set(widgets->StartupList,&iter,0,1,1,parsed[i],2,app,3,description,-1);
} }
} }
yon_char_parsed_free(parsed,parsed_size); yon_char_parsed_free(parsed,parsed_size);
@ -208,9 +212,12 @@ 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,1,&target,-1); char *app, *description;
gtk_tree_model_get(model,&iter,0,&status,1,&target,2,&app,3,&description,-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);
yon_window_config_add_instant_parameter(target,"service_app",app,YON_TYPE_STRING);
yon_window_config_add_instant_parameter(target,"service_desc",description,YON_TYPE_STRING);
} }
} }
if (size){ if (size){

Loading…
Cancel
Save