You can subscribe to this list here.
2001 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
(106) |
Oct
(334) |
Nov
(246) |
Dec
(145) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2002 |
Jan
(42) |
Feb
(53) |
Mar
(232) |
Apr
(109) |
May
(137) |
Jun
(63) |
Jul
(26) |
Aug
(263) |
Sep
(193) |
Oct
(507) |
Nov
(440) |
Dec
(241) |
2003 |
Jan
(567) |
Feb
(195) |
Mar
(504) |
Apr
(481) |
May
(524) |
Jun
(522) |
Jul
(594) |
Aug
(502) |
Sep
(643) |
Oct
(508) |
Nov
(430) |
Dec
(377) |
2004 |
Jan
(361) |
Feb
(251) |
Mar
(219) |
Apr
(499) |
May
(461) |
Jun
(419) |
Jul
(314) |
Aug
(519) |
Sep
(416) |
Oct
(247) |
Nov
(305) |
Dec
(382) |
2005 |
Jan
(267) |
Feb
(282) |
Mar
(327) |
Apr
(338) |
May
(189) |
Jun
(400) |
Jul
(462) |
Aug
(530) |
Sep
(316) |
Oct
(523) |
Nov
(481) |
Dec
(650) |
2006 |
Jan
(536) |
Feb
(361) |
Mar
(287) |
Apr
(146) |
May
(101) |
Jun
(169) |
Jul
(221) |
Aug
(498) |
Sep
(300) |
Oct
(236) |
Nov
(209) |
Dec
(205) |
2007 |
Jan
(30) |
Feb
(23) |
Mar
(26) |
Apr
(15) |
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: Sean E. <sea...@us...> - 2002-09-29 01:36:15
|
Update of /cvsroot/gaim/gaim/src In directory usw-pr-cvs1:/tmp/cvs-serv14300/src Modified Files: prefs.c Log Message: Unfold plugins tree when loading your first plugin. Index: prefs.c =================================================================== RCS file: /cvsroot/gaim/gaim/src/prefs.c,v retrieving revision 1.256 retrieving revision 1.257 diff -u -d -r1.256 -r1.257 --- prefs.c 28 Sep 2002 21:39:45 -0000 1.256 +++ prefs.c 29 Sep 2002 01:36:11 -0000 1.257 @@ -64,6 +64,7 @@ char fontface_new[128]; char fontface[128]; +GtkWidget *tree_v = NULL; GtkWidget *prefs_away_list = NULL; GtkWidget *prefs_away_menu = NULL; GtkWidget *preftree = NULL; @@ -105,6 +106,7 @@ sound_file_new[v] = NULL; } } + tree_v = NULL; sound_entry = NULL; browser_entry = NULL; debugbutton = NULL; @@ -906,6 +908,12 @@ if (g_module_symbol(plug->handle, "gaim_plugin_config_gtk", (gpointer *)&config)) { plug->iter = g_new0(GtkTreeIter, 1); prefs_notebook_add_page(plug->desc.name, NULL, config(), plug->iter, &plugin_iter, notebook_page++); + if (gtk_tree_model_iter_n_children(GTK_TREE_MODEL(prefstree), &plugin_iter) == 1) { + /* Expand the tree for the first plugin added */ + GtkTreePath *path2 = gtk_tree_model_get_path(prefstree, &plugin_iter); + gtk_tree_view_expand_row(GTK_TREE_VIEW(tree_v), path2, TRUE); + gtk_tree_path_free (path2); + } } } #else @@ -1476,7 +1484,6 @@ GtkWidget *vbox, *vbox2; GtkWidget *hbox; GtkWidget *frame; - GtkWidget *tree_v; GtkTreeViewColumn *column; GtkCellRenderer *cell; GtkTreeSelection *sel; |
From: Christian H. <ch...@us...> - 2002-09-28 22:13:50
|
Update of /cvsroot/gaim/gaim In directory usw-pr-cvs1:/tmp/cvs-serv28942 Modified Files: Tag: gtk1-stable autogen.sh Log Message: Syncing autogen.sh. Index: autogen.sh =================================================================== RCS file: /cvsroot/gaim/gaim/autogen.sh,v retrieving revision 1.14.2.2 retrieving revision 1.14.2.3 diff -u -d -r1.14.2.2 -r1.14.2.3 --- autogen.sh 26 Aug 2002 05:27:53 -0000 1.14.2.2 +++ autogen.sh 28 Sep 2002 22:13:48 -0000 1.14.2.3 @@ -1,6 +1,8 @@ #!/bin/sh -(./setup-gettext --gettext-tool) < /dev/null > /dev/null 2>&1 || { +SETUP_GETTEXT=./setup-gettext + +($SETUP_GETTEXT --gettext-tool) < /dev/null > /dev/null 2>&1 || { echo; echo "You must have gettext installed to compile Gaim"; echo; @@ -47,13 +49,24 @@ cp -p po/ChangeLog po/ChangeLog.save echo "Running gettextize, please ignore non-fatal messages...." -./setup-gettext +$SETUP_GETTEXT # Restore the po/ChangeLog file. mv po/ChangeLog.save po/ChangeLog echo "Running libtoolize, please ignore non-fatal messages...." echo n | libtoolize --copy --force || exit; + +# Add other directories to this list if people continue to experience +# brokennesses ... Obviously the real answer is for them to fix it +# themselves, but for Luke's sake we have this. +for dir in "/usr/local/share/aclocal" \ + "/opt/gnome-1.4/share/aclocal" +do + if test -d $dir ; then + ACLOCAL_FLAGS="$ACLOCAL_FLAGS -I $dir" + fi +done aclocal -I m4 $ACLOCAL_FLAGS || exit; autoheader || exit; |
From: Christian H. <ch...@us...> - 2002-09-28 22:13:01
|
Update of /cvsroot/gaim/gaim In directory usw-pr-cvs1:/tmp/cvs-serv27616 Modified Files: autogen.sh Log Message: Yay for broken stuff. Thanks Ethan. I just hope we find a better way of dealing with this problem. Index: autogen.sh =================================================================== RCS file: /cvsroot/gaim/gaim/autogen.sh,v retrieving revision 1.24 retrieving revision 1.25 diff -u -d -r1.24 -r1.25 --- autogen.sh 14 Sep 2002 07:47:36 -0000 1.24 +++ autogen.sh 28 Sep 2002 22:12:57 -0000 1.25 @@ -57,9 +57,16 @@ echo "Running libtoolize, please ignore non-fatal messages...." echo n | libtoolize --copy --force || exit; -if test -d /usr/local/share/aclocal ; then - ACLOCAL_FLAGS="$ACLOCAL_FLAGS -I /usr/local/share/aclocal" -fi +# Add other directories to this list if people continue to experience +# brokennesses ... Obviously the real answer is for them to fix it +# themselves, but for Luke's sake we have this. +for dir in "/usr/local/share/aclocal" \ + "/opt/gnome-1.4/share/aclocal" +do + if test -d $dir ; then + ACLOCAL_FLAGS="$ACLOCAL_FLAGS -I $dir" + fi +done aclocal -I m4 $ACLOCAL_FLAGS || exit; autoheader || exit; |
From: Sean E. <sea...@us...> - 2002-09-28 21:39:48
|
Update of /cvsroot/gaim/gaim/plugins In directory usw-pr-cvs1:/tmp/cvs-serv20036/plugins Modified Files: chatlist.c notify.c simple.c spellchk.c Log Message: Now you can configure your plugins. Index: chatlist.c =================================================================== RCS file: /cvsroot/gaim/gaim/plugins/chatlist.c,v retrieving revision 1.14 retrieving revision 1.15 diff -u -d -r1.14 -r1.15 --- chatlist.c 26 Sep 2002 07:37:51 -0000 1.14 +++ chatlist.c 28 Sep 2002 21:39:44 -0000 1.15 @@ -293,75 +293,40 @@ parent = NULL; } -void gaim_plugin_config() +GtkWidget *gaim_plugin_config_gtk() { - GtkWidget *vbox; - GtkWidget *frame; - GtkWidget *box; - GtkWidget *table; - GtkWidget *rem_button, *add_button, *ref_button; + GtkWidget *ret, *vbox; GtkWidget *list1, *list2; - GtkWidget *label; GtkWidget *sw1, *sw2; - GtkWidget *item; - GtkWidget *hbox; - GtkWidget *button; - GList *crs = chat_rooms; + GtkWidget *ref_button, *add_button, *rem_button; + GtkWidget *table, *label; + struct chat_room *cr = NULL; GList *items = NULL; - struct chat_room *cr; - - if (parent) { - gtk_widget_show(parent); - return; - } - + GList *crs = chat_rooms; + if (cp) - g_free(cp); - cp = g_new0(struct chat_page, 1); - - parent = gtk_window_new(GTK_WINDOW_TOPLEVEL); - gtk_widget_set_usize(parent, 300, 400); - gtk_window_set_title(GTK_WINDOW(parent), "Chat Rooms"); - gtk_window_set_wmclass(GTK_WINDOW(parent), "chatlist", "Gaim"); - gtk_widget_realize(parent); - gtk_signal_connect(GTK_OBJECT(parent), "destroy", - GTK_SIGNAL_FUNC(parent_destroy), NULL); - - vbox = gtk_vbox_new(FALSE, 0); - gtk_container_add(GTK_CONTAINER(parent), vbox); - gtk_widget_show(vbox); - - hbox = gtk_hbox_new(FALSE, 0); - gtk_box_pack_end(GTK_BOX(vbox), hbox, FALSE, FALSE, 5); - gtk_widget_show(hbox); + g_free(cp); + cp = g_new0(struct chat_page, 1); - button = picture_button(parent, _("Close"), cancel_xpm); - gtk_box_pack_end(GTK_BOX(hbox), button, FALSE, FALSE, 5); - gtk_signal_connect(GTK_OBJECT(button), "clicked", - GTK_SIGNAL_FUNC(parent_destroy), NULL); - frame = gtk_frame_new(_("Chat Rooms")); - gtk_box_pack_start(GTK_BOX(vbox), frame, TRUE, TRUE, 5); - gtk_widget_show(frame); + ret = gtk_vbox_new(FALSE, 18); + gtk_container_set_border_width (GTK_CONTAINER (ret), 12); - box = gtk_vbox_new(FALSE, 5); - gtk_container_set_border_width(GTK_CONTAINER(box), 5); - gtk_container_add(GTK_CONTAINER(frame), box); - gtk_widget_show(box); + vbox = make_frame(ret, _("Chat Rooms")); table = gtk_table_new(4, 2, FALSE); gtk_widget_show(table); - gtk_box_pack_start(GTK_BOX(box), table, TRUE, TRUE, 0); + gtk_box_pack_start(GTK_BOX(vbox), table, TRUE, TRUE, 0); list1 = gtk_list_new(); list2 = gtk_list_new(); sw1 = gtk_scrolled_window_new(NULL, NULL); sw2 = gtk_scrolled_window_new(NULL, NULL); - ref_button = picture_button(parent, _("Refresh"), refresh_xpm); - add_button = picture_button(parent, _("Add"), gnome_add_xpm); - rem_button = picture_button(parent, _("Remove"), gnome_remove_xpm); + ref_button = picture_button(prefs, _("Refresh"), refresh_xpm); + add_button = picture_button(prefs, _("Add"), gnome_add_xpm); + rem_button = picture_button(prefs, _("Remove"), gnome_remove_xpm); gtk_widget_show(list1); gtk_widget_show(sw1); gtk_widget_show(list2); @@ -370,11 +335,6 @@ gtk_scrolled_window_add_with_viewport(GTK_SCROLLED_WINDOW(sw1), list1); gtk_scrolled_window_add_with_viewport(GTK_SCROLLED_WINDOW(sw2), list2); - gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(sw1), - GTK_POLICY_AUTOMATIC, GTK_POLICY_ALWAYS); - gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(sw2), - GTK_POLICY_AUTOMATIC, GTK_POLICY_ALWAYS); - cp->list1 = list1; cp->list2 = list2; @@ -382,8 +342,6 @@ gtk_signal_connect(GTK_OBJECT(rem_button), "clicked", GTK_SIGNAL_FUNC(remove_chat), cp); gtk_signal_connect(GTK_OBJECT(add_button), "clicked", GTK_SIGNAL_FUNC(add_chat), cp); - - label = gtk_label_new(_("List of available chats")); gtk_widget_show(label); @@ -423,8 +381,8 @@ } gtk_list_append_items(GTK_LIST(list2), items); - - gtk_widget_show(parent); + gtk_widget_show_all(ret); + return ret; } static void handle_signon(struct gaim_connection *gc) Index: notify.c =================================================================== RCS file: /cvsroot/gaim/gaim/plugins/notify.c,v retrieving revision 1.16 retrieving revision 1.17 diff -u -d -r1.16 -r1.17 --- notify.c 27 Sep 2002 03:34:54 -0000 1.16 +++ notify.c 28 Sep 2002 21:39:44 -0000 1.17 @@ -41,9 +41,7 @@ */ GtkWidget *really_evil_hack; /* GHashTable *hash = NULL; */ -GtkWidget *Dialog = NULL; -GtkWidget *Click, *Focus, *Type, *InFocus; -GtkWidget *String, *Count, *Quote, *Urgent, *Entry; +GtkWidget *Entry; gchar *title_string = "(*) "; /* predefine some functions, less warnings */ @@ -321,51 +319,6 @@ method ^= METHOD_COUNT; } -void setup_buttons() { - if (choice & NOTIFY_FOCUS) - gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(Focus), TRUE); - else - gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(Click), TRUE); - if (choice & NOTIFY_TYPE) - gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(Type), TRUE); - else - gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(Type), FALSE); - - if (method & METHOD_STRING) - gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(String), TRUE); - else - gtk_widget_set_sensitive(Entry, FALSE); - - if (method & METHOD_QUOTE) - gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(Quote), TRUE); - - if (method & METHOD_URGENT) - gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(Urgent), TRUE); - - if (choice & NOTIFY_IN_FOCUS) - gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(InFocus), TRUE); - - if (method & METHOD_COUNT) - gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(Count), TRUE); - - return; -} - -void close_dialog(GtkWidget *widget, gpointer data) { - gint option = GPOINTER_TO_INT(data); - - if (option > 0) { - title_string = g_strdup(gtk_entry_get_text(GTK_ENTRY(Entry))); - save_notify_prefs(); - } - else if (option < 0) - load_notify_prefs(); - - if (Dialog) - gtk_widget_destroy(Dialog); - Dialog = NULL; -} - char *gaim_plugin_init(GModule *hndl) { handle = hndl; @@ -425,112 +378,57 @@ " where you have not responded to a message yet."; } -void gaim_plugin_config() { - GtkWidget *dialog_vbox; - GtkWidget *button, *label; - GtkWidget *box, *box2, *box3, *box4, *frame; - - if (Dialog) - return; - - /* main config dialog */ - Dialog = gtk_dialog_new(); - gtk_window_set_title(GTK_WINDOW(Dialog), "Notify plugin configuration"); - gtk_window_set_policy(GTK_WINDOW(Dialog), FALSE, FALSE, TRUE); - gtk_signal_connect(GTK_OBJECT(Dialog), "destroy", GTK_SIGNAL_FUNC(close_dialog), GINT_TO_POINTER(-1)); - - dialog_vbox = GTK_DIALOG(Dialog)->vbox; - - /* Ok and Cancel buttons */ - box = gtk_hbox_new(FALSE, 8); - gtk_container_add(GTK_CONTAINER(GTK_DIALOG(Dialog)->action_area), box); - - button = gtk_button_new_with_label(_("Cancel")); - gtk_box_pack_end(GTK_BOX(box), button, FALSE, FALSE, 0); - gtk_widget_set_usize(button, 80, -2); - gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(close_dialog), GINT_TO_POINTER(0)); - - button = gtk_button_new_with_label(_("Ok")); - gtk_box_pack_start(GTK_BOX(box), button, FALSE, FALSE, 0); - gtk_widget_set_usize(button, 80, -2); - gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(close_dialog), GINT_TO_POINTER(1)); - - /* warning label */ - label = gtk_label_new(_("Changes in notification removal options take effect only on new conversation windows")); - gtk_box_pack_start(GTK_BOX(dialog_vbox), label, FALSE, FALSE, 1); - - /* main hbox */ - box = gtk_hbox_new(FALSE, 0); - gtk_box_pack_start(GTK_BOX(dialog_vbox), box, FALSE, FALSE, 0); - - box4 = gtk_vbox_new(FALSE, 0); - gtk_box_pack_start(GTK_BOX(box), box4, FALSE, FALSE, 0); - - /* un-notify choices */ - frame = gtk_frame_new(_("Remove notification when:")); - gtk_box_pack_start(GTK_BOX(box4), frame, FALSE, FALSE, 0); - - box2 = gtk_vbox_new(FALSE, 0); - gtk_container_add(GTK_CONTAINER(frame), box2); - - Focus = gtk_radio_button_new_with_label(NULL, _("Conversation window gains focus.")); - gtk_box_pack_start(GTK_BOX(box2), Focus, FALSE, FALSE, 2); - - Click = gtk_radio_button_new_with_label_from_widget(GTK_RADIO_BUTTON(Focus), _("Conversation window gets clicked.")); - gtk_box_pack_start(GTK_BOX(box2), Click, FALSE, FALSE, 2); - - Type = gtk_check_button_new_with_label(_("Type in conversation window")); - gtk_box_pack_start(GTK_BOX(box2), Type, FALSE, FALSE, 2); - - /* notification method choices */ - /* do I need/want any other notification methods? */ - frame = gtk_frame_new(_("Notification method:")); - gtk_box_pack_start(GTK_BOX(box), frame, FALSE, FALSE, 0); - - box2 = gtk_vbox_new(FALSE, 0); - gtk_container_add(GTK_CONTAINER(frame), box2); - - box3 = gtk_hbox_new(FALSE, 0); - gtk_box_pack_start(GTK_BOX(box2), box3, FALSE, FALSE, 0); - - String = gtk_check_button_new_with_label(_("Insert string into window title:")); - gtk_box_pack_start(GTK_BOX(box3), String, FALSE, FALSE, 0); +GtkWidget *gaim_plugin_config_gtk() { + GtkWidget *ret; + GtkWidget *vbox, *hbox; + GtkWidget *toggle; + ret = gtk_vbox_new(FALSE, 18); + gtk_container_set_border_width (GTK_CONTAINER (ret), 12); + vbox = make_frame(ret, _("Notification Methods")); + hbox = gtk_hbox_new(FALSE, 18); + gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0); + toggle = gtk_check_button_new_with_mnemonic(_("Prepend _string into window title:")); + gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(toggle), method & METHOD_STRING); + gtk_signal_connect(GTK_OBJECT(toggle), "toggled", GTK_SIGNAL_FUNC(options), GINT_TO_POINTER(2)); + gtk_box_pack_start(GTK_BOX(hbox), toggle, FALSE, FALSE, 0); Entry = gtk_entry_new_with_max_length(7); - gtk_box_pack_start(GTK_BOX(box3), Entry, FALSE, FALSE, 0); + gtk_widget_set_sensitive(GTK_WIDGET(Entry), method & METHOD_STRING); + gtk_box_pack_start(GTK_BOX(hbox), Entry, FALSE, FALSE, 0); gtk_entry_set_text(GTK_ENTRY(Entry), title_string); - Quote = gtk_check_button_new_with_label(_("Quote window title.")); - gtk_box_pack_start(GTK_BOX(box2), Quote, FALSE, FALSE, 0); - - Urgent = gtk_check_button_new_with_label(_("Send URGENT to window manager.")); - gtk_box_pack_start(GTK_BOX(box2), Urgent, FALSE, FALSE, 0); - - label = gtk_label_new(_("Function oddly with tabs:")); - gtk_box_pack_start(GTK_BOX(box2), label, FALSE, FALSE, 0); - - Count = gtk_check_button_new_with_label(_("Insert count of new messages into window title")); - gtk_box_pack_start(GTK_BOX(box2), Count, FALSE, FALSE, 0); + toggle = gtk_check_button_new_with_mnemonic(_("_Quote window title.")); + gtk_box_pack_start(GTK_BOX(vbox), toggle, FALSE, FALSE, 0); + gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(toggle), method & METHOD_QUOTE); + gtk_signal_connect(GTK_OBJECT(toggle), "toggled", GTK_SIGNAL_FUNC(options), GINT_TO_POINTER(3)); - /* general options */ - frame = gtk_frame_new(_("General Options")); - gtk_box_pack_start(GTK_BOX(box4), frame, FALSE, FALSE, 0); + toggle = gtk_check_button_new_with_mnemonic(_("Set Window Manager \"_URGENT\" Hint")); + gtk_box_pack_start(GTK_BOX(vbox), toggle, FALSE, FALSE, 0); + gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(toggle), method & METHOD_URGENT); + gtk_signal_connect(GTK_OBJECT(toggle), "toggled", GTK_SIGNAL_FUNC(options), GINT_TO_POINTER(4)); + + toggle = gtk_check_button_new_with_mnemonic(_("Insert _count of new messages into window title")); + gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(toggle), method & METHOD_COUNT); + gtk_box_pack_start(GTK_BOX(vbox), toggle, FALSE, FALSE, 0); + gtk_signal_connect(GTK_OBJECT(toggle), "toggled", GTK_SIGNAL_FUNC(options), GINT_TO_POINTER(6)); - box = gtk_vbox_new(FALSE, 0); - gtk_container_add(GTK_CONTAINER(frame), box); + toggle = gtk_check_button_new_with_mnemonic(_("_Notify even if conversation is in focus.")); + gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(toggle), choice & NOTIFY_IN_FOCUS); + gtk_box_pack_start(GTK_BOX(vbox), toggle, FALSE, FALSE, 0); + gtk_signal_connect(GTK_OBJECT(toggle), "toggled", GTK_SIGNAL_FUNC(options), GINT_TO_POINTER(5)); - InFocus = gtk_check_button_new_with_label(_("Notify even when window is in focus")); - gtk_box_pack_start(GTK_BOX(box), InFocus, FALSE, FALSE, 0); + /*--------------*/ + vbox = make_frame(ret, _("Notification Removal")); + toggle = gtk_check_button_new_with_mnemonic(_("Remove when conversation window gains _focus.")); + gtk_box_pack_start(GTK_BOX(vbox), toggle, FALSE, FALSE, 0); + gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(toggle), choice & NOTIFY_FOCUS); + gtk_signal_connect(GTK_OBJECT(toggle), "toggled", GTK_SIGNAL_FUNC(options), GINT_TO_POINTER(0)); - /* setup buttons, then attach signals */ - setup_buttons(); - gtk_signal_connect(GTK_OBJECT(Focus), "toggled", GTK_SIGNAL_FUNC(options), GINT_TO_POINTER(0)); - gtk_signal_connect(GTK_OBJECT(Type), "toggled", GTK_SIGNAL_FUNC(options), GINT_TO_POINTER(1)); - gtk_signal_connect(GTK_OBJECT(String), "toggled", GTK_SIGNAL_FUNC(options), GINT_TO_POINTER(2)); - gtk_signal_connect(GTK_OBJECT(Quote), "toggled", GTK_SIGNAL_FUNC(options), GINT_TO_POINTER(3)); - gtk_signal_connect(GTK_OBJECT(Urgent), "toggled", GTK_SIGNAL_FUNC(options), GINT_TO_POINTER(4)); - gtk_signal_connect(GTK_OBJECT(InFocus), "toggled", GTK_SIGNAL_FUNC(options), GINT_TO_POINTER(5)); - gtk_signal_connect(GTK_OBJECT(Count), "toggled", GTK_SIGNAL_FUNC(options), GINT_TO_POINTER(6)); + toggle = gtk_check_button_new_with_mnemonic(_("Remove when _typing in conversation window")); + gtk_box_pack_start(GTK_BOX(vbox), toggle, FALSE, FALSE, 0); + gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(toggle), choice & NOTIFY_TYPE); + gtk_signal_connect(GTK_OBJECT(toggle), "toggled", GTK_SIGNAL_FUNC(options), GINT_TO_POINTER(1)); - gtk_widget_show_all(Dialog); + gtk_widget_show_all(ret); + return ret; } Index: simple.c =================================================================== RCS file: /cvsroot/gaim/gaim/plugins/simple.c,v retrieving revision 1.7 retrieving revision 1.8 diff -u -d -r1.7 -r1.8 --- simple.c 26 Sep 2002 07:37:51 -0000 1.7 +++ simple.c 28 Sep 2002 21:39:44 -0000 1.8 @@ -16,10 +16,6 @@ handle = NULL; } -void gaim_plugin_config() { - printf("configuring plugin.\n"); -} - struct gaim_plugin_description desc; struct gaim_plugin_description *gaim_plugin_desc() { desc.api_version = PLUGIN_API_VERSION; Index: spellchk.c =================================================================== RCS file: /cvsroot/gaim/gaim/plugins/spellchk.c,v retrieving revision 1.23 retrieving revision 1.24 diff -u -d -r1.23 -r1.24 --- spellchk.c 26 Sep 2002 07:37:51 -0000 1.23 +++ spellchk.c 28 Sep 2002 21:39:44 -0000 1.24 @@ -358,22 +358,18 @@ } } -void gaim_plugin_config() { - GtkWidget *win; - GtkWidget *vbox; +GtkWidget *gaim_plugin_config_gtk() { + GtkWidget *ret, *vbox, *win; GtkWidget *hbox; GtkWidget *button; GList *w = words; struct replace_words *r; char *pair[2] = {"Replace", "With"}; - - if (configwin) return; - GAIM_DIALOG(configwin); - gtk_widget_set_usize(configwin, 450, 250); - gtk_window_set_title(GTK_WINDOW(configwin), "Spell Check Config"); - gtk_signal_connect(GTK_OBJECT(configwin), "destroy", GTK_SIGNAL_FUNC(close_config), NULL); - vbox = gtk_vbox_new(0, 2); + ret = gtk_vbox_new(FALSE, 18); + gtk_container_set_border_width (GTK_CONTAINER (ret), 12); + + vbox = make_frame(ret, _("Text Replacements")); gtk_container_set_border_width(GTK_CONTAINER(vbox), 4); gtk_container_add(GTK_CONTAINER(configwin), vbox); gtk_widget_show (vbox); @@ -452,5 +448,6 @@ w = w->next; } - gtk_widget_show(configwin); + gtk_widget_show_all(ret); + return ret; } |
From: Sean E. <sea...@us...> - 2002-09-28 21:39:48
|
Update of /cvsroot/gaim/gaim/src In directory usw-pr-cvs1:/tmp/cvs-serv20036/src Modified Files: core.h module.c prefs.c ui.h Log Message: Now you can configure your plugins. Index: core.h =================================================================== RCS file: /cvsroot/gaim/gaim/src/core.h,v retrieving revision 1.28 retrieving revision 1.29 diff -u -d -r1.28 -r1.29 --- core.h 28 Sep 2002 08:08:14 -0000 1.28 +++ core.h 28 Sep 2002 21:39:45 -0000 1.29 @@ -132,6 +132,7 @@ gchar path[128]; struct gaim_plugin_description desc; gchar error[128]; + void *iter; }; #ifdef GAIM_PLUGINS Index: module.c =================================================================== RCS file: /cvsroot/gaim/gaim/src/module.c,v retrieving revision 1.23 retrieving revision 1.24 diff -u -d -r1.23 -r1.24 --- module.c 28 Sep 2002 08:08:14 -0000 1.23 +++ module.c 28 Sep 2002 21:39:45 -0000 1.24 @@ -89,10 +89,10 @@ struct gaim_plugin *plug; char userspace[128]; char *probedirs[] = {LIBDIR, &userspace, 0}; + int l; #if GAIM_PLUGINS char *(*gaim_plugin_init)(GModule *); char *(*cfunc)(); - int l; struct gaim_plugin_description *(*desc)(); GModule *handle; #endif @@ -167,9 +167,11 @@ if (!filename || !strlen(filename)) return NULL; +#ifdef USE_PERL if (is_so_file(filename, ".pl")) { return perl_load_file(filename); } +#endif while (filename && p) { plug = (struct gaim_plugin *)p->data; Index: prefs.c =================================================================== RCS file: /cvsroot/gaim/gaim/src/prefs.c,v retrieving revision 1.255 retrieving revision 1.256 diff -u -d -r1.255 -r1.256 --- prefs.c 28 Sep 2002 08:08:14 -0000 1.255 +++ prefs.c 28 Sep 2002 21:39:45 -0000 1.256 @@ -90,8 +90,10 @@ static void apply_prefs(); struct debug_window *dw = NULL; -static GtkWidget *prefs = NULL; +GtkWidget *prefs = NULL; GtkWidget *debugbutton = NULL; +static int notebook_page = 0; +static GtkTreeIter plugin_iter; void delete_prefs(GtkWidget *asdf, void *gdsa) { int v; @@ -107,6 +109,7 @@ browser_entry = NULL; debugbutton = NULL; prefs_away_menu = NULL; + notebook_page = 0; if(sounddialog) gtk_widget_destroy(sounddialog); g_object_unref(G_OBJECT(prefs_away_store)); @@ -145,7 +148,7 @@ } -static GtkWidget *make_frame(GtkWidget *ret, char *text) { +GtkWidget *make_frame(GtkWidget *ret, char *text) { GtkWidget *vbox, *label, *hbox; char labeltext[256]; @@ -885,6 +888,8 @@ GtkTreePath *path = gtk_tree_path_new_from_string(pth); struct gaim_plugin *plug; gchar buf[1024]; + GtkWidget *(*config)(); + GdkCursor *wait = gdk_cursor_new (GDK_WATCH); gdk_window_set_cursor(prefs->window, wait); gdk_cursor_unref(wait); @@ -896,7 +901,13 @@ if (plug->type == plugin) #ifdef GAIM_PLUGINS - load_plugin(plug->path); + { + load_plugin(plug->path); + if (g_module_symbol(plug->handle, "gaim_plugin_config_gtk", (gpointer *)&config)) { + plug->iter = g_new0(GtkTreeIter, 1); + prefs_notebook_add_page(plug->desc.name, NULL, config(), plug->iter, &plugin_iter, notebook_page++); + } + } #else {} #endif @@ -909,7 +920,14 @@ else if (plug->type == plugin) #ifdef GAIM_PLUGINS - unload_plugin(plug); + { + unload_plugin(plug); + if (plug->iter) { + gtk_tree_store_remove(GTK_TREE_STORE(prefstree), plug->iter); + g_free(plug->iter); + plug->iter = NULL; + } + } #else {} #endif @@ -1418,26 +1436,38 @@ } void prefs_notebook_init() { - int a = 0; GtkTreeIter p, c; - prefs_notebook_add_page(_("Interface"), NULL, interface_page(), &p, NULL, a++); - prefs_notebook_add_page(_("Fonts"), NULL, font_page(), &c, &p, a++); - prefs_notebook_add_page(_("Message Text"), NULL, messages_page(), &c, &p, a++); - prefs_notebook_add_page(_("Shortcuts"), NULL, hotkeys_page(), &c, &p, a++); - prefs_notebook_add_page(_("Buddy List"), NULL, list_page(), &c, &p, a++); - prefs_notebook_add_page(_("IM Window"), NULL, im_page(), &c, &p, a++); - prefs_notebook_add_page(_("Chat Window"), NULL, chat_page(), &c, &p, a++); - prefs_notebook_add_page(_("Tabs"), NULL, tab_page(), &c, &p, a++); - prefs_notebook_add_page(_("Proxy"), NULL, proxy_page(), &p, NULL, a++); - prefs_notebook_add_page(_("Browser"), NULL, browser_page(), &p, NULL, a++); +#if USE_PLUGINS + GtkWidget *(*config)(); + GList *l = plugins; + struct gaim_plugin *plug; +#endif + prefs_notebook_add_page(_("Interface"), NULL, interface_page(), &p, NULL, notebook_page++); + prefs_notebook_add_page(_("Fonts"), NULL, font_page(), &c, &p, notebook_page++); + prefs_notebook_add_page(_("Message Text"), NULL, messages_page(), &c, &p, notebook_page++); + prefs_notebook_add_page(_("Shortcuts"), NULL, hotkeys_page(), &c, &p, notebook_page++); + prefs_notebook_add_page(_("Buddy List"), NULL, list_page(), &c, &p, notebook_page++); + prefs_notebook_add_page(_("IM Window"), NULL, im_page(), &c, &p, notebook_page++); + prefs_notebook_add_page(_("Chat Window"), NULL, chat_page(), &c, &p, notebook_page++); + prefs_notebook_add_page(_("Tabs"), NULL, tab_page(), &c, &p, notebook_page++); + prefs_notebook_add_page(_("Proxy"), NULL, proxy_page(), &p, NULL, notebook_page++); + prefs_notebook_add_page(_("Browser"), NULL, browser_page(), &p, NULL, notebook_page++); - prefs_notebook_add_page(_("Logging"), NULL, logging_page(), &p, NULL, a++); - prefs_notebook_add_page(_("Sounds"), NULL, sound_page(), &p, NULL, a++); - prefs_notebook_add_page(_("Sound Events"), NULL, sound_events_page(), &c, &p, a++); - prefs_notebook_add_page(_("Away / Idle"), NULL, away_page(), &p, NULL, a++); - prefs_notebook_add_page(_("Away Messages"), NULL, away_message_page(), &c, &p, a++); + prefs_notebook_add_page(_("Logging"), NULL, logging_page(), &p, NULL, notebook_page++); + prefs_notebook_add_page(_("Sounds"), NULL, sound_page(), &p, NULL, notebook_page++); + prefs_notebook_add_page(_("Sound Events"), NULL, sound_events_page(), &c, &p, notebook_page++); + prefs_notebook_add_page(_("Away / Idle"), NULL, away_page(), &p, NULL, notebook_page++); + prefs_notebook_add_page(_("Away Messages"), NULL, away_message_page(), &c, &p, notebook_page++); #if USE_PLUGINS - prefs_notebook_add_page(_("Plugins"), NULL, plugin_page(), &p, NULL, a++); + prefs_notebook_add_page(_("Plugins"), NULL, plugin_page(), &plugin_iter, NULL, notebook_page++); + while (l) { + plug = l->data; + if (plug->type == plugin && g_module_symbol(plug->handle, "gaim_plugin_config_gtk", (gpointer *)&config)) { + plug->iter = g_new0(GtkTreeIter, 1); + prefs_notebook_add_page(plug->desc.name, NULL, config(), plug->iter, &plugin_iter, notebook_page++); + } + l = l->next; + } #endif } Index: ui.h =================================================================== RCS file: /cvsroot/gaim/gaim/src/ui.h,v retrieving revision 1.58 retrieving revision 1.59 diff -u -d -r1.58 -r1.59 --- ui.h 26 Sep 2002 15:23:33 -0000 1.58 +++ ui.h 28 Sep 2002 21:39:45 -0000 1.59 @@ -291,6 +291,7 @@ extern GtkWidget *bgcseld; /* Globals in prefs.c */ +extern GtkWidget *prefs; extern struct debug_window *dw; extern GtkWidget *fontseld; @@ -475,6 +476,7 @@ extern void default_away_menu_init(GtkWidget *); extern void build_allow_list(); extern void build_block_list(); +extern GtkWidget *make_frame(GtkWidget *, char *); extern GtkWidget *prefs_away_list; extern GtkWidget *prefs_away_menu; extern GtkWidget *pref_fg_picture; |
From: Luke S. <lsc...@us...> - 2002-09-28 17:46:14
|
Update of /cvsroot/gaim/gaim/plugins In directory usw-pr-cvs1:/tmp/cvs-serv25520/plugins Modified Files: iconaway.c Log Message: fixed a misspelling. Index: iconaway.c =================================================================== RCS file: /cvsroot/gaim/gaim/plugins/iconaway.c,v retrieving revision 1.16 retrieving revision 1.17 diff -u -d -r1.16 -r1.17 --- iconaway.c 26 Sep 2002 07:37:51 -0000 1.16 +++ iconaway.c 28 Sep 2002 17:46:10 -0000 1.17 @@ -38,7 +38,7 @@ desc.api_version = PLUGIN_API_VERSION; desc.name = g_strdup("Iconify on away"); desc.version = g_strdup(VERSION); - desc.description = g_strdup("Iconifies the away box and thee buddy list when you go away."); + desc.description = g_strdup("Iconifies the away box and the buddy list when you go away."); desc.authors = g_strdup("Eric Warmenhoven <er...@wa...>"); desc.url = g_strdup(WEBSITE); return &desc; |
From: Sean E. <sea...@us...> - 2002-09-28 08:08:17
|
Update of /cvsroot/gaim/gaim/src In directory usw-pr-cvs1:/tmp/cvs-serv17668/src Modified Files: core.h gaimrc.c module.c perl.c prefs.c Log Message: I made my perl script unloading not suck (as much). Now you may port your perl scripts--use gaim.pl and PERL-HOWTO as references. Index: core.h =================================================================== RCS file: /cvsroot/gaim/gaim/src/core.h,v retrieving revision 1.27 retrieving revision 1.28 diff -u -d -r1.27 -r1.28 --- core.h 26 Sep 2002 07:37:52 -0000 1.27 +++ core.h 28 Sep 2002 08:08:14 -0000 1.28 @@ -131,6 +131,7 @@ void *handle; gchar path[128]; struct gaim_plugin_description desc; + gchar error[128]; }; #ifdef GAIM_PLUGINS Index: gaimrc.c =================================================================== RCS file: /cvsroot/gaim/gaim/src/gaimrc.c,v retrieving revision 1.107 retrieving revision 1.108 diff -u -d -r1.107 -r1.108 --- gaimrc.c 23 Sep 2002 03:31:02 -0000 1.107 +++ gaimrc.c 28 Sep 2002 08:08:14 -0000 1.108 @@ -400,8 +400,8 @@ p = (struct gaim_plugin *)pl->data; - path = escape_text2(g_module_name(p->handle)); - + path = escape_text2(p->path); + fprintf(f, "\tplugin { %s }\n", path); free(path); Index: module.c =================================================================== RCS file: /cvsroot/gaim/gaim/src/module.c,v retrieving revision 1.22 retrieving revision 1.23 diff -u -d -r1.22 -r1.23 --- module.c 26 Sep 2002 07:37:52 -0000 1.22 +++ module.c 28 Sep 2002 08:08:14 -0000 1.23 @@ -136,7 +136,7 @@ #endif #ifdef USE_PERL if (is_so_file(file, ".pl")) { - path = g_build_filename(LIBDIR, file, NULL); + path = g_build_filename(probedirs[l], file, NULL); plug = probe_perl(path); if (plug) probed_plugins = g_list_append(probed_plugins, plug); @@ -159,7 +159,7 @@ GList *c = plugins; GList *p = probed_plugins; char *(*gaim_plugin_init)(GModule *); - char *error, *retval, *tmp; + char *error, *retval; gboolean newplug = FALSE; if (!g_module_supported()) @@ -167,6 +167,10 @@ if (!filename || !strlen(filename)) return NULL; + if (is_so_file(filename, ".pl")) { + return perl_load_file(filename); + } + while (filename && p) { plug = (struct gaim_plugin *)p->data; if (!strcmp(filename, plug->path)) @@ -190,21 +194,18 @@ if (!plug->handle) { error = (char *)g_module_error(); plug->handle = NULL; - tmp = plug->desc.description; - plug->desc.description = g_strdup_printf("<span weight=\"bold\" foreground=\"red\">%s</span>\n\n%s", error, tmp); - g_free(tmp); + g_snprintf(plug->error, sizeof(plug->error), error); return NULL; } if (!g_module_symbol(plug->handle, "gaim_plugin_init", (gpointer *)&gaim_plugin_init)) { g_module_close(plug->handle); plug->handle = NULL; - tmp = plug->desc.description; - plug->desc.description = g_strdup_printf("<span foreground=\"red\">%s</span>\n\n%s", g_module_error(), tmp); - g_free(tmp); + g_snprintf(plug->error, sizeof(plug->error), error); return NULL; } + plug->error[0] = '\0'; retval = gaim_plugin_init(plug->handle); debug_printf("loaded plugin returned %s\n", retval ? retval : "NULL"); if (retval) { @@ -632,8 +633,10 @@ while (c) { p = (struct gaim_plugin *)c->data; - if (g_module_symbol(p->handle, "gaim_plugin_remove", (gpointer *)&gaim_plugin_remove)) - gaim_plugin_remove(); + if (p->type == plugin) { + if (g_module_symbol(p->handle, "gaim_plugin_remove", (gpointer *)&gaim_plugin_remove)) + gaim_plugin_remove(); + } g_free(p); c = c->next; } Index: perl.c =================================================================== RCS file: /cvsroot/gaim/gaim/src/perl.c,v retrieving revision 1.79 retrieving revision 1.80 diff -u -d -r1.79 -r1.80 --- perl.c 26 Sep 2002 16:51:46 -0000 1.79 +++ perl.c 28 Sep 2002 08:08:14 -0000 1.80 @@ -68,19 +68,20 @@ char *name; char *version; char *shutdowncallback; /* bleh */ + struct gaim_plugin *plug; }; struct _perl_event_handlers { char *event_type; char *handler_name; - char *handle; + struct gaim_plugin *plug; }; struct _perl_timeout_handlers { char *handler_name; char *handler_args; gint iotag; - char *handle; + struct gaim_plugin *plug; }; static GList *perl_list = NULL; /* should probably extern this at some point */ @@ -203,8 +204,6 @@ } -/* This function is so incredibly broken and should never, ever, ever - be trusted to work */ void perl_unload_file(struct gaim_plugin *plug) { struct perlscript *scp = NULL; struct _perl_timeout_handlers *thn; @@ -215,29 +214,24 @@ debug_printf("Unloading %s\n", plug->handle); while (pl) { scp = pl->data; - /* This is so broken */ - if (!strcmp(scp->name, plug->desc.name) && - !strcmp(scp->version, plug->desc.version)) + if (scp->plug == plug) { + perl_list = g_list_remove(perl_list, scp); + if (scp->shutdowncallback[0]) + execute_perl(scp->shutdowncallback, ""); + perl_list = g_list_remove(perl_list, scp); + g_free(scp->name); + g_free(scp->version); + g_free(scp->shutdowncallback); + g_free(scp); break; - pl = pl->next; - scp = NULL; - } - if (scp) { - perl_list = g_list_remove(perl_list, scp); - if (scp->shutdowncallback[0]) - execute_perl(scp->shutdowncallback, ""); - perl_list = g_list_remove(perl_list, scp); - g_free(scp->name); - g_free(scp->version); - g_free(scp->shutdowncallback); - g_free(scp); + } } pl = perl_timeout_handlers; while (pl) { thn = pl->data; - if (thn && thn->handle == plug->handle) { - g_list_remove(perl_timeout_handlers, thn); + if (thn && thn->plug == plug) { + perl_timeout_handlers = g_list_remove(perl_timeout_handlers, thn); g_source_remove(thn->iotag); g_free(thn->handler_args); g_free(thn->handler_name); @@ -249,7 +243,7 @@ pl = perl_event_handlers; while (pl) { ehn = pl->data; - if (ehn && ehn->handle == plug->handle) { + if (ehn && ehn->plug == plug) { perl_event_handlers = g_list_remove(perl_event_handlers, ehn); g_free(ehn->event_type); g_free(ehn->handler_name); @@ -259,15 +253,17 @@ } plug->handle=NULL; + plugins = g_list_remove(plugins, plug); + save_prefs(); } int perl_load_file(char *script_name) { struct gaim_plugin *plug; GList *p = probed_plugins; - GList *e = perl_event_handlers; - GList *t = perl_timeout_handlers; - int num_e, num_t, ret; + GList *s; + struct perlscript *scp; + int ret; if (my_perl == NULL) perl_init(); @@ -282,36 +278,35 @@ if (!plug) { probe_perl(script_name); } - + plug->handle = plug->path; - - /* This is such a terrible hack-- if I weren't tired and annoyed - * with perl, I'm sure I wouldn't even be considering this. */ - num_e=g_list_length(e); - num_t=g_list_length(t); + plugins = g_list_append(plugins, plug); ret = execute_perl("load_n_eval", script_name); - t = g_list_nth(perl_timeout_handlers, num_t++); - while (t) { - struct _perl_timeout_handlers *h = t->data; - h->handle = plug->handle; - t = t->next; + s = perl_list; + while (s) { + scp = s->data; + + if (!strcmp(scp->name, plug->desc.name) && + !strcmp(scp->version, plug->desc.version)) + break; + s = s->next; } - e = g_list_nth(perl_event_handlers, num_e++); - while (e) { - struct _perl_event_handlers *h = e->data; - h->handle = plug->handle; - e = e->next; + if (!s) { + g_snprintf(plug->error, sizeof(plug->error), _("GAIM::register not called with proper arguments. Consult PERL-HOWTO.")); + return 0; } + + plug->error[0] = '\0'; return ret; } struct gaim_plugin *probe_perl(const char *filename) { /* XXX This woulld be much faster if I didn't create a new - * PerlInterpreter every time I did probed a plugin */ + * PerlInterpreter every time I probed a plugin */ PerlInterpreter *prober = perl_alloc(); struct gaim_plugin * plug = NULL; @@ -328,7 +323,6 @@ count = perl_call_pv("description", G_NOARGS | G_ARRAY | G_EVAL); SPAGAIN; - debug_printf("desc: %d char: %d count: %d\n", sizeof(struct gaim_plugin_description), sizeof(char*), count); if (count == (sizeof(struct gaim_plugin_description) - sizeof(int)) / sizeof(char*)) { plug = g_new0(struct gaim_plugin, 1); plug->type = perl_script; @@ -449,6 +443,9 @@ char *name, *ver, *callback, *unused; /* exactly like X-Chat, eh? :) */ unsigned int junk; struct perlscript *scp; + struct gaim_plugin *plug; + GList *pl = plugins; + dXSARGS; items = 0; @@ -457,13 +454,25 @@ callback = SvPV (ST (2), junk); unused = SvPV (ST (3), junk); - scp = g_new0(struct perlscript, 1); - scp->name = g_strdup(name); - scp->version = g_strdup(ver); - scp->shutdowncallback = g_strdup(callback); - perl_list = g_list_append(perl_list, scp); + while (pl) { + plug = pl->data; - XST_mPV (0, VERSION); + if (!strcmp(name, plug->desc.name) && + !strcmp(ver, plug->desc.version)) { + break; + } + pl = pl->next; + } + + if (plug) { + scp = g_new0(struct perlscript, 1); + scp->name = g_strdup(name); + scp->version = g_strdup(ver); + scp->shutdowncallback = g_strdup(callback); + scp->plug = plug; + perl_list = g_list_append(perl_list, scp); + } + XST_mPV (0, plug->path); XSRETURN (1); } @@ -963,14 +972,31 @@ { unsigned int junk; struct _perl_event_handlers *handler; + char *handle; + struct gaim_plugin *plug; + GList *p = plugins; dXSARGS; items = 0; + + handle = SvPV(ST(0), junk); + while (p) { + plug = p->data; + if (!strcmp(handle, plug->path)) + break; + p = p->next; + } - handler = g_new0(struct _perl_event_handlers, 1); - handler->event_type = g_strdup(SvPV(ST(0), junk)); - handler->handler_name = g_strdup(SvPV(ST(1), junk)); - perl_event_handlers = g_list_append(perl_event_handlers, handler); - debug_printf("registered perl event handler for %s\n", handler->event_type); + if (p) { + handler = g_new0(struct _perl_event_handlers, 1); + handler->event_type = g_strdup(SvPV(ST(1), junk)); + handler->handler_name = g_strdup(SvPV(ST(2), junk)); + handler->plug = plug; + perl_event_handlers = g_list_append(perl_event_handlers, handler); + debug_printf("registered perl event handler for %s\n", handler->event_type); + } else { + debug_printf("Invalid handle (%s) registering perl event handler\n", handle); + } + XSRETURN_EMPTY; } @@ -1015,16 +1041,33 @@ unsigned int junk; long timeout; struct _perl_timeout_handlers *handler; + char *handle; + struct gaim_plugin *plug; + GList *p = plugins; + dXSARGS; items = 0; + + handle = SvPV(ST(0), junk); + while (p) { + plug = p->data; + if (!strcmp(handle, plug->path)) + break; + p = p->next; + } - handler = g_new0(struct _perl_timeout_handlers, 1); - timeout = 1000 * SvIV(ST(0)); - debug_printf("Adding timeout for %d seconds.\n", timeout/1000); - handler->handler_name = g_strdup(SvPV(ST(1), junk)); - handler->handler_args = g_strdup(SvPV(ST(2), junk)); - perl_timeout_handlers = g_list_append(perl_timeout_handlers, handler); - handler->iotag = g_timeout_add(timeout, perl_timeout, handler); + if (p) { + handler = g_new0(struct _perl_timeout_handlers, 1); + timeout = 1000 * SvIV(ST(1)); + debug_printf("Adding timeout for %d seconds.\n", timeout/1000); + handler->plug = plug; + handler->handler_name = g_strdup(SvPV(ST(2), junk)); + handler->handler_args = g_strdup(SvPV(ST(3), junk)); + perl_timeout_handlers = g_list_append(perl_timeout_handlers, handler); + handler->iotag = g_timeout_add(timeout, perl_timeout, handler); + } else { + debug_printf("Invalid handle (%s) in adding perl timeout handler.", handle); + } XSRETURN_EMPTY; } @@ -1046,21 +1089,5 @@ perl_init(); } -extern void list_perl_scripts() -{ - GList *s = perl_list; - struct perlscript *p; - char buf[BUF_LONG * 4]; - int at = 0; - - at += g_snprintf(buf + at, sizeof(buf) - at, "Loaded scripts:\n"); - while (s) { - p = (struct perlscript *)s->data; - at += g_snprintf(buf + at, sizeof(buf) - at, "%s\n", p->name); - s = s->next; - } - - do_error_dialog(buf, NULL, GAIM_INFO); -} #endif /* USE_PERL */ Index: prefs.c =================================================================== RCS file: /cvsroot/gaim/gaim/src/prefs.c,v retrieving revision 1.254 retrieving revision 1.255 diff -u -d -r1.254 -r1.255 --- prefs.c 26 Sep 2002 07:37:52 -0000 1.254 +++ prefs.c 28 Sep 2002 08:08:14 -0000 1.255 @@ -861,8 +861,13 @@ gtk_tree_model_get_value (model, &iter, 2, &val); plug = g_value_get_pointer(&val); - g_snprintf(buf, sizeof(buf), _("<span size=\"larger\">%s %s</span>\n\n%s"), - plug->desc.name, plug->desc.version, plug->desc.description); + if (plug->error[0]) + g_snprintf(buf, sizeof(buf), _("<span size=\"larger\">%s %s</span>\n\n" + "<span weight=\"bold\" color=\"red\">%s</span>\n\n" + "%s"), plug->desc.name, plug->desc.version, plug->error, plug->desc.description); + else + g_snprintf(buf, sizeof(buf), _("<span size=\"larger\">%s %s</span>\n\n" + "%s"), plug->desc.name, plug->desc.version, plug->desc.description); gtk_label_set_markup(GTK_LABEL(plugin_description), buf); g_snprintf(buf, sizeof(buf), _("<span size=\"larger\">%s %s</span>\n\n" "<span weight=\"bold\">Written by:</span>\t%s\n" @@ -915,10 +920,16 @@ {} #endif gdk_window_set_cursor(prefs->window, NULL); - + if (plug->error[0]) + g_snprintf(buf, sizeof(buf), _("<span size=\"larger\">%s %s</span>\n\n" + "<span weight=\"bold\" color=\"red\">%s</span>\n\n" + "%s"), plug->desc.name, plug->desc.version, plug->error, plug->desc.description); + else + g_snprintf(buf, sizeof(buf), _("<span size=\"larger\">%s %s</span>\n\n" + "%s"), plug->desc.name, plug->desc.version, plug->desc.description); + gtk_label_set_markup(GTK_LABEL(plugin_description), buf); gtk_list_store_set (GTK_LIST_STORE (model), &iter, 0, plug->handle, -1); - g_snprintf(buf, sizeof(buf), _("<span size=\"larger\">%s %s</span>\n\n%s"), - plug->desc.name, plug->desc.version, plug->desc.description); + gtk_label_set_markup(GTK_LABEL(plugin_description), buf); gtk_tree_path_free(path); } |
From: Sean E. <sea...@us...> - 2002-09-28 08:08:17
|
Update of /cvsroot/gaim/gaim/plugins In directory usw-pr-cvs1:/tmp/cvs-serv17668/plugins Modified Files: PERL-HOWTO gaim.pl Log Message: I made my perl script unloading not suck (as much). Now you may port your perl scripts--use gaim.pl and PERL-HOWTO as references. Index: PERL-HOWTO =================================================================== RCS file: /cvsroot/gaim/gaim/plugins/PERL-HOWTO,v retrieving revision 1.16 retrieving revision 1.17 diff -u -d -r1.16 -r1.17 --- PERL-HOWTO 26 Sep 2002 07:37:51 -0000 1.16 +++ PERL-HOWTO 28 Sep 2002 08:08:14 -0000 1.17 @@ -42,7 +42,15 @@ Just like X-Chat. This is the first function your script should call. shutdownroutine is a function that will be called when the script gets unloaded (like when gaim gets closed). This function returns - gaim's version number. + gaim's version number. This function MUST use the same Name and Version + given in description()--the plugin won't work otherwise. This returns a + handle--you want to hold on to this. + + The handle is what Gaim will use to distinguish your script from any others + running. It's actually a string--the path to the script, but you'll probably + never need to know that. As long as you just hold on to it and don't change it + everything should work fine. You need it for GAIM::add_event_handler and + GAIM::add_timeout_handler. GAIM::get_info(integer, ...) This function returns different information based on the integer passed @@ -125,11 +133,12 @@ GAIM::print_to_chat(index, room, what) Room is actually an int. Read SIGNALS to find out why. -GAIM::add_event_handler(event, function) +GAIM::add_event_handler(handle, event, function) This is the most important of them all. This is basically exactly like - gaim_signal_connect for plugins. You pass which event you want to connect to - (a string with the same name as the events for plugins, see SIGNALS), and a - string with the name of the function you want called. Simple enough? + gaim_signal_connect for plugins. You pass the handle returned by GAIM::register, + which event you want to connect to (a string with the same name as the events for + plugins, see SIGNALS), and a string with the name of the function you want called. + Simple enough? When this is triggered, the arguments will be passed in @_ and are broken into a list. This is different from all previous versions of Gaim, where you @@ -150,11 +159,11 @@ calls "function" as its handler. The event handler must have been previously added with GAIM::add_event_handler. -GAIM::add_timeout_handler(integer, function, args) +GAIM::add_timeout_handler(handle, integer, function, args) This calls function after integer number of seconds. It only calls function once, so if you want to keep calling function, keep readding the handler. Args is a string that you'd like to have passed to your timeout handler; it's - optional. + optional. Handle is the handle returned by GAIM::register--it is not optional. GAIM::play_sound(int sound) Plays a sound using whatever method the user has selected. The argument is Index: gaim.pl =================================================================== RCS file: /cvsroot/gaim/gaim/plugins/gaim.pl,v retrieving revision 1.5 retrieving revision 1.6 diff -u -d -r1.5 -r1.6 --- gaim.pl 26 Sep 2002 07:37:51 -0000 1.5 +++ gaim.pl 28 Sep 2002 08:08:14 -0000 1.6 @@ -1,5 +1,12 @@ -GAIM::register("Example", "1.0", "goodbye", ""); +sub description { + my($a, $b, $c, $d, $e, $f) = @_; + ("Example", "1.0", "An example Gaim perl script that does nothing particularly useful:\n\t-Show a dialog on load\n\t-Set user idle for 6,000 seconds\n\t-Greets people signing on with \"Hello\"\n\t-Informs you when script has been loaded for one minute.", "Eric Warmenhoven <eric\@warmenhoven.org>", "http://gaim.sf.net", "/dev/null"); +} +$handle = GAIM::register("Example", "1.0", "goodbye", ""); + +GAIM::print("Perl Says", "Handle $handle"); + $ver = GAIM::get_info(0); @ids = GAIM::get_info(1); @@ -10,12 +17,11 @@ $msg .= "\n$nam using $pro"; } -GAIM::print("Perl Says", $msg); GAIM::command("idle", 6000); -GAIM::add_event_handler("event_buddy_signon", "echo_reply"); -GAIM::add_timeout_handler(60, "notify"); +GAIM::add_event_handler($handle, "event_buddy_signon", "echo_reply"); +GAIM::add_timeout_handler($handle, 60, "notify"); sub echo_reply { $index = $_[0]; @@ -31,8 +37,3 @@ GAIM::print("You Bastard!", "You killed Kenny!"); } -sub description { - my($a, $b, $c, $d, $e, $f) = @_; - ("Example", "1.0", "An example Gaim perl script that does nothing particularly useful:\n\t-Show a dialog on load\n\t-Set user idle for 6,000 seconds\n\t-Greets people signing on with \"Hello\"\n\t-Informs you when script has been loaded for one minute.", "Eric Warmenhoven <eric\@warmenhoven.org>", "http://gaim.sf.net", "/dev/null"); - } - |
From: Luke S. <lsc...@us...> - 2002-09-28 03:48:31
|
Update of /cvsroot/gaim/gaim/src/protocols/irc In directory usw-pr-cvs1:/tmp/cvs-serv8139/src/protocols/irc Modified Files: irc.c Log Message: having a link in the realname field causes a problem for _at least_ one server. this fix from paco-paco simplifies the realname field so that things work. Index: irc.c =================================================================== RCS file: /cvsroot/gaim/gaim/src/protocols/irc/irc.c,v retrieving revision 1.84 retrieving revision 1.85 diff -u -d -r1.84 -r1.85 --- irc.c 19 Sep 2002 16:47:17 -0000 1.84 +++ irc.c 28 Sep 2002 03:48:28 -0000 1.85 @@ -1317,10 +1317,10 @@ hostname[sizeof(hostname) - 1] = 0; if (!*hostname) g_snprintf(hostname, sizeof(hostname), "localhost"); - g_snprintf(buf, sizeof(buf), "USER %s %s %s :%s [Gaim (%s)]\r\n", + g_snprintf(buf, sizeof(buf), "USER %s %s %s :%s\r\n", g_get_user_name(), hostname, gc->user->proto_opt[USEROPT_SERV], - gc->user->alias, WEBSITE); + gc->user->alias); if (irc_write(idata->fd, buf, strlen(buf)) < 0) { hide_login_progress(gc, "Write error"); signoff(gc); |
From: Luke S. <lsc...@us...> - 2002-09-28 02:58:57
|
Update of /cvsroot/gaim/gaim/src In directory usw-pr-cvs1:/tmp/cvs-serv31866/src Modified Files: Tag: gtk1-stable util.c Log Message: a nice patch from A Lee for i18n approved by paco-paco Index: util.c =================================================================== RCS file: /cvsroot/gaim/gaim/src/util.c,v retrieving revision 1.123.2.2 retrieving revision 1.123.2.3 diff -u -d -r1.123.2.2 -r1.123.2.3 --- util.c 30 Aug 2002 07:11:27 -0000 1.123.2.2 +++ util.c 28 Sep 2002 02:58:53 -0000 1.123.2.3 @@ -1121,48 +1121,86 @@ fclose(fd); } -char *convert_string(char *str, const char *destset, const char *srcset) +char *convert_string(const char *in, const char *destset, const char *srcset) { #ifdef HAVE_ICONV - char *buf; - iconv_t cd; - size_t insize = 0; - size_t outsize = 0; - size_t nconv = 0; - char *inptr; - char *outptr; - char *ret; + int n = 0, i = 0; + int inlen; + char *result; + iconv_t cd1, cd2; /* cd1: srcset->UCS-4, cd2: UCS-4->destset */ + size_t outleft, ucs4_outleft; + size_t old_inlen, old_outleft; + size_t tmp; + char *result_ptr; + char *ucs4_result; + char *ucs4_result_ptr; - if (!str) - return NULL; - buf = g_malloc(strlen(str)*4); - insize = strlen(str); - inptr = str; - outsize = strlen(str)*4; - outptr = buf; + if (!in) + return NULL; - cd = iconv_open(destset, srcset); - if (cd == (iconv_t) -1) { - g_free(buf); + cd1 = iconv_open("UCS-4", srcset); + cd2 = iconv_open(destset, "UCS-4"); + + if (cd1 == (iconv_t) -1 || cd2 == (iconv_t) -1) { + if ( cd1 != (iconv_t)-1 ) { + iconv_close(cd1); + } + else if ( cd2 != (iconv_t)-1 ) { + iconv_close(cd2); + } debug_printf("iconv_open(%s, %s) Error\n",destset, srcset); - return g_strdup(str); + return g_strdup(in); } - nconv = iconv(cd, &inptr, &insize, &outptr, &outsize); - if (nconv == (size_t) -1) { - debug_printf("iconv Error\n"); - g_free(buf); - return g_strdup(str); - } - *outptr = '\0'; - iconv_close(cd); + /* use iconv to convert srcset to destset */ + /* we will convert srcset to UCS-4 and convert it again to destset + one character by one because iconv doesn't convert whole string + when it encountered a character which doesn't exist in the + target encoding charset. */ - ret = g_strdup(buf); - g_free(buf); + inlen = strlen(in); + if ( inlen <= 0 ) { /* no need to process an empty string. */ + result = g_malloc(1); + result[0] = '\0'; + return result; + } + outleft = inlen * 6; /* in maximum, one character will occupy 6 bytes in srcset */ + result = g_malloc(outleft + 1); + ucs4_outleft = inlen * 4; + ucs4_result = g_malloc(ucs4_outleft); /* ucs4 conversion buffer */ + + result_ptr = ucs4_result; + tmp = ucs4_outleft; + iconv(cd1, &in, &inlen, &result_ptr, &ucs4_outleft); + n = (tmp - ucs4_outleft) / 4; /* 'n' will indicate the number of chars */ + debug_printf("ucs4_bytes: %d", (tmp-ucs4_outleft)); - return ret; + result_ptr = result; + ucs4_result_ptr = ucs4_result; + tmp = outleft; /* remember last buffer remainder */ + for ( i = 0; i < n; i ++ ) { + inlen = 4; + iconv(cd2, &ucs4_result_ptr, &inlen, &result_ptr, &outleft); + if ( tmp == outleft ) { + /* if nothing has ben converted, add '?' symbol */ + *(result_ptr++) = '?'; + outleft --; + ucs4_result_ptr += 4; + } + + tmp = outleft; /* remember last buffer remainder */ + } + + iconv_close(cd2); + iconv_close(cd1); + + *result_ptr = '\0'; + + g_free(ucs4_result); + + return result; #else - return g_strdup(str); + return g_strdup(in); #endif } |
From: <he...@ns...> - 2002-09-27 23:46:57
|
Sorry for interrupting you - click refuse <mailto:ma...@ns...> for no more mail... =09 =A1=A1 =09 - Welcome to NabiTel's <http://www.nabitel.com/English.asp> software products and portal services - =09 Software Products =09 <http://www.Nabitel.com/English.asp>=20 Web Robot: also called web spider or web crawler, collects useful web page informations by navigating world wide web sites.=20 Download free trial version now ! <http://www.nabitel.com/English.asp>=20 <http://www.Nabitel.com/English.asp> eMail ID Collector: Collects email ids publicly opened on various web pages.=20 Download free trial version now ! <http://www.nabitel.com/English.asp>=20 Portal Services =09 <http://www.nabitel.com/English.asp> Web Portal: Do you have your own home page and want to broadcast it all over the world ? Register your home page to NabiTel Portal Now !! (nabi=3Da butterfly) Register your home page now, it's free ! <http://www.nabitel.com/English.asp>=20 <http://www.AllThatCars.com/English.asp> Automobiles: Do you want to sell or buy automobiles ? Cars, trucks, limos, airplanes, ships,.... All That Cars are here ! Register your vehicles now, it's free ! <http://www.AllThatCars.com/English.asp>=20 <http://www.AllThatComputers.Com> Computers: Do you want to sell or buy computers ? PCs, printers, scanners, servers, mainframes, .... All That Computers are here !=20 Register your computers now, it's free ! <http://www.AllThatComputers.com/English.asp>=20 <http://www.AllThatFoods.Com/English.asp> =09 Food & Restaurants: Are you seeking for a nice place to eat ? Or do you run a restaurant ? Foods of the world, restaurants of the world, .... All That Foods are here !=20 Register your restaurant now, it's free ! <http://www.AllThatFoods.com/English.asp>=20 Have a nice day. Thank you. =09 |
From: Sean E. <sea...@us...> - 2002-09-27 03:34:58
|
Update of /cvsroot/gaim/gaim/plugins In directory usw-pr-cvs1:/tmp/cvs-serv30701/plugins Modified Files: notify.c Log Message: Sorry for that. Index: notify.c =================================================================== RCS file: /cvsroot/gaim/gaim/plugins/notify.c,v retrieving revision 1.15 retrieving revision 1.16 diff -u -d -r1.15 -r1.16 --- notify.c 26 Sep 2002 07:37:51 -0000 1.15 +++ notify.c 27 Sep 2002 03:34:54 -0000 1.16 @@ -261,7 +261,7 @@ snprintf(buf, 1000, "%s/.gaim/.notify", getenv("HOME")); if (!(fp = fopen(buf, "w"))) { - do_eror_dialog(_("Unable to write to config file"), _("Notify plugin"), GAIM_ERROR); + do_error_dialog(_("Unable to write to config file"), _("Notify plugin"), GAIM_ERROR); return; } |
From: Sean E. <sea...@us...> - 2002-09-26 21:52:36
|
Update of /cvsroot/gaim/gaim In directory usw-pr-cvs1:/tmp/cvs-serv8556 Modified Files: ChangeLog Log Message: :) Index: ChangeLog =================================================================== RCS file: /cvsroot/gaim/gaim/ChangeLog,v retrieving revision 1.549 retrieving revision 1.550 diff -u -d -r1.549 -r1.550 --- ChangeLog 26 Sep 2002 15:23:30 -0000 1.549 +++ ChangeLog 26 Sep 2002 21:52:33 -0000 1.550 @@ -58,6 +58,7 @@ * event_del_conversation for plugins (Thanks Bill Tompkins) * Code cleanups and fixes (Thanks Federico Mena Quintero) * aim:// URI's supported with gaim-remote command + * Quit Gaim remotely with gaim-remote (Thanks John Silvestri) * Don't auto-login if an existing Gaim session is already running. * Login all auto-login accounts from login window (Thanks |
From: Sean E. <sea...@us...> - 2002-09-26 21:51:37
|
Update of /cvsroot/gaim/gaim/src In directory usw-pr-cvs1:/tmp/cvs-serv8193/src Modified Files: gaim-remote.c Log Message: gaim-remote quit Thanks John Silvestri. Index: gaim-remote.c =================================================================== RCS file: /cvsroot/gaim/gaim/src/gaim-remote.c,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 --- gaim-remote.c 18 Sep 2002 00:11:45 -0000 1.2 +++ gaim-remote.c 26 Sep 2002 21:51:34 -0000 1.3 @@ -35,7 +35,8 @@ " convo Open a new conversation window\n" " send Send message\n" " add Add buddy to buddy list\n" - " remove Remove buddy from list\n\n" + " remove Remove buddy from list\n" + " quit Close running copy of Gaim\n\n" " OPTIONS:\n" " -m, --message=MESG Message to send or show in conversation window\n" @@ -135,9 +136,24 @@ return 0; } +int command_quit() { + int fd = 0; + struct gaim_cui_packet *p = NULL; + fd = gaim_connect_to_session(0); + if (!fd) { + fprintf(stderr, "Gaim not running (on session 0)\n"); + return 1; + } + p = cui_packet_new(CUI_TYPE_META, CUI_META_QUIT); + cui_send_packet (fd, p); + close(fd); + cui_packet_free(p); + return 0; +} + int command_info(){} -int main (int argc, char *argv[]) +int main (int argc, char *argv[]) { if (get_options(argc, argv)) { @@ -150,6 +166,8 @@ return command_uri(); } else if (!strcmp(opts.command, "info")) { return command_info(); + } else if (!strcmp(opts.command, "quit")) { + return command_quit(); } else { show_remote_usage(argv[0]); return 1; |
From: Sean E. <sea...@us...> - 2002-09-26 21:48:27
|
Update of /cvsroot/gaim/gaim/src In directory usw-pr-cvs1:/tmp/cvs-serv7094/src Modified Files: Tag: gtk1-stable buddy.c Log Message: Thanks again. Index: buddy.c =================================================================== RCS file: /cvsroot/gaim/gaim/src/buddy.c,v retrieving revision 1.317.2.2 retrieving revision 1.317.2.3 diff -u -d -r1.317.2.2 -r1.317.2.3 --- buddy.c 12 Sep 2002 14:39:41 -0000 1.317.2.2 +++ buddy.c 26 Sep 2002 21:48:24 -0000 1.317.2.3 @@ -2927,7 +2927,7 @@ /* The edit tree */ gtk_container_add(GTK_CONTAINER(tbox), edittree); gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(tbox), - GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC); + GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); gtk_window_set_title(GTK_WINDOW(blist), _("Gaim - Buddy List")); |
From: Sean E. <sea...@us...> - 2002-09-26 21:48:26
|
Update of /cvsroot/gaim/gaim In directory usw-pr-cvs1:/tmp/cvs-serv7094 Modified Files: Tag: gtk1-stable ChangeLog Log Message: Thanks again. Index: ChangeLog =================================================================== RCS file: /cvsroot/gaim/gaim/ChangeLog,v retrieving revision 1.509.2.30 retrieving revision 1.509.2.31 diff -u -d -r1.509.2.30 -r1.509.2.31 --- ChangeLog 21 Sep 2002 20:03:43 -0000 1.509.2.30 +++ ChangeLog 26 Sep 2002 21:48:24 -0000 1.509.2.31 @@ -2,6 +2,8 @@ version 0.59.4 * Removed color keybinnding altogether. + * Added a horizontal scrollbar to Edit page of + buddy list. (Thanks, David Fallon) version 0.59.3 (09/14/2002): * Reversed patch that accidentally caused Yahoo |
From: Sean E. <sea...@us...> - 2002-09-26 21:46:58
|
Update of /cvsroot/gaim/gaim/src In directory usw-pr-cvs1:/tmp/cvs-serv6620/src Modified Files: buddy.c Log Message: Thanks David Fallon Index: buddy.c =================================================================== RCS file: /cvsroot/gaim/gaim/src/buddy.c,v retrieving revision 1.337 retrieving revision 1.338 diff -u -d -r1.337 -r1.338 --- buddy.c 26 Sep 2002 15:23:32 -0000 1.337 +++ buddy.c 26 Sep 2002 21:46:53 -0000 1.338 @@ -2880,7 +2880,7 @@ /* The edit tree */ gtk_container_add(GTK_CONTAINER(tbox), edittree); gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(tbox), - GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC); + GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); gtk_window_set_title(GTK_WINDOW(blist), _("Gaim - Buddy List")); |
From: Christian H. <ch...@us...> - 2002-09-26 21:12:32
|
Update of /cvsroot/gaim/web/scripts In directory usw-pr-cvs1:/tmp/cvs-serv26303 Added Files: README updatesite.sh Log Message: Added a script for updating the gaim website. Use it after you commit any changes. (No, it can't be made automatic on commit, but I may setup a cron job to auto-update every hour in case people forget, but learn to use the script :) --- NEW FILE: README --- These are scripts to aid in the maintenance of the website. More may be added down the road. updatesite.sh - Updated the gaim website. If your local account's username is not the same as your SourceForge username, you'll want to copy this and change the SFUSER variable to match your SourceForge username. I renamed this to gaimwebupdate and stuck it in ~/bin --- NEW FILE: updatesite.sh --- #!/bin/sh SFUSER=$USER /usr/bin/ssh $SF...@sh... 'cd /home/groups/g/ga/gaim && cvs -z3 update -Pd' |
From: Christian H. <ch...@us...> - 2002-09-26 21:11:00
|
Update of /cvsroot/gaim/web/scripts In directory usw-pr-cvs1:/tmp/cvs-serv26045/scripts Log Message: Directory /cvsroot/gaim/web/scripts added to the repository |
From: Sean E. <sea...@us...> - 2002-09-26 21:03:14
|
Update of /cvsroot/gaim/gaim/src In directory usw-pr-cvs1:/tmp/cvs-serv22677/src Modified Files: dialogs.c Log Message: color selector works now. Index: dialogs.c =================================================================== RCS file: /cvsroot/gaim/gaim/src/dialogs.c,v retrieving revision 1.342 retrieving revision 1.343 diff -u -d -r1.342 -r1.343 --- dialogs.c 26 Sep 2002 15:23:33 -0000 1.342 +++ dialogs.c 26 Sep 2002 21:03:06 -0000 1.343 @@ -3025,22 +3025,21 @@ void do_fgcolor(GtkWidget *widget, GtkColorSelection *colorsel) { - gdouble color[3]; GdkColor text_color; struct conversation *c; char *open_tag; open_tag = g_malloc(30); - gtk_color_selection_get_color(colorsel, color); + gtk_color_selection_get_current_color(colorsel, &text_color); c = gtk_object_get_user_data(GTK_OBJECT(colorsel)); /* GTK_IS_EDITABLE(c->entry); huh? */ - text_color.red = ((guint16)(color[0] * 65535)) >> 8; - text_color.green = ((guint16)(color[1] * 65535)) >> 8; - text_color.blue = ((guint16)(color[2] * 65535)) >> 8; - + text_color.red = text_color.red * 256 / 65535; + text_color.green = text_color.green * 256 /65535; + text_color.blue = text_color.blue * 256 / 65535; + c->fgcol = text_color; c->hasfg = 1; g_snprintf(open_tag, 23, "<FONT COLOR=\"#%02X%02X%02X\">", text_color.red, text_color.green, @@ -3053,21 +3052,20 @@ void do_bgcolor(GtkWidget *widget, GtkColorSelection *colorsel) { - gdouble color[3]; GdkColor text_color; struct conversation *c; char *open_tag; open_tag = g_malloc(30); - gtk_color_selection_get_color(colorsel, color); + gtk_color_selection_get_current_color(colorsel, &text_color); c = gtk_object_get_user_data(GTK_OBJECT(colorsel)); /* GTK_IS_EDITABLE(c->entry); huh? */ - text_color.red = ((guint16)(color[0] * 65535)) >> 8; - text_color.green = ((guint16)(color[1] * 65535)) >> 8; - text_color.blue = ((guint16)(color[2] * 65535)) >> 8; + text_color.red = text_color.red * 256 / 65535; + text_color.green = text_color.green * 256 /65535; + text_color.blue = text_color.blue * 256 / 65535; c->bgcol = text_color; c->hasbg = 1; |
From: Christian H. <ch...@us...> - 2002-09-26 19:16:54
|
Update of /cvsroot/gaim/web/htdocs In directory usw-pr-cvs1:/tmp/cvs-serv17063 Modified Files: faq.txt Log Message: Updated the FAQ Index: faq.txt =================================================================== RCS file: /cvsroot/gaim/web/htdocs/faq.txt,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 --- faq.txt 26 Sep 2002 13:05:11 -0000 1.2 +++ faq.txt 26 Sep 2002 19:16:47 -0000 1.3 @@ -56,10 +56,10 @@ than 0.10.39. You will get errors in the <code>po/</code> directory. </p> <p> -If you have Slackware, you need to get non-slack packages for autoconf, -automake, gettext, and libtool. You also have to copy the contents of -/usr/local/share/aclocal to /usr/share/aclocal. This is due to bugs in -Slackware and the auto* packages. + If you have Slackware, you need to get non-slack packages for autoconf, + automake, gettext, and libtool. You also have to copy the contents of + /usr/local/share/aclocal to /usr/share/aclocal. This is due to bugs in + Slackware and the auto* packages. </p> Q: I have a question about GTK2. @@ -68,6 +68,10 @@ 0.60 will be the first release with Gtk2 supported, and will no longer have support for Gtk1.2. We are not sure when we will be finished with this port, but if you want, you can use cvs to try it out. +Q: I'd like to use gaim on IRIX. + +A: Please see <a href="http://sourceforge.net/forum/forum.php?thread_id=725839&forum_id=665">this thread</a> at our SourceForge Forum. + !SECTION Using Gaim @@ -314,18 +318,12 @@ on-line. </p> -!SECTON MSN + +!SECTION MSN Q: I'm getting lots of "Already in Opposite list" errors on msn, why? -A: The reason this happens is because you have a screenname in both -your permit list and your deny list. There are two ways to fix this: the correct -way and the quick way. The correct way is to go to tools->preferences (tools->privacy -in 0.60 or latter), and manually scan the list and remove the duplicate entries. The -quick way is to remove the msn .blist file from the ~/.gaim directory. This will have -a side effect: the msn server stores the screennames of your contacts, but does not -store what group they are in, so you will have to re-sort your msn contacts into the -appropriate groups. +A: The reason this happens is because you have a screenname in both your permit list and your deny list. There are two ways to fix this: the correct way and the quick way. The correct way is to go to tools->preferences (tools->privacy in 0.60 or latter), and manually scan the list and remove the duplicate entries. The quick way is to remove the msn .blist file from the ~/.gaim directory. This will have a side effect: the msn server stores the screennames of your contacts, but does not store what group they are in, so you will have to re-sort your msn contacts into the appropriate groups. !SECTION Scripts and Plugins |
From: Christian H. <ch...@us...> - 2002-09-26 19:01:34
|
Update of /cvsroot/gaim/web/htdocs In directory usw-pr-cvs1:/tmp/cvs-serv13070 Modified Files: news.txt Log Message: Recovered the news! Thanks Luke. Index: news.txt =================================================================== RCS file: /cvsroot/gaim/web/htdocs/news.txt,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 --- news.txt 26 Sep 2002 10:51:35 -0000 1.2 +++ news.txt 26 Sep 2002 19:01:26 -0000 1.3 @@ -2,6 +2,36 @@ September 26th, 2002 - 3:41AM PDT We experienced a few problems with the website, and lost some data. Particularly, the past two news items, relating to the win32 release of gaim and something else I can't remember, and updated FAQ information. We'll be working to restore this data. The necessary back-end code for member management and the all-new plugins database has been added, though not yet enabled. When some work is done to the plugins system in gaim, this portion of the site will be up. +<b>*Update 09/26/2002 12:00PM PDT*</b> +It seems we have all the missing news, and the FAQ is being updated. Thanks for being patient everyone! +# +v0.59.3 released! We broke our Yahoo! +September 15th, 2002 - 12:26PM EDT +Hey all, Gaim v0.59.3 has been released. This is mostly a release to fix the problem that some people experience with signing on to the Yahoo Messenger service. It also changes the color binding in Conversation windows to Ctrl+K as opposed to Ctrl+C. Any other fixes can be learned of via the <a href="ChangeLog">ChangeLog</a>. +<b>*Update 09/16/2002 10:08AM EDT*</b> +Thanks to Benjamin Miller, I just posted some Solaris binaries for 0.59.3. +# +Gaim for Win32! +September 13th, 2002 - 1:45PM EDT +That's right, folks! It's Friday 13th and something scary has happened. We've posted an experimental alpha release of Gaim for Windows. There are some problems with the port but we're interested in hearing your results. This has only been tested with Windows 2000. +The following protocols are supported in this release as plugins: Oscar(AIM/ICQ), TOC, Jabber, MSN, Yahoo, and IRC. +You can find the release <a href="http://sourceforge.net/project/showfiles.php?group_id=235">here</a>. Enjoy, and please understand that this is only an alpha release. If you have any comments, etc., please send mail to ga...@ma.... +A big thanks to Herman Bloggs for his work on the Win32 release. +# +v0.59.2 is released! Kev P. Henry still rocks! +September 09th, 2002 - 12:41PM EDT +Gaim v0.59.2 has been released. This release contains some translation updates and mostly bug fixes. We're still actively working on the GTK2 port, as well. It's going to be nice. :-). Talk to your good friend <a href="ChangeLog">ChangeLog</a> if you have any questions. +And yes, Kev P. Henry still rocks. Thanks, Kev! +# +v0.59.1 released! Now with twice the points! +August 26th, 2002 - 12:11AM EDT +We've gone and done something drastic. The stress of trying to maintain two versions of GTK in the same tree got to us so we went and branched. 0.59.x is our GTK+ 1.2 stable branch which will contain only bugfixes. New features will be developed on CVS HEAD and releases will continue with our traditional numbering scheme. We know things have been really slow over the summer, but they'll definitely pick up again now that the summer is ending. Gaim 0.59.1 contains a few important fixes, including a fix for a security vulnerability for those who use the manual browser option, and a few fixes for proxies. Check the <a href=ChangeLog>ChangeLog</a>. +<b>* Update 08/26/2002 20:37PM EDT *</b> +Hi again; I just put up a new set of 0.59.1 rpm's to fix a problem with the perl dependencies, and also to include some PPC rpms. Thanks to Ethan Blanton for the RPMs. +# +gettext problems resolved +August 19th, 2002 - 12:26PM PDT +It looks like we finally got all of the gettext 0.11.x and automake 1.6 problems fixed. If you use either of these and have had problems compiling Gaim, please check out a copy from <a href="cvs.php">CVS</a> and try again. If it doesn't work, drop by #gaim on <a href="http://www.freenode.info">irc.freenode.net</a> (formerly OPN) and let me (ChipX86) know. There is a plan to fork gettext, which has been causing a lot of trouble. See <a href="forkgettext.jpg">here</a> for details. Thanks to Mike Styne for the informative image. # apt-rpm repository created July 10th, 2002 - 3:36PM PDT |
From: Sean E. <sea...@us...> - 2002-09-26 16:51:50
|
Update of /cvsroot/gaim/gaim/src In directory usw-pr-cvs1:/tmp/cvs-serv17646/src Modified Files: perl.c Log Message: No more death by perl. Index: perl.c =================================================================== RCS file: /cvsroot/gaim/gaim/src/perl.c,v retrieving revision 1.78 retrieving revision 1.79 diff -u -d -r1.78 -r1.79 --- perl.c 26 Sep 2002 07:37:52 -0000 1.78 +++ perl.c 26 Sep 2002 16:51:46 -0000 1.79 @@ -325,10 +325,11 @@ ENTER; SAVETMPS; PUSHMARK(SP); - count =perl_call_pv("description", G_NOARGS | G_ARRAY); + + count = perl_call_pv("description", G_NOARGS | G_ARRAY | G_EVAL); SPAGAIN; - - if (count = sizeof(struct gaim_plugin_description) / sizeof(char*)) { + debug_printf("desc: %d char: %d count: %d\n", sizeof(struct gaim_plugin_description), sizeof(char*), count); + if (count == (sizeof(struct gaim_plugin_description) - sizeof(int)) / sizeof(char*)) { plug = g_new0(struct gaim_plugin, 1); plug->type = perl_script; g_snprintf(plug->path, sizeof(plug->path), filename); |
From: Sean E. <sea...@us...> - 2002-09-26 15:42:17
|
Update of /cvsroot/gaim/gaim/po In directory usw-pr-cvs1:/tmp/cvs-serv14947/po Modified Files: POTFILES.in Log Message: bye bye plugins. Index: POTFILES.in =================================================================== RCS file: /cvsroot/gaim/gaim/po/POTFILES.in,v retrieving revision 1.16 retrieving revision 1.17 diff -u -d -r1.16 -r1.17 --- POTFILES.in 16 Sep 2002 08:35:16 -0000 1.16 +++ POTFILES.in 26 Sep 2002 15:42:14 -0000 1.17 @@ -23,7 +23,6 @@ src/module.c src/multi.c src/perl.c -src/plugins.c src/prefs.c src/prpl.c src/server.c |
From: Sean E. <sea...@us...> - 2002-09-26 15:24:04
|
Update of /cvsroot/gaim/gaim In directory usw-pr-cvs1:/tmp/cvs-serv7945 Modified Files: ChangeLog Log Message: A long annoying patch by one Robert McQueen. Index: ChangeLog =================================================================== RCS file: /cvsroot/gaim/gaim/ChangeLog,v retrieving revision 1.548 retrieving revision 1.549 diff -u -d -r1.548 -r1.549 --- ChangeLog 26 Sep 2002 14:26:11 -0000 1.548 +++ ChangeLog 26 Sep 2002 15:23:30 -0000 1.549 @@ -71,8 +71,8 @@ * i18n fixes (Thanks Matt Wilson) * Removed Ctrl-C binding for color * Docklet plugin--replaces the old GNOME applet. You'll need the - Panel Notification Area applet for GNOME 2, or the patch from - RedHat for KDE 3. (Thanks Robert McQueen) + Panel Notification Area applet for GNOME 2, or the kicker for + KDE 3.1. (Thanks Robert McQueen, Ari Pollak, Patrick Aussems) * Plugins dialog and perl script menu merged into preferences. version 0.59 (06/24/2002): |