Fixed repeating of system locales

pull/79/head
parent ec9a4e099e
commit c3dac217d8
No known key found for this signature in database
GPG Key ID: FF1D842BF4DDE92B

@ -176,14 +176,11 @@ void yon_interface_update(main_window *widgets){
int valid = gtk_tree_model_get_iter_first(GTK_TREE_MODEL(widgets->languagelist),&iter); int valid = gtk_tree_model_get_iter_first(GTK_TREE_MODEL(widgets->languagelist),&iter);
for(;valid;valid=gtk_tree_model_iter_next(GTK_TREE_MODEL(widgets->languagelist),&iter)){ for(;valid;valid=gtk_tree_model_iter_next(GTK_TREE_MODEL(widgets->languagelist),&iter)){
gtk_tree_model_get(GTK_TREE_MODEL(widgets->languagelist),&iter,0,&loc_name,1,&code,2,&is_active,-1); gtk_tree_model_get(GTK_TREE_MODEL(widgets->languagelist),&iter,0,&loc_name,1,&code,2,&is_active,-1);
for (int i=0;i<locsize;i++){ if (yon_char_parsed_check_exist(locale_parsed,locsize,code)>-1){
if (!strcmp(code,locale_parsed[i])||!strcmp(code,lang)) { gtk_list_store_set(widgets->languagelist,&iter,2,1,-1);
gtk_list_store_set(widgets->languagelist,&iter,2,1,-1); char *temp = yon_char_unite(yon_char_is_empty(locale_string)?"":locale_string,yon_char_is_empty(locale_string)?"":"; ",loc_name,NULL);
char *temp = yon_char_unite(yon_char_is_empty(locale_string)?"":locale_string,yon_char_is_empty(locale_string)?"":"; ",loc_name,NULL); if (!yon_char_is_empty(locale_string)) free(locale_string);
if (!yon_char_is_empty(locale_string)) free(locale_string); locale_string = temp;
locale_string = temp;
// locale_string = yon_char_unite(yon_char_is_empty(locale_string) ? yon_char_append(locale_string,"; ") : locale_string, loc_name,NULL);
}
} }
} }
if (strcmp(locale_string,"")) gtk_entry_set_text(GTK_ENTRY(widgets->LocaleEntry),locale_string); if (strcmp(locale_string,"")) gtk_entry_set_text(GTK_ENTRY(widgets->LocaleEntry),locale_string);
@ -800,12 +797,14 @@ main_window *yon_main_window_complete(main_window *widgets){
gtk_list_store_append(widgets->languagelist,&iter); gtk_list_store_append(widgets->languagelist,&iter);
gtk_list_store_set(widgets->languagelist,&iter,0,_(loc_parsed[1]),1,loc_parsed[0],2,0,-1); gtk_list_store_set(widgets->languagelist,&iter,0,_(loc_parsed[1]),1,loc_parsed[0],2,0,-1);
} }
yon_char_parsed_free(locales,size);
config_str fonts = yon_resource_open_file(get_fonts_command,&size); config_str fonts = yon_resource_open_file(get_fonts_command,&size);
for (int i=1;i<size;i++){ for (int i=1;i<size;i++){
fonts[i]=yon_char_divide_search(fonts[i],"\n",-1); fonts[i]=yon_char_divide_search(fonts[i],"\n",-1);
gtk_list_store_append(widgets->fontlist,&iter); gtk_list_store_append(widgets->fontlist,&iter);
gtk_list_store_set(widgets->fontlist,&iter,0,fonts[i],-1); gtk_list_store_set(widgets->fontlist,&iter,0,fonts[i],-1);
} }
yon_char_parsed_free(fonts,size);
if (main_config.lock_load_global == 1){ if (main_config.lock_load_global == 1){
gtk_widget_set_sensitive(widgets->LoadGlobalMenuItem,0); gtk_widget_set_sensitive(widgets->LoadGlobalMenuItem,0);
} }

Loading…
Cancel
Save