libpurple/request.c

Mon, 23 Apr 2018 16:37:00 +0100

author
David Woodhouse <dwmw2@infradead.org>
date
Mon, 23 Apr 2018 16:37:00 +0100
branch
release-2.x.y
changeset 39010
fbce915a7024
parent 31294
73607ab89c6f
child 40755
fb2056ce3c58
permissions
-rw-r--r--

Outbound screenshare window/monitor selection

Add a purple_request_screenshare_media() method. The UI will interact
with the user to select a monitor / window / region to share, depending
on the capabilities of the platform, and will invoke the callback with
a PurpleMediaElementInfo which represents the desired GStreamer src
element. If the UI request is cancelled, the callback is invoked with
NULL.

The PRPL can then use g_object_set_data(media, "src-element", info)
before calling purple_media_add_stream(media, …PURPLE_MEDIA_SEND_VIDEO…),
and the selected source element will be used for that session.

5477
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1 /**
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
2 * @file request.c Request API
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
3 * @ingroup core
20147
66f05a854eee applied changes from 8a731bbd0197fbcc91a705c2d8f528154216defa
Richard Laager <rlaager@pidgin.im>
parents: 19859
diff changeset
4 */
66f05a854eee applied changes from 8a731bbd0197fbcc91a705c2d8f528154216defa
Richard Laager <rlaager@pidgin.im>
parents: 19859
diff changeset
5
66f05a854eee applied changes from 8a731bbd0197fbcc91a705c2d8f528154216defa
Richard Laager <rlaager@pidgin.im>
parents: 19859
diff changeset
6 /* purple
5477
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
7 *
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
8 * Purple is the legal property of its developers, whose names are too numerous
8046
c581b20a47d6 [gaim-migrate @ 8730]
Sean Egan <seanegan@pidgin.im>
parents: 7964
diff changeset
9 * to list here. Please refer to the COPYRIGHT file distributed with this
c581b20a47d6 [gaim-migrate @ 8730]
Sean Egan <seanegan@pidgin.im>
parents: 7964
diff changeset
10 * source distribution.
7035
76bca80cd91d [gaim-migrate @ 7598]
Christian Hammond <chipx86@chipx86.com>
parents: 6325
diff changeset
11 *
5477
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
12 * This program is free software; you can redistribute it and/or modify
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
13 * it under the terms of the GNU General Public License as published by
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
14 * the Free Software Foundation; either version 2 of the License, or
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
15 * (at your option) any later version.
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
16 *
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
17 * This program is distributed in the hope that it will be useful,
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
18 * but WITHOUT ANY WARRANTY; without even the implied warranty of
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
19 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
20 * GNU General Public License for more details.
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
21 *
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
22 * You should have received a copy of the GNU General Public License
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
23 * along with this program; if not, write to the Free Software
19859
71d37b57eff2 The FSF changed its address a while ago; our files were out of date.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 19585
diff changeset
24 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA
5477
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
25 */
24900
a19d983918c2 Deprecate purple_request_field_list_add()
Richard Laager <rlaager@pidgin.im>
parents: 24899
diff changeset
26 #define _PURPLE_REQUEST_C_
a19d983918c2 Deprecate purple_request_field_list_add()
Richard Laager <rlaager@pidgin.im>
parents: 24899
diff changeset
27
18265
9f26190d7f46 Move the define in internal.h instead.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 18190
diff changeset
28 #include "internal.h"
9f26190d7f46 Move the define in internal.h instead.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 18190
diff changeset
29
9502
d43f69354213 [gaim-migrate @ 10329]
Mark Doliner <markdoliner@pidgin.im>
parents: 8843
diff changeset
30 #include "notify.h"
5477
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
31 #include "request.h"
7964
10d58eb8a16a [gaim-migrate @ 8641]
Christian Hammond <chipx86@chipx86.com>
parents: 7962
diff changeset
32 #include "debug.h"
5477
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
33
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
34 static PurpleRequestUiOps *request_ui_ops = NULL;
5477
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
35 static GList *handles = NULL;
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
36
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
37 typedef struct
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
38 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
39 PurpleRequestType type;
5477
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
40 void *handle;
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
41 void *ui_handle;
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
42
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
43 } PurpleRequestInfo;
5477
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
44
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
45
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
46 PurpleRequestFields *
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
47 purple_request_fields_new(void)
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
48 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
49 PurpleRequestFields *fields;
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
50
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
51 fields = g_new0(PurpleRequestFields, 1);
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
52
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
53 fields->fields = g_hash_table_new_full(g_str_hash, g_str_equal,
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
54 g_free, NULL);
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
55
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
56 return fields;
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
57 }
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
58
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
59 void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
60 purple_request_fields_destroy(PurpleRequestFields *fields)
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
61 {
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
62 g_return_if_fail(fields != NULL);
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
63
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
64 g_list_foreach(fields->groups, (GFunc)purple_request_field_group_destroy, NULL);
14097
0c340861ab79 [gaim-migrate @ 16638]
Mark Doliner <markdoliner@pidgin.im>
parents: 13283
diff changeset
65 g_list_free(fields->groups);
0c340861ab79 [gaim-migrate @ 16638]
Mark Doliner <markdoliner@pidgin.im>
parents: 13283
diff changeset
66 g_list_free(fields->required_fields);
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
67 g_hash_table_destroy(fields->fields);
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
68 g_free(fields);
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
69 }
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
70
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
71 void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
72 purple_request_fields_add_group(PurpleRequestFields *fields,
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
73 PurpleRequestFieldGroup *group)
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
74 {
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
75 GList *l;
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
76 PurpleRequestField *field;
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
77
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
78 g_return_if_fail(fields != NULL);
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
79 g_return_if_fail(group != NULL);
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
80
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
81 fields->groups = g_list_append(fields->groups, group);
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
82
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
83 group->fields_list = fields;
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
84
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
85 for (l = purple_request_field_group_get_fields(group);
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
86 l != NULL;
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
87 l = l->next) {
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
88
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
89 field = l->data;
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
90
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
91 g_hash_table_insert(fields->fields,
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
92 g_strdup(purple_request_field_get_id(field)), field);
14149
df0304d74e95 [gaim-migrate @ 16710]
Daniel Atallah <datallah@pidgin.im>
parents: 14128
diff changeset
93
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
94 if (purple_request_field_is_required(field)) {
14149
df0304d74e95 [gaim-migrate @ 16710]
Daniel Atallah <datallah@pidgin.im>
parents: 14128
diff changeset
95 fields->required_fields =
df0304d74e95 [gaim-migrate @ 16710]
Daniel Atallah <datallah@pidgin.im>
parents: 14128
diff changeset
96 g_list_append(fields->required_fields, field);
df0304d74e95 [gaim-migrate @ 16710]
Daniel Atallah <datallah@pidgin.im>
parents: 14128
diff changeset
97 }
df0304d74e95 [gaim-migrate @ 16710]
Daniel Atallah <datallah@pidgin.im>
parents: 14128
diff changeset
98
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
99 }
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
100 }
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
101
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
102 GList *
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
103 purple_request_fields_get_groups(const PurpleRequestFields *fields)
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
104 {
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
105 g_return_val_if_fail(fields != NULL, NULL);
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
106
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
107 return fields->groups;
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
108 }
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
109
8286
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
110 gboolean
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
111 purple_request_fields_exists(const PurpleRequestFields *fields, const char *id)
8286
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
112 {
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
113 g_return_val_if_fail(fields != NULL, FALSE);
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
114 g_return_val_if_fail(id != NULL, FALSE);
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
115
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
116 return (g_hash_table_lookup(fields->fields, id) != NULL);
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
117 }
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
118
18190
bcf28ef7e8ff Re-fix the DBus list handling code by killing const GList* / const GSList*
Richard Laager <rlaager@pidgin.im>
parents: 16490
diff changeset
119 GList *
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
120 purple_request_fields_get_required(const PurpleRequestFields *fields)
8286
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
121 {
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
122 g_return_val_if_fail(fields != NULL, NULL);
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
123
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
124 return fields->required_fields;
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
125 }
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
126
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
127 gboolean
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
128 purple_request_fields_is_field_required(const PurpleRequestFields *fields,
8286
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
129 const char *id)
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
130 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
131 PurpleRequestField *field;
8286
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
132
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
133 g_return_val_if_fail(fields != NULL, FALSE);
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
134 g_return_val_if_fail(id != NULL, FALSE);
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
135
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
136 if ((field = purple_request_fields_get_field(fields, id)) == NULL)
8286
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
137 return FALSE;
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
138
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
139 return purple_request_field_is_required(field);
8286
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
140 }
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
141
24984
64b88867fbdf Hide the PurpleRequestField struct. I figured this one would be easy and
Richard Laager <rlaager@pidgin.im>
parents: 21990
diff changeset
142 gpointer
64b88867fbdf Hide the PurpleRequestField struct. I figured this one would be easy and
Richard Laager <rlaager@pidgin.im>
parents: 21990
diff changeset
143 purple_request_field_get_ui_data(const PurpleRequestField *field)
64b88867fbdf Hide the PurpleRequestField struct. I figured this one would be easy and
Richard Laager <rlaager@pidgin.im>
parents: 21990
diff changeset
144 {
64b88867fbdf Hide the PurpleRequestField struct. I figured this one would be easy and
Richard Laager <rlaager@pidgin.im>
parents: 21990
diff changeset
145 g_return_val_if_fail(field != NULL, NULL);
64b88867fbdf Hide the PurpleRequestField struct. I figured this one would be easy and
Richard Laager <rlaager@pidgin.im>
parents: 21990
diff changeset
146
64b88867fbdf Hide the PurpleRequestField struct. I figured this one would be easy and
Richard Laager <rlaager@pidgin.im>
parents: 21990
diff changeset
147 return field->ui_data;
64b88867fbdf Hide the PurpleRequestField struct. I figured this one would be easy and
Richard Laager <rlaager@pidgin.im>
parents: 21990
diff changeset
148 }
64b88867fbdf Hide the PurpleRequestField struct. I figured this one would be easy and
Richard Laager <rlaager@pidgin.im>
parents: 21990
diff changeset
149
64b88867fbdf Hide the PurpleRequestField struct. I figured this one would be easy and
Richard Laager <rlaager@pidgin.im>
parents: 21990
diff changeset
150 void
64b88867fbdf Hide the PurpleRequestField struct. I figured this one would be easy and
Richard Laager <rlaager@pidgin.im>
parents: 21990
diff changeset
151 purple_request_field_set_ui_data(PurpleRequestField *field,
64b88867fbdf Hide the PurpleRequestField struct. I figured this one would be easy and
Richard Laager <rlaager@pidgin.im>
parents: 21990
diff changeset
152 gpointer ui_data)
64b88867fbdf Hide the PurpleRequestField struct. I figured this one would be easy and
Richard Laager <rlaager@pidgin.im>
parents: 21990
diff changeset
153 {
64b88867fbdf Hide the PurpleRequestField struct. I figured this one would be easy and
Richard Laager <rlaager@pidgin.im>
parents: 21990
diff changeset
154 g_return_if_fail(field != NULL);
64b88867fbdf Hide the PurpleRequestField struct. I figured this one would be easy and
Richard Laager <rlaager@pidgin.im>
parents: 21990
diff changeset
155
64b88867fbdf Hide the PurpleRequestField struct. I figured this one would be easy and
Richard Laager <rlaager@pidgin.im>
parents: 21990
diff changeset
156 field->ui_data = ui_data;
64b88867fbdf Hide the PurpleRequestField struct. I figured this one would be easy and
Richard Laager <rlaager@pidgin.im>
parents: 21990
diff changeset
157 }
64b88867fbdf Hide the PurpleRequestField struct. I figured this one would be easy and
Richard Laager <rlaager@pidgin.im>
parents: 21990
diff changeset
158
8286
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
159 gboolean
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
160 purple_request_fields_all_required_filled(const PurpleRequestFields *fields)
8286
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
161 {
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
162 GList *l;
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
163
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
164 g_return_val_if_fail(fields != NULL, FALSE);
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
165
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
166 for (l = fields->required_fields; l != NULL; l = l->next)
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
167 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
168 PurpleRequestField *field = (PurpleRequestField *)l->data;
8286
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
169
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
170 switch (purple_request_field_get_type(field))
8286
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
171 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
172 case PURPLE_REQUEST_FIELD_STRING:
18384
a018c93324fd Bug fix. Make 'all_required_fields_filled' understand that an empty string does not qualify as filled
Sean Egan <seanegan@pidgin.im>
parents: 18265
diff changeset
173 if (purple_request_field_string_get_value(field) == NULL ||
a018c93324fd Bug fix. Make 'all_required_fields_filled' understand that an empty string does not qualify as filled
Sean Egan <seanegan@pidgin.im>
parents: 18265
diff changeset
174 *(purple_request_field_string_get_value(field)) == '\0')
8286
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
175 return FALSE;
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
176
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
177 break;
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
178
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
179 default:
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
180 break;
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
181 }
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
182 }
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
183
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
184 return TRUE;
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
185 }
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
186
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
187 PurpleRequestField *
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
188 purple_request_fields_get_field(const PurpleRequestFields *fields, const char *id)
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
189 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
190 PurpleRequestField *field;
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
191
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
192 g_return_val_if_fail(fields != NULL, NULL);
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
193 g_return_val_if_fail(id != NULL, NULL);
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
194
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
195 field = g_hash_table_lookup(fields->fields, id);
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
196
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
197 g_return_val_if_fail(field != NULL, NULL);
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
198
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
199 return field;
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
200 }
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
201
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
202 const char *
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
203 purple_request_fields_get_string(const PurpleRequestFields *fields, const char *id)
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
204 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
205 PurpleRequestField *field;
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
206
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
207 g_return_val_if_fail(fields != NULL, NULL);
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
208 g_return_val_if_fail(id != NULL, NULL);
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
209
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
210 if ((field = purple_request_fields_get_field(fields, id)) == NULL)
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
211 return NULL;
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
212
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
213 return purple_request_field_string_get_value(field);
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
214 }
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
215
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
216 int
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
217 purple_request_fields_get_integer(const PurpleRequestFields *fields,
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
218 const char *id)
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
219 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
220 PurpleRequestField *field;
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
221
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
222 g_return_val_if_fail(fields != NULL, 0);
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
223 g_return_val_if_fail(id != NULL, 0);
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
224
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
225 if ((field = purple_request_fields_get_field(fields, id)) == NULL)
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
226 return 0;
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
227
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
228 return purple_request_field_int_get_value(field);
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
229 }
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
230
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
231 gboolean
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
232 purple_request_fields_get_bool(const PurpleRequestFields *fields, const char *id)
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
233 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
234 PurpleRequestField *field;
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
235
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
236 g_return_val_if_fail(fields != NULL, FALSE);
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
237 g_return_val_if_fail(id != NULL, FALSE);
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
238
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
239 if ((field = purple_request_fields_get_field(fields, id)) == NULL)
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
240 return FALSE;
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
241
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
242 return purple_request_field_bool_get_value(field);
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
243 }
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
244
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
245 int
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
246 purple_request_fields_get_choice(const PurpleRequestFields *fields, const char *id)
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
247 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
248 PurpleRequestField *field;
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
249
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
250 g_return_val_if_fail(fields != NULL, -1);
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
251 g_return_val_if_fail(id != NULL, -1);
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
252
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
253 if ((field = purple_request_fields_get_field(fields, id)) == NULL)
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
254 return -1;
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
255
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
256 return purple_request_field_choice_get_value(field);
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
257 }
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
258
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
259 PurpleAccount *
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
260 purple_request_fields_get_account(const PurpleRequestFields *fields,
8286
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
261 const char *id)
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
262 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
263 PurpleRequestField *field;
8286
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
264
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
265 g_return_val_if_fail(fields != NULL, NULL);
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
266 g_return_val_if_fail(id != NULL, NULL);
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
267
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
268 if ((field = purple_request_fields_get_field(fields, id)) == NULL)
8286
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
269 return NULL;
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
270
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
271 return purple_request_field_account_get_value(field);
8286
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
272 }
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
273
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
274 PurpleRequestFieldGroup *
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
275 purple_request_field_group_new(const char *title)
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
276 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
277 PurpleRequestFieldGroup *group;
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
278
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
279 group = g_new0(PurpleRequestFieldGroup, 1);
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
280
14097
0c340861ab79 [gaim-migrate @ 16638]
Mark Doliner <markdoliner@pidgin.im>
parents: 13283
diff changeset
281 group->title = g_strdup(title);
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
282
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
283 return group;
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
284 }
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
285
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
286 void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
287 purple_request_field_group_destroy(PurpleRequestFieldGroup *group)
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
288 {
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
289 g_return_if_fail(group != NULL);
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
290
14097
0c340861ab79 [gaim-migrate @ 16638]
Mark Doliner <markdoliner@pidgin.im>
parents: 13283
diff changeset
291 g_free(group->title);
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
292
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
293 g_list_foreach(group->fields, (GFunc)purple_request_field_destroy, NULL);
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
294 g_list_free(group->fields);
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
295
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
296 g_free(group);
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
297 }
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
298
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
299 void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
300 purple_request_field_group_add_field(PurpleRequestFieldGroup *group,
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
301 PurpleRequestField *field)
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
302 {
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
303 g_return_if_fail(group != NULL);
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
304 g_return_if_fail(field != NULL);
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
305
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
306 group->fields = g_list_append(group->fields, field);
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
307
8286
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
308 if (group->fields_list != NULL)
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
309 {
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
310 g_hash_table_insert(group->fields_list->fields,
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
311 g_strdup(purple_request_field_get_id(field)), field);
14149
df0304d74e95 [gaim-migrate @ 16710]
Daniel Atallah <datallah@pidgin.im>
parents: 14128
diff changeset
312
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
313 if (purple_request_field_is_required(field))
14149
df0304d74e95 [gaim-migrate @ 16710]
Daniel Atallah <datallah@pidgin.im>
parents: 14128
diff changeset
314 {
df0304d74e95 [gaim-migrate @ 16710]
Daniel Atallah <datallah@pidgin.im>
parents: 14128
diff changeset
315 group->fields_list->required_fields =
df0304d74e95 [gaim-migrate @ 16710]
Daniel Atallah <datallah@pidgin.im>
parents: 14128
diff changeset
316 g_list_append(group->fields_list->required_fields, field);
df0304d74e95 [gaim-migrate @ 16710]
Daniel Atallah <datallah@pidgin.im>
parents: 14128
diff changeset
317 }
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
318 }
8286
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
319
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
320 field->group = group;
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
321
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
322 }
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
323
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
324 const char *
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
325 purple_request_field_group_get_title(const PurpleRequestFieldGroup *group)
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
326 {
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
327 g_return_val_if_fail(group != NULL, NULL);
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
328
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
329 return group->title;
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
330 }
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
331
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
332 GList *
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
333 purple_request_field_group_get_fields(const PurpleRequestFieldGroup *group)
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
334 {
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
335 g_return_val_if_fail(group != NULL, NULL);
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
336
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
337 return group->fields;
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
338 }
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
339
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
340 PurpleRequestField *
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
341 purple_request_field_new(const char *id, const char *text,
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
342 PurpleRequestFieldType type)
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
343 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
344 PurpleRequestField *field;
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
345
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
346 g_return_val_if_fail(id != NULL, NULL);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
347 g_return_val_if_fail(type != PURPLE_REQUEST_FIELD_NONE, NULL);
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
348
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
349 field = g_new0(PurpleRequestField, 1);
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
350
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
351 field->id = g_strdup(id);
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
352 field->type = type;
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
353
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
354 purple_request_field_set_label(field, text);
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
355 purple_request_field_set_visible(field, TRUE);
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
356
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
357 return field;
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
358 }
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
359
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
360 void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
361 purple_request_field_destroy(PurpleRequestField *field)
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
362 {
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
363 g_return_if_fail(field != NULL);
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
364
14097
0c340861ab79 [gaim-migrate @ 16638]
Mark Doliner <markdoliner@pidgin.im>
parents: 13283
diff changeset
365 g_free(field->id);
0c340861ab79 [gaim-migrate @ 16638]
Mark Doliner <markdoliner@pidgin.im>
parents: 13283
diff changeset
366 g_free(field->label);
0c340861ab79 [gaim-migrate @ 16638]
Mark Doliner <markdoliner@pidgin.im>
parents: 13283
diff changeset
367 g_free(field->type_hint);
8285
22b999a12246 [gaim-migrate @ 9009]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
368
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
369 if (field->type == PURPLE_REQUEST_FIELD_STRING)
7898
83687727b4a3 [gaim-migrate @ 8558]
Christian Hammond <chipx86@chipx86.com>
parents: 7843
diff changeset
370 {
14097
0c340861ab79 [gaim-migrate @ 16638]
Mark Doliner <markdoliner@pidgin.im>
parents: 13283
diff changeset
371 g_free(field->u.string.default_value);
0c340861ab79 [gaim-migrate @ 16638]
Mark Doliner <markdoliner@pidgin.im>
parents: 13283
diff changeset
372 g_free(field->u.string.value);
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
373 }
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
374 else if (field->type == PURPLE_REQUEST_FIELD_CHOICE)
7898
83687727b4a3 [gaim-migrate @ 8558]
Christian Hammond <chipx86@chipx86.com>
parents: 7843
diff changeset
375 {
83687727b4a3 [gaim-migrate @ 8558]
Christian Hammond <chipx86@chipx86.com>
parents: 7843
diff changeset
376 if (field->u.choice.labels != NULL)
83687727b4a3 [gaim-migrate @ 8558]
Christian Hammond <chipx86@chipx86.com>
parents: 7843
diff changeset
377 {
83687727b4a3 [gaim-migrate @ 8558]
Christian Hammond <chipx86@chipx86.com>
parents: 7843
diff changeset
378 g_list_foreach(field->u.choice.labels, (GFunc)g_free, NULL);
83687727b4a3 [gaim-migrate @ 8558]
Christian Hammond <chipx86@chipx86.com>
parents: 7843
diff changeset
379 g_list_free(field->u.choice.labels);
83687727b4a3 [gaim-migrate @ 8558]
Christian Hammond <chipx86@chipx86.com>
parents: 7843
diff changeset
380 }
83687727b4a3 [gaim-migrate @ 8558]
Christian Hammond <chipx86@chipx86.com>
parents: 7843
diff changeset
381 }
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
382 else if (field->type == PURPLE_REQUEST_FIELD_LIST)
7898
83687727b4a3 [gaim-migrate @ 8558]
Christian Hammond <chipx86@chipx86.com>
parents: 7843
diff changeset
383 {
83687727b4a3 [gaim-migrate @ 8558]
Christian Hammond <chipx86@chipx86.com>
parents: 7843
diff changeset
384 if (field->u.list.items != NULL)
83687727b4a3 [gaim-migrate @ 8558]
Christian Hammond <chipx86@chipx86.com>
parents: 7843
diff changeset
385 {
83687727b4a3 [gaim-migrate @ 8558]
Christian Hammond <chipx86@chipx86.com>
parents: 7843
diff changeset
386 g_list_foreach(field->u.list.items, (GFunc)g_free, NULL);
83687727b4a3 [gaim-migrate @ 8558]
Christian Hammond <chipx86@chipx86.com>
parents: 7843
diff changeset
387 g_list_free(field->u.list.items);
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
388 }
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
389
7898
83687727b4a3 [gaim-migrate @ 8558]
Christian Hammond <chipx86@chipx86.com>
parents: 7843
diff changeset
390 if (field->u.list.selected != NULL)
83687727b4a3 [gaim-migrate @ 8558]
Christian Hammond <chipx86@chipx86.com>
parents: 7843
diff changeset
391 {
83687727b4a3 [gaim-migrate @ 8558]
Christian Hammond <chipx86@chipx86.com>
parents: 7843
diff changeset
392 g_list_foreach(field->u.list.selected, (GFunc)g_free, NULL);
83687727b4a3 [gaim-migrate @ 8558]
Christian Hammond <chipx86@chipx86.com>
parents: 7843
diff changeset
393 g_list_free(field->u.list.selected);
83687727b4a3 [gaim-migrate @ 8558]
Christian Hammond <chipx86@chipx86.com>
parents: 7843
diff changeset
394 }
7909
f2b88b6b97a7 [gaim-migrate @ 8569]
Christian Hammond <chipx86@chipx86.com>
parents: 7905
diff changeset
395
f2b88b6b97a7 [gaim-migrate @ 8569]
Christian Hammond <chipx86@chipx86.com>
parents: 7905
diff changeset
396 g_hash_table_destroy(field->u.list.item_data);
7964
10d58eb8a16a [gaim-migrate @ 8641]
Christian Hammond <chipx86@chipx86.com>
parents: 7962
diff changeset
397 g_hash_table_destroy(field->u.list.selected_table);
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
398 }
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
399
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
400 g_free(field);
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
401 }
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
402
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
403 void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
404 purple_request_field_set_label(PurpleRequestField *field, const char *label)
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
405 {
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
406 g_return_if_fail(field != NULL);
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
407
14097
0c340861ab79 [gaim-migrate @ 16638]
Mark Doliner <markdoliner@pidgin.im>
parents: 13283
diff changeset
408 g_free(field->label);
0c340861ab79 [gaim-migrate @ 16638]
Mark Doliner <markdoliner@pidgin.im>
parents: 13283
diff changeset
409 field->label = g_strdup(label);
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
410 }
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
411
7904
266d6d5c68ac [gaim-migrate @ 8564]
Christian Hammond <chipx86@chipx86.com>
parents: 7902
diff changeset
412 void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
413 purple_request_field_set_visible(PurpleRequestField *field, gboolean visible)
7904
266d6d5c68ac [gaim-migrate @ 8564]
Christian Hammond <chipx86@chipx86.com>
parents: 7902
diff changeset
414 {
266d6d5c68ac [gaim-migrate @ 8564]
Christian Hammond <chipx86@chipx86.com>
parents: 7902
diff changeset
415 g_return_if_fail(field != NULL);
266d6d5c68ac [gaim-migrate @ 8564]
Christian Hammond <chipx86@chipx86.com>
parents: 7902
diff changeset
416
266d6d5c68ac [gaim-migrate @ 8564]
Christian Hammond <chipx86@chipx86.com>
parents: 7902
diff changeset
417 field->visible = visible;
266d6d5c68ac [gaim-migrate @ 8564]
Christian Hammond <chipx86@chipx86.com>
parents: 7902
diff changeset
418 }
266d6d5c68ac [gaim-migrate @ 8564]
Christian Hammond <chipx86@chipx86.com>
parents: 7902
diff changeset
419
8285
22b999a12246 [gaim-migrate @ 9009]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
420 void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
421 purple_request_field_set_type_hint(PurpleRequestField *field,
8285
22b999a12246 [gaim-migrate @ 9009]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
422 const char *type_hint)
22b999a12246 [gaim-migrate @ 9009]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
423 {
22b999a12246 [gaim-migrate @ 9009]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
424 g_return_if_fail(field != NULL);
22b999a12246 [gaim-migrate @ 9009]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
425
14097
0c340861ab79 [gaim-migrate @ 16638]
Mark Doliner <markdoliner@pidgin.im>
parents: 13283
diff changeset
426 g_free(field->type_hint);
0c340861ab79 [gaim-migrate @ 16638]
Mark Doliner <markdoliner@pidgin.im>
parents: 13283
diff changeset
427 field->type_hint = g_strdup(type_hint);
8285
22b999a12246 [gaim-migrate @ 9009]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
428 }
22b999a12246 [gaim-migrate @ 9009]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
429
8286
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
430 void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
431 purple_request_field_set_required(PurpleRequestField *field, gboolean required)
8286
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
432 {
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
433 g_return_if_fail(field != NULL);
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
434
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
435 if (field->required == required)
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
436 return;
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
437
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
438 field->required = required;
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
439
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
440 if (field->group != NULL)
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
441 {
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
442 if (required)
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
443 {
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
444 field->group->fields_list->required_fields =
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
445 g_list_append(field->group->fields_list->required_fields,
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
446 field);
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
447 }
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
448 else
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
449 {
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
450 field->group->fields_list->required_fields =
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
451 g_list_remove(field->group->fields_list->required_fields,
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
452 field);
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
453 }
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
454 }
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
455 }
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
456
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
457 PurpleRequestFieldType
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
458 purple_request_field_get_type(const PurpleRequestField *field)
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
459 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
460 g_return_val_if_fail(field != NULL, PURPLE_REQUEST_FIELD_NONE);
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
461
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
462 return field->type;
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
463 }
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
464
24984
64b88867fbdf Hide the PurpleRequestField struct. I figured this one would be easy and
Richard Laager <rlaager@pidgin.im>
parents: 21990
diff changeset
465 PurpleRequestFieldGroup *
64b88867fbdf Hide the PurpleRequestField struct. I figured this one would be easy and
Richard Laager <rlaager@pidgin.im>
parents: 21990
diff changeset
466 purple_request_field_get_group(const PurpleRequestField *field)
64b88867fbdf Hide the PurpleRequestField struct. I figured this one would be easy and
Richard Laager <rlaager@pidgin.im>
parents: 21990
diff changeset
467 {
64b88867fbdf Hide the PurpleRequestField struct. I figured this one would be easy and
Richard Laager <rlaager@pidgin.im>
parents: 21990
diff changeset
468 g_return_val_if_fail(field != NULL, NULL);
64b88867fbdf Hide the PurpleRequestField struct. I figured this one would be easy and
Richard Laager <rlaager@pidgin.im>
parents: 21990
diff changeset
469
64b88867fbdf Hide the PurpleRequestField struct. I figured this one would be easy and
Richard Laager <rlaager@pidgin.im>
parents: 21990
diff changeset
470 return field->group;
64b88867fbdf Hide the PurpleRequestField struct. I figured this one would be easy and
Richard Laager <rlaager@pidgin.im>
parents: 21990
diff changeset
471 }
64b88867fbdf Hide the PurpleRequestField struct. I figured this one would be easy and
Richard Laager <rlaager@pidgin.im>
parents: 21990
diff changeset
472
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
473 const char *
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
474 purple_request_field_get_id(const PurpleRequestField *field)
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
475 {
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
476 g_return_val_if_fail(field != NULL, NULL);
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
477
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
478 return field->id;
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
479 }
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
480
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
481 const char *
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
482 purple_request_field_get_label(const PurpleRequestField *field)
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
483 {
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
484 g_return_val_if_fail(field != NULL, NULL);
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
485
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
486 return field->label;
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
487 }
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
488
7904
266d6d5c68ac [gaim-migrate @ 8564]
Christian Hammond <chipx86@chipx86.com>
parents: 7902
diff changeset
489 gboolean
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
490 purple_request_field_is_visible(const PurpleRequestField *field)
7904
266d6d5c68ac [gaim-migrate @ 8564]
Christian Hammond <chipx86@chipx86.com>
parents: 7902
diff changeset
491 {
266d6d5c68ac [gaim-migrate @ 8564]
Christian Hammond <chipx86@chipx86.com>
parents: 7902
diff changeset
492 g_return_val_if_fail(field != NULL, FALSE);
266d6d5c68ac [gaim-migrate @ 8564]
Christian Hammond <chipx86@chipx86.com>
parents: 7902
diff changeset
493
266d6d5c68ac [gaim-migrate @ 8564]
Christian Hammond <chipx86@chipx86.com>
parents: 7902
diff changeset
494 return field->visible;
266d6d5c68ac [gaim-migrate @ 8564]
Christian Hammond <chipx86@chipx86.com>
parents: 7902
diff changeset
495 }
266d6d5c68ac [gaim-migrate @ 8564]
Christian Hammond <chipx86@chipx86.com>
parents: 7902
diff changeset
496
8285
22b999a12246 [gaim-migrate @ 9009]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
497 const char *
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
498 purple_request_field_get_type_hint(const PurpleRequestField *field)
8285
22b999a12246 [gaim-migrate @ 9009]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
499 {
22b999a12246 [gaim-migrate @ 9009]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
500 g_return_val_if_fail(field != NULL, NULL);
22b999a12246 [gaim-migrate @ 9009]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
501
22b999a12246 [gaim-migrate @ 9009]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
502 return field->type_hint;
22b999a12246 [gaim-migrate @ 9009]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
503 }
22b999a12246 [gaim-migrate @ 9009]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
504
8286
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
505 gboolean
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
506 purple_request_field_is_required(const PurpleRequestField *field)
8286
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
507 {
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
508 g_return_val_if_fail(field != NULL, FALSE);
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
509
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
510 return field->required;
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
511 }
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
512
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
513 PurpleRequestField *
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
514 purple_request_field_string_new(const char *id, const char *text,
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
515 const char *default_value, gboolean multiline)
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
516 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
517 PurpleRequestField *field;
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
518
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
519 g_return_val_if_fail(id != NULL, NULL);
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
520 g_return_val_if_fail(text != NULL, NULL);
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
521
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
522 field = purple_request_field_new(id, text, PURPLE_REQUEST_FIELD_STRING);
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
523
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
524 field->u.string.multiline = multiline;
7048
53e1ea65540e [gaim-migrate @ 7611]
Christian Hammond <chipx86@chipx86.com>
parents: 7047
diff changeset
525 field->u.string.editable = TRUE;
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
526
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
527 purple_request_field_string_set_default_value(field, default_value);
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
528 purple_request_field_string_set_value(field, default_value);
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
529
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
530 return field;
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
531 }
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
532
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
533 void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
534 purple_request_field_string_set_default_value(PurpleRequestField *field,
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
535 const char *default_value)
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
536 {
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
537 g_return_if_fail(field != NULL);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
538 g_return_if_fail(field->type == PURPLE_REQUEST_FIELD_STRING);
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
539
14097
0c340861ab79 [gaim-migrate @ 16638]
Mark Doliner <markdoliner@pidgin.im>
parents: 13283
diff changeset
540 g_free(field->u.string.default_value);
0c340861ab79 [gaim-migrate @ 16638]
Mark Doliner <markdoliner@pidgin.im>
parents: 13283
diff changeset
541 field->u.string.default_value = g_strdup(default_value);
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
542 }
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
543
5808
480370b3188c [gaim-migrate @ 6238]
Christian Hammond <chipx86@chipx86.com>
parents: 5807
diff changeset
544 void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
545 purple_request_field_string_set_value(PurpleRequestField *field, const char *value)
5808
480370b3188c [gaim-migrate @ 6238]
Christian Hammond <chipx86@chipx86.com>
parents: 5807
diff changeset
546 {
480370b3188c [gaim-migrate @ 6238]
Christian Hammond <chipx86@chipx86.com>
parents: 5807
diff changeset
547 g_return_if_fail(field != NULL);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
548 g_return_if_fail(field->type == PURPLE_REQUEST_FIELD_STRING);
5808
480370b3188c [gaim-migrate @ 6238]
Christian Hammond <chipx86@chipx86.com>
parents: 5807
diff changeset
549
14097
0c340861ab79 [gaim-migrate @ 16638]
Mark Doliner <markdoliner@pidgin.im>
parents: 13283
diff changeset
550 g_free(field->u.string.value);
0c340861ab79 [gaim-migrate @ 16638]
Mark Doliner <markdoliner@pidgin.im>
parents: 13283
diff changeset
551 field->u.string.value = g_strdup(value);
5808
480370b3188c [gaim-migrate @ 6238]
Christian Hammond <chipx86@chipx86.com>
parents: 5807
diff changeset
552 }
480370b3188c [gaim-migrate @ 6238]
Christian Hammond <chipx86@chipx86.com>
parents: 5807
diff changeset
553
7047
0cefcbc12508 [gaim-migrate @ 7610]
Christian Hammond <chipx86@chipx86.com>
parents: 7035
diff changeset
554 void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
555 purple_request_field_string_set_masked(PurpleRequestField *field, gboolean masked)
7047
0cefcbc12508 [gaim-migrate @ 7610]
Christian Hammond <chipx86@chipx86.com>
parents: 7035
diff changeset
556 {
0cefcbc12508 [gaim-migrate @ 7610]
Christian Hammond <chipx86@chipx86.com>
parents: 7035
diff changeset
557 g_return_if_fail(field != NULL);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
558 g_return_if_fail(field->type == PURPLE_REQUEST_FIELD_STRING);
7047
0cefcbc12508 [gaim-migrate @ 7610]
Christian Hammond <chipx86@chipx86.com>
parents: 7035
diff changeset
559
0cefcbc12508 [gaim-migrate @ 7610]
Christian Hammond <chipx86@chipx86.com>
parents: 7035
diff changeset
560 field->u.string.masked = masked;
0cefcbc12508 [gaim-migrate @ 7610]
Christian Hammond <chipx86@chipx86.com>
parents: 7035
diff changeset
561 }
0cefcbc12508 [gaim-migrate @ 7610]
Christian Hammond <chipx86@chipx86.com>
parents: 7035
diff changeset
562
0cefcbc12508 [gaim-migrate @ 7610]
Christian Hammond <chipx86@chipx86.com>
parents: 7035
diff changeset
563 void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
564 purple_request_field_string_set_editable(PurpleRequestField *field,
7047
0cefcbc12508 [gaim-migrate @ 7610]
Christian Hammond <chipx86@chipx86.com>
parents: 7035
diff changeset
565 gboolean editable)
0cefcbc12508 [gaim-migrate @ 7610]
Christian Hammond <chipx86@chipx86.com>
parents: 7035
diff changeset
566 {
0cefcbc12508 [gaim-migrate @ 7610]
Christian Hammond <chipx86@chipx86.com>
parents: 7035
diff changeset
567 g_return_if_fail(field != NULL);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
568 g_return_if_fail(field->type == PURPLE_REQUEST_FIELD_STRING);
7047
0cefcbc12508 [gaim-migrate @ 7610]
Christian Hammond <chipx86@chipx86.com>
parents: 7035
diff changeset
569
0cefcbc12508 [gaim-migrate @ 7610]
Christian Hammond <chipx86@chipx86.com>
parents: 7035
diff changeset
570 field->u.string.editable = editable;
0cefcbc12508 [gaim-migrate @ 7610]
Christian Hammond <chipx86@chipx86.com>
parents: 7035
diff changeset
571 }
0cefcbc12508 [gaim-migrate @ 7610]
Christian Hammond <chipx86@chipx86.com>
parents: 7035
diff changeset
572
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
573 const char *
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
574 purple_request_field_string_get_default_value(const PurpleRequestField *field)
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
575 {
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
576 g_return_val_if_fail(field != NULL, NULL);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
577 g_return_val_if_fail(field->type == PURPLE_REQUEST_FIELD_STRING, NULL);
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
578
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
579 return field->u.string.default_value;
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
580 }
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
581
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
582 const char *
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
583 purple_request_field_string_get_value(const PurpleRequestField *field)
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
584 {
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
585 g_return_val_if_fail(field != NULL, NULL);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
586 g_return_val_if_fail(field->type == PURPLE_REQUEST_FIELD_STRING, NULL);
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
587
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
588 return field->u.string.value;
7047
0cefcbc12508 [gaim-migrate @ 7610]
Christian Hammond <chipx86@chipx86.com>
parents: 7035
diff changeset
589 }
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
590
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
591 gboolean
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
592 purple_request_field_string_is_multiline(const PurpleRequestField *field)
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
593 {
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
594 g_return_val_if_fail(field != NULL, FALSE);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
595 g_return_val_if_fail(field->type == PURPLE_REQUEST_FIELD_STRING, FALSE);
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
596
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
597 return field->u.string.multiline;
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
598 }
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
599
7047
0cefcbc12508 [gaim-migrate @ 7610]
Christian Hammond <chipx86@chipx86.com>
parents: 7035
diff changeset
600 gboolean
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
601 purple_request_field_string_is_masked(const PurpleRequestField *field)
7047
0cefcbc12508 [gaim-migrate @ 7610]
Christian Hammond <chipx86@chipx86.com>
parents: 7035
diff changeset
602 {
0cefcbc12508 [gaim-migrate @ 7610]
Christian Hammond <chipx86@chipx86.com>
parents: 7035
diff changeset
603 g_return_val_if_fail(field != NULL, FALSE);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
604 g_return_val_if_fail(field->type == PURPLE_REQUEST_FIELD_STRING, FALSE);
7047
0cefcbc12508 [gaim-migrate @ 7610]
Christian Hammond <chipx86@chipx86.com>
parents: 7035
diff changeset
605
0cefcbc12508 [gaim-migrate @ 7610]
Christian Hammond <chipx86@chipx86.com>
parents: 7035
diff changeset
606 return field->u.string.masked;
0cefcbc12508 [gaim-migrate @ 7610]
Christian Hammond <chipx86@chipx86.com>
parents: 7035
diff changeset
607 }
0cefcbc12508 [gaim-migrate @ 7610]
Christian Hammond <chipx86@chipx86.com>
parents: 7035
diff changeset
608
0cefcbc12508 [gaim-migrate @ 7610]
Christian Hammond <chipx86@chipx86.com>
parents: 7035
diff changeset
609 gboolean
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
610 purple_request_field_string_is_editable(const PurpleRequestField *field)
7047
0cefcbc12508 [gaim-migrate @ 7610]
Christian Hammond <chipx86@chipx86.com>
parents: 7035
diff changeset
611 {
0cefcbc12508 [gaim-migrate @ 7610]
Christian Hammond <chipx86@chipx86.com>
parents: 7035
diff changeset
612 g_return_val_if_fail(field != NULL, FALSE);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
613 g_return_val_if_fail(field->type == PURPLE_REQUEST_FIELD_STRING, FALSE);
7047
0cefcbc12508 [gaim-migrate @ 7610]
Christian Hammond <chipx86@chipx86.com>
parents: 7035
diff changeset
614
0cefcbc12508 [gaim-migrate @ 7610]
Christian Hammond <chipx86@chipx86.com>
parents: 7035
diff changeset
615 return field->u.string.editable;
0cefcbc12508 [gaim-migrate @ 7610]
Christian Hammond <chipx86@chipx86.com>
parents: 7035
diff changeset
616 }
0cefcbc12508 [gaim-migrate @ 7610]
Christian Hammond <chipx86@chipx86.com>
parents: 7035
diff changeset
617
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
618 PurpleRequestField *
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
619 purple_request_field_int_new(const char *id, const char *text,
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
620 int default_value)
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
621 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
622 PurpleRequestField *field;
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
623
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
624 g_return_val_if_fail(id != NULL, NULL);
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
625 g_return_val_if_fail(text != NULL, NULL);
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
626
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
627 field = purple_request_field_new(id, text, PURPLE_REQUEST_FIELD_INTEGER);
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
628
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
629 purple_request_field_int_set_default_value(field, default_value);
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
630 purple_request_field_int_set_value(field, default_value);
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
631
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
632 return field;
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
633 }
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
634
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
635 void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
636 purple_request_field_int_set_default_value(PurpleRequestField *field,
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
637 int default_value)
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
638 {
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
639 g_return_if_fail(field != NULL);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
640 g_return_if_fail(field->type == PURPLE_REQUEST_FIELD_INTEGER);
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
641
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
642 field->u.integer.default_value = default_value;
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
643 }
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
644
5808
480370b3188c [gaim-migrate @ 6238]
Christian Hammond <chipx86@chipx86.com>
parents: 5807
diff changeset
645 void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
646 purple_request_field_int_set_value(PurpleRequestField *field, int value)
5808
480370b3188c [gaim-migrate @ 6238]
Christian Hammond <chipx86@chipx86.com>
parents: 5807
diff changeset
647 {
480370b3188c [gaim-migrate @ 6238]
Christian Hammond <chipx86@chipx86.com>
parents: 5807
diff changeset
648 g_return_if_fail(field != NULL);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
649 g_return_if_fail(field->type == PURPLE_REQUEST_FIELD_INTEGER);
5808
480370b3188c [gaim-migrate @ 6238]
Christian Hammond <chipx86@chipx86.com>
parents: 5807
diff changeset
650
480370b3188c [gaim-migrate @ 6238]
Christian Hammond <chipx86@chipx86.com>
parents: 5807
diff changeset
651 field->u.integer.value = value;
480370b3188c [gaim-migrate @ 6238]
Christian Hammond <chipx86@chipx86.com>
parents: 5807
diff changeset
652 }
480370b3188c [gaim-migrate @ 6238]
Christian Hammond <chipx86@chipx86.com>
parents: 5807
diff changeset
653
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
654 int
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
655 purple_request_field_int_get_default_value(const PurpleRequestField *field)
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
656 {
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
657 g_return_val_if_fail(field != NULL, 0);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
658 g_return_val_if_fail(field->type == PURPLE_REQUEST_FIELD_INTEGER, 0);
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
659
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
660 return field->u.integer.default_value;
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
661 }
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
662
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
663 int
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
664 purple_request_field_int_get_value(const PurpleRequestField *field)
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
665 {
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
666 g_return_val_if_fail(field != NULL, 0);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
667 g_return_val_if_fail(field->type == PURPLE_REQUEST_FIELD_INTEGER, 0);
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
668
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
669 return field->u.integer.value;
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
670 }
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
671
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
672 PurpleRequestField *
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
673 purple_request_field_bool_new(const char *id, const char *text,
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
674 gboolean default_value)
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
675 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
676 PurpleRequestField *field;
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
677
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
678 g_return_val_if_fail(id != NULL, NULL);
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
679 g_return_val_if_fail(text != NULL, NULL);
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
680
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
681 field = purple_request_field_new(id, text, PURPLE_REQUEST_FIELD_BOOLEAN);
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
682
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
683 purple_request_field_bool_set_default_value(field, default_value);
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
684 purple_request_field_bool_set_value(field, default_value);
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
685
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
686 return field;
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
687 }
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
688
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
689 void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
690 purple_request_field_bool_set_default_value(PurpleRequestField *field,
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
691 gboolean default_value)
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
692 {
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
693 g_return_if_fail(field != NULL);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
694 g_return_if_fail(field->type == PURPLE_REQUEST_FIELD_BOOLEAN);
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
695
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
696 field->u.boolean.default_value = default_value;
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
697 }
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
698
5808
480370b3188c [gaim-migrate @ 6238]
Christian Hammond <chipx86@chipx86.com>
parents: 5807
diff changeset
699 void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
700 purple_request_field_bool_set_value(PurpleRequestField *field, gboolean value)
5808
480370b3188c [gaim-migrate @ 6238]
Christian Hammond <chipx86@chipx86.com>
parents: 5807
diff changeset
701 {
480370b3188c [gaim-migrate @ 6238]
Christian Hammond <chipx86@chipx86.com>
parents: 5807
diff changeset
702 g_return_if_fail(field != NULL);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
703 g_return_if_fail(field->type == PURPLE_REQUEST_FIELD_BOOLEAN);
5808
480370b3188c [gaim-migrate @ 6238]
Christian Hammond <chipx86@chipx86.com>
parents: 5807
diff changeset
704
480370b3188c [gaim-migrate @ 6238]
Christian Hammond <chipx86@chipx86.com>
parents: 5807
diff changeset
705 field->u.boolean.value = value;
480370b3188c [gaim-migrate @ 6238]
Christian Hammond <chipx86@chipx86.com>
parents: 5807
diff changeset
706 }
480370b3188c [gaim-migrate @ 6238]
Christian Hammond <chipx86@chipx86.com>
parents: 5807
diff changeset
707
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
708 gboolean
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
709 purple_request_field_bool_get_default_value(const PurpleRequestField *field)
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
710 {
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
711 g_return_val_if_fail(field != NULL, FALSE);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
712 g_return_val_if_fail(field->type == PURPLE_REQUEST_FIELD_BOOLEAN, FALSE);
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
713
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
714 return field->u.boolean.default_value;
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
715 }
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
716
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
717 gboolean
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
718 purple_request_field_bool_get_value(const PurpleRequestField *field)
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
719 {
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
720 g_return_val_if_fail(field != NULL, FALSE);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
721 g_return_val_if_fail(field->type == PURPLE_REQUEST_FIELD_BOOLEAN, FALSE);
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
722
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
723 return field->u.boolean.value;
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
724 }
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
725
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
726 PurpleRequestField *
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
727 purple_request_field_choice_new(const char *id, const char *text,
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
728 int default_value)
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
729 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
730 PurpleRequestField *field;
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
731
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
732 g_return_val_if_fail(id != NULL, NULL);
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
733 g_return_val_if_fail(text != NULL, NULL);
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
734
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
735 field = purple_request_field_new(id, text, PURPLE_REQUEST_FIELD_CHOICE);
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
736
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
737 purple_request_field_choice_set_default_value(field, default_value);
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
738 purple_request_field_choice_set_value(field, default_value);
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
739
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
740 return field;
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
741 }
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
742
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
743 void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
744 purple_request_field_choice_add(PurpleRequestField *field, const char *label)
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
745 {
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
746 g_return_if_fail(field != NULL);
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
747 g_return_if_fail(label != NULL);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
748 g_return_if_fail(field->type == PURPLE_REQUEST_FIELD_CHOICE);
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
749
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
750 field->u.choice.labels = g_list_append(field->u.choice.labels,
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
751 g_strdup(label));
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
752 }
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
753
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
754 void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
755 purple_request_field_choice_set_default_value(PurpleRequestField *field,
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
756 int default_value)
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
757 {
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
758 g_return_if_fail(field != NULL);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
759 g_return_if_fail(field->type == PURPLE_REQUEST_FIELD_CHOICE);
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
760
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
761 field->u.choice.default_value = default_value;
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
762 }
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
763
5808
480370b3188c [gaim-migrate @ 6238]
Christian Hammond <chipx86@chipx86.com>
parents: 5807
diff changeset
764 void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
765 purple_request_field_choice_set_value(PurpleRequestField *field,
5808
480370b3188c [gaim-migrate @ 6238]
Christian Hammond <chipx86@chipx86.com>
parents: 5807
diff changeset
766 int value)
480370b3188c [gaim-migrate @ 6238]
Christian Hammond <chipx86@chipx86.com>
parents: 5807
diff changeset
767 {
480370b3188c [gaim-migrate @ 6238]
Christian Hammond <chipx86@chipx86.com>
parents: 5807
diff changeset
768 g_return_if_fail(field != NULL);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
769 g_return_if_fail(field->type == PURPLE_REQUEST_FIELD_CHOICE);
5808
480370b3188c [gaim-migrate @ 6238]
Christian Hammond <chipx86@chipx86.com>
parents: 5807
diff changeset
770
480370b3188c [gaim-migrate @ 6238]
Christian Hammond <chipx86@chipx86.com>
parents: 5807
diff changeset
771 field->u.choice.value = value;
480370b3188c [gaim-migrate @ 6238]
Christian Hammond <chipx86@chipx86.com>
parents: 5807
diff changeset
772 }
480370b3188c [gaim-migrate @ 6238]
Christian Hammond <chipx86@chipx86.com>
parents: 5807
diff changeset
773
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
774 int
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
775 purple_request_field_choice_get_default_value(const PurpleRequestField *field)
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
776 {
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
777 g_return_val_if_fail(field != NULL, -1);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
778 g_return_val_if_fail(field->type == PURPLE_REQUEST_FIELD_CHOICE, -1);
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
779
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
780 return field->u.choice.default_value;
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
781 }
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
782
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
783 int
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
784 purple_request_field_choice_get_value(const PurpleRequestField *field)
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
785 {
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
786 g_return_val_if_fail(field != NULL, -1);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
787 g_return_val_if_fail(field->type == PURPLE_REQUEST_FIELD_CHOICE, -1);
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
788
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
789 return field->u.choice.value;
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
790 }
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
791
5809
3550646492e0 [gaim-migrate @ 6239]
Christian Hammond <chipx86@chipx86.com>
parents: 5808
diff changeset
792 GList *
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
793 purple_request_field_choice_get_labels(const PurpleRequestField *field)
5809
3550646492e0 [gaim-migrate @ 6239]
Christian Hammond <chipx86@chipx86.com>
parents: 5808
diff changeset
794 {
3550646492e0 [gaim-migrate @ 6239]
Christian Hammond <chipx86@chipx86.com>
parents: 5808
diff changeset
795 g_return_val_if_fail(field != NULL, NULL);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
796 g_return_val_if_fail(field->type == PURPLE_REQUEST_FIELD_CHOICE, NULL);
5809
3550646492e0 [gaim-migrate @ 6239]
Christian Hammond <chipx86@chipx86.com>
parents: 5808
diff changeset
797
5810
1d659318f194 [gaim-migrate @ 6240]
Christian Hammond <chipx86@chipx86.com>
parents: 5809
diff changeset
798 return field->u.choice.labels;
5809
3550646492e0 [gaim-migrate @ 6239]
Christian Hammond <chipx86@chipx86.com>
parents: 5808
diff changeset
799 }
3550646492e0 [gaim-migrate @ 6239]
Christian Hammond <chipx86@chipx86.com>
parents: 5808
diff changeset
800
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
801 PurpleRequestField *
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
802 purple_request_field_list_new(const char *id, const char *text)
7898
83687727b4a3 [gaim-migrate @ 8558]
Christian Hammond <chipx86@chipx86.com>
parents: 7843
diff changeset
803 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
804 PurpleRequestField *field;
7898
83687727b4a3 [gaim-migrate @ 8558]
Christian Hammond <chipx86@chipx86.com>
parents: 7843
diff changeset
805
7909
f2b88b6b97a7 [gaim-migrate @ 8569]
Christian Hammond <chipx86@chipx86.com>
parents: 7905
diff changeset
806 g_return_val_if_fail(id != NULL, NULL);
7898
83687727b4a3 [gaim-migrate @ 8558]
Christian Hammond <chipx86@chipx86.com>
parents: 7843
diff changeset
807
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
808 field = purple_request_field_new(id, text, PURPLE_REQUEST_FIELD_LIST);
7898
83687727b4a3 [gaim-migrate @ 8558]
Christian Hammond <chipx86@chipx86.com>
parents: 7843
diff changeset
809
7909
f2b88b6b97a7 [gaim-migrate @ 8569]
Christian Hammond <chipx86@chipx86.com>
parents: 7905
diff changeset
810 field->u.list.item_data = g_hash_table_new_full(g_str_hash, g_str_equal,
f2b88b6b97a7 [gaim-migrate @ 8569]
Christian Hammond <chipx86@chipx86.com>
parents: 7905
diff changeset
811 g_free, NULL);
7898
83687727b4a3 [gaim-migrate @ 8558]
Christian Hammond <chipx86@chipx86.com>
parents: 7843
diff changeset
812
7964
10d58eb8a16a [gaim-migrate @ 8641]
Christian Hammond <chipx86@chipx86.com>
parents: 7962
diff changeset
813 field->u.list.selected_table =
10d58eb8a16a [gaim-migrate @ 8641]
Christian Hammond <chipx86@chipx86.com>
parents: 7962
diff changeset
814 g_hash_table_new_full(g_str_hash, g_str_equal, g_free, NULL);
10d58eb8a16a [gaim-migrate @ 8641]
Christian Hammond <chipx86@chipx86.com>
parents: 7962
diff changeset
815
7898
83687727b4a3 [gaim-migrate @ 8558]
Christian Hammond <chipx86@chipx86.com>
parents: 7843
diff changeset
816 return field;
83687727b4a3 [gaim-migrate @ 8558]
Christian Hammond <chipx86@chipx86.com>
parents: 7843
diff changeset
817 }
83687727b4a3 [gaim-migrate @ 8558]
Christian Hammond <chipx86@chipx86.com>
parents: 7843
diff changeset
818
83687727b4a3 [gaim-migrate @ 8558]
Christian Hammond <chipx86@chipx86.com>
parents: 7843
diff changeset
819 void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
820 purple_request_field_list_set_multi_select(PurpleRequestField *field,
7899
b908d0b9035a [gaim-migrate @ 8559]
Christian Hammond <chipx86@chipx86.com>
parents: 7898
diff changeset
821 gboolean multi_select)
b908d0b9035a [gaim-migrate @ 8559]
Christian Hammond <chipx86@chipx86.com>
parents: 7898
diff changeset
822 {
b908d0b9035a [gaim-migrate @ 8559]
Christian Hammond <chipx86@chipx86.com>
parents: 7898
diff changeset
823 g_return_if_fail(field != NULL);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
824 g_return_if_fail(field->type == PURPLE_REQUEST_FIELD_LIST);
7899
b908d0b9035a [gaim-migrate @ 8559]
Christian Hammond <chipx86@chipx86.com>
parents: 7898
diff changeset
825
b908d0b9035a [gaim-migrate @ 8559]
Christian Hammond <chipx86@chipx86.com>
parents: 7898
diff changeset
826 field->u.list.multiple_selection = multi_select;
b908d0b9035a [gaim-migrate @ 8559]
Christian Hammond <chipx86@chipx86.com>
parents: 7898
diff changeset
827 }
b908d0b9035a [gaim-migrate @ 8559]
Christian Hammond <chipx86@chipx86.com>
parents: 7898
diff changeset
828
b908d0b9035a [gaim-migrate @ 8559]
Christian Hammond <chipx86@chipx86.com>
parents: 7898
diff changeset
829 gboolean
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
830 purple_request_field_list_get_multi_select(const PurpleRequestField *field)
7899
b908d0b9035a [gaim-migrate @ 8559]
Christian Hammond <chipx86@chipx86.com>
parents: 7898
diff changeset
831 {
b908d0b9035a [gaim-migrate @ 8559]
Christian Hammond <chipx86@chipx86.com>
parents: 7898
diff changeset
832 g_return_val_if_fail(field != NULL, FALSE);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
833 g_return_val_if_fail(field->type == PURPLE_REQUEST_FIELD_LIST, FALSE);
7899
b908d0b9035a [gaim-migrate @ 8559]
Christian Hammond <chipx86@chipx86.com>
parents: 7898
diff changeset
834
b908d0b9035a [gaim-migrate @ 8559]
Christian Hammond <chipx86@chipx86.com>
parents: 7898
diff changeset
835 return field->u.list.multiple_selection;
b908d0b9035a [gaim-migrate @ 8559]
Christian Hammond <chipx86@chipx86.com>
parents: 7898
diff changeset
836 }
b908d0b9035a [gaim-migrate @ 8559]
Christian Hammond <chipx86@chipx86.com>
parents: 7898
diff changeset
837
7909
f2b88b6b97a7 [gaim-migrate @ 8569]
Christian Hammond <chipx86@chipx86.com>
parents: 7905
diff changeset
838 void *
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
839 purple_request_field_list_get_data(const PurpleRequestField *field,
7909
f2b88b6b97a7 [gaim-migrate @ 8569]
Christian Hammond <chipx86@chipx86.com>
parents: 7905
diff changeset
840 const char *text)
f2b88b6b97a7 [gaim-migrate @ 8569]
Christian Hammond <chipx86@chipx86.com>
parents: 7905
diff changeset
841 {
f2b88b6b97a7 [gaim-migrate @ 8569]
Christian Hammond <chipx86@chipx86.com>
parents: 7905
diff changeset
842 g_return_val_if_fail(field != NULL, NULL);
f2b88b6b97a7 [gaim-migrate @ 8569]
Christian Hammond <chipx86@chipx86.com>
parents: 7905
diff changeset
843 g_return_val_if_fail(text != NULL, NULL);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
844 g_return_val_if_fail(field->type == PURPLE_REQUEST_FIELD_LIST, NULL);
7909
f2b88b6b97a7 [gaim-migrate @ 8569]
Christian Hammond <chipx86@chipx86.com>
parents: 7905
diff changeset
845
f2b88b6b97a7 [gaim-migrate @ 8569]
Christian Hammond <chipx86@chipx86.com>
parents: 7905
diff changeset
846 return g_hash_table_lookup(field->u.list.item_data, text);
f2b88b6b97a7 [gaim-migrate @ 8569]
Christian Hammond <chipx86@chipx86.com>
parents: 7905
diff changeset
847 }
f2b88b6b97a7 [gaim-migrate @ 8569]
Christian Hammond <chipx86@chipx86.com>
parents: 7905
diff changeset
848
7899
b908d0b9035a [gaim-migrate @ 8559]
Christian Hammond <chipx86@chipx86.com>
parents: 7898
diff changeset
849 void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
850 purple_request_field_list_add(PurpleRequestField *field, const char *item,
7909
f2b88b6b97a7 [gaim-migrate @ 8569]
Christian Hammond <chipx86@chipx86.com>
parents: 7905
diff changeset
851 void *data)
7898
83687727b4a3 [gaim-migrate @ 8558]
Christian Hammond <chipx86@chipx86.com>
parents: 7843
diff changeset
852 {
24899
54719498c900 Deprecate purple_request_field_list_add() in favor of the new
Richard Laager <rlaager@pidgin.im>
parents: 24892
diff changeset
853 purple_request_field_list_add_icon(field, item, NULL, data);
7898
83687727b4a3 [gaim-migrate @ 8558]
Christian Hammond <chipx86@chipx86.com>
parents: 7843
diff changeset
854 }
83687727b4a3 [gaim-migrate @ 8558]
Christian Hammond <chipx86@chipx86.com>
parents: 7843
diff changeset
855
7901
f09d051b649d [gaim-migrate @ 8561]
Christian Hammond <chipx86@chipx86.com>
parents: 7899
diff changeset
856 void
24625
4082cd694acb This patch comes from the combined work of contributors minstrel, NightFox,
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21990
diff changeset
857 purple_request_field_list_add_icon(PurpleRequestField *field, const char *item, const char* icon_path,
4082cd694acb This patch comes from the combined work of contributors minstrel, NightFox,
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21990
diff changeset
858 void *data)
4082cd694acb This patch comes from the combined work of contributors minstrel, NightFox,
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21990
diff changeset
859 {
4082cd694acb This patch comes from the combined work of contributors minstrel, NightFox,
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21990
diff changeset
860 g_return_if_fail(field != NULL);
4082cd694acb This patch comes from the combined work of contributors minstrel, NightFox,
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21990
diff changeset
861 g_return_if_fail(item != NULL);
4082cd694acb This patch comes from the combined work of contributors minstrel, NightFox,
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21990
diff changeset
862 g_return_if_fail(data != NULL);
4082cd694acb This patch comes from the combined work of contributors minstrel, NightFox,
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21990
diff changeset
863 g_return_if_fail(field->type == PURPLE_REQUEST_FIELD_LIST);
4082cd694acb This patch comes from the combined work of contributors minstrel, NightFox,
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21990
diff changeset
864
24899
54719498c900 Deprecate purple_request_field_list_add() in favor of the new
Richard Laager <rlaager@pidgin.im>
parents: 24892
diff changeset
865 if (icon_path)
54719498c900 Deprecate purple_request_field_list_add() in favor of the new
Richard Laager <rlaager@pidgin.im>
parents: 24892
diff changeset
866 {
54719498c900 Deprecate purple_request_field_list_add() in favor of the new
Richard Laager <rlaager@pidgin.im>
parents: 24892
diff changeset
867 if (field->u.list.icons == NULL)
54719498c900 Deprecate purple_request_field_list_add() in favor of the new
Richard Laager <rlaager@pidgin.im>
parents: 24892
diff changeset
868 {
54719498c900 Deprecate purple_request_field_list_add() in favor of the new
Richard Laager <rlaager@pidgin.im>
parents: 24892
diff changeset
869 GList *l;
54719498c900 Deprecate purple_request_field_list_add() in favor of the new
Richard Laager <rlaager@pidgin.im>
parents: 24892
diff changeset
870 for (l = field->u.list.items ; l != NULL ; l = l->next)
54719498c900 Deprecate purple_request_field_list_add() in favor of the new
Richard Laager <rlaager@pidgin.im>
parents: 24892
diff changeset
871 {
54719498c900 Deprecate purple_request_field_list_add() in favor of the new
Richard Laager <rlaager@pidgin.im>
parents: 24892
diff changeset
872 /* Order doesn't matter, because we're just
54719498c900 Deprecate purple_request_field_list_add() in favor of the new
Richard Laager <rlaager@pidgin.im>
parents: 24892
diff changeset
873 * filing in blank items. So, we use
54719498c900 Deprecate purple_request_field_list_add() in favor of the new
Richard Laager <rlaager@pidgin.im>
parents: 24892
diff changeset
874 * g_list_prepend() because it's faster. */
54719498c900 Deprecate purple_request_field_list_add() in favor of the new
Richard Laager <rlaager@pidgin.im>
parents: 24892
diff changeset
875 field->u.list.icons = g_list_prepend(field->u.list.icons, NULL);
54719498c900 Deprecate purple_request_field_list_add() in favor of the new
Richard Laager <rlaager@pidgin.im>
parents: 24892
diff changeset
876 }
54719498c900 Deprecate purple_request_field_list_add() in favor of the new
Richard Laager <rlaager@pidgin.im>
parents: 24892
diff changeset
877 }
54719498c900 Deprecate purple_request_field_list_add() in favor of the new
Richard Laager <rlaager@pidgin.im>
parents: 24892
diff changeset
878 field->u.list.icons = g_list_append(field->u.list.icons, g_strdup(icon_path));
54719498c900 Deprecate purple_request_field_list_add() in favor of the new
Richard Laager <rlaager@pidgin.im>
parents: 24892
diff changeset
879 }
54719498c900 Deprecate purple_request_field_list_add() in favor of the new
Richard Laager <rlaager@pidgin.im>
parents: 24892
diff changeset
880 else if (field->u.list.icons)
54719498c900 Deprecate purple_request_field_list_add() in favor of the new
Richard Laager <rlaager@pidgin.im>
parents: 24892
diff changeset
881 {
54719498c900 Deprecate purple_request_field_list_add() in favor of the new
Richard Laager <rlaager@pidgin.im>
parents: 24892
diff changeset
882 /* Keep this even with the items list. */
54719498c900 Deprecate purple_request_field_list_add() in favor of the new
Richard Laager <rlaager@pidgin.im>
parents: 24892
diff changeset
883 field->u.list.icons = g_list_append(field->u.list.icons, NULL);
54719498c900 Deprecate purple_request_field_list_add() in favor of the new
Richard Laager <rlaager@pidgin.im>
parents: 24892
diff changeset
884 }
54719498c900 Deprecate purple_request_field_list_add() in favor of the new
Richard Laager <rlaager@pidgin.im>
parents: 24892
diff changeset
885
24625
4082cd694acb This patch comes from the combined work of contributors minstrel, NightFox,
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21990
diff changeset
886 field->u.list.items = g_list_append(field->u.list.items, g_strdup(item));
4082cd694acb This patch comes from the combined work of contributors minstrel, NightFox,
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21990
diff changeset
887 g_hash_table_insert(field->u.list.item_data, g_strdup(item), data);
4082cd694acb This patch comes from the combined work of contributors minstrel, NightFox,
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21990
diff changeset
888 }
4082cd694acb This patch comes from the combined work of contributors minstrel, NightFox,
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21990
diff changeset
889
4082cd694acb This patch comes from the combined work of contributors minstrel, NightFox,
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21990
diff changeset
890 void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
891 purple_request_field_list_add_selected(PurpleRequestField *field, const char *item)
7902
6c04e5d38897 [gaim-migrate @ 8562]
Christian Hammond <chipx86@chipx86.com>
parents: 7901
diff changeset
892 {
6c04e5d38897 [gaim-migrate @ 8562]
Christian Hammond <chipx86@chipx86.com>
parents: 7901
diff changeset
893 g_return_if_fail(field != NULL);
6c04e5d38897 [gaim-migrate @ 8562]
Christian Hammond <chipx86@chipx86.com>
parents: 7901
diff changeset
894 g_return_if_fail(item != NULL);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
895 g_return_if_fail(field->type == PURPLE_REQUEST_FIELD_LIST);
7902
6c04e5d38897 [gaim-migrate @ 8562]
Christian Hammond <chipx86@chipx86.com>
parents: 7901
diff changeset
896
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
897 if (!purple_request_field_list_get_multi_select(field) &&
7964
10d58eb8a16a [gaim-migrate @ 8641]
Christian Hammond <chipx86@chipx86.com>
parents: 7962
diff changeset
898 field->u.list.selected != NULL)
10d58eb8a16a [gaim-migrate @ 8641]
Christian Hammond <chipx86@chipx86.com>
parents: 7962
diff changeset
899 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
900 purple_debug_warning("request",
7964
10d58eb8a16a [gaim-migrate @ 8641]
Christian Hammond <chipx86@chipx86.com>
parents: 7962
diff changeset
901 "More than one item added to non-multi-select "
10d58eb8a16a [gaim-migrate @ 8641]
Christian Hammond <chipx86@chipx86.com>
parents: 7962
diff changeset
902 "field %s\n",
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
903 purple_request_field_get_id(field));
7964
10d58eb8a16a [gaim-migrate @ 8641]
Christian Hammond <chipx86@chipx86.com>
parents: 7962
diff changeset
904 return;
10d58eb8a16a [gaim-migrate @ 8641]
Christian Hammond <chipx86@chipx86.com>
parents: 7962
diff changeset
905 }
10d58eb8a16a [gaim-migrate @ 8641]
Christian Hammond <chipx86@chipx86.com>
parents: 7962
diff changeset
906
7909
f2b88b6b97a7 [gaim-migrate @ 8569]
Christian Hammond <chipx86@chipx86.com>
parents: 7905
diff changeset
907 field->u.list.selected = g_list_append(field->u.list.selected,
f2b88b6b97a7 [gaim-migrate @ 8569]
Christian Hammond <chipx86@chipx86.com>
parents: 7905
diff changeset
908 g_strdup(item));
7964
10d58eb8a16a [gaim-migrate @ 8641]
Christian Hammond <chipx86@chipx86.com>
parents: 7962
diff changeset
909
10d58eb8a16a [gaim-migrate @ 8641]
Christian Hammond <chipx86@chipx86.com>
parents: 7962
diff changeset
910 g_hash_table_insert(field->u.list.selected_table, g_strdup(item), NULL);
7902
6c04e5d38897 [gaim-migrate @ 8562]
Christian Hammond <chipx86@chipx86.com>
parents: 7901
diff changeset
911 }
6c04e5d38897 [gaim-migrate @ 8562]
Christian Hammond <chipx86@chipx86.com>
parents: 7901
diff changeset
912
6c04e5d38897 [gaim-migrate @ 8562]
Christian Hammond <chipx86@chipx86.com>
parents: 7901
diff changeset
913 void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
914 purple_request_field_list_clear_selected(PurpleRequestField *field)
7902
6c04e5d38897 [gaim-migrate @ 8562]
Christian Hammond <chipx86@chipx86.com>
parents: 7901
diff changeset
915 {
6c04e5d38897 [gaim-migrate @ 8562]
Christian Hammond <chipx86@chipx86.com>
parents: 7901
diff changeset
916 g_return_if_fail(field != NULL);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
917 g_return_if_fail(field->type == PURPLE_REQUEST_FIELD_LIST);
7902
6c04e5d38897 [gaim-migrate @ 8562]
Christian Hammond <chipx86@chipx86.com>
parents: 7901
diff changeset
918
7962
92ef549901f6 [gaim-migrate @ 8639]
Christian Hammond <chipx86@chipx86.com>
parents: 7909
diff changeset
919 if (field->u.list.selected != NULL)
7909
f2b88b6b97a7 [gaim-migrate @ 8569]
Christian Hammond <chipx86@chipx86.com>
parents: 7905
diff changeset
920 {
7962
92ef549901f6 [gaim-migrate @ 8639]
Christian Hammond <chipx86@chipx86.com>
parents: 7909
diff changeset
921 g_list_foreach(field->u.list.selected, (GFunc)g_free, NULL);
92ef549901f6 [gaim-migrate @ 8639]
Christian Hammond <chipx86@chipx86.com>
parents: 7909
diff changeset
922 g_list_free(field->u.list.selected);
92ef549901f6 [gaim-migrate @ 8639]
Christian Hammond <chipx86@chipx86.com>
parents: 7909
diff changeset
923 field->u.list.selected = NULL;
7909
f2b88b6b97a7 [gaim-migrate @ 8569]
Christian Hammond <chipx86@chipx86.com>
parents: 7905
diff changeset
924 }
7964
10d58eb8a16a [gaim-migrate @ 8641]
Christian Hammond <chipx86@chipx86.com>
parents: 7962
diff changeset
925
10d58eb8a16a [gaim-migrate @ 8641]
Christian Hammond <chipx86@chipx86.com>
parents: 7962
diff changeset
926 g_hash_table_destroy(field->u.list.selected_table);
10d58eb8a16a [gaim-migrate @ 8641]
Christian Hammond <chipx86@chipx86.com>
parents: 7962
diff changeset
927
10d58eb8a16a [gaim-migrate @ 8641]
Christian Hammond <chipx86@chipx86.com>
parents: 7962
diff changeset
928 field->u.list.selected_table =
10d58eb8a16a [gaim-migrate @ 8641]
Christian Hammond <chipx86@chipx86.com>
parents: 7962
diff changeset
929 g_hash_table_new_full(g_str_hash, g_str_equal, g_free, NULL);
7902
6c04e5d38897 [gaim-migrate @ 8562]
Christian Hammond <chipx86@chipx86.com>
parents: 7901
diff changeset
930 }
6c04e5d38897 [gaim-migrate @ 8562]
Christian Hammond <chipx86@chipx86.com>
parents: 7901
diff changeset
931
6c04e5d38897 [gaim-migrate @ 8562]
Christian Hammond <chipx86@chipx86.com>
parents: 7901
diff changeset
932 void
18190
bcf28ef7e8ff Re-fix the DBus list handling code by killing const GList* / const GSList*
Richard Laager <rlaager@pidgin.im>
parents: 16490
diff changeset
933 purple_request_field_list_set_selected(PurpleRequestField *field, GList *items)
7901
f09d051b649d [gaim-migrate @ 8561]
Christian Hammond <chipx86@chipx86.com>
parents: 7899
diff changeset
934 {
18190
bcf28ef7e8ff Re-fix the DBus list handling code by killing const GList* / const GSList*
Richard Laager <rlaager@pidgin.im>
parents: 16490
diff changeset
935 GList *l;
7964
10d58eb8a16a [gaim-migrate @ 8641]
Christian Hammond <chipx86@chipx86.com>
parents: 7962
diff changeset
936
7901
f09d051b649d [gaim-migrate @ 8561]
Christian Hammond <chipx86@chipx86.com>
parents: 7899
diff changeset
937 g_return_if_fail(field != NULL);
f09d051b649d [gaim-migrate @ 8561]
Christian Hammond <chipx86@chipx86.com>
parents: 7899
diff changeset
938 g_return_if_fail(items != NULL);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
939 g_return_if_fail(field->type == PURPLE_REQUEST_FIELD_LIST);
7901
f09d051b649d [gaim-migrate @ 8561]
Christian Hammond <chipx86@chipx86.com>
parents: 7899
diff changeset
940
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
941 purple_request_field_list_clear_selected(field);
7901
f09d051b649d [gaim-migrate @ 8561]
Christian Hammond <chipx86@chipx86.com>
parents: 7899
diff changeset
942
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
943 if (!purple_request_field_list_get_multi_select(field) &&
24816
bd870d9ff0ab The other day while struct hiding, I noticed a for loop that was checking
Richard Laager <rlaager@pidgin.im>
parents: 21990
diff changeset
944 items && items->next)
7964
10d58eb8a16a [gaim-migrate @ 8641]
Christian Hammond <chipx86@chipx86.com>
parents: 7962
diff changeset
945 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
946 purple_debug_warning("request",
7964
10d58eb8a16a [gaim-migrate @ 8641]
Christian Hammond <chipx86@chipx86.com>
parents: 7962
diff changeset
947 "More than one item added to non-multi-select "
10d58eb8a16a [gaim-migrate @ 8641]
Christian Hammond <chipx86@chipx86.com>
parents: 7962
diff changeset
948 "field %s\n",
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
949 purple_request_field_get_id(field));
7964
10d58eb8a16a [gaim-migrate @ 8641]
Christian Hammond <chipx86@chipx86.com>
parents: 7962
diff changeset
950 return;
10d58eb8a16a [gaim-migrate @ 8641]
Christian Hammond <chipx86@chipx86.com>
parents: 7962
diff changeset
951 }
10d58eb8a16a [gaim-migrate @ 8641]
Christian Hammond <chipx86@chipx86.com>
parents: 7962
diff changeset
952
14128
3f6654cc8746 [gaim-migrate @ 16687]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14097
diff changeset
953 for (l = items; l != NULL; l = l->next)
7964
10d58eb8a16a [gaim-migrate @ 8641]
Christian Hammond <chipx86@chipx86.com>
parents: 7962
diff changeset
954 {
14128
3f6654cc8746 [gaim-migrate @ 16687]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14097
diff changeset
955 field->u.list.selected = g_list_append(field->u.list.selected,
3f6654cc8746 [gaim-migrate @ 16687]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14097
diff changeset
956 g_strdup(l->data));
7964
10d58eb8a16a [gaim-migrate @ 8641]
Christian Hammond <chipx86@chipx86.com>
parents: 7962
diff changeset
957 g_hash_table_insert(field->u.list.selected_table,
10d58eb8a16a [gaim-migrate @ 8641]
Christian Hammond <chipx86@chipx86.com>
parents: 7962
diff changeset
958 g_strdup((char *)l->data), NULL);
10d58eb8a16a [gaim-migrate @ 8641]
Christian Hammond <chipx86@chipx86.com>
parents: 7962
diff changeset
959 }
10d58eb8a16a [gaim-migrate @ 8641]
Christian Hammond <chipx86@chipx86.com>
parents: 7962
diff changeset
960 }
10d58eb8a16a [gaim-migrate @ 8641]
Christian Hammond <chipx86@chipx86.com>
parents: 7962
diff changeset
961
10d58eb8a16a [gaim-migrate @ 8641]
Christian Hammond <chipx86@chipx86.com>
parents: 7962
diff changeset
962 gboolean
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
963 purple_request_field_list_is_selected(const PurpleRequestField *field,
7964
10d58eb8a16a [gaim-migrate @ 8641]
Christian Hammond <chipx86@chipx86.com>
parents: 7962
diff changeset
964 const char *item)
10d58eb8a16a [gaim-migrate @ 8641]
Christian Hammond <chipx86@chipx86.com>
parents: 7962
diff changeset
965 {
10d58eb8a16a [gaim-migrate @ 8641]
Christian Hammond <chipx86@chipx86.com>
parents: 7962
diff changeset
966 g_return_val_if_fail(field != NULL, FALSE);
10d58eb8a16a [gaim-migrate @ 8641]
Christian Hammond <chipx86@chipx86.com>
parents: 7962
diff changeset
967 g_return_val_if_fail(item != NULL, FALSE);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
968 g_return_val_if_fail(field->type == PURPLE_REQUEST_FIELD_LIST, FALSE);
7964
10d58eb8a16a [gaim-migrate @ 8641]
Christian Hammond <chipx86@chipx86.com>
parents: 7962
diff changeset
969
10d58eb8a16a [gaim-migrate @ 8641]
Christian Hammond <chipx86@chipx86.com>
parents: 7962
diff changeset
970 return g_hash_table_lookup_extended(field->u.list.selected_table,
10d58eb8a16a [gaim-migrate @ 8641]
Christian Hammond <chipx86@chipx86.com>
parents: 7962
diff changeset
971 item, NULL, NULL);
7901
f09d051b649d [gaim-migrate @ 8561]
Christian Hammond <chipx86@chipx86.com>
parents: 7899
diff changeset
972 }
f09d051b649d [gaim-migrate @ 8561]
Christian Hammond <chipx86@chipx86.com>
parents: 7899
diff changeset
973
18190
bcf28ef7e8ff Re-fix the DBus list handling code by killing const GList* / const GSList*
Richard Laager <rlaager@pidgin.im>
parents: 16490
diff changeset
974 GList *
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
975 purple_request_field_list_get_selected(const PurpleRequestField *field)
7898
83687727b4a3 [gaim-migrate @ 8558]
Christian Hammond <chipx86@chipx86.com>
parents: 7843
diff changeset
976 {
83687727b4a3 [gaim-migrate @ 8558]
Christian Hammond <chipx86@chipx86.com>
parents: 7843
diff changeset
977 g_return_val_if_fail(field != NULL, NULL);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
978 g_return_val_if_fail(field->type == PURPLE_REQUEST_FIELD_LIST, NULL);
7898
83687727b4a3 [gaim-migrate @ 8558]
Christian Hammond <chipx86@chipx86.com>
parents: 7843
diff changeset
979
83687727b4a3 [gaim-migrate @ 8558]
Christian Hammond <chipx86@chipx86.com>
parents: 7843
diff changeset
980 return field->u.list.selected;
83687727b4a3 [gaim-migrate @ 8558]
Christian Hammond <chipx86@chipx86.com>
parents: 7843
diff changeset
981 }
83687727b4a3 [gaim-migrate @ 8558]
Christian Hammond <chipx86@chipx86.com>
parents: 7843
diff changeset
982
18190
bcf28ef7e8ff Re-fix the DBus list handling code by killing const GList* / const GSList*
Richard Laager <rlaager@pidgin.im>
parents: 16490
diff changeset
983 GList *
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
984 purple_request_field_list_get_items(const PurpleRequestField *field)
7898
83687727b4a3 [gaim-migrate @ 8558]
Christian Hammond <chipx86@chipx86.com>
parents: 7843
diff changeset
985 {
83687727b4a3 [gaim-migrate @ 8558]
Christian Hammond <chipx86@chipx86.com>
parents: 7843
diff changeset
986 g_return_val_if_fail(field != NULL, NULL);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
987 g_return_val_if_fail(field->type == PURPLE_REQUEST_FIELD_LIST, NULL);
7898
83687727b4a3 [gaim-migrate @ 8558]
Christian Hammond <chipx86@chipx86.com>
parents: 7843
diff changeset
988
83687727b4a3 [gaim-migrate @ 8558]
Christian Hammond <chipx86@chipx86.com>
parents: 7843
diff changeset
989 return field->u.list.items;
83687727b4a3 [gaim-migrate @ 8558]
Christian Hammond <chipx86@chipx86.com>
parents: 7843
diff changeset
990 }
83687727b4a3 [gaim-migrate @ 8558]
Christian Hammond <chipx86@chipx86.com>
parents: 7843
diff changeset
991
24625
4082cd694acb This patch comes from the combined work of contributors minstrel, NightFox,
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21990
diff changeset
992 GList *
4082cd694acb This patch comes from the combined work of contributors minstrel, NightFox,
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21990
diff changeset
993 purple_request_field_list_get_icons(const PurpleRequestField *field)
4082cd694acb This patch comes from the combined work of contributors minstrel, NightFox,
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21990
diff changeset
994 {
4082cd694acb This patch comes from the combined work of contributors minstrel, NightFox,
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21990
diff changeset
995 g_return_val_if_fail(field != NULL, NULL);
4082cd694acb This patch comes from the combined work of contributors minstrel, NightFox,
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21990
diff changeset
996 g_return_val_if_fail(field->type == PURPLE_REQUEST_FIELD_LIST, NULL);
4082cd694acb This patch comes from the combined work of contributors minstrel, NightFox,
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21990
diff changeset
997
4082cd694acb This patch comes from the combined work of contributors minstrel, NightFox,
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21990
diff changeset
998 return field->u.list.icons;
4082cd694acb This patch comes from the combined work of contributors minstrel, NightFox,
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21990
diff changeset
999 }
4082cd694acb This patch comes from the combined work of contributors minstrel, NightFox,
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21990
diff changeset
1000
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1001 PurpleRequestField *
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1002 purple_request_field_label_new(const char *id, const char *text)
7905
03db29949e5d [gaim-migrate @ 8565]
Christian Hammond <chipx86@chipx86.com>
parents: 7904
diff changeset
1003 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1004 PurpleRequestField *field;
7905
03db29949e5d [gaim-migrate @ 8565]
Christian Hammond <chipx86@chipx86.com>
parents: 7904
diff changeset
1005
03db29949e5d [gaim-migrate @ 8565]
Christian Hammond <chipx86@chipx86.com>
parents: 7904
diff changeset
1006 g_return_val_if_fail(id != NULL, NULL);
03db29949e5d [gaim-migrate @ 8565]
Christian Hammond <chipx86@chipx86.com>
parents: 7904
diff changeset
1007 g_return_val_if_fail(text != NULL, NULL);
03db29949e5d [gaim-migrate @ 8565]
Christian Hammond <chipx86@chipx86.com>
parents: 7904
diff changeset
1008
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1009 field = purple_request_field_new(id, text, PURPLE_REQUEST_FIELD_LABEL);
7905
03db29949e5d [gaim-migrate @ 8565]
Christian Hammond <chipx86@chipx86.com>
parents: 7904
diff changeset
1010
03db29949e5d [gaim-migrate @ 8565]
Christian Hammond <chipx86@chipx86.com>
parents: 7904
diff changeset
1011 return field;
03db29949e5d [gaim-migrate @ 8565]
Christian Hammond <chipx86@chipx86.com>
parents: 7904
diff changeset
1012 }
03db29949e5d [gaim-migrate @ 8565]
Christian Hammond <chipx86@chipx86.com>
parents: 7904
diff changeset
1013
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1014 PurpleRequestField *
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1015 purple_request_field_image_new(const char *id, const char *text, const char *buf, gsize size)
11357
d96a9c46f200 [gaim-migrate @ 13579]
Bartosz Oler <bartosz@pidgin.im>
parents: 10229
diff changeset
1016 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1017 PurpleRequestField *field;
11357
d96a9c46f200 [gaim-migrate @ 13579]
Bartosz Oler <bartosz@pidgin.im>
parents: 10229
diff changeset
1018
d96a9c46f200 [gaim-migrate @ 13579]
Bartosz Oler <bartosz@pidgin.im>
parents: 10229
diff changeset
1019 g_return_val_if_fail(id != NULL, NULL);
d96a9c46f200 [gaim-migrate @ 13579]
Bartosz Oler <bartosz@pidgin.im>
parents: 10229
diff changeset
1020 g_return_val_if_fail(text != NULL, NULL);
d96a9c46f200 [gaim-migrate @ 13579]
Bartosz Oler <bartosz@pidgin.im>
parents: 10229
diff changeset
1021 g_return_val_if_fail(buf != NULL, NULL);
d96a9c46f200 [gaim-migrate @ 13579]
Bartosz Oler <bartosz@pidgin.im>
parents: 10229
diff changeset
1022 g_return_val_if_fail(size > 0, NULL);
d96a9c46f200 [gaim-migrate @ 13579]
Bartosz Oler <bartosz@pidgin.im>
parents: 10229
diff changeset
1023
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1024 field = purple_request_field_new(id, text, PURPLE_REQUEST_FIELD_IMAGE);
11357
d96a9c46f200 [gaim-migrate @ 13579]
Bartosz Oler <bartosz@pidgin.im>
parents: 10229
diff changeset
1025
d96a9c46f200 [gaim-migrate @ 13579]
Bartosz Oler <bartosz@pidgin.im>
parents: 10229
diff changeset
1026 field->u.image.buffer = g_memdup(buf, size);
d96a9c46f200 [gaim-migrate @ 13579]
Bartosz Oler <bartosz@pidgin.im>
parents: 10229
diff changeset
1027 field->u.image.size = size;
d96a9c46f200 [gaim-migrate @ 13579]
Bartosz Oler <bartosz@pidgin.im>
parents: 10229
diff changeset
1028 field->u.image.scale_x = 1;
d96a9c46f200 [gaim-migrate @ 13579]
Bartosz Oler <bartosz@pidgin.im>
parents: 10229
diff changeset
1029 field->u.image.scale_y = 1;
d96a9c46f200 [gaim-migrate @ 13579]
Bartosz Oler <bartosz@pidgin.im>
parents: 10229
diff changeset
1030
d96a9c46f200 [gaim-migrate @ 13579]
Bartosz Oler <bartosz@pidgin.im>
parents: 10229
diff changeset
1031 return field;
d96a9c46f200 [gaim-migrate @ 13579]
Bartosz Oler <bartosz@pidgin.im>
parents: 10229
diff changeset
1032 }
d96a9c46f200 [gaim-migrate @ 13579]
Bartosz Oler <bartosz@pidgin.im>
parents: 10229
diff changeset
1033
d96a9c46f200 [gaim-migrate @ 13579]
Bartosz Oler <bartosz@pidgin.im>
parents: 10229
diff changeset
1034 void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1035 purple_request_field_image_set_scale(PurpleRequestField *field, unsigned int x, unsigned int y)
11357
d96a9c46f200 [gaim-migrate @ 13579]
Bartosz Oler <bartosz@pidgin.im>
parents: 10229
diff changeset
1036 {
d96a9c46f200 [gaim-migrate @ 13579]
Bartosz Oler <bartosz@pidgin.im>
parents: 10229
diff changeset
1037 g_return_if_fail(field != NULL);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1038 g_return_if_fail(field->type == PURPLE_REQUEST_FIELD_IMAGE);
11357
d96a9c46f200 [gaim-migrate @ 13579]
Bartosz Oler <bartosz@pidgin.im>
parents: 10229
diff changeset
1039
d96a9c46f200 [gaim-migrate @ 13579]
Bartosz Oler <bartosz@pidgin.im>
parents: 10229
diff changeset
1040 field->u.image.scale_x = x;
d96a9c46f200 [gaim-migrate @ 13579]
Bartosz Oler <bartosz@pidgin.im>
parents: 10229
diff changeset
1041 field->u.image.scale_y = y;
d96a9c46f200 [gaim-migrate @ 13579]
Bartosz Oler <bartosz@pidgin.im>
parents: 10229
diff changeset
1042 }
d96a9c46f200 [gaim-migrate @ 13579]
Bartosz Oler <bartosz@pidgin.im>
parents: 10229
diff changeset
1043
d96a9c46f200 [gaim-migrate @ 13579]
Bartosz Oler <bartosz@pidgin.im>
parents: 10229
diff changeset
1044 const char *
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1045 purple_request_field_image_get_buffer(PurpleRequestField *field)
11357
d96a9c46f200 [gaim-migrate @ 13579]
Bartosz Oler <bartosz@pidgin.im>
parents: 10229
diff changeset
1046 {
d96a9c46f200 [gaim-migrate @ 13579]
Bartosz Oler <bartosz@pidgin.im>
parents: 10229
diff changeset
1047 g_return_val_if_fail(field != NULL, NULL);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1048 g_return_val_if_fail(field->type == PURPLE_REQUEST_FIELD_IMAGE, NULL);
11357
d96a9c46f200 [gaim-migrate @ 13579]
Bartosz Oler <bartosz@pidgin.im>
parents: 10229
diff changeset
1049
d96a9c46f200 [gaim-migrate @ 13579]
Bartosz Oler <bartosz@pidgin.im>
parents: 10229
diff changeset
1050 return field->u.image.buffer;
d96a9c46f200 [gaim-migrate @ 13579]
Bartosz Oler <bartosz@pidgin.im>
parents: 10229
diff changeset
1051 }
d96a9c46f200 [gaim-migrate @ 13579]
Bartosz Oler <bartosz@pidgin.im>
parents: 10229
diff changeset
1052
d96a9c46f200 [gaim-migrate @ 13579]
Bartosz Oler <bartosz@pidgin.im>
parents: 10229
diff changeset
1053 gsize
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1054 purple_request_field_image_get_size(PurpleRequestField *field)
11357
d96a9c46f200 [gaim-migrate @ 13579]
Bartosz Oler <bartosz@pidgin.im>
parents: 10229
diff changeset
1055 {
d96a9c46f200 [gaim-migrate @ 13579]
Bartosz Oler <bartosz@pidgin.im>
parents: 10229
diff changeset
1056 g_return_val_if_fail(field != NULL, 0);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1057 g_return_val_if_fail(field->type == PURPLE_REQUEST_FIELD_IMAGE, 0);
11357
d96a9c46f200 [gaim-migrate @ 13579]
Bartosz Oler <bartosz@pidgin.im>
parents: 10229
diff changeset
1058
d96a9c46f200 [gaim-migrate @ 13579]
Bartosz Oler <bartosz@pidgin.im>
parents: 10229
diff changeset
1059 return field->u.image.size;
d96a9c46f200 [gaim-migrate @ 13579]
Bartosz Oler <bartosz@pidgin.im>
parents: 10229
diff changeset
1060 }
d96a9c46f200 [gaim-migrate @ 13579]
Bartosz Oler <bartosz@pidgin.im>
parents: 10229
diff changeset
1061
d96a9c46f200 [gaim-migrate @ 13579]
Bartosz Oler <bartosz@pidgin.im>
parents: 10229
diff changeset
1062 unsigned int
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1063 purple_request_field_image_get_scale_x(PurpleRequestField *field)
11357
d96a9c46f200 [gaim-migrate @ 13579]
Bartosz Oler <bartosz@pidgin.im>
parents: 10229
diff changeset
1064 {
d96a9c46f200 [gaim-migrate @ 13579]
Bartosz Oler <bartosz@pidgin.im>
parents: 10229
diff changeset
1065 g_return_val_if_fail(field != NULL, 0);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1066 g_return_val_if_fail(field->type == PURPLE_REQUEST_FIELD_IMAGE, 0);
11357
d96a9c46f200 [gaim-migrate @ 13579]
Bartosz Oler <bartosz@pidgin.im>
parents: 10229
diff changeset
1067
d96a9c46f200 [gaim-migrate @ 13579]
Bartosz Oler <bartosz@pidgin.im>
parents: 10229
diff changeset
1068 return field->u.image.scale_x;
d96a9c46f200 [gaim-migrate @ 13579]
Bartosz Oler <bartosz@pidgin.im>
parents: 10229
diff changeset
1069 }
d96a9c46f200 [gaim-migrate @ 13579]
Bartosz Oler <bartosz@pidgin.im>
parents: 10229
diff changeset
1070
d96a9c46f200 [gaim-migrate @ 13579]
Bartosz Oler <bartosz@pidgin.im>
parents: 10229
diff changeset
1071 unsigned int
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1072 purple_request_field_image_get_scale_y(PurpleRequestField *field)
11357
d96a9c46f200 [gaim-migrate @ 13579]
Bartosz Oler <bartosz@pidgin.im>
parents: 10229
diff changeset
1073 {
d96a9c46f200 [gaim-migrate @ 13579]
Bartosz Oler <bartosz@pidgin.im>
parents: 10229
diff changeset
1074 g_return_val_if_fail(field != NULL, 0);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1075 g_return_val_if_fail(field->type == PURPLE_REQUEST_FIELD_IMAGE, 0);
11357
d96a9c46f200 [gaim-migrate @ 13579]
Bartosz Oler <bartosz@pidgin.im>
parents: 10229
diff changeset
1076
d96a9c46f200 [gaim-migrate @ 13579]
Bartosz Oler <bartosz@pidgin.im>
parents: 10229
diff changeset
1077 return field->u.image.scale_y;
d96a9c46f200 [gaim-migrate @ 13579]
Bartosz Oler <bartosz@pidgin.im>
parents: 10229
diff changeset
1078 }
8286
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1079
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1080 PurpleRequestField *
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1081 purple_request_field_account_new(const char *id, const char *text,
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1082 PurpleAccount *account)
8286
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1083 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1084 PurpleRequestField *field;
8286
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1085
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1086 g_return_val_if_fail(id != NULL, NULL);
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1087 g_return_val_if_fail(text != NULL, NULL);
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1088
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1089 field = purple_request_field_new(id, text, PURPLE_REQUEST_FIELD_ACCOUNT);
8286
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1090
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1091 if (account == NULL && purple_connections_get_all() != NULL)
8286
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1092 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1093 account = purple_connection_get_account(
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1094 (PurpleConnection *)purple_connections_get_all()->data);
8286
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1095 }
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1096
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1097 purple_request_field_account_set_default_value(field, account);
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1098 purple_request_field_account_set_value(field, account);
8286
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1099
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1100 return field;
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1101 }
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1102
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1103 void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1104 purple_request_field_account_set_default_value(PurpleRequestField *field,
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1105 PurpleAccount *default_value)
8286
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1106 {
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1107 g_return_if_fail(field != NULL);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1108 g_return_if_fail(field->type == PURPLE_REQUEST_FIELD_ACCOUNT);
8286
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1109
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1110 field->u.account.default_account = default_value;
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1111 }
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1112
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1113 void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1114 purple_request_field_account_set_value(PurpleRequestField *field,
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1115 PurpleAccount *value)
8286
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1116 {
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1117 g_return_if_fail(field != NULL);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1118 g_return_if_fail(field->type == PURPLE_REQUEST_FIELD_ACCOUNT);
8286
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1119
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1120 field->u.account.account = value;
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1121 }
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1122
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1123 void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1124 purple_request_field_account_set_show_all(PurpleRequestField *field,
8286
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1125 gboolean show_all)
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1126 {
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1127 g_return_if_fail(field != NULL);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1128 g_return_if_fail(field->type == PURPLE_REQUEST_FIELD_ACCOUNT);
8286
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1129
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1130 if (field->u.account.show_all == show_all)
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1131 return;
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1132
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1133 field->u.account.show_all = show_all;
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1134
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1135 if (!show_all)
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1136 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1137 if (purple_account_is_connected(field->u.account.default_account))
8286
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1138 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1139 purple_request_field_account_set_default_value(field,
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1140 (PurpleAccount *)purple_connections_get_all()->data);
8286
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1141 }
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1142
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1143 if (purple_account_is_connected(field->u.account.account))
8286
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1144 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1145 purple_request_field_account_set_value(field,
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1146 (PurpleAccount *)purple_connections_get_all()->data);
8286
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1147 }
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1148 }
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1149 }
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1150
8289
234429bac6b5 [gaim-migrate @ 9013]
Christian Hammond <chipx86@chipx86.com>
parents: 8286
diff changeset
1151 void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1152 purple_request_field_account_set_filter(PurpleRequestField *field,
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1153 PurpleFilterAccountFunc filter_func)
8289
234429bac6b5 [gaim-migrate @ 9013]
Christian Hammond <chipx86@chipx86.com>
parents: 8286
diff changeset
1154 {
234429bac6b5 [gaim-migrate @ 9013]
Christian Hammond <chipx86@chipx86.com>
parents: 8286
diff changeset
1155 g_return_if_fail(field != NULL);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1156 g_return_if_fail(field->type == PURPLE_REQUEST_FIELD_ACCOUNT);
8289
234429bac6b5 [gaim-migrate @ 9013]
Christian Hammond <chipx86@chipx86.com>
parents: 8286
diff changeset
1157
234429bac6b5 [gaim-migrate @ 9013]
Christian Hammond <chipx86@chipx86.com>
parents: 8286
diff changeset
1158 field->u.account.filter_func = filter_func;
234429bac6b5 [gaim-migrate @ 9013]
Christian Hammond <chipx86@chipx86.com>
parents: 8286
diff changeset
1159 }
234429bac6b5 [gaim-migrate @ 9013]
Christian Hammond <chipx86@chipx86.com>
parents: 8286
diff changeset
1160
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1161 PurpleAccount *
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1162 purple_request_field_account_get_default_value(const PurpleRequestField *field)
8286
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1163 {
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1164 g_return_val_if_fail(field != NULL, NULL);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1165 g_return_val_if_fail(field->type == PURPLE_REQUEST_FIELD_ACCOUNT, NULL);
8286
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1166
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1167 return field->u.account.default_account;
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1168 }
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1169
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1170 PurpleAccount *
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1171 purple_request_field_account_get_value(const PurpleRequestField *field)
8286
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1172 {
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1173 g_return_val_if_fail(field != NULL, NULL);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1174 g_return_val_if_fail(field->type == PURPLE_REQUEST_FIELD_ACCOUNT, NULL);
8286
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1175
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1176 return field->u.account.account;
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1177 }
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1178
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1179 gboolean
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1180 purple_request_field_account_get_show_all(const PurpleRequestField *field)
8286
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1181 {
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1182 g_return_val_if_fail(field != NULL, FALSE);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1183 g_return_val_if_fail(field->type == PURPLE_REQUEST_FIELD_ACCOUNT, FALSE);
8286
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1184
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1185 return field->u.account.show_all;
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1186 }
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1187
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1188 PurpleFilterAccountFunc
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1189 purple_request_field_account_get_filter(const PurpleRequestField *field)
8289
234429bac6b5 [gaim-migrate @ 9013]
Christian Hammond <chipx86@chipx86.com>
parents: 8286
diff changeset
1190 {
234429bac6b5 [gaim-migrate @ 9013]
Christian Hammond <chipx86@chipx86.com>
parents: 8286
diff changeset
1191 g_return_val_if_fail(field != NULL, FALSE);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1192 g_return_val_if_fail(field->type == PURPLE_REQUEST_FIELD_ACCOUNT, FALSE);
8289
234429bac6b5 [gaim-migrate @ 9013]
Christian Hammond <chipx86@chipx86.com>
parents: 8286
diff changeset
1193
234429bac6b5 [gaim-migrate @ 9013]
Christian Hammond <chipx86@chipx86.com>
parents: 8286
diff changeset
1194 return field->u.account.filter_func;
234429bac6b5 [gaim-migrate @ 9013]
Christian Hammond <chipx86@chipx86.com>
parents: 8286
diff changeset
1195 }
234429bac6b5 [gaim-migrate @ 9013]
Christian Hammond <chipx86@chipx86.com>
parents: 8286
diff changeset
1196
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
1197 /* -- */
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
1198
5477
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1199 void *
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1200 purple_request_input(void *handle, const char *title, const char *primary,
5477
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1201 const char *secondary, const char *default_value,
8697
c5e51aef2026 [gaim-migrate @ 9450]
Jon Oberheide
parents: 8332
diff changeset
1202 gboolean multiline, gboolean masked, gchar *hint,
5477
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1203 const char *ok_text, GCallback ok_cb,
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1204 const char *cancel_text, GCallback cancel_cb,
16490
68c22924d66b Added account, who, and conversation parameters to the request API calls, and updated all code to match. I can't compile the Perl module, so I'd appreciate it if someone who knows it would verify that this doesn't break Perl.
Evan Schoenberg <evands@pidgin.im>
parents: 15884
diff changeset
1205 PurpleAccount *account, const char *who, PurpleConversation *conv,
20685
039aef89faf6 Updated hinting to be less invasive
Gabriel Schulhof <nix@go-nix.ca>
parents: 20684
diff changeset
1206 void *user_data)
039aef89faf6 Updated hinting to be less invasive
Gabriel Schulhof <nix@go-nix.ca>
parents: 20684
diff changeset
1207 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1208 PurpleRequestUiOps *ops;
5477
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1209
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1210 g_return_val_if_fail(ok_text != NULL, NULL);
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1211 g_return_val_if_fail(ok_cb != NULL, NULL);
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1212
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1213 ops = purple_request_get_ui_ops();
5477
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1214
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1215 if (ops != NULL && ops->request_input != NULL) {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1216 PurpleRequestInfo *info;
5477
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1217
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1218 info = g_new0(PurpleRequestInfo, 1);
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1219 info->type = PURPLE_REQUEST_INPUT;
5477
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1220 info->handle = handle;
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1221 info->ui_handle = ops->request_input(title, primary, secondary,
6035
b245be9cbe3b [gaim-migrate @ 6485]
Christian Hammond <chipx86@chipx86.com>
parents: 5810
diff changeset
1222 default_value,
8697
c5e51aef2026 [gaim-migrate @ 9450]
Jon Oberheide
parents: 8332
diff changeset
1223 multiline, masked, hint,
5482
6831f83bfae5 [gaim-migrate @ 5878]
Christian Hammond <chipx86@chipx86.com>
parents: 5477
diff changeset
1224 ok_text, ok_cb,
5477
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1225 cancel_text, cancel_cb,
16490
68c22924d66b Added account, who, and conversation parameters to the request API calls, and updated all code to match. I can't compile the Perl module, so I'd appreciate it if someone who knows it would verify that this doesn't break Perl.
Evan Schoenberg <evands@pidgin.im>
parents: 15884
diff changeset
1226 account, who, conv,
21175
c6d76b49c206 disapproval of revision '8ba833993a115415727bb1b70362e0bd1603c169'
Richard Laager <rlaager@pidgin.im>
parents: 21174
diff changeset
1227 user_data);
5477
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1228
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1229 handles = g_list_append(handles, info);
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1230
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1231 return info->ui_handle;
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1232 }
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1233
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1234 return NULL;
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1235 }
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1236
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1237 void *
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1238 purple_request_choice(void *handle, const char *title, const char *primary,
19585
14b519abcc26 Fix some conversion warnings about using negative values with unsigned types. There are more, but these were easy fixes. You may think that I'm changing the API, but I'm really not - it was just wrong.
Daniel Atallah <datallah@pidgin.im>
parents: 18384
diff changeset
1239 const char *secondary, int default_value,
5477
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1240 const char *ok_text, GCallback ok_cb,
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1241 const char *cancel_text, GCallback cancel_cb,
16490
68c22924d66b Added account, who, and conversation parameters to the request API calls, and updated all code to match. I can't compile the Perl module, so I'd appreciate it if someone who knows it would verify that this doesn't break Perl.
Evan Schoenberg <evands@pidgin.im>
parents: 15884
diff changeset
1242 PurpleAccount *account, const char *who, PurpleConversation *conv,
20685
039aef89faf6 Updated hinting to be less invasive
Gabriel Schulhof <nix@go-nix.ca>
parents: 20684
diff changeset
1243 void *user_data, ...)
039aef89faf6 Updated hinting to be less invasive
Gabriel Schulhof <nix@go-nix.ca>
parents: 20684
diff changeset
1244 {
039aef89faf6 Updated hinting to be less invasive
Gabriel Schulhof <nix@go-nix.ca>
parents: 20684
diff changeset
1245 void *ui_handle;
039aef89faf6 Updated hinting to be less invasive
Gabriel Schulhof <nix@go-nix.ca>
parents: 20684
diff changeset
1246 va_list args;
039aef89faf6 Updated hinting to be less invasive
Gabriel Schulhof <nix@go-nix.ca>
parents: 20684
diff changeset
1247
039aef89faf6 Updated hinting to be less invasive
Gabriel Schulhof <nix@go-nix.ca>
parents: 20684
diff changeset
1248 g_return_val_if_fail(ok_text != NULL, NULL);
039aef89faf6 Updated hinting to be less invasive
Gabriel Schulhof <nix@go-nix.ca>
parents: 20684
diff changeset
1249 g_return_val_if_fail(ok_cb != NULL, NULL);
039aef89faf6 Updated hinting to be less invasive
Gabriel Schulhof <nix@go-nix.ca>
parents: 20684
diff changeset
1250
039aef89faf6 Updated hinting to be less invasive
Gabriel Schulhof <nix@go-nix.ca>
parents: 20684
diff changeset
1251 va_start(args, user_data);
21175
c6d76b49c206 disapproval of revision '8ba833993a115415727bb1b70362e0bd1603c169'
Richard Laager <rlaager@pidgin.im>
parents: 21174
diff changeset
1252 ui_handle = purple_request_choice_varg(handle, title, primary, secondary,
20685
039aef89faf6 Updated hinting to be less invasive
Gabriel Schulhof <nix@go-nix.ca>
parents: 20684
diff changeset
1253 default_value, ok_text, ok_cb,
039aef89faf6 Updated hinting to be less invasive
Gabriel Schulhof <nix@go-nix.ca>
parents: 20684
diff changeset
1254 cancel_text, cancel_cb,
21175
c6d76b49c206 disapproval of revision '8ba833993a115415727bb1b70362e0bd1603c169'
Richard Laager <rlaager@pidgin.im>
parents: 21174
diff changeset
1255 account, who, conv, user_data, args);
5477
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1256 va_end(args);
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1257
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1258 return ui_handle;
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1259 }
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1260
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1261 void *
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1262 purple_request_choice_varg(void *handle, const char *title,
10229
39ffee70c286 [gaim-migrate @ 11364]
Alceste Scalas <alceste.scalas@gmx.net>
parents: 9502
diff changeset
1263 const char *primary, const char *secondary,
19585
14b519abcc26 Fix some conversion warnings about using negative values with unsigned types. There are more, but these were easy fixes. You may think that I'm changing the API, but I'm really not - it was just wrong.
Daniel Atallah <datallah@pidgin.im>
parents: 18384
diff changeset
1264 int default_value,
10229
39ffee70c286 [gaim-migrate @ 11364]
Alceste Scalas <alceste.scalas@gmx.net>
parents: 9502
diff changeset
1265 const char *ok_text, GCallback ok_cb,
39ffee70c286 [gaim-migrate @ 11364]
Alceste Scalas <alceste.scalas@gmx.net>
parents: 9502
diff changeset
1266 const char *cancel_text, GCallback cancel_cb,
16490
68c22924d66b Added account, who, and conversation parameters to the request API calls, and updated all code to match. I can't compile the Perl module, so I'd appreciate it if someone who knows it would verify that this doesn't break Perl.
Evan Schoenberg <evands@pidgin.im>
parents: 15884
diff changeset
1267 PurpleAccount *account, const char *who, PurpleConversation *conv,
20696
fed6b4e72b8f Weirdness
Gabriel Schulhof <nix@go-nix.ca>
parents: 20689
diff changeset
1268 void *user_data, va_list choices)
5477
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1269 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1270 PurpleRequestUiOps *ops;
5477
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1271
5496
ed995be89052 [gaim-migrate @ 5892]
Christian Hammond <chipx86@chipx86.com>
parents: 5482
diff changeset
1272 g_return_val_if_fail(ok_text != NULL, NULL);
ed995be89052 [gaim-migrate @ 5892]
Christian Hammond <chipx86@chipx86.com>
parents: 5482
diff changeset
1273 g_return_val_if_fail(ok_cb != NULL, NULL);
21980
3d855e66dc9e Documentation tweaks and more g_return_if_fail checks for NULL parameters which
Will Thompson <resiak@pidgin.im>
parents: 21648
diff changeset
1274 g_return_val_if_fail(cancel_text != NULL, NULL);
5477
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1275
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1276 ops = purple_request_get_ui_ops();
5477
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1277
5496
ed995be89052 [gaim-migrate @ 5892]
Christian Hammond <chipx86@chipx86.com>
parents: 5482
diff changeset
1278 if (ops != NULL && ops->request_choice != NULL) {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1279 PurpleRequestInfo *info;
5477
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1280
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1281 info = g_new0(PurpleRequestInfo, 1);
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1282 info->type = PURPLE_REQUEST_CHOICE;
5477
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1283 info->handle = handle;
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1284 info->ui_handle = ops->request_choice(title, primary, secondary,
10229
39ffee70c286 [gaim-migrate @ 11364]
Alceste Scalas <alceste.scalas@gmx.net>
parents: 9502
diff changeset
1285 default_value,
39ffee70c286 [gaim-migrate @ 11364]
Alceste Scalas <alceste.scalas@gmx.net>
parents: 9502
diff changeset
1286 ok_text, ok_cb,
39ffee70c286 [gaim-migrate @ 11364]
Alceste Scalas <alceste.scalas@gmx.net>
parents: 9502
diff changeset
1287 cancel_text, cancel_cb,
16490
68c22924d66b Added account, who, and conversation parameters to the request API calls, and updated all code to match. I can't compile the Perl module, so I'd appreciate it if someone who knows it would verify that this doesn't break Perl.
Evan Schoenberg <evands@pidgin.im>
parents: 15884
diff changeset
1288 account, who, conv,
21175
c6d76b49c206 disapproval of revision '8ba833993a115415727bb1b70362e0bd1603c169'
Richard Laager <rlaager@pidgin.im>
parents: 21174
diff changeset
1289 user_data, choices);
5477
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1290
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1291 handles = g_list_append(handles, info);
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1292
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1293 return info->ui_handle;
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1294 }
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1295
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1296 return NULL;
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1297 }
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1298
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1299 void *
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1300 purple_request_action(void *handle, const char *title, const char *primary,
19585
14b519abcc26 Fix some conversion warnings about using negative values with unsigned types. There are more, but these were easy fixes. You may think that I'm changing the API, but I'm really not - it was just wrong.
Daniel Atallah <datallah@pidgin.im>
parents: 18384
diff changeset
1301 const char *secondary, int default_action,
16490
68c22924d66b Added account, who, and conversation parameters to the request API calls, and updated all code to match. I can't compile the Perl module, so I'd appreciate it if someone who knows it would verify that this doesn't break Perl.
Evan Schoenberg <evands@pidgin.im>
parents: 15884
diff changeset
1302 PurpleAccount *account, const char *who, PurpleConversation *conv,
20685
039aef89faf6 Updated hinting to be less invasive
Gabriel Schulhof <nix@go-nix.ca>
parents: 20684
diff changeset
1303 void *user_data, size_t action_count, ...)
039aef89faf6 Updated hinting to be less invasive
Gabriel Schulhof <nix@go-nix.ca>
parents: 20684
diff changeset
1304 {
039aef89faf6 Updated hinting to be less invasive
Gabriel Schulhof <nix@go-nix.ca>
parents: 20684
diff changeset
1305 void *ui_handle;
039aef89faf6 Updated hinting to be less invasive
Gabriel Schulhof <nix@go-nix.ca>
parents: 20684
diff changeset
1306 va_list args;
039aef89faf6 Updated hinting to be less invasive
Gabriel Schulhof <nix@go-nix.ca>
parents: 20684
diff changeset
1307
039aef89faf6 Updated hinting to be less invasive
Gabriel Schulhof <nix@go-nix.ca>
parents: 20684
diff changeset
1308 g_return_val_if_fail(action_count > 0, NULL);
039aef89faf6 Updated hinting to be less invasive
Gabriel Schulhof <nix@go-nix.ca>
parents: 20684
diff changeset
1309
039aef89faf6 Updated hinting to be less invasive
Gabriel Schulhof <nix@go-nix.ca>
parents: 20684
diff changeset
1310 va_start(args, action_count);
21175
c6d76b49c206 disapproval of revision '8ba833993a115415727bb1b70362e0bd1603c169'
Richard Laager <rlaager@pidgin.im>
parents: 21174
diff changeset
1311 ui_handle = purple_request_action_varg(handle, title, primary, secondary,
20685
039aef89faf6 Updated hinting to be less invasive
Gabriel Schulhof <nix@go-nix.ca>
parents: 20684
diff changeset
1312 default_action, account, who, conv,
21175
c6d76b49c206 disapproval of revision '8ba833993a115415727bb1b70362e0bd1603c169'
Richard Laager <rlaager@pidgin.im>
parents: 21174
diff changeset
1313 user_data, action_count, args);
5477
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1314 va_end(args);
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1315
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1316 return ui_handle;
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1317 }
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1318
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1319 void *
31294
73607ab89c6f Remove trailing whitespace
Richard Laager <rlaager@pidgin.im>
parents: 30720
diff changeset
1320 purple_request_action_with_icon(void *handle, const char *title,
27427
00f91afbd4d9 Show thumbnail in ft request dialog
Marcus Lundblad <malu@pidgin.im>
parents: 24990
diff changeset
1321 const char *primary,
00f91afbd4d9 Show thumbnail in ft request dialog
Marcus Lundblad <malu@pidgin.im>
parents: 24990
diff changeset
1322 const char *secondary, int default_action,
31294
73607ab89c6f Remove trailing whitespace
Richard Laager <rlaager@pidgin.im>
parents: 30720
diff changeset
1323 PurpleAccount *account, const char *who,
27427
00f91afbd4d9 Show thumbnail in ft request dialog
Marcus Lundblad <malu@pidgin.im>
parents: 24990
diff changeset
1324 PurpleConversation *conv, gconstpointer icon_data,
00f91afbd4d9 Show thumbnail in ft request dialog
Marcus Lundblad <malu@pidgin.im>
parents: 24990
diff changeset
1325 gsize icon_size, void *user_data, size_t action_count, ...)
00f91afbd4d9 Show thumbnail in ft request dialog
Marcus Lundblad <malu@pidgin.im>
parents: 24990
diff changeset
1326 {
00f91afbd4d9 Show thumbnail in ft request dialog
Marcus Lundblad <malu@pidgin.im>
parents: 24990
diff changeset
1327 void *ui_handle;
00f91afbd4d9 Show thumbnail in ft request dialog
Marcus Lundblad <malu@pidgin.im>
parents: 24990
diff changeset
1328 va_list args;
00f91afbd4d9 Show thumbnail in ft request dialog
Marcus Lundblad <malu@pidgin.im>
parents: 24990
diff changeset
1329
00f91afbd4d9 Show thumbnail in ft request dialog
Marcus Lundblad <malu@pidgin.im>
parents: 24990
diff changeset
1330 g_return_val_if_fail(action_count > 0, NULL);
00f91afbd4d9 Show thumbnail in ft request dialog
Marcus Lundblad <malu@pidgin.im>
parents: 24990
diff changeset
1331
00f91afbd4d9 Show thumbnail in ft request dialog
Marcus Lundblad <malu@pidgin.im>
parents: 24990
diff changeset
1332 va_start(args, action_count);
31294
73607ab89c6f Remove trailing whitespace
Richard Laager <rlaager@pidgin.im>
parents: 30720
diff changeset
1333 ui_handle = purple_request_action_with_icon_varg(handle, title, primary,
27427
00f91afbd4d9 Show thumbnail in ft request dialog
Marcus Lundblad <malu@pidgin.im>
parents: 24990
diff changeset
1334 secondary, default_action, account, who, conv, icon_data, icon_size,
00f91afbd4d9 Show thumbnail in ft request dialog
Marcus Lundblad <malu@pidgin.im>
parents: 24990
diff changeset
1335 user_data, action_count, args);
00f91afbd4d9 Show thumbnail in ft request dialog
Marcus Lundblad <malu@pidgin.im>
parents: 24990
diff changeset
1336 va_end(args);
00f91afbd4d9 Show thumbnail in ft request dialog
Marcus Lundblad <malu@pidgin.im>
parents: 24990
diff changeset
1337
00f91afbd4d9 Show thumbnail in ft request dialog
Marcus Lundblad <malu@pidgin.im>
parents: 24990
diff changeset
1338 return ui_handle;
00f91afbd4d9 Show thumbnail in ft request dialog
Marcus Lundblad <malu@pidgin.im>
parents: 24990
diff changeset
1339 }
00f91afbd4d9 Show thumbnail in ft request dialog
Marcus Lundblad <malu@pidgin.im>
parents: 24990
diff changeset
1340
00f91afbd4d9 Show thumbnail in ft request dialog
Marcus Lundblad <malu@pidgin.im>
parents: 24990
diff changeset
1341
00f91afbd4d9 Show thumbnail in ft request dialog
Marcus Lundblad <malu@pidgin.im>
parents: 24990
diff changeset
1342 void *
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1343 purple_request_action_varg(void *handle, const char *title,
5477
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1344 const char *primary, const char *secondary,
19585
14b519abcc26 Fix some conversion warnings about using negative values with unsigned types. There are more, but these were easy fixes. You may think that I'm changing the API, but I'm really not - it was just wrong.
Daniel Atallah <datallah@pidgin.im>
parents: 18384
diff changeset
1345 int default_action,
16490
68c22924d66b Added account, who, and conversation parameters to the request API calls, and updated all code to match. I can't compile the Perl module, so I'd appreciate it if someone who knows it would verify that this doesn't break Perl.
Evan Schoenberg <evands@pidgin.im>
parents: 15884
diff changeset
1346 PurpleAccount *account, const char *who, PurpleConversation *conv,
21175
c6d76b49c206 disapproval of revision '8ba833993a115415727bb1b70362e0bd1603c169'
Richard Laager <rlaager@pidgin.im>
parents: 21174
diff changeset
1347 void *user_data, size_t action_count, va_list actions)
5477
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1348 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1349 PurpleRequestUiOps *ops;
5477
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1350
5496
ed995be89052 [gaim-migrate @ 5892]
Christian Hammond <chipx86@chipx86.com>
parents: 5482
diff changeset
1351 g_return_val_if_fail(action_count > 0, NULL);
5477
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1352
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1353 ops = purple_request_get_ui_ops();
5477
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1354
5496
ed995be89052 [gaim-migrate @ 5892]
Christian Hammond <chipx86@chipx86.com>
parents: 5482
diff changeset
1355 if (ops != NULL && ops->request_action != NULL) {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1356 PurpleRequestInfo *info;
5477
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1357
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1358 info = g_new0(PurpleRequestInfo, 1);
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1359 info->type = PURPLE_REQUEST_ACTION;
5477
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1360 info->handle = handle;
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1361 info->ui_handle = ops->request_action(title, primary, secondary,
16490
68c22924d66b Added account, who, and conversation parameters to the request API calls, and updated all code to match. I can't compile the Perl module, so I'd appreciate it if someone who knows it would verify that this doesn't break Perl.
Evan Schoenberg <evands@pidgin.im>
parents: 15884
diff changeset
1362 default_action, account, who, conv,
21175
c6d76b49c206 disapproval of revision '8ba833993a115415727bb1b70362e0bd1603c169'
Richard Laager <rlaager@pidgin.im>
parents: 21174
diff changeset
1363 user_data, action_count, actions);
5477
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1364
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1365 handles = g_list_append(handles, info);
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1366
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1367 return info->ui_handle;
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1368 }
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1369
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1370 return NULL;
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1371 }
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1372
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
1373 void *
30146
ffa4c7208d1c It seems like the _varg should be at the end.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 30130
diff changeset
1374 purple_request_action_with_icon_varg(void *handle, const char *title,
27427
00f91afbd4d9 Show thumbnail in ft request dialog
Marcus Lundblad <malu@pidgin.im>
parents: 24990
diff changeset
1375 const char *primary, const char *secondary,
00f91afbd4d9 Show thumbnail in ft request dialog
Marcus Lundblad <malu@pidgin.im>
parents: 24990
diff changeset
1376 int default_action,
31294
73607ab89c6f Remove trailing whitespace
Richard Laager <rlaager@pidgin.im>
parents: 30720
diff changeset
1377 PurpleAccount *account, const char *who,
27427
00f91afbd4d9 Show thumbnail in ft request dialog
Marcus Lundblad <malu@pidgin.im>
parents: 24990
diff changeset
1378 PurpleConversation *conv, gconstpointer icon_data,
00f91afbd4d9 Show thumbnail in ft request dialog
Marcus Lundblad <malu@pidgin.im>
parents: 24990
diff changeset
1379 gsize icon_size,
00f91afbd4d9 Show thumbnail in ft request dialog
Marcus Lundblad <malu@pidgin.im>
parents: 24990
diff changeset
1380 void *user_data, size_t action_count, va_list actions)
00f91afbd4d9 Show thumbnail in ft request dialog
Marcus Lundblad <malu@pidgin.im>
parents: 24990
diff changeset
1381 {
00f91afbd4d9 Show thumbnail in ft request dialog
Marcus Lundblad <malu@pidgin.im>
parents: 24990
diff changeset
1382 PurpleRequestUiOps *ops;
00f91afbd4d9 Show thumbnail in ft request dialog
Marcus Lundblad <malu@pidgin.im>
parents: 24990
diff changeset
1383
00f91afbd4d9 Show thumbnail in ft request dialog
Marcus Lundblad <malu@pidgin.im>
parents: 24990
diff changeset
1384 g_return_val_if_fail(action_count > 0, NULL);
00f91afbd4d9 Show thumbnail in ft request dialog
Marcus Lundblad <malu@pidgin.im>
parents: 24990
diff changeset
1385
00f91afbd4d9 Show thumbnail in ft request dialog
Marcus Lundblad <malu@pidgin.im>
parents: 24990
diff changeset
1386 ops = purple_request_get_ui_ops();
00f91afbd4d9 Show thumbnail in ft request dialog
Marcus Lundblad <malu@pidgin.im>
parents: 24990
diff changeset
1387
30130
08725e76283a Woops, copy-paste error... :)
Marcus Lundblad <malu@pidgin.im>
parents: 29775
diff changeset
1388 if (ops != NULL && ops->request_action_with_icon != NULL) {
27427
00f91afbd4d9 Show thumbnail in ft request dialog
Marcus Lundblad <malu@pidgin.im>
parents: 24990
diff changeset
1389 PurpleRequestInfo *info;
00f91afbd4d9 Show thumbnail in ft request dialog
Marcus Lundblad <malu@pidgin.im>
parents: 24990
diff changeset
1390
00f91afbd4d9 Show thumbnail in ft request dialog
Marcus Lundblad <malu@pidgin.im>
parents: 24990
diff changeset
1391 info = g_new0(PurpleRequestInfo, 1);
00f91afbd4d9 Show thumbnail in ft request dialog
Marcus Lundblad <malu@pidgin.im>
parents: 24990
diff changeset
1392 info->type = PURPLE_REQUEST_ACTION;
00f91afbd4d9 Show thumbnail in ft request dialog
Marcus Lundblad <malu@pidgin.im>
parents: 24990
diff changeset
1393 info->handle = handle;
00f91afbd4d9 Show thumbnail in ft request dialog
Marcus Lundblad <malu@pidgin.im>
parents: 24990
diff changeset
1394 info->ui_handle = ops->request_action_with_icon(title, primary, secondary,
00f91afbd4d9 Show thumbnail in ft request dialog
Marcus Lundblad <malu@pidgin.im>
parents: 24990
diff changeset
1395 default_action, account, who, conv,
00f91afbd4d9 Show thumbnail in ft request dialog
Marcus Lundblad <malu@pidgin.im>
parents: 24990
diff changeset
1396 icon_data, icon_size,
00f91afbd4d9 Show thumbnail in ft request dialog
Marcus Lundblad <malu@pidgin.im>
parents: 24990
diff changeset
1397 user_data, action_count, actions);
00f91afbd4d9 Show thumbnail in ft request dialog
Marcus Lundblad <malu@pidgin.im>
parents: 24990
diff changeset
1398
00f91afbd4d9 Show thumbnail in ft request dialog
Marcus Lundblad <malu@pidgin.im>
parents: 24990
diff changeset
1399 handles = g_list_append(handles, info);
00f91afbd4d9 Show thumbnail in ft request dialog
Marcus Lundblad <malu@pidgin.im>
parents: 24990
diff changeset
1400
00f91afbd4d9 Show thumbnail in ft request dialog
Marcus Lundblad <malu@pidgin.im>
parents: 24990
diff changeset
1401 return info->ui_handle;
30720
021f34d5ceb3 Fall back to a non-icon request dialog if a UI does not support showing icon requests. Fixes receiving file transfer offers including a thumbnail in finch. Closes #12561
Marcus Lundblad <malu@pidgin.im>
parents: 30146
diff changeset
1402 } else {
021f34d5ceb3 Fall back to a non-icon request dialog if a UI does not support showing icon requests. Fixes receiving file transfer offers including a thumbnail in finch. Closes #12561
Marcus Lundblad <malu@pidgin.im>
parents: 30146
diff changeset
1403 /* Fall back on the non-icon request if the UI doesn't support icon
021f34d5ceb3 Fall back to a non-icon request dialog if a UI does not support showing icon requests. Fixes receiving file transfer offers including a thumbnail in finch. Closes #12561
Marcus Lundblad <malu@pidgin.im>
parents: 30146
diff changeset
1404 requests */
021f34d5ceb3 Fall back to a non-icon request dialog if a UI does not support showing icon requests. Fixes receiving file transfer offers including a thumbnail in finch. Closes #12561
Marcus Lundblad <malu@pidgin.im>
parents: 30146
diff changeset
1405 return purple_request_action_varg(handle, title, primary, secondary,
021f34d5ceb3 Fall back to a non-icon request dialog if a UI does not support showing icon requests. Fixes receiving file transfer offers including a thumbnail in finch. Closes #12561
Marcus Lundblad <malu@pidgin.im>
parents: 30146
diff changeset
1406 default_action, account, who, conv, user_data, action_count, actions);
27427
00f91afbd4d9 Show thumbnail in ft request dialog
Marcus Lundblad <malu@pidgin.im>
parents: 24990
diff changeset
1407 }
00f91afbd4d9 Show thumbnail in ft request dialog
Marcus Lundblad <malu@pidgin.im>
parents: 24990
diff changeset
1408
00f91afbd4d9 Show thumbnail in ft request dialog
Marcus Lundblad <malu@pidgin.im>
parents: 24990
diff changeset
1409 return NULL;
00f91afbd4d9 Show thumbnail in ft request dialog
Marcus Lundblad <malu@pidgin.im>
parents: 24990
diff changeset
1410 }
00f91afbd4d9 Show thumbnail in ft request dialog
Marcus Lundblad <malu@pidgin.im>
parents: 24990
diff changeset
1411
00f91afbd4d9 Show thumbnail in ft request dialog
Marcus Lundblad <malu@pidgin.im>
parents: 24990
diff changeset
1412
00f91afbd4d9 Show thumbnail in ft request dialog
Marcus Lundblad <malu@pidgin.im>
parents: 24990
diff changeset
1413 void *
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1414 purple_request_fields(void *handle, const char *title, const char *primary,
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1415 const char *secondary, PurpleRequestFields *fields,
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
1416 const char *ok_text, GCallback ok_cb,
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
1417 const char *cancel_text, GCallback cancel_cb,
16490
68c22924d66b Added account, who, and conversation parameters to the request API calls, and updated all code to match. I can't compile the Perl module, so I'd appreciate it if someone who knows it would verify that this doesn't break Perl.
Evan Schoenberg <evands@pidgin.im>
parents: 15884
diff changeset
1418 PurpleAccount *account, const char *who, PurpleConversation *conv,
20696
fed6b4e72b8f Weirdness
Gabriel Schulhof <nix@go-nix.ca>
parents: 20689
diff changeset
1419 void *user_data)
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
1420 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1421 PurpleRequestUiOps *ops;
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
1422
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
1423 g_return_val_if_fail(fields != NULL, NULL);
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
1424 g_return_val_if_fail(ok_text != NULL, NULL);
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
1425 g_return_val_if_fail(ok_cb != NULL, NULL);
21980
3d855e66dc9e Documentation tweaks and more g_return_if_fail checks for NULL parameters which
Will Thompson <resiak@pidgin.im>
parents: 21648
diff changeset
1426 g_return_val_if_fail(cancel_text != NULL, NULL);
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
1427
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1428 ops = purple_request_get_ui_ops();
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
1429
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
1430 if (ops != NULL && ops->request_fields != NULL) {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1431 PurpleRequestInfo *info;
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
1432
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1433 info = g_new0(PurpleRequestInfo, 1);
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1434 info->type = PURPLE_REQUEST_FIELDS;
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
1435 info->handle = handle;
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
1436 info->ui_handle = ops->request_fields(title, primary, secondary,
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
1437 fields, ok_text, ok_cb,
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
1438 cancel_text, cancel_cb,
16490
68c22924d66b Added account, who, and conversation parameters to the request API calls, and updated all code to match. I can't compile the Perl module, so I'd appreciate it if someone who knows it would verify that this doesn't break Perl.
Evan Schoenberg <evands@pidgin.im>
parents: 15884
diff changeset
1439 account, who, conv,
21175
c6d76b49c206 disapproval of revision '8ba833993a115415727bb1b70362e0bd1603c169'
Richard Laager <rlaager@pidgin.im>
parents: 21174
diff changeset
1440 user_data);
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
1441
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
1442 handles = g_list_append(handles, info);
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
1443
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
1444 return info->ui_handle;
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
1445 }
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
1446
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
1447 return NULL;
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
1448 }
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
1449
9502
d43f69354213 [gaim-migrate @ 10329]
Mark Doliner <markdoliner@pidgin.im>
parents: 8843
diff changeset
1450 void *
20686
ec1a687480d2 Minor fix
Gabriel Schulhof <nix@go-nix.ca>
parents: 20685
diff changeset
1451 purple_request_file(void *handle, const char *title, const char *filename,
20685
039aef89faf6 Updated hinting to be less invasive
Gabriel Schulhof <nix@go-nix.ca>
parents: 20684
diff changeset
1452 gboolean savedialog,
039aef89faf6 Updated hinting to be less invasive
Gabriel Schulhof <nix@go-nix.ca>
parents: 20684
diff changeset
1453 GCallback ok_cb, GCallback cancel_cb,
039aef89faf6 Updated hinting to be less invasive
Gabriel Schulhof <nix@go-nix.ca>
parents: 20684
diff changeset
1454 PurpleAccount *account, const char *who, PurpleConversation *conv,
039aef89faf6 Updated hinting to be less invasive
Gabriel Schulhof <nix@go-nix.ca>
parents: 20684
diff changeset
1455 void *user_data)
039aef89faf6 Updated hinting to be less invasive
Gabriel Schulhof <nix@go-nix.ca>
parents: 20684
diff changeset
1456 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1457 PurpleRequestUiOps *ops;
9502
d43f69354213 [gaim-migrate @ 10329]
Mark Doliner <markdoliner@pidgin.im>
parents: 8843
diff changeset
1458
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1459 ops = purple_request_get_ui_ops();
9502
d43f69354213 [gaim-migrate @ 10329]
Mark Doliner <markdoliner@pidgin.im>
parents: 8843
diff changeset
1460
d43f69354213 [gaim-migrate @ 10329]
Mark Doliner <markdoliner@pidgin.im>
parents: 8843
diff changeset
1461 if (ops != NULL && ops->request_file != NULL) {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1462 PurpleRequestInfo *info;
9502
d43f69354213 [gaim-migrate @ 10329]
Mark Doliner <markdoliner@pidgin.im>
parents: 8843
diff changeset
1463
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1464 info = g_new0(PurpleRequestInfo, 1);
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1465 info->type = PURPLE_REQUEST_FILE;
9502
d43f69354213 [gaim-migrate @ 10329]
Mark Doliner <markdoliner@pidgin.im>
parents: 8843
diff changeset
1466 info->handle = handle;
d43f69354213 [gaim-migrate @ 10329]
Mark Doliner <markdoliner@pidgin.im>
parents: 8843
diff changeset
1467 info->ui_handle = ops->request_file(title, filename, savedialog,
16490
68c22924d66b Added account, who, and conversation parameters to the request API calls, and updated all code to match. I can't compile the Perl module, so I'd appreciate it if someone who knows it would verify that this doesn't break Perl.
Evan Schoenberg <evands@pidgin.im>
parents: 15884
diff changeset
1468 ok_cb, cancel_cb,
21175
c6d76b49c206 disapproval of revision '8ba833993a115415727bb1b70362e0bd1603c169'
Richard Laager <rlaager@pidgin.im>
parents: 21174
diff changeset
1469 account, who, conv, user_data);
9502
d43f69354213 [gaim-migrate @ 10329]
Mark Doliner <markdoliner@pidgin.im>
parents: 8843
diff changeset
1470 handles = g_list_append(handles, info);
d43f69354213 [gaim-migrate @ 10329]
Mark Doliner <markdoliner@pidgin.im>
parents: 8843
diff changeset
1471 return info->ui_handle;
d43f69354213 [gaim-migrate @ 10329]
Mark Doliner <markdoliner@pidgin.im>
parents: 8843
diff changeset
1472 }
d43f69354213 [gaim-migrate @ 10329]
Mark Doliner <markdoliner@pidgin.im>
parents: 8843
diff changeset
1473
d43f69354213 [gaim-migrate @ 10329]
Mark Doliner <markdoliner@pidgin.im>
parents: 8843
diff changeset
1474 return NULL;
d43f69354213 [gaim-migrate @ 10329]
Mark Doliner <markdoliner@pidgin.im>
parents: 8843
diff changeset
1475 }
d43f69354213 [gaim-migrate @ 10329]
Mark Doliner <markdoliner@pidgin.im>
parents: 8843
diff changeset
1476
13283
89a0621d5d6a [gaim-migrate @ 15648]
Dennis Nezic <dennisn@dennisn.dyndns.org>
parents: 13270
diff changeset
1477 void *
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1478 purple_request_folder(void *handle, const char *title, const char *dirname,
16490
68c22924d66b Added account, who, and conversation parameters to the request API calls, and updated all code to match. I can't compile the Perl module, so I'd appreciate it if someone who knows it would verify that this doesn't break Perl.
Evan Schoenberg <evands@pidgin.im>
parents: 15884
diff changeset
1479 GCallback ok_cb, GCallback cancel_cb,
68c22924d66b Added account, who, and conversation parameters to the request API calls, and updated all code to match. I can't compile the Perl module, so I'd appreciate it if someone who knows it would verify that this doesn't break Perl.
Evan Schoenberg <evands@pidgin.im>
parents: 15884
diff changeset
1480 PurpleAccount *account, const char *who, PurpleConversation *conv,
20685
039aef89faf6 Updated hinting to be less invasive
Gabriel Schulhof <nix@go-nix.ca>
parents: 20684
diff changeset
1481 void *user_data)
039aef89faf6 Updated hinting to be less invasive
Gabriel Schulhof <nix@go-nix.ca>
parents: 20684
diff changeset
1482 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1483 PurpleRequestUiOps *ops;
13283
89a0621d5d6a [gaim-migrate @ 15648]
Dennis Nezic <dennisn@dennisn.dyndns.org>
parents: 13270
diff changeset
1484
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1485 ops = purple_request_get_ui_ops();
13283
89a0621d5d6a [gaim-migrate @ 15648]
Dennis Nezic <dennisn@dennisn.dyndns.org>
parents: 13270
diff changeset
1486
89a0621d5d6a [gaim-migrate @ 15648]
Dennis Nezic <dennisn@dennisn.dyndns.org>
parents: 13270
diff changeset
1487 if (ops != NULL && ops->request_file != NULL) {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1488 PurpleRequestInfo *info;
13283
89a0621d5d6a [gaim-migrate @ 15648]
Dennis Nezic <dennisn@dennisn.dyndns.org>
parents: 13270
diff changeset
1489
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1490 info = g_new0(PurpleRequestInfo, 1);
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1491 info->type = PURPLE_REQUEST_FOLDER;
13283
89a0621d5d6a [gaim-migrate @ 15648]
Dennis Nezic <dennisn@dennisn.dyndns.org>
parents: 13270
diff changeset
1492 info->handle = handle;
89a0621d5d6a [gaim-migrate @ 15648]
Dennis Nezic <dennisn@dennisn.dyndns.org>
parents: 13270
diff changeset
1493 info->ui_handle = ops->request_folder(title, dirname,
16490
68c22924d66b Added account, who, and conversation parameters to the request API calls, and updated all code to match. I can't compile the Perl module, so I'd appreciate it if someone who knows it would verify that this doesn't break Perl.
Evan Schoenberg <evands@pidgin.im>
parents: 15884
diff changeset
1494 ok_cb, cancel_cb,
68c22924d66b Added account, who, and conversation parameters to the request API calls, and updated all code to match. I can't compile the Perl module, so I'd appreciate it if someone who knows it would verify that this doesn't break Perl.
Evan Schoenberg <evands@pidgin.im>
parents: 15884
diff changeset
1495 account, who, conv,
21175
c6d76b49c206 disapproval of revision '8ba833993a115415727bb1b70362e0bd1603c169'
Richard Laager <rlaager@pidgin.im>
parents: 21174
diff changeset
1496 user_data);
13283
89a0621d5d6a [gaim-migrate @ 15648]
Dennis Nezic <dennisn@dennisn.dyndns.org>
parents: 13270
diff changeset
1497 handles = g_list_append(handles, info);
89a0621d5d6a [gaim-migrate @ 15648]
Dennis Nezic <dennisn@dennisn.dyndns.org>
parents: 13270
diff changeset
1498 return info->ui_handle;
89a0621d5d6a [gaim-migrate @ 15648]
Dennis Nezic <dennisn@dennisn.dyndns.org>
parents: 13270
diff changeset
1499 }
89a0621d5d6a [gaim-migrate @ 15648]
Dennis Nezic <dennisn@dennisn.dyndns.org>
parents: 13270
diff changeset
1500
89a0621d5d6a [gaim-migrate @ 15648]
Dennis Nezic <dennisn@dennisn.dyndns.org>
parents: 13270
diff changeset
1501 return NULL;
89a0621d5d6a [gaim-migrate @ 15648]
Dennis Nezic <dennisn@dennisn.dyndns.org>
parents: 13270
diff changeset
1502 }
89a0621d5d6a [gaim-migrate @ 15648]
Dennis Nezic <dennisn@dennisn.dyndns.org>
parents: 13270
diff changeset
1503
39010
fbce915a7024 Outbound screenshare window/monitor selection
David Woodhouse <dwmw2@infradead.org>
parents: 31294
diff changeset
1504 void *
fbce915a7024 Outbound screenshare window/monitor selection
David Woodhouse <dwmw2@infradead.org>
parents: 31294
diff changeset
1505 purple_request_screenshare_media(void *handle, const char *title,
fbce915a7024 Outbound screenshare window/monitor selection
David Woodhouse <dwmw2@infradead.org>
parents: 31294
diff changeset
1506 const char *primary, const char *secondary,
fbce915a7024 Outbound screenshare window/monitor selection
David Woodhouse <dwmw2@infradead.org>
parents: 31294
diff changeset
1507 PurpleAccount *account, GCallback cb,
fbce915a7024 Outbound screenshare window/monitor selection
David Woodhouse <dwmw2@infradead.org>
parents: 31294
diff changeset
1508 void *user_data)
fbce915a7024 Outbound screenshare window/monitor selection
David Woodhouse <dwmw2@infradead.org>
parents: 31294
diff changeset
1509 {
fbce915a7024 Outbound screenshare window/monitor selection
David Woodhouse <dwmw2@infradead.org>
parents: 31294
diff changeset
1510 PurpleRequestUiOps *ops;
fbce915a7024 Outbound screenshare window/monitor selection
David Woodhouse <dwmw2@infradead.org>
parents: 31294
diff changeset
1511
fbce915a7024 Outbound screenshare window/monitor selection
David Woodhouse <dwmw2@infradead.org>
parents: 31294
diff changeset
1512 ops = purple_request_get_ui_ops();
fbce915a7024 Outbound screenshare window/monitor selection
David Woodhouse <dwmw2@infradead.org>
parents: 31294
diff changeset
1513
fbce915a7024 Outbound screenshare window/monitor selection
David Woodhouse <dwmw2@infradead.org>
parents: 31294
diff changeset
1514 if (ops != NULL && ops->request_screenshare_media != NULL) {
fbce915a7024 Outbound screenshare window/monitor selection
David Woodhouse <dwmw2@infradead.org>
parents: 31294
diff changeset
1515 PurpleRequestInfo *info;
fbce915a7024 Outbound screenshare window/monitor selection
David Woodhouse <dwmw2@infradead.org>
parents: 31294
diff changeset
1516
fbce915a7024 Outbound screenshare window/monitor selection
David Woodhouse <dwmw2@infradead.org>
parents: 31294
diff changeset
1517 info = g_new0(PurpleRequestInfo, 1);
fbce915a7024 Outbound screenshare window/monitor selection
David Woodhouse <dwmw2@infradead.org>
parents: 31294
diff changeset
1518 info->type = PURPLE_REQUEST_SCREENSHARE;
fbce915a7024 Outbound screenshare window/monitor selection
David Woodhouse <dwmw2@infradead.org>
parents: 31294
diff changeset
1519 info->handle = handle;
fbce915a7024 Outbound screenshare window/monitor selection
David Woodhouse <dwmw2@infradead.org>
parents: 31294
diff changeset
1520 info->ui_handle = ops->request_screenshare_media(title, primary, secondary,
fbce915a7024 Outbound screenshare window/monitor selection
David Woodhouse <dwmw2@infradead.org>
parents: 31294
diff changeset
1521 account, cb, user_data);
fbce915a7024 Outbound screenshare window/monitor selection
David Woodhouse <dwmw2@infradead.org>
parents: 31294
diff changeset
1522 handles = g_list_append(handles, info);
fbce915a7024 Outbound screenshare window/monitor selection
David Woodhouse <dwmw2@infradead.org>
parents: 31294
diff changeset
1523 return info->ui_handle;
fbce915a7024 Outbound screenshare window/monitor selection
David Woodhouse <dwmw2@infradead.org>
parents: 31294
diff changeset
1524 }
fbce915a7024 Outbound screenshare window/monitor selection
David Woodhouse <dwmw2@infradead.org>
parents: 31294
diff changeset
1525
fbce915a7024 Outbound screenshare window/monitor selection
David Woodhouse <dwmw2@infradead.org>
parents: 31294
diff changeset
1526 return NULL;
fbce915a7024 Outbound screenshare window/monitor selection
David Woodhouse <dwmw2@infradead.org>
parents: 31294
diff changeset
1527 }
fbce915a7024 Outbound screenshare window/monitor selection
David Woodhouse <dwmw2@infradead.org>
parents: 31294
diff changeset
1528
9502
d43f69354213 [gaim-migrate @ 10329]
Mark Doliner <markdoliner@pidgin.im>
parents: 8843
diff changeset
1529 static void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1530 purple_request_close_info(PurpleRequestInfo *info)
9502
d43f69354213 [gaim-migrate @ 10329]
Mark Doliner <markdoliner@pidgin.im>
parents: 8843
diff changeset
1531 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1532 PurpleRequestUiOps *ops;
9502
d43f69354213 [gaim-migrate @ 10329]
Mark Doliner <markdoliner@pidgin.im>
parents: 8843
diff changeset
1533
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1534 ops = purple_request_get_ui_ops();
9502
d43f69354213 [gaim-migrate @ 10329]
Mark Doliner <markdoliner@pidgin.im>
parents: 8843
diff changeset
1535
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1536 purple_notify_close_with_handle(info->ui_handle);
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1537 purple_request_close_with_handle(info->ui_handle);
9502
d43f69354213 [gaim-migrate @ 10329]
Mark Doliner <markdoliner@pidgin.im>
parents: 8843
diff changeset
1538
d43f69354213 [gaim-migrate @ 10329]
Mark Doliner <markdoliner@pidgin.im>
parents: 8843
diff changeset
1539 if (ops != NULL && ops->close_request != NULL)
d43f69354213 [gaim-migrate @ 10329]
Mark Doliner <markdoliner@pidgin.im>
parents: 8843
diff changeset
1540 ops->close_request(info->type, info->ui_handle);
d43f69354213 [gaim-migrate @ 10329]
Mark Doliner <markdoliner@pidgin.im>
parents: 8843
diff changeset
1541
d43f69354213 [gaim-migrate @ 10329]
Mark Doliner <markdoliner@pidgin.im>
parents: 8843
diff changeset
1542 g_free(info);
d43f69354213 [gaim-migrate @ 10329]
Mark Doliner <markdoliner@pidgin.im>
parents: 8843
diff changeset
1543 }
d43f69354213 [gaim-migrate @ 10329]
Mark Doliner <markdoliner@pidgin.im>
parents: 8843
diff changeset
1544
5477
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1545 void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1546 purple_request_close(PurpleRequestType type, void *ui_handle)
5477
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1547 {
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1548 GList *l;
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1549
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1550 g_return_if_fail(ui_handle != NULL);
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1551
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1552 for (l = handles; l != NULL; l = l->next) {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1553 PurpleRequestInfo *info = l->data;
5477
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1554
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1555 if (info->ui_handle == ui_handle) {
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1556 handles = g_list_remove(handles, info);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1557 purple_request_close_info(info);
5477
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1558 break;
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1559 }
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1560 }
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1561 }
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1562
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1563 void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1564 purple_request_close_with_handle(void *handle)
5477
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1565 {
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1566 GList *l, *l_next;
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1567
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1568 g_return_if_fail(handle != NULL);
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1569
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1570 for (l = handles; l != NULL; l = l_next) {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1571 PurpleRequestInfo *info = l->data;
5477
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1572
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1573 l_next = l->next;
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1574
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1575 if (info->handle == handle) {
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1576 handles = g_list_remove(handles, info);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1577 purple_request_close_info(info);
5477
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1578 }
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1579 }
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1580 }
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1581
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1582 void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1583 purple_request_set_ui_ops(PurpleRequestUiOps *ops)
5477
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1584 {
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1585 request_ui_ops = ops;
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1586 }
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1587
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1588 PurpleRequestUiOps *
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1589 purple_request_get_ui_ops(void)
5477
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1590 {
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1591 return request_ui_ops;
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1592 }

mercurial