diff options
Diffstat (limited to 'addressbook/gui')
-rw-r--r-- | addressbook/gui/contact-editor/e-contact-editor-address.c | 285 | ||||
-rw-r--r-- | addressbook/gui/contact-editor/fulladdr.glade | 236 |
2 files changed, 285 insertions, 236 deletions
diff --git a/addressbook/gui/contact-editor/e-contact-editor-address.c b/addressbook/gui/contact-editor/e-contact-editor-address.c index a826849f2f..1e55217e48 100644 --- a/addressbook/gui/contact-editor/e-contact-editor-address.c +++ b/addressbook/gui/contact-editor/e-contact-editor-address.c @@ -20,11 +20,18 @@ */ #include <config.h> + +#include <e-contact-editor-address.h> + +#include <glib.h> +#include <libgnome/gnome-defs.h> +#include <libgnome/gnome-i18n.h> #include <libgnomeui/gnome-stock.h> #include <gal/widgets/e-unicode.h> #include <gal/widgets/e-gui-utils.h> -#include <e-contact-editor-address.h> #include <gtk/gtkcombo.h> +#include <string.h> +#include <stdlib.h> static void e_contact_editor_address_init (EContactEditorAddress *card); static void e_contact_editor_address_class_init (EContactEditorAddressClass *klass); @@ -116,6 +123,281 @@ setup_tab_order(GladeXML *gui) } } +static char * countries [] = { + N_("United States"), + N_("Afghanistan"), + N_("Albania"), + N_("Algeria"), + N_("American Samoa"), + N_("Andorra"), + N_("Angola"), + N_("Anguilla"), + N_("Antarctica"), + N_("Antigua And Barbuda"), + N_("Argentina"), + N_("Armenia"), + N_("Aruba"), + N_("Australia"), + N_("Austria"), + N_("Azerbaijan"), + N_("Bahamas"), + N_("Bahrain"), + N_("Bangladesh"), + N_("Barbados"), + N_("Belarus"), + N_("Belgium"), + N_("Belize"), + N_("Benin"), + N_("Bermuda"), + N_("Bhutan"), + N_("Bolivia"), + N_("Bosnia And Herzegowina"), + N_("Botswana"), + N_("Bouvet Island"), + N_("Brazil"), + N_("British Indian Ocean Territory"), + N_("Brunei Darussalam"), + N_("Bulgaria"), + N_("Burkina Faso"), + N_("Burundi"), + N_("Cambodia"), + N_("Cameroon"), + N_("Canada"), + N_("Cape Verde"), + N_("Cayman Islands"), + N_("Central African Republic"), + N_("Chad"), + N_("Chile"), + N_("China"), + N_("Christmas Island"), + N_("Cocos (Keeling) Islands"), + N_("Colombia"), + N_("Comoros"), + N_("Congo"), + N_("Congo"), + N_("Cook Islands"), + N_("Costa Rica"), + N_("Cote d'Ivoire"), + N_("Croatia"), + N_("Cuba"), + N_("Cyprus"), + N_("Czech Republic"), + N_("Denmark"), + N_("Djibouti"), + N_("Dominica"), + N_("Dominican Republic"), + N_("East Timor"), + N_("Ecuador"), + N_("Egypt"), + N_("El Salvador"), + N_("Equatorial Guinea"), + N_("Eritrea"), + N_("Estonia"), + N_("Ethiopia"), + N_("Falkland Islands"), + N_("Faroe Islands"), + N_("Fiji"), + N_("Finland"), + N_("France"), + N_("French Guiana"), + N_("French Polynesia"), + N_("French Southern Territories"), + N_("Gabon"), + N_("Gambia"), + N_("Georgia"), + N_("Germany"), + N_("Ghana"), + N_("Gibraltar"), + N_("Greece"), + N_("Greenland"), + N_("Grenada"), + N_("Guadeloupe"), + N_("Guam"), + N_("Guatemala"), + N_("Guinea"), + N_("Guinea-bissau"), + N_("Guyana"), + N_("Haiti"), + N_("Heard And McDonald Islands"), + N_("Holy See"), + N_("Honduras"), + N_("Hong Kong"), + N_("Hungary"), + N_("Iceland"), + N_("India"), + N_("Indonesia"), + N_("Ireland"), + N_("Israel"), + N_("Italy"), + N_("Jamaica"), + N_("Japan"), + N_("Jordan"), + N_("Kazakhstan"), + N_("Kenya"), + N_("Kiribati"), + N_("Korea, Republic Of"), + N_("Kuwait"), + N_("Kyrgyzstan"), + N_("Laos"), + N_("Latvia"), + N_("Lebanon"), + N_("Lesotho"), + N_("Liberia"), + N_("Liechtenstein"), + N_("Lithuania"), + N_("Luxembourg"), + N_("Macau"), + N_("Macedonia"), + N_("Madagascar"), + N_("Malawi"), + N_("Malaysia"), + N_("Maldives"), + N_("Mali"), + N_("Malta"), + N_("Marshall Islands"), + N_("Martinique"), + N_("Mauritania"), + N_("Mauritius"), + N_("Mayotte"), + N_("Mexico"), + N_("Micronesia"), + N_("Moldova, Republic Of"), + N_("Monaco"), + N_("Mongolia"), + N_("Montserrat"), + N_("Morocco"), + N_("Mozambique"), + N_("Myanmar"), + N_("Namibia"), + N_("Nauru"), + N_("Nepal"), + N_("Netherlands"), + N_("Netherlands Antilles"), + N_("New Caledonia"), + N_("New Zealand"), + N_("Nicaragua"), + N_("Niger"), + N_("Nigeria"), + N_("Niue"), + N_("Norfolk Island"), + N_("Northern Mariana Islands"), + N_("Norway"), + N_("Oman"), + N_("Pakistan"), + N_("Palau"), + N_("Palestinian Territory"), + N_("Panama"), + N_("Papua New Guinea"), + N_("Paraguay"), + N_("Peru"), + N_("Philippines"), + N_("Pitcairn"), + N_("Poland"), + N_("Portugal"), + N_("Puerto Rico"), + N_("Qatar"), + N_("Reunion"), + N_("Romania"), + N_("Russian Federation"), + N_("Rwanda"), + N_("Saint Kitts And Nevis"), + N_("Saint Lucia"), + N_("Saint Vincent And The Grena-dines"), + N_("Samoa"), + N_("San Marino"), + N_("Sao Tome And Principe"), + N_("Saudi Arabia"), + N_("Senegal"), + N_("Seychelles"), + N_("Sierra Leone"), + N_("Singapore"), + N_("Slovakia"), + N_("Slovenia"), + N_("Solomon Islands"), + N_("Somalia"), + N_("South Africa"), + N_("South Georgia And The South Sandwich Islands"), + N_("Spain"), + N_("Sri Lanka"), + N_("St. Helena"), + N_("St. Pierre And Miquelon"), + N_("Sudan"), + N_("Suriname"), + N_("Svalbard And Jan Mayen Islands"), + N_("Swaziland"), + N_("Sweden"), + N_("Switzerland"), + N_("Taiwan"), + N_("Tajikistan"), + N_("Tanzania, United Republic Of"), + N_("Thailand"), + N_("Togo"), + N_("Tokelau"), + N_("Tonga"), + N_("Trinidad And Tobago"), + N_("Tunisia"), + N_("Turkey"), + N_("Turkmenistan"), + N_("Turks And Caicos Islands"), + N_("Tuvalu"), + N_("Uganda"), + N_("Ukraine"), + N_("United Arab Emirates"), + N_("United Kingdom"), + N_("United States Minor Outlying Islands"), + N_("Uruguay"), + N_("Uzbekistan"), + N_("Vanuatu"), + N_("Venezuela"), + N_("Viet Nam"), + N_("Virgin Islands, British"), + N_("Virgin Islands, U.S."), + N_("Wallis And Futuna Islands"), + N_("Western Sahara"), + N_("Yemen"), + N_("Yugoslavia"), + N_("Zambia"), + N_("Zimbabwe"), + NULL +}; + +static int +compare_func (const void *voida, const void *voidb) +{ + char * const *stringa = voida, * const *stringb = voidb; + + return strcoll (*stringa, *stringb); +} + +static void +fill_in_countries (GladeXML *gui) +{ + GtkCombo *combo; + combo = (GtkCombo *) glade_xml_get_widget(gui, "combo-country"); + if (combo && GTK_IS_COMBO (combo)) { + static gboolean sorted = FALSE; + static GList *country_list; + if (!sorted) { + int i; + char *locale; + + for (i = 0; countries[i]; i++) { + countries[i] = _(countries[i]); + } + + locale = setlocale (LC_COLLATE, NULL); + qsort (countries + 1, i - 1, sizeof (countries[0]), compare_func); + country_list = NULL; + for (i = 0; countries[i]; i++) { + country_list = g_list_prepend (country_list, countries[i]); + } + country_list = g_list_reverse (country_list); + sorted = TRUE; + } + gtk_combo_set_popdown_strings (combo, country_list); + } +} + static void e_contact_editor_address_init (EContactEditorAddress *e_contact_editor_address) { @@ -136,6 +418,7 @@ e_contact_editor_address_init (EContactEditorAddress *e_contact_editor_address) e_contact_editor_address->gui = gui; setup_tab_order (gui); + fill_in_countries (gui); widget = glade_xml_get_widget(gui, "table-checkaddress"); gtk_widget_ref(widget); diff --git a/addressbook/gui/contact-editor/fulladdr.glade b/addressbook/gui/contact-editor/fulladdr.glade index 432e081c60..d66b9163e8 100644 --- a/addressbook/gui/contact-editor/fulladdr.glade +++ b/addressbook/gui/contact-editor/fulladdr.glade @@ -360,241 +360,7 @@ <case_sensitive>False</case_sensitive> <use_arrows>True</use_arrows> <use_arrows_always>False</use_arrows_always> - <items>United States -Afghanistan -Albania -Algeria -American Samoa -Andorra -Angola -Anguilla -Antarctica -Antigua And Barbuda -Argentina -Armenia -Aruba -Australia -Austria -Azerbaijan -Bahamas -Bahrain -Bangladesh -Barbados -Belarus -Belgium -Belize -Benin -Bermuda -Bhutan -Bolivia -Bosnia And Herzegowina -Botswana -Bouvet Island -Brazil -British Indian Ocean Territory -Brunei Darussalam -Bulgaria -Burkina Faso -Burundi -Cambodia -Cameroon -Canada -Cape Verde -Cayman Islands -Central African Republic -Chad -Chile -China -Christmas Island -Cocos (Keeling) Islands -Colombia -Comoros -Congo -Congo -Cook Islands -Costa Rica -Cote d'Ivoire -Croatia -Cuba -Cyprus -Czech Republic -Denmark -Djibouti -Dominica -Dominican Republic -East Timor -Ecuador -Egypt -El Salvador -Equatorial Guinea -Eritrea -Estonia -Ethiopia -Falkland Islands -Faroe Islands -Fiji -Finland -France -French Guiana -French Polynesia -French Southern Territories -Gabon -Gambia -Georgia -Germany -Ghana -Gibraltar -Greece -Greenland -Grenada -Guadeloupe -Guam -Guatemala -Guinea -Guinea-bissau -Guyana -Haiti -Heard And McDonald Islands -Holy See -Honduras -Hong Kong -Hungary -Iceland -India -Indonesia -Ireland -Israel -Italy -Jamaica -Japan -Jordan -Kazakhstan -Kenya -Kiribati -Republic Of Korea -Kuwait -Kyrgyzstan -Laos -Latvia -Lebanon -Lesotho -Liberia -Liechtenstein -Lithuania -Luxembourg -Macau -Macedonia -Madagascar -Malawi -Malaysia -Maldives -Mali -Malta -Marshall Islands -Martinique -Mauritania -Mauritius -Mayotte -Mexico -Micronesia -Republic Of Moldova -Monaco -Mongolia -Montserrat -Morocco -Mozambique -Myanmar -Namibia -Nauru -Nepal -Netherlands -Netherlands Antilles -New Caledonia -New Zealand -Nicaragua -Niger -Nigeria -Niue -Norfolk Island -Northern Mariana Islands -Norway -Oman -Pakistan -Palau -Palestinian Territory -Panama -Papua New Guinea -Paraguay -Peru -Philippines -Pitcairn -Poland -Portugal -Puerto Rico -Qatar -Reunion -Romania -Russian Federation -Rwanda -Saint Kitts And Nevis -Saint Lucia -Saint Vincent And The Grena-dines -Samoa -San Marino -Sao Tome And Principe -Saudi Arabia -Senegal -Seychelles -Sierra Leone -Singapore -Slovakia -Slovenia -Solomon Islands -Somalia -South Africa -South Georgia And The South Sandwich Islands -Spain -Sri Lanka -St. Helena -St. Pierre And Miquelon -Sudan -Suriname -Svalbard And Jan Mayen Islands -Swaziland -Sweden -Switzerland -Taiwan -Tajikistan -United Republic Of Tanzania -Thailand -Togo -Tokelau -Tonga -Trinidad And Tobago -Tunisia -Turkey -Turkmenistan -Turks And Caicos Islands -Tuvalu -Uganda -Ukraine -United Arab Emirates -United Kingdom -United States Minor Outlying Islands -Uruguay -Uzbekistan -Vanuatu -Venezuela -Viet Nam -British Virgin Islands -U.S. Virgin Islands -Wallis And Futuna Islands -Western Sahara -Yemen -Yugoslavia -Zambia -Zimbabwe -</items> + <items></items> <child> <left_attach>3</left_attach> <right_attach>4</right_attach> |