# HG changeset patch # User Mark Doliner # Date 1092611274 0 # Node ID 4f2b50a0622436b4c5e746f8ad91e0239cf22400 # Parent d4e15f9d6652796b2ddbfada52bb42924debbd3b [gaim-migrate @ 10625] Do fewer moronic things with the about window. Also get rid of some assertion failed errors on oscar when you get that unable to add (no name) thing committer: Tailor Script diff -r d4e15f9d6652 -r 4f2b50a06224 src/gtkdialogs.c --- a/src/gtkdialogs.c Sun Aug 15 22:09:36 2004 +0000 +++ b/src/gtkdialogs.c Sun Aug 15 23:07:54 2004 +0000 @@ -45,6 +45,99 @@ GaimConnection *gc; }; +struct developer { + char *name; + char *role; + char *email; +}; + +struct translator { + char *language; + char *abbr; + char *name; + char *email; +}; + +static struct developer developers[] = { + {"Rob Flynn", N_("maintainer"), "gaim@robflynn.com"}, + {"Sean Egan", N_("lead developer"), "sean.egan@binghamton.edu"}, + {"Christian 'ChipX86' Hammond", N_("developer & webmaster"), NULL}, + {"Herman Bloggs", N_("win32 port"), "hermanator12002@yahoo.com"}, + {"Nathan 'faceprint' Walp", N_("developer"), NULL}, + {"Mark 'KingAnt' Doliner", N_("developer"), NULL}, + {"Ethan 'Paco-Paco' Blanton", N_("developer"), NULL}, + {"Tim 'marv' Ringenbach", N_("developer"), NULL}, + {"Luke 'LSchiere' Schierer", N_("support"), NULL}, + {NULL, NULL, NULL} +}; + +static struct developer retired_developers[] = { + {"Adam Fritzler", N_("former libfaim maintainer"), NULL}, + {"Eric Warmenhoven", N_("former lead developer"), "warmenhoven@yahoo.com"}, + {"Jim Duchek", N_("former maintainer"), NULL}, + {"Jim Seymour", N_("former Jabber developer"), NULL}, + {"Mark Spencer", N_("original author"), "markster@marko.net"}, + {"Syd Logan", N_("hacker and designated driver [lazy bum]"), NULL}, + {NULL, NULL, NULL} +}; + +static struct translator current_translators[] = { + {N_("Bulgarian"), "bg", "Alexander Shopov", "al_shopov@users.sf.net"}, + {N_("Catalan"), "ca", "Robert Millan", "zeratul2@wanadoo.es"}, + {N_("Czech"), "cs", "Miloslav Trmac", "mitr@volny.cz"}, + {N_("Danish"), "da", "Morten Brix Pedersen", "morten@wtf.dk"}, + {N_("British English"), "en_GB", "Luke Ross", "lukeross@sys3175.co.uk"}, + {N_("Canadian English"), "en_CA", "Adam Weinberger", "adamw@gnome.org"}, + {N_("German"), "de", "Björn Voigt", "bjoern@cs.tu-berlin.de"}, + {N_("Spanish"), "es", "Javier Fernández-Sanguino Peña", "jfs@debian.org"}, + {N_("Finnish"), "fi", "Arto Alakulju", "arto@alakulju.net"}, + {N_("French"), "fr", "Éric Boumaour", "zongo_fr@users.sourceforge.net"}, + {N_("Hebrew"), "he", "Pavel Bibergal", "cyberkm203@hotmail.com"}, + {N_("Hindi"), "hi", "Ravishankar Shrivastava", "raviratlami@yahoo.com"}, + {N_("Hungarian"), "hu", "Zoltan Sutto", "suttozoltan@chello.hu"}, + {N_("Italian"), "it", "Claudio Satriano", "satriano@na.infn.it"}, + {N_("Japanese"), "ja", "Takashi Aihana", "aihana@gnome.gr.jp"}, + {N_("Lithuanian"), "lt", "Gediminas Čičinskas", "gediminas@parok.lt"}, + {N_("Korean"), "ko", "Kyung-uk Son", "vvs740@chol.com"}, + {N_("Dutch; Flemish"), "nl", "Vincent van Adrighem", "V.vanAdrighem@dirck.mine.nu"}, + {N_("Macedonian"), "mk", "Tomislav Markovski", "herrera@users.sf.net"}, + {N_("Norwegian"), "no", "Petter Johan Olsen", "petter.olsen@cc.uit.no"}, + {N_("Polish"), "pl", "Krzysztof Foltman, Emil Nowak", "krzysztof@foltman.com;emil5@go2.pl"}, + {N_("Portuguese"), "pt", "Duarte Henriques", "duarte_henriques@myrealbox.com"}, + {N_("Portuguese-Brazil"), "pt_BR", "Maurício de Lemos Rodrigues Collares Neto", "mauricioc@gmail.com"}, + {N_("Romanian"), "ro", "Mişu Moldovan", "dumol@go.ro"}, + {N_("Russian"), "ru", "Dmitry Beloglazov", "dmaa@users.sf.net"}, + {N_("Serbian"), "sr", "Danilo Šegan, Aleksandar Urosevic", "dsegan@gmx.net;urke@users.sourceforge.net"}, + {N_("Slovenian"), "sl", "Matjaz Horvat", "matjaz@owca.info"}, + {N_("Swedish"), "sv", "Tore Lundqvist", "tlt@mima.x.se"}, + {N_("Vietnamese"), "vi", N_("T.M.Thanh and the Gnome-Vi Team"), "gnomevi-list@lists.sf.net"}, + {N_("Simplified Chinese"), "zh_CN", "Funda Wang", "fundawang@linux.net.cn"}, + {N_("Traditional Chinese"), "zh_TW", "Ambrose C. Li, Paladin R. Liu", "acli@ada.dhs.org;paladin@ms1.hinet.net"}, + {NULL, NULL, NULL, NULL} +}; + + +static struct translator past_translators[] = { + {N_("Amharic"), "am", "Daniel Yacob", NULL}, + {N_("Bulgarian"), "bg", "Hristo Todorov", NULL}, + {N_("Catalan"), "ca", "JM Pérez Cáncer", NULL}, + {N_("Czech"), "cs", "Honza Král", NULL}, + {N_("German"), "de", "Daniel Seifert, Karsten Weiss", NULL}, + {N_("Spanish"), "es", "Amaya Rodrigo, Alejandro G Villar, Nicolás Lichtmaier, JM Pérez Cáncer", NULL}, + {N_("Finnish"), "fi", "Tero Kuusela", NULL}, + {N_("French"), "fr", "Sébastien François, Stéphane Pontier, Stéphane Wirtel, Loïc Jeannin", NULL}, + {N_("Italian"), "it", "Salvatore di Maggio", NULL}, + {N_("Japanese"), "ja", "Ryosuke Kutsuna, Taku Yasui, Junichi Uekawa", NULL}, + {N_("Korean"), "ko", "Sang-hyun S, A Ho-seok Lee", NULL}, + {N_("Polish"), "pl", "Przemysław Sułek", NULL}, + {N_("Russian"), "ru", "Sergey Volozhanin", NULL}, + {N_("Russian"), "ru", "Alexandre Prokoudine", NULL}, + {N_("Slovak"), "sk", "Daniel Režný", NULL}, + {N_("Swedish"), "sv", "Christian Rose", NULL}, + {N_("Chinese"), "zh_CN, zh_TW", "Hashao, Rocky S. Lee", NULL}, + {NULL, NULL, NULL, NULL} +}; + void gaim_gtkdialogs_destroy_all() { @@ -72,7 +165,9 @@ GtkWidget *bbox; GtkWidget *button; GtkTextIter iter; - gchar *str, *labeltext; + GString *str; + gchar *labeltext; + int i; if (about != NULL) { gtk_window_present(GTK_WINDOW(about)); @@ -84,6 +179,7 @@ gtk_window_set_title(GTK_WINDOW(about), _("About Gaim")); gtk_window_set_role(GTK_WINDOW(about), "about"); gtk_window_set_resizable(GTK_WINDOW(about), TRUE); + gtk_window_set_default_size(GTK_WINDOW(about), 400, 550); hbox = gtk_hbox_new(FALSE, 12); gtk_container_set_border_width(GTK_CONTAINER(hbox), 12); @@ -107,144 +203,114 @@ gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(sw), GTK_POLICY_AUTOMATIC, GTK_POLICY_ALWAYS); gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(sw), GTK_SHADOW_IN); - gtk_widget_set_size_request(sw, -1, 350); - gtk_box_pack_start(GTK_BOX(vbox), sw, FALSE, FALSE, 0); + gtk_box_pack_start(GTK_BOX(vbox), sw, TRUE, TRUE, 0); text = gtk_imhtml_new(NULL, NULL); gtk_container_add(GTK_CONTAINER(sw), text); gaim_setup_imhtml(text); - gtk_imhtml_append_text(GTK_IMHTML(text), - _("Gaim is a modular messaging client capable of using " - "AIM, MSN, Yahoo!, Jabber, ICQ, IRC, SILC, " - "Novell GroupWise, Napster, Zephyr, and Gadu-Gadu " - "all at once. It is written using " - "Gtk+ and is licensed under the GPL.

