gaim/www

update tags
default tip
2019-09-10, convert-repo
7d915c997ccd
update tags
Index: src/buddy.c
===================================================================
RCS file: /cvsroot/gaim/gaim/src/buddy.c,v
retrieving revision 1.228
diff -u -r1.228 buddy.c
--- src/buddy.c 2001/06/08 23:17:16 1.228
+++ src/buddy.c 2001/06/09 14:40:55
@@ -87,6 +87,7 @@
GtkWidget *blist = NULL;
GtkWidget *bpmenu;
GtkWidget *buddies;
+GtkWidget *buddy_notebook;
void BuddyTickerLogonTimeout( gpointer data );
void BuddyTickerLogoutTimeout( gpointer data );
@@ -2529,6 +2530,7 @@
+extern void convo_switch(GtkNotebook *notebook, GtkWidget *page, gint page_num, gpointer data);
void show_buddy_list()
{
@@ -2546,7 +2548,6 @@
GtkWidget *menubar;
GtkWidget *vbox;
GtkWidget *menuitem;
- GtkWidget *notebook;
GtkWidget *label;
GtkWidget *bbox;
GtkWidget *tbox;
@@ -2711,7 +2712,8 @@
vbox = gtk_vbox_new(FALSE, 0);
- notebook = gtk_notebook_new();
+ buddy_notebook = gtk_notebook_new();
+ gtk_signal_connect(GTK_OBJECT(buddy_notebook), "switch-page", GTK_SIGNAL_FUNC(convo_switch), NULL);
@@ -2806,17 +2808,17 @@
label = gtk_label_new(_("Online"));
- gtk_notebook_append_page(GTK_NOTEBOOK(notebook), buddypane, label);
+ gtk_notebook_append_page(GTK_NOTEBOOK(buddy_notebook), buddypane, label);
label = gtk_label_new(_("Edit Buddies"));
- gtk_notebook_append_page(GTK_NOTEBOOK(notebook), editpane, label);
+ gtk_notebook_append_page(GTK_NOTEBOOK(buddy_notebook), editpane, label);
- gtk_widget_show_all(notebook);
+ gtk_widget_show_all(buddy_notebook);
/* Pack things in the vbox */
gtk_widget_show(vbox);
- gtk_widget_show(notebook);
+ gtk_widget_show(buddy_notebook);
/* Enable buttons */
@@ -2824,7 +2826,7 @@
gtk_signal_connect(GTK_OBJECT(addbutton), "clicked", GTK_SIGNAL_FUNC(add_buddy_callback), NULL);
gtk_signal_connect(GTK_OBJECT(groupbutton), "clicked", GTK_SIGNAL_FUNC(add_group_callback), NULL);
gtk_box_pack_start(GTK_BOX(vbox), menubar, FALSE, TRUE, 0);
- gtk_box_pack_start(GTK_BOX(vbox), notebook, TRUE, TRUE, 0);
+ gtk_box_pack_start(GTK_BOX(vbox), buddy_notebook, TRUE, TRUE, 0);
gtk_container_add(GTK_CONTAINER(blist), vbox);
Index: src/buddy_chat.c
===================================================================
RCS file: /cvsroot/gaim/gaim/src/buddy_chat.c,v
retrieving revision 1.97
diff -u -r1.97 buddy_chat.c
--- src/buddy_chat.c 2001/05/31 00:40:54 1.97
+++ src/buddy_chat.c 2001/06/09 14:40:56
@@ -756,7 +756,7 @@
GtkWidget *label = gtk_notebook_get_tab_label(GTK_NOTEBOOK(chat_notebook),
gtk_notebook_get_nth_page(GTK_NOTEBOOK(chat_notebook), page_num));
GtkStyle *style;
- struct conversation *b = g_list_nth_data(chats, page_num);
+ struct conversation *b = g_list_nth_data(chats, page_num - 2 - g_list_length(conversations));
if (b && b->window && b->entry)
gtk_window_set_focus(GTK_WINDOW(b->window), b->entry);
if (!GTK_WIDGET_REALIZED(label))
@@ -794,85 +794,12 @@
int dispstyle = set_dispstyle(1);
- if (display_options & OPT_DISP_ONE_CHAT_WINDOW) {
- if (!all_chats) {
- win = all_chats = b->window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
- gtk_window_set_wmclass(GTK_WINDOW(win), "buddy_chat", "Gaim");
- gtk_window_set_policy(GTK_WINDOW(win), TRUE, TRUE, TRUE);
- gtk_container_border_width(GTK_CONTAINER(win), 0);
- gtk_widget_realize(win);
- aol_icon(win->window);
- gtk_window_set_title(GTK_WINDOW(win), _("Gaim - Group Chats"));
- gtk_signal_connect(GTK_OBJECT(win), "delete_event",
- GTK_SIGNAL_FUNC(delete_all_chats), NULL);
+ win = b->window = blist;
- chat_notebook = gtk_notebook_new();
- if (display_options & OPT_DISP_CHAT_SIDE_TAB) {
- if (display_options & OPT_DISP_CHAT_BR_TAB) {
- gtk_notebook_set_tab_pos(GTK_NOTEBOOK(chat_notebook),
- GTK_POS_RIGHT);
- } else {
- gtk_notebook_set_tab_pos(GTK_NOTEBOOK(chat_notebook),
- GTK_POS_LEFT);
- }
- } else {
- if (display_options & OPT_DISP_CHAT_BR_TAB) {
- gtk_notebook_set_tab_pos(GTK_NOTEBOOK(chat_notebook),
- GTK_POS_BOTTOM);
- } else {
- gtk_notebook_set_tab_pos(GTK_NOTEBOOK(chat_notebook),
- GTK_POS_TOP);
- }
- }
- gtk_notebook_set_scrollable(GTK_NOTEBOOK(chat_notebook), TRUE);
- gtk_notebook_popup_enable(GTK_NOTEBOOK(chat_notebook));
- gtk_container_add(GTK_CONTAINER(win), chat_notebook);
- gtk_signal_connect(GTK_OBJECT(chat_notebook), "switch-page",
- GTK_SIGNAL_FUNC(chat_switch), NULL);
- gtk_widget_show(chat_notebook);
- } else
- win = b->window = all_chats;
-
- cont = gtk_vbox_new(FALSE, 5);
- gtk_container_set_border_width(GTK_CONTAINER(cont), 5);
- gtk_notebook_append_page(GTK_NOTEBOOK(chat_notebook), cont, gtk_label_new(b->name));
- gtk_widget_show(cont);
- } else {
- win = gtk_window_new(GTK_WINDOW_TOPLEVEL);
- b->window = win;
- gtk_object_set_user_data(GTK_OBJECT(win), b);
- gtk_window_set_wmclass(GTK_WINDOW(win), "buddy_chat", "Gaim");
- gtk_window_set_policy(GTK_WINDOW(win), TRUE, TRUE, TRUE);
- gtk_container_border_width(GTK_CONTAINER(win), 10);
- gtk_widget_realize(win);
- aol_icon(win->window);
- g_snprintf(buf, sizeof(buf), "Gaim - %s (chat)", b->name);
- gtk_window_set_title(GTK_WINDOW(win), buf);
- gtk_signal_connect(GTK_OBJECT(win), "destroy", GTK_SIGNAL_FUNC(close_callback), b);
-
- cont = gtk_vbox_new(FALSE,5);
- gtk_container_add(GTK_CONTAINER(win), cont);
- gtk_widget_show(cont);
- }
-
- if (b->gc->prpl->options & OPT_PROTO_CHAT_TOPIC) {
- GtkWidget *hbox;
- GtkWidget *label;
-
- hbox = gtk_hbox_new(FALSE, 0);
- gtk_box_pack_start(GTK_BOX(cont), hbox, FALSE, FALSE, 5);
- gtk_widget_show(hbox);
-
- label = gtk_label_new(_("Topic:"));
- gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 5);
- gtk_widget_show(label);
-
- b->topic_text = gtk_entry_new();
- gtk_signal_connect(GTK_OBJECT(b->topic_text), "activate",
- GTK_SIGNAL_FUNC(topic_callback), b);
- gtk_box_pack_start(GTK_BOX(hbox), b->topic_text, TRUE, TRUE, 5);
- gtk_widget_show(b->topic_text);
- }
+ cont = gtk_vbox_new(FALSE, 5);
+ gtk_container_set_border_width(GTK_CONTAINER(cont), 5);
+ gtk_notebook_append_page(GTK_NOTEBOOK(buddy_notebook), cont, gtk_label_new(b->name));
+ gtk_widget_show(cont);
vpaned = gtk_vpaned_new();
gtk_paned_set_gutter_size(GTK_PANED(vpaned), 15);
Index: src/conversation.c
===================================================================
RCS file: /cvsroot/gaim/gaim/src/conversation.c,v
retrieving revision 1.228
diff -u -r1.228 conversation.c
--- src/conversation.c 2001/06/07 03:12:45 1.228
+++ src/conversation.c 2001/06/09 14:40:56
@@ -394,55 +394,17 @@
int close_callback(GtkWidget *widget, struct conversation *c)
{
- if (c->is_chat && (widget == c->close) && !(display_options & OPT_DISP_ONE_CHAT_WINDOW)) {
- GtkWidget *tmp = c->window;
- debug_printf("chat clicked close button\n");
- c->window = NULL;
- gtk_widget_destroy(tmp);
- return FALSE;
- }
-
debug_printf("conversation close callback\n");
if (general_options & OPT_GEN_CHECK_SPELLING)
gtkspell_detach(GTK_TEXT(c->entry));
if (!c->is_chat) {
- if (c->gc && c->gc->prpl && c->gc->prpl->remove_convo)
- (*c->gc->prpl->remove_convo)(c->gc, c);
- if (display_options & OPT_DISP_ONE_WINDOW) {
- if (g_list_length(conversations) > 1) {
- gtk_notebook_remove_page(GTK_NOTEBOOK(convo_notebook),
- g_list_index(conversations, c));
- } else {
- if (c->window)
- gtk_widget_destroy(c->window);
- c->window = NULL;
- all_convos = NULL;
- convo_notebook = NULL;
- }
- } else {
- if (c->window)
- gtk_widget_destroy(c->window);
- c->window = NULL;
- }
+ gtk_notebook_remove_page(GTK_NOTEBOOK(buddy_notebook),
+ g_list_index(conversations, c) + 2);
} else {
- if (display_options & OPT_DISP_ONE_CHAT_WINDOW) {
- if (g_list_length(chats) > 1) {
- gtk_notebook_remove_page(GTK_NOTEBOOK(chat_notebook),
- g_list_index(chats, c));
- } else {
- if (c->window)
- gtk_widget_destroy(c->window);
- c->window = NULL;
- all_chats = NULL;
- chat_notebook = NULL;
- }
- } else {
- if (c->window)
- gtk_widget_destroy(c->window);
- c->window = NULL;
- }
+ gtk_notebook_remove_page(GTK_NOTEBOOK(buddy_notebook),
+ g_list_index(chats, c) + g_list_length(conversations) + 2);
}
if (c->fg_color_dialog)
@@ -691,64 +653,6 @@
gtk_signal_emit_stop_by_name(GTK_OBJECT(entry), "key_press_event");
}
}
- if ((!c->is_chat && (display_options & OPT_DISP_ONE_WINDOW)) ||
- ( c->is_chat && (display_options & OPT_DISP_ONE_CHAT_WINDOW))) {
- GtkWidget *notebook = (c->is_chat ? chat_notebook : convo_notebook);
- if (event->keyval == '[') {
- gtk_notebook_prev_page(GTK_NOTEBOOK(notebook));
- gtk_signal_emit_stop_by_name(GTK_OBJECT(entry), "key_press_event");
- } else if (event->keyval == ']') {
- gtk_notebook_next_page(GTK_NOTEBOOK(notebook));
- gtk_signal_emit_stop_by_name(GTK_OBJECT(entry), "key_press_event");
- } else if (event->keyval == GDK_Tab) {
- GList *ws = (c->is_chat ? chats : conversations);
- GList *cnv = g_list_nth(ws,
- gtk_notebook_get_current_page(
- GTK_NOTEBOOK(notebook)));
- struct conversation *d = NULL;
- while (cnv) {
- d = cnv->data;
- if (d->unseen)
- break;
- cnv = cnv->next;
- d = NULL;
- }
- if (d) {
- gtk_notebook_set_page(GTK_NOTEBOOK(notebook),
- g_list_index(ws, d));
- } else {
- cnv = ws;
- while (cnv) {
- d = cnv->data;
- if (d->unseen)
- break;
- cnv = cnv->next;
- d = NULL;
- }
- if (d) {
- gtk_notebook_set_page(
- GTK_NOTEBOOK(notebook),
- g_list_index(ws, d));
- } else {
- cnv = g_list_last(ws);
- if (c == cnv->data)
- gtk_notebook_set_page(
- GTK_NOTEBOOK(notebook), 0);
- else
- gtk_notebook_next_page(
- GTK_NOTEBOOK(notebook));
- }
- }
- gtk_signal_emit_stop_by_name(GTK_OBJECT(entry), "key_press_event");
- }
- }
- } else if (((!c->is_chat && (display_options & OPT_DISP_ONE_WINDOW)) ||
- ( c->is_chat && (display_options & OPT_DISP_ONE_CHAT_WINDOW))) &&
- (event->state & GDK_MOD1_MASK) && isdigit(event->keyval) &&
- (event->keyval > '0')) {
- GtkWidget *notebook = (c->is_chat ? chat_notebook : convo_notebook);
- gtk_notebook_set_page(GTK_NOTEBOOK(notebook), event->keyval - '1');
- gtk_signal_emit_stop_by_name(GTK_OBJECT(entry), "key_press_event");
}
return TRUE;
@@ -1502,15 +1406,16 @@
if (((flags & WFLAG_RECV) || (flags & WFLAG_SYSTEM)) &&
((!c->is_chat && (display_options & OPT_DISP_ONE_WINDOW) &&
- (gtk_notebook_get_current_page(GTK_NOTEBOOK(convo_notebook))
- != g_list_index(conversations, c))) ||
+ (gtk_notebook_get_current_page(GTK_NOTEBOOK(buddy_notebook))
+ != g_list_index(conversations, c) + 2)) ||
( c->is_chat && (display_options & OPT_DISP_ONE_CHAT_WINDOW) &&
- (gtk_notebook_get_current_page(GTK_NOTEBOOK(chat_notebook))
- != g_list_index(chats, c))))) {
- GtkWidget *notebook = (c->is_chat ? chat_notebook : convo_notebook);
+ (gtk_notebook_get_current_page(GTK_NOTEBOOK(buddy_notebook))
+ != g_list_index(chats, c) + g_list_length(conversations) + 2)))) {
GList *ws = (c->is_chat ? chats : conversations);
- GtkWidget *label = gtk_notebook_get_tab_label(GTK_NOTEBOOK(notebook),
- gtk_notebook_get_nth_page(GTK_NOTEBOOK(notebook), g_list_index(ws, c)));
+ int add = (c->is_chat ? 2 + g_list_length(conversations) : 2);
+ GtkWidget *label = gtk_notebook_get_tab_label(GTK_NOTEBOOK(buddy_notebook),
+ gtk_notebook_get_nth_page(GTK_NOTEBOOK(buddy_notebook),
+ g_list_index(ws, c) + add));
GtkStyle *style = gtk_style_new();
if (!GTK_WIDGET_REALIZED(label))
gtk_widget_realize(label);
@@ -1946,12 +1851,16 @@
}
}
-static void convo_switch(GtkNotebook *notebook, GtkWidget *page, gint page_num, gpointer data)
+void convo_switch(GtkNotebook *notebook, GtkWidget *page, gint page_num, gpointer data)
{
- GtkWidget *label = gtk_notebook_get_tab_label(GTK_NOTEBOOK(convo_notebook),
- gtk_notebook_get_nth_page(GTK_NOTEBOOK(convo_notebook), page_num));
+ GtkWidget *label = gtk_notebook_get_tab_label(GTK_NOTEBOOK(buddy_notebook),
+ gtk_notebook_get_nth_page(GTK_NOTEBOOK(buddy_notebook), page_num));
GtkStyle *style;
- struct conversation *c = g_list_nth_data(conversations, page_num);
+ struct conversation *c = (page_num >= 2 + g_list_length(conversations)) ?
+ g_list_nth_data(chats, page_num - 2 - g_list_length(conversations)) :
+ page_num >= 2 ? g_list_nth_data(conversations, page_num - 2) : NULL;
+ if (!c)
+ return;
if (c && c->window && c->entry)
gtk_window_set_focus(GTK_WINDOW(c->window), c->entry);
if (!GTK_WIDGET_REALIZED(label))
@@ -2004,66 +1913,13 @@
c->fgcol = fgcolor;
c->hasfg = 0;
- if (display_options & OPT_DISP_ONE_WINDOW) {
- if (!all_convos) {
- win = all_convos = c->window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
- gtk_window_set_wmclass(GTK_WINDOW(win), "conversation", "Gaim");
- gtk_window_set_policy(GTK_WINDOW(win), TRUE, TRUE, TRUE);
- gtk_container_border_width(GTK_CONTAINER(win), 0);
- gtk_widget_realize(win);
- aol_icon(win->window);
- gtk_window_set_title(GTK_WINDOW(win), _("Gaim - Conversations"));
- gtk_signal_connect(GTK_OBJECT(win), "delete_event",
- GTK_SIGNAL_FUNC(delete_all_convo), NULL);
-
- convo_notebook = gtk_notebook_new();
- if (display_options & OPT_DISP_CONV_SIDE_TAB) {
- if (display_options & OPT_DISP_CONV_BR_TAB) {
- gtk_notebook_set_tab_pos(GTK_NOTEBOOK(convo_notebook),
- GTK_POS_RIGHT);
- } else {
- gtk_notebook_set_tab_pos(GTK_NOTEBOOK(convo_notebook),
- GTK_POS_LEFT);
- }
- } else {
- if (display_options & OPT_DISP_CONV_BR_TAB) {
- gtk_notebook_set_tab_pos(GTK_NOTEBOOK(convo_notebook),
- GTK_POS_BOTTOM);
- } else {
- gtk_notebook_set_tab_pos(GTK_NOTEBOOK(convo_notebook),
- GTK_POS_TOP);
- }
- }
- gtk_notebook_set_scrollable(GTK_NOTEBOOK(convo_notebook), TRUE);
- gtk_notebook_popup_enable(GTK_NOTEBOOK(convo_notebook));
- gtk_container_add(GTK_CONTAINER(win), convo_notebook);
- gtk_signal_connect(GTK_OBJECT(convo_notebook), "switch-page",
- GTK_SIGNAL_FUNC(convo_switch), NULL);
- gtk_widget_show(convo_notebook);
- } else
- win = c->window = all_convos;
+ win = c->window = blist;
- cont = gtk_vbox_new(FALSE, 5);
- gtk_container_set_border_width(GTK_CONTAINER(cont), 5);
- gtk_notebook_append_page(GTK_NOTEBOOK(convo_notebook), cont, gtk_label_new(c->name));
- gtk_widget_show(cont);
- } else {
- cont = win = gtk_window_new(GTK_WINDOW_TOPLEVEL);
- c->window = win;
- gtk_object_set_user_data(GTK_OBJECT(win), c);
- gtk_window_set_wmclass(GTK_WINDOW(win), "conversation", "Gaim");
- gtk_window_set_policy(GTK_WINDOW(win), TRUE, TRUE, TRUE);
- gtk_container_border_width(GTK_CONTAINER(win), 10);
- gtk_widget_realize(win);
- aol_icon(win->window);
- if ((find_log_info(c->name)) || ((logging_options & OPT_LOG_ALL)))
- g_snprintf(buf, sizeof(buf), LOG_CONVERSATION_TITLE, c->name);
- else
- g_snprintf(buf, sizeof(buf), CONVERSATION_TITLE, c->name);
- gtk_window_set_title(GTK_WINDOW(win), buf);
- gtk_signal_connect(GTK_OBJECT(win), "delete_event",
- GTK_SIGNAL_FUNC(delete_event_convo), c);
- }
+ cont = gtk_vbox_new(FALSE, 5);
+ gtk_container_set_border_width(GTK_CONTAINER(cont), 5);
+ gtk_notebook_insert_page(GTK_NOTEBOOK(buddy_notebook), cont, gtk_label_new(c->name),
+ 1 + g_list_length(conversations));
+ gtk_widget_show(cont);
paned = gtk_vpaned_new();
gtk_paned_set_gutter_size(GTK_PANED(paned), 15);
@@ -2340,14 +2196,14 @@
void set_convo_tab_label(struct conversation *c, char *text)
{
- gtk_label_set_text(GTK_LABEL(gtk_notebook_get_tab_label(GTK_NOTEBOOK(convo_notebook),
- gtk_notebook_get_nth_page(GTK_NOTEBOOK(convo_notebook),
- g_list_index(conversations, c)))), text);
+ gtk_label_set_text(GTK_LABEL(gtk_notebook_get_tab_label(GTK_NOTEBOOK(buddy_notebook),
+ gtk_notebook_get_nth_page(GTK_NOTEBOOK(buddy_notebook),
+ g_list_index(conversations, c) + 2))), text);
}
void raise_convo_tab(struct conversation *c)
{
- gtk_notebook_set_page(GTK_NOTEBOOK(convo_notebook), g_list_index(conversations, c));
+ gtk_notebook_set_page(GTK_NOTEBOOK(buddy_notebook), g_list_index(conversations, c) + 2);
gdk_window_show(c->window->window);
}
Index: src/gaim.h
===================================================================
RCS file: /cvsroot/gaim/gaim/src/gaim.h,v
retrieving revision 1.230
diff -u -r1.230 gaim.h
--- src/gaim.h 2001/06/01 23:56:52 1.230
+++ src/gaim.h 2001/06/09 14:40:57
@@ -439,6 +439,7 @@
extern GList *chats;
extern GtkWidget *all_chats;
extern GtkWidget *chat_notebook;
+extern GtkWidget *buddy_notebook;
extern GtkWidget *joinchat;