WIP localisatino switching

pull/101/head
parent 8afad8a2b3
commit 103df1b592
No known key found for this signature in database
GPG Key ID: FF1D842BF4DDE92B

@ -1,24 +1,66 @@
af_ZA.UTF-8;Afrikaans, South Africa
ar_AE.UTF-8;Arabic, United Arab Emirates
az_AZ.UTF-8;Azerbaijani, Azerbaijan
ka_GE.UTF-8;Georgian
kk_KZ.UTF-8;Kazakh, Kazakhstan
kn_IN.UTF-8;Kannada, India
ko_KR.UTF-8;Korean, Korea
zh_CN.UTF-8;Simplified Chinese
zh_TW.UTF-8;Traditional Chinese
vi_VN.UTF-8;Vietnamese
uk_UA.UTF-8;Ukrainian
tr_TR.UTF-8;Turkish
th_TH.UTF-8;Thai
sv_SE.UTF-8;Swedish
sr_RS.UTF-8;Serbian
sq_AL.UTF-8;Albanian
sk_SK.UTF-8;Slovak, Slovakia
sl_SI.UTF-8;Slovenian
ru_RU.UTF-8;Russian
pt_PT.UTF-8;Portuguese, Portugal
ro_RO.UTF-8;Romanian
pl_PL.UTF-8;Polish
ms_MY.UTF-8;Malay, Malaysia
mt_MT.UTF-8;Maltese
LANG_GROUP;LANG;LANG_NAME
af;af_ZA.UTF-8;Afrikaans
ar;ar_AE.UTF-8;Arabic
as;as_IN.UTF-8;Assamese
az;az_AZ.UTF-8;Azerbaijani
be;be_BY.UTF-8;Belarusian
bg;bg_BG.UTF-8;Bulgarian
bn;bn_IN.UTF-8;Bengali
bs;bs_BA.UTF-8;Bosnian
ca;ca_ES.UTF-8;Catalan
cs;cs_CZ.UTF-8;Czech
da;da_DK.UTF-8;Danish
de;de_DE.UTF-8;German
el;el_GR.UTF-8;Greek
en;en_GB.UTF-8;English
es;es_ES.UTF-8;Spanish
et;et_EE.UTF-8;Estonian
fi;fi_FI.UTF-8;Finnish
fr;fr_FR.UTF-8;French
gu;gu_IN.UTF-8;Gujarati
he;he_IL.UTF-8;Hebrew
hi;hi_IN.UTF-8;Hindi
hr;hr_HR.UTF-8;Croatian
hu;hu_HU.UTF-8;Hungarian
hy;hy_AM.UTF-8;Armenian
id;id_ID.UTF-8;Indonesian
is;is_IS.UTF-8;Icelandic
it;it_IT.UTF-8;Italian
ja;ja_JP.UTF-8;Japanese
ka;ka_GE.UTF-8;Georgian
kk;kk_KZ.UTF-8;Kazakh
kn;kn_IN.UTF-8;Kannada
ko;ko_KR.UTF-8;Korean
ks;ks_IN.UTF-8;Kashmiri
ku;ku_TR.UTF-8;Kurdish
ky;ky_KG.UTF-8;Kirghiz
lt;lt_LT.UTF-8;Lithuanian
lv;lv_LV.UTF-8;Latvian
mk;mk_MK.UTF-8;Macedonian
ml;ml_IN.UTF-8;Malayalam
mr;mr_IN.UTF-8;Marathi
ms;ms_MY.UTF-8;Malay
mt;mt_MT.UTF-8;Maltese
nb;nb_NO.UTF-8;Bokmal
nl;nl_NL.UTF-8;Dutch
nn;nn_NO.UTF-8;Nynorsk
or;or_IN.UTF-8;Oriya
pa;pa_IN.UTF-8;Punjabi
pl;pl_PL.UTF-8;Polish
pt;pt_PT.UTF-8;Portuguese
ro;ro_RO.UTF-8;Romanian
ru;ru_RU.UTF-8;Russian
sa;sa_IN.UTF-8;Sanskrit
sk;sk_SK.UTF-8;Slovak
sl;sl_SI.UTF-8;Slovenian
sq;sq_AL.UTF-8;Albanian
sr;sr_ME.UTF-8;Serbian
sr;sr_RS.UTF-8;Serbian
sv;sv_SE.UTF-8;Swedish
ta;ta_IN.UTF-8;Tamil
te;te_IN.UTF-8;Telugu
th;th_TH.UTF-8;Thai
tr;tr_TR.UTF-8;Turkish
uk;uk_UA.UTF-8;Ukrainian
vi;vi_VN.UTF-8;Vietnamese
zh;zh_CN.UTF-8;Simplified Chinese
1 af_ZA.UTF-8 LANG_GROUP Afrikaans, South Africa LANG LANG_NAME
2 ar_AE.UTF-8 af Arabic, United Arab Emirates af_ZA.UTF-8 Afrikaans
3 az_AZ.UTF-8 ar Azerbaijani, Azerbaijan ar_AE.UTF-8 Arabic
4 ka_GE.UTF-8 as Georgian as_IN.UTF-8 Assamese
5 kk_KZ.UTF-8 az Kazakh, Kazakhstan az_AZ.UTF-8 Azerbaijani
6 kn_IN.UTF-8 be Kannada, India be_BY.UTF-8 Belarusian
7 ko_KR.UTF-8 bg Korean, Korea bg_BG.UTF-8 Bulgarian
8 zh_CN.UTF-8 bn Simplified Chinese bn_IN.UTF-8 Bengali
9 zh_TW.UTF-8 bs Traditional Chinese bs_BA.UTF-8 Bosnian
10 vi_VN.UTF-8 ca Vietnamese ca_ES.UTF-8 Catalan
11 uk_UA.UTF-8 cs Ukrainian cs_CZ.UTF-8 Czech
12 tr_TR.UTF-8 da Turkish da_DK.UTF-8 Danish
13 th_TH.UTF-8 de Thai de_DE.UTF-8 German
14 sv_SE.UTF-8 el Swedish el_GR.UTF-8 Greek
15 sr_RS.UTF-8 en Serbian en_GB.UTF-8 English
16 sq_AL.UTF-8 es Albanian es_ES.UTF-8 Spanish
17 sk_SK.UTF-8 et Slovak, Slovakia et_EE.UTF-8 Estonian
18 sl_SI.UTF-8 fi Slovenian fi_FI.UTF-8 Finnish
19 ru_RU.UTF-8 fr Russian fr_FR.UTF-8 French
20 pt_PT.UTF-8 gu Portuguese, Portugal gu_IN.UTF-8 Gujarati
21 ro_RO.UTF-8 he Romanian he_IL.UTF-8 Hebrew
22 pl_PL.UTF-8 hi Polish hi_IN.UTF-8 Hindi
23 ms_MY.UTF-8 hr Malay, Malaysia hr_HR.UTF-8 Croatian
24 mt_MT.UTF-8 hu Maltese hu_HU.UTF-8 Hungarian
25 hy hy_AM.UTF-8 Armenian
26 id id_ID.UTF-8 Indonesian
27 is is_IS.UTF-8 Icelandic
28 it it_IT.UTF-8 Italian
29 ja ja_JP.UTF-8 Japanese
30 ka ka_GE.UTF-8 Georgian
31 kk kk_KZ.UTF-8 Kazakh
32 kn kn_IN.UTF-8 Kannada
33 ko ko_KR.UTF-8 Korean
34 ks ks_IN.UTF-8 Kashmiri
35 ku ku_TR.UTF-8 Kurdish
36 ky ky_KG.UTF-8 Kirghiz
37 lt lt_LT.UTF-8 Lithuanian
38 lv lv_LV.UTF-8 Latvian
39 mk mk_MK.UTF-8 Macedonian
40 ml ml_IN.UTF-8 Malayalam
41 mr mr_IN.UTF-8 Marathi
42 ms ms_MY.UTF-8 Malay
43 mt mt_MT.UTF-8 Maltese
44 nb nb_NO.UTF-8 Bokmal
45 nl nl_NL.UTF-8 Dutch
46 nn nn_NO.UTF-8 Nynorsk
47 or or_IN.UTF-8 Oriya
48 pa pa_IN.UTF-8 Punjabi
49 pl pl_PL.UTF-8 Polish
50 pt pt_PT.UTF-8 Portuguese
51 ro ro_RO.UTF-8 Romanian
52 ru ru_RU.UTF-8 Russian
53 sa sa_IN.UTF-8 Sanskrit
54 sk sk_SK.UTF-8 Slovak
55 sl sl_SI.UTF-8 Slovenian
56 sq sq_AL.UTF-8 Albanian
57 sr sr_ME.UTF-8 Serbian
58 sr sr_RS.UTF-8 Serbian
59 sv sv_SE.UTF-8 Swedish
60 ta ta_IN.UTF-8 Tamil
61 te te_IN.UTF-8 Telugu
62 th th_TH.UTF-8 Thai
63 tr tr_TR.UTF-8 Turkish
64 uk uk_UA.UTF-8 Ukrainian
65 vi vi_VN.UTF-8 Vietnamese
66 zh zh_CN.UTF-8 Simplified Chinese

