pidgin/gtkpounce.c

Wed, 21 Sep 2011 06:45:26 +0000

author
Elliott Sales de Andrade <qulogic@pidgin.im>
date
Wed, 21 Sep 2011 06:45:26 +0000
changeset 32575
eb4fc932fae9
parent 31321
1fef3832cfa2
child 32424
be4a642b2d45
child 32624
f957ad287bcc
child 33782
1690e0b2c508
permissions
-rw-r--r--

Apply conversation theme when opening the GTK conversation. All the
parsing stuff was moved out of the theme code and into the conversation
code.

Someone (not me!) needs to check the code I commented out and see if
we really need that stuff (and then port it to WebKit/styling).

We also need to determine where to place Template.html and the rest
of our (not-yet-written) default theme.

5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1 /**
5864
86822afeeab0 [gaim-migrate @ 6295]
Christian Hammond <chipx86@chipx86.com>
parents: 5857
diff changeset
2 * @file gtkpounce.c GTK+ Buddy Pounce API
16254
eeb2bba4dc94 Rename the Doxygen group from gtkui to pidgin.
Richard Laager <rlaager@pidgin.im>
parents: 16123
diff changeset
3 * @ingroup pidgin
20147
66f05a854eee applied changes from 8a731bbd0197fbcc91a705c2d8f528154216defa
Richard Laager <rlaager@pidgin.im>
parents: 19859
diff changeset
4 */
66f05a854eee applied changes from 8a731bbd0197fbcc91a705c2d8f528154216defa
Richard Laager <rlaager@pidgin.im>
parents: 19859
diff changeset
5
66f05a854eee applied changes from 8a731bbd0197fbcc91a705c2d8f528154216defa
Richard Laager <rlaager@pidgin.im>
parents: 19859
diff changeset
6 /* pidgin
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
7 *
15931
716b5fac1895 Re-sed the copyright notices so they don't all talk about Purple.
Richard Laager <rlaager@pidgin.im>
parents: 15884
diff changeset
8 * Pidgin is the legal property of its developers, whose names are too numerous
8046
c581b20a47d6 [gaim-migrate @ 8730]
Sean Egan <seanegan@pidgin.im>
parents: 7994
diff changeset
9 * to list here. Please refer to the COPYRIGHT file distributed with this
c581b20a47d6 [gaim-migrate @ 8730]
Sean Egan <seanegan@pidgin.im>
parents: 7994
diff changeset
10 * source distribution.
7035
76bca80cd91d [gaim-migrate @ 7598]
Christian Hammond <chipx86@chipx86.com>
parents: 6982
diff changeset
11 *
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
12 * This program is free software; you can redistribute it and/or modify
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
13 * it under the terms of the GNU General Public License as published by
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
14 * the Free Software Foundation; either version 2 of the License, or
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
15 * (at your option) any later version.
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
16 *
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
17 * This program is distributed in the hope that it will be useful,
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
18 * but WITHOUT ANY WARRANTY; without even the implied warranty of
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
19 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
20 * GNU General Public License for more details.
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
21 *
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
22 * You should have received a copy of the GNU General Public License
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
23 * along with this program; if not, write to the Free Software
19859
71d37b57eff2 The FSF changed its address a while ago; our files were out of date.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 19786
diff changeset
24 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
25 *
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
26 */
9791
f5c5bda0b96b [gaim-migrate @ 10659]
Gary Kramlich <grim@pidgin.im>
parents: 9709
diff changeset
27 #include "internal.h"
15577
b8129373f65e More pidgin changes
Sean Egan <seanegan@pidgin.im>
parents: 15570
diff changeset
28 #include "pidgin.h"
5872
754c63f29b77 [gaim-migrate @ 6304]
Christian Hammond <chipx86@chipx86.com>
parents: 5866
diff changeset
29
8235
00045afab151 [gaim-migrate @ 8958]
Gary Kramlich <grim@pidgin.im>
parents: 8157
diff changeset
30 #include "account.h"
5872
754c63f29b77 [gaim-migrate @ 6304]
Christian Hammond <chipx86@chipx86.com>
parents: 5866
diff changeset
31 #include "conversation.h"
754c63f29b77 [gaim-migrate @ 6304]
Christian Hammond <chipx86@chipx86.com>
parents: 5866
diff changeset
32 #include "debug.h"
754c63f29b77 [gaim-migrate @ 6304]
Christian Hammond <chipx86@chipx86.com>
parents: 5866
diff changeset
33 #include "prpl.h"
9505
6120a3cb8af7 [gaim-migrate @ 10332]
Mark Doliner <markdoliner@pidgin.im>
parents: 9206
diff changeset
34 #include "request.h"
5872
754c63f29b77 [gaim-migrate @ 6304]
Christian Hammond <chipx86@chipx86.com>
parents: 5866
diff changeset
35 #include "server.h"
754c63f29b77 [gaim-migrate @ 6304]
Christian Hammond <chipx86@chipx86.com>
parents: 5866
diff changeset
36 #include "sound.h"
9709
2e73f176cc80 [gaim-migrate @ 10570]
Mark Doliner <markdoliner@pidgin.im>
parents: 9699
diff changeset
37 #include "util.h"
5872
754c63f29b77 [gaim-migrate @ 6304]
Christian Hammond <chipx86@chipx86.com>
parents: 5866
diff changeset
38
754c63f29b77 [gaim-migrate @ 6304]
Christian Hammond <chipx86@chipx86.com>
parents: 5866
diff changeset
39 #include "gtkblist.h"
9709
2e73f176cc80 [gaim-migrate @ 10570]
Mark Doliner <markdoliner@pidgin.im>
parents: 9699
diff changeset
40 #include "gtkdialogs.h"
17388
8be39f0de528 Allow formatted text in the pounce dialog. Also, use the same code to
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 16490
diff changeset
41 #include "gtkimhtml.h"
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
42 #include "gtkpounce.h"
26467
ca1524dbcbf0 A patch from Jorge VillaseƱor which makes all pounces share a single window.
Kevin Stange <kstange@pidgin.im>
parents: 25909
diff changeset
43 #include "gtknotify.h"
15883
969b74a3e27a According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@pidgin.im>
parents: 15882
diff changeset
44 #include "pidginstock.h"
5872
754c63f29b77 [gaim-migrate @ 6304]
Christian Hammond <chipx86@chipx86.com>
parents: 5866
diff changeset
45 #include "gtkutils.h"
754c63f29b77 [gaim-migrate @ 6304]
Christian Hammond <chipx86@chipx86.com>
parents: 5866
diff changeset
46
12136
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
47 /**
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
48 * These are used for the GtkTreeView when you're scrolling through
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
49 * all your saved pounces.
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
50 */
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
51 enum
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
52 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
53 /* Hidden column containing the PurplePounce */
12136
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
54 POUNCES_MANAGER_COLUMN_POUNCE,
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
55 POUNCES_MANAGER_COLUMN_ICON,
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
56 POUNCES_MANAGER_COLUMN_TARGET,
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
57 POUNCES_MANAGER_COLUMN_ACCOUNT,
12193
243b18a880ba [gaim-migrate @ 14495]
Richard Laager <rlaager@pidgin.im>
parents: 12192
diff changeset
58 POUNCES_MANAGER_COLUMN_RECURRING,
12136
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
59 POUNCES_MANAGER_NUM_COLUMNS
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
60 };
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
61
5857
52cff8a95261 [gaim-migrate @ 6288]
Christian Hammond <chipx86@chipx86.com>
parents: 5676
diff changeset
62 typedef struct
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
63 {
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
64 /* Pounce data */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
65 PurplePounce *pounce;
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
66 PurpleAccount *account;
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
67
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
68 /* The window */
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
69 GtkWidget *window;
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
70
12694
526fc1678184 [gaim-migrate @ 15037]
Lucio Maciel
parents: 12336
diff changeset
71 /* Pounce on Whom */
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
72 GtkWidget *account_menu;
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
73 GtkWidget *buddy_entry;
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
74
12694
526fc1678184 [gaim-migrate @ 15037]
Lucio Maciel
parents: 12336
diff changeset
75 /* Pounce options */
526fc1678184 [gaim-migrate @ 15037]
Lucio Maciel
parents: 12336
diff changeset
76 GtkWidget *on_away;
526fc1678184 [gaim-migrate @ 15037]
Lucio Maciel
parents: 12336
diff changeset
77
526fc1678184 [gaim-migrate @ 15037]
Lucio Maciel
parents: 12336
diff changeset
78 /* Pounce When Buddy... */
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
79 GtkWidget *signon;
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
80 GtkWidget *signoff;
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
81 GtkWidget *away;
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
82 GtkWidget *away_return;
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
83 GtkWidget *idle;
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
84 GtkWidget *idle_return;
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
85 GtkWidget *typing;
13844
835b8f7b3d1d [gaim-migrate @ 16295]
Mark Doliner <markdoliner@pidgin.im>
parents: 13775
diff changeset
86 GtkWidget *typed;
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
87 GtkWidget *stop_typing;
12694
526fc1678184 [gaim-migrate @ 15037]
Lucio Maciel
parents: 12336
diff changeset
88 GtkWidget *message_recv;
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
89
12694
526fc1678184 [gaim-migrate @ 15037]
Lucio Maciel
parents: 12336
diff changeset
90 /* Action */
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
91 GtkWidget *open_win;
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
92 GtkWidget *popup;
12934
d3ce70776eb5 [gaim-migrate @ 15287]
Richard Nelson <wabz@pidgin.im>
parents: 12694
diff changeset
93 GtkWidget *popup_entry;
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
94 GtkWidget *send_msg;
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
95 GtkWidget *send_msg_entry;
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
96 GtkWidget *exec_cmd;
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
97 GtkWidget *exec_cmd_entry;
5319
d3832c88d562 [gaim-migrate @ 5691]
Benjamin Zeiss
parents: 5228
diff changeset
98 GtkWidget *exec_cmd_browse;
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
99 GtkWidget *play_sound;
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
100 GtkWidget *play_sound_entry;
5319
d3832c88d562 [gaim-migrate @ 5691]
Benjamin Zeiss
parents: 5228
diff changeset
101 GtkWidget *play_sound_browse;
d3832c88d562 [gaim-migrate @ 5691]
Benjamin Zeiss
parents: 5228
diff changeset
102 GtkWidget *play_sound_test;
23260
56fda1590379 Make it more obvious that there is a default buddy pounce sound, and
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 22214
diff changeset
103 GtkWidget *play_sound_reset;
7035
76bca80cd91d [gaim-migrate @ 7598]
Christian Hammond <chipx86@chipx86.com>
parents: 6982
diff changeset
104
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
105 GtkWidget *save_pounce;
5857
52cff8a95261 [gaim-migrate @ 6288]
Christian Hammond <chipx86@chipx86.com>
parents: 5676
diff changeset
106
5876
c12b198bde14 [gaim-migrate @ 6308]
Christian Hammond <chipx86@chipx86.com>
parents: 5875
diff changeset
107 /* Buttons */
c12b198bde14 [gaim-migrate @ 6308]
Christian Hammond <chipx86@chipx86.com>
parents: 5875
diff changeset
108 GtkWidget *save_button;
c12b198bde14 [gaim-migrate @ 6308]
Christian Hammond <chipx86@chipx86.com>
parents: 5875
diff changeset
109
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15496
diff changeset
110 } PidginPounceDialog;
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
111
12136
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
112 typedef struct
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
113 {
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
114 GtkWidget *window;
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
115 GtkListStore *model;
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
116 GtkWidget *treeview;
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
117 GtkWidget *modify_button;
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
118 GtkWidget *delete_button;
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
119 } PouncesManager;
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
120
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
121 static PouncesManager *pounces_manager = NULL;
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
122
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
123 /**************************************************************************
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
124 * Callbacks
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
125 **************************************************************************/
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
126 static gint
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15496
diff changeset
127 delete_win_cb(GtkWidget *w, GdkEventAny *e, PidginPounceDialog *dialog)
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
128 {
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
129 gtk_widget_destroy(dialog->window);
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
130 g_free(dialog);
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
131
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
132 return TRUE;
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
133 }
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
134
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
135 static void
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15496
diff changeset
136 cancel_cb(GtkWidget *w, PidginPounceDialog *dialog)
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
137 {
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
138 delete_win_cb(NULL, NULL, dialog);
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
139 }
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
140
5319
d3832c88d562 [gaim-migrate @ 5691]
Benjamin Zeiss
parents: 5228
diff changeset
141 static void
9505
6120a3cb8af7 [gaim-migrate @ 10332]
Mark Doliner <markdoliner@pidgin.im>
parents: 9206
diff changeset
142 pounce_update_entry_fields(void *user_data, const char *filename)
5319
d3832c88d562 [gaim-migrate @ 5691]
Benjamin Zeiss
parents: 5228
diff changeset
143 {
9505
6120a3cb8af7 [gaim-migrate @ 10332]
Mark Doliner <markdoliner@pidgin.im>
parents: 9206
diff changeset
144 GtkWidget *entry = (GtkWidget *)user_data;
5857
52cff8a95261 [gaim-migrate @ 6288]
Christian Hammond <chipx86@chipx86.com>
parents: 5676
diff changeset
145
9505
6120a3cb8af7 [gaim-migrate @ 10332]
Mark Doliner <markdoliner@pidgin.im>
parents: 9206
diff changeset
146 gtk_entry_set_text(GTK_ENTRY(entry), filename);
5319
d3832c88d562 [gaim-migrate @ 5691]
Benjamin Zeiss
parents: 5228
diff changeset
147 }
d3832c88d562 [gaim-migrate @ 5691]
Benjamin Zeiss
parents: 5228
diff changeset
148
d3832c88d562 [gaim-migrate @ 5691]
Benjamin Zeiss
parents: 5228
diff changeset
149 static void
9505
6120a3cb8af7 [gaim-migrate @ 10332]
Mark Doliner <markdoliner@pidgin.im>
parents: 9206
diff changeset
150 filesel(GtkWidget *widget, gpointer data)
5319
d3832c88d562 [gaim-migrate @ 5691]
Benjamin Zeiss
parents: 5228
diff changeset
151 {
d3832c88d562 [gaim-migrate @ 5691]
Benjamin Zeiss
parents: 5228
diff changeset
152 GtkWidget *entry;
9505
6120a3cb8af7 [gaim-migrate @ 10332]
Mark Doliner <markdoliner@pidgin.im>
parents: 9206
diff changeset
153 const gchar *name;
7035
76bca80cd91d [gaim-migrate @ 7598]
Christian Hammond <chipx86@chipx86.com>
parents: 6982
diff changeset
154
76bca80cd91d [gaim-migrate @ 7598]
Christian Hammond <chipx86@chipx86.com>
parents: 6982
diff changeset
155 entry = (GtkWidget *)data;
9505
6120a3cb8af7 [gaim-migrate @ 10332]
Mark Doliner <markdoliner@pidgin.im>
parents: 9206
diff changeset
156 name = gtk_entry_get_text(GTK_ENTRY(entry));
5857
52cff8a95261 [gaim-migrate @ 6288]
Christian Hammond <chipx86@chipx86.com>
parents: 5676
diff changeset
157
21175
c6d76b49c206 disapproval of revision '8ba833993a115415727bb1b70362e0bd1603c169'
Richard Laager <rlaager@pidgin.im>
parents: 21174
diff changeset
158 purple_request_file(entry, _("Select a file"), name, FALSE,
16490
68c22924d66b Added account, who, and conversation parameters to the request API calls, and updated all code to match. I can't compile the Perl module, so I'd appreciate it if someone who knows it would verify that this doesn't break Perl.
Evan Schoenberg <evands@pidgin.im>
parents: 16254
diff changeset
159 G_CALLBACK(pounce_update_entry_fields), NULL,
68c22924d66b Added account, who, and conversation parameters to the request API calls, and updated all code to match. I can't compile the Perl module, so I'd appreciate it if someone who knows it would verify that this doesn't break Perl.
Evan Schoenberg <evands@pidgin.im>
parents: 16254
diff changeset
160 NULL, NULL, NULL,
21175
c6d76b49c206 disapproval of revision '8ba833993a115415727bb1b70362e0bd1603c169'
Richard Laager <rlaager@pidgin.im>
parents: 21174
diff changeset
161 entry);
15319
f8f83efdc3a6 [gaim-migrate @ 18047]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 15315
diff changeset
162 g_signal_connect_swapped(G_OBJECT(entry), "destroy",
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
163 G_CALLBACK(purple_request_close_with_handle), entry);
5319
d3832c88d562 [gaim-migrate @ 5691]
Benjamin Zeiss
parents: 5228
diff changeset
164 }
d3832c88d562 [gaim-migrate @ 5691]
Benjamin Zeiss
parents: 5228
diff changeset
165
d3832c88d562 [gaim-migrate @ 5691]
Benjamin Zeiss
parents: 5228
diff changeset
166 static void
5857
52cff8a95261 [gaim-migrate @ 6288]
Christian Hammond <chipx86@chipx86.com>
parents: 5676
diff changeset
167 pounce_test_sound(GtkWidget *w, GtkWidget *entry)
5319
d3832c88d562 [gaim-migrate @ 5691]
Benjamin Zeiss
parents: 5228
diff changeset
168 {
d3832c88d562 [gaim-migrate @ 5691]
Benjamin Zeiss
parents: 5228
diff changeset
169 const char *filename;
23260
56fda1590379 Make it more obvious that there is a default buddy pounce sound, and
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 22214
diff changeset
170 gboolean temp_mute;
56fda1590379 Make it more obvious that there is a default buddy pounce sound, and
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 22214
diff changeset
171
56fda1590379 Make it more obvious that there is a default buddy pounce sound, and
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 22214
diff changeset
172 temp_mute = purple_prefs_get_bool(PIDGIN_PREFS_ROOT "/sound/mute");
56fda1590379 Make it more obvious that there is a default buddy pounce sound, and
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 22214
diff changeset
173
56fda1590379 Make it more obvious that there is a default buddy pounce sound, and
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 22214
diff changeset
174 if (temp_mute) purple_prefs_set_bool(PIDGIN_PREFS_ROOT "/sound/mute", FALSE);
5319
d3832c88d562 [gaim-migrate @ 5691]
Benjamin Zeiss
parents: 5228
diff changeset
175
d3832c88d562 [gaim-migrate @ 5691]
Benjamin Zeiss
parents: 5228
diff changeset
176 filename = gtk_entry_get_text(GTK_ENTRY(entry));
5857
52cff8a95261 [gaim-migrate @ 6288]
Christian Hammond <chipx86@chipx86.com>
parents: 5676
diff changeset
177
23260
56fda1590379 Make it more obvious that there is a default buddy pounce sound, and
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 22214
diff changeset
178 if (filename != NULL && *filename != '\0' && strcmp(filename, _("(default)")))
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
179 purple_sound_play_file(filename, NULL);
5319
d3832c88d562 [gaim-migrate @ 5691]
Benjamin Zeiss
parents: 5228
diff changeset
180 else
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
181 purple_sound_play_event(PURPLE_SOUND_POUNCE_DEFAULT, NULL);
23260
56fda1590379 Make it more obvious that there is a default buddy pounce sound, and
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 22214
diff changeset
182
56fda1590379 Make it more obvious that there is a default buddy pounce sound, and
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 22214
diff changeset
183 if (temp_mute) purple_prefs_set_bool(PIDGIN_PREFS_ROOT "/sound/mute", TRUE);
56fda1590379 Make it more obvious that there is a default buddy pounce sound, and
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 22214
diff changeset
184 }
56fda1590379 Make it more obvious that there is a default buddy pounce sound, and
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 22214
diff changeset
185
56fda1590379 Make it more obvious that there is a default buddy pounce sound, and
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 22214
diff changeset
186 static void
56fda1590379 Make it more obvious that there is a default buddy pounce sound, and
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 22214
diff changeset
187 pounce_reset_sound(GtkWidget *w, GtkWidget *entry)
56fda1590379 Make it more obvious that there is a default buddy pounce sound, and
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 22214
diff changeset
188 {
56fda1590379 Make it more obvious that there is a default buddy pounce sound, and
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 22214
diff changeset
189 gtk_entry_set_text(GTK_ENTRY(entry), _("(default)"));
5319
d3832c88d562 [gaim-migrate @ 5691]
Benjamin Zeiss
parents: 5228
diff changeset
190 }
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
191
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
192 static void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
193 add_pounce_to_treeview(GtkListStore *model, PurplePounce *pounce)
12136
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
194 {
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
195 GtkTreeIter iter;
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
196 PurpleAccount *account;
12193
243b18a880ba [gaim-migrate @ 14495]
Richard Laager <rlaager@pidgin.im>
parents: 12192
diff changeset
197 gboolean recurring;
12136
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
198 const char *pouncer;
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
199 const char *pouncee;
13091
b5ed878998dd [gaim-migrate @ 15452]
Mark Doliner <markdoliner@pidgin.im>
parents: 13033
diff changeset
200 GdkPixbuf *pixbuf;
12136
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
201
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
202 account = purple_pounce_get_pouncer(pounce);
12136
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
203
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15496
diff changeset
204 pixbuf = pidgin_create_prpl_icon(account, PIDGIN_PRPL_ICON_MEDIUM);
12136
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
205
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
206 pouncer = purple_account_get_username(account);
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
207 pouncee = purple_pounce_get_pouncee(pounce);
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
208 recurring = purple_pounce_get_save(pounce);
12136
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
209
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
210 gtk_list_store_append(model, &iter);
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
211 gtk_list_store_set(model, &iter,
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
212 POUNCES_MANAGER_COLUMN_POUNCE, pounce,
13091
b5ed878998dd [gaim-migrate @ 15452]
Mark Doliner <markdoliner@pidgin.im>
parents: 13033
diff changeset
213 POUNCES_MANAGER_COLUMN_ICON, pixbuf,
12136
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
214 POUNCES_MANAGER_COLUMN_TARGET, pouncee,
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
215 POUNCES_MANAGER_COLUMN_ACCOUNT, pouncer,
12193
243b18a880ba [gaim-migrate @ 14495]
Richard Laager <rlaager@pidgin.im>
parents: 12192
diff changeset
216 POUNCES_MANAGER_COLUMN_RECURRING, recurring,
12136
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
217 -1);
13091
b5ed878998dd [gaim-migrate @ 15452]
Mark Doliner <markdoliner@pidgin.im>
parents: 13033
diff changeset
218
b5ed878998dd [gaim-migrate @ 15452]
Mark Doliner <markdoliner@pidgin.im>
parents: 13033
diff changeset
219 if (pixbuf != NULL)
b5ed878998dd [gaim-migrate @ 15452]
Mark Doliner <markdoliner@pidgin.im>
parents: 13033
diff changeset
220 g_object_unref(pixbuf);
12136
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
221 }
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
222
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
223 static void
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
224 populate_pounces_list(PouncesManager *dialog)
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
225 {
18190
bcf28ef7e8ff Re-fix the DBus list handling code by killing const GList* / const GSList*
Richard Laager <rlaager@pidgin.im>
parents: 18186
diff changeset
226 GList *pounces;
12136
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
227
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
228 gtk_list_store_clear(dialog->model);
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
229
18209
5f63822878eb Fix #1574. (Pidgin and Finch show each other's pounces, interact in
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 18193
diff changeset
230 for (pounces = purple_pounces_get_all_for_ui(PIDGIN_UI); pounces != NULL;
5f63822878eb Fix #1574. (Pidgin and Finch show each other's pounces, interact in
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 18193
diff changeset
231 pounces = g_list_delete_link(pounces, pounces))
12136
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
232 {
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
233 add_pounce_to_treeview(dialog->model, pounces->data);
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
234 }
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
235 }
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
236
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
237 static void
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
238 update_pounces(void)
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
239 {
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
240 /* Rebuild the pounces list if the pounces manager is open */
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
241 if (pounces_manager != NULL)
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
242 {
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
243 populate_pounces_list(pounces_manager);
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
244 }
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
245 }
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
246
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
247 static void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
248 signed_on_off_cb(PurpleConnection *gc, gpointer user_data)
12136
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
249 {
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
250 update_pounces();
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
251 }
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
252
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
253 static void
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15496
diff changeset
254 save_pounce_cb(GtkWidget *w, PidginPounceDialog *dialog)
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
255 {
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
256 const char *name;
17388
8be39f0de528 Allow formatted text in the pounce dialog. Also, use the same code to
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 16490
diff changeset
257 const char *command, *sound, *reason;
8be39f0de528 Allow formatted text in the pounce dialog. Also, use the same code to
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 16490
diff changeset
258 char *message;
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
259 PurplePounceEvent events = PURPLE_POUNCE_NONE;
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
260 PurplePounceOption options = PURPLE_POUNCE_OPTION_NONE;
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
261
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
262 name = gtk_entry_get_text(GTK_ENTRY(dialog->buddy_entry));
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
263
9206
57a4db675f8d [gaim-migrate @ 10001]
Christian Hammond <chipx86@chipx86.com>
parents: 9205
diff changeset
264 if (*name == '\0')
57a4db675f8d [gaim-migrate @ 10001]
Christian Hammond <chipx86@chipx86.com>
parents: 9205
diff changeset
265 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
266 purple_notify_error(NULL, NULL,
5436
a0e0bacaa196 [gaim-migrate @ 5818]
Christian Hammond <chipx86@chipx86.com>
parents: 5319
diff changeset
267 _("Please enter a buddy to pounce."), NULL);
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
268 return;
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
269 }
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
270
12694
526fc1678184 [gaim-migrate @ 15037]
Lucio Maciel
parents: 12336
diff changeset
271 /* Options */
526fc1678184 [gaim-migrate @ 15037]
Lucio Maciel
parents: 12336
diff changeset
272 if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(dialog->on_away)))
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
273 options |= PURPLE_POUNCE_OPTION_AWAY;
12694
526fc1678184 [gaim-migrate @ 15037]
Lucio Maciel
parents: 12336
diff changeset
274
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
275 /* Events */
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
276 if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(dialog->signon)))
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
277 events |= PURPLE_POUNCE_SIGNON;
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
278
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
279 if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(dialog->signoff)))
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
280 events |= PURPLE_POUNCE_SIGNOFF;
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
281
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
282 if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(dialog->away)))
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
283 events |= PURPLE_POUNCE_AWAY;
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
284
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
285 if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(dialog->away_return)))
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
286 events |= PURPLE_POUNCE_AWAY_RETURN;
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
287
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
288 if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(dialog->idle)))
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
289 events |= PURPLE_POUNCE_IDLE;
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
290
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
291 if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(dialog->idle_return)))
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
292 events |= PURPLE_POUNCE_IDLE_RETURN;
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
293
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
294 if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(dialog->typing)))
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
295 events |= PURPLE_POUNCE_TYPING;
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
296
13844
835b8f7b3d1d [gaim-migrate @ 16295]
Mark Doliner <markdoliner@pidgin.im>
parents: 13775
diff changeset
297 if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(dialog->typed)))
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
298 events |= PURPLE_POUNCE_TYPED;
13844
835b8f7b3d1d [gaim-migrate @ 16295]
Mark Doliner <markdoliner@pidgin.im>
parents: 13775
diff changeset
299
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
300 if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(dialog->stop_typing)))
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
301 events |= PURPLE_POUNCE_TYPING_STOPPED;
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
302
12694
526fc1678184 [gaim-migrate @ 15037]
Lucio Maciel
parents: 12336
diff changeset
303 if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(dialog->message_recv)))
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
304 events |= PURPLE_POUNCE_MESSAGE_RECEIVED;
12694
526fc1678184 [gaim-migrate @ 15037]
Lucio Maciel
parents: 12336
diff changeset
305
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
306 /* Data fields */
17388
8be39f0de528 Allow formatted text in the pounce dialog. Also, use the same code to
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 16490
diff changeset
307 message = gtk_imhtml_get_markup(GTK_IMHTML(dialog->send_msg_entry));
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
308 command = gtk_entry_get_text(GTK_ENTRY(dialog->exec_cmd_entry));
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
309 sound = gtk_entry_get_text(GTK_ENTRY(dialog->play_sound_entry));
12934
d3ce70776eb5 [gaim-migrate @ 15287]
Richard Nelson <wabz@pidgin.im>
parents: 12694
diff changeset
310 reason = gtk_entry_get_text(GTK_ENTRY(dialog->popup_entry));
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
311
12934
d3ce70776eb5 [gaim-migrate @ 15287]
Richard Nelson <wabz@pidgin.im>
parents: 12694
diff changeset
312 if (*reason == '\0') reason = NULL;
17388
8be39f0de528 Allow formatted text in the pounce dialog. Also, use the same code to
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 16490
diff changeset
313 if (*message == '\0') {
8be39f0de528 Allow formatted text in the pounce dialog. Also, use the same code to
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 16490
diff changeset
314 g_free(message);
8be39f0de528 Allow formatted text in the pounce dialog. Also, use the same code to
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 16490
diff changeset
315 message = NULL;
8be39f0de528 Allow formatted text in the pounce dialog. Also, use the same code to
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 16490
diff changeset
316 }
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
317 if (*command == '\0') command = NULL;
23260
56fda1590379 Make it more obvious that there is a default buddy pounce sound, and
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 22214
diff changeset
318 if (*sound == '\0' || !strcmp(sound, _("(default)"))) sound = NULL;
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
319
20168
5d2fb40e4cdf If a pounce has been deleted or triggered while we're editing it, make a new one when saving instead of crashing. Fixes #3326
Daniel Atallah <datallah@pidgin.im>
parents: 20147
diff changeset
320 /* If the pounce has already been triggered, let's pretend it is a new one */
5d2fb40e4cdf If a pounce has been deleted or triggered while we're editing it, make a new one when saving instead of crashing. Fixes #3326
Daniel Atallah <datallah@pidgin.im>
parents: 20147
diff changeset
321 if (dialog->pounce != NULL
5d2fb40e4cdf If a pounce has been deleted or triggered while we're editing it, make a new one when saving instead of crashing. Fixes #3326
Daniel Atallah <datallah@pidgin.im>
parents: 20147
diff changeset
322 && g_list_find(purple_pounces_get_all(), dialog->pounce) == NULL) {
5d2fb40e4cdf If a pounce has been deleted or triggered while we're editing it, make a new one when saving instead of crashing. Fixes #3326
Daniel Atallah <datallah@pidgin.im>
parents: 20147
diff changeset
323 purple_debug_info("gtkpounce", "Saving pounce that no longer exists; creating new pounce.\n");
5d2fb40e4cdf If a pounce has been deleted or triggered while we're editing it, make a new one when saving instead of crashing. Fixes #3326
Daniel Atallah <datallah@pidgin.im>
parents: 20147
diff changeset
324 dialog->pounce = NULL;
5d2fb40e4cdf If a pounce has been deleted or triggered while we're editing it, make a new one when saving instead of crashing. Fixes #3326
Daniel Atallah <datallah@pidgin.im>
parents: 20147
diff changeset
325 }
5d2fb40e4cdf If a pounce has been deleted or triggered while we're editing it, make a new one when saving instead of crashing. Fixes #3326
Daniel Atallah <datallah@pidgin.im>
parents: 20147
diff changeset
326
9205
8c4dbbe6386f [gaim-migrate @ 10000]
Christian Hammond <chipx86@chipx86.com>
parents: 9191
diff changeset
327 if (dialog->pounce == NULL)
8c4dbbe6386f [gaim-migrate @ 10000]
Christian Hammond <chipx86@chipx86.com>
parents: 9191
diff changeset
328 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
329 dialog->pounce = purple_pounce_new(PIDGIN_UI, dialog->account,
12694
526fc1678184 [gaim-migrate @ 15037]
Lucio Maciel
parents: 12336
diff changeset
330 name, events, options);
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
331 }
5864
86822afeeab0 [gaim-migrate @ 6295]
Christian Hammond <chipx86@chipx86.com>
parents: 5857
diff changeset
332 else {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
333 purple_pounce_set_events(dialog->pounce, events);
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
334 purple_pounce_set_options(dialog->pounce, options);
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
335 purple_pounce_set_pouncer(dialog->pounce, dialog->account);
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
336 purple_pounce_set_pouncee(dialog->pounce, name);
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
337 }
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
338
9206
57a4db675f8d [gaim-migrate @ 10001]
Christian Hammond <chipx86@chipx86.com>
parents: 9205
diff changeset
339 /* Actions */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
340 purple_pounce_action_set_enabled(dialog->pounce, "open-window",
5864
86822afeeab0 [gaim-migrate @ 6295]
Christian Hammond <chipx86@chipx86.com>
parents: 5857
diff changeset
341 gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(dialog->open_win)));
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
342 purple_pounce_action_set_enabled(dialog->pounce, "popup-notify",
5864
86822afeeab0 [gaim-migrate @ 6295]
Christian Hammond <chipx86@chipx86.com>
parents: 5857
diff changeset
343 gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(dialog->popup)));
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
344 purple_pounce_action_set_enabled(dialog->pounce, "send-message",
5864
86822afeeab0 [gaim-migrate @ 6295]
Christian Hammond <chipx86@chipx86.com>
parents: 5857
diff changeset
345 gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(dialog->send_msg)));
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
346 purple_pounce_action_set_enabled(dialog->pounce, "execute-command",
5864
86822afeeab0 [gaim-migrate @ 6295]
Christian Hammond <chipx86@chipx86.com>
parents: 5857
diff changeset
347 gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(dialog->exec_cmd)));
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
348 purple_pounce_action_set_enabled(dialog->pounce, "play-sound",
5864
86822afeeab0 [gaim-migrate @ 6295]
Christian Hammond <chipx86@chipx86.com>
parents: 5857
diff changeset
349 gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(dialog->play_sound)));
86822afeeab0 [gaim-migrate @ 6295]
Christian Hammond <chipx86@chipx86.com>
parents: 5857
diff changeset
350
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
351 purple_pounce_action_set_attribute(dialog->pounce, "send-message",
5864
86822afeeab0 [gaim-migrate @ 6295]
Christian Hammond <chipx86@chipx86.com>
parents: 5857
diff changeset
352 "message", message);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
353 purple_pounce_action_set_attribute(dialog->pounce, "execute-command",
5864
86822afeeab0 [gaim-migrate @ 6295]
Christian Hammond <chipx86@chipx86.com>
parents: 5857
diff changeset
354 "command", command);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
355 purple_pounce_action_set_attribute(dialog->pounce, "play-sound",
5864
86822afeeab0 [gaim-migrate @ 6295]
Christian Hammond <chipx86@chipx86.com>
parents: 5857
diff changeset
356 "filename", sound);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
357 purple_pounce_action_set_attribute(dialog->pounce, "popup-notify",
12934
d3ce70776eb5 [gaim-migrate @ 15287]
Richard Nelson <wabz@pidgin.im>
parents: 12694
diff changeset
358 "reason", reason);
5864
86822afeeab0 [gaim-migrate @ 6295]
Christian Hammond <chipx86@chipx86.com>
parents: 5857
diff changeset
359
9206
57a4db675f8d [gaim-migrate @ 10001]
Christian Hammond <chipx86@chipx86.com>
parents: 9205
diff changeset
360 /* Set the defaults for next time. */
16123
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
361 purple_prefs_set_bool(PIDGIN_PREFS_ROOT "/pounces/default_actions/open-window",
9206
57a4db675f8d [gaim-migrate @ 10001]
Christian Hammond <chipx86@chipx86.com>
parents: 9205
diff changeset
362 gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(dialog->open_win)));
16123
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
363 purple_prefs_set_bool(PIDGIN_PREFS_ROOT "/pounces/default_actions/popup-notify",
9206
57a4db675f8d [gaim-migrate @ 10001]
Christian Hammond <chipx86@chipx86.com>
parents: 9205
diff changeset
364 gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(dialog->popup)));
16123
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
365 purple_prefs_set_bool(PIDGIN_PREFS_ROOT "/pounces/default_actions/send-message",
9206
57a4db675f8d [gaim-migrate @ 10001]
Christian Hammond <chipx86@chipx86.com>
parents: 9205
diff changeset
366 gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(dialog->send_msg)));
16123
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
367 purple_prefs_set_bool(PIDGIN_PREFS_ROOT "/pounces/default_actions/execute-command",
9206
57a4db675f8d [gaim-migrate @ 10001]
Christian Hammond <chipx86@chipx86.com>
parents: 9205
diff changeset
368 gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(dialog->exec_cmd)));
16123
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
369 purple_prefs_set_bool(PIDGIN_PREFS_ROOT "/pounces/default_actions/play-sound",
9206
57a4db675f8d [gaim-migrate @ 10001]
Christian Hammond <chipx86@chipx86.com>
parents: 9205
diff changeset
370 gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(dialog->play_sound)));
57a4db675f8d [gaim-migrate @ 10001]
Christian Hammond <chipx86@chipx86.com>
parents: 9205
diff changeset
371
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
372 purple_pounce_set_save(dialog->pounce,
5864
86822afeeab0 [gaim-migrate @ 6295]
Christian Hammond <chipx86@chipx86.com>
parents: 5857
diff changeset
373 gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(dialog->save_pounce)));
86822afeeab0 [gaim-migrate @ 6295]
Christian Hammond <chipx86@chipx86.com>
parents: 5857
diff changeset
374
12136
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
375 update_pounces();
17388
8be39f0de528 Allow formatted text in the pounce dialog. Also, use the same code to
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 16490
diff changeset
376 g_free(message);
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
377
12136
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
378 delete_win_cb(NULL, NULL, dialog);
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
379 }
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
380
5054
803b9e19f4ea [gaim-migrate @ 5404]
Nathan Walp <nwalp@pidgin.im>
parents: 5052
diff changeset
381 static void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
382 pounce_choose_cb(GtkWidget *item, PurpleAccount *account,
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15496
diff changeset
383 PidginPounceDialog *dialog)
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
384 {
5877
37695b88b248 [gaim-migrate @ 6309]
Christian Hammond <chipx86@chipx86.com>
parents: 5876
diff changeset
385 dialog->account = account;
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
386 }
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
387
5876
c12b198bde14 [gaim-migrate @ 6308]
Christian Hammond <chipx86@chipx86.com>
parents: 5875
diff changeset
388 static void
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15496
diff changeset
389 buddy_changed_cb(GtkEntry *entry, PidginPounceDialog *dialog)
5876
c12b198bde14 [gaim-migrate @ 6308]
Christian Hammond <chipx86@chipx86.com>
parents: 5875
diff changeset
390 {
c12b198bde14 [gaim-migrate @ 6308]
Christian Hammond <chipx86@chipx86.com>
parents: 5875
diff changeset
391 if (dialog->save_button == NULL)
c12b198bde14 [gaim-migrate @ 6308]
Christian Hammond <chipx86@chipx86.com>
parents: 5875
diff changeset
392 return;
c12b198bde14 [gaim-migrate @ 6308]
Christian Hammond <chipx86@chipx86.com>
parents: 5875
diff changeset
393
c12b198bde14 [gaim-migrate @ 6308]
Christian Hammond <chipx86@chipx86.com>
parents: 5875
diff changeset
394 gtk_widget_set_sensitive(dialog->save_button,
9205
8c4dbbe6386f [gaim-migrate @ 10000]
Christian Hammond <chipx86@chipx86.com>
parents: 9191
diff changeset
395 *gtk_entry_get_text(entry) != '\0');
5876
c12b198bde14 [gaim-migrate @ 6308]
Christian Hammond <chipx86@chipx86.com>
parents: 5875
diff changeset
396 }
c12b198bde14 [gaim-migrate @ 6308]
Christian Hammond <chipx86@chipx86.com>
parents: 5875
diff changeset
397
8803
79bc4ecbcac7 [gaim-migrate @ 9565]
Christian Hammond <chipx86@chipx86.com>
parents: 8259
diff changeset
398 static void
12694
526fc1678184 [gaim-migrate @ 15037]
Lucio Maciel
parents: 12336
diff changeset
399 message_recv_toggle(GtkButton *message_recv, GtkWidget *send_msg)
526fc1678184 [gaim-migrate @ 15037]
Lucio Maciel
parents: 12336
diff changeset
400 {
526fc1678184 [gaim-migrate @ 15037]
Lucio Maciel
parents: 12336
diff changeset
401 gboolean active = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(message_recv));
526fc1678184 [gaim-migrate @ 15037]
Lucio Maciel
parents: 12336
diff changeset
402
526fc1678184 [gaim-migrate @ 15037]
Lucio Maciel
parents: 12336
diff changeset
403 gtk_widget_set_sensitive(send_msg, !active);
526fc1678184 [gaim-migrate @ 15037]
Lucio Maciel
parents: 12336
diff changeset
404 if (active)
526fc1678184 [gaim-migrate @ 15037]
Lucio Maciel
parents: 12336
diff changeset
405 gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(send_msg), FALSE);
526fc1678184 [gaim-migrate @ 15037]
Lucio Maciel
parents: 12336
diff changeset
406 }
526fc1678184 [gaim-migrate @ 15037]
Lucio Maciel
parents: 12336
diff changeset
407
526fc1678184 [gaim-migrate @ 15037]
Lucio Maciel
parents: 12336
diff changeset
408 static void
8803
79bc4ecbcac7 [gaim-migrate @ 9565]
Christian Hammond <chipx86@chipx86.com>
parents: 8259
diff changeset
409 pounce_dnd_recv(GtkWidget *widget, GdkDragContext *dc, gint x, gint y,
79bc4ecbcac7 [gaim-migrate @ 9565]
Christian Hammond <chipx86@chipx86.com>
parents: 8259
diff changeset
410 GtkSelectionData *sd, guint info, guint t, gpointer data)
79bc4ecbcac7 [gaim-migrate @ 9565]
Christian Hammond <chipx86@chipx86.com>
parents: 8259
diff changeset
411 {
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15496
diff changeset
412 PidginPounceDialog *dialog;
8803
79bc4ecbcac7 [gaim-migrate @ 9565]
Christian Hammond <chipx86@chipx86.com>
parents: 8259
diff changeset
413
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
414 if (sd->target == gdk_atom_intern("PURPLE_BLIST_NODE", FALSE))
8803
79bc4ecbcac7 [gaim-migrate @ 9565]
Christian Hammond <chipx86@chipx86.com>
parents: 8259
diff changeset
415 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
416 PurpleBlistNode *node = NULL;
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
417 PurpleBuddy *buddy;
8803
79bc4ecbcac7 [gaim-migrate @ 9565]
Christian Hammond <chipx86@chipx86.com>
parents: 8259
diff changeset
418
79bc4ecbcac7 [gaim-migrate @ 9565]
Christian Hammond <chipx86@chipx86.com>
parents: 8259
diff changeset
419 memcpy(&node, sd->data, sizeof(node));
79bc4ecbcac7 [gaim-migrate @ 9565]
Christian Hammond <chipx86@chipx86.com>
parents: 8259
diff changeset
420
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
421 if (PURPLE_BLIST_NODE_IS_CONTACT(node))
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
422 buddy = purple_contact_get_priority_buddy((PurpleContact *)node);
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
423 else if (PURPLE_BLIST_NODE_IS_BUDDY(node))
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
424 buddy = (PurpleBuddy *)node;
8803
79bc4ecbcac7 [gaim-migrate @ 9565]
Christian Hammond <chipx86@chipx86.com>
parents: 8259
diff changeset
425 else
79bc4ecbcac7 [gaim-migrate @ 9565]
Christian Hammond <chipx86@chipx86.com>
parents: 8259
diff changeset
426 return;
79bc4ecbcac7 [gaim-migrate @ 9565]
Christian Hammond <chipx86@chipx86.com>
parents: 8259
diff changeset
427
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15496
diff changeset
428 dialog = (PidginPounceDialog *)data;
8803
79bc4ecbcac7 [gaim-migrate @ 9565]
Christian Hammond <chipx86@chipx86.com>
parents: 8259
diff changeset
429
79bc4ecbcac7 [gaim-migrate @ 9565]
Christian Hammond <chipx86@chipx86.com>
parents: 8259
diff changeset
430 gtk_entry_set_text(GTK_ENTRY(dialog->buddy_entry), buddy->name);
9910
7b4465b92411 [gaim-migrate @ 10802]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 9791
diff changeset
431 dialog->account = buddy->account;
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15496
diff changeset
432 pidgin_account_option_menu_set_selected(dialog->account_menu, buddy->account);
8803
79bc4ecbcac7 [gaim-migrate @ 9565]
Christian Hammond <chipx86@chipx86.com>
parents: 8259
diff changeset
433
79bc4ecbcac7 [gaim-migrate @ 9565]
Christian Hammond <chipx86@chipx86.com>
parents: 8259
diff changeset
434 gtk_drag_finish(dc, TRUE, (dc->action == GDK_ACTION_MOVE), t);
79bc4ecbcac7 [gaim-migrate @ 9565]
Christian Hammond <chipx86@chipx86.com>
parents: 8259
diff changeset
435 }
79bc4ecbcac7 [gaim-migrate @ 9565]
Christian Hammond <chipx86@chipx86.com>
parents: 8259
diff changeset
436 else if (sd->target == gdk_atom_intern("application/x-im-contact", FALSE))
79bc4ecbcac7 [gaim-migrate @ 9565]
Christian Hammond <chipx86@chipx86.com>
parents: 8259
diff changeset
437 {
79bc4ecbcac7 [gaim-migrate @ 9565]
Christian Hammond <chipx86@chipx86.com>
parents: 8259
diff changeset
438 char *protocol = NULL;
79bc4ecbcac7 [gaim-migrate @ 9565]
Christian Hammond <chipx86@chipx86.com>
parents: 8259
diff changeset
439 char *username = NULL;
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
440 PurpleAccount *account;
8803
79bc4ecbcac7 [gaim-migrate @ 9565]
Christian Hammond <chipx86@chipx86.com>
parents: 8259
diff changeset
441
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15496
diff changeset
442 if (pidgin_parse_x_im_contact((const char *)sd->data, FALSE, &account,
8803
79bc4ecbcac7 [gaim-migrate @ 9565]
Christian Hammond <chipx86@chipx86.com>
parents: 8259
diff changeset
443 &protocol, &username, NULL))
79bc4ecbcac7 [gaim-migrate @ 9565]
Christian Hammond <chipx86@chipx86.com>
parents: 8259
diff changeset
444 {
79bc4ecbcac7 [gaim-migrate @ 9565]
Christian Hammond <chipx86@chipx86.com>
parents: 8259
diff changeset
445 if (account == NULL)
79bc4ecbcac7 [gaim-migrate @ 9565]
Christian Hammond <chipx86@chipx86.com>
parents: 8259
diff changeset
446 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
447 purple_notify_error(NULL, NULL,
8803
79bc4ecbcac7 [gaim-migrate @ 9565]
Christian Hammond <chipx86@chipx86.com>
parents: 8259
diff changeset
448 _("You are not currently signed on with an account that "
79bc4ecbcac7 [gaim-migrate @ 9565]
Christian Hammond <chipx86@chipx86.com>
parents: 8259
diff changeset
449 "can add that buddy."), NULL);
79bc4ecbcac7 [gaim-migrate @ 9565]
Christian Hammond <chipx86@chipx86.com>
parents: 8259
diff changeset
450 }
79bc4ecbcac7 [gaim-migrate @ 9565]
Christian Hammond <chipx86@chipx86.com>
parents: 8259
diff changeset
451 else
79bc4ecbcac7 [gaim-migrate @ 9565]
Christian Hammond <chipx86@chipx86.com>
parents: 8259
diff changeset
452 {
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15496
diff changeset
453 dialog = (PidginPounceDialog *)data;
8803
79bc4ecbcac7 [gaim-migrate @ 9565]
Christian Hammond <chipx86@chipx86.com>
parents: 8259
diff changeset
454
79bc4ecbcac7 [gaim-migrate @ 9565]
Christian Hammond <chipx86@chipx86.com>
parents: 8259
diff changeset
455 gtk_entry_set_text(GTK_ENTRY(dialog->buddy_entry), username);
9910
7b4465b92411 [gaim-migrate @ 10802]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 9791
diff changeset
456 dialog->account = account;
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15496
diff changeset
457 pidgin_account_option_menu_set_selected(dialog->account_menu, account);
8803
79bc4ecbcac7 [gaim-migrate @ 9565]
Christian Hammond <chipx86@chipx86.com>
parents: 8259
diff changeset
458 }
79bc4ecbcac7 [gaim-migrate @ 9565]
Christian Hammond <chipx86@chipx86.com>
parents: 8259
diff changeset
459 }
79bc4ecbcac7 [gaim-migrate @ 9565]
Christian Hammond <chipx86@chipx86.com>
parents: 8259
diff changeset
460
14097
0c340861ab79 [gaim-migrate @ 16638]
Mark Doliner <markdoliner@pidgin.im>
parents: 13844
diff changeset
461 g_free(username);
0c340861ab79 [gaim-migrate @ 16638]
Mark Doliner <markdoliner@pidgin.im>
parents: 13844
diff changeset
462 g_free(protocol);
8803
79bc4ecbcac7 [gaim-migrate @ 9565]
Christian Hammond <chipx86@chipx86.com>
parents: 8259
diff changeset
463
79bc4ecbcac7 [gaim-migrate @ 9565]
Christian Hammond <chipx86@chipx86.com>
parents: 8259
diff changeset
464 gtk_drag_finish(dc, TRUE, (dc->action == GDK_ACTION_MOVE), t);
79bc4ecbcac7 [gaim-migrate @ 9565]
Christian Hammond <chipx86@chipx86.com>
parents: 8259
diff changeset
465 }
79bc4ecbcac7 [gaim-migrate @ 9565]
Christian Hammond <chipx86@chipx86.com>
parents: 8259
diff changeset
466 }
79bc4ecbcac7 [gaim-migrate @ 9565]
Christian Hammond <chipx86@chipx86.com>
parents: 8259
diff changeset
467
79bc4ecbcac7 [gaim-migrate @ 9565]
Christian Hammond <chipx86@chipx86.com>
parents: 8259
diff changeset
468 static const GtkTargetEntry dnd_targets[] =
79bc4ecbcac7 [gaim-migrate @ 9565]
Christian Hammond <chipx86@chipx86.com>
parents: 8259
diff changeset
469 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
470 {"PURPLE_BLIST_NODE", GTK_TARGET_SAME_APP, 0},
8803
79bc4ecbcac7 [gaim-migrate @ 9565]
Christian Hammond <chipx86@chipx86.com>
parents: 8259
diff changeset
471 {"application/x-im-contact", 0, 1}
79bc4ecbcac7 [gaim-migrate @ 9565]
Christian Hammond <chipx86@chipx86.com>
parents: 8259
diff changeset
472 };
79bc4ecbcac7 [gaim-migrate @ 9565]
Christian Hammond <chipx86@chipx86.com>
parents: 8259
diff changeset
473
17388
8be39f0de528 Allow formatted text in the pounce dialog. Also, use the same code to
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 16490
diff changeset
474 static void
8be39f0de528 Allow formatted text in the pounce dialog. Also, use the same code to
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 16490
diff changeset
475 reset_send_msg_entry(PidginPounceDialog *dialog, GtkWidget *dontcare)
8be39f0de528 Allow formatted text in the pounce dialog. Also, use the same code to
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 16490
diff changeset
476 {
8be39f0de528 Allow formatted text in the pounce dialog. Also, use the same code to
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 16490
diff changeset
477 PurpleAccount *account = pidgin_account_option_menu_get_selected(dialog->account_menu);
8be39f0de528 Allow formatted text in the pounce dialog. Also, use the same code to
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 16490
diff changeset
478 gtk_imhtml_setup_entry(GTK_IMHTML(dialog->send_msg_entry),
8be39f0de528 Allow formatted text in the pounce dialog. Also, use the same code to
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 16490
diff changeset
479 (account && account->gc) ? account->gc->flags : PURPLE_CONNECTION_HTML);
8be39f0de528 Allow formatted text in the pounce dialog. Also, use the same code to
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 16490
diff changeset
480 }
8be39f0de528 Allow formatted text in the pounce dialog. Also, use the same code to
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 16490
diff changeset
481
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
482 void
20706
2b2ff7b44fb2 Doing pounces
Gabriel Schulhof <nix@go-nix.ca>
parents: 20685
diff changeset
483 pidgin_pounce_editor_show(PurpleAccount *account, const char *name,
25390
02100938b030 Make dialogs that double as add and save dialogs indicate the current action
Etan Reisner <deryni@pidgin.im>
parents: 24594
diff changeset
484 PurplePounce *cur_pounce)
20706
2b2ff7b44fb2 Doing pounces
Gabriel Schulhof <nix@go-nix.ca>
parents: 20685
diff changeset
485 {
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15496
diff changeset
486 PidginPounceDialog *dialog;
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
487 GtkWidget *window;
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
488 GtkWidget *label;
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
489 GtkWidget *vbox1, *vbox2;
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
490 GtkWidget *hbox;
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
491 GtkWidget *button;
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
492 GtkWidget *frame;
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
493 GtkWidget *table;
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
494 GtkSizeGroup *sg;
5319
d3832c88d562 [gaim-migrate @ 5691]
Benjamin Zeiss
parents: 5228
diff changeset
495 GPtrArray *sound_widgets;
d3832c88d562 [gaim-migrate @ 5691]
Benjamin Zeiss
parents: 5228
diff changeset
496 GPtrArray *exec_widgets;
17388
8be39f0de528 Allow formatted text in the pounce dialog. Also, use the same code to
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 16490
diff changeset
497 GtkWidget *send_msg_imhtml;
5857
52cff8a95261 [gaim-migrate @ 6288]
Christian Hammond <chipx86@chipx86.com>
parents: 5676
diff changeset
498
15058
212b71a4faf6 [gaim-migrate @ 17775]
Richard Laager <rlaager@pidgin.im>
parents: 14253
diff changeset
499 g_return_if_fail((cur_pounce != NULL) ||
212b71a4faf6 [gaim-migrate @ 17775]
Richard Laager <rlaager@pidgin.im>
parents: 14253
diff changeset
500 (account != NULL) ||
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
501 (purple_accounts_get_all() != NULL));
10352
802e7ab5b838 [gaim-migrate @ 11569]
Mark Doliner <markdoliner@pidgin.im>
parents: 10250
diff changeset
502
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15496
diff changeset
503 dialog = g_new0(PidginPounceDialog, 1);
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
504
8803
79bc4ecbcac7 [gaim-migrate @ 9565]
Christian Hammond <chipx86@chipx86.com>
parents: 8259
diff changeset
505 if (cur_pounce != NULL)
79bc4ecbcac7 [gaim-migrate @ 9565]
Christian Hammond <chipx86@chipx86.com>
parents: 8259
diff changeset
506 {
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
507 dialog->pounce = cur_pounce;
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
508 dialog->account = purple_pounce_get_pouncer(cur_pounce);
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
509 }
8803
79bc4ecbcac7 [gaim-migrate @ 9565]
Christian Hammond <chipx86@chipx86.com>
parents: 8259
diff changeset
510 else if (account != NULL)
79bc4ecbcac7 [gaim-migrate @ 9565]
Christian Hammond <chipx86@chipx86.com>
parents: 8259
diff changeset
511 {
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
512 dialog->pounce = NULL;
5907
b2812113a4a6 [gaim-migrate @ 6339]
Christian Hammond <chipx86@chipx86.com>
parents: 5877
diff changeset
513 dialog->account = account;
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
514 }
8803
79bc4ecbcac7 [gaim-migrate @ 9565]
Christian Hammond <chipx86@chipx86.com>
parents: 8259
diff changeset
515 else
79bc4ecbcac7 [gaim-migrate @ 9565]
Christian Hammond <chipx86@chipx86.com>
parents: 8259
diff changeset
516 {
18122
9bf9970c1b6a disapproval of revision '2d8ea56b90971e7851442d96b7d74ecb4f052126'
Richard Laager <rlaager@pidgin.im>
parents: 18121
diff changeset
517 GList *connections = purple_connections_get_all();
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
518 PurpleConnection *gc;
8803
79bc4ecbcac7 [gaim-migrate @ 9565]
Christian Hammond <chipx86@chipx86.com>
parents: 8259
diff changeset
519
15058
212b71a4faf6 [gaim-migrate @ 17775]
Richard Laager <rlaager@pidgin.im>
parents: 14253
diff changeset
520 if (connections != NULL)
212b71a4faf6 [gaim-migrate @ 17775]
Richard Laager <rlaager@pidgin.im>
parents: 14253
diff changeset
521 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
522 gc = (PurpleConnection *)connections->data;
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
523 dialog->account = purple_connection_get_account(gc);
15058
212b71a4faf6 [gaim-migrate @ 17775]
Richard Laager <rlaager@pidgin.im>
parents: 14253
diff changeset
524 }
212b71a4faf6 [gaim-migrate @ 17775]
Richard Laager <rlaager@pidgin.im>
parents: 14253
diff changeset
525 else
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
526 dialog->account = purple_accounts_get_all()->data;
8803
79bc4ecbcac7 [gaim-migrate @ 9565]
Christian Hammond <chipx86@chipx86.com>
parents: 8259
diff changeset
527
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
528 dialog->pounce = NULL;
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
529 }
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
530
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
531 sg = gtk_size_group_new(GTK_SIZE_GROUP_HORIZONTAL);
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
532
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
533 /* Create the window. */
19546
b7a8a86af65a Use GtkDialog more often. Thanks nix_nix. Fixes #2618
Sean Egan <seanegan@pidgin.im>
parents: 18966
diff changeset
534 dialog->window = window = gtk_dialog_new();
25868
66d6c3e2963d Use "Add Buddy Pounce" and "Modify Buddy Pounce" as the buddy pounce dialog
Etan Reisner <deryni@pidgin.im>
parents: 24594
diff changeset
535 gtk_window_set_title(GTK_WINDOW(window), (cur_pounce == NULL ? _("Add Buddy Pounce") : _("Modify Buddy Pounce")));
19546
b7a8a86af65a Use GtkDialog more often. Thanks nix_nix. Fixes #2618
Sean Egan <seanegan@pidgin.im>
parents: 18966
diff changeset
536 gtk_window_set_role(GTK_WINDOW(window), "buddy_pounce");
b7a8a86af65a Use GtkDialog more often. Thanks nix_nix. Fixes #2618
Sean Egan <seanegan@pidgin.im>
parents: 18966
diff changeset
537 gtk_container_set_border_width(GTK_CONTAINER(dialog->window), PIDGIN_HIG_BORDER);
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
538
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
539 g_signal_connect(G_OBJECT(window), "delete_event",
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
540 G_CALLBACK(delete_win_cb), dialog);
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
541
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
542 /* Create the parent vbox for everything. */
19546
b7a8a86af65a Use GtkDialog more often. Thanks nix_nix. Fixes #2618
Sean Egan <seanegan@pidgin.im>
parents: 18966
diff changeset
543 vbox1 = GTK_DIALOG(window)->vbox;
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
544
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
545 /* Create the vbox that will contain all the prefs stuff. */
15882
1dbd5756b7bf More Gaim to Pidgin stuff
Sean Egan <seanegan@pidgin.im>
parents: 15577
diff changeset
546 vbox2 = gtk_vbox_new(FALSE, PIDGIN_HIG_BOX_SPACE);
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
547 gtk_box_pack_start(GTK_BOX(vbox1), vbox2, TRUE, TRUE, 0);
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
548
12694
526fc1678184 [gaim-migrate @ 15037]
Lucio Maciel
parents: 12336
diff changeset
549 /* Create the "Pounce on Whom" frame. */
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15496
diff changeset
550 frame = pidgin_make_frame(vbox2, _("Pounce on Whom"));
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
551
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
552 /* Account: */
15882
1dbd5756b7bf More Gaim to Pidgin stuff
Sean Egan <seanegan@pidgin.im>
parents: 15577
diff changeset
553 hbox = gtk_hbox_new(FALSE, PIDGIN_HIG_BOX_SPACE);
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
554 gtk_box_pack_start(GTK_BOX(frame), hbox, FALSE, FALSE, 0);
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
555 gtk_widget_show(hbox);
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
556
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
557 label = gtk_label_new_with_mnemonic(_("_Account:"));
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
558 gtk_misc_set_alignment(GTK_MISC(label), 0, 0.5);
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
559 gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0);
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
560 gtk_widget_show(label);
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
561 gtk_size_group_add_widget(sg, label);
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
562
5877
37695b88b248 [gaim-migrate @ 6309]
Christian Hammond <chipx86@chipx86.com>
parents: 5876
diff changeset
563 dialog->account_menu =
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15496
diff changeset
564 pidgin_account_option_menu_new(dialog->account, TRUE,
6646
b9a0b5eb74e6 [gaim-migrate @ 7171]
Christian Hammond <chipx86@chipx86.com>
parents: 6640
diff changeset
565 G_CALLBACK(pounce_choose_cb),
b9a0b5eb74e6 [gaim-migrate @ 7171]
Christian Hammond <chipx86@chipx86.com>
parents: 6640
diff changeset
566 NULL, dialog);
5877
37695b88b248 [gaim-migrate @ 6309]
Christian Hammond <chipx86@chipx86.com>
parents: 5876
diff changeset
567
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
568 gtk_box_pack_start(GTK_BOX(hbox), dialog->account_menu, FALSE, FALSE, 0);
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
569 gtk_widget_show(dialog->account_menu);
15568
cd19bb5a51b8 gtkutils changes
Sean Egan <seanegan@pidgin.im>
parents: 15562
diff changeset
570 pidgin_set_accessible_label (dialog->account_menu, label);
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
571
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
572 /* Buddy: */
15882
1dbd5756b7bf More Gaim to Pidgin stuff
Sean Egan <seanegan@pidgin.im>
parents: 15577
diff changeset
573 hbox = gtk_hbox_new(FALSE, PIDGIN_HIG_BOX_SPACE);
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
574 gtk_box_pack_start(GTK_BOX(frame), hbox, FALSE, FALSE, 0);
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
575 gtk_widget_show(hbox);
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
576
8803
79bc4ecbcac7 [gaim-migrate @ 9565]
Christian Hammond <chipx86@chipx86.com>
parents: 8259
diff changeset
577 label = gtk_label_new_with_mnemonic(_("_Buddy name:"));
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
578 gtk_misc_set_alignment(GTK_MISC(label), 0, 0.5);
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
579 gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0);
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
580 gtk_widget_show(label);
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
581 gtk_size_group_add_widget(sg, label);
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
582
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
583 dialog->buddy_entry = gtk_entry_new();
8803
79bc4ecbcac7 [gaim-migrate @ 9565]
Christian Hammond <chipx86@chipx86.com>
parents: 8259
diff changeset
584
18966
6a0715b72b6b Screenname auto-completion filtering by Leonardo Fernandes, Fixes #519
Sean Egan <seanegan@pidgin.im>
parents: 18209
diff changeset
585 pidgin_setup_screenname_autocomplete_with_filter(dialog->buddy_entry, dialog->account_menu, pidgin_screenname_autocomplete_default_filter, GINT_TO_POINTER(FALSE));
13361
bb2f64cf6721 [gaim-migrate @ 15733]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 13228
diff changeset
586
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
587 gtk_box_pack_start(GTK_BOX(hbox), dialog->buddy_entry, TRUE, TRUE, 0);
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
588 gtk_widget_show(dialog->buddy_entry);
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
589
5876
c12b198bde14 [gaim-migrate @ 6308]
Christian Hammond <chipx86@chipx86.com>
parents: 5875
diff changeset
590 g_signal_connect(G_OBJECT(dialog->buddy_entry), "changed",
c12b198bde14 [gaim-migrate @ 6308]
Christian Hammond <chipx86@chipx86.com>
parents: 5875
diff changeset
591 G_CALLBACK(buddy_changed_cb), dialog);
15568
cd19bb5a51b8 gtkutils changes
Sean Egan <seanegan@pidgin.im>
parents: 15562
diff changeset
592 pidgin_set_accessible_label (dialog->buddy_entry, label);
5876
c12b198bde14 [gaim-migrate @ 6308]
Christian Hammond <chipx86@chipx86.com>
parents: 5875
diff changeset
593
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
594 if (cur_pounce != NULL) {
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
595 gtk_entry_set_text(GTK_ENTRY(dialog->buddy_entry),
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
596 purple_pounce_get_pouncee(cur_pounce));
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
597 }
5907
b2812113a4a6 [gaim-migrate @ 6339]
Christian Hammond <chipx86@chipx86.com>
parents: 5877
diff changeset
598 else if (name != NULL) {
b2812113a4a6 [gaim-migrate @ 6339]
Christian Hammond <chipx86@chipx86.com>
parents: 5877
diff changeset
599 gtk_entry_set_text(GTK_ENTRY(dialog->buddy_entry), name);
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
600 }
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
601
12694
526fc1678184 [gaim-migrate @ 15037]
Lucio Maciel
parents: 12336
diff changeset
602 /* Create the "Pounce When Buddy..." frame. */
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15496
diff changeset
603 frame = pidgin_make_frame(vbox2, _("Pounce When Buddy..."));
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
604
13844
835b8f7b3d1d [gaim-migrate @ 16295]
Mark Doliner <markdoliner@pidgin.im>
parents: 13775
diff changeset
605 table = gtk_table_new(5, 2, FALSE);
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
606 gtk_container_add(GTK_CONTAINER(frame), table);
15882
1dbd5756b7bf More Gaim to Pidgin stuff
Sean Egan <seanegan@pidgin.im>
parents: 15577
diff changeset
607 gtk_table_set_col_spacings(GTK_TABLE(table), PIDGIN_HIG_BORDER);
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
608 gtk_widget_show(table);
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
609
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
610 dialog->signon =
12141
9cd436b9b7f6 [gaim-migrate @ 14442]
Richard Laager <rlaager@pidgin.im>
parents: 12137
diff changeset
611 gtk_check_button_new_with_mnemonic(_("Si_gns on"));
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
612 dialog->signoff =
12142
45aba96df80d [gaim-migrate @ 14443]
Richard Laager <rlaager@pidgin.im>
parents: 12141
diff changeset
613 gtk_check_button_new_with_mnemonic(_("Signs o_ff"));
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
614 dialog->away =
12141
9cd436b9b7f6 [gaim-migrate @ 14442]
Richard Laager <rlaager@pidgin.im>
parents: 12137
diff changeset
615 gtk_check_button_new_with_mnemonic(_("Goes a_way"));
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
616 dialog->away_return =
12144
a24ccdee060b [gaim-migrate @ 14445]
Richard Laager <rlaager@pidgin.im>
parents: 12142
diff changeset
617 gtk_check_button_new_with_mnemonic(_("Ret_urns from away"));
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
618 dialog->idle =
12192
36b7b33aa956 [gaim-migrate @ 14494]
Richard Laager <rlaager@pidgin.im>
parents: 12186
diff changeset
619 gtk_check_button_new_with_mnemonic(_("Becomes _idle"));
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
620 dialog->idle_return =
12192
36b7b33aa956 [gaim-migrate @ 14494]
Richard Laager <rlaager@pidgin.im>
parents: 12186
diff changeset
621 gtk_check_button_new_with_mnemonic(_("Is no longer i_dle"));
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
622 dialog->typing =
12141
9cd436b9b7f6 [gaim-migrate @ 14442]
Richard Laager <rlaager@pidgin.im>
parents: 12137
diff changeset
623 gtk_check_button_new_with_mnemonic(_("Starts _typing"));
13844
835b8f7b3d1d [gaim-migrate @ 16295]
Mark Doliner <markdoliner@pidgin.im>
parents: 13775
diff changeset
624 dialog->typed =
835b8f7b3d1d [gaim-migrate @ 16295]
Mark Doliner <markdoliner@pidgin.im>
parents: 13775
diff changeset
625 gtk_check_button_new_with_mnemonic(_("P_auses while typing"));
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
626 dialog->stop_typing =
12141
9cd436b9b7f6 [gaim-migrate @ 14442]
Richard Laager <rlaager@pidgin.im>
parents: 12137
diff changeset
627 gtk_check_button_new_with_mnemonic(_("Stops t_yping"));
12694
526fc1678184 [gaim-migrate @ 15037]
Lucio Maciel
parents: 12336
diff changeset
628 dialog->message_recv =
526fc1678184 [gaim-migrate @ 15037]
Lucio Maciel
parents: 12336
diff changeset
629 gtk_check_button_new_with_mnemonic(_("Sends a _message"));
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
630
13844
835b8f7b3d1d [gaim-migrate @ 16295]
Mark Doliner <markdoliner@pidgin.im>
parents: 13775
diff changeset
631 gtk_table_attach(GTK_TABLE(table), dialog->message_recv, 0, 1, 0, 1,
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
632 GTK_FILL, 0, 0, 0);
13844
835b8f7b3d1d [gaim-migrate @ 16295]
Mark Doliner <markdoliner@pidgin.im>
parents: 13775
diff changeset
633 gtk_table_attach(GTK_TABLE(table), dialog->signon, 0, 1, 1, 2,
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
634 GTK_FILL, 0, 0, 0);
13844
835b8f7b3d1d [gaim-migrate @ 16295]
Mark Doliner <markdoliner@pidgin.im>
parents: 13775
diff changeset
635 gtk_table_attach(GTK_TABLE(table), dialog->signoff, 0, 1, 2, 3,
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
636 GTK_FILL, 0, 0, 0);
25909
d5b0f5340ef0 Buddy pounce options are now in four columns instead of two. Fixes issues with height of dialog on small resolutions.
Casey Ho <caseyho@pidgin.im>
parents: 25869
diff changeset
637 gtk_table_attach(GTK_TABLE(table), dialog->away, 1, 2, 0, 1,
13844
835b8f7b3d1d [gaim-migrate @ 16295]
Mark Doliner <markdoliner@pidgin.im>
parents: 13775
diff changeset
638 GTK_FILL, 0, 0, 0);
25909
d5b0f5340ef0 Buddy pounce options are now in four columns instead of two. Fixes issues with height of dialog on small resolutions.
Casey Ho <caseyho@pidgin.im>
parents: 25869
diff changeset
639 gtk_table_attach(GTK_TABLE(table), dialog->away_return, 1, 2, 1, 2,
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
640 GTK_FILL, 0, 0, 0);
25909
d5b0f5340ef0 Buddy pounce options are now in four columns instead of two. Fixes issues with height of dialog on small resolutions.
Casey Ho <caseyho@pidgin.im>
parents: 25869
diff changeset
641 gtk_table_attach(GTK_TABLE(table), dialog->idle, 1, 2, 2, 3,
12694
526fc1678184 [gaim-migrate @ 15037]
Lucio Maciel
parents: 12336
diff changeset
642 GTK_FILL, 0, 0, 0);
25909
d5b0f5340ef0 Buddy pounce options are now in four columns instead of two. Fixes issues with height of dialog on small resolutions.
Casey Ho <caseyho@pidgin.im>
parents: 25869
diff changeset
643 gtk_table_attach(GTK_TABLE(table), dialog->idle_return, 2, 3, 0, 1,
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
644 GTK_FILL, 0, 0, 0);
25909
d5b0f5340ef0 Buddy pounce options are now in four columns instead of two. Fixes issues with height of dialog on small resolutions.
Casey Ho <caseyho@pidgin.im>
parents: 25869
diff changeset
645 gtk_table_attach(GTK_TABLE(table), dialog->typing, 2, 3, 1, 2,
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
646 GTK_FILL, 0, 0, 0);
25909
d5b0f5340ef0 Buddy pounce options are now in four columns instead of two. Fixes issues with height of dialog on small resolutions.
Casey Ho <caseyho@pidgin.im>
parents: 25869
diff changeset
647 gtk_table_attach(GTK_TABLE(table), dialog->typed, 2, 3, 2, 3,
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
648 GTK_FILL, 0, 0, 0);
25909
d5b0f5340ef0 Buddy pounce options are now in four columns instead of two. Fixes issues with height of dialog on small resolutions.
Casey Ho <caseyho@pidgin.im>
parents: 25869
diff changeset
649 gtk_table_attach(GTK_TABLE(table), dialog->stop_typing, 3, 4, 0, 1,
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
650 GTK_FILL, 0, 0, 0);
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
651
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
652 gtk_widget_show(dialog->signon);
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
653 gtk_widget_show(dialog->signoff);
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
654 gtk_widget_show(dialog->away);
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
655 gtk_widget_show(dialog->away_return);
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
656 gtk_widget_show(dialog->idle);
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
657 gtk_widget_show(dialog->idle_return);
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
658 gtk_widget_show(dialog->typing);
13844
835b8f7b3d1d [gaim-migrate @ 16295]
Mark Doliner <markdoliner@pidgin.im>
parents: 13775
diff changeset
659 gtk_widget_show(dialog->typed);
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
660 gtk_widget_show(dialog->stop_typing);
12694
526fc1678184 [gaim-migrate @ 15037]
Lucio Maciel
parents: 12336
diff changeset
661 gtk_widget_show(dialog->message_recv);
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
662
12694
526fc1678184 [gaim-migrate @ 15037]
Lucio Maciel
parents: 12336
diff changeset
663 /* Create the "Action" frame. */
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15496
diff changeset
664 frame = pidgin_make_frame(vbox2, _("Action"));
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
665
23260
56fda1590379 Make it more obvious that there is a default buddy pounce sound, and
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 22214
diff changeset
666 table = gtk_table_new(3, 6, FALSE);
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
667 gtk_container_add(GTK_CONTAINER(frame), table);
15882
1dbd5756b7bf More Gaim to Pidgin stuff
Sean Egan <seanegan@pidgin.im>
parents: 15577
diff changeset
668 gtk_table_set_col_spacings(GTK_TABLE(table), PIDGIN_HIG_BORDER);
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
669 gtk_widget_show(table);
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
670
9205
8c4dbbe6386f [gaim-migrate @ 10000]
Christian Hammond <chipx86@chipx86.com>
parents: 9191
diff changeset
671 dialog->open_win
12192
36b7b33aa956 [gaim-migrate @ 14494]
Richard Laager <rlaager@pidgin.im>
parents: 12186
diff changeset
672 = gtk_check_button_new_with_mnemonic(_("Ope_n an IM window"));
9205
8c4dbbe6386f [gaim-migrate @ 10000]
Christian Hammond <chipx86@chipx86.com>
parents: 9191
diff changeset
673 dialog->popup
12141
9cd436b9b7f6 [gaim-migrate @ 14442]
Richard Laager <rlaager@pidgin.im>
parents: 12137
diff changeset
674 = gtk_check_button_new_with_mnemonic(_("_Pop up a notification"));
9205
8c4dbbe6386f [gaim-migrate @ 10000]
Christian Hammond <chipx86@chipx86.com>
parents: 9191
diff changeset
675 dialog->send_msg
8c4dbbe6386f [gaim-migrate @ 10000]
Christian Hammond <chipx86@chipx86.com>
parents: 9191
diff changeset
676 = gtk_check_button_new_with_mnemonic(_("Send a _message"));
8c4dbbe6386f [gaim-migrate @ 10000]
Christian Hammond <chipx86@chipx86.com>
parents: 9191
diff changeset
677 dialog->exec_cmd
8c4dbbe6386f [gaim-migrate @ 10000]
Christian Hammond <chipx86@chipx86.com>
parents: 9191
diff changeset
678 = gtk_check_button_new_with_mnemonic(_("E_xecute a command"));
8c4dbbe6386f [gaim-migrate @ 10000]
Christian Hammond <chipx86@chipx86.com>
parents: 9191
diff changeset
679 dialog->play_sound
8c4dbbe6386f [gaim-migrate @ 10000]
Christian Hammond <chipx86@chipx86.com>
parents: 9191
diff changeset
680 = gtk_check_button_new_with_mnemonic(_("P_lay a sound"));
7035
76bca80cd91d [gaim-migrate @ 7598]
Christian Hammond <chipx86@chipx86.com>
parents: 6982
diff changeset
681
17388
8be39f0de528 Allow formatted text in the pounce dialog. Also, use the same code to
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 16490
diff changeset
682 send_msg_imhtml = pidgin_create_imhtml(TRUE, &dialog->send_msg_entry, NULL, NULL);
8be39f0de528 Allow formatted text in the pounce dialog. Also, use the same code to
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 16490
diff changeset
683 reset_send_msg_entry(dialog, NULL);
9205
8c4dbbe6386f [gaim-migrate @ 10000]
Christian Hammond <chipx86@chipx86.com>
parents: 9191
diff changeset
684 dialog->exec_cmd_entry = gtk_entry_new();
12934
d3ce70776eb5 [gaim-migrate @ 15287]
Richard Nelson <wabz@pidgin.im>
parents: 12694
diff changeset
685 dialog->popup_entry = gtk_entry_new();
12192
36b7b33aa956 [gaim-migrate @ 14494]
Richard Laager <rlaager@pidgin.im>
parents: 12186
diff changeset
686 dialog->exec_cmd_browse = gtk_button_new_with_mnemonic(_("Brows_e..."));
9205
8c4dbbe6386f [gaim-migrate @ 10000]
Christian Hammond <chipx86@chipx86.com>
parents: 9191
diff changeset
687 dialog->play_sound_entry = gtk_entry_new();
23260
56fda1590379 Make it more obvious that there is a default buddy pounce sound, and
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 22214
diff changeset
688 gtk_entry_set_text(GTK_ENTRY(dialog->play_sound_entry), _("(default)"));
56fda1590379 Make it more obvious that there is a default buddy pounce sound, and
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 22214
diff changeset
689 gtk_editable_set_editable(GTK_EDITABLE(dialog->play_sound_entry), FALSE);
12144
a24ccdee060b [gaim-migrate @ 14445]
Richard Laager <rlaager@pidgin.im>
parents: 12142
diff changeset
690 dialog->play_sound_browse = gtk_button_new_with_mnemonic(_("Br_owse..."));
9205
8c4dbbe6386f [gaim-migrate @ 10000]
Christian Hammond <chipx86@chipx86.com>
parents: 9191
diff changeset
691 dialog->play_sound_test = gtk_button_new_with_mnemonic(_("Pre_view"));
23260
56fda1590379 Make it more obvious that there is a default buddy pounce sound, and
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 22214
diff changeset
692 dialog->play_sound_reset = gtk_button_new_with_mnemonic(_("Reset"));
7035
76bca80cd91d [gaim-migrate @ 7598]
Christian Hammond <chipx86@chipx86.com>
parents: 6982
diff changeset
693
17388
8be39f0de528 Allow formatted text in the pounce dialog. Also, use the same code to
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 16490
diff changeset
694 gtk_widget_set_sensitive(send_msg_imhtml, FALSE);
12694
526fc1678184 [gaim-migrate @ 15037]
Lucio Maciel
parents: 12336
diff changeset
695 gtk_widget_set_sensitive(dialog->exec_cmd_entry, FALSE);
12934
d3ce70776eb5 [gaim-migrate @ 15287]
Richard Nelson <wabz@pidgin.im>
parents: 12694
diff changeset
696 gtk_widget_set_sensitive(dialog->popup_entry, FALSE);
12694
526fc1678184 [gaim-migrate @ 15037]
Lucio Maciel
parents: 12336
diff changeset
697 gtk_widget_set_sensitive(dialog->exec_cmd_browse, FALSE);
526fc1678184 [gaim-migrate @ 15037]
Lucio Maciel
parents: 12336
diff changeset
698 gtk_widget_set_sensitive(dialog->play_sound_entry, FALSE);
526fc1678184 [gaim-migrate @ 15037]
Lucio Maciel
parents: 12336
diff changeset
699 gtk_widget_set_sensitive(dialog->play_sound_browse, FALSE);
526fc1678184 [gaim-migrate @ 15037]
Lucio Maciel
parents: 12336
diff changeset
700 gtk_widget_set_sensitive(dialog->play_sound_test, FALSE);
23260
56fda1590379 Make it more obvious that there is a default buddy pounce sound, and
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 22214
diff changeset
701 gtk_widget_set_sensitive(dialog->play_sound_reset, FALSE);
12694
526fc1678184 [gaim-migrate @ 15037]
Lucio Maciel
parents: 12336
diff changeset
702
20289
5c844288fbec applied changes from 32f31e981f0618a4167aa98bcc22c2dab13d1550
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 20168
diff changeset
703 g_object_unref(sg);
5c844288fbec applied changes from 32f31e981f0618a4167aa98bcc22c2dab13d1550
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 20168
diff changeset
704
12694
526fc1678184 [gaim-migrate @ 15037]
Lucio Maciel
parents: 12336
diff changeset
705 sg = gtk_size_group_new(GTK_SIZE_GROUP_VERTICAL);
526fc1678184 [gaim-migrate @ 15037]
Lucio Maciel
parents: 12336
diff changeset
706 gtk_size_group_add_widget(sg, dialog->open_win);
526fc1678184 [gaim-migrate @ 15037]
Lucio Maciel
parents: 12336
diff changeset
707 gtk_size_group_add_widget(sg, dialog->popup);
12934
d3ce70776eb5 [gaim-migrate @ 15287]
Richard Nelson <wabz@pidgin.im>
parents: 12694
diff changeset
708 gtk_size_group_add_widget(sg, dialog->popup_entry);
12694
526fc1678184 [gaim-migrate @ 15037]
Lucio Maciel
parents: 12336
diff changeset
709 gtk_size_group_add_widget(sg, dialog->exec_cmd);
526fc1678184 [gaim-migrate @ 15037]
Lucio Maciel
parents: 12336
diff changeset
710 gtk_size_group_add_widget(sg, dialog->exec_cmd_entry);
526fc1678184 [gaim-migrate @ 15037]
Lucio Maciel
parents: 12336
diff changeset
711 gtk_size_group_add_widget(sg, dialog->exec_cmd_browse);
526fc1678184 [gaim-migrate @ 15037]
Lucio Maciel
parents: 12336
diff changeset
712 gtk_size_group_add_widget(sg, dialog->play_sound);
526fc1678184 [gaim-migrate @ 15037]
Lucio Maciel
parents: 12336
diff changeset
713 gtk_size_group_add_widget(sg, dialog->play_sound_entry);
526fc1678184 [gaim-migrate @ 15037]
Lucio Maciel
parents: 12336
diff changeset
714 gtk_size_group_add_widget(sg, dialog->play_sound_browse);
526fc1678184 [gaim-migrate @ 15037]
Lucio Maciel
parents: 12336
diff changeset
715 gtk_size_group_add_widget(sg, dialog->play_sound_test);
23260
56fda1590379 Make it more obvious that there is a default buddy pounce sound, and
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 22214
diff changeset
716 gtk_size_group_add_widget(sg, dialog->play_sound_reset);
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
717
20289
5c844288fbec applied changes from 32f31e981f0618a4167aa98bcc22c2dab13d1550
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 20168
diff changeset
718 g_object_unref(sg);
5c844288fbec applied changes from 32f31e981f0618a4167aa98bcc22c2dab13d1550
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 20168
diff changeset
719 sg = NULL;
5c844288fbec applied changes from 32f31e981f0618a4167aa98bcc22c2dab13d1550
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 20168
diff changeset
720
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
721 gtk_table_attach(GTK_TABLE(table), dialog->open_win, 0, 1, 0, 1,
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
722 GTK_FILL, 0, 0, 0);
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
723 gtk_table_attach(GTK_TABLE(table), dialog->popup, 0, 1, 1, 2,
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
724 GTK_FILL, 0, 0, 0);
23260
56fda1590379 Make it more obvious that there is a default buddy pounce sound, and
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 22214
diff changeset
725 gtk_table_attach(GTK_TABLE(table), dialog->popup_entry, 1, 5, 1, 2,
12934
d3ce70776eb5 [gaim-migrate @ 15287]
Richard Nelson <wabz@pidgin.im>
parents: 12694
diff changeset
726 GTK_FILL, 0, 0, 0);
23260
56fda1590379 Make it more obvious that there is a default buddy pounce sound, and
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 22214
diff changeset
727 gtk_table_attach(GTK_TABLE(table), dialog->send_msg, 0, 5, 2, 3,
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
728 GTK_FILL, 0, 0, 0);
23260
56fda1590379 Make it more obvious that there is a default buddy pounce sound, and
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 22214
diff changeset
729 gtk_table_attach(GTK_TABLE(table), send_msg_imhtml, 0, 5, 3, 4,
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
730 GTK_FILL, 0, 0, 0);
17388
8be39f0de528 Allow formatted text in the pounce dialog. Also, use the same code to
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 16490
diff changeset
731 gtk_table_attach(GTK_TABLE(table), dialog->exec_cmd, 0, 1, 4, 5,
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
732 GTK_FILL, 0, 0, 0);
17388
8be39f0de528 Allow formatted text in the pounce dialog. Also, use the same code to
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 16490
diff changeset
733 gtk_table_attach(GTK_TABLE(table), dialog->exec_cmd_entry, 1, 2, 4, 5,
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
734 GTK_FILL, 0, 0, 0);
17388
8be39f0de528 Allow formatted text in the pounce dialog. Also, use the same code to
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 16490
diff changeset
735 gtk_table_attach(GTK_TABLE(table), dialog->exec_cmd_browse, 2, 3, 4, 5,
5319
d3832c88d562 [gaim-migrate @ 5691]
Benjamin Zeiss
parents: 5228
diff changeset
736 GTK_FILL | GTK_EXPAND, 0, 0, 0);
17388
8be39f0de528 Allow formatted text in the pounce dialog. Also, use the same code to
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 16490
diff changeset
737 gtk_table_attach(GTK_TABLE(table), dialog->play_sound, 0, 1, 5, 6,
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
738 GTK_FILL, 0, 0, 0);
17388
8be39f0de528 Allow formatted text in the pounce dialog. Also, use the same code to
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 16490
diff changeset
739 gtk_table_attach(GTK_TABLE(table), dialog->play_sound_entry, 1, 2, 5, 6,
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
740 GTK_FILL, 0, 0, 0);
17388
8be39f0de528 Allow formatted text in the pounce dialog. Also, use the same code to
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 16490
diff changeset
741 gtk_table_attach(GTK_TABLE(table), dialog->play_sound_browse,2, 3, 5, 6,
5319
d3832c88d562 [gaim-migrate @ 5691]
Benjamin Zeiss
parents: 5228
diff changeset
742 GTK_FILL | GTK_EXPAND, 0, 0, 0);
17388
8be39f0de528 Allow formatted text in the pounce dialog. Also, use the same code to
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 16490
diff changeset
743 gtk_table_attach(GTK_TABLE(table), dialog->play_sound_test, 3, 4, 5, 6,
5319
d3832c88d562 [gaim-migrate @ 5691]
Benjamin Zeiss
parents: 5228
diff changeset
744 GTK_FILL | GTK_EXPAND, 0, 0, 0);
23260
56fda1590379 Make it more obvious that there is a default buddy pounce sound, and
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 22214
diff changeset
745 gtk_table_attach(GTK_TABLE(table), dialog->play_sound_reset, 4, 5, 5, 6,
56fda1590379 Make it more obvious that there is a default buddy pounce sound, and
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 22214
diff changeset
746 GTK_FILL | GTK_EXPAND, 0, 0, 0);
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
747
15882
1dbd5756b7bf More Gaim to Pidgin stuff
Sean Egan <seanegan@pidgin.im>
parents: 15577
diff changeset
748 gtk_table_set_row_spacings(GTK_TABLE(table), PIDGIN_HIG_BOX_SPACE / 2);
12694
526fc1678184 [gaim-migrate @ 15037]
Lucio Maciel
parents: 12336
diff changeset
749
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
750 gtk_widget_show(dialog->open_win);
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
751 gtk_widget_show(dialog->popup);
12934
d3ce70776eb5 [gaim-migrate @ 15287]
Richard Nelson <wabz@pidgin.im>
parents: 12694
diff changeset
752 gtk_widget_show(dialog->popup_entry);
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
753 gtk_widget_show(dialog->send_msg);
17388
8be39f0de528 Allow formatted text in the pounce dialog. Also, use the same code to
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 16490
diff changeset
754 gtk_widget_show(send_msg_imhtml);
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
755 gtk_widget_show(dialog->exec_cmd);
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
756 gtk_widget_show(dialog->exec_cmd_entry);
5319
d3832c88d562 [gaim-migrate @ 5691]
Benjamin Zeiss
parents: 5228
diff changeset
757 gtk_widget_show(dialog->exec_cmd_browse);
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
758 gtk_widget_show(dialog->play_sound);
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
759 gtk_widget_show(dialog->play_sound_entry);
5319
d3832c88d562 [gaim-migrate @ 5691]
Benjamin Zeiss
parents: 5228
diff changeset
760 gtk_widget_show(dialog->play_sound_browse);
d3832c88d562 [gaim-migrate @ 5691]
Benjamin Zeiss
parents: 5228
diff changeset
761 gtk_widget_show(dialog->play_sound_test);
23260
56fda1590379 Make it more obvious that there is a default buddy pounce sound, and
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 22214
diff changeset
762 gtk_widget_show(dialog->play_sound_reset);
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
763
12694
526fc1678184 [gaim-migrate @ 15037]
Lucio Maciel
parents: 12336
diff changeset
764 g_signal_connect(G_OBJECT(dialog->message_recv), "clicked",
526fc1678184 [gaim-migrate @ 15037]
Lucio Maciel
parents: 12336
diff changeset
765 G_CALLBACK(message_recv_toggle),
526fc1678184 [gaim-migrate @ 15037]
Lucio Maciel
parents: 12336
diff changeset
766 dialog->send_msg);
526fc1678184 [gaim-migrate @ 15037]
Lucio Maciel
parents: 12336
diff changeset
767
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
768 g_signal_connect(G_OBJECT(dialog->send_msg), "clicked",
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15496
diff changeset
769 G_CALLBACK(pidgin_toggle_sensitive),
17388
8be39f0de528 Allow formatted text in the pounce dialog. Also, use the same code to
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 16490
diff changeset
770 send_msg_imhtml);
5319
d3832c88d562 [gaim-migrate @ 5691]
Benjamin Zeiss
parents: 5228
diff changeset
771
12934
d3ce70776eb5 [gaim-migrate @ 15287]
Richard Nelson <wabz@pidgin.im>
parents: 12694
diff changeset
772 g_signal_connect(G_OBJECT(dialog->popup), "clicked",
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15496
diff changeset
773 G_CALLBACK(pidgin_toggle_sensitive),
12934
d3ce70776eb5 [gaim-migrate @ 15287]
Richard Nelson <wabz@pidgin.im>
parents: 12694
diff changeset
774 dialog->popup_entry);
d3ce70776eb5 [gaim-migrate @ 15287]
Richard Nelson <wabz@pidgin.im>
parents: 12694
diff changeset
775
5319
d3832c88d562 [gaim-migrate @ 5691]
Benjamin Zeiss
parents: 5228
diff changeset
776 exec_widgets = g_ptr_array_new();
d3832c88d562 [gaim-migrate @ 5691]
Benjamin Zeiss
parents: 5228
diff changeset
777 g_ptr_array_add(exec_widgets,dialog->exec_cmd_entry);
d3832c88d562 [gaim-migrate @ 5691]
Benjamin Zeiss
parents: 5228
diff changeset
778 g_ptr_array_add(exec_widgets,dialog->exec_cmd_browse);
7035
76bca80cd91d [gaim-migrate @ 7598]
Christian Hammond <chipx86@chipx86.com>
parents: 6982
diff changeset
779
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
780 g_signal_connect(G_OBJECT(dialog->exec_cmd), "clicked",
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15496
diff changeset
781 G_CALLBACK(pidgin_toggle_sensitive_array),
5319
d3832c88d562 [gaim-migrate @ 5691]
Benjamin Zeiss
parents: 5228
diff changeset
782 exec_widgets);
d3832c88d562 [gaim-migrate @ 5691]
Benjamin Zeiss
parents: 5228
diff changeset
783 g_signal_connect(G_OBJECT(dialog->exec_cmd_browse), "clicked",
5857
52cff8a95261 [gaim-migrate @ 6288]
Christian Hammond <chipx86@chipx86.com>
parents: 5676
diff changeset
784 G_CALLBACK(filesel),
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
785 dialog->exec_cmd_entry);
15315
048e3e051d67 [gaim-migrate @ 18043]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 15058
diff changeset
786 g_object_set_data_full(G_OBJECT(dialog->window), "exec-widgets",
048e3e051d67 [gaim-migrate @ 18043]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 15058
diff changeset
787 exec_widgets, (GDestroyNotify)g_ptr_array_free);
5319
d3832c88d562 [gaim-migrate @ 5691]
Benjamin Zeiss
parents: 5228
diff changeset
788
d3832c88d562 [gaim-migrate @ 5691]
Benjamin Zeiss
parents: 5228
diff changeset
789 sound_widgets = g_ptr_array_new();
d3832c88d562 [gaim-migrate @ 5691]
Benjamin Zeiss
parents: 5228
diff changeset
790 g_ptr_array_add(sound_widgets,dialog->play_sound_entry);
d3832c88d562 [gaim-migrate @ 5691]
Benjamin Zeiss
parents: 5228
diff changeset
791 g_ptr_array_add(sound_widgets,dialog->play_sound_browse);
d3832c88d562 [gaim-migrate @ 5691]
Benjamin Zeiss
parents: 5228
diff changeset
792 g_ptr_array_add(sound_widgets,dialog->play_sound_test);
23260
56fda1590379 Make it more obvious that there is a default buddy pounce sound, and
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 22214
diff changeset
793 g_ptr_array_add(sound_widgets,dialog->play_sound_reset);
5319
d3832c88d562 [gaim-migrate @ 5691]
Benjamin Zeiss
parents: 5228
diff changeset
794
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
795 g_signal_connect(G_OBJECT(dialog->play_sound), "clicked",
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15496
diff changeset
796 G_CALLBACK(pidgin_toggle_sensitive_array),
5319
d3832c88d562 [gaim-migrate @ 5691]
Benjamin Zeiss
parents: 5228
diff changeset
797 sound_widgets);
d3832c88d562 [gaim-migrate @ 5691]
Benjamin Zeiss
parents: 5228
diff changeset
798 g_signal_connect(G_OBJECT(dialog->play_sound_browse), "clicked",
5857
52cff8a95261 [gaim-migrate @ 6288]
Christian Hammond <chipx86@chipx86.com>
parents: 5676
diff changeset
799 G_CALLBACK(filesel),
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
800 dialog->play_sound_entry);
5319
d3832c88d562 [gaim-migrate @ 5691]
Benjamin Zeiss
parents: 5228
diff changeset
801 g_signal_connect(G_OBJECT(dialog->play_sound_test), "clicked",
d3832c88d562 [gaim-migrate @ 5691]
Benjamin Zeiss
parents: 5228
diff changeset
802 G_CALLBACK(pounce_test_sound),
d3832c88d562 [gaim-migrate @ 5691]
Benjamin Zeiss
parents: 5228
diff changeset
803 dialog->play_sound_entry);
23260
56fda1590379 Make it more obvious that there is a default buddy pounce sound, and
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 22214
diff changeset
804 g_signal_connect(G_OBJECT(dialog->play_sound_reset), "clicked",
56fda1590379 Make it more obvious that there is a default buddy pounce sound, and
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 22214
diff changeset
805 G_CALLBACK(pounce_reset_sound),
56fda1590379 Make it more obvious that there is a default buddy pounce sound, and
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 22214
diff changeset
806 dialog->play_sound_entry);
15315
048e3e051d67 [gaim-migrate @ 18043]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 15058
diff changeset
807 g_object_set_data_full(G_OBJECT(dialog->window), "sound-widgets",
048e3e051d67 [gaim-migrate @ 18043]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 15058
diff changeset
808 sound_widgets, (GDestroyNotify)g_ptr_array_free);
7035
76bca80cd91d [gaim-migrate @ 7598]
Christian Hammond <chipx86@chipx86.com>
parents: 6982
diff changeset
809
17388
8be39f0de528 Allow formatted text in the pounce dialog. Also, use the same code to
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 16490
diff changeset
810 g_signal_connect_swapped(G_OBJECT(dialog->send_msg_entry), "format_function_clear",
8be39f0de528 Allow formatted text in the pounce dialog. Also, use the same code to
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 16490
diff changeset
811 G_CALLBACK(reset_send_msg_entry), dialog);
8be39f0de528 Allow formatted text in the pounce dialog. Also, use the same code to
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 16490
diff changeset
812 g_signal_connect_swapped(G_OBJECT(dialog->account_menu), "changed",
8be39f0de528 Allow formatted text in the pounce dialog. Also, use the same code to
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 16490
diff changeset
813 G_CALLBACK(reset_send_msg_entry), dialog);
8be39f0de528 Allow formatted text in the pounce dialog. Also, use the same code to
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 16490
diff changeset
814
8be39f0de528 Allow formatted text in the pounce dialog. Also, use the same code to
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 16490
diff changeset
815 g_signal_connect(G_OBJECT(dialog->send_msg_entry), "message_send",
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
816 G_CALLBACK(save_pounce_cb), dialog);
12934
d3ce70776eb5 [gaim-migrate @ 15287]
Richard Nelson <wabz@pidgin.im>
parents: 12694
diff changeset
817 g_signal_connect(G_OBJECT(dialog->popup_entry), "activate",
d3ce70776eb5 [gaim-migrate @ 15287]
Richard Nelson <wabz@pidgin.im>
parents: 12694
diff changeset
818 G_CALLBACK(save_pounce_cb), dialog);
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
819 g_signal_connect(G_OBJECT(dialog->exec_cmd_entry), "activate",
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
820 G_CALLBACK(save_pounce_cb), dialog);
7035
76bca80cd91d [gaim-migrate @ 7598]
Christian Hammond <chipx86@chipx86.com>
parents: 6982
diff changeset
821
12694
526fc1678184 [gaim-migrate @ 15037]
Lucio Maciel
parents: 12336
diff changeset
822 /* Create the "Options" frame. */
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15496
diff changeset
823 frame = pidgin_make_frame(vbox2, _("Options"));
12694
526fc1678184 [gaim-migrate @ 15037]
Lucio Maciel
parents: 12336
diff changeset
824
526fc1678184 [gaim-migrate @ 15037]
Lucio Maciel
parents: 12336
diff changeset
825 table = gtk_table_new(2, 1, FALSE);
526fc1678184 [gaim-migrate @ 15037]
Lucio Maciel
parents: 12336
diff changeset
826 gtk_container_add(GTK_CONTAINER(frame), table);
15882
1dbd5756b7bf More Gaim to Pidgin stuff
Sean Egan <seanegan@pidgin.im>
parents: 15577
diff changeset
827 gtk_table_set_col_spacings(GTK_TABLE(table), PIDGIN_HIG_BORDER);
12694
526fc1678184 [gaim-migrate @ 15037]
Lucio Maciel
parents: 12336
diff changeset
828 gtk_widget_show(table);
526fc1678184 [gaim-migrate @ 15037]
Lucio Maciel
parents: 12336
diff changeset
829
526fc1678184 [gaim-migrate @ 15037]
Lucio Maciel
parents: 12336
diff changeset
830 dialog->on_away =
17655
64f25df341e4 Hopefully make what this checkbox does a little more clear by changing
Etan Reisner <deryni@pidgin.im>
parents: 16490
diff changeset
831 gtk_check_button_new_with_mnemonic(_("P_ounce only when my status is not Available"));
12694
526fc1678184 [gaim-migrate @ 15037]
Lucio Maciel
parents: 12336
diff changeset
832 gtk_table_attach(GTK_TABLE(table), dialog->on_away, 0, 1, 0, 1,
526fc1678184 [gaim-migrate @ 15037]
Lucio Maciel
parents: 12336
diff changeset
833 GTK_FILL, 0, 0, 0);
526fc1678184 [gaim-migrate @ 15037]
Lucio Maciel
parents: 12336
diff changeset
834
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
835 dialog->save_pounce = gtk_check_button_new_with_mnemonic(
12186
fddd08d58f3b [gaim-migrate @ 14488]
Mark Doliner <markdoliner@pidgin.im>
parents: 12144
diff changeset
836 _("_Recurring"));
12694
526fc1678184 [gaim-migrate @ 15037]
Lucio Maciel
parents: 12336
diff changeset
837 gtk_table_attach(GTK_TABLE(table), dialog->save_pounce, 0, 1, 1, 2,
526fc1678184 [gaim-migrate @ 15037]
Lucio Maciel
parents: 12336
diff changeset
838 GTK_FILL, 0, 0, 0);
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
839
12694
526fc1678184 [gaim-migrate @ 15037]
Lucio Maciel
parents: 12336
diff changeset
840 gtk_widget_show(dialog->on_away);
526fc1678184 [gaim-migrate @ 15037]
Lucio Maciel
parents: 12336
diff changeset
841 gtk_widget_show(dialog->save_pounce);
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
842
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
843 /* Cancel button */
19546
b7a8a86af65a Use GtkDialog more often. Thanks nix_nix. Fixes #2618
Sean Egan <seanegan@pidgin.im>
parents: 18966
diff changeset
844 button = gtk_dialog_add_button(GTK_DIALOG(window), GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL);
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
845 g_signal_connect(G_OBJECT(button), "clicked",
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
846 G_CALLBACK(cancel_cb), dialog);
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
847
25390
02100938b030 Make dialogs that double as add and save dialogs indicate the current action
Etan Reisner <deryni@pidgin.im>
parents: 24594
diff changeset
848 /* Save/Add button */
02100938b030 Make dialogs that double as add and save dialogs indicate the current action
Etan Reisner <deryni@pidgin.im>
parents: 24594
diff changeset
849 dialog->save_button = button = gtk_dialog_add_button(GTK_DIALOG(window),
02100938b030 Make dialogs that double as add and save dialogs indicate the current action
Etan Reisner <deryni@pidgin.im>
parents: 24594
diff changeset
850 (cur_pounce == NULL ? GTK_STOCK_ADD : GTK_STOCK_SAVE),
02100938b030 Make dialogs that double as add and save dialogs indicate the current action
Etan Reisner <deryni@pidgin.im>
parents: 24594
diff changeset
851 GTK_RESPONSE_OK);
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
852 g_signal_connect(G_OBJECT(button), "clicked",
25390
02100938b030 Make dialogs that double as add and save dialogs indicate the current action
Etan Reisner <deryni@pidgin.im>
parents: 24594
diff changeset
853 G_CALLBACK(save_pounce_cb), dialog);
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
854
5876
c12b198bde14 [gaim-migrate @ 6308]
Christian Hammond <chipx86@chipx86.com>
parents: 5875
diff changeset
855 if (*gtk_entry_get_text(GTK_ENTRY(dialog->buddy_entry)) == '\0')
c12b198bde14 [gaim-migrate @ 6308]
Christian Hammond <chipx86@chipx86.com>
parents: 5875
diff changeset
856 gtk_widget_set_sensitive(button, FALSE);
c12b198bde14 [gaim-migrate @ 6308]
Christian Hammond <chipx86@chipx86.com>
parents: 5875
diff changeset
857
8803
79bc4ecbcac7 [gaim-migrate @ 9565]
Christian Hammond <chipx86@chipx86.com>
parents: 8259
diff changeset
858 /* Setup drag-and-drop */
79bc4ecbcac7 [gaim-migrate @ 9565]
Christian Hammond <chipx86@chipx86.com>
parents: 8259
diff changeset
859 gtk_drag_dest_set(window,
79bc4ecbcac7 [gaim-migrate @ 9565]
Christian Hammond <chipx86@chipx86.com>
parents: 8259
diff changeset
860 GTK_DEST_DEFAULT_MOTION |
79bc4ecbcac7 [gaim-migrate @ 9565]
Christian Hammond <chipx86@chipx86.com>
parents: 8259
diff changeset
861 GTK_DEST_DEFAULT_DROP,
79bc4ecbcac7 [gaim-migrate @ 9565]
Christian Hammond <chipx86@chipx86.com>
parents: 8259
diff changeset
862 dnd_targets,
79bc4ecbcac7 [gaim-migrate @ 9565]
Christian Hammond <chipx86@chipx86.com>
parents: 8259
diff changeset
863 sizeof(dnd_targets) / sizeof(GtkTargetEntry),
79bc4ecbcac7 [gaim-migrate @ 9565]
Christian Hammond <chipx86@chipx86.com>
parents: 8259
diff changeset
864 GDK_ACTION_COPY);
79bc4ecbcac7 [gaim-migrate @ 9565]
Christian Hammond <chipx86@chipx86.com>
parents: 8259
diff changeset
865 gtk_drag_dest_set(dialog->buddy_entry,
79bc4ecbcac7 [gaim-migrate @ 9565]
Christian Hammond <chipx86@chipx86.com>
parents: 8259
diff changeset
866 GTK_DEST_DEFAULT_MOTION |
79bc4ecbcac7 [gaim-migrate @ 9565]
Christian Hammond <chipx86@chipx86.com>
parents: 8259
diff changeset
867 GTK_DEST_DEFAULT_DROP,
79bc4ecbcac7 [gaim-migrate @ 9565]
Christian Hammond <chipx86@chipx86.com>
parents: 8259
diff changeset
868 dnd_targets,
79bc4ecbcac7 [gaim-migrate @ 9565]
Christian Hammond <chipx86@chipx86.com>
parents: 8259
diff changeset
869 sizeof(dnd_targets) / sizeof(GtkTargetEntry),
79bc4ecbcac7 [gaim-migrate @ 9565]
Christian Hammond <chipx86@chipx86.com>
parents: 8259
diff changeset
870 GDK_ACTION_COPY);
79bc4ecbcac7 [gaim-migrate @ 9565]
Christian Hammond <chipx86@chipx86.com>
parents: 8259
diff changeset
871
79bc4ecbcac7 [gaim-migrate @ 9565]
Christian Hammond <chipx86@chipx86.com>
parents: 8259
diff changeset
872 g_signal_connect(G_OBJECT(window), "drag_data_received",
79bc4ecbcac7 [gaim-migrate @ 9565]
Christian Hammond <chipx86@chipx86.com>
parents: 8259
diff changeset
873 G_CALLBACK(pounce_dnd_recv), dialog);
79bc4ecbcac7 [gaim-migrate @ 9565]
Christian Hammond <chipx86@chipx86.com>
parents: 8259
diff changeset
874 g_signal_connect(G_OBJECT(dialog->buddy_entry), "drag_data_received",
79bc4ecbcac7 [gaim-migrate @ 9565]
Christian Hammond <chipx86@chipx86.com>
parents: 8259
diff changeset
875 G_CALLBACK(pounce_dnd_recv), dialog);
79bc4ecbcac7 [gaim-migrate @ 9565]
Christian Hammond <chipx86@chipx86.com>
parents: 8259
diff changeset
876
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
877 /* Set the values of stuff. */
9205
8c4dbbe6386f [gaim-migrate @ 10000]
Christian Hammond <chipx86@chipx86.com>
parents: 9191
diff changeset
878 if (cur_pounce != NULL)
8c4dbbe6386f [gaim-migrate @ 10000]
Christian Hammond <chipx86@chipx86.com>
parents: 9191
diff changeset
879 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
880 PurplePounceEvent events = purple_pounce_get_events(cur_pounce);
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
881 PurplePounceOption options = purple_pounce_get_options(cur_pounce);
5864
86822afeeab0 [gaim-migrate @ 6295]
Christian Hammond <chipx86@chipx86.com>
parents: 5857
diff changeset
882 const char *value;
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
883
12694
526fc1678184 [gaim-migrate @ 15037]
Lucio Maciel
parents: 12336
diff changeset
884 /* Options */
526fc1678184 [gaim-migrate @ 15037]
Lucio Maciel
parents: 12336
diff changeset
885 gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(dialog->on_away),
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
886 (options & PURPLE_POUNCE_OPTION_AWAY));
12694
526fc1678184 [gaim-migrate @ 15037]
Lucio Maciel
parents: 12336
diff changeset
887
5864
86822afeeab0 [gaim-migrate @ 6295]
Christian Hammond <chipx86@chipx86.com>
parents: 5857
diff changeset
888 /* Events */
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
889 gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(dialog->signon),
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
890 (events & PURPLE_POUNCE_SIGNON));
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
891 gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(dialog->signoff),
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
892 (events & PURPLE_POUNCE_SIGNOFF));
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
893 gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(dialog->away),
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
894 (events & PURPLE_POUNCE_AWAY));
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
895 gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(dialog->away_return),
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
896 (events & PURPLE_POUNCE_AWAY_RETURN));
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
897 gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(dialog->idle),
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
898 (events & PURPLE_POUNCE_IDLE));
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
899 gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(dialog->idle_return),
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
900 (events & PURPLE_POUNCE_IDLE_RETURN));
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
901 gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(dialog->typing),
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
902 (events & PURPLE_POUNCE_TYPING));
13844
835b8f7b3d1d [gaim-migrate @ 16295]
Mark Doliner <markdoliner@pidgin.im>
parents: 13775
diff changeset
903 gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(dialog->typed),
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
904 (events & PURPLE_POUNCE_TYPED));
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
905 gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(dialog->stop_typing),
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
906 (events & PURPLE_POUNCE_TYPING_STOPPED));
12694
526fc1678184 [gaim-migrate @ 15037]
Lucio Maciel
parents: 12336
diff changeset
907 gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(dialog->message_recv),
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
908 (events & PURPLE_POUNCE_MESSAGE_RECEIVED));
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
909
5864
86822afeeab0 [gaim-migrate @ 6295]
Christian Hammond <chipx86@chipx86.com>
parents: 5857
diff changeset
910 /* Actions */
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
911 gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(dialog->open_win),
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
912 purple_pounce_action_is_enabled(cur_pounce, "open-window"));
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
913 gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(dialog->popup),
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
914 purple_pounce_action_is_enabled(cur_pounce, "popup-notify"));
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
915 gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(dialog->send_msg),
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
916 purple_pounce_action_is_enabled(cur_pounce, "send-message"));
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
917 gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(dialog->exec_cmd),
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
918 purple_pounce_action_is_enabled(cur_pounce, "execute-command"));
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
919 gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(dialog->play_sound),
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
920 purple_pounce_action_is_enabled(cur_pounce, "play-sound"));
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
921
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
922 gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(dialog->save_pounce),
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
923 purple_pounce_get_save(cur_pounce));
5864
86822afeeab0 [gaim-migrate @ 6295]
Christian Hammond <chipx86@chipx86.com>
parents: 5857
diff changeset
924
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
925 if ((value = purple_pounce_action_get_attribute(cur_pounce,
5864
86822afeeab0 [gaim-migrate @ 6295]
Christian Hammond <chipx86@chipx86.com>
parents: 5857
diff changeset
926 "send-message",
9205
8c4dbbe6386f [gaim-migrate @ 10000]
Christian Hammond <chipx86@chipx86.com>
parents: 9191
diff changeset
927 "message")) != NULL)
8c4dbbe6386f [gaim-migrate @ 10000]
Christian Hammond <chipx86@chipx86.com>
parents: 9191
diff changeset
928 {
17388
8be39f0de528 Allow formatted text in the pounce dialog. Also, use the same code to
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 16490
diff changeset
929 gtk_imhtml_append_text(GTK_IMHTML(dialog->send_msg_entry), value, 0);
5864
86822afeeab0 [gaim-migrate @ 6295]
Christian Hammond <chipx86@chipx86.com>
parents: 5857
diff changeset
930 }
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
931
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
932 if ((value = purple_pounce_action_get_attribute(cur_pounce,
12934
d3ce70776eb5 [gaim-migrate @ 15287]
Richard Nelson <wabz@pidgin.im>
parents: 12694
diff changeset
933 "popup-notify",
d3ce70776eb5 [gaim-migrate @ 15287]
Richard Nelson <wabz@pidgin.im>
parents: 12694
diff changeset
934 "reason")) != NULL)
d3ce70776eb5 [gaim-migrate @ 15287]
Richard Nelson <wabz@pidgin.im>
parents: 12694
diff changeset
935 {
d3ce70776eb5 [gaim-migrate @ 15287]
Richard Nelson <wabz@pidgin.im>
parents: 12694
diff changeset
936 gtk_entry_set_text(GTK_ENTRY(dialog->popup_entry), value);
d3ce70776eb5 [gaim-migrate @ 15287]
Richard Nelson <wabz@pidgin.im>
parents: 12694
diff changeset
937 }
d3ce70776eb5 [gaim-migrate @ 15287]
Richard Nelson <wabz@pidgin.im>
parents: 12694
diff changeset
938
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
939 if ((value = purple_pounce_action_get_attribute(cur_pounce,
5864
86822afeeab0 [gaim-migrate @ 6295]
Christian Hammond <chipx86@chipx86.com>
parents: 5857
diff changeset
940 "execute-command",
9205
8c4dbbe6386f [gaim-migrate @ 10000]
Christian Hammond <chipx86@chipx86.com>
parents: 9191
diff changeset
941 "command")) != NULL)
8c4dbbe6386f [gaim-migrate @ 10000]
Christian Hammond <chipx86@chipx86.com>
parents: 9191
diff changeset
942 {
5864
86822afeeab0 [gaim-migrate @ 6295]
Christian Hammond <chipx86@chipx86.com>
parents: 5857
diff changeset
943 gtk_entry_set_text(GTK_ENTRY(dialog->exec_cmd_entry), value);
86822afeeab0 [gaim-migrate @ 6295]
Christian Hammond <chipx86@chipx86.com>
parents: 5857
diff changeset
944 }
86822afeeab0 [gaim-migrate @ 6295]
Christian Hammond <chipx86@chipx86.com>
parents: 5857
diff changeset
945
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
946 if ((value = purple_pounce_action_get_attribute(cur_pounce,
5864
86822afeeab0 [gaim-migrate @ 6295]
Christian Hammond <chipx86@chipx86.com>
parents: 5857
diff changeset
947 "play-sound",
9205
8c4dbbe6386f [gaim-migrate @ 10000]
Christian Hammond <chipx86@chipx86.com>
parents: 9191
diff changeset
948 "filename")) != NULL)
8c4dbbe6386f [gaim-migrate @ 10000]
Christian Hammond <chipx86@chipx86.com>
parents: 9191
diff changeset
949 {
23260
56fda1590379 Make it more obvious that there is a default buddy pounce sound, and
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 22214
diff changeset
950 gtk_entry_set_text(GTK_ENTRY(dialog->play_sound_entry), (value && *value != '\0') ? value : _("(default)"));
5864
86822afeeab0 [gaim-migrate @ 6295]
Christian Hammond <chipx86@chipx86.com>
parents: 5857
diff changeset
951 }
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
952 }
9205
8c4dbbe6386f [gaim-migrate @ 10000]
Christian Hammond <chipx86@chipx86.com>
parents: 9191
diff changeset
953 else
8c4dbbe6386f [gaim-migrate @ 10000]
Christian Hammond <chipx86@chipx86.com>
parents: 9191
diff changeset
954 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
955 PurpleBuddy *buddy = NULL;
9205
8c4dbbe6386f [gaim-migrate @ 10000]
Christian Hammond <chipx86@chipx86.com>
parents: 9191
diff changeset
956
8c4dbbe6386f [gaim-migrate @ 10000]
Christian Hammond <chipx86@chipx86.com>
parents: 9191
diff changeset
957 if (name != NULL)
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
958 buddy = purple_find_buddy(account, name);
9205
8c4dbbe6386f [gaim-migrate @ 10000]
Christian Hammond <chipx86@chipx86.com>
parents: 9191
diff changeset
959
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
960 /* Set some defaults */
9205
8c4dbbe6386f [gaim-migrate @ 10000]
Christian Hammond <chipx86@chipx86.com>
parents: 9191
diff changeset
961 if (buddy == NULL)
8c4dbbe6386f [gaim-migrate @ 10000]
Christian Hammond <chipx86@chipx86.com>
parents: 9191
diff changeset
962 {
8c4dbbe6386f [gaim-migrate @ 10000]
Christian Hammond <chipx86@chipx86.com>
parents: 9191
diff changeset
963 gtk_toggle_button_set_active(
8c4dbbe6386f [gaim-migrate @ 10000]
Christian Hammond <chipx86@chipx86.com>
parents: 9191
diff changeset
964 GTK_TOGGLE_BUTTON(dialog->signon), TRUE);
8c4dbbe6386f [gaim-migrate @ 10000]
Christian Hammond <chipx86@chipx86.com>
parents: 9191
diff changeset
965 }
8c4dbbe6386f [gaim-migrate @ 10000]
Christian Hammond <chipx86@chipx86.com>
parents: 9191
diff changeset
966 else
8c4dbbe6386f [gaim-migrate @ 10000]
Christian Hammond <chipx86@chipx86.com>
parents: 9191
diff changeset
967 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
968 if (!PURPLE_BUDDY_IS_ONLINE(buddy))
9205
8c4dbbe6386f [gaim-migrate @ 10000]
Christian Hammond <chipx86@chipx86.com>
parents: 9191
diff changeset
969 {
8c4dbbe6386f [gaim-migrate @ 10000]
Christian Hammond <chipx86@chipx86.com>
parents: 9191
diff changeset
970 gtk_toggle_button_set_active(
8c4dbbe6386f [gaim-migrate @ 10000]
Christian Hammond <chipx86@chipx86.com>
parents: 9191
diff changeset
971 GTK_TOGGLE_BUTTON(dialog->signon), TRUE);
8c4dbbe6386f [gaim-migrate @ 10000]
Christian Hammond <chipx86@chipx86.com>
parents: 9191
diff changeset
972 }
8c4dbbe6386f [gaim-migrate @ 10000]
Christian Hammond <chipx86@chipx86.com>
parents: 9191
diff changeset
973 else
8c4dbbe6386f [gaim-migrate @ 10000]
Christian Hammond <chipx86@chipx86.com>
parents: 9191
diff changeset
974 {
8c4dbbe6386f [gaim-migrate @ 10000]
Christian Hammond <chipx86@chipx86.com>
parents: 9191
diff changeset
975 gboolean default_set = FALSE;
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
976 PurplePresence *presence = purple_buddy_get_presence(buddy);
9205
8c4dbbe6386f [gaim-migrate @ 10000]
Christian Hammond <chipx86@chipx86.com>
parents: 9191
diff changeset
977
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
978 if (purple_presence_is_idle(presence))
9205
8c4dbbe6386f [gaim-migrate @ 10000]
Christian Hammond <chipx86@chipx86.com>
parents: 9191
diff changeset
979 {
8c4dbbe6386f [gaim-migrate @ 10000]
Christian Hammond <chipx86@chipx86.com>
parents: 9191
diff changeset
980 gtk_toggle_button_set_active(
8c4dbbe6386f [gaim-migrate @ 10000]
Christian Hammond <chipx86@chipx86.com>
parents: 9191
diff changeset
981 GTK_TOGGLE_BUTTON(dialog->idle_return), TRUE);
8c4dbbe6386f [gaim-migrate @ 10000]
Christian Hammond <chipx86@chipx86.com>
parents: 9191
diff changeset
982
8c4dbbe6386f [gaim-migrate @ 10000]
Christian Hammond <chipx86@chipx86.com>
parents: 9191
diff changeset
983 default_set = TRUE;
8c4dbbe6386f [gaim-migrate @ 10000]
Christian Hammond <chipx86@chipx86.com>
parents: 9191
diff changeset
984 }
8c4dbbe6386f [gaim-migrate @ 10000]
Christian Hammond <chipx86@chipx86.com>
parents: 9191
diff changeset
985
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
986 if (!purple_presence_is_available(presence))
9205
8c4dbbe6386f [gaim-migrate @ 10000]
Christian Hammond <chipx86@chipx86.com>
parents: 9191
diff changeset
987 {
8c4dbbe6386f [gaim-migrate @ 10000]
Christian Hammond <chipx86@chipx86.com>
parents: 9191
diff changeset
988 gtk_toggle_button_set_active(
8c4dbbe6386f [gaim-migrate @ 10000]
Christian Hammond <chipx86@chipx86.com>
parents: 9191
diff changeset
989 GTK_TOGGLE_BUTTON(dialog->away_return), TRUE);
8c4dbbe6386f [gaim-migrate @ 10000]
Christian Hammond <chipx86@chipx86.com>
parents: 9191
diff changeset
990
8c4dbbe6386f [gaim-migrate @ 10000]
Christian Hammond <chipx86@chipx86.com>
parents: 9191
diff changeset
991 default_set = TRUE;
8c4dbbe6386f [gaim-migrate @ 10000]
Christian Hammond <chipx86@chipx86.com>
parents: 9191
diff changeset
992 }
8c4dbbe6386f [gaim-migrate @ 10000]
Christian Hammond <chipx86@chipx86.com>
parents: 9191
diff changeset
993
8c4dbbe6386f [gaim-migrate @ 10000]
Christian Hammond <chipx86@chipx86.com>
parents: 9191
diff changeset
994 if (!default_set)
8c4dbbe6386f [gaim-migrate @ 10000]
Christian Hammond <chipx86@chipx86.com>
parents: 9191
diff changeset
995 {
8c4dbbe6386f [gaim-migrate @ 10000]
Christian Hammond <chipx86@chipx86.com>
parents: 9191
diff changeset
996 gtk_toggle_button_set_active(
8c4dbbe6386f [gaim-migrate @ 10000]
Christian Hammond <chipx86@chipx86.com>
parents: 9191
diff changeset
997 GTK_TOGGLE_BUTTON(dialog->signon), TRUE);
8c4dbbe6386f [gaim-migrate @ 10000]
Christian Hammond <chipx86@chipx86.com>
parents: 9191
diff changeset
998 }
8c4dbbe6386f [gaim-migrate @ 10000]
Christian Hammond <chipx86@chipx86.com>
parents: 9191
diff changeset
999 }
8c4dbbe6386f [gaim-migrate @ 10000]
Christian Hammond <chipx86@chipx86.com>
parents: 9191
diff changeset
1000 }
8c4dbbe6386f [gaim-migrate @ 10000]
Christian Hammond <chipx86@chipx86.com>
parents: 9191
diff changeset
1001
9206
57a4db675f8d [gaim-migrate @ 10001]
Christian Hammond <chipx86@chipx86.com>
parents: 9205
diff changeset
1002 gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(dialog->open_win),
16123
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
1003 purple_prefs_get_bool(PIDGIN_PREFS_ROOT "/pounces/default_actions/open-window"));
9206
57a4db675f8d [gaim-migrate @ 10001]
Christian Hammond <chipx86@chipx86.com>
parents: 9205
diff changeset
1004 gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(dialog->popup),
16123
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
1005 purple_prefs_get_bool(PIDGIN_PREFS_ROOT "/pounces/default_actions/popup-notify"));
9206
57a4db675f8d [gaim-migrate @ 10001]
Christian Hammond <chipx86@chipx86.com>
parents: 9205
diff changeset
1006 gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(dialog->send_msg),
16123
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
1007 purple_prefs_get_bool(PIDGIN_PREFS_ROOT "/pounces/default_actions/send-message"));
9206
57a4db675f8d [gaim-migrate @ 10001]
Christian Hammond <chipx86@chipx86.com>
parents: 9205
diff changeset
1008 gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(dialog->exec_cmd),
16123
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
1009 purple_prefs_get_bool(PIDGIN_PREFS_ROOT "/pounces/default_actions/execute-command"));
9206
57a4db675f8d [gaim-migrate @ 10001]
Christian Hammond <chipx86@chipx86.com>
parents: 9205
diff changeset
1010 gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(dialog->play_sound),
16123
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
1011 purple_prefs_get_bool(PIDGIN_PREFS_ROOT "/pounces/default_actions/play-sound"));
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1012 }
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1013
19786
33ab83cd846b Don't show *all*\!
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 19546
diff changeset
1014 gtk_widget_show(vbox2);
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1015 gtk_widget_show(window);
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1016 }
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1017
12136
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1018 static gboolean
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1019 pounces_manager_configure_cb(GtkWidget *widget, GdkEventConfigure *event, PouncesManager *dialog)
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1020 {
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1021 if (GTK_WIDGET_VISIBLE(widget)) {
16123
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
1022 purple_prefs_set_int(PIDGIN_PREFS_ROOT "/pounces/dialog/width", event->width);
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
1023 purple_prefs_set_int(PIDGIN_PREFS_ROOT "/pounces/dialog/height", event->height);
12136
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1024 }
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1025
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1026 return FALSE;
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1027 }
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1028
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1029 static gboolean
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1030 pounces_manager_find_pounce(GtkTreeIter *iter, PurplePounce *pounce)
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1031 {
12136
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1032 GtkTreeModel *model = GTK_TREE_MODEL(pounces_manager->model);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1033 PurplePounce *p;
12136
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1034
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1035 if (!gtk_tree_model_get_iter_first(model, iter))
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1036 return FALSE;
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1037
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1038 gtk_tree_model_get(model, iter, POUNCES_MANAGER_COLUMN_POUNCE, &p, -1);
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1039 if (pounce == p)
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1040 return TRUE;
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1041
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1042 while (gtk_tree_model_iter_next(model, iter))
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1043 {
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1044 gtk_tree_model_get(model, iter, POUNCES_MANAGER_COLUMN_POUNCE, &p, -1);
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1045 if (pounce == p)
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1046 return TRUE;
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1047 }
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1048
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1049 return FALSE;
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1050 }
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1051
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1052 static gboolean
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1053 pounces_manager_destroy_cb(GtkWidget *widget, GdkEvent *event, gpointer user_data)
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1054 {
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1055 PouncesManager *dialog = user_data;
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1056
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1057 dialog->window = NULL;
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15496
diff changeset
1058 pidgin_pounces_manager_hide();
12136
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1059
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1060 return FALSE;
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1061 }
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1062
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1063 static void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1064 pounces_manager_connection_cb(PurpleConnection *gc, GtkWidget *add_button)
12136
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1065 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1066 gtk_widget_set_sensitive(add_button, (purple_connections_get_all() != NULL));
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1067 }
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1068
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1069 static void
12136
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1070 pounces_manager_add_cb(GtkButton *button, gpointer user_data)
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1071 {
21214
db28e29a4990 Reverted changes from ef7ac46f90a801547f7dfc4295927a956f90e869 to
Richard Laager <rlaager@pidgin.im>
parents: 21171
diff changeset
1072 pidgin_pounce_editor_show(NULL, NULL, NULL);
12136
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1073 }
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1074
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1075 static void
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1076 pounces_manager_modify_foreach(GtkTreeModel *model, GtkTreePath *path,
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1077 GtkTreeIter *iter, gpointer user_data)
5153
4865538db77a [gaim-migrate @ 5517]
Christian Hammond <chipx86@chipx86.com>
parents: 5054
diff changeset
1078 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1079 PurplePounce *pounce;
12136
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1080
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1081 gtk_tree_model_get(model, iter, POUNCES_MANAGER_COLUMN_POUNCE, &pounce, -1);
21214
db28e29a4990 Reverted changes from ef7ac46f90a801547f7dfc4295927a956f90e869 to
Richard Laager <rlaager@pidgin.im>
parents: 21171
diff changeset
1082 pidgin_pounce_editor_show(NULL, NULL, pounce);
12136
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1083 }
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1084
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1085 static void
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1086 pounces_manager_modify_cb(GtkButton *button, gpointer user_data)
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1087 {
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1088 PouncesManager *dialog = user_data;
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1089 GtkTreeSelection *selection;
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1090
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1091 selection = gtk_tree_view_get_selection(GTK_TREE_VIEW(dialog->treeview));
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1092
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1093 gtk_tree_selection_selected_foreach(selection, pounces_manager_modify_foreach, user_data);
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1094 }
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1095
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1096 static void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1097 pounces_manager_delete_confirm_cb(PurplePounce *pounce)
12136
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1098 {
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1099 GtkTreeIter iter;
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1100
13172
4e7621289194 [gaim-migrate @ 15534]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 13120
diff changeset
1101 if (pounces_manager && pounces_manager_find_pounce(&iter, pounce))
12136
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1102 gtk_list_store_remove(pounces_manager->model, &iter);
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1103
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1104 purple_request_close_with_handle(pounce);
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1105 purple_pounce_destroy(pounce);
5153
4865538db77a [gaim-migrate @ 5517]
Christian Hammond <chipx86@chipx86.com>
parents: 5054
diff changeset
1106 }
4865538db77a [gaim-migrate @ 5517]
Christian Hammond <chipx86@chipx86.com>
parents: 5054
diff changeset
1107
4865538db77a [gaim-migrate @ 5517]
Christian Hammond <chipx86@chipx86.com>
parents: 5054
diff changeset
1108 static void
12136
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1109 pounces_manager_delete_foreach(GtkTreeModel *model, GtkTreePath *path,
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1110 GtkTreeIter *iter, gpointer user_data)
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1111 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1112 PurplePounce *pounce;
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1113 PurpleAccount *account;
12136
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1114 const char *pouncer, *pouncee;
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1115 char *buf;
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1116
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1117 gtk_tree_model_get(model, iter, POUNCES_MANAGER_COLUMN_POUNCE, &pounce, -1);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1118 account = purple_pounce_get_pouncer(pounce);
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1119 pouncer = purple_account_get_username(account);
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1120 pouncee = purple_pounce_get_pouncee(pounce);
12136
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1121
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1122 buf = g_strdup_printf(_("Are you sure you want to delete the pounce on %s for %s?"), pouncee, pouncer);
21175
c6d76b49c206 disapproval of revision '8ba833993a115415727bb1b70362e0bd1603c169'
Richard Laager <rlaager@pidgin.im>
parents: 21174
diff changeset
1123 purple_request_action(pounce, NULL, buf, NULL, 0,
16490
68c22924d66b Added account, who, and conversation parameters to the request API calls, and updated all code to match. I can't compile the Perl module, so I'd appreciate it if someone who knows it would verify that this doesn't break Perl.
Evan Schoenberg <evands@pidgin.im>
parents: 16254
diff changeset
1124 account, pouncee, NULL,
21175
c6d76b49c206 disapproval of revision '8ba833993a115415727bb1b70362e0bd1603c169'
Richard Laager <rlaager@pidgin.im>
parents: 21174
diff changeset
1125 pounce, 2,
12136
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1126 _("Delete"), pounces_manager_delete_confirm_cb,
13228
d1ef216aba5c [gaim-migrate @ 15592]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 13172
diff changeset
1127 _("Cancel"), NULL);
12136
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1128 g_free(buf);
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1129 }
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1130
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1131 static void
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1132 pounces_manager_delete_cb(GtkButton *button, gpointer user_data)
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1133 {
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1134 PouncesManager *dialog = user_data;
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1135 GtkTreeSelection *selection;
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1136
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1137 selection = gtk_tree_view_get_selection(GTK_TREE_VIEW(dialog->treeview));
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1138
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1139 gtk_tree_selection_selected_foreach(selection, pounces_manager_delete_foreach, user_data);
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1140 }
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1141
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1142 static void
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1143 pounces_manager_close_cb(GtkButton *button, gpointer user_data)
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1144 {
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15496
diff changeset
1145 pidgin_pounces_manager_hide();
12136
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1146 }
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1147
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1148 static void
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1149 pounce_selected_cb(GtkTreeSelection *sel, gpointer user_data)
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1150 {
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1151 PouncesManager *dialog = user_data;
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1152 int num_selected = 0;
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1153
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1154 num_selected = gtk_tree_selection_count_selected_rows(sel);
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1155
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1156 gtk_widget_set_sensitive(dialog->modify_button, (num_selected > 0));
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1157 gtk_widget_set_sensitive(dialog->delete_button, (num_selected > 0));
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1158 }
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1159
12137
6a9dafcaaed1 [gaim-migrate @ 14437]
Richard Laager <rlaager@pidgin.im>
parents: 12136
diff changeset
1160 static gboolean
6a9dafcaaed1 [gaim-migrate @ 14437]
Richard Laager <rlaager@pidgin.im>
parents: 12136
diff changeset
1161 pounce_double_click_cb(GtkTreeView *treeview, GdkEventButton *event, gpointer user_data)
6a9dafcaaed1 [gaim-migrate @ 14437]
Richard Laager <rlaager@pidgin.im>
parents: 12136
diff changeset
1162 {
6a9dafcaaed1 [gaim-migrate @ 14437]
Richard Laager <rlaager@pidgin.im>
parents: 12136
diff changeset
1163 PouncesManager *dialog = user_data;
6a9dafcaaed1 [gaim-migrate @ 14437]
Richard Laager <rlaager@pidgin.im>
parents: 12136
diff changeset
1164 GtkTreePath *path;
6a9dafcaaed1 [gaim-migrate @ 14437]
Richard Laager <rlaager@pidgin.im>
parents: 12136
diff changeset
1165 GtkTreeIter iter;
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1166 PurplePounce *pounce;
12137
6a9dafcaaed1 [gaim-migrate @ 14437]
Richard Laager <rlaager@pidgin.im>
parents: 12136
diff changeset
1167
6a9dafcaaed1 [gaim-migrate @ 14437]
Richard Laager <rlaager@pidgin.im>
parents: 12136
diff changeset
1168 /* Figure out which node was clicked */
6a9dafcaaed1 [gaim-migrate @ 14437]
Richard Laager <rlaager@pidgin.im>
parents: 12136
diff changeset
1169 if (!gtk_tree_view_get_path_at_pos(GTK_TREE_VIEW(dialog->treeview), event->x, event->y, &path, NULL, NULL, NULL))
6a9dafcaaed1 [gaim-migrate @ 14437]
Richard Laager <rlaager@pidgin.im>
parents: 12136
diff changeset
1170 return FALSE;
6a9dafcaaed1 [gaim-migrate @ 14437]
Richard Laager <rlaager@pidgin.im>
parents: 12136
diff changeset
1171 gtk_tree_model_get_iter(GTK_TREE_MODEL(dialog->model), &iter, path);
6a9dafcaaed1 [gaim-migrate @ 14437]
Richard Laager <rlaager@pidgin.im>
parents: 12136
diff changeset
1172 gtk_tree_path_free(path);
6a9dafcaaed1 [gaim-migrate @ 14437]
Richard Laager <rlaager@pidgin.im>
parents: 12136
diff changeset
1173 gtk_tree_model_get(GTK_TREE_MODEL(dialog->model), &iter, POUNCES_MANAGER_COLUMN_POUNCE, &pounce, -1);
6a9dafcaaed1 [gaim-migrate @ 14437]
Richard Laager <rlaager@pidgin.im>
parents: 12136
diff changeset
1174
6a9dafcaaed1 [gaim-migrate @ 14437]
Richard Laager <rlaager@pidgin.im>
parents: 12136
diff changeset
1175 if ((pounce != NULL) && (event->button == 1) &&
6a9dafcaaed1 [gaim-migrate @ 14437]
Richard Laager <rlaager@pidgin.im>
parents: 12136
diff changeset
1176 (event->type == GDK_2BUTTON_PRESS))
6a9dafcaaed1 [gaim-migrate @ 14437]
Richard Laager <rlaager@pidgin.im>
parents: 12136
diff changeset
1177 {
21214
db28e29a4990 Reverted changes from ef7ac46f90a801547f7dfc4295927a956f90e869 to
Richard Laager <rlaager@pidgin.im>
parents: 21171
diff changeset
1178 pidgin_pounce_editor_show(NULL, NULL, pounce);
12137
6a9dafcaaed1 [gaim-migrate @ 14437]
Richard Laager <rlaager@pidgin.im>
parents: 12136
diff changeset
1179 return TRUE;
6a9dafcaaed1 [gaim-migrate @ 14437]
Richard Laager <rlaager@pidgin.im>
parents: 12136
diff changeset
1180 }
6a9dafcaaed1 [gaim-migrate @ 14437]
Richard Laager <rlaager@pidgin.im>
parents: 12136
diff changeset
1181
6a9dafcaaed1 [gaim-migrate @ 14437]
Richard Laager <rlaager@pidgin.im>
parents: 12136
diff changeset
1182 return FALSE;
6a9dafcaaed1 [gaim-migrate @ 14437]
Richard Laager <rlaager@pidgin.im>
parents: 12136
diff changeset
1183 }
6a9dafcaaed1 [gaim-migrate @ 14437]
Richard Laager <rlaager@pidgin.im>
parents: 12136
diff changeset
1184
12136
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1185 static void
12193
243b18a880ba [gaim-migrate @ 14495]
Richard Laager <rlaager@pidgin.im>
parents: 12192
diff changeset
1186 pounces_manager_recurring_cb(GtkCellRendererToggle *renderer, gchar *path_str,
12136
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1187 gpointer user_data)
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1188 {
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1189 PouncesManager *dialog = user_data;
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1190 PurplePounce *pounce;
12193
243b18a880ba [gaim-migrate @ 14495]
Richard Laager <rlaager@pidgin.im>
parents: 12192
diff changeset
1191 gboolean recurring;
12136
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1192 GtkTreeModel *model = GTK_TREE_MODEL(dialog->model);
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1193 GtkTreeIter iter;
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1194
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1195 gtk_tree_model_get_iter_from_string(model, &iter, path_str);
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1196 gtk_tree_model_get(model, &iter,
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1197 POUNCES_MANAGER_COLUMN_POUNCE, &pounce,
12193
243b18a880ba [gaim-migrate @ 14495]
Richard Laager <rlaager@pidgin.im>
parents: 12192
diff changeset
1198 POUNCES_MANAGER_COLUMN_RECURRING, &recurring,
12136
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1199 -1);
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1200
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1201 purple_pounce_set_save(pounce, !recurring);
12136
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1202
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1203 update_pounces();
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1204 }
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1205
8259
7ed91862683d [gaim-migrate @ 8982]
Christian Hammond <chipx86@chipx86.com>
parents: 8252
diff changeset
1206 static gboolean
12136
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1207 search_func(GtkTreeModel *model, gint column, const gchar *key, GtkTreeIter *iter, gpointer search_data)
5153
4865538db77a [gaim-migrate @ 5517]
Christian Hammond <chipx86@chipx86.com>
parents: 5054
diff changeset
1208 {
12136
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1209 gboolean result;
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1210 char *haystack;
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1211
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1212 gtk_tree_model_get(model, iter, column, &haystack, -1);
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1213
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1214 result = (purple_strcasestr(haystack, key) == NULL);
12136
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1215
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1216 g_free(haystack);
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1217
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1218 return result;
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1219 }
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1220
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1221 static GtkWidget *
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1222 create_pounces_list(PouncesManager *dialog)
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1223 {
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1224 GtkWidget *treeview;
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1225 GtkTreeSelection *sel;
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1226 GtkTreeViewColumn *column;
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1227 GtkCellRenderer *renderer;
5153
4865538db77a [gaim-migrate @ 5517]
Christian Hammond <chipx86@chipx86.com>
parents: 5054
diff changeset
1228
12136
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1229 /* Create the list model */
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1230 dialog->model = gtk_list_store_new(POUNCES_MANAGER_NUM_COLUMNS,
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1231 G_TYPE_POINTER,
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1232 GDK_TYPE_PIXBUF,
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1233 G_TYPE_STRING,
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1234 G_TYPE_STRING,
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1235 G_TYPE_BOOLEAN
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1236 );
10250
9a0f00083ec1 [gaim-migrate @ 11390]
Mark Doliner <markdoliner@pidgin.im>
parents: 10246
diff changeset
1237
12136
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1238 /* Create the treeview */
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1239 treeview = gtk_tree_view_new_with_model(GTK_TREE_MODEL(dialog->model));
22214
e8a9916cb99e It turns out the tree-models need to be unref'ed.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22005
diff changeset
1240 g_object_unref(G_OBJECT(dialog->model));
12136
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1241 dialog->treeview = treeview;
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1242 gtk_tree_view_set_rules_hint(GTK_TREE_VIEW(treeview), TRUE);
10250
9a0f00083ec1 [gaim-migrate @ 11390]
Mark Doliner <markdoliner@pidgin.im>
parents: 10246
diff changeset
1243
12136
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1244 sel = gtk_tree_view_get_selection(GTK_TREE_VIEW(treeview));
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1245 gtk_tree_selection_set_mode(sel, GTK_SELECTION_MULTIPLE);
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1246 g_signal_connect(G_OBJECT(sel), "changed",
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1247 G_CALLBACK(pounce_selected_cb), dialog);
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1248
12137
6a9dafcaaed1 [gaim-migrate @ 14437]
Richard Laager <rlaager@pidgin.im>
parents: 12136
diff changeset
1249 /* Handle double-clicking */
6a9dafcaaed1 [gaim-migrate @ 14437]
Richard Laager <rlaager@pidgin.im>
parents: 12136
diff changeset
1250 g_signal_connect(G_OBJECT(treeview), "button_press_event",
6a9dafcaaed1 [gaim-migrate @ 14437]
Richard Laager <rlaager@pidgin.im>
parents: 12136
diff changeset
1251 G_CALLBACK(pounce_double_click_cb), dialog);
12136
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1252 gtk_widget_show(treeview);
8259
7ed91862683d [gaim-migrate @ 8982]
Christian Hammond <chipx86@chipx86.com>
parents: 8252
diff changeset
1253
12136
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1254 /* Pouncee Column */
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1255 column = gtk_tree_view_column_new();
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1256 gtk_tree_view_column_set_title(column, _("Pounce Target"));
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1257 gtk_tree_view_column_set_resizable(column, TRUE);
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1258 gtk_tree_view_column_set_min_width(column, 200);
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1259 gtk_tree_view_column_set_sort_column_id(column,
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1260 POUNCES_MANAGER_COLUMN_TARGET);
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1261 gtk_tree_view_append_column(GTK_TREE_VIEW(treeview), column);
5161
9a5172d9d9e1 [gaim-migrate @ 5525]
Nathan Walp <nwalp@pidgin.im>
parents: 5158
diff changeset
1262
12136
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1263 /* Icon */
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1264 renderer = gtk_cell_renderer_pixbuf_new();
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1265 gtk_tree_view_column_pack_start(column, renderer, FALSE);
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1266 gtk_tree_view_column_add_attribute(column, renderer, "pixbuf",
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1267 POUNCES_MANAGER_COLUMN_ICON);
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1268
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1269 /* Pouncee */
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1270 renderer = gtk_cell_renderer_text_new();
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1271 gtk_tree_view_column_pack_start(column, renderer, TRUE);
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1272 gtk_tree_view_column_add_attribute(column, renderer, "text",
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1273 POUNCES_MANAGER_COLUMN_TARGET);
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1274
5153
4865538db77a [gaim-migrate @ 5517]
Christian Hammond <chipx86@chipx86.com>
parents: 5054
diff changeset
1275
12136
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1276 /* Account Column */
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1277 column = gtk_tree_view_column_new();
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1278 gtk_tree_view_column_set_title(column, _("Account"));
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1279 gtk_tree_view_column_set_resizable(column, TRUE);
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1280 gtk_tree_view_column_set_min_width(column, 200);
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1281 gtk_tree_view_column_set_sort_column_id(column,
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1282 POUNCES_MANAGER_COLUMN_ACCOUNT);
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1283 gtk_tree_view_append_column(GTK_TREE_VIEW(treeview), column);
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1284 renderer = gtk_cell_renderer_text_new();
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1285 gtk_tree_view_column_pack_start(column, renderer, TRUE);
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1286 gtk_tree_view_column_add_attribute(column, renderer, "text",
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1287 POUNCES_MANAGER_COLUMN_ACCOUNT);
5153
4865538db77a [gaim-migrate @ 5517]
Christian Hammond <chipx86@chipx86.com>
parents: 5054
diff changeset
1288
12193
243b18a880ba [gaim-migrate @ 14495]
Richard Laager <rlaager@pidgin.im>
parents: 12192
diff changeset
1289 /* Recurring Column */
12136
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1290 renderer = gtk_cell_renderer_toggle_new();
12193
243b18a880ba [gaim-migrate @ 14495]
Richard Laager <rlaager@pidgin.im>
parents: 12192
diff changeset
1291 column = gtk_tree_view_column_new_with_attributes(_("Recurring"), renderer,
243b18a880ba [gaim-migrate @ 14495]
Richard Laager <rlaager@pidgin.im>
parents: 12192
diff changeset
1292 "active", POUNCES_MANAGER_COLUMN_RECURRING, NULL);
12136
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1293 gtk_tree_view_column_set_sort_column_id(column,
12193
243b18a880ba [gaim-migrate @ 14495]
Richard Laager <rlaager@pidgin.im>
parents: 12192
diff changeset
1294 POUNCES_MANAGER_COLUMN_RECURRING);
12136
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1295 gtk_tree_view_append_column(GTK_TREE_VIEW(treeview), column);
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1296 g_signal_connect(G_OBJECT(renderer), "toggled",
12193
243b18a880ba [gaim-migrate @ 14495]
Richard Laager <rlaager@pidgin.im>
parents: 12192
diff changeset
1297 G_CALLBACK(pounces_manager_recurring_cb), dialog);
5153
4865538db77a [gaim-migrate @ 5517]
Christian Hammond <chipx86@chipx86.com>
parents: 5054
diff changeset
1298
12136
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1299 /* Enable CTRL+F searching */
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1300 gtk_tree_view_set_search_column(GTK_TREE_VIEW(treeview), POUNCES_MANAGER_COLUMN_TARGET);
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1301 gtk_tree_view_set_search_equal_func(GTK_TREE_VIEW(treeview), search_func, NULL, NULL);
8259
7ed91862683d [gaim-migrate @ 8982]
Christian Hammond <chipx86@chipx86.com>
parents: 8252
diff changeset
1302
12136
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1303 /* Sort the pouncee column by default */
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1304 gtk_tree_sortable_set_sort_column_id(GTK_TREE_SORTABLE(dialog->model),
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1305 POUNCES_MANAGER_COLUMN_TARGET,
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1306 GTK_SORT_ASCENDING);
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1307
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1308 /* Populate list */
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1309 populate_pounces_list(dialog);
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1310
31321
1fef3832cfa2 Add pidgin_make_scrollable and use it. Cleans up a bunch of duplicate code. Net code loss of 180 lines. Fixes #13073.
Gabriel Schulhof <nix@go-nix.ca>
parents: 30706
diff changeset
1311 return pidgin_make_scrollable(treeview, GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC, GTK_SHADOW_IN, -1, -1);
5153
4865538db77a [gaim-migrate @ 5517]
Christian Hammond <chipx86@chipx86.com>
parents: 5054
diff changeset
1312 }
4865538db77a [gaim-migrate @ 5517]
Christian Hammond <chipx86@chipx86.com>
parents: 5054
diff changeset
1313
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1314 void
21182
23cc39e90bf7 Only the request API changes
Gabriel Schulhof <nix@go-nix.ca>
parents: 21162
diff changeset
1315 pidgin_pounces_manager_show(void)
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1316 {
12136
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1317 PouncesManager *dialog;
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1318 GtkWidget *button;
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1319 GtkWidget *list;
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1320 GtkWidget *vbox;
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1321 GtkWidget *win;
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1322 int width, height;
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1323
12136
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1324 if (pounces_manager != NULL) {
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1325 gtk_window_present(GTK_WINDOW(pounces_manager->window));
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1326 return;
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1327 }
8252
15c6f400498a [gaim-migrate @ 8975]
Nathan Walp <nwalp@pidgin.im>
parents: 8236
diff changeset
1328
12136
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1329 pounces_manager = dialog = g_new0(PouncesManager, 1);
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1330
16123
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
1331 width = purple_prefs_get_int(PIDGIN_PREFS_ROOT "/pounces/dialog/width");
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
1332 height = purple_prefs_get_int(PIDGIN_PREFS_ROOT "/pounces/dialog/height");
12136
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1333
22000
5e7708f58d3d Patch from fmoo. This makes a lot of the windows closeable with Escape. There
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21630
diff changeset
1334 dialog->window = win = pidgin_create_dialog(_("Buddy Pounces"), PIDGIN_HIG_BORDER, "pounces", TRUE);
12136
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1335 gtk_window_set_default_size(GTK_WINDOW(win), width, height);
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1336
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1337 g_signal_connect(G_OBJECT(win), "delete_event",
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1338 G_CALLBACK(pounces_manager_destroy_cb), dialog);
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1339 g_signal_connect(G_OBJECT(win), "configure_event",
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1340 G_CALLBACK(pounces_manager_configure_cb), dialog);
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1341
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1342 /* Setup the vbox */
22000
5e7708f58d3d Patch from fmoo. This makes a lot of the windows closeable with Escape. There
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21630
diff changeset
1343 vbox = pidgin_dialog_get_vbox_with_properties(GTK_DIALOG(win), FALSE, PIDGIN_HIG_BORDER);
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1344
12136
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1345 /* List of saved buddy pounces */
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1346 list = create_pounces_list(dialog);
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1347 gtk_box_pack_start(GTK_BOX(vbox), list, TRUE, TRUE, 0);
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1348
22005
0183020ba2cc Add a utility function pidgin_dialog_add_button to add buttons to a dialog
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22000
diff changeset
1349 /* Add button */
24594
b2da1decae23 Add an ellipsis to the "Add" and "Modify" buttons in the accounts, pounces, and
Alex Willmer <alex@moreati.org.uk>
parents: 23260
diff changeset
1350 button = pidgin_dialog_add_button(GTK_DIALOG(win), PIDGIN_STOCK_ADD, G_CALLBACK(pounces_manager_add_cb), dialog);
22005
0183020ba2cc Add a utility function pidgin_dialog_add_button to add buttons to a dialog
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22000
diff changeset
1351 gtk_widget_set_sensitive(button, (purple_accounts_get_all() != NULL));
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1352
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1353 purple_signal_connect(purple_connections_get_handle(), "signed-on",
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1354 pounces_manager, PURPLE_CALLBACK(pounces_manager_connection_cb), button);
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1355 purple_signal_connect(purple_connections_get_handle(), "signed-off",
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1356 pounces_manager, PURPLE_CALLBACK(pounces_manager_connection_cb), button);
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1357
12136
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1358 /* Modify button */
22005
0183020ba2cc Add a utility function pidgin_dialog_add_button to add buttons to a dialog
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22000
diff changeset
1359 button = pidgin_dialog_add_button(GTK_DIALOG(win), PIDGIN_STOCK_MODIFY, G_CALLBACK(pounces_manager_modify_cb), dialog);
12136
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1360 gtk_widget_set_sensitive(button, FALSE);
22005
0183020ba2cc Add a utility function pidgin_dialog_add_button to add buttons to a dialog
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22000
diff changeset
1361 dialog->modify_button = button;
8259
7ed91862683d [gaim-migrate @ 8982]
Christian Hammond <chipx86@chipx86.com>
parents: 8252
diff changeset
1362
12136
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1363 /* Delete button */
22005
0183020ba2cc Add a utility function pidgin_dialog_add_button to add buttons to a dialog
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22000
diff changeset
1364 button = pidgin_dialog_add_button(GTK_DIALOG(win), GTK_STOCK_DELETE, G_CALLBACK(pounces_manager_delete_cb), dialog);
12136
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1365 gtk_widget_set_sensitive(button, FALSE);
22005
0183020ba2cc Add a utility function pidgin_dialog_add_button to add buttons to a dialog
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22000
diff changeset
1366 dialog->delete_button = button;
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1367
12136
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1368 /* Close button */
22005
0183020ba2cc Add a utility function pidgin_dialog_add_button to add buttons to a dialog
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22000
diff changeset
1369 pidgin_dialog_add_button(GTK_DIALOG(win), GTK_STOCK_CLOSE, G_CALLBACK(pounces_manager_close_cb), dialog);
12136
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1370
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1371 gtk_widget_show(win);
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1372 }
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1373
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1374 void
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15496
diff changeset
1375 pidgin_pounces_manager_hide(void)
12136
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1376 {
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1377 if (pounces_manager == NULL)
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1378 return;
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1379
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1380 if (pounces_manager->window != NULL)
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1381 gtk_widget_destroy(pounces_manager->window);
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1382
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1383 purple_signals_disconnect_by_handle(pounces_manager);
12136
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1384
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1385 g_free(pounces_manager);
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1386 pounces_manager = NULL;
5032
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1387 }
2276c67b0243 [gaim-migrate @ 5375]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1388
5875
493a921c0378 [gaim-migrate @ 6307]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
1389 static void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1390 pounce_cb(PurplePounce *pounce, PurplePounceEvent events, void *data)
5875
493a921c0378 [gaim-migrate @ 6307]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
1391 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1392 PurpleConversation *conv;
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1393 PurpleAccount *account;
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1394 PurpleBuddy *buddy;
5875
493a921c0378 [gaim-migrate @ 6307]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
1395 const char *pouncee;
7994
13b0203d6d52 [gaim-migrate @ 8671]
Christian Hammond <chipx86@chipx86.com>
parents: 7276
diff changeset
1396 const char *alias;
9205
8c4dbbe6386f [gaim-migrate @ 10000]
Christian Hammond <chipx86@chipx86.com>
parents: 9191
diff changeset
1397
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1398 pouncee = purple_pounce_get_pouncee(pounce);
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1399 account = purple_pounce_get_pouncer(pounce);
5875
493a921c0378 [gaim-migrate @ 6307]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
1400
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1401 buddy = purple_find_buddy(account, pouncee);
12934
d3ce70776eb5 [gaim-migrate @ 15287]
Richard Nelson <wabz@pidgin.im>
parents: 12694
diff changeset
1402 if (buddy != NULL)
d3ce70776eb5 [gaim-migrate @ 15287]
Richard Nelson <wabz@pidgin.im>
parents: 12694
diff changeset
1403 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1404 alias = purple_buddy_get_alias(buddy);
12934
d3ce70776eb5 [gaim-migrate @ 15287]
Richard Nelson <wabz@pidgin.im>
parents: 12694
diff changeset
1405 if (alias == NULL)
d3ce70776eb5 [gaim-migrate @ 15287]
Richard Nelson <wabz@pidgin.im>
parents: 12694
diff changeset
1406 alias = pouncee;
d3ce70776eb5 [gaim-migrate @ 15287]
Richard Nelson <wabz@pidgin.im>
parents: 12694
diff changeset
1407 }
d3ce70776eb5 [gaim-migrate @ 15287]
Richard Nelson <wabz@pidgin.im>
parents: 12694
diff changeset
1408 else
d3ce70776eb5 [gaim-migrate @ 15287]
Richard Nelson <wabz@pidgin.im>
parents: 12694
diff changeset
1409 alias = pouncee;
7994
13b0203d6d52 [gaim-migrate @ 8671]
Christian Hammond <chipx86@chipx86.com>
parents: 7276
diff changeset
1410
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1411 if (purple_pounce_action_is_enabled(pounce, "open-window"))
9205
8c4dbbe6386f [gaim-migrate @ 10000]
Christian Hammond <chipx86@chipx86.com>
parents: 9191
diff changeset
1412 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1413 conv = purple_find_conversation_with_account(PURPLE_CONV_TYPE_IM, pouncee, account);
5875
493a921c0378 [gaim-migrate @ 6307]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
1414
493a921c0378 [gaim-migrate @ 6307]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
1415 if (conv == NULL)
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1416 conv = purple_conversation_new(PURPLE_CONV_TYPE_IM, account, pouncee);
5875
493a921c0378 [gaim-migrate @ 6307]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
1417 }
493a921c0378 [gaim-migrate @ 6307]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
1418
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1419 if (purple_pounce_action_is_enabled(pounce, "popup-notify"))
9205
8c4dbbe6386f [gaim-migrate @ 10000]
Christian Hammond <chipx86@chipx86.com>
parents: 9191
diff changeset
1420 {
12934
d3ce70776eb5 [gaim-migrate @ 15287]
Richard Nelson <wabz@pidgin.im>
parents: 12694
diff changeset
1421 char *tmp;
9205
8c4dbbe6386f [gaim-migrate @ 10000]
Christian Hammond <chipx86@chipx86.com>
parents: 9191
diff changeset
1422 const char *name_shown;
12934
d3ce70776eb5 [gaim-migrate @ 15287]
Richard Nelson <wabz@pidgin.im>
parents: 12694
diff changeset
1423 const char *reason;
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1424 reason = purple_pounce_action_get_attribute(pounce, "popup-notify",
12934
d3ce70776eb5 [gaim-migrate @ 15287]
Richard Nelson <wabz@pidgin.im>
parents: 12694
diff changeset
1425 "reason");
5875
493a921c0378 [gaim-migrate @ 6307]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
1426
9205
8c4dbbe6386f [gaim-migrate @ 10000]
Christian Hammond <chipx86@chipx86.com>
parents: 9191
diff changeset
1427 /*
8c4dbbe6386f [gaim-migrate @ 10000]
Christian Hammond <chipx86@chipx86.com>
parents: 9191
diff changeset
1428 * Here we place the protocol name in the pounce dialog to lessen
8c4dbbe6386f [gaim-migrate @ 10000]
Christian Hammond <chipx86@chipx86.com>
parents: 9191
diff changeset
1429 * confusion about what protocol a pounce is for.
8c4dbbe6386f [gaim-migrate @ 10000]
Christian Hammond <chipx86@chipx86.com>
parents: 9191
diff changeset
1430 */
28717
7cd8b1322913 A simple g_strdup is fine here.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 26467
diff changeset
1431 tmp = g_strdup(
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1432 (events & PURPLE_POUNCE_TYPING) ?
26467
ca1524dbcbf0 A patch from Jorge VillaseƱor which makes all pounces share a single window.
Kevin Stange <kstange@pidgin.im>
parents: 25909
diff changeset
1433 _("Started typing") :
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1434 (events & PURPLE_POUNCE_TYPED) ?
26467
ca1524dbcbf0 A patch from Jorge VillaseƱor which makes all pounces share a single window.
Kevin Stange <kstange@pidgin.im>
parents: 25909
diff changeset
1435 _("Paused while typing") :
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1436 (events & PURPLE_POUNCE_SIGNON) ?
26467
ca1524dbcbf0 A patch from Jorge VillaseƱor which makes all pounces share a single window.
Kevin Stange <kstange@pidgin.im>
parents: 25909
diff changeset
1437 _("Signed on") :
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1438 (events & PURPLE_POUNCE_IDLE_RETURN) ?
26467
ca1524dbcbf0 A patch from Jorge VillaseƱor which makes all pounces share a single window.
Kevin Stange <kstange@pidgin.im>
parents: 25909
diff changeset
1439 _("Returned from being idle") :
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1440 (events & PURPLE_POUNCE_AWAY_RETURN) ?
26467
ca1524dbcbf0 A patch from Jorge VillaseƱor which makes all pounces share a single window.
Kevin Stange <kstange@pidgin.im>
parents: 25909
diff changeset
1441 _("Returned from being away") :
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1442 (events & PURPLE_POUNCE_TYPING_STOPPED) ?
26467
ca1524dbcbf0 A patch from Jorge VillaseƱor which makes all pounces share a single window.
Kevin Stange <kstange@pidgin.im>
parents: 25909
diff changeset
1443 _("Stopped typing") :
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1444 (events & PURPLE_POUNCE_SIGNOFF) ?
26467
ca1524dbcbf0 A patch from Jorge VillaseƱor which makes all pounces share a single window.
Kevin Stange <kstange@pidgin.im>
parents: 25909
diff changeset
1445 _("Signed off") :
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1446 (events & PURPLE_POUNCE_IDLE) ?
26467
ca1524dbcbf0 A patch from Jorge VillaseƱor which makes all pounces share a single window.
Kevin Stange <kstange@pidgin.im>
parents: 25909
diff changeset
1447 _("Became idle") :
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1448 (events & PURPLE_POUNCE_AWAY) ?
26467
ca1524dbcbf0 A patch from Jorge VillaseƱor which makes all pounces share a single window.
Kevin Stange <kstange@pidgin.im>
parents: 25909
diff changeset
1449 _("Went away") :
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1450 (events & PURPLE_POUNCE_MESSAGE_RECEIVED) ?
26467
ca1524dbcbf0 A patch from Jorge VillaseƱor which makes all pounces share a single window.
Kevin Stange <kstange@pidgin.im>
parents: 25909
diff changeset
1451 _("Sent a message") :
ca1524dbcbf0 A patch from Jorge VillaseƱor which makes all pounces share a single window.
Kevin Stange <kstange@pidgin.im>
parents: 25909
diff changeset
1452 _("Unknown.... Please report this!")
ca1524dbcbf0 A patch from Jorge VillaseƱor which makes all pounces share a single window.
Kevin Stange <kstange@pidgin.im>
parents: 25909
diff changeset
1453 );
5875
493a921c0378 [gaim-migrate @ 6307]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
1454
9205
8c4dbbe6386f [gaim-migrate @ 10000]
Christian Hammond <chipx86@chipx86.com>
parents: 9191
diff changeset
1455 /*
8c4dbbe6386f [gaim-migrate @ 10000]
Christian Hammond <chipx86@chipx86.com>
parents: 9191
diff changeset
1456 * Ok here is where I change the second argument, title, from
12934
d3ce70776eb5 [gaim-migrate @ 15287]
Richard Nelson <wabz@pidgin.im>
parents: 12694
diff changeset
1457 * NULL to the account alias if we have it or the account
d3ce70776eb5 [gaim-migrate @ 15287]
Richard Nelson <wabz@pidgin.im>
parents: 12694
diff changeset
1458 * name if that's all we have
9205
8c4dbbe6386f [gaim-migrate @ 10000]
Christian Hammond <chipx86@chipx86.com>
parents: 9191
diff changeset
1459 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1460 if ((name_shown = purple_account_get_alias(account)) == NULL)
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1461 name_shown = purple_account_get_username(account);
9205
8c4dbbe6386f [gaim-migrate @ 10000]
Christian Hammond <chipx86@chipx86.com>
parents: 9191
diff changeset
1462
26467
ca1524dbcbf0 A patch from Jorge VillaseƱor which makes all pounces share a single window.
Kevin Stange <kstange@pidgin.im>
parents: 25909
diff changeset
1463 pidgin_notify_pounce_add(account, pounce, alias, tmp, reason,
ca1524dbcbf0 A patch from Jorge VillaseƱor which makes all pounces share a single window.
Kevin Stange <kstange@pidgin.im>
parents: 25909
diff changeset
1464 purple_date_format_full(NULL));
ca1524dbcbf0 A patch from Jorge VillaseƱor which makes all pounces share a single window.
Kevin Stange <kstange@pidgin.im>
parents: 25909
diff changeset
1465
12934
d3ce70776eb5 [gaim-migrate @ 15287]
Richard Nelson <wabz@pidgin.im>
parents: 12694
diff changeset
1466 g_free(tmp);
5875
493a921c0378 [gaim-migrate @ 6307]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
1467 }
493a921c0378 [gaim-migrate @ 6307]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
1468
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1469 if (purple_pounce_action_is_enabled(pounce, "send-message"))
9205
8c4dbbe6386f [gaim-migrate @ 10000]
Christian Hammond <chipx86@chipx86.com>
parents: 9191
diff changeset
1470 {
5875
493a921c0378 [gaim-migrate @ 6307]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
1471 const char *message;
493a921c0378 [gaim-migrate @ 6307]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
1472
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1473 message = purple_pounce_action_get_attribute(pounce, "send-message",
5875
493a921c0378 [gaim-migrate @ 6307]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
1474 "message");
493a921c0378 [gaim-migrate @ 6307]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
1475
9205
8c4dbbe6386f [gaim-migrate @ 10000]
Christian Hammond <chipx86@chipx86.com>
parents: 9191
diff changeset
1476 if (message != NULL)
8c4dbbe6386f [gaim-migrate @ 10000]
Christian Hammond <chipx86@chipx86.com>
parents: 9191
diff changeset
1477 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1478 conv = purple_find_conversation_with_account(PURPLE_CONV_TYPE_IM, pouncee, account);
5875
493a921c0378 [gaim-migrate @ 6307]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
1479
493a921c0378 [gaim-migrate @ 6307]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
1480 if (conv == NULL)
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1481 conv = purple_conversation_new(PURPLE_CONV_TYPE_IM, account, pouncee);
5875
493a921c0378 [gaim-migrate @ 6307]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
1482
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1483 purple_conversation_write(conv, NULL, message,
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1484 PURPLE_MESSAGE_SEND, time(NULL));
5875
493a921c0378 [gaim-migrate @ 6307]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
1485
6982
12f08de92674 [gaim-migrate @ 7538]
Mark Doliner <markdoliner@pidgin.im>
parents: 6695
diff changeset
1486 serv_send_im(account->gc, (char *)pouncee, (char *)message, 0);
5875
493a921c0378 [gaim-migrate @ 6307]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
1487 }
493a921c0378 [gaim-migrate @ 6307]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
1488 }
493a921c0378 [gaim-migrate @ 6307]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
1489
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1490 if (purple_pounce_action_is_enabled(pounce, "execute-command"))
9205
8c4dbbe6386f [gaim-migrate @ 10000]
Christian Hammond <chipx86@chipx86.com>
parents: 9191
diff changeset
1491 {
5875
493a921c0378 [gaim-migrate @ 6307]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
1492 const char *command;
493a921c0378 [gaim-migrate @ 6307]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
1493
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1494 command = purple_pounce_action_get_attribute(pounce,
10921
44adf364b1e7 [gaim-migrate @ 12688]
Daniel Atallah <datallah@pidgin.im>
parents: 10913
diff changeset
1495 "execute-command", "command");
5875
493a921c0378 [gaim-migrate @ 6307]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
1496
10921
44adf364b1e7 [gaim-migrate @ 12688]
Daniel Atallah <datallah@pidgin.im>
parents: 10913
diff changeset
1497 if (command != NULL)
9205
8c4dbbe6386f [gaim-migrate @ 10000]
Christian Hammond <chipx86@chipx86.com>
parents: 9191
diff changeset
1498 {
6660
b0f52293fb7e [gaim-migrate @ 7185]
Kevin Stange <kstange@pidgin.im>
parents: 6646
diff changeset
1499 #ifndef _WIN32
10921
44adf364b1e7 [gaim-migrate @ 12688]
Daniel Atallah <datallah@pidgin.im>
parents: 10913
diff changeset
1500 char *localecmd = g_locale_from_utf8(command, -1, NULL,
44adf364b1e7 [gaim-migrate @ 12688]
Daniel Atallah <datallah@pidgin.im>
parents: 10913
diff changeset
1501 NULL, NULL);
5875
493a921c0378 [gaim-migrate @ 6307]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
1502
10921
44adf364b1e7 [gaim-migrate @ 12688]
Daniel Atallah <datallah@pidgin.im>
parents: 10913
diff changeset
1503 if (localecmd != NULL)
44adf364b1e7 [gaim-migrate @ 12688]
Daniel Atallah <datallah@pidgin.im>
parents: 10913
diff changeset
1504 {
44adf364b1e7 [gaim-migrate @ 12688]
Daniel Atallah <datallah@pidgin.im>
parents: 10913
diff changeset
1505 int pid = fork();
44adf364b1e7 [gaim-migrate @ 12688]
Daniel Atallah <datallah@pidgin.im>
parents: 10913
diff changeset
1506
44adf364b1e7 [gaim-migrate @ 12688]
Daniel Atallah <datallah@pidgin.im>
parents: 10913
diff changeset
1507 if (pid == 0) {
44adf364b1e7 [gaim-migrate @ 12688]
Daniel Atallah <datallah@pidgin.im>
parents: 10913
diff changeset
1508 char *args[4];
5875
493a921c0378 [gaim-migrate @ 6307]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
1509
10921
44adf364b1e7 [gaim-migrate @ 12688]
Daniel Atallah <datallah@pidgin.im>
parents: 10913
diff changeset
1510 args[0] = "sh";
44adf364b1e7 [gaim-migrate @ 12688]
Daniel Atallah <datallah@pidgin.im>
parents: 10913
diff changeset
1511 args[1] = "-c";
44adf364b1e7 [gaim-migrate @ 12688]
Daniel Atallah <datallah@pidgin.im>
parents: 10913
diff changeset
1512 args[2] = (char *)localecmd;
44adf364b1e7 [gaim-migrate @ 12688]
Daniel Atallah <datallah@pidgin.im>
parents: 10913
diff changeset
1513 args[3] = NULL;
5875
493a921c0378 [gaim-migrate @ 6307]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
1514
10921
44adf364b1e7 [gaim-migrate @ 12688]
Daniel Atallah <datallah@pidgin.im>
parents: 10913
diff changeset
1515 execvp(args[0], args);
5875
493a921c0378 [gaim-migrate @ 6307]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
1516
10921
44adf364b1e7 [gaim-migrate @ 12688]
Daniel Atallah <datallah@pidgin.im>
parents: 10913
diff changeset
1517 _exit(0);
44adf364b1e7 [gaim-migrate @ 12688]
Daniel Atallah <datallah@pidgin.im>
parents: 10913
diff changeset
1518 }
44adf364b1e7 [gaim-migrate @ 12688]
Daniel Atallah <datallah@pidgin.im>
parents: 10913
diff changeset
1519 g_free(localecmd);
5875
493a921c0378 [gaim-migrate @ 6307]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
1520 }
9205
8c4dbbe6386f [gaim-migrate @ 10000]
Christian Hammond <chipx86@chipx86.com>
parents: 9191
diff changeset
1521 #else /* !_WIN32 */
29362
f5768aad49af Make the "Execute a command" buddy pounce action use ShellExecute() on Windows so that it can open files of all types (e.g. MP3s) with their default associated application. Fixes #11333.
Daniel Atallah <datallah@pidgin.im>
parents: 28717
diff changeset
1522 winpidgin_shell_execute(command, "open", NULL);
9205
8c4dbbe6386f [gaim-migrate @ 10000]
Christian Hammond <chipx86@chipx86.com>
parents: 9191
diff changeset
1523 #endif /* !_WIN32 */
5875
493a921c0378 [gaim-migrate @ 6307]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
1524 }
493a921c0378 [gaim-migrate @ 6307]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
1525 }
493a921c0378 [gaim-migrate @ 6307]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
1526
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1527 if (purple_pounce_action_is_enabled(pounce, "play-sound"))
9205
8c4dbbe6386f [gaim-migrate @ 10000]
Christian Hammond <chipx86@chipx86.com>
parents: 9191
diff changeset
1528 {
5875
493a921c0378 [gaim-migrate @ 6307]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
1529 const char *sound;
493a921c0378 [gaim-migrate @ 6307]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
1530
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1531 sound = purple_pounce_action_get_attribute(pounce,
9205
8c4dbbe6386f [gaim-migrate @ 10000]
Christian Hammond <chipx86@chipx86.com>
parents: 9191
diff changeset
1532 "play-sound", "filename");
5875
493a921c0378 [gaim-migrate @ 6307]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
1533
493a921c0378 [gaim-migrate @ 6307]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
1534 if (sound != NULL)
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1535 purple_sound_play_file(sound, account);
5875
493a921c0378 [gaim-migrate @ 6307]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
1536 else
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1537 purple_sound_play_event(PURPLE_SOUND_POUNCE_DEFAULT, account);
5875
493a921c0378 [gaim-migrate @ 6307]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
1538 }
493a921c0378 [gaim-migrate @ 6307]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
1539 }
493a921c0378 [gaim-migrate @ 6307]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
1540
493a921c0378 [gaim-migrate @ 6307]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
1541 static void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1542 free_pounce(PurplePounce *pounce)
5875
493a921c0378 [gaim-migrate @ 6307]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
1543 {
12136
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1544 update_pounces();
5875
493a921c0378 [gaim-migrate @ 6307]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
1545 }
493a921c0378 [gaim-migrate @ 6307]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
1546
493a921c0378 [gaim-migrate @ 6307]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
1547 static void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1548 new_pounce(PurplePounce *pounce)
5875
493a921c0378 [gaim-migrate @ 6307]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
1549 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1550 purple_pounce_action_register(pounce, "open-window");
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1551 purple_pounce_action_register(pounce, "popup-notify");
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1552 purple_pounce_action_register(pounce, "send-message");
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1553 purple_pounce_action_register(pounce, "execute-command");
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1554 purple_pounce_action_register(pounce, "play-sound");
12136
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1555
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1556 update_pounces();
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1557 }
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1558
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1559 void *
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15496
diff changeset
1560 pidgin_pounces_get_handle() {
12136
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1561 static int handle;
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1562
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1563 return &handle;
5875
493a921c0378 [gaim-migrate @ 6307]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
1564 }
493a921c0378 [gaim-migrate @ 6307]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
1565
493a921c0378 [gaim-migrate @ 6307]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
1566 void
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15496
diff changeset
1567 pidgin_pounces_init(void)
5875
493a921c0378 [gaim-migrate @ 6307]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
1568 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1569 purple_pounces_register_handler(PIDGIN_UI, pounce_cb, new_pounce,
5875
493a921c0378 [gaim-migrate @ 6307]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
1570 free_pounce);
9206
57a4db675f8d [gaim-migrate @ 10001]
Christian Hammond <chipx86@chipx86.com>
parents: 9205
diff changeset
1571
16123
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
1572 purple_prefs_add_none(PIDGIN_PREFS_ROOT "/pounces");
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
1573 purple_prefs_add_none(PIDGIN_PREFS_ROOT "/pounces/default_actions");
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
1574 purple_prefs_add_bool(PIDGIN_PREFS_ROOT "/pounces/default_actions/open-window",
9206
57a4db675f8d [gaim-migrate @ 10001]
Christian Hammond <chipx86@chipx86.com>
parents: 9205
diff changeset
1575 FALSE);
16123
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
1576 purple_prefs_add_bool(PIDGIN_PREFS_ROOT "/pounces/default_actions/popup-notify",
12141
9cd436b9b7f6 [gaim-migrate @ 14442]
Richard Laager <rlaager@pidgin.im>
parents: 12137
diff changeset
1577 TRUE);
16123
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
1578 purple_prefs_add_bool(PIDGIN_PREFS_ROOT "/pounces/default_actions/send-message",
12141
9cd436b9b7f6 [gaim-migrate @ 14442]
Richard Laager <rlaager@pidgin.im>
parents: 12137
diff changeset
1579 FALSE);
16123
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
1580 purple_prefs_add_bool(PIDGIN_PREFS_ROOT "/pounces/default_actions/execute-command",
9206
57a4db675f8d [gaim-migrate @ 10001]
Christian Hammond <chipx86@chipx86.com>
parents: 9205
diff changeset
1581 FALSE);
16123
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
1582 purple_prefs_add_bool(PIDGIN_PREFS_ROOT "/pounces/default_actions/play-sound",
9206
57a4db675f8d [gaim-migrate @ 10001]
Christian Hammond <chipx86@chipx86.com>
parents: 9205
diff changeset
1583 FALSE);
16123
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
1584 purple_prefs_add_none(PIDGIN_PREFS_ROOT "/pounces/dialog");
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
1585 purple_prefs_add_int(PIDGIN_PREFS_ROOT "/pounces/dialog/width", 520);
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
1586 purple_prefs_add_int(PIDGIN_PREFS_ROOT "/pounces/dialog/height", 321);
12136
027b7ebee256 [gaim-migrate @ 14436]
Kevin Stange <kstange@pidgin.im>
parents: 11995
diff changeset
1587
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1588 purple_signal_connect(purple_connections_get_handle(), "signed-on",
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15496
diff changeset
1589 pidgin_pounces_get_handle(),
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1590 PURPLE_CALLBACK(signed_on_off_cb), NULL);
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1591 purple_signal_connect(purple_connections_get_handle(), "signed-off",
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15496
diff changeset
1592 pidgin_pounces_get_handle(),
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1593 PURPLE_CALLBACK(signed_on_off_cb), NULL);
5875
493a921c0378 [gaim-migrate @ 6307]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
1594 }

mercurial