pidgin/plugins/raw.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 20288
5ca925a094e2
child 35526
ed1be305c985
child 36543
a8c3fecee2d3
child 38072
bbe95e29bdaf
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.

12019
a9c0e0fe09b2 [gaim-migrate @ 14312]
Mark Doliner <markdoliner@pidgin.im>
parents: 11256
diff changeset
1 /*
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15577
diff changeset
2 * Purple - Send raw data across the connections of some protocols.
12019
a9c0e0fe09b2 [gaim-migrate @ 14312]
Mark Doliner <markdoliner@pidgin.im>
parents: 11256
diff changeset
3 *
15931
716b5fac1895 Re-sed the copyright notices so they don't all talk about Purple.
Richard Laager <rlaager@pidgin.im>
parents: 15884
diff changeset
4 * Pidgin is the legal property of its developers, whose names are too numerous
12019
a9c0e0fe09b2 [gaim-migrate @ 14312]
Mark Doliner <markdoliner@pidgin.im>
parents: 11256
diff changeset
5 * to list here. Please refer to the COPYRIGHT file distributed with this
a9c0e0fe09b2 [gaim-migrate @ 14312]
Mark Doliner <markdoliner@pidgin.im>
parents: 11256
diff changeset
6 * source distribution.
a9c0e0fe09b2 [gaim-migrate @ 14312]
Mark Doliner <markdoliner@pidgin.im>
parents: 11256
diff changeset
7 *
a9c0e0fe09b2 [gaim-migrate @ 14312]
Mark Doliner <markdoliner@pidgin.im>
parents: 11256
diff changeset
8 * This program is free software; you can redistribute it and/or modify
a9c0e0fe09b2 [gaim-migrate @ 14312]
Mark Doliner <markdoliner@pidgin.im>
parents: 11256
diff changeset
9 * it under the terms of the GNU General Public License as published by
a9c0e0fe09b2 [gaim-migrate @ 14312]
Mark Doliner <markdoliner@pidgin.im>
parents: 11256
diff changeset
10 * the Free Software Foundation; either version 2 of the License, or
a9c0e0fe09b2 [gaim-migrate @ 14312]
Mark Doliner <markdoliner@pidgin.im>
parents: 11256
diff changeset
11 * (at your option) any later version.
a9c0e0fe09b2 [gaim-migrate @ 14312]
Mark Doliner <markdoliner@pidgin.im>
parents: 11256
diff changeset
12 *
a9c0e0fe09b2 [gaim-migrate @ 14312]
Mark Doliner <markdoliner@pidgin.im>
parents: 11256
diff changeset
13 * This program is distributed in the hope that it will be useful,
a9c0e0fe09b2 [gaim-migrate @ 14312]
Mark Doliner <markdoliner@pidgin.im>
parents: 11256
diff changeset
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
a9c0e0fe09b2 [gaim-migrate @ 14312]
Mark Doliner <markdoliner@pidgin.im>
parents: 11256
diff changeset
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
a9c0e0fe09b2 [gaim-migrate @ 14312]
Mark Doliner <markdoliner@pidgin.im>
parents: 11256
diff changeset
16 * GNU General Public License for more details.
a9c0e0fe09b2 [gaim-migrate @ 14312]
Mark Doliner <markdoliner@pidgin.im>
parents: 11256
diff changeset
17 *
a9c0e0fe09b2 [gaim-migrate @ 14312]
Mark Doliner <markdoliner@pidgin.im>
parents: 11256
diff changeset
18 * You should have received a copy of the GNU General Public License
a9c0e0fe09b2 [gaim-migrate @ 14312]
Mark Doliner <markdoliner@pidgin.im>
parents: 11256
diff changeset
19 * 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: 16961
diff changeset
20 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA
12019
a9c0e0fe09b2 [gaim-migrate @ 14312]
Mark Doliner <markdoliner@pidgin.im>
parents: 11256
diff changeset
21 *
a9c0e0fe09b2 [gaim-migrate @ 14312]
Mark Doliner <markdoliner@pidgin.im>
parents: 11256
diff changeset
22 */
a9c0e0fe09b2 [gaim-migrate @ 14312]
Mark Doliner <markdoliner@pidgin.im>
parents: 11256
diff changeset
23
a9c0e0fe09b2 [gaim-migrate @ 14312]
Mark Doliner <markdoliner@pidgin.im>
parents: 11256
diff changeset
24 #include "internal.h"
15577
b8129373f65e More pidgin changes
Sean Egan <seanegan@pidgin.im>
parents: 15562
diff changeset
25 #include "pidgin.h"
12019
a9c0e0fe09b2 [gaim-migrate @ 14312]
Mark Doliner <markdoliner@pidgin.im>
parents: 11256
diff changeset
26
6387
f722c42421b5 [gaim-migrate @ 6892]
Christian Hammond <chipx86@chipx86.com>
parents: 6371
diff changeset
27 #include "conversation.h"
f722c42421b5 [gaim-migrate @ 6892]
Christian Hammond <chipx86@chipx86.com>
parents: 6371
diff changeset
28 #include "debug.h"
2495
9364b39abb16 [gaim-migrate @ 2508]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
29 #include "prpl.h"
9954
52a14a58a33e [gaim-migrate @ 10851]
Nathan Walp <nwalp@pidgin.im>
parents: 9821
diff changeset
30 #include "version.h"
9821
d02520c59822 [gaim-migrate @ 10692]
Mark Doliner <markdoliner@pidgin.im>
parents: 9460
diff changeset
31
5320
cfe260ea11ca [gaim-migrate @ 5692]
Christian Hammond <chipx86@chipx86.com>
parents: 5314
diff changeset
32 #include "gtkplugin.h"
6388
781d943c54db [gaim-migrate @ 6893]
Christian Hammond <chipx86@chipx86.com>
parents: 6387
diff changeset
33 #include "gtkutils.h"
6387
f722c42421b5 [gaim-migrate @ 6892]
Christian Hammond <chipx86@chipx86.com>
parents: 6371
diff changeset
34
12020
794adf970460 [gaim-migrate @ 14313]
Mark Doliner <markdoliner@pidgin.im>
parents: 12019
diff changeset
35 #include "protocols/jabber/jabber.h"
794adf970460 [gaim-migrate @ 14313]
Mark Doliner <markdoliner@pidgin.im>
parents: 12019
diff changeset
36 #include "protocols/msn/session.h"
794adf970460 [gaim-migrate @ 14313]
Mark Doliner <markdoliner@pidgin.im>
parents: 12019
diff changeset
37
2495
9364b39abb16 [gaim-migrate @ 2508]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
38 #ifdef MAX
6387
f722c42421b5 [gaim-migrate @ 6892]
Christian Hammond <chipx86@chipx86.com>
parents: 6371
diff changeset
39 # undef MAX
f722c42421b5 [gaim-migrate @ 6892]
Christian Hammond <chipx86@chipx86.com>
parents: 6371
diff changeset
40 # undef MIN
2495
9364b39abb16 [gaim-migrate @ 2508]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
41 #endif
6387
f722c42421b5 [gaim-migrate @ 6892]
Christian Hammond <chipx86@chipx86.com>
parents: 6371
diff changeset
42
f722c42421b5 [gaim-migrate @ 6892]
Christian Hammond <chipx86@chipx86.com>
parents: 6371
diff changeset
43 #define RAW_PLUGIN_ID "gtk-raw"
2495
9364b39abb16 [gaim-migrate @ 2508]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
44
9364b39abb16 [gaim-migrate @ 2508]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
45 static GtkWidget *window = NULL;
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15577
diff changeset
46 static PurpleAccount *account = NULL;
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15577
diff changeset
47 static PurplePlugin *my_plugin = NULL;
2495
9364b39abb16 [gaim-migrate @ 2508]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
48
6388
781d943c54db [gaim-migrate @ 6893]
Christian Hammond <chipx86@chipx86.com>
parents: 6387
diff changeset
49 static int
781d943c54db [gaim-migrate @ 6893]
Christian Hammond <chipx86@chipx86.com>
parents: 6387
diff changeset
50 window_closed_cb()
2495
9364b39abb16 [gaim-migrate @ 2508]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
51 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15577
diff changeset
52 purple_plugin_unload(my_plugin);
6388
781d943c54db [gaim-migrate @ 6893]
Christian Hammond <chipx86@chipx86.com>
parents: 6387
diff changeset
53
2495
9364b39abb16 [gaim-migrate @ 2508]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
54 return FALSE;
9364b39abb16 [gaim-migrate @ 2508]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
55 }
9364b39abb16 [gaim-migrate @ 2508]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
56
6388
781d943c54db [gaim-migrate @ 6893]
Christian Hammond <chipx86@chipx86.com>
parents: 6387
diff changeset
57 static void
781d943c54db [gaim-migrate @ 6893]
Christian Hammond <chipx86@chipx86.com>
parents: 6387
diff changeset
58 text_sent_cb(GtkEntry *entry)
2495
9364b39abb16 [gaim-migrate @ 2508]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
59 {
4655
232f23f33b0a [gaim-migrate @ 4966]
Nathan Walp <nwalp@pidgin.im>
parents: 4165
diff changeset
60 const char *txt;
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15577
diff changeset
61 PurpleConnection *gc;
9460
7c1ab9155fe2 [gaim-migrate @ 10285]
Daniel Atallah <datallah@pidgin.im>
parents: 8993
diff changeset
62 const char *prpl_id;
6388
781d943c54db [gaim-migrate @ 6893]
Christian Hammond <chipx86@chipx86.com>
parents: 6387
diff changeset
63
781d943c54db [gaim-migrate @ 6893]
Christian Hammond <chipx86@chipx86.com>
parents: 6387
diff changeset
64 if (account == NULL)
781d943c54db [gaim-migrate @ 6893]
Christian Hammond <chipx86@chipx86.com>
parents: 6387
diff changeset
65 return;
781d943c54db [gaim-migrate @ 6893]
Christian Hammond <chipx86@chipx86.com>
parents: 6387
diff changeset
66
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15577
diff changeset
67 gc = purple_account_get_connection(account);
6388
781d943c54db [gaim-migrate @ 6893]
Christian Hammond <chipx86@chipx86.com>
parents: 6387
diff changeset
68
2495
9364b39abb16 [gaim-migrate @ 2508]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
69 txt = gtk_entry_get_text(entry);
6388
781d943c54db [gaim-migrate @ 6893]
Christian Hammond <chipx86@chipx86.com>
parents: 6387
diff changeset
70
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15577
diff changeset
71 prpl_id = purple_account_get_protocol_id(account);
12019
a9c0e0fe09b2 [gaim-migrate @ 14312]
Mark Doliner <markdoliner@pidgin.im>
parents: 11256
diff changeset
72
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15577
diff changeset
73 purple_debug_misc("raw", "prpl_id = %s\n", prpl_id);
12019
a9c0e0fe09b2 [gaim-migrate @ 14312]
Mark Doliner <markdoliner@pidgin.im>
parents: 11256
diff changeset
74
9460
7c1ab9155fe2 [gaim-migrate @ 10285]
Daniel Atallah <datallah@pidgin.im>
parents: 8993
diff changeset
75 if (strcmp(prpl_id, "prpl-toc") == 0) {
7c1ab9155fe2 [gaim-migrate @ 10285]
Daniel Atallah <datallah@pidgin.im>
parents: 8993
diff changeset
76 int *a = (int *)gc->proto_data;
7c1ab9155fe2 [gaim-migrate @ 10285]
Daniel Atallah <datallah@pidgin.im>
parents: 8993
diff changeset
77 unsigned short seqno = htons(a[1]++ & 0xffff);
7c1ab9155fe2 [gaim-migrate @ 10285]
Daniel Atallah <datallah@pidgin.im>
parents: 8993
diff changeset
78 unsigned short len = htons(strlen(txt) + 1);
7c1ab9155fe2 [gaim-migrate @ 10285]
Daniel Atallah <datallah@pidgin.im>
parents: 8993
diff changeset
79 write(*a, "*\002", 2);
7c1ab9155fe2 [gaim-migrate @ 10285]
Daniel Atallah <datallah@pidgin.im>
parents: 8993
diff changeset
80 write(*a, &seqno, 2);
7c1ab9155fe2 [gaim-migrate @ 10285]
Daniel Atallah <datallah@pidgin.im>
parents: 8993
diff changeset
81 write(*a, &len, 2);
7c1ab9155fe2 [gaim-migrate @ 10285]
Daniel Atallah <datallah@pidgin.im>
parents: 8993
diff changeset
82 write(*a, txt, ntohs(len));
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15577
diff changeset
83 purple_debug(PURPLE_DEBUG_MISC, "raw", "TOC C: %s\n", txt);
5320
cfe260ea11ca [gaim-migrate @ 5692]
Christian Hammond <chipx86@chipx86.com>
parents: 5314
diff changeset
84
12020
794adf970460 [gaim-migrate @ 14313]
Mark Doliner <markdoliner@pidgin.im>
parents: 12019
diff changeset
85 } else if (strcmp(prpl_id, "prpl-msn") == 0) {
794adf970460 [gaim-migrate @ 14313]
Mark Doliner <markdoliner@pidgin.im>
parents: 12019
diff changeset
86 MsnSession *session = gc->proto_data;
794adf970460 [gaim-migrate @ 14313]
Mark Doliner <markdoliner@pidgin.im>
parents: 12019
diff changeset
87 char buf[strlen(txt) + 3];
794adf970460 [gaim-migrate @ 14313]
Mark Doliner <markdoliner@pidgin.im>
parents: 12019
diff changeset
88
794adf970460 [gaim-migrate @ 14313]
Mark Doliner <markdoliner@pidgin.im>
parents: 12019
diff changeset
89 g_snprintf(buf, sizeof(buf), "%s\r\n", txt);
794adf970460 [gaim-migrate @ 14313]
Mark Doliner <markdoliner@pidgin.im>
parents: 12019
diff changeset
90 msn_servconn_write(session->notification->servconn, buf, strlen(buf));
794adf970460 [gaim-migrate @ 14313]
Mark Doliner <markdoliner@pidgin.im>
parents: 12019
diff changeset
91
9460
7c1ab9155fe2 [gaim-migrate @ 10285]
Daniel Atallah <datallah@pidgin.im>
parents: 8993
diff changeset
92 } else if (strcmp(prpl_id, "prpl-irc") == 0) {
7c1ab9155fe2 [gaim-migrate @ 10285]
Daniel Atallah <datallah@pidgin.im>
parents: 8993
diff changeset
93 write(*(int *)gc->proto_data, txt, strlen(txt));
7c1ab9155fe2 [gaim-migrate @ 10285]
Daniel Atallah <datallah@pidgin.im>
parents: 8993
diff changeset
94 write(*(int *)gc->proto_data, "\r\n", 2);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15577
diff changeset
95 purple_debug(PURPLE_DEBUG_MISC, "raw", "IRC C: %s\n", txt);
6388
781d943c54db [gaim-migrate @ 6893]
Christian Hammond <chipx86@chipx86.com>
parents: 6387
diff changeset
96
12020
794adf970460 [gaim-migrate @ 14313]
Mark Doliner <markdoliner@pidgin.im>
parents: 12019
diff changeset
97 } else if (strcmp(prpl_id, "prpl-jabber") == 0) {
794adf970460 [gaim-migrate @ 14313]
Mark Doliner <markdoliner@pidgin.im>
parents: 12019
diff changeset
98 jabber_send_raw((JabberStream *)gc->proto_data, txt, -1);
794adf970460 [gaim-migrate @ 14313]
Mark Doliner <markdoliner@pidgin.im>
parents: 12019
diff changeset
99
9460
7c1ab9155fe2 [gaim-migrate @ 10285]
Daniel Atallah <datallah@pidgin.im>
parents: 8993
diff changeset
100 } else {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15577
diff changeset
101 purple_debug_error("raw", "Unknown protocol ID %s\n", prpl_id);
2495
9364b39abb16 [gaim-migrate @ 2508]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
102 }
6388
781d943c54db [gaim-migrate @ 6893]
Christian Hammond <chipx86@chipx86.com>
parents: 6387
diff changeset
103
2495
9364b39abb16 [gaim-migrate @ 2508]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
104 gtk_entry_set_text(entry, "");
9364b39abb16 [gaim-migrate @ 2508]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
105 }
9364b39abb16 [gaim-migrate @ 2508]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
106
6388
781d943c54db [gaim-migrate @ 6893]
Christian Hammond <chipx86@chipx86.com>
parents: 6387
diff changeset
107 static void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15577
diff changeset
108 account_changed_cb(GtkWidget *dropdown, PurpleAccount *new_account,
6388
781d943c54db [gaim-migrate @ 6893]
Christian Hammond <chipx86@chipx86.com>
parents: 6387
diff changeset
109 void *user_data)
2495
9364b39abb16 [gaim-migrate @ 2508]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
110 {
6388
781d943c54db [gaim-migrate @ 6893]
Christian Hammond <chipx86@chipx86.com>
parents: 6387
diff changeset
111 account = new_account;
2495
9364b39abb16 [gaim-migrate @ 2508]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
112 }
9364b39abb16 [gaim-migrate @ 2508]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
113
5320
cfe260ea11ca [gaim-migrate @ 5692]
Christian Hammond <chipx86@chipx86.com>
parents: 5314
diff changeset
114 static gboolean
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15577
diff changeset
115 plugin_load(PurplePlugin *plugin)
2495
9364b39abb16 [gaim-migrate @ 2508]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
116 {
9364b39abb16 [gaim-migrate @ 2508]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
117 GtkWidget *hbox;
9364b39abb16 [gaim-migrate @ 2508]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
118 GtkWidget *entry;
6388
781d943c54db [gaim-migrate @ 6893]
Christian Hammond <chipx86@chipx86.com>
parents: 6387
diff changeset
119 GtkWidget *dropdown;
2495
9364b39abb16 [gaim-migrate @ 2508]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
120
6388
781d943c54db [gaim-migrate @ 6893]
Christian Hammond <chipx86@chipx86.com>
parents: 6387
diff changeset
121 /* Setup the window. */
2495
9364b39abb16 [gaim-migrate @ 2508]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
122 window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
6389
efa3ddd6150f [gaim-migrate @ 6894]
Christian Hammond <chipx86@chipx86.com>
parents: 6388
diff changeset
123 gtk_container_set_border_width(GTK_CONTAINER(window), 6);
6388
781d943c54db [gaim-migrate @ 6893]
Christian Hammond <chipx86@chipx86.com>
parents: 6387
diff changeset
124
5320
cfe260ea11ca [gaim-migrate @ 5692]
Christian Hammond <chipx86@chipx86.com>
parents: 5314
diff changeset
125 g_signal_connect(G_OBJECT(window), "delete_event",
6388
781d943c54db [gaim-migrate @ 6893]
Christian Hammond <chipx86@chipx86.com>
parents: 6387
diff changeset
126 G_CALLBACK(window_closed_cb), NULL);
2495
9364b39abb16 [gaim-migrate @ 2508]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
127
6388
781d943c54db [gaim-migrate @ 6893]
Christian Hammond <chipx86@chipx86.com>
parents: 6387
diff changeset
128 /* Main hbox */
781d943c54db [gaim-migrate @ 6893]
Christian Hammond <chipx86@chipx86.com>
parents: 6387
diff changeset
129 hbox = gtk_hbox_new(FALSE, 6);
2495
9364b39abb16 [gaim-migrate @ 2508]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
130 gtk_container_add(GTK_CONTAINER(window), hbox);
9364b39abb16 [gaim-migrate @ 2508]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
131
6388
781d943c54db [gaim-migrate @ 6893]
Christian Hammond <chipx86@chipx86.com>
parents: 6387
diff changeset
132 /* Account drop-down menu. */
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
133 dropdown = pidgin_account_option_menu_new(NULL, FALSE,
6647
fc3661a34b11 [gaim-migrate @ 7172]
Christian Hammond <chipx86@chipx86.com>
parents: 6390
diff changeset
134 G_CALLBACK(account_changed_cb), NULL, NULL);
6388
781d943c54db [gaim-migrate @ 6893]
Christian Hammond <chipx86@chipx86.com>
parents: 6387
diff changeset
135
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15577
diff changeset
136 if (purple_connections_get_all())
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15577
diff changeset
137 account = (PurpleAccount *)purple_connections_get_all()->data;
6390
0123d5382013 [gaim-migrate @ 6895]
Christian Hammond <chipx86@chipx86.com>
parents: 6389
diff changeset
138
6388
781d943c54db [gaim-migrate @ 6893]
Christian Hammond <chipx86@chipx86.com>
parents: 6387
diff changeset
139 gtk_box_pack_start(GTK_BOX(hbox), dropdown, FALSE, FALSE, 0);
2495
9364b39abb16 [gaim-migrate @ 2508]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
140
6388
781d943c54db [gaim-migrate @ 6893]
Christian Hammond <chipx86@chipx86.com>
parents: 6387
diff changeset
141 /* Entry box */
2495
9364b39abb16 [gaim-migrate @ 2508]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
142 entry = gtk_entry_new();
6388
781d943c54db [gaim-migrate @ 6893]
Christian Hammond <chipx86@chipx86.com>
parents: 6387
diff changeset
143 gtk_box_pack_start(GTK_BOX(hbox), entry, FALSE, FALSE, 0);
781d943c54db [gaim-migrate @ 6893]
Christian Hammond <chipx86@chipx86.com>
parents: 6387
diff changeset
144
781d943c54db [gaim-migrate @ 6893]
Christian Hammond <chipx86@chipx86.com>
parents: 6387
diff changeset
145 g_signal_connect(G_OBJECT(entry), "activate",
781d943c54db [gaim-migrate @ 6893]
Christian Hammond <chipx86@chipx86.com>
parents: 6387
diff changeset
146 G_CALLBACK(text_sent_cb), NULL);
2495
9364b39abb16 [gaim-migrate @ 2508]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
147
9364b39abb16 [gaim-migrate @ 2508]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
148 gtk_widget_show_all(window);
9364b39abb16 [gaim-migrate @ 2508]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
149
5320
cfe260ea11ca [gaim-migrate @ 5692]
Christian Hammond <chipx86@chipx86.com>
parents: 5314
diff changeset
150 return TRUE;
2495
9364b39abb16 [gaim-migrate @ 2508]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
151 }
9364b39abb16 [gaim-migrate @ 2508]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
152
5320
cfe260ea11ca [gaim-migrate @ 5692]
Christian Hammond <chipx86@chipx86.com>
parents: 5314
diff changeset
153 static gboolean
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15577
diff changeset
154 plugin_unload(PurplePlugin *plugin)
2495
9364b39abb16 [gaim-migrate @ 2508]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
155 {
9364b39abb16 [gaim-migrate @ 2508]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
156 if (window)
9364b39abb16 [gaim-migrate @ 2508]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
157 gtk_widget_destroy(window);
5320
cfe260ea11ca [gaim-migrate @ 5692]
Christian Hammond <chipx86@chipx86.com>
parents: 5314
diff changeset
158
2495
9364b39abb16 [gaim-migrate @ 2508]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
159 window = NULL;
5320
cfe260ea11ca [gaim-migrate @ 5692]
Christian Hammond <chipx86@chipx86.com>
parents: 5314
diff changeset
160
cfe260ea11ca [gaim-migrate @ 5692]
Christian Hammond <chipx86@chipx86.com>
parents: 5314
diff changeset
161 return TRUE;
2495
9364b39abb16 [gaim-migrate @ 2508]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
162 }
5320
cfe260ea11ca [gaim-migrate @ 5692]
Christian Hammond <chipx86@chipx86.com>
parents: 5314
diff changeset
163
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15577
diff changeset
164 static PurplePluginInfo info =
5320
cfe260ea11ca [gaim-migrate @ 5692]
Christian Hammond <chipx86@chipx86.com>
parents: 5314
diff changeset
165 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15577
diff changeset
166 PURPLE_PLUGIN_MAGIC,
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15577
diff changeset
167 PURPLE_MAJOR_VERSION,
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15577
diff changeset
168 PURPLE_MINOR_VERSION,
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15577
diff changeset
169 PURPLE_PLUGIN_STANDARD,
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
170 PIDGIN_PLUGIN_TYPE,
5320
cfe260ea11ca [gaim-migrate @ 5692]
Christian Hammond <chipx86@chipx86.com>
parents: 5314
diff changeset
171 0,
cfe260ea11ca [gaim-migrate @ 5692]
Christian Hammond <chipx86@chipx86.com>
parents: 5314
diff changeset
172 NULL,
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15577
diff changeset
173 PURPLE_PRIORITY_DEFAULT,
5320
cfe260ea11ca [gaim-migrate @ 5692]
Christian Hammond <chipx86@chipx86.com>
parents: 5314
diff changeset
174 RAW_PLUGIN_ID,
cfe260ea11ca [gaim-migrate @ 5692]
Christian Hammond <chipx86@chipx86.com>
parents: 5314
diff changeset
175 N_("Raw"),
20288
5ca925a094e2 applied changes from 03b709ec2a153e7e82719df0ba4635108bb1d3c6
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 19859
diff changeset
176 DISPLAY_VERSION,
5424
7cb9f1bc5a96 [gaim-migrate @ 5803]
Ambrose Li <ambrose.li@gmail.com>
parents: 5320
diff changeset
177 N_("Lets you send raw input to text-based protocols."),
16961
b6955f946f8f s/Jabber/XMPP in user-visible places.
Richard Laager <rlaager@pidgin.im>
parents: 16799
diff changeset
178 N_("Lets you send raw input to text-based protocols (XMPP, MSN, IRC, "
5320
cfe260ea11ca [gaim-migrate @ 5692]
Christian Hammond <chipx86@chipx86.com>
parents: 5314
diff changeset
179 "TOC). Hit 'Enter' in the entry box to send. Watch the debug window."),
cfe260ea11ca [gaim-migrate @ 5692]
Christian Hammond <chipx86@chipx86.com>
parents: 5314
diff changeset
180 "Eric Warmenhoven <eric@warmenhoven.org>",
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15577
diff changeset
181 PURPLE_WEBSITE,
5320
cfe260ea11ca [gaim-migrate @ 5692]
Christian Hammond <chipx86@chipx86.com>
parents: 5314
diff changeset
182 plugin_load,
cfe260ea11ca [gaim-migrate @ 5692]
Christian Hammond <chipx86@chipx86.com>
parents: 5314
diff changeset
183 plugin_unload,
cfe260ea11ca [gaim-migrate @ 5692]
Christian Hammond <chipx86@chipx86.com>
parents: 5314
diff changeset
184 NULL,
cfe260ea11ca [gaim-migrate @ 5692]
Christian Hammond <chipx86@chipx86.com>
parents: 5314
diff changeset
185 NULL,
8993
41f67bceab41 [gaim-migrate @ 9768]
Luke Schierer <lschiere@pidgin.im>
parents: 8749
diff changeset
186 NULL,
41f67bceab41 [gaim-migrate @ 9768]
Luke Schierer <lschiere@pidgin.im>
parents: 8749
diff changeset
187 NULL,
5320
cfe260ea11ca [gaim-migrate @ 5692]
Christian Hammond <chipx86@chipx86.com>
parents: 5314
diff changeset
188 NULL
cfe260ea11ca [gaim-migrate @ 5692]
Christian Hammond <chipx86@chipx86.com>
parents: 5314
diff changeset
189 };
cfe260ea11ca [gaim-migrate @ 5692]
Christian Hammond <chipx86@chipx86.com>
parents: 5314
diff changeset
190
cfe260ea11ca [gaim-migrate @ 5692]
Christian Hammond <chipx86@chipx86.com>
parents: 5314
diff changeset
191 static void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15577
diff changeset
192 init_plugin(PurplePlugin *plugin)
5320
cfe260ea11ca [gaim-migrate @ 5692]
Christian Hammond <chipx86@chipx86.com>
parents: 5314
diff changeset
193 {
6388
781d943c54db [gaim-migrate @ 6893]
Christian Hammond <chipx86@chipx86.com>
parents: 6387
diff changeset
194 my_plugin = plugin;
5320
cfe260ea11ca [gaim-migrate @ 5692]
Christian Hammond <chipx86@chipx86.com>
parents: 5314
diff changeset
195 }
cfe260ea11ca [gaim-migrate @ 5692]
Christian Hammond <chipx86@chipx86.com>
parents: 5314
diff changeset
196
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15577
diff changeset
197 PURPLE_INIT_PLUGIN(raw, init_plugin, info)

mercurial