@ -1,129 +1,130 @@
af_ZA.UTF-8;Afrikaans, South Africa
ar_AE.UTF-8;Arabic, United Arab Emirates
ar_BH.UTF-8;Arabic, Bahrain
ar_DZ.UTF-8;Arabic, Algeria
ar_EG.UTF-8;Arabic, Egypt
ar_IQ.UTF-8;Arabic, Iraq
ar_JO.UTF-8;Arabic, Jordan
ar_KW.UTF-8;Arabic, Kuwait
ar_LY.UTF-8;Arabic, Libya
ar_MA.UTF-8;Arabic, Morocco
ar_OM.UTF-8;Arabic, Oman
ar_QA.UTF-8;Arabic, Qatar
ar_SA.UTF-8;Arabic, Saudi Arabia
ar_TN.UTF-8;Arabic, Tunisia
ar_YE.UTF-8;Arabic, Yemen
as_IN.UTF-8;Assamese, India
az_AZ.UTF-8;Azerbaijani, Azerbaijan
be_BY.UTF-8;Belarusian, Belarus
bg_BG.UTF-8;Bulgarian, Bulgaria
bn_IN.UTF-8;Bengali, India
bs_BA.UTF-8;Bosnian, Bosnia and Herzegovina
ca_ES.UTF-8;Catalan, Spain
cs_CZ.UTF-8;Czech, Czech Republic
da_DK.UTF-8;Danish, Denmark
de_AT.UTF-8;German, Austria
de_BE.UTF-8;German, Belgium
de_CH.UTF-8;German, Switzerland
de_DE.UTF-8;German, Germany
de_LI.UTF-8;German, Liechtenstein
de_LU.UTF-8;German, Luxembourg
el_CY.UTF-8;Greek, Cyprus
el_GR.UTF-8;Greek, Greece
en_AU.UTF-8;English, Australia
en_BW.UTF-8;English, Botswana
en_CA.UTF-8;English, Canada
en_GB.UTF-8;English, United Kingdom
en_HK.UTF-8;English, Hong Kong SAR China
en_IE.UTF-8;English, Ireland
en_IN.UTF-8;English, India
en_MT.UTF-8;English, Malta
en_NZ.UTF-8;English, New Zealand
en_PH.UTF-8;English, Philippines
en_SG.UTF-8;English, Singapore
en_US.UTF-8;English, U.S.A.
en_ZW.UTF-8;English, Zimbabwe
es_AR.UTF-8;Spanish, Argentina
es_BO.UTF-8;Spanish, Bolivia
es_CL.UTF-8;Spanish, Chile
es_CO.UTF-8;Spanish, Colombia
es_CR.UTF-8;Spanish, Costa Rica
es_DO.UTF-8;Spanish, Dominican Republic
es_EC.UTF-8;Spanish, Ecuador
es_ES.UTF-8;Spanish, Spain
es_GT.UTF-8;Spanish, Guatemala
es_HN.UTF-8;Spanish, Honduras
es_MX.UTF-8;Spanish, Mexico
es_NI.UTF-8;Spanish, Nicaragua
es_PA.UTF-8;Spanish, Panama
es_PE.UTF-8;Spanish, Peru
es_PR.UTF-8;Spanish, Puerto Rico
es_PY.UTF-8;Spanish, Paraguay
es_SV.UTF-8;Spanish, El Salvador
es_US.UTF-8;Spanish, U.S.A.
es_UY.UTF-8;Spanish, Uruguay
es_VE.UTF-8;Spanish, Venezuela
et_EE.UTF-8;Estonian, Estonia
fi_FI.UTF-8;Finnish, Finland
fr_BE.UTF-8;French, Belgium
fr_CA.UTF-8;French, Canada
fr_CH.UTF-8;French, Switzerland
fr_FR.UTF-8;French, France
fr_LU.UTF-8;French, Luxembourg
gu_IN.UTF-8;Gujarati, India
he_IL.UTF-8;Hebrew, Israel
hi_IN.UTF-8;Hindi, India
hr_HR.UTF-8;Croatian, Croatia
hu_HU.UTF-8;Hungarian, Hungary
hy_AM.UTF-8;Armenian, Armenia
id_ID.UTF-8;Indonesian, Indonesia
is_IS.UTF-8;Icelandic, Iceland
it_CH.UTF-8;Italian, Switzerla;nd
it_IT.UTF-8;Italian, Italy
ja_JP.UTF-8;Japanese, Japan
ka_GE.UTF-8;Georgian, Georgia
kk_KZ.UTF-8;Kazakh, Kazakhstan
kn_IN.UTF-8;Kannada, India
ko_KR.UTF-8;Korean, Korea
ks_IN.UTF-8;Kashmiri, India
ku_TR.UTF-8;Kurdish, Turkey
ku_TR.UTF-8@sorani;Kurdish (Sorani), Turkey
ky_KG.UTF-8;Kirghiz, Kyrgyzstan
lt_LT.UTF-8;Lithuanian, Lithuania
lv_LV.UTF-8;Latvian, Latvia
mk_MK.UTF-8;Macedonian, Macedonia
ml_IN.UTF-8;Malayalam, India
mr_IN.UTF-8;Marathi, India
ms_MY.UTF-8;Malay, Malaysia
mt_MT.UTF-8;Maltese, Malta
nb_NO.UTF-8;Bokmal, Norway
nl_BE.UTF-8;Dutch, Belgium
nl_NL.UTF-8;Dutch, Netherlands
nn_NO.UTF-8;Nynorsk, Norway
or_IN.UTF-8;Oriya, India
pa_IN.UTF-8;Punjabi, India
pl_PL.UTF-8;Polish, Poland
pt_BR.UTF-8;Portuguese, Brazil
pt_PT.UTF-8;Portuguese, Portugal
ro_RO.UTF-8;Romanian, Romania
ru_RU.UTF-8;Russian, Russia
ru_UA.UTF-8;Russian, Ukraine
sa_IN.UTF-8;Sanskrit, India
sk_SK.UTF-8;Slovak, Slovakia
sl_SI.UTF-8;Slovenian, Slovenia
sq_AL.UTF-8;Albanian, Albania
sr_ME.UTF-8;Serbian, Montenegro
sr_ME.UTF-8@latin;Serbian, Montenegro (Latin)
sr_RS.UTF-8;Serbian, Serbia
sr_RS.UTF-8@latin;Serbian, Serbia (Latin)
sv_SE.UTF-8;Swedish, Sweden
ta_IN.UTF-8;Tamil, India
te_IN.UTF-8;Telugu, India
th_TH.UTF-8;Thai, Thailand
tr_TR.UTF-8;Turkish, Turkey
uk_UA.UTF-8;Ukrainian, Ukraine
vi_VN.UTF-8;Vietnamese, Vietnam
zh_CN.UTF-8;Simplified Chinese, China
zh_HK.UTF-8;Traditional Chinese, Hong Kong SAR China
zh_SG.UTF-8;Chinese, Singapore
zh_TW.UTF-8;Traditional Chinese, Taiwan
LANG_GROUP;LANG;LANG_NAME
af;af_ZA.UTF-8;Afrikaans, South Africa
ar;ar_AE.UTF-8;Arabic, United Arab Emirates
ar;ar_BH.UTF-8;Arabic, Bahrain
ar;ar_DZ.UTF-8;Arabic, Algeria
ar;ar_EG.UTF-8;Arabic, Egypt
ar;ar_IQ.UTF-8;Arabic, Iraq
ar;ar_JO.UTF-8;Arabic, Jordan
ar;ar_KW.UTF-8;Arabic, Kuwait
ar;ar_LY.UTF-8;Arabic, Libya
ar;ar_MA.UTF-8;Arabic, Morocco
ar;ar_OM.UTF-8;Arabic, Oman
ar;ar_QA.UTF-8;Arabic, Qatar
ar;ar_SA.UTF-8;Arabic, Saudi Arabia
ar;ar_TN.UTF-8;Arabic, Tunisia
ar;ar_YE.UTF-8;Arabic, Yemen
as;as_IN.UTF-8;Assamese, India
az;az_AZ.UTF-8;Azerbaijani, Azerbaijan
be;be_BY.UTF-8;Belarusian, Belarus
bg;bg_BG.UTF-8;Bulgarian, Bulgaria
bn;bn_IN.UTF-8;Bengali, India
bs;bs_BA.UTF-8;Bosnian, Bosnia and Herzegovina
ca;ca_ES.UTF-8;Catalan, Spain
cs;cs_CZ.UTF-8;Czech, Czech Republic
da;da_DK.UTF-8;Danish, Denmark
de;de_AT.UTF-8;German, Austria
de;de_BE.UTF-8;German, Belgium
de;de_CH.UTF-8;German, Switzerland
de;de_DE.UTF-8;German, Germany
de;de_LI.UTF-8;German, Liechtenstein
de;de_LU.UTF-8;German, Luxembourg
el;el_CY.UTF-8;Greek, Cyprus
el;el_GR.UTF-8;Greek, Greece
en;en_AU.UTF-8;English, Australia
en;en_BW.UTF-8;English, Botswana
en;en_CA.UTF-8;English, Canada
en;en_GB.UTF-8;English, United Kingdom
en;en_HK.UTF-8;English, Hong Kong SAR China
en;en_IE.UTF-8;English, Ireland
en;en_IN.UTF-8;English, India
en;en_MT.UTF-8;English, Malta
en;en_NZ.UTF-8;English, New Zealand
en;en_PH.UTF-8;English, Philippines
en;en_SG.UTF-8;English, Singapore
en;en_US.UTF-8;English, U.S.A.
en;en_ZW.UTF-8;English, Zimbabwe
es;es_AR.UTF-8;Spanish, Argentina
es;es_BO.UTF-8;Spanish, Bolivia
es;es_CL.UTF-8;Spanish, Chile
es;es_CO.UTF-8;Spanish, Colombia
es;es_CR.UTF-8;Spanish, Costa Rica
es;es_DO.UTF-8;Spanish, Dominican Republic
es;es_EC.UTF-8;Spanish, Ecuador
es;es_ES.UTF-8;Spanish, Spain
es;es_GT.UTF-8;Spanish, Guatemala
es;es_HN.UTF-8;Spanish, Honduras
es;es_MX.UTF-8;Spanish, Mexico
es;es_NI.UTF-8;Spanish, Nicaragua
es;es_PA.UTF-8;Spanish, Panama
es;es_PE.UTF-8;Spanish, Peru
es;es_PR.UTF-8;Spanish, Puerto Rico
es;es_PY.UTF-8;Spanish, Paraguay
es;es_SV.UTF-8;Spanish, El Salvador
es;es_US.UTF-8;Spanish, U.S.A.
es;es_UY.UTF-8;Spanish, Uruguay
es;es_VE.UTF-8;Spanish, Venezuela
et;et_EE.UTF-8;Estonian, Estonia
fi;fi_FI.UTF-8;Finnish, Finland
fr;fr_BE.UTF-8;French, Belgium
fr;fr_CA.UTF-8;French, Canada
fr;fr_CH.UTF-8;French, Switzerland
fr;fr_FR.UTF-8;French, France
fr;fr_LU.UTF-8;French, Luxembourg
gu;gu_IN.UTF-8;Gujarati, India
he;he_IL.UTF-8;Hebrew, Israel
hi;hi_IN.UTF-8;Hindi, India
hr;hr_HR.UTF-8;Croatian, Croatia
hu;hu_HU.UTF-8;Hungarian, Hungary
hy;hy_AM.UTF-8;Armenian, Armenia
id;id_ID.UTF-8;Indonesian, Indonesia
is;is_IS.UTF-8;Icelandic, Iceland
it;it_CH.UTF-8;Italian, Switzerla;nd
it;it_IT.UTF-8;Italian, Italy
ja;ja_JP.UTF-8;Japanese, Japan
ka;ka_GE.UTF-8;Georgian, Georgia
kk;kk_KZ.UTF-8;Kazakh, Kazakhstan
kn;kn_IN.UTF-8;Kannada, India
ko;ko_KR.UTF-8;Korean, Korea
ks;ks_IN.UTF-8;Kashmiri, India
ku;ku_TR.UTF-8;Kurdish, Turkey
ku;ku_TR.UTF-8@sorani;Kurdish (Sorani), Turkey
ky;ky_KG.UTF-8;Kirghiz, Kyrgyzstan
lt;lt_LT.UTF-8;Lithuanian, Lithuania
lv;lv_LV.UTF-8;Latvian, Latvia
mk;mk_MK.UTF-8;Macedonian, Macedonia
ml;ml_IN.UTF-8;Malayalam, India
mr;mr_IN.UTF-8;Marathi, India
ms;ms_MY.UTF-8;Malay, Malaysia
mt;mt_MT.UTF-8;Maltese, Malta
nb;nb_NO.UTF-8;Bokmal, Norway
nl;nl_BE.UTF-8;Dutch, Belgium
nl;nl_NL.UTF-8;Dutch, Netherlands
nn;nn_NO.UTF-8;Nynorsk, Norway
or;or_IN.UTF-8;Oriya, India
pa;pa_IN.UTF-8;Punjabi, India
pl;pl_PL.UTF-8;Polish, Poland
pt;pt_BR.UTF-8;Portuguese, Brazil
pt;pt_PT.UTF-8;Portuguese, Portugal
ro;ro_RO.UTF-8;Romanian, Romania
ru;ru_RU.UTF-8;Russian, Russia
ru;ru_UA.UTF-8;Russian, Ukraine
sa;sa_IN.UTF-8;Sanskrit, India
sk;sk_SK.UTF-8;Slovak, Slovakia
sl;sl_SI.UTF-8;Slovenian, Slovenia
sq;sq_AL.UTF-8;Albanian, Albania
sr;sr_ME.UTF-8;Serbian, Montenegro
sr;sr_ME.UTF-8@latin;Serbian, Montenegro (Latin)
sr;sr_RS.UTF-8;Serbian, Serbia
sr;sr_RS.UTF-8@latin;Serbian, Serbia (Latin)
sv;sv_SE.UTF-8;Swedish, Sweden
ta;ta_IN.UTF-8;Tamil, India
te;te_IN.UTF-8;Telugu, India
th;th_TH.UTF-8;Thai, Thailand
tr;tr_TR.UTF-8;Turkish, Turkey
uk;uk_UA.UTF-8;Ukrainian, Ukraine
vi;vi_VN.UTF-8;Vietnamese, Vietnam
zh;zh_CN.UTF-8;Simplified Chinese, China
zh;zh_HK.UTF-8;Traditional Chinese, Hong Kong SAR China
zh;zh_SG.UTF-8;Chinese, Singapore
zh;zh_TW.UTF-8;Traditional Chinese, Taiwan
Can't render this file because it has a wrong number of fields in line 82.

