From 9380c68a1a8f6232a1faa0c169eee6b6c4ae889f Mon Sep 17 00:00:00 2001 From: Christopher James Lahey Date: Fri, 18 Jan 2002 14:31:04 +0000 Subject: Sort country list. Country list moves from fulladdr.glade to 2002-01-18 Christopher James Lahey * gui/contact-editor/e-contact-editor-address.c (fill_in_countries), gui/contact-editor/fulladdr.glade: Sort country list. Country list moves from fulladdr.glade to e-contact-editor-address.c, but only a few country names have actually changed. Fixes Ximian bug #16545. svn path=/trunk/; revision=15354 --- .../gui/contact-editor/e-contact-editor-address.c | 285 ++++++++++++++++++++- 1 file changed, 284 insertions(+), 1 deletion(-) (limited to 'addressbook/gui/contact-editor/e-contact-editor-address.c') 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 + +#include + +#include +#include +#include #include #include #include -#include #include +#include +#include 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); -- cgit v1.2.3