Config load function update #84

Merged
asmeron merged 1 commits from YanTheKaller/ubl-settings-resourcequota:master into master 1 month ago

@ -472,24 +472,24 @@ void yon_interface_update(main_window *){
void on_config_global_local_save(GtkWidget *, main_window *){ void on_config_global_local_save(GtkWidget *, main_window *){
main_config.save_config=3; main_config.save_config=3;
yon_save_proceed(NULL,YON_CONFIG_BOTH,config_get_global_command,NULL); yon_save_proceed(NULL,YON_CONFIG_BOTH,config_get_command("global"),NULL);
} }
void on_config_local_save(GtkWidget *, main_window *){ void on_config_local_save(GtkWidget *, main_window *){
main_config.save_config=1; main_config.save_config=1;
yon_save_proceed("system",YON_CONFIG_LOCAL,config_get_local_command,NULL); yon_save_proceed("system",YON_CONFIG_LOCAL,config_get_command("system"),NULL);
} }
void on_config_global_save(GtkWidget *, main_window *){ void on_config_global_save(GtkWidget *, main_window *){
main_config.save_config=0; main_config.save_config=0;
yon_save_proceed("global",YON_CONFIG_GLOBAL,config_get_global_command,NULL); yon_save_proceed("global",YON_CONFIG_GLOBAL,config_get_command("global"),NULL);
} }
void on_config_custom_save(GtkWidget *, main_window *){ void on_config_custom_save(GtkWidget *, main_window *){
main_config.save_config=1; main_config.save_config=1;
template_saving_window *window = yon_save_proceed(NULL,YON_CONFIG_CUSTOM,yon_config_get_custom_command("system"),NULL); template_saving_window *window = yon_save_proceed(NULL,YON_CONFIG_CUSTOM,config_get_command("system"),NULL);
if (window){}; if (window){};
} }
@ -516,37 +516,31 @@ void on_config_custom_load(GtkWidget *,main_window *widgets){
} }
void yon_load_proceed(YON_CONFIG_TYPE type){ void yon_load_proceed(YON_CONFIG_TYPE type){
if (type!=YON_CONFIG_CUSTOM){
yon_config_clean(); yon_config_clean();
}
if (!yon_char_is_empty(config_get_default_command)) if (!yon_char_is_empty(config_get_default_command))
yon_config_load_config(YON_CONFIG_DEFAULT,config_get_default_command,NULL); yon_config_load_config(YON_CONFIG_DEFAULT,config_get_default_command,NULL);
if (type==YON_CONFIG_GLOBAL){ switch (type){
yon_config_load_config(type,config_get_global_command,NULL); case YON_CONFIG_GLOBAL:
} else if (type==YON_CONFIG_LOCAL){ yon_config_load_config(type,config_get_command("global"),NULL);
yon_config_load_config(type,config_get_local_command,NULL); yon_ubl_status_box_render(yon_char_get_localised_from_lib(GLOBAL_LOAD_SUCCESS_LABEL),BACKGROUND_IMAGE_SUCCESS_TYPE);
} else if (type==YON_CONFIG_CUSTOM){ break;
char *path=""; case YON_CONFIG_LOCAL:
textdomain(template_ui_LocaleName); yon_config_load_config(type,config_get_command("system"),NULL);
GtkWidget *dialog = gtk_file_chooser_dialog_new(template_app_information.app_title,NULL,GTK_FILE_CHOOSER_ACTION_SAVE,CANCEL_LABEL,GTK_RESPONSE_CANCEL,OPEN_LABEL,GTK_RESPONSE_ACCEPT,NULL); yon_ubl_status_box_render(yon_char_get_localised_from_lib(LOCAL_LOAD_SUCCESS_LABEL),BACKGROUND_IMAGE_SUCCESS_TYPE);
textdomain(LocaleName); break;
gtk_window_set_icon_name(GTK_WINDOW(dialog),"com.ublinux.ubl-settings-services"); case YON_CONFIG_CUSTOM:
gtk_window_set_title(GTK_WINDOW(dialog),TITLE_LABEL); char *path = NULL;
GtkFileFilter *filter = gtk_file_filter_new(); path=yon_custom_config_init(GTK_FILE_CHOOSER_ACTION_OPEN);
gtk_file_filter_add_pattern(filter,"*.ini"); if (!yon_char_is_empty(path)){
gtk_file_filter_set_name(filter, "*.ini"); yon_config_clean();
gtk_file_chooser_add_filter(GTK_FILE_CHOOSER(dialog),filter); yon_config_load_config(type,config_get_command(path),NULL);
gtk_widget_show(dialog); yon_ubl_status_box_render(yon_char_get_localised_from_lib(LOCAL_LOAD_SUCCESS_LABEL),BACKGROUND_IMAGE_SUCCESS_TYPE);
int response = gtk_dialog_run(GTK_DIALOG(dialog));
if (response == GTK_RESPONSE_ACCEPT){
char *file = gtk_file_chooser_get_filename(GTK_FILE_CHOOSER(dialog));
if (!yon_char_is_empty(file)){
path=file;
}
gtk_widget_destroy(dialog);
} else {
gtk_widget_destroy(dialog);
} }
char *command = yon_config_get_custom_command(path); break;
yon_config_load_config(type,command,NULL); default:
break;
} }
} }

@ -45,9 +45,7 @@
#define get_processes_command "systemd-cgls --no-pager |grep -oE \"[-0-9A-Za-z.:]{1,}.service\"" #define get_processes_command "systemd-cgls --no-pager |grep -oE \"[-0-9A-Za-z.:]{1,}.service\""
#define get_slices_command "systemd-cgls --no-pager |grep -oE \"[-0-9A-Za-z.:]{1,}.slice\"" #define get_slices_command "systemd-cgls --no-pager |grep -oE \"[-0-9A-Za-z.:]{1,}.slice\""
#define yon_config_get_custom_command(target) yon_char_unite("ubconfig --source ",target," get security CGROUP_QUOTA[*]",NULL) #define config_get_command(target) yon_char_unite("ubconfig --source ",target," get security CGROUP_QUOTA[*]",NULL)
#define config_get_local_command "ubconfig --default --source system get security CGROUP_QUOTA[*]"
#define config_get_global_command "ubconfig --default --source global get security CGROUP_QUOTA[*]"
#define config_get_default_command "" #define config_get_default_command ""
#define config_get_global_only_parameters "" #define config_get_global_only_parameters ""

Loading…
Cancel
Save