Mercurial > pidgin
annotate libpurple/notify.c @ 24263:577f9df685c2
merge of '4f7bf56fa49ba320a72f34b0df3e12c95b6bd84d'
and '5b118704741ad92794d9a27021f3862681c7b048'
author | John Bailey <rekkanoryo@rekkanoryo.org> |
---|---|
date | Sun, 19 Oct 2008 02:33:10 +0000 |
parents | 84693a70ea3a |
children | 8282911d5e17 |
rev | line source |
---|---|
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1 /** |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2 * @file notify.c Notification API |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
3 * @ingroup core |
20074
6bf32c9e15a7
remove gpl boilerplate from doxygen docs
Sean Egan <seanegan@gmail.com>
parents:
19681
diff
changeset
|
4 */ |
6bf32c9e15a7
remove gpl boilerplate from doxygen docs
Sean Egan <seanegan@gmail.com>
parents:
19681
diff
changeset
|
5 |
6bf32c9e15a7
remove gpl boilerplate from doxygen docs
Sean Egan <seanegan@gmail.com>
parents:
19681
diff
changeset
|
6 /* purple |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
7 * |
15822 | 8 * Purple is the legal property of its developers, whose names are too numerous |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
9 * to list here. Please refer to the COPYRIGHT file distributed with this |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
10 * source distribution. |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
11 * |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
12 * This program is free software; you can redistribute it and/or modify |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
13 * it under the terms of the GNU General Public License as published by |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
14 * the Free Software Foundation; either version 2 of the License, or |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
15 * (at your option) any later version. |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
16 * |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
17 * This program is distributed in the hope that it will be useful, |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
18 * but WITHOUT ANY WARRANTY; without even the implied warranty of |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
19 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
20 * GNU General Public License for more details. |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
21 * |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
22 * You should have received a copy of the GNU General Public License |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
23 * along with this program; if not, write to the Free Software |
19681
44b4e8bd759b
The FSF changed its address a while ago; our files were out of date.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
18675
diff
changeset
|
24 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
25 */ |
17066
46351036fdb4
DBusify userinfo stuff.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
16597
diff
changeset
|
26 #include "internal.h" |
46351036fdb4
DBusify userinfo stuff.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
16597
diff
changeset
|
27 #include "dbus-maybe.h" |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
28 #include "notify.h" |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
29 |
15822 | 30 static PurpleNotifyUiOps *notify_ui_ops = NULL; |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
31 static GList *handles = NULL; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
32 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
33 typedef struct |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
34 { |
15822 | 35 PurpleNotifyType type; |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
36 void *handle; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
37 void *ui_handle; |
15822 | 38 PurpleNotifyCloseCallback cb; |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
39 gpointer cb_user_data; |
15822 | 40 } PurpleNotifyInfo; |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
41 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
42 /** |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
43 * Definition of a user info entry |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
44 */ |
15822 | 45 struct _PurpleNotifyUserInfoEntry |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
46 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
47 char *label; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
48 char *value; |
15822 | 49 PurpleNotifyUserInfoEntryType type; |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
50 }; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
51 |
15822 | 52 struct _PurpleNotifyUserInfo |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
53 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
54 GList *user_info_entries; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
55 }; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
56 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
57 void * |
15822 | 58 purple_notify_message(void *handle, PurpleNotifyMsgType type, |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
59 const char *title, const char *primary, |
15822 | 60 const char *secondary, PurpleNotifyCloseCallback cb, gpointer user_data) |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
61 { |
15822 | 62 PurpleNotifyUiOps *ops; |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
63 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
64 g_return_val_if_fail(primary != NULL, NULL); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
65 |
15822 | 66 ops = purple_notify_get_ui_ops(); |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
67 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
68 if (ops != NULL && ops->notify_message != NULL) { |
22820
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
69 void *ui_handle = ops->notify_message(type, title, primary, |
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
70 secondary); |
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
71 if (ui_handle != NULL) { |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
72 |
22820
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
73 PurpleNotifyInfo *info = g_new0(PurpleNotifyInfo, 1); |
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
74 info->type = PURPLE_NOTIFY_MESSAGE; |
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
75 info->handle = handle; |
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
76 info->ui_handle = ui_handle; |
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
77 info->cb = cb; |
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
78 info->cb_user_data = user_data; |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
79 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
80 handles = g_list_append(handles, info); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
81 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
82 return info->ui_handle; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
83 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
84 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
85 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
86 |
22820
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
87 if (cb != NULL) |
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
88 cb(user_data); |
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
89 |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
90 return NULL; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
91 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
92 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
93 void * |
15822 | 94 purple_notify_email(void *handle, const char *subject, const char *from, |
95 const char *to, const char *url, PurpleNotifyCloseCallback cb, | |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
96 gpointer user_data) |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
97 { |
15822 | 98 PurpleNotifyUiOps *ops; |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
99 |
15822 | 100 ops = purple_notify_get_ui_ops(); |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
101 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
102 if (ops != NULL && ops->notify_email != NULL) { |
22820
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
103 void *ui_handle; |
18675
cb91bb07eeff
Email notification signals from charkins. Fixes #1324
Sean Egan <seanegan@gmail.com>
parents:
18119
diff
changeset
|
104 |
cb91bb07eeff
Email notification signals from charkins. Fixes #1324
Sean Egan <seanegan@gmail.com>
parents:
18119
diff
changeset
|
105 purple_signal_emit(purple_notify_get_handle(), "displaying-email-notification", |
22820
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
106 subject, from, to, url); |
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
107 |
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
108 ui_handle = ops->notify_email(handle, subject, from, to, url); |
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
109 |
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
110 if (ui_handle != NULL) { |
18675
cb91bb07eeff
Email notification signals from charkins. Fixes #1324
Sean Egan <seanegan@gmail.com>
parents:
18119
diff
changeset
|
111 |
22820
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
112 PurpleNotifyInfo *info = g_new0(PurpleNotifyInfo, 1); |
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
113 info->type = PURPLE_NOTIFY_EMAIL; |
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
114 info->handle = handle; |
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
115 info->ui_handle = ui_handle; |
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
116 info->cb = cb; |
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
117 info->cb_user_data = user_data; |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
118 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
119 handles = g_list_append(handles, info); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
120 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
121 return info->ui_handle; |
22820
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
122 } |
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
123 } |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
124 |
22820
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
125 if (cb != NULL) |
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
126 cb(user_data); |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
127 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
128 return NULL; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
129 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
130 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
131 void * |
15822 | 132 purple_notify_emails(void *handle, size_t count, gboolean detailed, |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
133 const char **subjects, const char **froms, |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
134 const char **tos, const char **urls, |
15822 | 135 PurpleNotifyCloseCallback cb, gpointer user_data) |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
136 { |
15822 | 137 PurpleNotifyUiOps *ops; |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
138 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
139 if (count == 1) { |
15822 | 140 return purple_notify_email(handle, |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
141 (subjects == NULL ? NULL : *subjects), |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
142 (froms == NULL ? NULL : *froms), |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
143 (tos == NULL ? NULL : *tos), |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
144 (urls == NULL ? NULL : *urls), |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
145 cb, user_data); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
146 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
147 |
15822 | 148 ops = purple_notify_get_ui_ops(); |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
149 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
150 if (ops != NULL && ops->notify_emails != NULL) { |
22820
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
151 void *ui_handle; |
18675
cb91bb07eeff
Email notification signals from charkins. Fixes #1324
Sean Egan <seanegan@gmail.com>
parents:
18119
diff
changeset
|
152 |
cb91bb07eeff
Email notification signals from charkins. Fixes #1324
Sean Egan <seanegan@gmail.com>
parents:
18119
diff
changeset
|
153 purple_signal_emit(purple_notify_get_handle(), "displaying-emails-notification", |
cb91bb07eeff
Email notification signals from charkins. Fixes #1324
Sean Egan <seanegan@gmail.com>
parents:
18119
diff
changeset
|
154 subjects, froms, tos, urls, count); |
cb91bb07eeff
Email notification signals from charkins. Fixes #1324
Sean Egan <seanegan@gmail.com>
parents:
18119
diff
changeset
|
155 |
22820
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
156 ui_handle = ops->notify_emails(handle, count, detailed, subjects, |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
157 froms, tos, urls); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
158 |
22820
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
159 if (ui_handle != NULL) { |
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
160 PurpleNotifyInfo *info = g_new0(PurpleNotifyInfo, 1); |
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
161 info->type = PURPLE_NOTIFY_EMAILS; |
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
162 info->handle = handle; |
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
163 info->ui_handle = ui_handle; |
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
164 info->cb = cb; |
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
165 info->cb_user_data = user_data; |
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
166 |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
167 handles = g_list_append(handles, info); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
168 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
169 return info->ui_handle; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
170 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
171 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
172 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
173 |
22820
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
174 if (cb != NULL) |
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
175 cb(user_data); |
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
176 |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
177 return NULL; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
178 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
179 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
180 void * |
15822 | 181 purple_notify_formatted(void *handle, const char *title, const char *primary, |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
182 const char *secondary, const char *text, |
15822 | 183 PurpleNotifyCloseCallback cb, gpointer user_data) |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
184 { |
15822 | 185 PurpleNotifyUiOps *ops; |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
186 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
187 g_return_val_if_fail(primary != NULL, NULL); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
188 |
15822 | 189 ops = purple_notify_get_ui_ops(); |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
190 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
191 if (ops != NULL && ops->notify_formatted != NULL) { |
22820
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
192 void *ui_handle = ops->notify_formatted(title, primary, secondary, text); |
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
193 |
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
194 if (ui_handle != NULL) { |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
195 |
22820
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
196 PurpleNotifyInfo *info = g_new0(PurpleNotifyInfo, 1); |
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
197 info->type = PURPLE_NOTIFY_FORMATTED; |
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
198 info->handle = handle; |
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
199 info->ui_handle = ui_handle; |
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
200 info->cb = cb; |
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
201 info->cb_user_data = user_data; |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
202 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
203 handles = g_list_append(handles, info); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
204 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
205 return info->ui_handle; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
206 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
207 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
208 |
22820
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
209 if (cb != NULL) |
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
210 cb(user_data); |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
211 return NULL; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
212 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
213 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
214 void * |
15822 | 215 purple_notify_searchresults(PurpleConnection *gc, const char *title, |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
216 const char *primary, const char *secondary, |
15822 | 217 PurpleNotifySearchResults *results, PurpleNotifyCloseCallback cb, |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
218 gpointer user_data) |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
219 { |
15822 | 220 PurpleNotifyUiOps *ops; |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
221 |
15822 | 222 ops = purple_notify_get_ui_ops(); |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
223 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
224 if (ops != NULL && ops->notify_searchresults != NULL) { |
22820
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
225 void *ui_handle = ops->notify_searchresults(gc, title, primary, |
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
226 secondary, results, user_data); |
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
227 if (ui_handle != NULL) { |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
228 |
22820
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
229 PurpleNotifyInfo *info = g_new0(PurpleNotifyInfo, 1); |
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
230 info->type = PURPLE_NOTIFY_SEARCHRESULTS; |
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
231 info->handle = gc; |
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
232 info->ui_handle = ui_handle; |
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
233 info->cb = cb; |
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
234 info->cb_user_data = user_data; |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
235 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
236 handles = g_list_append(handles, info); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
237 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
238 return info->ui_handle; |
22820
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
239 } |
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
240 } |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
241 |
22820
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
242 if (cb != NULL) |
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
243 cb(user_data); |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
244 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
245 return NULL; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
246 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
247 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
248 void |
15822 | 249 purple_notify_searchresults_free(PurpleNotifySearchResults *results) |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
250 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
251 GList *l; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
252 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
253 g_return_if_fail(results != NULL); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
254 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
255 for (l = results->buttons; l; l = g_list_delete_link(l, l)) { |
15822 | 256 PurpleNotifySearchButton *button = l->data; |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
257 g_free(button->label); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
258 g_free(button); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
259 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
260 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
261 for (l = results->rows; l; l = g_list_delete_link(l, l)) { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
262 GList *row = l->data; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
263 g_list_foreach(row, (GFunc)g_free, NULL); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
264 g_list_free(row); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
265 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
266 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
267 for (l = results->columns; l; l = g_list_delete_link(l, l)) { |
15822 | 268 PurpleNotifySearchColumn *column = l->data; |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
269 g_free(column->title); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
270 g_free(column); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
271 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
272 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
273 g_free(results); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
274 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
275 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
276 void |
15822 | 277 purple_notify_searchresults_new_rows(PurpleConnection *gc, |
278 PurpleNotifySearchResults *results, | |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
279 void *data) |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
280 { |
15822 | 281 PurpleNotifyUiOps *ops; |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
282 |
15822 | 283 ops = purple_notify_get_ui_ops(); |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
284 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
285 if (ops != NULL && ops->notify_searchresults != NULL) { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
286 ops->notify_searchresults_new_rows(gc, results, data); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
287 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
288 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
289 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
290 void |
15822 | 291 purple_notify_searchresults_button_add(PurpleNotifySearchResults *results, |
292 PurpleNotifySearchButtonType type, | |
293 PurpleNotifySearchResultsCallback cb) | |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
294 { |
15822 | 295 PurpleNotifySearchButton *button; |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
296 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
297 g_return_if_fail(results != NULL); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
298 g_return_if_fail(cb != NULL); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
299 |
15822 | 300 button = g_new0(PurpleNotifySearchButton, 1); |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
301 button->callback = cb; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
302 button->type = type; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
303 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
304 results->buttons = g_list_append(results->buttons, button); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
305 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
306 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
307 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
308 void |
15822 | 309 purple_notify_searchresults_button_add_labeled(PurpleNotifySearchResults *results, |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
310 const char *label, |
15822 | 311 PurpleNotifySearchResultsCallback cb) { |
312 PurpleNotifySearchButton *button; | |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
313 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
314 g_return_if_fail(results != NULL); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
315 g_return_if_fail(cb != NULL); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
316 g_return_if_fail(label != NULL); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
317 g_return_if_fail(*label != '\0'); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
318 |
15822 | 319 button = g_new0(PurpleNotifySearchButton, 1); |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
320 button->callback = cb; |
15822 | 321 button->type = PURPLE_NOTIFY_BUTTON_LABELED; |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
322 button->label = g_strdup(label); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
323 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
324 results->buttons = g_list_append(results->buttons, button); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
325 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
326 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
327 |
15822 | 328 PurpleNotifySearchResults * |
329 purple_notify_searchresults_new() | |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
330 { |
15822 | 331 PurpleNotifySearchResults *rs = g_new0(PurpleNotifySearchResults, 1); |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
332 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
333 return rs; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
334 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
335 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
336 void |
15822 | 337 purple_notify_searchresults_column_add(PurpleNotifySearchResults *results, |
338 PurpleNotifySearchColumn *column) | |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
339 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
340 g_return_if_fail(results != NULL); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
341 g_return_if_fail(column != NULL); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
342 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
343 results->columns = g_list_append(results->columns, column); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
344 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
345 |
15822 | 346 void purple_notify_searchresults_row_add(PurpleNotifySearchResults *results, |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
347 GList *row) |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
348 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
349 g_return_if_fail(results != NULL); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
350 g_return_if_fail(row != NULL); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
351 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
352 results->rows = g_list_append(results->rows, row); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
353 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
354 |
15822 | 355 PurpleNotifySearchColumn * |
356 purple_notify_searchresults_column_new(const char *title) | |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
357 { |
15822 | 358 PurpleNotifySearchColumn *sc; |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
359 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
360 g_return_val_if_fail(title != NULL, NULL); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
361 |
15822 | 362 sc = g_new0(PurpleNotifySearchColumn, 1); |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
363 sc->title = g_strdup(title); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
364 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
365 return sc; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
366 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
367 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
368 guint |
15822 | 369 purple_notify_searchresults_get_columns_count(PurpleNotifySearchResults *results) |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
370 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
371 g_return_val_if_fail(results != NULL, 0); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
372 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
373 return g_list_length(results->columns); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
374 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
375 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
376 guint |
15822 | 377 purple_notify_searchresults_get_rows_count(PurpleNotifySearchResults *results) |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
378 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
379 g_return_val_if_fail(results != NULL, 0); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
380 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
381 return g_list_length(results->rows); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
382 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
383 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
384 char * |
15822 | 385 purple_notify_searchresults_column_get_title(PurpleNotifySearchResults *results, |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
386 unsigned int column_id) |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
387 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
388 g_return_val_if_fail(results != NULL, NULL); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
389 |
15822 | 390 return ((PurpleNotifySearchColumn *)g_list_nth_data(results->columns, column_id))->title; |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
391 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
392 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
393 GList * |
15822 | 394 purple_notify_searchresults_row_get(PurpleNotifySearchResults *results, |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
395 unsigned int row_id) |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
396 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
397 g_return_val_if_fail(results != NULL, NULL); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
398 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
399 return g_list_nth_data(results->rows, row_id); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
400 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
401 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
402 void * |
15822 | 403 purple_notify_userinfo(PurpleConnection *gc, const char *who, |
404 PurpleNotifyUserInfo *user_info, PurpleNotifyCloseCallback cb, gpointer user_data) | |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
405 { |
15822 | 406 PurpleNotifyUiOps *ops; |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
407 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
408 g_return_val_if_fail(who != NULL, NULL); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
409 |
15822 | 410 ops = purple_notify_get_ui_ops(); |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
411 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
412 if (ops != NULL && ops->notify_userinfo != NULL) { |
22820
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
413 void *ui_handle; |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
414 |
15822 | 415 purple_signal_emit(purple_notify_get_handle(), "displaying-userinfo", |
416 purple_connection_get_account(gc), who, user_info); | |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
417 |
22820
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
418 ui_handle = ops->notify_userinfo(gc, who, user_info); |
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
419 |
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
420 if (ui_handle != NULL) { |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
421 |
22820
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
422 PurpleNotifyInfo *info = g_new0(PurpleNotifyInfo, 1); |
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
423 info->type = PURPLE_NOTIFY_USERINFO; |
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
424 info->handle = gc; |
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
425 info->ui_handle = ui_handle; |
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
426 info->cb = cb; |
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
427 info->cb_user_data = user_data; |
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
428 |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
429 handles = g_list_append(handles, info); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
430 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
431 return info->ui_handle; |
22820
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
432 } |
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
433 } |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
434 |
22820
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
435 if (cb != NULL) |
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
436 cb(user_data); |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
437 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
438 return NULL; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
439 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
440 |
15822 | 441 PurpleNotifyUserInfoEntry * |
442 purple_notify_user_info_entry_new(const char *label, const char *value) | |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
443 { |
15822 | 444 PurpleNotifyUserInfoEntry *user_info_entry; |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
445 |
15822 | 446 user_info_entry = g_new0(PurpleNotifyUserInfoEntry, 1); |
17066
46351036fdb4
DBusify userinfo stuff.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
16597
diff
changeset
|
447 PURPLE_DBUS_REGISTER_POINTER(user_info_entry, PurpleNotifyUserInfoEntry); |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
448 user_info_entry->label = g_strdup(label); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
449 user_info_entry->value = g_strdup(value); |
15822 | 450 user_info_entry->type = PURPLE_NOTIFY_USER_INFO_ENTRY_PAIR; |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
451 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
452 return user_info_entry; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
453 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
454 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
455 static void |
15822 | 456 purple_notify_user_info_entry_destroy(PurpleNotifyUserInfoEntry *user_info_entry) |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
457 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
458 g_return_if_fail(user_info_entry != NULL); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
459 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
460 g_free(user_info_entry->label); |
20586
04590d9db8b7
Clear out the mail notifications for an account when we receive a notification of 0 emails.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
20074
diff
changeset
|
461 g_free(user_info_entry->value); |
17066
46351036fdb4
DBusify userinfo stuff.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
16597
diff
changeset
|
462 PURPLE_DBUS_UNREGISTER_POINTER(user_info_entry); |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
463 g_free(user_info_entry); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
464 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
465 |
15822 | 466 PurpleNotifyUserInfo * |
467 purple_notify_user_info_new() | |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
468 { |
15822 | 469 PurpleNotifyUserInfo *user_info; |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
470 |
15822 | 471 user_info = g_new0(PurpleNotifyUserInfo, 1); |
17066
46351036fdb4
DBusify userinfo stuff.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
16597
diff
changeset
|
472 PURPLE_DBUS_REGISTER_POINTER(user_info, PurpleNotifyUserInfo); |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
473 user_info->user_info_entries = NULL; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
474 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
475 return user_info; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
476 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
477 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
478 void |
15822 | 479 purple_notify_user_info_destroy(PurpleNotifyUserInfo *user_info) |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
480 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
481 GList *l; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
482 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
483 for (l = user_info->user_info_entries; l != NULL; l = l->next) { |
15822 | 484 PurpleNotifyUserInfoEntry *user_info_entry = l->data; |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
485 |
15822 | 486 purple_notify_user_info_entry_destroy(user_info_entry); |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
487 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
488 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
489 g_list_free(user_info->user_info_entries); |
17066
46351036fdb4
DBusify userinfo stuff.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
16597
diff
changeset
|
490 PURPLE_DBUS_UNREGISTER_POINTER(user_info); |
16597 | 491 g_free(user_info); |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
492 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
493 |
18063
926ccb104da0
disapproval of revision '1411afd7660760db59966c3a9f18e2adab8eb27e'
Richard Laager <rlaager@wiktel.com>
parents:
18058
diff
changeset
|
494 GList * |
15822 | 495 purple_notify_user_info_get_entries(PurpleNotifyUserInfo *user_info) |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
496 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
497 g_return_val_if_fail(user_info != NULL, NULL); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
498 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
499 return user_info->user_info_entries; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
500 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
501 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
502 char * |
15822 | 503 purple_notify_user_info_get_text_with_newline(PurpleNotifyUserInfo *user_info, const char *newline) |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
504 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
505 GList *l; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
506 GString *text; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
507 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
508 text = g_string_new(""); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
509 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
510 for (l = user_info->user_info_entries; l != NULL; l = l->next) { |
15822 | 511 PurpleNotifyUserInfoEntry *user_info_entry = l->data; |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
512 /* Add a newline before a section header */ |
15822 | 513 if (user_info_entry->type == PURPLE_NOTIFY_USER_INFO_ENTRY_SECTION_HEADER) |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
514 g_string_append(text, newline); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
515 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
516 /* Handle the label/value pair itself */ |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
517 /* XXX Todo: Use a larger size for a section header? */ |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
518 if (user_info_entry->label) |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
519 g_string_append_printf(text, "<b>%s</b>", user_info_entry->label); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
520 if (user_info_entry->label && user_info_entry->value) |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
521 g_string_append(text, ": "); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
522 if (user_info_entry->value) |
20586
04590d9db8b7
Clear out the mail notifications for an account when we receive a notification of 0 emails.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
20074
diff
changeset
|
523 g_string_append(text, user_info_entry->value); |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
524 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
525 /* Display a section break as a horizontal line */ |
15822 | 526 if (user_info_entry->type == PURPLE_NOTIFY_USER_INFO_ENTRY_SECTION_BREAK) |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
527 g_string_append(text, "<HR>"); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
528 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
529 /* Don't insert a new line before or after a section break; <HR> does that for us */ |
15822 | 530 if ((user_info_entry->type != PURPLE_NOTIFY_USER_INFO_ENTRY_SECTION_BREAK) && |
531 (l->next && ((((PurpleNotifyUserInfoEntry *)(l->next->data))->type != PURPLE_NOTIFY_USER_INFO_ENTRY_SECTION_BREAK)))) | |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
532 g_string_append(text, newline); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
533 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
534 /* Add an extra newline after a section header */ |
15822 | 535 if (user_info_entry->type == PURPLE_NOTIFY_USER_INFO_ENTRY_SECTION_HEADER) |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
536 g_string_append(text, newline); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
537 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
538 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
539 return g_string_free(text, FALSE); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
540 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
541 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
542 |
22622
93c40e412b54
constify the return value from purple_notify_user_info_entry_get_label
Mark Doliner <mark@kingant.net>
parents:
21000
diff
changeset
|
543 const gchar * |
15822 | 544 purple_notify_user_info_entry_get_label(PurpleNotifyUserInfoEntry *user_info_entry) |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
545 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
546 g_return_val_if_fail(user_info_entry != NULL, NULL); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
547 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
548 return user_info_entry->label; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
549 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
550 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
551 void |
15822 | 552 purple_notify_user_info_entry_set_label(PurpleNotifyUserInfoEntry *user_info_entry, const char *label) |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
553 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
554 g_return_if_fail(user_info_entry != NULL); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
555 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
556 g_free(user_info_entry->label); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
557 user_info_entry->label = g_strdup(label); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
558 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
559 |
22622
93c40e412b54
constify the return value from purple_notify_user_info_entry_get_label
Mark Doliner <mark@kingant.net>
parents:
21000
diff
changeset
|
560 const gchar * |
15822 | 561 purple_notify_user_info_entry_get_value(PurpleNotifyUserInfoEntry *user_info_entry) |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
562 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
563 g_return_val_if_fail(user_info_entry != NULL, NULL); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
564 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
565 return user_info_entry->value; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
566 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
567 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
568 void |
15822 | 569 purple_notify_user_info_entry_set_value(PurpleNotifyUserInfoEntry *user_info_entry, const char *value) |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
570 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
571 g_return_if_fail(user_info_entry != NULL); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
572 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
573 g_free(user_info_entry->value); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
574 user_info_entry->value = g_strdup(value); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
575 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
576 |
15822 | 577 PurpleNotifyUserInfoEntryType |
578 purple_notify_user_info_entry_get_type(PurpleNotifyUserInfoEntry *user_info_entry) | |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
579 { |
15822 | 580 g_return_val_if_fail(user_info_entry != NULL, PURPLE_NOTIFY_USER_INFO_ENTRY_PAIR); |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
581 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
582 return user_info_entry->type; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
583 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
584 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
585 void |
15822 | 586 purple_notify_user_info_entry_set_type(PurpleNotifyUserInfoEntry *user_info_entry, PurpleNotifyUserInfoEntryType type) |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
587 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
588 g_return_if_fail(user_info_entry != NULL); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
589 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
590 user_info_entry->type = type; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
591 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
592 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
593 void |
15822 | 594 purple_notify_user_info_add_pair(PurpleNotifyUserInfo *user_info, const char *label, const char *value) |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
595 { |
15822 | 596 PurpleNotifyUserInfoEntry *entry; |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
597 |
15822 | 598 entry = purple_notify_user_info_entry_new(label, value); |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
599 user_info->user_info_entries = g_list_append(user_info->user_info_entries, entry); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
600 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
601 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
602 void |
15822 | 603 purple_notify_user_info_prepend_pair(PurpleNotifyUserInfo *user_info, const char *label, const char *value) |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
604 { |
15822 | 605 PurpleNotifyUserInfoEntry *entry; |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
606 |
15822 | 607 entry = purple_notify_user_info_entry_new(label, value); |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
608 user_info->user_info_entries = g_list_prepend(user_info->user_info_entries, entry); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
609 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
610 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
611 void |
15822 | 612 purple_notify_user_info_remove_entry(PurpleNotifyUserInfo *user_info, PurpleNotifyUserInfoEntry *entry) |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
613 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
614 g_return_if_fail(user_info != NULL); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
615 g_return_if_fail(entry != NULL); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
616 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
617 user_info->user_info_entries = g_list_remove(user_info->user_info_entries, entry); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
618 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
619 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
620 void |
15822 | 621 purple_notify_user_info_add_section_header(PurpleNotifyUserInfo *user_info, const char *label) |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
622 { |
15822 | 623 PurpleNotifyUserInfoEntry *entry; |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
624 |
15822 | 625 entry = purple_notify_user_info_entry_new(label, NULL); |
626 entry->type = PURPLE_NOTIFY_USER_INFO_ENTRY_SECTION_HEADER; | |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
627 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
628 user_info->user_info_entries = g_list_append(user_info->user_info_entries, entry); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
629 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
630 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
631 void |
23205
84693a70ea3a
Added prepend functions for notify_user_info section headers and breaks
Evan Schoenberg <evan.s@dreskin.net>
parents:
22820
diff
changeset
|
632 purple_notify_user_info_prepend_section_header(PurpleNotifyUserInfo *user_info, const char *label) |
84693a70ea3a
Added prepend functions for notify_user_info section headers and breaks
Evan Schoenberg <evan.s@dreskin.net>
parents:
22820
diff
changeset
|
633 { |
84693a70ea3a
Added prepend functions for notify_user_info section headers and breaks
Evan Schoenberg <evan.s@dreskin.net>
parents:
22820
diff
changeset
|
634 PurpleNotifyUserInfoEntry *entry; |
84693a70ea3a
Added prepend functions for notify_user_info section headers and breaks
Evan Schoenberg <evan.s@dreskin.net>
parents:
22820
diff
changeset
|
635 |
84693a70ea3a
Added prepend functions for notify_user_info section headers and breaks
Evan Schoenberg <evan.s@dreskin.net>
parents:
22820
diff
changeset
|
636 entry = purple_notify_user_info_entry_new(label, NULL); |
84693a70ea3a
Added prepend functions for notify_user_info section headers and breaks
Evan Schoenberg <evan.s@dreskin.net>
parents:
22820
diff
changeset
|
637 entry->type = PURPLE_NOTIFY_USER_INFO_ENTRY_SECTION_HEADER; |
84693a70ea3a
Added prepend functions for notify_user_info section headers and breaks
Evan Schoenberg <evan.s@dreskin.net>
parents:
22820
diff
changeset
|
638 |
84693a70ea3a
Added prepend functions for notify_user_info section headers and breaks
Evan Schoenberg <evan.s@dreskin.net>
parents:
22820
diff
changeset
|
639 user_info->user_info_entries = g_list_prepend(user_info->user_info_entries, entry); |
84693a70ea3a
Added prepend functions for notify_user_info section headers and breaks
Evan Schoenberg <evan.s@dreskin.net>
parents:
22820
diff
changeset
|
640 } |
84693a70ea3a
Added prepend functions for notify_user_info section headers and breaks
Evan Schoenberg <evan.s@dreskin.net>
parents:
22820
diff
changeset
|
641 |
84693a70ea3a
Added prepend functions for notify_user_info section headers and breaks
Evan Schoenberg <evan.s@dreskin.net>
parents:
22820
diff
changeset
|
642 void |
15822 | 643 purple_notify_user_info_add_section_break(PurpleNotifyUserInfo *user_info) |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
644 { |
15822 | 645 PurpleNotifyUserInfoEntry *entry; |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
646 |
15822 | 647 entry = purple_notify_user_info_entry_new(NULL, NULL); |
648 entry->type = PURPLE_NOTIFY_USER_INFO_ENTRY_SECTION_BREAK; | |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
649 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
650 user_info->user_info_entries = g_list_append(user_info->user_info_entries, entry); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
651 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
652 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
653 void |
23205
84693a70ea3a
Added prepend functions for notify_user_info section headers and breaks
Evan Schoenberg <evan.s@dreskin.net>
parents:
22820
diff
changeset
|
654 purple_notify_user_info_prepend_section_break(PurpleNotifyUserInfo *user_info) |
84693a70ea3a
Added prepend functions for notify_user_info section headers and breaks
Evan Schoenberg <evan.s@dreskin.net>
parents:
22820
diff
changeset
|
655 { |
84693a70ea3a
Added prepend functions for notify_user_info section headers and breaks
Evan Schoenberg <evan.s@dreskin.net>
parents:
22820
diff
changeset
|
656 PurpleNotifyUserInfoEntry *entry; |
84693a70ea3a
Added prepend functions for notify_user_info section headers and breaks
Evan Schoenberg <evan.s@dreskin.net>
parents:
22820
diff
changeset
|
657 |
84693a70ea3a
Added prepend functions for notify_user_info section headers and breaks
Evan Schoenberg <evan.s@dreskin.net>
parents:
22820
diff
changeset
|
658 entry = purple_notify_user_info_entry_new(NULL, NULL); |
84693a70ea3a
Added prepend functions for notify_user_info section headers and breaks
Evan Schoenberg <evan.s@dreskin.net>
parents:
22820
diff
changeset
|
659 entry->type = PURPLE_NOTIFY_USER_INFO_ENTRY_SECTION_BREAK; |
84693a70ea3a
Added prepend functions for notify_user_info section headers and breaks
Evan Schoenberg <evan.s@dreskin.net>
parents:
22820
diff
changeset
|
660 |
84693a70ea3a
Added prepend functions for notify_user_info section headers and breaks
Evan Schoenberg <evan.s@dreskin.net>
parents:
22820
diff
changeset
|
661 user_info->user_info_entries = g_list_prepend(user_info->user_info_entries, entry); |
84693a70ea3a
Added prepend functions for notify_user_info section headers and breaks
Evan Schoenberg <evan.s@dreskin.net>
parents:
22820
diff
changeset
|
662 } |
84693a70ea3a
Added prepend functions for notify_user_info section headers and breaks
Evan Schoenberg <evan.s@dreskin.net>
parents:
22820
diff
changeset
|
663 |
84693a70ea3a
Added prepend functions for notify_user_info section headers and breaks
Evan Schoenberg <evan.s@dreskin.net>
parents:
22820
diff
changeset
|
664 void |
15822 | 665 purple_notify_user_info_remove_last_item(PurpleNotifyUserInfo *user_info) |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
666 { |
20949
dd0878ccc577
Clarify the documentation for purple_notify_user_info_remove_entry() to indicated that it doesn't free the removed entry. Make purple_notify_user_info_remove_last_item() free the entry it is removing as that is the only sensible thing to do (otherwise purple_notify_user_info_remove_entry() should have been used instead). This fixes leakage in the msn prpl.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
20586
diff
changeset
|
667 GList *last = g_list_last(user_info->user_info_entries); |
dd0878ccc577
Clarify the documentation for purple_notify_user_info_remove_entry() to indicated that it doesn't free the removed entry. Make purple_notify_user_info_remove_last_item() free the entry it is removing as that is the only sensible thing to do (otherwise purple_notify_user_info_remove_entry() should have been used instead). This fixes leakage in the msn prpl.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
20586
diff
changeset
|
668 if (last) { |
dd0878ccc577
Clarify the documentation for purple_notify_user_info_remove_entry() to indicated that it doesn't free the removed entry. Make purple_notify_user_info_remove_last_item() free the entry it is removing as that is the only sensible thing to do (otherwise purple_notify_user_info_remove_entry() should have been used instead). This fixes leakage in the msn prpl.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
20586
diff
changeset
|
669 purple_notify_user_info_entry_destroy(last->data); |
20987
0cbfc19e4909
Fix some leaks caused by misuse of g_list_remove_link() instead of g_list_delete_link().
Daniel Atallah <daniel.atallah@gmail.com>
parents:
20949
diff
changeset
|
670 user_info->user_info_entries = g_list_delete_link(user_info->user_info_entries, last); |
20949
dd0878ccc577
Clarify the documentation for purple_notify_user_info_remove_entry() to indicated that it doesn't free the removed entry. Make purple_notify_user_info_remove_last_item() free the entry it is removing as that is the only sensible thing to do (otherwise purple_notify_user_info_remove_entry() should have been used instead). This fixes leakage in the msn prpl.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
20586
diff
changeset
|
671 } |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
672 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
673 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
674 void * |
15822 | 675 purple_notify_uri(void *handle, const char *uri) |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
676 { |
15822 | 677 PurpleNotifyUiOps *ops; |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
678 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
679 g_return_val_if_fail(uri != NULL, NULL); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
680 |
15822 | 681 ops = purple_notify_get_ui_ops(); |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
682 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
683 if (ops != NULL && ops->notify_uri != NULL) { |
22820
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
684 |
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
685 void *ui_handle = ops->notify_uri(uri); |
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
686 |
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
687 if (ui_handle != NULL) { |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
688 |
22820
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
689 PurpleNotifyInfo *info = g_new0(PurpleNotifyInfo, 1); |
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
690 info->type = PURPLE_NOTIFY_URI; |
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
691 info->handle = handle; |
5e6b42e77fb7
Cleanup and avoid unnecessary alloc/free.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
22622
diff
changeset
|
692 info->ui_handle = ui_handle; |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
693 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
694 handles = g_list_append(handles, info); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
695 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
696 return info->ui_handle; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
697 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
698 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
699 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
700 return NULL; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
701 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
702 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
703 void |
15822 | 704 purple_notify_close(PurpleNotifyType type, void *ui_handle) |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
705 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
706 GList *l; |
15822 | 707 PurpleNotifyUiOps *ops; |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
708 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
709 g_return_if_fail(ui_handle != NULL); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
710 |
15822 | 711 ops = purple_notify_get_ui_ops(); |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
712 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
713 for (l = handles; l != NULL; l = l->next) { |
15822 | 714 PurpleNotifyInfo *info = l->data; |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
715 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
716 if (info->ui_handle == ui_handle) { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
717 handles = g_list_remove(handles, info); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
718 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
719 if (ops != NULL && ops->close_notify != NULL) |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
720 ops->close_notify(info->type, ui_handle); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
721 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
722 if (info->cb != NULL) |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
723 info->cb(info->cb_user_data); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
724 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
725 g_free(info); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
726 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
727 break; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
728 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
729 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
730 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
731 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
732 void |
15822 | 733 purple_notify_close_with_handle(void *handle) |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
734 { |
17620
c1c533448097
sadrul's fix for the userinfo notify crash on disconnect that was caused by
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
17066
diff
changeset
|
735 GList *l, *prev = NULL; |
15822 | 736 PurpleNotifyUiOps *ops; |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
737 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
738 g_return_if_fail(handle != NULL); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
739 |
15822 | 740 ops = purple_notify_get_ui_ops(); |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
741 |
17620
c1c533448097
sadrul's fix for the userinfo notify crash on disconnect that was caused by
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
17066
diff
changeset
|
742 for (l = handles; l != NULL; l = prev ? prev->next : handles) { |
15822 | 743 PurpleNotifyInfo *info = l->data; |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
744 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
745 if (info->handle == handle) { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
746 handles = g_list_remove(handles, info); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
747 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
748 if (ops != NULL && ops->close_notify != NULL) |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
749 ops->close_notify(info->type, info->ui_handle); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
750 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
751 if (info->cb != NULL) |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
752 info->cb(info->cb_user_data); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
753 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
754 g_free(info); |
17620
c1c533448097
sadrul's fix for the userinfo notify crash on disconnect that was caused by
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
17066
diff
changeset
|
755 } else |
c1c533448097
sadrul's fix for the userinfo notify crash on disconnect that was caused by
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
17066
diff
changeset
|
756 prev = l; |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
757 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
758 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
759 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
760 void |
15822 | 761 purple_notify_set_ui_ops(PurpleNotifyUiOps *ops) |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
762 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
763 notify_ui_ops = ops; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
764 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
765 |
15822 | 766 PurpleNotifyUiOps * |
767 purple_notify_get_ui_ops(void) | |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
768 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
769 return notify_ui_ops; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
770 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
771 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
772 void * |
15822 | 773 purple_notify_get_handle(void) |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
774 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
775 static int handle; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
776 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
777 return &handle; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
778 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
779 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
780 void |
15822 | 781 purple_notify_init(void) |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
782 { |
15822 | 783 gpointer handle = purple_notify_get_handle(); |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
784 |
18675
cb91bb07eeff
Email notification signals from charkins. Fixes #1324
Sean Egan <seanegan@gmail.com>
parents:
18119
diff
changeset
|
785 purple_signal_register(handle, "displaying-email-notification", |
cb91bb07eeff
Email notification signals from charkins. Fixes #1324
Sean Egan <seanegan@gmail.com>
parents:
18119
diff
changeset
|
786 purple_marshal_VOID__POINTER_POINTER_POINTER_POINTER, NULL, 4, |
cb91bb07eeff
Email notification signals from charkins. Fixes #1324
Sean Egan <seanegan@gmail.com>
parents:
18119
diff
changeset
|
787 purple_value_new(PURPLE_TYPE_STRING), |
cb91bb07eeff
Email notification signals from charkins. Fixes #1324
Sean Egan <seanegan@gmail.com>
parents:
18119
diff
changeset
|
788 purple_value_new(PURPLE_TYPE_STRING), |
cb91bb07eeff
Email notification signals from charkins. Fixes #1324
Sean Egan <seanegan@gmail.com>
parents:
18119
diff
changeset
|
789 purple_value_new(PURPLE_TYPE_STRING), |
cb91bb07eeff
Email notification signals from charkins. Fixes #1324
Sean Egan <seanegan@gmail.com>
parents:
18119
diff
changeset
|
790 purple_value_new(PURPLE_TYPE_STRING)); |
cb91bb07eeff
Email notification signals from charkins. Fixes #1324
Sean Egan <seanegan@gmail.com>
parents:
18119
diff
changeset
|
791 |
cb91bb07eeff
Email notification signals from charkins. Fixes #1324
Sean Egan <seanegan@gmail.com>
parents:
18119
diff
changeset
|
792 purple_signal_register(handle, "displaying-emails-notification", |
cb91bb07eeff
Email notification signals from charkins. Fixes #1324
Sean Egan <seanegan@gmail.com>
parents:
18119
diff
changeset
|
793 purple_marshal_VOID__POINTER_POINTER_POINTER_POINTER_UINT, NULL, 5, |
cb91bb07eeff
Email notification signals from charkins. Fixes #1324
Sean Egan <seanegan@gmail.com>
parents:
18119
diff
changeset
|
794 purple_value_new(PURPLE_TYPE_POINTER), |
cb91bb07eeff
Email notification signals from charkins. Fixes #1324
Sean Egan <seanegan@gmail.com>
parents:
18119
diff
changeset
|
795 purple_value_new(PURPLE_TYPE_POINTER), |
cb91bb07eeff
Email notification signals from charkins. Fixes #1324
Sean Egan <seanegan@gmail.com>
parents:
18119
diff
changeset
|
796 purple_value_new(PURPLE_TYPE_POINTER), |
cb91bb07eeff
Email notification signals from charkins. Fixes #1324
Sean Egan <seanegan@gmail.com>
parents:
18119
diff
changeset
|
797 purple_value_new(PURPLE_TYPE_POINTER), |
cb91bb07eeff
Email notification signals from charkins. Fixes #1324
Sean Egan <seanegan@gmail.com>
parents:
18119
diff
changeset
|
798 purple_value_new(PURPLE_TYPE_UINT)); |
cb91bb07eeff
Email notification signals from charkins. Fixes #1324
Sean Egan <seanegan@gmail.com>
parents:
18119
diff
changeset
|
799 |
15822 | 800 purple_signal_register(handle, "displaying-userinfo", |
801 purple_marshal_VOID__POINTER_POINTER_POINTER, NULL, 3, | |
802 purple_value_new(PURPLE_TYPE_SUBTYPE, | |
803 PURPLE_SUBTYPE_ACCOUNT), | |
804 purple_value_new(PURPLE_TYPE_STRING), | |
805 purple_value_new(PURPLE_TYPE_SUBTYPE, | |
806 PURPLE_SUBTYPE_USERINFO)); | |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
807 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
808 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
809 void |
15822 | 810 purple_notify_uninit(void) |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
811 { |
15822 | 812 purple_signals_unregister_by_instance(purple_notify_get_handle()); |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
813 } |