# HG changeset patch # User Richard Laager # Date 1225071953 0 # Node ID 30b833565a7334cb73bf078d710c0546ce404b0c # Parent 5afa979d57fcfe88a2eddf3958fddbe2552e2091 Remove duplicated code for building the lists. diff -r 5afa979d57fc -r 30b833565a73 pidgin/gtkdialogs.c --- a/pidgin/gtkdialogs.c Mon Oct 27 00:31:05 2008 +0000 +++ b/pidgin/gtkdialogs.c Mon Oct 27 01:45:53 2008 +0000 @@ -134,7 +134,7 @@ }; /* Order: Code, then Alphabetical by Last Name */ -static const struct translator current_translators[] = { +static const struct translator translators[] = { {N_("Afrikaans"), "af", "Samuel Murray", "afrikaans@gmail.com"}, {N_("Afrikaans"), "af", "Friedel Wolff", "friedel@translate.org.za"}, {N_("Arabic"), "ar", "Khaled Hosny", "khaledhosny@eglug.org"}, @@ -286,6 +286,45 @@ {NULL, NULL, NULL, NULL} }; +static void +add_developers(GString *str, const struct developer *list) +{ + for (; list->name != NULL; list++) { + if (list->email != NULL) { + g_string_append_printf(str, " %s%s%s%s
", + list->email, _(list->name), + list->role ? " (" : "", + list->role ? _(list->role) : "", + list->role ? ")" : ""); + } else { + g_string_append_printf(str, " %s%s%s%s
", + _(list->name), + list->role ? " (" : "", + list->role ? _(list->role) : "", + list->role ? ")" : ""); + } + } +} + +static void +add_translators(GString *str, const struct translator *list) +{ + for (; list->language != NULL; list++) { + if (list->email != NULL) { + g_string_append_printf(str, " %s (%s) - %s
", + _(list->language), + list->abbr, + list->email, + _(list->name)); + } else { + g_string_append_printf(str, " %s (%s) - %s
", + _(list->language), + list->abbr, + _(list->name)); + } + } +} + void pidgin_dialogs_destroy_all() { @@ -351,7 +390,6 @@ GtkWidget *button; GtkTextIter iter; GString *str; - int i; AtkObject *obj; char* filename, *tmp; GdkPixbuf *pixbuf; @@ -422,119 +460,37 @@ /* Current Developers */ g_string_append_printf(str, "%s:
", _("Current Developers")); - for (i = 0; developers[i].name != NULL; i++) { - if (developers[i].email != NULL) { - g_string_append_printf(str, " %s%s%s%s
", - developers[i].email, _(developers[i].name), - developers[i].role ? " (" : "", - developers[i].role ? _(developers[i].role) : "", - developers[i].role ? ")" : ""); - } else { - g_string_append_printf(str, " %s%s%s%s
", - _(developers[i].name), - developers[i].role ? " (" : "", - developers[i].role ? _(developers[i].role) : "", - developers[i].role ? ")" : ""); - } - } + add_developers(str, developers); g_string_append(str, "
"); /* Crazy Patch Writers */ g_string_append_printf(str, "%s:
", _("Crazy Patch Writers")); - for (i = 0; patch_writers[i].name != NULL; i++) { - if (patch_writers[i].email != NULL) { - g_string_append_printf(str, " %s%s%s%s
", - patch_writers[i].email, _(patch_writers[i].name), - patch_writers[i].role ? " (" : "", - patch_writers[i].role ? _(patch_writers[i].role) : "", - patch_writers[i].role ? ")" : ""); - } else { - g_string_append_printf(str, " %s%s%s%s
", - _(patch_writers[i].name), - patch_writers[i].role ? " (" : "", - patch_writers[i].role ? _(patch_writers[i].role) : "", - patch_writers[i].role ? ")" : ""); - } - } + add_developers(str, patch_writers); g_string_append(str, "
"); /* Retired Developers */ g_string_append_printf(str, "%s:
", _("Retired Developers")); - for (i = 0; retired_developers[i].name != NULL; i++) { - if (retired_developers[i].email != NULL) { - g_string_append_printf(str, " %s%s%s%s
", - retired_developers[i].email, _(retired_developers[i].name), - retired_developers[i].role ? " (" : "", - retired_developers[i].role ? _(retired_developers[i].role) : "", - retired_developers[i].role ? ")" : ""); - } else { - g_string_append_printf(str, " %s%s%s%s
", - _(retired_developers[i].name), - retired_developers[i].role ? " (" : "", - retired_developers[i].role ? _(retired_developers[i].role) : "", - retired_developers[i].role ? ")" : ""); - } - } + add_developers(str, retired_developers); g_string_append(str, "
"); /* Retired Crazy Patch Writers */ g_string_append_printf(str, "%s:
", _("Retired Crazy Patch Writers")); - for (i = 0; retired_patch_writers[i].name != NULL; i++) { - if (retired_patch_writers[i].email != NULL) { - g_string_append_printf(str, " %s%s%s%s
", - retired_patch_writers[i].email, _(retired_patch_writers[i].name), - retired_patch_writers[i].role ? " (" : "", - retired_patch_writers[i].role ? _(retired_patch_writers[i].role) : "", - retired_patch_writers[i].role ? ")" : ""); - } else { - g_string_append_printf(str, " %s%s%s%s
", - _(retired_patch_writers[i].name), - retired_patch_writers[i].role ? " (" : "", - retired_patch_writers[i].role ? _(retired_patch_writers[i].role) : "", - retired_patch_writers[i].role ? ")" : ""); - } - } + add_developers(str, retired_patch_writers); g_string_append(str, "
"); /* Current Translators */ g_string_append_printf(str, "%s:
", _("Current Translators")); - for (i = 0; current_translators[i].language != NULL; i++) { - if (current_translators[i].email != NULL) { - g_string_append_printf(str, " %s (%s) - %s
", - _(current_translators[i].language), - current_translators[i].abbr, - current_translators[i].email, - _(current_translators[i].name)); - } else { - g_string_append_printf(str, " %s (%s) - %s
", - _(current_translators[i].language), - current_translators[i].abbr, - _(current_translators[i].name)); - } - } + add_translators(str, translators); g_string_append(str, "
"); /* Past Translators */ g_string_append_printf(str, "%s:
", _("Past Translators")); - for (i = 0; past_translators[i].language != NULL; i++) { - if (past_translators[i].email != NULL) { - g_string_append_printf(str, " %s (%s) - %s
", - _(past_translators[i].language), - past_translators[i].abbr, - past_translators[i].email, - _(past_translators[i].name)); - } else { - g_string_append_printf(str, " %s (%s) - %s
", - _(past_translators[i].language), - past_translators[i].abbr, - _(past_translators[i].name)); - } - } + add_translators(str, past_translators); g_string_append(str, "
"); g_string_append_printf(str, "%s
", _("Debugging Information"));