"), GTK_IMHTML_NO_SCROLL); + str = g_string_sized_new(4096); - gtk_imhtml_append_text(GTK_IMHTML(text), - "URL: " - GAIM_WEBSITE "

", GTK_IMHTML_NO_SCROLL); + g_string_append(str, + _("Gaim is a modular messaging client capable of using " + "AIM, MSN, Yahoo!, Jabber, ICQ, IRC, SILC, " + "Novell GroupWise, Napster, Zephyr, and Gadu-Gadu " + "all at once. It is written using " + "Gtk+ and is licensed under the GPL.

")); - gtk_imhtml_append_text(GTK_IMHTML(text), - _("IRC: #gaim on irc.freenode.net" - "

"), GTK_IMHTML_NO_SCROLL); + g_string_append(str, "URL: " GAIM_WEBSITE "

"); + + g_string_append_printf(str, _("IRC: " + "#gaim on irc.freenode.net

")); /* Active Developers */ - str = g_strconcat( - "", _("Active Developers"), ":
" - " Rob Flynn (", _("maintainer"), ") " - "<gaim@robflynn.com>
" - " Sean Egan (", _("lead developer"), ") " - "<" - "bj91704@binghamton.edu>
" - " Christian 'ChipX86' Hammond (", _("developer & webmaster"), ")
" - " Herman Bloggs (", _("win32 port"), ") " - "<" - "hermanator12002@yahoo.com>
" - " Nathan 'faceprint' Walp (", _("developer"), ")
" - " Mark 'KingAnt' Doliner (", _("developer"), ")
" - " Ethan 'Paco-Paco' Blanton (", _("developer"), ")
" - " Tim 'marv' Ringenbach (", _("developer"), ")
" - " Luke 'LSchiere' Schierer (", _("support"), ")
" - "
", NULL); - gtk_imhtml_append_text(GTK_IMHTML(text), str, GTK_IMHTML_NO_SCROLL); - g_free(str); + g_string_append_printf(str, "%s:
", + _("Active Developers")); + for (i = 0; developers[i].name != NULL; i++) { + if (developers[i].email != NULL) { + g_string_append_printf(str, " %s (%s) <%s>
", + developers[i].name, _(developers[i].role), + developers[i].email, developers[i].email); + } else { + g_string_append_printf(str, " %s (%s)
", + developers[i].name, _(developers[i].role)); + } + } + g_string_append(str, "
"); /* Crazy Patch Writers */ - str = g_strconcat( - "", _("Crazy Patch Writers"), ":
" - " Daniel 'datallah' Atallah
" - " Ka-Hing 'javabsp' Cheung
" - " Decklin Foster
" - " Gary 'grim' Kramlich
" - " Robert 'Robot101' McQueen
" - " Benjamin Miller
" - " Etan 'deryni' Reisner
" - " Kevin 'SimGuy' Stange
" - " Stu 'nosnilmot' Tomlinson
" - "
", NULL); - gtk_imhtml_append_text(GTK_IMHTML(text), str, GTK_IMHTML_NO_SCROLL); - g_free(str); + g_string_append_printf(str, "%s:
", + _("Crazy Patch Writers")); + g_string_append(str, + " Daniel 'datallah' Atallah
" + " Ka-Hing 'javabsp' Cheung
" + " Decklin Foster
" + " Gary 'grim' Kramlich
" + " Robert 'Robot101' McQueen
" + " Benjamin Miller
" + " Etan 'deryni' Reisner
" + " Kevin 'SimGuy' Stange
" + " Stu 'nosnilmot' Tomlinson
" + "
"); /* Retired Developers */ - str = g_strconcat( - "", _("Retired Developers"), ":
" - " Adam Fritzler (", _("former libfaim maintainer"), ")
" - " Eric Warmenhoven (", _("former lead developer"), ") " - "<" - "warmenhoven@yahoo.com>
" - " Jim Duchek (", _("former maintainer"), ")
" - " Jim Seymour (", _("former Jabber developer"), ")
" - " Mark Spencer (", _("original author"), ") " - "<" - "markster@marko.net>
" - " Syd Logan (", _("hacker and designated driver [lazy bum]"), - ")
" - "
", NULL); - gtk_imhtml_append_text(GTK_IMHTML(text), str, GTK_IMHTML_NO_SCROLL); - g_free(str); + 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>
", + retired_developers[i].name, _(retired_developers[i].role), + retired_developers[i].email, retired_developers[i].email); + } else { + g_string_append_printf(str, " %s (%s)
", + retired_developers[i].name, _(retired_developers[i].role)); + } + } + g_string_append(str, "
"); /* Current Translators */ - str = g_strconcat( - "", _("Current Translators"), ":
" - " ", _("Bulgarian"), " (bg) - Alexander Shopov <al_shopov@users.sf.net>
" - " ", _("Catalan"), " (ca) - Robert Millan <zeratul2@wanadoo.es>
" - " ", _("Czech"), " (cs) - Miloslav Trmac <mitr@volny.cz>
" - " ", _("Danish"), " (da) - Morten Brix Pedersen <morten@wtf.dk>
" - " ", _("British English"), " (en_GB) - Luke Ross <lukeross@sys3175.co.uk>
" - " ", _("Canadian English"), " (en_CA) - Adam Weinberger <adamw@gnome.org>
" - " ", _("German"), " (de) - Björn Voigt <bjoern@cs.tu-berlin.de>
" - " ", _("Spanish"), " (es) - Javier Fernández-Sanguino Peña <jfs@debian.org>
" - " ", _("Finnish"), " (fi) - Arto Alakulju <arto@alakulju.net>
" - " ", _("French"), " (fr) - Éric Boumaour <zongo_fr@users.sourceforge.net>
" - " ", _("Hebrew"), " (he) - Pavel Bibergal <cyberkm203@hotmail.com>
" - " ", _("Hindi"), " (hi) - Ravishankar Shrivastava <raviratlami@yahoo.com>
" - " ", _("Hungarian"), " (hu) - Zoltan Sutto <suttozoltan@chello.hu>
" - " ", _("Italian"), " (it) - Claudio Satriano <satriano@na.infn.it>
" - " ", _("Japanese"), " (ja) - Takashi Aihana <aihana@gnome.gr.jp>
" - " ", _("Lithuanian"), " (lt) - Gediminas Čičinskas <gediminas@parok.lt>
" - " ", _("Korean"), " (ko) - Kyung-uk Son <vvs740@chol.com>
" - " ", _("Dutch; Flemish"), " (nl) - Vincent van Adrighem <V.vanAdrighem@dirck.mine.nu>
" - " ", _("Macedonian"), " (mk) - Tomislav Markovski <herrera@users.sf.net>
" - " ", _("Norwegian"), " (no) - Petter Johan Olsen <petter.olsen@cc.uit.no>
" - " ", _("Polish"), " (pl) - Krzysztof Foltman <krzysztof@foltman.com>, Emil Nowak <emil5@go2.pl>
" - " ", _("Portuguese"), " (pt) - Duarte Henriques <duarte_henriques@myrealbox.com>
" - " ", _("Portuguese-Brazil"), " (pt_BR) - Maurício de Lemos Rodrigues Collares Neto <mauricioc@gmail.com>
" - " ", _("Romanian"), " (ro) - Mişu Moldovan <dumol@go.ro>
" - " ", _("Russian"), " (ru) - Dmitry Beloglazov <dmaa@users.sf.net>
" - " ", _("Serbian"), " (sr) - Danilo Šegan <dsegan@gmx.net>, Aleksandar Urosevic <urke@users.sourceforge.net>
" - " ", _("Slovenian"), " (sl) - Matjaz Horvat <matjaz@owca.info>
" - " ", _("Swedish"), " (sv) - Tore Lundqvist <tlt@mima.x.se>
" - " ", _("Vietnamese"), " (vi) - T.M.Thanh ", _("and the Gnome-Vi Team"), " <gnomevi-list@lists.sf.net>
" - " ", _("Simplified Chinese"), " (zh_CN) - Funda Wang <fundawang@linux.net.cn>
" - " ", _("Traditional Chinese"), " (zh_TW) - Ambrose C. Li <acli@ada.dhs.org>, Paladin R. Liu <paladin@ms1.hinet.net>
" - "
", NULL); - gtk_imhtml_append_text(GTK_IMHTML(text), str, GTK_IMHTML_NO_SCROLL); - g_free(str); + 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 <%s>
", + _(current_translators[i].language), + current_translators[i].abbr, + _(current_translators[i].name), + current_translators[i].email, + current_translators[i].email); + } else { + g_string_append_printf(str, " %s (%s) - %s
", + _(current_translators[i].language), + current_translators[i].abbr, + _(current_translators[i].name)); + } + } + g_string_append(str, "
"); /* Past Translators */ - str = g_strconcat( - "", _("Past Translators"), ":
" - " ", _("Amharic"), " (am) - Daniel Yacob
" - " ", _("Bulgarian"), " (bg) - Hristo Todorov
" - " ", _("Catalan"), " (ca) - JM Pérez Cáncer
" - " ", _("Czech"), " (cs) - Honza Král
" - " ", _("German"), " (de) - Daniel Seifert, Karsten Weiss
" - " ", _("Spanish"), " (es) - Amaya Rodrigo, Alejandro G Villar, Nicolás Lichtmaier, JM Pérez Cáncer
" - " ", _("Finnish"), " (fi) - Tero Kuusela
" - " ", _("French"), " (fr) - Sébastien François, Stéphane Pontier, Stéphane Wirtel, Loïc Jeannin
" - " ", _("Italian"), " (it) - Salvatore di Maggio
" - " ", _("Japanese"), " (ja) - Ryosuke Kutsuna, Taku Yasui, Junichi Uekawa
" - " ", _("Korean"), " (ko) - Sang-hyun S, A Ho-seok Lee
" - " ", _("Polish"), " (pl) - Przemysław Sułek
" - " ", _("Russian"), " (ru) - Sergey Volozhanin
" - " ", _("Russian"), "(ru) - Alexandre Prokoudine
" - " ", _("Slovak"), " (sk) - Daniel Režný
" - " ", _("Swedish"), " (sv) - Christian Rose
" - " ", _("Chinese"), " (zh_CN, zh_TW) - Hashao, Rocky S. Lee
" - "
", NULL); - gtk_imhtml_append_text(GTK_IMHTML(text), str, GTK_IMHTML_NO_SCROLL); - g_free(str); + 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 <%s>
", + _(past_translators[i].language), + past_translators[i].abbr, + _(past_translators[i].name), + past_translators[i].email, + past_translators[i].email); + } else { + g_string_append_printf(str, " %s (%s) - %s
", + _(past_translators[i].language), + past_translators[i].abbr, + _(past_translators[i].name)); + } + } + g_string_append(str, "
"); + + gtk_imhtml_append_text(GTK_IMHTML(text), str->str, GTK_IMHTML_NO_SCROLL); + g_string_free(str, TRUE); gtk_adjustment_set_value(gtk_scrolled_window_get_vadjustment(GTK_SCROLLED_WINDOW(sw)), 0); gtk_text_buffer_get_start_iter(gtk_text_view_get_buffer(GTK_TEXT_VIEW(text)), &iter); diff -r d4e15f9d6652 -r 4f2b50a06224 src/protocols/oscar/oscar.c --- a/src/protocols/oscar/oscar.c Sun Aug 15 22:09:36 2004 +0000 +++ b/src/protocols/oscar/oscar.c Sun Aug 15 23:07:54 2004 +0000 @@ -5995,7 +5995,7 @@ case 0x000c: { /* you are over the limit, the cheat is to the limit, come on fhqwhgads */ gchar *buf; buf = g_strdup_printf(_("Could not add the buddy %s because you have too many buddies in your buddy list. Please remove one and try again."), (retval->name ? retval->name : _("(no name)"))); - if (!gaim_conv_present_error(retval->name, gaim_connection_get_account(gc), buf)) + if ((retval->name != NULL) && !gaim_conv_present_error(retval->name, gaim_connection_get_account(gc), buf)) gaim_notify_error(gc, NULL, _("Unable To Add"), buf); g_free(buf); } @@ -6009,7 +6009,7 @@ gchar *buf; gaim_debug_error("oscar", "ssi: Action 0x%04hx was unsuccessful with error 0x%04hx\n", retval->action, retval->ack); buf = g_strdup_printf(_("Could not add the buddy %s for an unknown reason. The most common reason for this is that you have the maximum number of allowed buddies in your buddy list."), (retval->name ? retval->name : _("(no name)"))); - if (!gaim_conv_present_error(retval->name, gaim_connection_get_account(gc), buf)) + if ((retval->name != NULL) && !gaim_conv_present_error(retval->name, gaim_connection_get_account(gc), buf)) gaim_notify_error(gc, NULL, _("Unable To Add"), buf); g_free(buf); } break;