@ -310,12 +310,29 @@ void config_init(){
// void *on_setup_system_configuration(void *data);
void on_locale_changed(GtkWidget *self,GtkWidget *child,main_window *widgets){
char *window_language = g_object_get_data(G_OBJECT(child),"language");
void on_locale_changed(GtkWidget *self,main_window *widgets){
char *window_language;
GtkTreeIter iter;
GtkTreeModel *model;
if (!gtk_tree_selection_get_selected(gtk_tree_view_get_selection(GTK_TREE_VIEW(widgets->LanguagesTree)),&model,&iter)) return;
gtk_tree_model_get(model,&iter,0,&window_language,-1);
if (!yon_char_is_empty(window_language)){
yon_config_register(installer_lang_parameter,installer_lang_parameter_command,(char*)window_language);
}
int chosen_pos = gtk_flow_box_child_get_index(GTK_FLOW_BOX_CHILD(child));
}
void on_installer_language_changed(GtkWidget *self, main_window *widgets){
char *window_language;
GtkTreeIter iter;
GtkTreeModel *model;
if (gtk_tree_selection_get_selected(gtk_tree_view_get_selection(GTK_TREE_VIEW(widgets->LanguagesTree)),&model,&iter)){
gtk_tree_model_get(model,&iter,0,&window_language,-1);
}
if (!yon_char_is_empty(window_language)){
yon_config_register(installer_lang_parameter,installer_lang_parameter_command,(char*)window_language);
}
char *active_lang_id = gtk_tree_model_get_string_from_iter(model,&iter);
int size;
config_str parameters = yon_config_get_save_parameters_by_key(&size,installer_lang_parameter,NULL);
char *command_parameters = yon_char_parsed_to_string(parameters,size," ");
@ -332,8 +349,11 @@ void on_locale_changed(GtkWidget *self,GtkWidget *child,main_window *widgets){
yon_window_config_setup(GTK_WINDOW(widgets->MainWindow));
yon_window_config_load(path);
g_signal_handlers_block_by_func(G_OBJECT(self),G_CALLBACK(on_locale_changed),widgets);
gtk_flow_box_select_child(GTK_FLOW_BOX(widgets->LanguagesBox),gtk_flow_box_get_child_at_index(GTK_FLOW_BOX(widgets->LanguagesBox),chosen_pos));
model = GTK_TREE_MODEL(widgets->InstallerLanguageList);
gtk_tree_model_get_iter_from_string(model,&iter,active_lang_id);
gtk_tree_selection_select_iter(gtk_tree_view_get_selection(GTK_TREE_VIEW(widgets->LanguagesTree)),&iter);
g_signal_handlers_unblock_by_func(G_OBJECT(self),G_CALLBACK(on_locale_changed),widgets);
}
void on_additional_software_toggled(GtkWidget *, char *path, main_window *widgets){
@ -389,26 +409,63 @@ gboolean on_yon_exit(GtkWidget *,GdkEvent*, main_window *widgets){
return 1;
}
typedef struct{
char *locale_name;
char *code;
char *localised_name;
} locale_struct;
void set_locales_list(main_window *widgets){
GList *list = gtk_container_get_children(GTK_CONTAINER(widgets->LanguagesBox));
GList *iter;
for (iter=list;iter;iter=iter->next){
gtk_widget_destroy(GTK_WIDGET(iter->data));
}
int size;
config_str languages = yon_resource_open_file(installer_languages_path,&size);
for (int i=0;i<size;i++){
int parsed_size;
config_str parsed = yon_char_parse(languages[i],&parsed_size,";");
if (parsed_size==2){
GtkWidget *child = gtk_flow_box_child_new();
GtkWidget *label = gtk_label_new(_(parsed[1]));
gtk_label_set_xalign(GTK_LABEL(label),0);
gtk_container_add(GTK_CONTAINER(child),label);
g_object_set_data(G_OBJECT(child),"language",yon_char_new(parsed[0]));
gtk_widget_show_all(child);
gtk_flow_box_insert(GTK_FLOW_BOX(widgets->LanguagesBox),child,-1);
gtk_list_store_clear(widgets->InstallerLanguageList);
gtk_list_store_clear(widgets->InstallerCountryList);
GHashTable *localisations = g_hash_table_new(g_str_hash,g_str_equal);
int locales_size;
config_str locales = yon_dir_get_contents(locales_list_command,&locales_size);
dictionary *locale_dict = NULL;
for (int i=0;i<locales_size;i++){
if (!strcmp(locales[i],".")) continue;
if (!strcmp(locales[i],"..")) continue;
char *path = yon_char_unite(locales_list_command,locales[i],NULL);
int info_size;
config_str code_info = yon_file_open(path,&info_size);
char *code = yon_char_parsed_check_exist_begins_with(code_info,info_size,"lang_ab");
if (yon_char_is_empty(code)) continue;
yon_char_remove_last_symbol(code,'\n');
yon_char_remove_last_symbol(code,'"');
free(yon_char_divide_search(code,"\"",-1));
if (!g_hash_table_contains(localisations,code)) {
locale_struct *locale = malloc(sizeof(locale_struct));
memset(locale,0,sizeof(locale_struct));
locale->locale_name = yon_char_parsed_check_exist_begins_with(code_info,info_size,"language");
locale->code = code;
locale->localised_name = yon_char_parsed_check_exist_begins_with(code_info,info_size,"lang_name");
if (!yon_char_is_empty(locale->locale_name)){
yon_char_remove_last_symbol(locale->locale_name,'\n');
yon_char_remove_last_symbol(locale->locale_name,'"');
}
if (!yon_char_is_empty(locale->localised_name)){
yon_char_remove_last_symbol(locale->localised_name,'\n');
yon_char_remove_last_symbol(locale->localised_name,'"');
}
yon_dictionary_add_or_create_if_exists_with_data(locale_dict,locales[i],locale);
free(yon_char_divide_search(locale->locale_name,"\"",-1));
free(yon_char_divide_search(locale->localised_name,"\"",-1));
g_hash_table_add(localisations,code);
}
yon_char_parsed_free(code_info,info_size);
}
yon_char_parsed_free(locales,locales_size);
GtkTreeIter iter;
dictionary *dict;
for_dictionaries(dict,locale_dict){
locale_struct *locale = yon_dictionary_get_data(dict,locale_struct*);
gtk_list_store_append(widgets->InstallerLanguageList,&iter);
gtk_list_store_set(widgets->InstallerLanguageList,&iter,0,locale->code,1,locale->locale_name,2,locale->localised_name,-1);
}
}
@ -567,6 +624,8 @@ void yon_main_window_create(main_window *widgets){
widgets->LayoutList = GTK_TREE_STORE(gtk_builder_get_object(builder,"LayoutList"));
widgets->LanguagesTree=yon_gtk_builder_get_widget(builder,"LanguagesTree");
widgets->CountryLanguagesTree=yon_gtk_builder_get_widget(builder,"CountryLanguagesTree");
widgets->InstallerCountryList=GTK_LIST_STORE(gtk_builder_get_object(builder,"InstallerCountryList"));
widgets->InstallerLanguageList=GTK_LIST_STORE(gtk_builder_get_object(builder,"InstallerLanguageList"));
// widgets->LanguageCombo=yon_gtk_builder_get_widget(builder,"LanguageCombo");
widgets->RegionCombo=yon_gtk_builder_get_widget(builder,"RegionCombo");
widgets->ZoneCombo=yon_gtk_builder_get_widget(builder,"ZoneCombo");

@ -72,6 +72,8 @@
#define network_path "resource:///com/ublinux/csv/network-list.csv"
#define fs_types_path "resource:///com/ublinux/csv/filesystems-format-list.csv"
#define locales_list_command "/usr/share/i18n/locales/"
#define slide_0_path "/com/ublinux/images/slide-0.png"
#define slide_repeat_path "/com/ublinux/images/slide-1.png", \
@ -226,8 +228,8 @@ layout && /description:/ {\
#define NETWORK_parameter_command(target) yon_char_unite("ubconfig get autoinstall AUTOINSTALL['ubconfig set [network] NETWORK[",target,"@connmod]']",NULL)
#define NETWORK_devdown_parameter_command(target) yon_char_unite("ubconfig get autoinstall AUTOINSTALL['ubconfig set [network] NETWORK[",target,"@devdown]']",NULL)
#define NETWORK(target) yon_char_unite("NETWORK[",target,"@connmod]",NULL)
#define installer_lang_parameter "AUTOINSTALL[installed_lang]"
#define installer_lang_parameter_command "ubconfig --source global get [autoinstall] AUTOINSTALL[installed_lang]"
#define installer_lang_parameter "AUTOINSTALL[installer_lang]"
#define installer_lang_parameter_command "ubconfig --source global get [autoinstall] AUTOINSTALL[installer_lang]"
#define source_parameter "AUTOINSTALL[source]"
#define source_parameter_command "ubconfig --source global get [autoinstall] AUTOINSTALL[source]"
@ -441,6 +443,8 @@ typedef struct {
GtkWidget *InstallationToggle;
GtkWidget *LanguagesTree;
GtkWidget *CountryLanguagesTree;
GtkListStore *InstallerCountryList;
GtkListStore *InstallerLanguageList;
// GtkWidget *LanguageCombo;
GtkWidget *RegionCombo;
GtkWidget *ZoneCombo;
@ -965,7 +969,7 @@ void on_separate_installation_changed(GtkWidget *self, main_window *widgets);
void on_partition_changed(GtkWidget *self, main_window *widgets);
void yon_set_max_size_from_partition(GtkTreeView *table, GtkSpinButton *spin_size, GtkComboBox *size_type);
gboolean on_yon_exit(GtkWidget *,GdkEvent*, main_window *widgets);
void on_locale_changed(GtkWidget *,GtkWidget *,main_window *);
void on_locale_changed(GtkWidget *,main_window *);
void on_region_changed(GtkComboBox *self, main_window *widgets);
void on_page_cancel_clicked(GtkWidget *, main_window *widgets);
int yon_install_options_save(GtkWidget *device_tree, GtkWidget *part_tree,char *mode,main_window *widgets);
@ -1126,4 +1130,5 @@ void on_system_setup_pass(GtkWidget *, main_window *widgets);
void yon_resize_images_update(main_window *widgets);
void on_vnc_toggled(GtkWidget *self, main_window *widgets);
void yon_main_window_create(main_window *widgets);
void set_locales_list(main_window *widgets);
void set_locales_list(main_window *widgets);
void on_installer_language_changed(GtkWidget *self, main_window *widgets);

@ -50,6 +50,24 @@
<column type="gboolean"/>
</columns>
</object>
<object class="GtkListStore" id="InstallerCountryList">
<columns>
<!-- column-name LangId -->
<column type="gchararray"/>
<!-- column-name Country -->
<column type="gchararray"/>
</columns>
</object>
<object class="GtkListStore" id="InstallerLanguageList">
<columns>
<!-- column-name LangCode -->
<column type="gchararray"/>
<!-- column-name LanguageName -->
<column type="gchararray"/>
<!-- column-name LanguageLocalised -->
<column type="gchararray"/>
</columns>
</object>
<object class="GtkRadioButton" id="KernelUnchosenRadio">
<property name="visible">True</property>
<property name="sensitive">False</property>
@ -801,6 +819,7 @@ and help you install UBLinux on your computer</property>
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="spacing">5</property>
<property name="homogeneous">True</property>
<child>
<object class="GtkScrolledWindow">
<property name="visible">True</property>
@ -812,9 +831,32 @@ and help you install UBLinux on your computer</property>
<object class="GtkTreeView" id="LanguagesTree">
<property name="visible">True</property>
<property name="can-focus">True</property>
<property name="model">InstallerLanguageList</property>
<property name="headers-visible">False</property>
<child internal-child="selection">
<object class="GtkTreeSelection"/>
</child>
<child>
<object class="GtkTreeViewColumn"/>
<object class="GtkTreeViewColumn">
<property name="expand">True</property>
<child>
<object class="GtkCellRendererText"/>
<attributes>
<attribute name="text">2</attribute>
</attributes>
</child>
</object>
</child>
<child>
<object class="GtkTreeViewColumn">
<property name="title" translatable="yes">column</property>
<child>
<object class="GtkCellRendererText"/>
<attributes>
<attribute name="text">1</attribute>
</attributes>
</child>
</object>
</child>
</object>
</child>
@ -836,6 +878,7 @@ and help you install UBLinux on your computer</property>
<object class="GtkTreeView" id="CountryLanguagesTree">
<property name="visible">True</property>
<property name="can-focus">True</property>
<property name="model">InstallerCountryList</property>
<property name="headers-visible">False</property>
<child internal-child="selection">
<object class="GtkTreeSelection"/>

Loading…
Cancel
Save