Fixed saving messages

pull/150/head
parent f023f5a9e7
commit 27a7a9aef8

@ -67,40 +67,43 @@ void yon_save_parameters(main_window *widgets){
}
void on_config_save(GtkWidget *, main_window *widgets){
main_config.load_mode=3;
main_config.save_config=2;
yon_save_parameters(widgets);
yon_save_proceed(NULL,YON_CONFIG_BOTH,config_get_global_command,NULL);
}
void on_config_save_global(GtkWidget *, main_window *widgets){
main_config.load_mode=0;
main_config.save_config=0;
yon_save_parameters(widgets);
yon_save_proceed(NULL,YON_CONFIG_BOTH,config_get_global_command,NULL);
yon_save_proceed(NULL,YON_CONFIG_GLOBAL,config_get_global_command,NULL);
}
void on_config_save_local(GtkWidget *, main_window *widgets){
main_config.load_mode=1;
main_config.save_config=1;
yon_save_parameters(widgets);
yon_save_proceed(NULL,YON_CONFIG_BOTH,config_get_global_command,NULL);
yon_save_proceed(NULL,YON_CONFIG_LOCAL,config_get_global_command,NULL);
}
void on_config_save_custom(GtkWidget *, main_window *widgets){
main_config.load_mode=3;
main_config.save_config=3;
yon_save_parameters(widgets);
yon_save_proceed(NULL,YON_CONFIG_BOTH,config_get_global_command,NULL);
yon_save_proceed(NULL,YON_CONFIG_CUSTOM,config_get_global_command,NULL);
}
void on_config_load_global(){
main_config.load_mode=1;
yon_load_proceed(YON_CONFIG_GLOBAL);
}
void on_config_load_local(){
main_config.load_mode=0;
yon_load_proceed(YON_CONFIG_LOCAL);
}
void on_config_load_custom(){
main_config.load_mode=2;
yon_load_proceed(YON_CONFIG_CUSTOM);
}
@ -139,6 +142,31 @@ void yon_load_proceed(YON_CONFIG_TYPE type){
}
}
void on_save_done(main_window *widgets, config_str output, int size){
char *final_output = yon_char_parsed_to_string(output,size,"");
if (final_output){
printf("%s\n",final_output);
free(final_output);
}
yon_char_parsed_free(output,size);
yon_interface_update(widgets);
textdomain(template_ui_LocaleName);
switch (main_config.save_config){
case 0:
yon_ubl_status_box_render(GLOBAL_SAVE_SUCCESS_LABEL,BACKGROUND_IMAGE_SUCCESS_TYPE);
break;
case 1:
yon_ubl_status_box_render(LOCAL_SAVE_SUCCESS_LABEL,BACKGROUND_IMAGE_SUCCESS_TYPE);
break;
case 2:
case 3:
yon_ubl_status_box_render(GLOBAL_LOCAL_SAVE_SUCCESS_LABEL,BACKGROUND_IMAGE_SUCCESS_TYPE);
break;
}
textdomain(LocaleName);
}
void yon_interface_update(main_window *widgets){
char *ntp = config(NTPSERVERS_parameter);
char *zone = config(ZONE_parameter);
@ -436,6 +464,7 @@ void yon_main_window_complete(main_window *widgets){
yon_load_proceed(YON_CONFIG_LOCAL);
yon_interface_update(widgets);
yon_save_window_set_postsave_function(on_save_done,widgets);
}
int main(int argc, char *argv[]){

@ -59,6 +59,7 @@ char *local;
typedef struct {
template_config_fields
int save_config;
char *ntp_default;
} config;
@ -141,4 +142,5 @@ void on_date_cancel(GtkWidget *, main_window *widgets);
config_str yon_char_parsed_sort(config_str parsed, int size);
int yon_char_parsed_compare(const void *a, const void *b);
int yon_char_parsed_compare(const void *a, const void *b);
void on_save_done(main_window *widgets, config_str output, int size);
Loading…
Cancel
Save