libpurple/request.c

Fri, 12 Feb 2021 04:07:08 -0600

author
Gary Kramlich <grim@reaperworld.com>
date
Fri, 12 Feb 2021 04:07:08 -0600
branch
release-2.x.y
changeset 40764
d687fda4047d
parent 40755
fb2056ce3c58
permissions
-rw-r--r--

Add a compatiblity layer for g_s?list_free_full and port everything to it.

This avoids a warning from stuff like (GFunc)g_free being an invalid cast.

Testing Done:
Compiled

Reviewed at https://reviews.imfreedom.org/r/498/

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
40755
fb2056ce3c58 Implement mitigation for GHSL-2021-045
Gary Kramlich <grim@reaperworld.com>
parents: 39010
diff changeset
30 #include "glibcompat.h"
9502
d43f69354213 [gaim-migrate @ 10329]
Mark Doliner <markdoliner@pidgin.im>
parents: 8843
diff changeset
31 #include "notify.h"
5477
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
32 #include "request.h"
7964
10d58eb8a16a [gaim-migrate @ 8641]
Christian Hammond <chipx86@chipx86.com>
parents: 7962
diff changeset
33 #include "debug.h"
5477
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
34
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
35 static PurpleRequestUiOps *request_ui_ops = NULL;
5477
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
36 static GList *handles = NULL;
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
37
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
38 typedef struct
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
39 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
40 PurpleRequestType type;
5477
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
41 void *handle;
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
42 void *ui_handle;
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
43
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
44 } PurpleRequestInfo;
5477
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
45
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
46
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
47 PurpleRequestFields *
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
48 purple_request_fields_new(void)
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
49 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
50 PurpleRequestFields *fields;
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
51
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
52 fields = g_new0(PurpleRequestFields, 1);
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
53
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
54 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
55 g_free, NULL);
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
56
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
57 return fields;
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
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
60 void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
61 purple_request_fields_destroy(PurpleRequestFields *fields)
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
62 {
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
63 g_return_if_fail(fields != NULL);
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
64
40764
d687fda4047d Add a compatiblity layer for g_s?list_free_full and port everything to it.
Gary Kramlich <grim@reaperworld.com>
parents: 40755
diff changeset
65 g_list_free_full(fields->groups,
d687fda4047d Add a compatiblity layer for g_s?list_free_full and port everything to it.
Gary Kramlich <grim@reaperworld.com>
parents: 40755
diff changeset
66 (GDestroyNotify)purple_request_field_group_destroy);
14097
0c340861ab79 [gaim-migrate @ 16638]
Mark Doliner <markdoliner@pidgin.im>
parents: 13283
diff changeset
67 g_list_free(fields->required_fields);
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
68 g_hash_table_destroy(fields->fields);
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
69 g_free(fields);
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
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
72 void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
73 purple_request_fields_add_group(PurpleRequestFields *fields,
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
74 PurpleRequestFieldGroup *group)
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
75 {
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
76 GList *l;
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
77 PurpleRequestField *field;
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
78
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
79 g_return_if_fail(fields != NULL);
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
80 g_return_if_fail(group != NULL);
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
81
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
82 fields->groups = g_list_append(fields->groups, group);
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
83
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
84 group->fields_list = fields;
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
85
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
86 for (l = purple_request_field_group_get_fields(group);
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
87 l != NULL;
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
88 l = l->next) {
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
89
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
90 field = l->data;
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
91
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
92 g_hash_table_insert(fields->fields,
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
93 g_strdup(purple_request_field_get_id(field)), field);
14149
df0304d74e95 [gaim-migrate @ 16710]
Daniel Atallah <datallah@pidgin.im>
parents: 14128
diff changeset
94
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
95 if (purple_request_field_is_required(field)) {
14149
df0304d74e95 [gaim-migrate @ 16710]
Daniel Atallah <datallah@pidgin.im>
parents: 14128
diff changeset
96 fields->required_fields =
df0304d74e95 [gaim-migrate @ 16710]
Daniel Atallah <datallah@pidgin.im>
parents: 14128
diff changeset
97 g_list_append(fields->required_fields, field);
df0304d74e95 [gaim-migrate @ 16710]
Daniel Atallah <datallah@pidgin.im>
parents: 14128
diff changeset
98 }
df0304d74e95 [gaim-migrate @ 16710]
Daniel Atallah <datallah@pidgin.im>
parents: 14128
diff changeset
99
5807
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
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
103 GList *
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
104 purple_request_fields_get_groups(const PurpleRequestFields *fields)
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
105 {
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
106 g_return_val_if_fail(fields != NULL, NULL);
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
107
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
108 return fields->groups;
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
109 }
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
110
8286
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
111 gboolean
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
112 purple_request_fields_exists(const PurpleRequestFields *fields, const char *id)
8286
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
113 {
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
114 g_return_val_if_fail(fields != NULL, FALSE);
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
115 g_return_val_if_fail(id != NULL, FALSE);
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
116
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
117 return (g_hash_table_lookup(fields->fields, id) != NULL);
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
118 }
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
119
18190
bcf28ef7e8ff Re-fix the DBus list handling code by killing const GList* / const GSList*
Richard Laager <rlaager@pidgin.im>
parents: 16490
diff changeset
120 GList *
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
121 purple_request_fields_get_required(const PurpleRequestFields *fields)
8286
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
122 {
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
123 g_return_val_if_fail(fields != NULL, NULL);
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
124
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
125 return fields->required_fields;
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
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
128 gboolean
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
129 purple_request_fields_is_field_required(const PurpleRequestFields *fields,
8286
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
130 const char *id)
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
131 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
132 PurpleRequestField *field;
8286
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
133
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
134 g_return_val_if_fail(fields != NULL, FALSE);
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
135 g_return_val_if_fail(id != NULL, FALSE);
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
136
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
137 if ((field = purple_request_fields_get_field(fields, id)) == NULL)
8286
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
138 return FALSE;
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
139
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
140 return purple_request_field_is_required(field);
8286
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
141 }
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
142
24984
64b88867fbdf Hide the PurpleRequestField struct. I figured this one would be easy and
Richard Laager <rlaager@pidgin.im>
parents: 21990
diff changeset
143 gpointer
64b88867fbdf Hide the PurpleRequestField struct. I figured this one would be easy and
Richard Laager <rlaager@pidgin.im>
parents: 21990
diff changeset
144 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
145 {
64b88867fbdf Hide the PurpleRequestField struct. I figured this one would be easy and
Richard Laager <rlaager@pidgin.im>
parents: 21990
diff changeset
146 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
147
64b88867fbdf Hide the PurpleRequestField struct. I figured this one would be easy and
Richard Laager <rlaager@pidgin.im>
parents: 21990
diff changeset
148 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
149 }
64b88867fbdf Hide the PurpleRequestField struct. I figured this one would be easy and
Richard Laager <rlaager@pidgin.im>
parents: 21990
diff changeset
150
64b88867fbdf Hide the PurpleRequestField struct. I figured this one would be easy and
Richard Laager <rlaager@pidgin.im>
parents: 21990
diff changeset
151 void
64b88867fbdf Hide the PurpleRequestField struct. I figured this one would be easy and
Richard Laager <rlaager@pidgin.im>
parents: 21990
diff changeset
152 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
153 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
154 {
64b88867fbdf Hide the PurpleRequestField struct. I figured this one would be easy and
Richard Laager <rlaager@pidgin.im>
parents: 21990
diff changeset
155 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
156
64b88867fbdf Hide the PurpleRequestField struct. I figured this one would be easy and
Richard Laager <rlaager@pidgin.im>
parents: 21990
diff changeset
157 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
158 }
64b88867fbdf Hide the PurpleRequestField struct. I figured this one would be easy and
Richard Laager <rlaager@pidgin.im>
parents: 21990
diff changeset
159
8286
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
160 gboolean
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
161 purple_request_fields_all_required_filled(const PurpleRequestFields *fields)
8286
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
162 {
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
163 GList *l;
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
164
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
165 g_return_val_if_fail(fields != NULL, FALSE);
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
166
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
167 for (l = fields->required_fields; l != NULL; l = l->next)
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
168 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
169 PurpleRequestField *field = (PurpleRequestField *)l->data;
8286
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
170
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
171 switch (purple_request_field_get_type(field))
8286
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
172 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
173 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
174 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
175 *(purple_request_field_string_get_value(field)) == '\0')
8286
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
176 return FALSE;
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
177
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
178 break;
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
179
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
180 default:
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
181 break;
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
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
185 return TRUE;
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
186 }
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
187
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
188 PurpleRequestField *
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
189 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
190 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
191 PurpleRequestField *field;
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
192
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
193 g_return_val_if_fail(fields != NULL, NULL);
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
194 g_return_val_if_fail(id != NULL, NULL);
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
195
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
196 field = g_hash_table_lookup(fields->fields, id);
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
197
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
198 g_return_val_if_fail(field != NULL, NULL);
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
199
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
200 return field;
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
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
203 const char *
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
204 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
205 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
206 PurpleRequestField *field;
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
207
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
208 g_return_val_if_fail(fields != NULL, NULL);
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
209 g_return_val_if_fail(id != NULL, NULL);
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
210
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
211 if ((field = purple_request_fields_get_field(fields, id)) == NULL)
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
212 return NULL;
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
213
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
214 return purple_request_field_string_get_value(field);
5807
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
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
217 int
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
218 purple_request_fields_get_integer(const PurpleRequestFields *fields,
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
219 const char *id)
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
220 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
221 PurpleRequestField *field;
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
222
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
223 g_return_val_if_fail(fields != NULL, 0);
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
224 g_return_val_if_fail(id != NULL, 0);
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
225
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
226 if ((field = purple_request_fields_get_field(fields, id)) == NULL)
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
227 return 0;
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
228
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
229 return purple_request_field_int_get_value(field);
5807
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
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
232 gboolean
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
233 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
234 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
235 PurpleRequestField *field;
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
236
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
237 g_return_val_if_fail(fields != NULL, FALSE);
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
238 g_return_val_if_fail(id != NULL, FALSE);
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
239
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
240 if ((field = purple_request_fields_get_field(fields, id)) == NULL)
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
241 return FALSE;
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
242
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
243 return purple_request_field_bool_get_value(field);
5807
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
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
246 int
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
247 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
248 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
249 PurpleRequestField *field;
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
250
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
251 g_return_val_if_fail(fields != NULL, -1);
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
252 g_return_val_if_fail(id != NULL, -1);
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
253
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
254 if ((field = purple_request_fields_get_field(fields, id)) == NULL)
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
255 return -1;
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
256
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
257 return purple_request_field_choice_get_value(field);
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
258 }
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
259
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
260 PurpleAccount *
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
261 purple_request_fields_get_account(const PurpleRequestFields *fields,
8286
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
262 const char *id)
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
263 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
264 PurpleRequestField *field;
8286
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
265
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
266 g_return_val_if_fail(fields != NULL, NULL);
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
267 g_return_val_if_fail(id != NULL, NULL);
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
268
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
269 if ((field = purple_request_fields_get_field(fields, id)) == NULL)
8286
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
270 return NULL;
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
271
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
272 return purple_request_field_account_get_value(field);
8286
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
273 }
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
274
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
275 PurpleRequestFieldGroup *
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
276 purple_request_field_group_new(const char *title)
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
277 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
278 PurpleRequestFieldGroup *group;
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
279
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
280 group = g_new0(PurpleRequestFieldGroup, 1);
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
281
14097
0c340861ab79 [gaim-migrate @ 16638]
Mark Doliner <markdoliner@pidgin.im>
parents: 13283
diff changeset
282 group->title = g_strdup(title);
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
283
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
284 return group;
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
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
287 void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
288 purple_request_field_group_destroy(PurpleRequestFieldGroup *group)
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
289 {
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
290 g_return_if_fail(group != NULL);
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
291
14097
0c340861ab79 [gaim-migrate @ 16638]
Mark Doliner <markdoliner@pidgin.im>
parents: 13283
diff changeset
292 g_free(group->title);
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
293
40764
d687fda4047d Add a compatiblity layer for g_s?list_free_full and port everything to it.
Gary Kramlich <grim@reaperworld.com>
parents: 40755
diff changeset
294 g_list_free_full(group->fields,
d687fda4047d Add a compatiblity layer for g_s?list_free_full and port everything to it.
Gary Kramlich <grim@reaperworld.com>
parents: 40755
diff changeset
295 (GDestroyNotify)purple_request_field_destroy);
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
296
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
297 g_free(group);
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
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
300 void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
301 purple_request_field_group_add_field(PurpleRequestFieldGroup *group,
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
302 PurpleRequestField *field)
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
303 {
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
304 g_return_if_fail(group != NULL);
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
305 g_return_if_fail(field != NULL);
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
306
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
307 group->fields = g_list_append(group->fields, field);
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
308
8286
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
309 if (group->fields_list != NULL)
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
310 {
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
311 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
312 g_strdup(purple_request_field_get_id(field)), field);
14149
df0304d74e95 [gaim-migrate @ 16710]
Daniel Atallah <datallah@pidgin.im>
parents: 14128
diff changeset
313
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
314 if (purple_request_field_is_required(field))
14149
df0304d74e95 [gaim-migrate @ 16710]
Daniel Atallah <datallah@pidgin.im>
parents: 14128
diff changeset
315 {
df0304d74e95 [gaim-migrate @ 16710]
Daniel Atallah <datallah@pidgin.im>
parents: 14128
diff changeset
316 group->fields_list->required_fields =
df0304d74e95 [gaim-migrate @ 16710]
Daniel Atallah <datallah@pidgin.im>
parents: 14128
diff changeset
317 g_list_append(group->fields_list->required_fields, field);
df0304d74e95 [gaim-migrate @ 16710]
Daniel Atallah <datallah@pidgin.im>
parents: 14128
diff changeset
318 }
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
319 }
8286
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
320
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
321 field->group = group;
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
322
5807
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
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
325 const char *
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
326 purple_request_field_group_get_title(const PurpleRequestFieldGroup *group)
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
327 {
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
328 g_return_val_if_fail(group != NULL, NULL);
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
329
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
330 return group->title;
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
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
333 GList *
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
334 purple_request_field_group_get_fields(const PurpleRequestFieldGroup *group)
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
335 {
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
336 g_return_val_if_fail(group != NULL, NULL);
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
337
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
338 return group->fields;
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
339 }
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
340
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
341 PurpleRequestField *
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
342 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
343 PurpleRequestFieldType type)
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
344 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
345 PurpleRequestField *field;
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
346
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
347 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
348 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
349
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
350 field = g_new0(PurpleRequestField, 1);
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
351
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
352 field->id = g_strdup(id);
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
353 field->type = type;
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
354
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
355 purple_request_field_set_label(field, text);
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
356 purple_request_field_set_visible(field, TRUE);
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
357
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
358 return field;
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
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
361 void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
362 purple_request_field_destroy(PurpleRequestField *field)
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
363 {
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
364 g_return_if_fail(field != NULL);
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
365
14097
0c340861ab79 [gaim-migrate @ 16638]
Mark Doliner <markdoliner@pidgin.im>
parents: 13283
diff changeset
366 g_free(field->id);
0c340861ab79 [gaim-migrate @ 16638]
Mark Doliner <markdoliner@pidgin.im>
parents: 13283
diff changeset
367 g_free(field->label);
0c340861ab79 [gaim-migrate @ 16638]
Mark Doliner <markdoliner@pidgin.im>
parents: 13283
diff changeset
368 g_free(field->type_hint);
8285
22b999a12246 [gaim-migrate @ 9009]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
369
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
370 if (field->type == PURPLE_REQUEST_FIELD_STRING)
7898
83687727b4a3 [gaim-migrate @ 8558]
Christian Hammond <chipx86@chipx86.com>
parents: 7843
diff changeset
371 {
14097
0c340861ab79 [gaim-migrate @ 16638]
Mark Doliner <markdoliner@pidgin.im>
parents: 13283
diff changeset
372 g_free(field->u.string.default_value);
0c340861ab79 [gaim-migrate @ 16638]
Mark Doliner <markdoliner@pidgin.im>
parents: 13283
diff changeset
373 g_free(field->u.string.value);
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
374 }
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
375 else if (field->type == PURPLE_REQUEST_FIELD_CHOICE)
7898
83687727b4a3 [gaim-migrate @ 8558]
Christian Hammond <chipx86@chipx86.com>
parents: 7843
diff changeset
376 {
83687727b4a3 [gaim-migrate @ 8558]
Christian Hammond <chipx86@chipx86.com>
parents: 7843
diff changeset
377 if (field->u.choice.labels != NULL)
83687727b4a3 [gaim-migrate @ 8558]
Christian Hammond <chipx86@chipx86.com>
parents: 7843
diff changeset
378 {
40764
d687fda4047d Add a compatiblity layer for g_s?list_free_full and port everything to it.
Gary Kramlich <grim@reaperworld.com>
parents: 40755
diff changeset
379 g_list_free_full(field->u.choice.labels, (GDestroyNotify)g_free);
7898
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 {
40764
d687fda4047d Add a compatiblity layer for g_s?list_free_full and port everything to it.
Gary Kramlich <grim@reaperworld.com>
parents: 40755
diff changeset
386 g_list_free_full(field->u.list.items, (GDestroyNotify)g_free);
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
387 }
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
388
7898
83687727b4a3 [gaim-migrate @ 8558]
Christian Hammond <chipx86@chipx86.com>
parents: 7843
diff changeset
389 if (field->u.list.selected != NULL)
83687727b4a3 [gaim-migrate @ 8558]
Christian Hammond <chipx86@chipx86.com>
parents: 7843
diff changeset
390 {
40764
d687fda4047d Add a compatiblity layer for g_s?list_free_full and port everything to it.
Gary Kramlich <grim@reaperworld.com>
parents: 40755
diff changeset
391 g_list_free_full(field->u.list.selected, (GDestroyNotify)g_free);
7898
83687727b4a3 [gaim-migrate @ 8558]
Christian Hammond <chipx86@chipx86.com>
parents: 7843
diff changeset
392 }
7909
f2b88b6b97a7 [gaim-migrate @ 8569]
Christian Hammond <chipx86@chipx86.com>
parents: 7905
diff changeset
393
f2b88b6b97a7 [gaim-migrate @ 8569]
Christian Hammond <chipx86@chipx86.com>
parents: 7905
diff changeset
394 g_hash_table_destroy(field->u.list.item_data);
7964
10d58eb8a16a [gaim-migrate @ 8641]
Christian Hammond <chipx86@chipx86.com>
parents: 7962
diff changeset
395 g_hash_table_destroy(field->u.list.selected_table);
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
396 }
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
397
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
398 g_free(field);
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
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
401 void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
402 purple_request_field_set_label(PurpleRequestField *field, const char *label)
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
403 {
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
404 g_return_if_fail(field != NULL);
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
405
14097
0c340861ab79 [gaim-migrate @ 16638]
Mark Doliner <markdoliner@pidgin.im>
parents: 13283
diff changeset
406 g_free(field->label);
0c340861ab79 [gaim-migrate @ 16638]
Mark Doliner <markdoliner@pidgin.im>
parents: 13283
diff changeset
407 field->label = g_strdup(label);
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
408 }
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
409
7904
266d6d5c68ac [gaim-migrate @ 8564]
Christian Hammond <chipx86@chipx86.com>
parents: 7902
diff changeset
410 void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
411 purple_request_field_set_visible(PurpleRequestField *field, gboolean visible)
7904
266d6d5c68ac [gaim-migrate @ 8564]
Christian Hammond <chipx86@chipx86.com>
parents: 7902
diff changeset
412 {
266d6d5c68ac [gaim-migrate @ 8564]
Christian Hammond <chipx86@chipx86.com>
parents: 7902
diff changeset
413 g_return_if_fail(field != NULL);
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 field->visible = visible;
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
8285
22b999a12246 [gaim-migrate @ 9009]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
418 void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
419 purple_request_field_set_type_hint(PurpleRequestField *field,
8285
22b999a12246 [gaim-migrate @ 9009]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
420 const char *type_hint)
22b999a12246 [gaim-migrate @ 9009]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
421 {
22b999a12246 [gaim-migrate @ 9009]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
422 g_return_if_fail(field != NULL);
22b999a12246 [gaim-migrate @ 9009]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
423
14097
0c340861ab79 [gaim-migrate @ 16638]
Mark Doliner <markdoliner@pidgin.im>
parents: 13283
diff changeset
424 g_free(field->type_hint);
0c340861ab79 [gaim-migrate @ 16638]
Mark Doliner <markdoliner@pidgin.im>
parents: 13283
diff changeset
425 field->type_hint = g_strdup(type_hint);
8285
22b999a12246 [gaim-migrate @ 9009]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
426 }
22b999a12246 [gaim-migrate @ 9009]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
427
8286
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
428 void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
429 purple_request_field_set_required(PurpleRequestField *field, gboolean required)
8286
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
430 {
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
431 g_return_if_fail(field != NULL);
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 if (field->required == required)
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
434 return;
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
435
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
436 field->required = required;
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 if (field->group != NULL)
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 (required)
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 field->group->fields_list->required_fields =
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
443 g_list_append(field->group->fields_list->required_fields,
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
444 field);
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
445 }
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
446 else
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 field->group->fields_list->required_fields =
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
449 g_list_remove(field->group->fields_list->required_fields,
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
450 field);
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
451 }
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
452 }
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
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
455 PurpleRequestFieldType
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
456 purple_request_field_get_type(const PurpleRequestField *field)
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
457 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
458 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
459
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
460 return field->type;
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
24984
64b88867fbdf Hide the PurpleRequestField struct. I figured this one would be easy and
Richard Laager <rlaager@pidgin.im>
parents: 21990
diff changeset
463 PurpleRequestFieldGroup *
64b88867fbdf Hide the PurpleRequestField struct. I figured this one would be easy and
Richard Laager <rlaager@pidgin.im>
parents: 21990
diff changeset
464 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
465 {
64b88867fbdf Hide the PurpleRequestField struct. I figured this one would be easy and
Richard Laager <rlaager@pidgin.im>
parents: 21990
diff changeset
466 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
467
64b88867fbdf Hide the PurpleRequestField struct. I figured this one would be easy and
Richard Laager <rlaager@pidgin.im>
parents: 21990
diff changeset
468 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
469 }
64b88867fbdf Hide the PurpleRequestField struct. I figured this one would be easy and
Richard Laager <rlaager@pidgin.im>
parents: 21990
diff changeset
470
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
471 const char *
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
472 purple_request_field_get_id(const PurpleRequestField *field)
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
473 {
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
474 g_return_val_if_fail(field != NULL, NULL);
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 return field->id;
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
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
479 const char *
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
480 purple_request_field_get_label(const PurpleRequestField *field)
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
481 {
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
482 g_return_val_if_fail(field != NULL, NULL);
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 return field->label;
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
7904
266d6d5c68ac [gaim-migrate @ 8564]
Christian Hammond <chipx86@chipx86.com>
parents: 7902
diff changeset
487 gboolean
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
488 purple_request_field_is_visible(const PurpleRequestField *field)
7904
266d6d5c68ac [gaim-migrate @ 8564]
Christian Hammond <chipx86@chipx86.com>
parents: 7902
diff changeset
489 {
266d6d5c68ac [gaim-migrate @ 8564]
Christian Hammond <chipx86@chipx86.com>
parents: 7902
diff changeset
490 g_return_val_if_fail(field != NULL, FALSE);
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 return field->visible;
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
8285
22b999a12246 [gaim-migrate @ 9009]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
495 const char *
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
496 purple_request_field_get_type_hint(const PurpleRequestField *field)
8285
22b999a12246 [gaim-migrate @ 9009]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
497 {
22b999a12246 [gaim-migrate @ 9009]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
498 g_return_val_if_fail(field != NULL, NULL);
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 return field->type_hint;
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
8286
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
503 gboolean
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
504 purple_request_field_is_required(const PurpleRequestField *field)
8286
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
505 {
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
506 g_return_val_if_fail(field != NULL, FALSE);
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 return field->required;
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
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
511 PurpleRequestField *
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
512 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
513 const char *default_value, gboolean multiline)
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
514 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
515 PurpleRequestField *field;
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
516
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
517 g_return_val_if_fail(id != NULL, NULL);
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
518 g_return_val_if_fail(text != NULL, NULL);
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
519
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
520 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
521
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
522 field->u.string.multiline = multiline;
7048
53e1ea65540e [gaim-migrate @ 7611]
Christian Hammond <chipx86@chipx86.com>
parents: 7047
diff changeset
523 field->u.string.editable = TRUE;
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
524
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
525 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
526 purple_request_field_string_set_value(field, default_value);
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
527
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
528 return field;
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
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
531 void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
532 purple_request_field_string_set_default_value(PurpleRequestField *field,
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
533 const char *default_value)
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
534 {
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
535 g_return_if_fail(field != NULL);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
536 g_return_if_fail(field->type == PURPLE_REQUEST_FIELD_STRING);
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
537
14097
0c340861ab79 [gaim-migrate @ 16638]
Mark Doliner <markdoliner@pidgin.im>
parents: 13283
diff changeset
538 g_free(field->u.string.default_value);
0c340861ab79 [gaim-migrate @ 16638]
Mark Doliner <markdoliner@pidgin.im>
parents: 13283
diff changeset
539 field->u.string.default_value = g_strdup(default_value);
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
540 }
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
541
5808
480370b3188c [gaim-migrate @ 6238]
Christian Hammond <chipx86@chipx86.com>
parents: 5807
diff changeset
542 void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
543 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
544 {
480370b3188c [gaim-migrate @ 6238]
Christian Hammond <chipx86@chipx86.com>
parents: 5807
diff changeset
545 g_return_if_fail(field != NULL);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
546 g_return_if_fail(field->type == PURPLE_REQUEST_FIELD_STRING);
5808
480370b3188c [gaim-migrate @ 6238]
Christian Hammond <chipx86@chipx86.com>
parents: 5807
diff changeset
547
14097
0c340861ab79 [gaim-migrate @ 16638]
Mark Doliner <markdoliner@pidgin.im>
parents: 13283
diff changeset
548 g_free(field->u.string.value);
0c340861ab79 [gaim-migrate @ 16638]
Mark Doliner <markdoliner@pidgin.im>
parents: 13283
diff changeset
549 field->u.string.value = g_strdup(value);
5808
480370b3188c [gaim-migrate @ 6238]
Christian Hammond <chipx86@chipx86.com>
parents: 5807
diff changeset
550 }
480370b3188c [gaim-migrate @ 6238]
Christian Hammond <chipx86@chipx86.com>
parents: 5807
diff changeset
551
7047
0cefcbc12508 [gaim-migrate @ 7610]
Christian Hammond <chipx86@chipx86.com>
parents: 7035
diff changeset
552 void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
553 purple_request_field_string_set_masked(PurpleRequestField *field, gboolean masked)
7047
0cefcbc12508 [gaim-migrate @ 7610]
Christian Hammond <chipx86@chipx86.com>
parents: 7035
diff changeset
554 {
0cefcbc12508 [gaim-migrate @ 7610]
Christian Hammond <chipx86@chipx86.com>
parents: 7035
diff changeset
555 g_return_if_fail(field != NULL);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
556 g_return_if_fail(field->type == PURPLE_REQUEST_FIELD_STRING);
7047
0cefcbc12508 [gaim-migrate @ 7610]
Christian Hammond <chipx86@chipx86.com>
parents: 7035
diff changeset
557
0cefcbc12508 [gaim-migrate @ 7610]
Christian Hammond <chipx86@chipx86.com>
parents: 7035
diff changeset
558 field->u.string.masked = masked;
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
0cefcbc12508 [gaim-migrate @ 7610]
Christian Hammond <chipx86@chipx86.com>
parents: 7035
diff changeset
561 void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
562 purple_request_field_string_set_editable(PurpleRequestField *field,
7047
0cefcbc12508 [gaim-migrate @ 7610]
Christian Hammond <chipx86@chipx86.com>
parents: 7035
diff changeset
563 gboolean editable)
0cefcbc12508 [gaim-migrate @ 7610]
Christian Hammond <chipx86@chipx86.com>
parents: 7035
diff changeset
564 {
0cefcbc12508 [gaim-migrate @ 7610]
Christian Hammond <chipx86@chipx86.com>
parents: 7035
diff changeset
565 g_return_if_fail(field != NULL);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
566 g_return_if_fail(field->type == PURPLE_REQUEST_FIELD_STRING);
7047
0cefcbc12508 [gaim-migrate @ 7610]
Christian Hammond <chipx86@chipx86.com>
parents: 7035
diff changeset
567
0cefcbc12508 [gaim-migrate @ 7610]
Christian Hammond <chipx86@chipx86.com>
parents: 7035
diff changeset
568 field->u.string.editable = editable;
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
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
571 const char *
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
572 purple_request_field_string_get_default_value(const PurpleRequestField *field)
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
573 {
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
574 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
575 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
576
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
577 return field->u.string.default_value;
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
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
580 const char *
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
581 purple_request_field_string_get_value(const PurpleRequestField *field)
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
582 {
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
583 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
584 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
585
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
586 return field->u.string.value;
7047
0cefcbc12508 [gaim-migrate @ 7610]
Christian Hammond <chipx86@chipx86.com>
parents: 7035
diff changeset
587 }
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
588
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
589 gboolean
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
590 purple_request_field_string_is_multiline(const PurpleRequestField *field)
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
591 {
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
592 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
593 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
594
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
595 return field->u.string.multiline;
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
7047
0cefcbc12508 [gaim-migrate @ 7610]
Christian Hammond <chipx86@chipx86.com>
parents: 7035
diff changeset
598 gboolean
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
599 purple_request_field_string_is_masked(const PurpleRequestField *field)
7047
0cefcbc12508 [gaim-migrate @ 7610]
Christian Hammond <chipx86@chipx86.com>
parents: 7035
diff changeset
600 {
0cefcbc12508 [gaim-migrate @ 7610]
Christian Hammond <chipx86@chipx86.com>
parents: 7035
diff changeset
601 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
602 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
603
0cefcbc12508 [gaim-migrate @ 7610]
Christian Hammond <chipx86@chipx86.com>
parents: 7035
diff changeset
604 return field->u.string.masked;
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
0cefcbc12508 [gaim-migrate @ 7610]
Christian Hammond <chipx86@chipx86.com>
parents: 7035
diff changeset
607 gboolean
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
608 purple_request_field_string_is_editable(const PurpleRequestField *field)
7047
0cefcbc12508 [gaim-migrate @ 7610]
Christian Hammond <chipx86@chipx86.com>
parents: 7035
diff changeset
609 {
0cefcbc12508 [gaim-migrate @ 7610]
Christian Hammond <chipx86@chipx86.com>
parents: 7035
diff changeset
610 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
611 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
612
0cefcbc12508 [gaim-migrate @ 7610]
Christian Hammond <chipx86@chipx86.com>
parents: 7035
diff changeset
613 return field->u.string.editable;
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
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
616 PurpleRequestField *
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
617 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
618 int default_value)
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
619 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
620 PurpleRequestField *field;
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
621
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
622 g_return_val_if_fail(id != NULL, NULL);
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
623 g_return_val_if_fail(text != NULL, NULL);
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
624
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
625 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
626
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
627 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
628 purple_request_field_int_set_value(field, default_value);
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
629
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
630 return field;
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
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
633 void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
634 purple_request_field_int_set_default_value(PurpleRequestField *field,
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
635 int default_value)
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
636 {
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
637 g_return_if_fail(field != NULL);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
638 g_return_if_fail(field->type == PURPLE_REQUEST_FIELD_INTEGER);
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
639
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
640 field->u.integer.default_value = default_value;
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
5808
480370b3188c [gaim-migrate @ 6238]
Christian Hammond <chipx86@chipx86.com>
parents: 5807
diff changeset
643 void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
644 purple_request_field_int_set_value(PurpleRequestField *field, int value)
5808
480370b3188c [gaim-migrate @ 6238]
Christian Hammond <chipx86@chipx86.com>
parents: 5807
diff changeset
645 {
480370b3188c [gaim-migrate @ 6238]
Christian Hammond <chipx86@chipx86.com>
parents: 5807
diff changeset
646 g_return_if_fail(field != NULL);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
647 g_return_if_fail(field->type == PURPLE_REQUEST_FIELD_INTEGER);
5808
480370b3188c [gaim-migrate @ 6238]
Christian Hammond <chipx86@chipx86.com>
parents: 5807
diff changeset
648
480370b3188c [gaim-migrate @ 6238]
Christian Hammond <chipx86@chipx86.com>
parents: 5807
diff changeset
649 field->u.integer.value = value;
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
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
652 int
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
653 purple_request_field_int_get_default_value(const PurpleRequestField *field)
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
654 {
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
655 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
656 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
657
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
658 return field->u.integer.default_value;
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
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
661 int
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
662 purple_request_field_int_get_value(const PurpleRequestField *field)
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
663 {
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
664 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
665 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
666
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
667 return field->u.integer.value;
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
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
670 PurpleRequestField *
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
671 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
672 gboolean default_value)
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
673 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
674 PurpleRequestField *field;
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
675
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
676 g_return_val_if_fail(id != NULL, NULL);
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
677 g_return_val_if_fail(text != NULL, NULL);
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
678
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
679 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
680
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
681 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
682 purple_request_field_bool_set_value(field, default_value);
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
683
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
684 return field;
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
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
687 void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
688 purple_request_field_bool_set_default_value(PurpleRequestField *field,
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
689 gboolean default_value)
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
690 {
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
691 g_return_if_fail(field != NULL);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
692 g_return_if_fail(field->type == PURPLE_REQUEST_FIELD_BOOLEAN);
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
693
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
694 field->u.boolean.default_value = default_value;
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
5808
480370b3188c [gaim-migrate @ 6238]
Christian Hammond <chipx86@chipx86.com>
parents: 5807
diff changeset
697 void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
698 purple_request_field_bool_set_value(PurpleRequestField *field, gboolean value)
5808
480370b3188c [gaim-migrate @ 6238]
Christian Hammond <chipx86@chipx86.com>
parents: 5807
diff changeset
699 {
480370b3188c [gaim-migrate @ 6238]
Christian Hammond <chipx86@chipx86.com>
parents: 5807
diff changeset
700 g_return_if_fail(field != NULL);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
701 g_return_if_fail(field->type == PURPLE_REQUEST_FIELD_BOOLEAN);
5808
480370b3188c [gaim-migrate @ 6238]
Christian Hammond <chipx86@chipx86.com>
parents: 5807
diff changeset
702
480370b3188c [gaim-migrate @ 6238]
Christian Hammond <chipx86@chipx86.com>
parents: 5807
diff changeset
703 field->u.boolean.value = value;
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
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
706 gboolean
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
707 purple_request_field_bool_get_default_value(const PurpleRequestField *field)
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
708 {
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
709 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
710 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
711
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
712 return field->u.boolean.default_value;
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
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
715 gboolean
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
716 purple_request_field_bool_get_value(const PurpleRequestField *field)
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
717 {
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
718 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
719 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
720
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
721 return field->u.boolean.value;
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
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
724 PurpleRequestField *
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
725 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
726 int default_value)
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
727 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
728 PurpleRequestField *field;
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
729
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
730 g_return_val_if_fail(id != NULL, NULL);
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
731 g_return_val_if_fail(text != NULL, NULL);
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
732
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
733 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
734
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
735 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
736 purple_request_field_choice_set_value(field, default_value);
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
737
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
738 return field;
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
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
741 void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
742 purple_request_field_choice_add(PurpleRequestField *field, const char *label)
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
743 {
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
744 g_return_if_fail(field != NULL);
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
745 g_return_if_fail(label != NULL);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
746 g_return_if_fail(field->type == PURPLE_REQUEST_FIELD_CHOICE);
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
747
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
748 field->u.choice.labels = g_list_append(field->u.choice.labels,
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
749 g_strdup(label));
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
750 }
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
751
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
752 void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
753 purple_request_field_choice_set_default_value(PurpleRequestField *field,
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
754 int default_value)
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
755 {
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
756 g_return_if_fail(field != NULL);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
757 g_return_if_fail(field->type == PURPLE_REQUEST_FIELD_CHOICE);
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
758
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
759 field->u.choice.default_value = default_value;
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
5808
480370b3188c [gaim-migrate @ 6238]
Christian Hammond <chipx86@chipx86.com>
parents: 5807
diff changeset
762 void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
763 purple_request_field_choice_set_value(PurpleRequestField *field,
5808
480370b3188c [gaim-migrate @ 6238]
Christian Hammond <chipx86@chipx86.com>
parents: 5807
diff changeset
764 int value)
480370b3188c [gaim-migrate @ 6238]
Christian Hammond <chipx86@chipx86.com>
parents: 5807
diff changeset
765 {
480370b3188c [gaim-migrate @ 6238]
Christian Hammond <chipx86@chipx86.com>
parents: 5807
diff changeset
766 g_return_if_fail(field != NULL);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
767 g_return_if_fail(field->type == PURPLE_REQUEST_FIELD_CHOICE);
5808
480370b3188c [gaim-migrate @ 6238]
Christian Hammond <chipx86@chipx86.com>
parents: 5807
diff changeset
768
480370b3188c [gaim-migrate @ 6238]
Christian Hammond <chipx86@chipx86.com>
parents: 5807
diff changeset
769 field->u.choice.value = value;
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
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
772 int
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
773 purple_request_field_choice_get_default_value(const PurpleRequestField *field)
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
774 {
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
775 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
776 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
777
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
778 return field->u.choice.default_value;
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
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
781 int
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
782 purple_request_field_choice_get_value(const PurpleRequestField *field)
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
783 {
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
784 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
785 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
786
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
787 return field->u.choice.value;
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
5809
3550646492e0 [gaim-migrate @ 6239]
Christian Hammond <chipx86@chipx86.com>
parents: 5808
diff changeset
790 GList *
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
791 purple_request_field_choice_get_labels(const PurpleRequestField *field)
5809
3550646492e0 [gaim-migrate @ 6239]
Christian Hammond <chipx86@chipx86.com>
parents: 5808
diff changeset
792 {
3550646492e0 [gaim-migrate @ 6239]
Christian Hammond <chipx86@chipx86.com>
parents: 5808
diff changeset
793 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
794 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
795
5810
1d659318f194 [gaim-migrate @ 6240]
Christian Hammond <chipx86@chipx86.com>
parents: 5809
diff changeset
796 return field->u.choice.labels;
5809
3550646492e0 [gaim-migrate @ 6239]
Christian Hammond <chipx86@chipx86.com>
parents: 5808
diff changeset
797 }
3550646492e0 [gaim-migrate @ 6239]
Christian Hammond <chipx86@chipx86.com>
parents: 5808
diff changeset
798
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
799 PurpleRequestField *
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
800 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
801 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
802 PurpleRequestField *field;
7898
83687727b4a3 [gaim-migrate @ 8558]
Christian Hammond <chipx86@chipx86.com>
parents: 7843
diff changeset
803
7909
f2b88b6b97a7 [gaim-migrate @ 8569]
Christian Hammond <chipx86@chipx86.com>
parents: 7905
diff changeset
804 g_return_val_if_fail(id != NULL, NULL);
7898
83687727b4a3 [gaim-migrate @ 8558]
Christian Hammond <chipx86@chipx86.com>
parents: 7843
diff changeset
805
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
806 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
807
7909
f2b88b6b97a7 [gaim-migrate @ 8569]
Christian Hammond <chipx86@chipx86.com>
parents: 7905
diff changeset
808 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
809 g_free, NULL);
7898
83687727b4a3 [gaim-migrate @ 8558]
Christian Hammond <chipx86@chipx86.com>
parents: 7843
diff changeset
810
7964
10d58eb8a16a [gaim-migrate @ 8641]
Christian Hammond <chipx86@chipx86.com>
parents: 7962
diff changeset
811 field->u.list.selected_table =
10d58eb8a16a [gaim-migrate @ 8641]
Christian Hammond <chipx86@chipx86.com>
parents: 7962
diff changeset
812 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
813
7898
83687727b4a3 [gaim-migrate @ 8558]
Christian Hammond <chipx86@chipx86.com>
parents: 7843
diff changeset
814 return field;
83687727b4a3 [gaim-migrate @ 8558]
Christian Hammond <chipx86@chipx86.com>
parents: 7843
diff changeset
815 }
83687727b4a3 [gaim-migrate @ 8558]
Christian Hammond <chipx86@chipx86.com>
parents: 7843
diff changeset
816
83687727b4a3 [gaim-migrate @ 8558]
Christian Hammond <chipx86@chipx86.com>
parents: 7843
diff changeset
817 void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
818 purple_request_field_list_set_multi_select(PurpleRequestField *field,
7899
b908d0b9035a [gaim-migrate @ 8559]
Christian Hammond <chipx86@chipx86.com>
parents: 7898
diff changeset
819 gboolean multi_select)
b908d0b9035a [gaim-migrate @ 8559]
Christian Hammond <chipx86@chipx86.com>
parents: 7898
diff changeset
820 {
b908d0b9035a [gaim-migrate @ 8559]
Christian Hammond <chipx86@chipx86.com>
parents: 7898
diff changeset
821 g_return_if_fail(field != NULL);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
822 g_return_if_fail(field->type == PURPLE_REQUEST_FIELD_LIST);
7899
b908d0b9035a [gaim-migrate @ 8559]
Christian Hammond <chipx86@chipx86.com>
parents: 7898
diff changeset
823
b908d0b9035a [gaim-migrate @ 8559]
Christian Hammond <chipx86@chipx86.com>
parents: 7898
diff changeset
824 field->u.list.multiple_selection = multi_select;
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
b908d0b9035a [gaim-migrate @ 8559]
Christian Hammond <chipx86@chipx86.com>
parents: 7898
diff changeset
827 gboolean
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
828 purple_request_field_list_get_multi_select(const PurpleRequestField *field)
7899
b908d0b9035a [gaim-migrate @ 8559]
Christian Hammond <chipx86@chipx86.com>
parents: 7898
diff changeset
829 {
b908d0b9035a [gaim-migrate @ 8559]
Christian Hammond <chipx86@chipx86.com>
parents: 7898
diff changeset
830 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
831 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
832
b908d0b9035a [gaim-migrate @ 8559]
Christian Hammond <chipx86@chipx86.com>
parents: 7898
diff changeset
833 return field->u.list.multiple_selection;
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
7909
f2b88b6b97a7 [gaim-migrate @ 8569]
Christian Hammond <chipx86@chipx86.com>
parents: 7905
diff changeset
836 void *
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
837 purple_request_field_list_get_data(const PurpleRequestField *field,
7909
f2b88b6b97a7 [gaim-migrate @ 8569]
Christian Hammond <chipx86@chipx86.com>
parents: 7905
diff changeset
838 const char *text)
f2b88b6b97a7 [gaim-migrate @ 8569]
Christian Hammond <chipx86@chipx86.com>
parents: 7905
diff changeset
839 {
f2b88b6b97a7 [gaim-migrate @ 8569]
Christian Hammond <chipx86@chipx86.com>
parents: 7905
diff changeset
840 g_return_val_if_fail(field != NULL, NULL);
f2b88b6b97a7 [gaim-migrate @ 8569]
Christian Hammond <chipx86@chipx86.com>
parents: 7905
diff changeset
841 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
842 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
843
f2b88b6b97a7 [gaim-migrate @ 8569]
Christian Hammond <chipx86@chipx86.com>
parents: 7905
diff changeset
844 return g_hash_table_lookup(field->u.list.item_data, text);
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
7899
b908d0b9035a [gaim-migrate @ 8559]
Christian Hammond <chipx86@chipx86.com>
parents: 7898
diff changeset
847 void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
848 purple_request_field_list_add(PurpleRequestField *field, const char *item,
7909
f2b88b6b97a7 [gaim-migrate @ 8569]
Christian Hammond <chipx86@chipx86.com>
parents: 7905
diff changeset
849 void *data)
7898
83687727b4a3 [gaim-migrate @ 8558]
Christian Hammond <chipx86@chipx86.com>
parents: 7843
diff changeset
850 {
24899
54719498c900 Deprecate purple_request_field_list_add() in favor of the new
Richard Laager <rlaager@pidgin.im>
parents: 24892
diff changeset
851 purple_request_field_list_add_icon(field, item, NULL, data);
7898
83687727b4a3 [gaim-migrate @ 8558]
Christian Hammond <chipx86@chipx86.com>
parents: 7843
diff changeset
852 }
83687727b4a3 [gaim-migrate @ 8558]
Christian Hammond <chipx86@chipx86.com>
parents: 7843
diff changeset
853
7901
f09d051b649d [gaim-migrate @ 8561]
Christian Hammond <chipx86@chipx86.com>
parents: 7899
diff changeset
854 void
24625
4082cd694acb This patch comes from the combined work of contributors minstrel, NightFox,
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21990
diff changeset
855 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
856 void *data)
4082cd694acb This patch comes from the combined work of contributors minstrel, NightFox,
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21990
diff changeset
857 {
4082cd694acb This patch comes from the combined work of contributors minstrel, NightFox,
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21990
diff changeset
858 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
859 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
860 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
861 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
862
24899
54719498c900 Deprecate purple_request_field_list_add() in favor of the new
Richard Laager <rlaager@pidgin.im>
parents: 24892
diff changeset
863 if (icon_path)
54719498c900 Deprecate purple_request_field_list_add() in favor of the new
Richard Laager <rlaager@pidgin.im>
parents: 24892
diff changeset
864 {
54719498c900 Deprecate purple_request_field_list_add() in favor of the new
Richard Laager <rlaager@pidgin.im>
parents: 24892
diff changeset
865 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
866 {
54719498c900 Deprecate purple_request_field_list_add() in favor of the new
Richard Laager <rlaager@pidgin.im>
parents: 24892
diff changeset
867 GList *l;
54719498c900 Deprecate purple_request_field_list_add() in favor of the new
Richard Laager <rlaager@pidgin.im>
parents: 24892
diff changeset
868 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
869 {
54719498c900 Deprecate purple_request_field_list_add() in favor of the new
Richard Laager <rlaager@pidgin.im>
parents: 24892
diff changeset
870 /* 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
871 * 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
872 * 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
873 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
874 }
54719498c900 Deprecate purple_request_field_list_add() in favor of the new
Richard Laager <rlaager@pidgin.im>
parents: 24892
diff changeset
875 }
54719498c900 Deprecate purple_request_field_list_add() in favor of the new
Richard Laager <rlaager@pidgin.im>
parents: 24892
diff changeset
876 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
877 }
54719498c900 Deprecate purple_request_field_list_add() in favor of the new
Richard Laager <rlaager@pidgin.im>
parents: 24892
diff changeset
878 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
879 {
54719498c900 Deprecate purple_request_field_list_add() in favor of the new
Richard Laager <rlaager@pidgin.im>
parents: 24892
diff changeset
880 /* 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
881 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
882 }
54719498c900 Deprecate purple_request_field_list_add() in favor of the new
Richard Laager <rlaager@pidgin.im>
parents: 24892
diff changeset
883
24625
4082cd694acb This patch comes from the combined work of contributors minstrel, NightFox,
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21990
diff changeset
884 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
885 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
886 }
4082cd694acb This patch comes from the combined work of contributors minstrel, NightFox,
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21990
diff changeset
887
4082cd694acb This patch comes from the combined work of contributors minstrel, NightFox,
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21990
diff changeset
888 void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
889 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
890 {
6c04e5d38897 [gaim-migrate @ 8562]
Christian Hammond <chipx86@chipx86.com>
parents: 7901
diff changeset
891 g_return_if_fail(field != NULL);
6c04e5d38897 [gaim-migrate @ 8562]
Christian Hammond <chipx86@chipx86.com>
parents: 7901
diff changeset
892 g_return_if_fail(item != NULL);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
893 g_return_if_fail(field->type == PURPLE_REQUEST_FIELD_LIST);
7902
6c04e5d38897 [gaim-migrate @ 8562]
Christian Hammond <chipx86@chipx86.com>
parents: 7901
diff changeset
894
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
895 if (!purple_request_field_list_get_multi_select(field) &&
7964
10d58eb8a16a [gaim-migrate @ 8641]
Christian Hammond <chipx86@chipx86.com>
parents: 7962
diff changeset
896 field->u.list.selected != NULL)
10d58eb8a16a [gaim-migrate @ 8641]
Christian Hammond <chipx86@chipx86.com>
parents: 7962
diff changeset
897 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
898 purple_debug_warning("request",
7964
10d58eb8a16a [gaim-migrate @ 8641]
Christian Hammond <chipx86@chipx86.com>
parents: 7962
diff changeset
899 "More than one item added to non-multi-select "
10d58eb8a16a [gaim-migrate @ 8641]
Christian Hammond <chipx86@chipx86.com>
parents: 7962
diff changeset
900 "field %s\n",
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
901 purple_request_field_get_id(field));
7964
10d58eb8a16a [gaim-migrate @ 8641]
Christian Hammond <chipx86@chipx86.com>
parents: 7962
diff changeset
902 return;
10d58eb8a16a [gaim-migrate @ 8641]
Christian Hammond <chipx86@chipx86.com>
parents: 7962
diff changeset
903 }
10d58eb8a16a [gaim-migrate @ 8641]
Christian Hammond <chipx86@chipx86.com>
parents: 7962
diff changeset
904
7909
f2b88b6b97a7 [gaim-migrate @ 8569]
Christian Hammond <chipx86@chipx86.com>
parents: 7905
diff changeset
905 field->u.list.selected = g_list_append(field->u.list.selected,
f2b88b6b97a7 [gaim-migrate @ 8569]
Christian Hammond <chipx86@chipx86.com>
parents: 7905
diff changeset
906 g_strdup(item));
7964
10d58eb8a16a [gaim-migrate @ 8641]
Christian Hammond <chipx86@chipx86.com>
parents: 7962
diff changeset
907
10d58eb8a16a [gaim-migrate @ 8641]
Christian Hammond <chipx86@chipx86.com>
parents: 7962
diff changeset
908 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
909 }
6c04e5d38897 [gaim-migrate @ 8562]
Christian Hammond <chipx86@chipx86.com>
parents: 7901
diff changeset
910
6c04e5d38897 [gaim-migrate @ 8562]
Christian Hammond <chipx86@chipx86.com>
parents: 7901
diff changeset
911 void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
912 purple_request_field_list_clear_selected(PurpleRequestField *field)
7902
6c04e5d38897 [gaim-migrate @ 8562]
Christian Hammond <chipx86@chipx86.com>
parents: 7901
diff changeset
913 {
6c04e5d38897 [gaim-migrate @ 8562]
Christian Hammond <chipx86@chipx86.com>
parents: 7901
diff changeset
914 g_return_if_fail(field != NULL);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
915 g_return_if_fail(field->type == PURPLE_REQUEST_FIELD_LIST);
7902
6c04e5d38897 [gaim-migrate @ 8562]
Christian Hammond <chipx86@chipx86.com>
parents: 7901
diff changeset
916
7962
92ef549901f6 [gaim-migrate @ 8639]
Christian Hammond <chipx86@chipx86.com>
parents: 7909
diff changeset
917 if (field->u.list.selected != NULL)
7909
f2b88b6b97a7 [gaim-migrate @ 8569]
Christian Hammond <chipx86@chipx86.com>
parents: 7905
diff changeset
918 {
40764
d687fda4047d Add a compatiblity layer for g_s?list_free_full and port everything to it.
Gary Kramlich <grim@reaperworld.com>
parents: 40755
diff changeset
919 g_list_free_full(field->u.list.selected, (GDestroyNotify)g_free);
7962
92ef549901f6 [gaim-migrate @ 8639]
Christian Hammond <chipx86@chipx86.com>
parents: 7909
diff changeset
920 field->u.list.selected = NULL;
7909
f2b88b6b97a7 [gaim-migrate @ 8569]
Christian Hammond <chipx86@chipx86.com>
parents: 7905
diff changeset
921 }
7964
10d58eb8a16a [gaim-migrate @ 8641]
Christian Hammond <chipx86@chipx86.com>
parents: 7962
diff changeset
922
10d58eb8a16a [gaim-migrate @ 8641]
Christian Hammond <chipx86@chipx86.com>
parents: 7962
diff changeset
923 g_hash_table_destroy(field->u.list.selected_table);
10d58eb8a16a [gaim-migrate @ 8641]
Christian Hammond <chipx86@chipx86.com>
parents: 7962
diff changeset
924
10d58eb8a16a [gaim-migrate @ 8641]
Christian Hammond <chipx86@chipx86.com>
parents: 7962
diff changeset
925 field->u.list.selected_table =
10d58eb8a16a [gaim-migrate @ 8641]
Christian Hammond <chipx86@chipx86.com>
parents: 7962
diff changeset
926 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
927 }
6c04e5d38897 [gaim-migrate @ 8562]
Christian Hammond <chipx86@chipx86.com>
parents: 7901
diff changeset
928
6c04e5d38897 [gaim-migrate @ 8562]
Christian Hammond <chipx86@chipx86.com>
parents: 7901
diff changeset
929 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
930 purple_request_field_list_set_selected(PurpleRequestField *field, GList *items)
7901
f09d051b649d [gaim-migrate @ 8561]
Christian Hammond <chipx86@chipx86.com>
parents: 7899
diff changeset
931 {
18190
bcf28ef7e8ff Re-fix the DBus list handling code by killing const GList* / const GSList*
Richard Laager <rlaager@pidgin.im>
parents: 16490
diff changeset
932 GList *l;
7964
10d58eb8a16a [gaim-migrate @ 8641]
Christian Hammond <chipx86@chipx86.com>
parents: 7962
diff changeset
933
7901
f09d051b649d [gaim-migrate @ 8561]
Christian Hammond <chipx86@chipx86.com>
parents: 7899
diff changeset
934 g_return_if_fail(field != NULL);
f09d051b649d [gaim-migrate @ 8561]
Christian Hammond <chipx86@chipx86.com>
parents: 7899
diff changeset
935 g_return_if_fail(items != NULL);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
936 g_return_if_fail(field->type == PURPLE_REQUEST_FIELD_LIST);
7901
f09d051b649d [gaim-migrate @ 8561]
Christian Hammond <chipx86@chipx86.com>
parents: 7899
diff changeset
937
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
938 purple_request_field_list_clear_selected(field);
7901
f09d051b649d [gaim-migrate @ 8561]
Christian Hammond <chipx86@chipx86.com>
parents: 7899
diff changeset
939
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
940 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
941 items && items->next)
7964
10d58eb8a16a [gaim-migrate @ 8641]
Christian Hammond <chipx86@chipx86.com>
parents: 7962
diff changeset
942 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
943 purple_debug_warning("request",
7964
10d58eb8a16a [gaim-migrate @ 8641]
Christian Hammond <chipx86@chipx86.com>
parents: 7962
diff changeset
944 "More than one item added to non-multi-select "
10d58eb8a16a [gaim-migrate @ 8641]
Christian Hammond <chipx86@chipx86.com>
parents: 7962
diff changeset
945 "field %s\n",
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
946 purple_request_field_get_id(field));
7964
10d58eb8a16a [gaim-migrate @ 8641]
Christian Hammond <chipx86@chipx86.com>
parents: 7962
diff changeset
947 return;
10d58eb8a16a [gaim-migrate @ 8641]
Christian Hammond <chipx86@chipx86.com>
parents: 7962
diff changeset
948 }
10d58eb8a16a [gaim-migrate @ 8641]
Christian Hammond <chipx86@chipx86.com>
parents: 7962
diff changeset
949
14128
3f6654cc8746 [gaim-migrate @ 16687]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14097
diff changeset
950 for (l = items; l != NULL; l = l->next)
7964
10d58eb8a16a [gaim-migrate @ 8641]
Christian Hammond <chipx86@chipx86.com>
parents: 7962
diff changeset
951 {
14128
3f6654cc8746 [gaim-migrate @ 16687]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14097
diff changeset
952 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
953 g_strdup(l->data));
7964
10d58eb8a16a [gaim-migrate @ 8641]
Christian Hammond <chipx86@chipx86.com>
parents: 7962
diff changeset
954 g_hash_table_insert(field->u.list.selected_table,
10d58eb8a16a [gaim-migrate @ 8641]
Christian Hammond <chipx86@chipx86.com>
parents: 7962
diff changeset
955 g_strdup((char *)l->data), NULL);
10d58eb8a16a [gaim-migrate @ 8641]
Christian Hammond <chipx86@chipx86.com>
parents: 7962
diff changeset
956 }
10d58eb8a16a [gaim-migrate @ 8641]
Christian Hammond <chipx86@chipx86.com>
parents: 7962
diff changeset
957 }
10d58eb8a16a [gaim-migrate @ 8641]
Christian Hammond <chipx86@chipx86.com>
parents: 7962
diff changeset
958
10d58eb8a16a [gaim-migrate @ 8641]
Christian Hammond <chipx86@chipx86.com>
parents: 7962
diff changeset
959 gboolean
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
960 purple_request_field_list_is_selected(const PurpleRequestField *field,
7964
10d58eb8a16a [gaim-migrate @ 8641]
Christian Hammond <chipx86@chipx86.com>
parents: 7962
diff changeset
961 const char *item)
10d58eb8a16a [gaim-migrate @ 8641]
Christian Hammond <chipx86@chipx86.com>
parents: 7962
diff changeset
962 {
10d58eb8a16a [gaim-migrate @ 8641]
Christian Hammond <chipx86@chipx86.com>
parents: 7962
diff changeset
963 g_return_val_if_fail(field != NULL, FALSE);
10d58eb8a16a [gaim-migrate @ 8641]
Christian Hammond <chipx86@chipx86.com>
parents: 7962
diff changeset
964 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
965 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
966
10d58eb8a16a [gaim-migrate @ 8641]
Christian Hammond <chipx86@chipx86.com>
parents: 7962
diff changeset
967 return g_hash_table_lookup_extended(field->u.list.selected_table,
10d58eb8a16a [gaim-migrate @ 8641]
Christian Hammond <chipx86@chipx86.com>
parents: 7962
diff changeset
968 item, NULL, NULL);
7901
f09d051b649d [gaim-migrate @ 8561]
Christian Hammond <chipx86@chipx86.com>
parents: 7899
diff changeset
969 }
f09d051b649d [gaim-migrate @ 8561]
Christian Hammond <chipx86@chipx86.com>
parents: 7899
diff changeset
970
18190
bcf28ef7e8ff Re-fix the DBus list handling code by killing const GList* / const GSList*
Richard Laager <rlaager@pidgin.im>
parents: 16490
diff changeset
971 GList *
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
972 purple_request_field_list_get_selected(const PurpleRequestField *field)
7898
83687727b4a3 [gaim-migrate @ 8558]
Christian Hammond <chipx86@chipx86.com>
parents: 7843
diff changeset
973 {
83687727b4a3 [gaim-migrate @ 8558]
Christian Hammond <chipx86@chipx86.com>
parents: 7843
diff changeset
974 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
975 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
976
83687727b4a3 [gaim-migrate @ 8558]
Christian Hammond <chipx86@chipx86.com>
parents: 7843
diff changeset
977 return field->u.list.selected;
83687727b4a3 [gaim-migrate @ 8558]
Christian Hammond <chipx86@chipx86.com>
parents: 7843
diff changeset
978 }
83687727b4a3 [gaim-migrate @ 8558]
Christian Hammond <chipx86@chipx86.com>
parents: 7843
diff changeset
979
18190
bcf28ef7e8ff Re-fix the DBus list handling code by killing const GList* / const GSList*
Richard Laager <rlaager@pidgin.im>
parents: 16490
diff changeset
980 GList *
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
981 purple_request_field_list_get_items(const PurpleRequestField *field)
7898
83687727b4a3 [gaim-migrate @ 8558]
Christian Hammond <chipx86@chipx86.com>
parents: 7843
diff changeset
982 {
83687727b4a3 [gaim-migrate @ 8558]
Christian Hammond <chipx86@chipx86.com>
parents: 7843
diff changeset
983 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
984 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
985
83687727b4a3 [gaim-migrate @ 8558]
Christian Hammond <chipx86@chipx86.com>
parents: 7843
diff changeset
986 return field->u.list.items;
83687727b4a3 [gaim-migrate @ 8558]
Christian Hammond <chipx86@chipx86.com>
parents: 7843
diff changeset
987 }
83687727b4a3 [gaim-migrate @ 8558]
Christian Hammond <chipx86@chipx86.com>
parents: 7843
diff changeset
988
24625
4082cd694acb This patch comes from the combined work of contributors minstrel, NightFox,
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21990
diff changeset
989 GList *
4082cd694acb This patch comes from the combined work of contributors minstrel, NightFox,
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21990
diff changeset
990 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
991 {
4082cd694acb This patch comes from the combined work of contributors minstrel, NightFox,
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21990
diff changeset
992 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
993 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
994
4082cd694acb This patch comes from the combined work of contributors minstrel, NightFox,
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21990
diff changeset
995 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
996 }
4082cd694acb This patch comes from the combined work of contributors minstrel, NightFox,
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21990
diff changeset
997
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
998 PurpleRequestField *
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
999 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
1000 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1001 PurpleRequestField *field;
7905
03db29949e5d [gaim-migrate @ 8565]
Christian Hammond <chipx86@chipx86.com>
parents: 7904
diff changeset
1002
03db29949e5d [gaim-migrate @ 8565]
Christian Hammond <chipx86@chipx86.com>
parents: 7904
diff changeset
1003 g_return_val_if_fail(id != NULL, NULL);
03db29949e5d [gaim-migrate @ 8565]
Christian Hammond <chipx86@chipx86.com>
parents: 7904
diff changeset
1004 g_return_val_if_fail(text != NULL, NULL);
03db29949e5d [gaim-migrate @ 8565]
Christian Hammond <chipx86@chipx86.com>
parents: 7904
diff changeset
1005
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1006 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
1007
03db29949e5d [gaim-migrate @ 8565]
Christian Hammond <chipx86@chipx86.com>
parents: 7904
diff changeset
1008 return field;
03db29949e5d [gaim-migrate @ 8565]
Christian Hammond <chipx86@chipx86.com>
parents: 7904
diff changeset
1009 }
03db29949e5d [gaim-migrate @ 8565]
Christian Hammond <chipx86@chipx86.com>
parents: 7904
diff changeset
1010
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1011 PurpleRequestField *
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1012 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
1013 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1014 PurpleRequestField *field;
11357
d96a9c46f200 [gaim-migrate @ 13579]
Bartosz Oler <bartosz@pidgin.im>
parents: 10229
diff changeset
1015
d96a9c46f200 [gaim-migrate @ 13579]
Bartosz Oler <bartosz@pidgin.im>
parents: 10229
diff changeset
1016 g_return_val_if_fail(id != NULL, NULL);
d96a9c46f200 [gaim-migrate @ 13579]
Bartosz Oler <bartosz@pidgin.im>
parents: 10229
diff changeset
1017 g_return_val_if_fail(text != NULL, NULL);
d96a9c46f200 [gaim-migrate @ 13579]
Bartosz Oler <bartosz@pidgin.im>
parents: 10229
diff changeset
1018 g_return_val_if_fail(buf != NULL, NULL);
d96a9c46f200 [gaim-migrate @ 13579]
Bartosz Oler <bartosz@pidgin.im>
parents: 10229
diff changeset
1019 g_return_val_if_fail(size > 0, NULL);
d96a9c46f200 [gaim-migrate @ 13579]
Bartosz Oler <bartosz@pidgin.im>
parents: 10229
diff changeset
1020
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1021 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
1022
40755
fb2056ce3c58 Implement mitigation for GHSL-2021-045
Gary Kramlich <grim@reaperworld.com>
parents: 39010
diff changeset
1023 field->u.image.buffer = g_memdup2(buf, size);
11357
d96a9c46f200 [gaim-migrate @ 13579]
Bartosz Oler <bartosz@pidgin.im>
parents: 10229
diff changeset
1024 field->u.image.size = size;
d96a9c46f200 [gaim-migrate @ 13579]
Bartosz Oler <bartosz@pidgin.im>
parents: 10229
diff changeset
1025 field->u.image.scale_x = 1;
d96a9c46f200 [gaim-migrate @ 13579]
Bartosz Oler <bartosz@pidgin.im>
parents: 10229
diff changeset
1026 field->u.image.scale_y = 1;
d96a9c46f200 [gaim-migrate @ 13579]
Bartosz Oler <bartosz@pidgin.im>
parents: 10229
diff changeset
1027
d96a9c46f200 [gaim-migrate @ 13579]
Bartosz Oler <bartosz@pidgin.im>
parents: 10229
diff changeset
1028 return field;
d96a9c46f200 [gaim-migrate @ 13579]
Bartosz Oler <bartosz@pidgin.im>
parents: 10229
diff changeset
1029 }
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 void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1032 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
1033 {
d96a9c46f200 [gaim-migrate @ 13579]
Bartosz Oler <bartosz@pidgin.im>
parents: 10229
diff changeset
1034 g_return_if_fail(field != NULL);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1035 g_return_if_fail(field->type == PURPLE_REQUEST_FIELD_IMAGE);
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 field->u.image.scale_x = x;
d96a9c46f200 [gaim-migrate @ 13579]
Bartosz Oler <bartosz@pidgin.im>
parents: 10229
diff changeset
1038 field->u.image.scale_y = y;
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
d96a9c46f200 [gaim-migrate @ 13579]
Bartosz Oler <bartosz@pidgin.im>
parents: 10229
diff changeset
1041 const char *
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1042 purple_request_field_image_get_buffer(PurpleRequestField *field)
11357
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 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
1045 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
1046
d96a9c46f200 [gaim-migrate @ 13579]
Bartosz Oler <bartosz@pidgin.im>
parents: 10229
diff changeset
1047 return field->u.image.buffer;
d96a9c46f200 [gaim-migrate @ 13579]
Bartosz Oler <bartosz@pidgin.im>
parents: 10229
diff changeset
1048 }
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 gsize
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1051 purple_request_field_image_get_size(PurpleRequestField *field)
11357
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 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
1054 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
1055
d96a9c46f200 [gaim-migrate @ 13579]
Bartosz Oler <bartosz@pidgin.im>
parents: 10229
diff changeset
1056 return field->u.image.size;
d96a9c46f200 [gaim-migrate @ 13579]
Bartosz Oler <bartosz@pidgin.im>
parents: 10229
diff changeset
1057 }
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 unsigned int
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1060 purple_request_field_image_get_scale_x(PurpleRequestField *field)
11357
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 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
1063 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
1064
d96a9c46f200 [gaim-migrate @ 13579]
Bartosz Oler <bartosz@pidgin.im>
parents: 10229
diff changeset
1065 return field->u.image.scale_x;
d96a9c46f200 [gaim-migrate @ 13579]
Bartosz Oler <bartosz@pidgin.im>
parents: 10229
diff changeset
1066 }
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 unsigned int
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1069 purple_request_field_image_get_scale_y(PurpleRequestField *field)
11357
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 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
1072 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
1073
d96a9c46f200 [gaim-migrate @ 13579]
Bartosz Oler <bartosz@pidgin.im>
parents: 10229
diff changeset
1074 return field->u.image.scale_y;
d96a9c46f200 [gaim-migrate @ 13579]
Bartosz Oler <bartosz@pidgin.im>
parents: 10229
diff changeset
1075 }
8286
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1076
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1077 PurpleRequestField *
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1078 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
1079 PurpleAccount *account)
8286
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1080 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1081 PurpleRequestField *field;
8286
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1082
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1083 g_return_val_if_fail(id != NULL, NULL);
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1084 g_return_val_if_fail(text != NULL, NULL);
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1085
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1086 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
1087
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1088 if (account == NULL && purple_connections_get_all() != NULL)
8286
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1089 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1090 account = purple_connection_get_account(
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1091 (PurpleConnection *)purple_connections_get_all()->data);
8286
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1092 }
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1093
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1094 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
1095 purple_request_field_account_set_value(field, account);
8286
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1096
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1097 return field;
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1098 }
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 void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1101 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
1102 PurpleAccount *default_value)
8286
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1103 {
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1104 g_return_if_fail(field != NULL);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1105 g_return_if_fail(field->type == PURPLE_REQUEST_FIELD_ACCOUNT);
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 field->u.account.default_account = default_value;
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1108 }
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 void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1111 purple_request_field_account_set_value(PurpleRequestField *field,
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1112 PurpleAccount *value)
8286
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1113 {
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1114 g_return_if_fail(field != NULL);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1115 g_return_if_fail(field->type == PURPLE_REQUEST_FIELD_ACCOUNT);
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 field->u.account.account = value;
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1118 }
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 void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1121 purple_request_field_account_set_show_all(PurpleRequestField *field,
8286
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1122 gboolean show_all)
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1123 {
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1124 g_return_if_fail(field != NULL);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1125 g_return_if_fail(field->type == PURPLE_REQUEST_FIELD_ACCOUNT);
8286
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 if (field->u.account.show_all == show_all)
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1128 return;
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 field->u.account.show_all = show_all;
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1131
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1132 if (!show_all)
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1133 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1134 if (purple_account_is_connected(field->u.account.default_account))
8286
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1135 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1136 purple_request_field_account_set_default_value(field,
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1137 (PurpleAccount *)purple_connections_get_all()->data);
8286
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1138 }
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1139
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1140 if (purple_account_is_connected(field->u.account.account))
8286
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1141 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1142 purple_request_field_account_set_value(field,
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1143 (PurpleAccount *)purple_connections_get_all()->data);
8286
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1144 }
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1145 }
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1146 }
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1147
8289
234429bac6b5 [gaim-migrate @ 9013]
Christian Hammond <chipx86@chipx86.com>
parents: 8286
diff changeset
1148 void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1149 purple_request_field_account_set_filter(PurpleRequestField *field,
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1150 PurpleFilterAccountFunc filter_func)
8289
234429bac6b5 [gaim-migrate @ 9013]
Christian Hammond <chipx86@chipx86.com>
parents: 8286
diff changeset
1151 {
234429bac6b5 [gaim-migrate @ 9013]
Christian Hammond <chipx86@chipx86.com>
parents: 8286
diff changeset
1152 g_return_if_fail(field != NULL);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1153 g_return_if_fail(field->type == PURPLE_REQUEST_FIELD_ACCOUNT);
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 field->u.account.filter_func = filter_func;
234429bac6b5 [gaim-migrate @ 9013]
Christian Hammond <chipx86@chipx86.com>
parents: 8286
diff changeset
1156 }
234429bac6b5 [gaim-migrate @ 9013]
Christian Hammond <chipx86@chipx86.com>
parents: 8286
diff changeset
1157
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1158 PurpleAccount *
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1159 purple_request_field_account_get_default_value(const PurpleRequestField *field)
8286
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1160 {
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1161 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
1162 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
1163
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1164 return field->u.account.default_account;
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1165 }
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1166
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1167 PurpleAccount *
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1168 purple_request_field_account_get_value(const PurpleRequestField *field)
8286
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1169 {
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1170 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
1171 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
1172
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1173 return field->u.account.account;
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1174 }
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 gboolean
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1177 purple_request_field_account_get_show_all(const PurpleRequestField *field)
8286
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 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
1180 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
1181
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1182 return field->u.account.show_all;
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1183 }
7a4c038d1ecd [gaim-migrate @ 9010]
Christian Hammond <chipx86@chipx86.com>
parents: 8285
diff changeset
1184
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1185 PurpleFilterAccountFunc
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1186 purple_request_field_account_get_filter(const PurpleRequestField *field)
8289
234429bac6b5 [gaim-migrate @ 9013]
Christian Hammond <chipx86@chipx86.com>
parents: 8286
diff changeset
1187 {
234429bac6b5 [gaim-migrate @ 9013]
Christian Hammond <chipx86@chipx86.com>
parents: 8286
diff changeset
1188 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
1189 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
1190
234429bac6b5 [gaim-migrate @ 9013]
Christian Hammond <chipx86@chipx86.com>
parents: 8286
diff changeset
1191 return field->u.account.filter_func;
234429bac6b5 [gaim-migrate @ 9013]
Christian Hammond <chipx86@chipx86.com>
parents: 8286
diff changeset
1192 }
234429bac6b5 [gaim-migrate @ 9013]
Christian Hammond <chipx86@chipx86.com>
parents: 8286
diff changeset
1193
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
1194 /* -- */
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
1195
5477
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1196 void *
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1197 purple_request_input(void *handle, const char *title, const char *primary,
5477
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1198 const char *secondary, const char *default_value,
8697
c5e51aef2026 [gaim-migrate @ 9450]
Jon Oberheide
parents: 8332
diff changeset
1199 gboolean multiline, gboolean masked, gchar *hint,
5477
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1200 const char *ok_text, GCallback ok_cb,
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1201 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
1202 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
1203 void *user_data)
039aef89faf6 Updated hinting to be less invasive
Gabriel Schulhof <nix@go-nix.ca>
parents: 20684
diff changeset
1204 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1205 PurpleRequestUiOps *ops;
5477
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1206
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1207 g_return_val_if_fail(ok_text != NULL, NULL);
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1208 g_return_val_if_fail(ok_cb != NULL, NULL);
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1209
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1210 ops = purple_request_get_ui_ops();
5477
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1211
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1212 if (ops != NULL && ops->request_input != NULL) {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1213 PurpleRequestInfo *info;
5477
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1214
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1215 info = g_new0(PurpleRequestInfo, 1);
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1216 info->type = PURPLE_REQUEST_INPUT;
5477
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1217 info->handle = handle;
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1218 info->ui_handle = ops->request_input(title, primary, secondary,
6035
b245be9cbe3b [gaim-migrate @ 6485]
Christian Hammond <chipx86@chipx86.com>
parents: 5810
diff changeset
1219 default_value,
8697
c5e51aef2026 [gaim-migrate @ 9450]
Jon Oberheide
parents: 8332
diff changeset
1220 multiline, masked, hint,
5482
6831f83bfae5 [gaim-migrate @ 5878]
Christian Hammond <chipx86@chipx86.com>
parents: 5477
diff changeset
1221 ok_text, ok_cb,
5477
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1222 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
1223 account, who, conv,
21175
c6d76b49c206 disapproval of revision '8ba833993a115415727bb1b70362e0bd1603c169'
Richard Laager <rlaager@pidgin.im>
parents: 21174
diff changeset
1224 user_data);
5477
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1225
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1226 handles = g_list_append(handles, info);
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1227
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1228 return info->ui_handle;
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1229 }
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 NULL;
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 void *
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1235 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
1236 const char *secondary, int default_value,
5477
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1237 const char *ok_text, GCallback ok_cb,
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1238 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
1239 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
1240 void *user_data, ...)
039aef89faf6 Updated hinting to be less invasive
Gabriel Schulhof <nix@go-nix.ca>
parents: 20684
diff changeset
1241 {
039aef89faf6 Updated hinting to be less invasive
Gabriel Schulhof <nix@go-nix.ca>
parents: 20684
diff changeset
1242 void *ui_handle;
039aef89faf6 Updated hinting to be less invasive
Gabriel Schulhof <nix@go-nix.ca>
parents: 20684
diff changeset
1243 va_list args;
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 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
1246 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
1247
039aef89faf6 Updated hinting to be less invasive
Gabriel Schulhof <nix@go-nix.ca>
parents: 20684
diff changeset
1248 va_start(args, user_data);
21175
c6d76b49c206 disapproval of revision '8ba833993a115415727bb1b70362e0bd1603c169'
Richard Laager <rlaager@pidgin.im>
parents: 21174
diff changeset
1249 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
1250 default_value, ok_text, ok_cb,
039aef89faf6 Updated hinting to be less invasive
Gabriel Schulhof <nix@go-nix.ca>
parents: 20684
diff changeset
1251 cancel_text, cancel_cb,
21175
c6d76b49c206 disapproval of revision '8ba833993a115415727bb1b70362e0bd1603c169'
Richard Laager <rlaager@pidgin.im>
parents: 21174
diff changeset
1252 account, who, conv, user_data, args);
5477
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1253 va_end(args);
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1254
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1255 return ui_handle;
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1256 }
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 void *
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1259 purple_request_choice_varg(void *handle, const char *title,
10229
39ffee70c286 [gaim-migrate @ 11364]
Alceste Scalas <alceste.scalas@gmx.net>
parents: 9502
diff changeset
1260 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
1261 int default_value,
10229
39ffee70c286 [gaim-migrate @ 11364]
Alceste Scalas <alceste.scalas@gmx.net>
parents: 9502
diff changeset
1262 const char *ok_text, GCallback ok_cb,
39ffee70c286 [gaim-migrate @ 11364]
Alceste Scalas <alceste.scalas@gmx.net>
parents: 9502
diff changeset
1263 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
1264 PurpleAccount *account, const char *who, PurpleConversation *conv,
20696
fed6b4e72b8f Weirdness
Gabriel Schulhof <nix@go-nix.ca>
parents: 20689
diff changeset
1265 void *user_data, va_list choices)
5477
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1266 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1267 PurpleRequestUiOps *ops;
5477
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1268
5496
ed995be89052 [gaim-migrate @ 5892]
Christian Hammond <chipx86@chipx86.com>
parents: 5482
diff changeset
1269 g_return_val_if_fail(ok_text != NULL, NULL);
ed995be89052 [gaim-migrate @ 5892]
Christian Hammond <chipx86@chipx86.com>
parents: 5482
diff changeset
1270 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
1271 g_return_val_if_fail(cancel_text != NULL, NULL);
5477
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1272
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1273 ops = purple_request_get_ui_ops();
5477
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1274
5496
ed995be89052 [gaim-migrate @ 5892]
Christian Hammond <chipx86@chipx86.com>
parents: 5482
diff changeset
1275 if (ops != NULL && ops->request_choice != NULL) {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1276 PurpleRequestInfo *info;
5477
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1277
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1278 info = g_new0(PurpleRequestInfo, 1);
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1279 info->type = PURPLE_REQUEST_CHOICE;
5477
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1280 info->handle = handle;
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1281 info->ui_handle = ops->request_choice(title, primary, secondary,
10229
39ffee70c286 [gaim-migrate @ 11364]
Alceste Scalas <alceste.scalas@gmx.net>
parents: 9502
diff changeset
1282 default_value,
39ffee70c286 [gaim-migrate @ 11364]
Alceste Scalas <alceste.scalas@gmx.net>
parents: 9502
diff changeset
1283 ok_text, ok_cb,
39ffee70c286 [gaim-migrate @ 11364]
Alceste Scalas <alceste.scalas@gmx.net>
parents: 9502
diff changeset
1284 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
1285 account, who, conv,
21175
c6d76b49c206 disapproval of revision '8ba833993a115415727bb1b70362e0bd1603c169'
Richard Laager <rlaager@pidgin.im>
parents: 21174
diff changeset
1286 user_data, choices);
5477
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1287
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1288 handles = g_list_append(handles, info);
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1289
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1290 return info->ui_handle;
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1291 }
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 NULL;
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 void *
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1297 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
1298 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
1299 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
1300 void *user_data, size_t action_count, ...)
039aef89faf6 Updated hinting to be less invasive
Gabriel Schulhof <nix@go-nix.ca>
parents: 20684
diff changeset
1301 {
039aef89faf6 Updated hinting to be less invasive
Gabriel Schulhof <nix@go-nix.ca>
parents: 20684
diff changeset
1302 void *ui_handle;
039aef89faf6 Updated hinting to be less invasive
Gabriel Schulhof <nix@go-nix.ca>
parents: 20684
diff changeset
1303 va_list args;
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 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
1306
039aef89faf6 Updated hinting to be less invasive
Gabriel Schulhof <nix@go-nix.ca>
parents: 20684
diff changeset
1307 va_start(args, action_count);
21175
c6d76b49c206 disapproval of revision '8ba833993a115415727bb1b70362e0bd1603c169'
Richard Laager <rlaager@pidgin.im>
parents: 21174
diff changeset
1308 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
1309 default_action, account, who, conv,
21175
c6d76b49c206 disapproval of revision '8ba833993a115415727bb1b70362e0bd1603c169'
Richard Laager <rlaager@pidgin.im>
parents: 21174
diff changeset
1310 user_data, action_count, args);
5477
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1311 va_end(args);
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1312
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1313 return ui_handle;
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1314 }
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 void *
31294
73607ab89c6f Remove trailing whitespace
Richard Laager <rlaager@pidgin.im>
parents: 30720
diff changeset
1317 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
1318 const char *primary,
00f91afbd4d9 Show thumbnail in ft request dialog
Marcus Lundblad <malu@pidgin.im>
parents: 24990
diff changeset
1319 const char *secondary, int default_action,
31294
73607ab89c6f Remove trailing whitespace
Richard Laager <rlaager@pidgin.im>
parents: 30720
diff changeset
1320 PurpleAccount *account, const char *who,
27427
00f91afbd4d9 Show thumbnail in ft request dialog
Marcus Lundblad <malu@pidgin.im>
parents: 24990
diff changeset
1321 PurpleConversation *conv, gconstpointer icon_data,
00f91afbd4d9 Show thumbnail in ft request dialog
Marcus Lundblad <malu@pidgin.im>
parents: 24990
diff changeset
1322 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
1323 {
00f91afbd4d9 Show thumbnail in ft request dialog
Marcus Lundblad <malu@pidgin.im>
parents: 24990
diff changeset
1324 void *ui_handle;
00f91afbd4d9 Show thumbnail in ft request dialog
Marcus Lundblad <malu@pidgin.im>
parents: 24990
diff changeset
1325 va_list args;
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 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
1328
00f91afbd4d9 Show thumbnail in ft request dialog
Marcus Lundblad <malu@pidgin.im>
parents: 24990
diff changeset
1329 va_start(args, action_count);
31294
73607ab89c6f Remove trailing whitespace
Richard Laager <rlaager@pidgin.im>
parents: 30720
diff changeset
1330 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
1331 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
1332 user_data, action_count, args);
00f91afbd4d9 Show thumbnail in ft request dialog
Marcus Lundblad <malu@pidgin.im>
parents: 24990
diff changeset
1333 va_end(args);
00f91afbd4d9 Show thumbnail in ft request dialog
Marcus Lundblad <malu@pidgin.im>
parents: 24990
diff changeset
1334
00f91afbd4d9 Show thumbnail in ft request dialog
Marcus Lundblad <malu@pidgin.im>
parents: 24990
diff changeset
1335 return ui_handle;
00f91afbd4d9 Show thumbnail in ft request dialog
Marcus Lundblad <malu@pidgin.im>
parents: 24990
diff changeset
1336 }
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
00f91afbd4d9 Show thumbnail in ft request dialog
Marcus Lundblad <malu@pidgin.im>
parents: 24990
diff changeset
1339 void *
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1340 purple_request_action_varg(void *handle, const char *title,
5477
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1341 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
1342 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
1343 PurpleAccount *account, const char *who, PurpleConversation *conv,
21175
c6d76b49c206 disapproval of revision '8ba833993a115415727bb1b70362e0bd1603c169'
Richard Laager <rlaager@pidgin.im>
parents: 21174
diff changeset
1344 void *user_data, size_t action_count, va_list actions)
5477
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1345 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1346 PurpleRequestUiOps *ops;
5477
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1347
5496
ed995be89052 [gaim-migrate @ 5892]
Christian Hammond <chipx86@chipx86.com>
parents: 5482
diff changeset
1348 g_return_val_if_fail(action_count > 0, NULL);
5477
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1349
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1350 ops = purple_request_get_ui_ops();
5477
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1351
5496
ed995be89052 [gaim-migrate @ 5892]
Christian Hammond <chipx86@chipx86.com>
parents: 5482
diff changeset
1352 if (ops != NULL && ops->request_action != NULL) {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1353 PurpleRequestInfo *info;
5477
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1354
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1355 info = g_new0(PurpleRequestInfo, 1);
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1356 info->type = PURPLE_REQUEST_ACTION;
5477
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1357 info->handle = handle;
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1358 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
1359 default_action, account, who, conv,
21175
c6d76b49c206 disapproval of revision '8ba833993a115415727bb1b70362e0bd1603c169'
Richard Laager <rlaager@pidgin.im>
parents: 21174
diff changeset
1360 user_data, action_count, actions);
5477
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1361
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1362 handles = g_list_append(handles, info);
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1363
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1364 return info->ui_handle;
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1365 }
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 NULL;
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
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
1370 void *
30146
ffa4c7208d1c It seems like the _varg should be at the end.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 30130
diff changeset
1371 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
1372 const char *primary, const char *secondary,
00f91afbd4d9 Show thumbnail in ft request dialog
Marcus Lundblad <malu@pidgin.im>
parents: 24990
diff changeset
1373 int default_action,
31294
73607ab89c6f Remove trailing whitespace
Richard Laager <rlaager@pidgin.im>
parents: 30720
diff changeset
1374 PurpleAccount *account, const char *who,
27427
00f91afbd4d9 Show thumbnail in ft request dialog
Marcus Lundblad <malu@pidgin.im>
parents: 24990
diff changeset
1375 PurpleConversation *conv, gconstpointer icon_data,
00f91afbd4d9 Show thumbnail in ft request dialog
Marcus Lundblad <malu@pidgin.im>
parents: 24990
diff changeset
1376 gsize icon_size,
00f91afbd4d9 Show thumbnail in ft request dialog
Marcus Lundblad <malu@pidgin.im>
parents: 24990
diff changeset
1377 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
1378 {
00f91afbd4d9 Show thumbnail in ft request dialog
Marcus Lundblad <malu@pidgin.im>
parents: 24990
diff changeset
1379 PurpleRequestUiOps *ops;
00f91afbd4d9 Show thumbnail in ft request dialog
Marcus Lundblad <malu@pidgin.im>
parents: 24990
diff changeset
1380
00f91afbd4d9 Show thumbnail in ft request dialog
Marcus Lundblad <malu@pidgin.im>
parents: 24990
diff changeset
1381 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
1382
00f91afbd4d9 Show thumbnail in ft request dialog
Marcus Lundblad <malu@pidgin.im>
parents: 24990
diff changeset
1383 ops = purple_request_get_ui_ops();
00f91afbd4d9 Show thumbnail in ft request dialog
Marcus Lundblad <malu@pidgin.im>
parents: 24990
diff changeset
1384
30130
08725e76283a Woops, copy-paste error... :)
Marcus Lundblad <malu@pidgin.im>
parents: 29775
diff changeset
1385 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
1386 PurpleRequestInfo *info;
00f91afbd4d9 Show thumbnail in ft request dialog
Marcus Lundblad <malu@pidgin.im>
parents: 24990
diff changeset
1387
00f91afbd4d9 Show thumbnail in ft request dialog
Marcus Lundblad <malu@pidgin.im>
parents: 24990
diff changeset
1388 info = g_new0(PurpleRequestInfo, 1);
00f91afbd4d9 Show thumbnail in ft request dialog
Marcus Lundblad <malu@pidgin.im>
parents: 24990
diff changeset
1389 info->type = PURPLE_REQUEST_ACTION;
00f91afbd4d9 Show thumbnail in ft request dialog
Marcus Lundblad <malu@pidgin.im>
parents: 24990
diff changeset
1390 info->handle = handle;
00f91afbd4d9 Show thumbnail in ft request dialog
Marcus Lundblad <malu@pidgin.im>
parents: 24990
diff changeset
1391 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
1392 default_action, account, who, conv,
00f91afbd4d9 Show thumbnail in ft request dialog
Marcus Lundblad <malu@pidgin.im>
parents: 24990
diff changeset
1393 icon_data, icon_size,
00f91afbd4d9 Show thumbnail in ft request dialog
Marcus Lundblad <malu@pidgin.im>
parents: 24990
diff changeset
1394 user_data, action_count, actions);
00f91afbd4d9 Show thumbnail in ft request dialog
Marcus Lundblad <malu@pidgin.im>
parents: 24990
diff changeset
1395
00f91afbd4d9 Show thumbnail in ft request dialog
Marcus Lundblad <malu@pidgin.im>
parents: 24990
diff changeset
1396 handles = g_list_append(handles, info);
00f91afbd4d9 Show thumbnail in ft request dialog
Marcus Lundblad <malu@pidgin.im>
parents: 24990
diff changeset
1397
00f91afbd4d9 Show thumbnail in ft request dialog
Marcus Lundblad <malu@pidgin.im>
parents: 24990
diff changeset
1398 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
1399 } 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
1400 /* 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
1401 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
1402 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
1403 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
1404 }
00f91afbd4d9 Show thumbnail in ft request dialog
Marcus Lundblad <malu@pidgin.im>
parents: 24990
diff changeset
1405
00f91afbd4d9 Show thumbnail in ft request dialog
Marcus Lundblad <malu@pidgin.im>
parents: 24990
diff changeset
1406 return NULL;
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
00f91afbd4d9 Show thumbnail in ft request dialog
Marcus Lundblad <malu@pidgin.im>
parents: 24990
diff changeset
1410 void *
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1411 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
1412 const char *secondary, PurpleRequestFields *fields,
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
1413 const char *ok_text, GCallback ok_cb,
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
1414 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
1415 PurpleAccount *account, const char *who, PurpleConversation *conv,
20696
fed6b4e72b8f Weirdness
Gabriel Schulhof <nix@go-nix.ca>
parents: 20689
diff changeset
1416 void *user_data)
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
1417 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1418 PurpleRequestUiOps *ops;
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
1419
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
1420 g_return_val_if_fail(fields != NULL, NULL);
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
1421 g_return_val_if_fail(ok_text != NULL, NULL);
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
1422 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
1423 g_return_val_if_fail(cancel_text != NULL, NULL);
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
1424
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1425 ops = purple_request_get_ui_ops();
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
1426
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
1427 if (ops != NULL && ops->request_fields != NULL) {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1428 PurpleRequestInfo *info;
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
1429
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1430 info = g_new0(PurpleRequestInfo, 1);
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1431 info->type = PURPLE_REQUEST_FIELDS;
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
1432 info->handle = handle;
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
1433 info->ui_handle = ops->request_fields(title, primary, secondary,
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
1434 fields, ok_text, ok_cb,
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
1435 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
1436 account, who, conv,
21175
c6d76b49c206 disapproval of revision '8ba833993a115415727bb1b70362e0bd1603c169'
Richard Laager <rlaager@pidgin.im>
parents: 21174
diff changeset
1437 user_data);
5807
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
1438
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
1439 handles = g_list_append(handles, info);
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
1440
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
1441 return info->ui_handle;
7e0d857c4c93 [gaim-migrate @ 6237]
Christian Hammond <chipx86@chipx86.com>
parents: 5496
diff changeset
1442 }
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 NULL;
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
9502
d43f69354213 [gaim-migrate @ 10329]
Mark Doliner <markdoliner@pidgin.im>
parents: 8843
diff changeset
1447 void *
20686
ec1a687480d2 Minor fix
Gabriel Schulhof <nix@go-nix.ca>
parents: 20685
diff changeset
1448 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
1449 gboolean savedialog,
039aef89faf6 Updated hinting to be less invasive
Gabriel Schulhof <nix@go-nix.ca>
parents: 20684
diff changeset
1450 GCallback ok_cb, GCallback cancel_cb,
039aef89faf6 Updated hinting to be less invasive
Gabriel Schulhof <nix@go-nix.ca>
parents: 20684
diff changeset
1451 PurpleAccount *account, const char *who, PurpleConversation *conv,
039aef89faf6 Updated hinting to be less invasive
Gabriel Schulhof <nix@go-nix.ca>
parents: 20684
diff changeset
1452 void *user_data)
039aef89faf6 Updated hinting to be less invasive
Gabriel Schulhof <nix@go-nix.ca>
parents: 20684
diff changeset
1453 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1454 PurpleRequestUiOps *ops;
9502
d43f69354213 [gaim-migrate @ 10329]
Mark Doliner <markdoliner@pidgin.im>
parents: 8843
diff changeset
1455
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1456 ops = purple_request_get_ui_ops();
9502
d43f69354213 [gaim-migrate @ 10329]
Mark Doliner <markdoliner@pidgin.im>
parents: 8843
diff changeset
1457
d43f69354213 [gaim-migrate @ 10329]
Mark Doliner <markdoliner@pidgin.im>
parents: 8843
diff changeset
1458 if (ops != NULL && ops->request_file != NULL) {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1459 PurpleRequestInfo *info;
9502
d43f69354213 [gaim-migrate @ 10329]
Mark Doliner <markdoliner@pidgin.im>
parents: 8843
diff changeset
1460
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1461 info = g_new0(PurpleRequestInfo, 1);
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1462 info->type = PURPLE_REQUEST_FILE;
9502
d43f69354213 [gaim-migrate @ 10329]
Mark Doliner <markdoliner@pidgin.im>
parents: 8843
diff changeset
1463 info->handle = handle;
d43f69354213 [gaim-migrate @ 10329]
Mark Doliner <markdoliner@pidgin.im>
parents: 8843
diff changeset
1464 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
1465 ok_cb, cancel_cb,
21175
c6d76b49c206 disapproval of revision '8ba833993a115415727bb1b70362e0bd1603c169'
Richard Laager <rlaager@pidgin.im>
parents: 21174
diff changeset
1466 account, who, conv, user_data);
9502
d43f69354213 [gaim-migrate @ 10329]
Mark Doliner <markdoliner@pidgin.im>
parents: 8843
diff changeset
1467 handles = g_list_append(handles, info);
d43f69354213 [gaim-migrate @ 10329]
Mark Doliner <markdoliner@pidgin.im>
parents: 8843
diff changeset
1468 return info->ui_handle;
d43f69354213 [gaim-migrate @ 10329]
Mark Doliner <markdoliner@pidgin.im>
parents: 8843
diff changeset
1469 }
d43f69354213 [gaim-migrate @ 10329]
Mark Doliner <markdoliner@pidgin.im>
parents: 8843
diff changeset
1470
d43f69354213 [gaim-migrate @ 10329]
Mark Doliner <markdoliner@pidgin.im>
parents: 8843
diff changeset
1471 return NULL;
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
13283
89a0621d5d6a [gaim-migrate @ 15648]
Dennis Nezic <dennisn@dennisn.dyndns.org>
parents: 13270
diff changeset
1474 void *
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1475 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
1476 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
1477 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
1478 void *user_data)
039aef89faf6 Updated hinting to be less invasive
Gabriel Schulhof <nix@go-nix.ca>
parents: 20684
diff changeset
1479 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1480 PurpleRequestUiOps *ops;
13283
89a0621d5d6a [gaim-migrate @ 15648]
Dennis Nezic <dennisn@dennisn.dyndns.org>
parents: 13270
diff changeset
1481
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1482 ops = purple_request_get_ui_ops();
13283
89a0621d5d6a [gaim-migrate @ 15648]
Dennis Nezic <dennisn@dennisn.dyndns.org>
parents: 13270
diff changeset
1483
89a0621d5d6a [gaim-migrate @ 15648]
Dennis Nezic <dennisn@dennisn.dyndns.org>
parents: 13270
diff changeset
1484 if (ops != NULL && ops->request_file != NULL) {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1485 PurpleRequestInfo *info;
13283
89a0621d5d6a [gaim-migrate @ 15648]
Dennis Nezic <dennisn@dennisn.dyndns.org>
parents: 13270
diff changeset
1486
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1487 info = g_new0(PurpleRequestInfo, 1);
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1488 info->type = PURPLE_REQUEST_FOLDER;
13283
89a0621d5d6a [gaim-migrate @ 15648]
Dennis Nezic <dennisn@dennisn.dyndns.org>
parents: 13270
diff changeset
1489 info->handle = handle;
89a0621d5d6a [gaim-migrate @ 15648]
Dennis Nezic <dennisn@dennisn.dyndns.org>
parents: 13270
diff changeset
1490 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
1491 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
1492 account, who, conv,
21175
c6d76b49c206 disapproval of revision '8ba833993a115415727bb1b70362e0bd1603c169'
Richard Laager <rlaager@pidgin.im>
parents: 21174
diff changeset
1493 user_data);
13283
89a0621d5d6a [gaim-migrate @ 15648]
Dennis Nezic <dennisn@dennisn.dyndns.org>
parents: 13270
diff changeset
1494 handles = g_list_append(handles, info);
89a0621d5d6a [gaim-migrate @ 15648]
Dennis Nezic <dennisn@dennisn.dyndns.org>
parents: 13270
diff changeset
1495 return info->ui_handle;
89a0621d5d6a [gaim-migrate @ 15648]
Dennis Nezic <dennisn@dennisn.dyndns.org>
parents: 13270
diff changeset
1496 }
89a0621d5d6a [gaim-migrate @ 15648]
Dennis Nezic <dennisn@dennisn.dyndns.org>
parents: 13270
diff changeset
1497
89a0621d5d6a [gaim-migrate @ 15648]
Dennis Nezic <dennisn@dennisn.dyndns.org>
parents: 13270
diff changeset
1498 return NULL;
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
39010
fbce915a7024 Outbound screenshare window/monitor selection
David Woodhouse <dwmw2@infradead.org>
parents: 31294
diff changeset
1501 void *
fbce915a7024 Outbound screenshare window/monitor selection
David Woodhouse <dwmw2@infradead.org>
parents: 31294
diff changeset
1502 purple_request_screenshare_media(void *handle, const char *title,
fbce915a7024 Outbound screenshare window/monitor selection
David Woodhouse <dwmw2@infradead.org>
parents: 31294
diff changeset
1503 const char *primary, const char *secondary,
fbce915a7024 Outbound screenshare window/monitor selection
David Woodhouse <dwmw2@infradead.org>
parents: 31294
diff changeset
1504 PurpleAccount *account, GCallback cb,
fbce915a7024 Outbound screenshare window/monitor selection
David Woodhouse <dwmw2@infradead.org>
parents: 31294
diff changeset
1505 void *user_data)
fbce915a7024 Outbound screenshare window/monitor selection
David Woodhouse <dwmw2@infradead.org>
parents: 31294
diff changeset
1506 {
fbce915a7024 Outbound screenshare window/monitor selection
David Woodhouse <dwmw2@infradead.org>
parents: 31294
diff changeset
1507 PurpleRequestUiOps *ops;
fbce915a7024 Outbound screenshare window/monitor selection
David Woodhouse <dwmw2@infradead.org>
parents: 31294
diff changeset
1508
fbce915a7024 Outbound screenshare window/monitor selection
David Woodhouse <dwmw2@infradead.org>
parents: 31294
diff changeset
1509 ops = purple_request_get_ui_ops();
fbce915a7024 Outbound screenshare window/monitor selection
David Woodhouse <dwmw2@infradead.org>
parents: 31294
diff changeset
1510
fbce915a7024 Outbound screenshare window/monitor selection
David Woodhouse <dwmw2@infradead.org>
parents: 31294
diff changeset
1511 if (ops != NULL && ops->request_screenshare_media != NULL) {
fbce915a7024 Outbound screenshare window/monitor selection
David Woodhouse <dwmw2@infradead.org>
parents: 31294
diff changeset
1512 PurpleRequestInfo *info;
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 info = g_new0(PurpleRequestInfo, 1);
fbce915a7024 Outbound screenshare window/monitor selection
David Woodhouse <dwmw2@infradead.org>
parents: 31294
diff changeset
1515 info->type = PURPLE_REQUEST_SCREENSHARE;
fbce915a7024 Outbound screenshare window/monitor selection
David Woodhouse <dwmw2@infradead.org>
parents: 31294
diff changeset
1516 info->handle = handle;
fbce915a7024 Outbound screenshare window/monitor selection
David Woodhouse <dwmw2@infradead.org>
parents: 31294
diff changeset
1517 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
1518 account, cb, user_data);
fbce915a7024 Outbound screenshare window/monitor selection
David Woodhouse <dwmw2@infradead.org>
parents: 31294
diff changeset
1519 handles = g_list_append(handles, info);
fbce915a7024 Outbound screenshare window/monitor selection
David Woodhouse <dwmw2@infradead.org>
parents: 31294
diff changeset
1520 return info->ui_handle;
fbce915a7024 Outbound screenshare window/monitor selection
David Woodhouse <dwmw2@infradead.org>
parents: 31294
diff changeset
1521 }
fbce915a7024 Outbound screenshare window/monitor selection
David Woodhouse <dwmw2@infradead.org>
parents: 31294
diff changeset
1522
fbce915a7024 Outbound screenshare window/monitor selection
David Woodhouse <dwmw2@infradead.org>
parents: 31294
diff changeset
1523 return NULL;
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
9502
d43f69354213 [gaim-migrate @ 10329]
Mark Doliner <markdoliner@pidgin.im>
parents: 8843
diff changeset
1526 static void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1527 purple_request_close_info(PurpleRequestInfo *info)
9502
d43f69354213 [gaim-migrate @ 10329]
Mark Doliner <markdoliner@pidgin.im>
parents: 8843
diff changeset
1528 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1529 PurpleRequestUiOps *ops;
9502
d43f69354213 [gaim-migrate @ 10329]
Mark Doliner <markdoliner@pidgin.im>
parents: 8843
diff changeset
1530
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1531 ops = purple_request_get_ui_ops();
9502
d43f69354213 [gaim-migrate @ 10329]
Mark Doliner <markdoliner@pidgin.im>
parents: 8843
diff changeset
1532
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1533 purple_notify_close_with_handle(info->ui_handle);
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1534 purple_request_close_with_handle(info->ui_handle);
9502
d43f69354213 [gaim-migrate @ 10329]
Mark Doliner <markdoliner@pidgin.im>
parents: 8843
diff changeset
1535
d43f69354213 [gaim-migrate @ 10329]
Mark Doliner <markdoliner@pidgin.im>
parents: 8843
diff changeset
1536 if (ops != NULL && ops->close_request != NULL)
d43f69354213 [gaim-migrate @ 10329]
Mark Doliner <markdoliner@pidgin.im>
parents: 8843
diff changeset
1537 ops->close_request(info->type, info->ui_handle);
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 g_free(info);
d43f69354213 [gaim-migrate @ 10329]
Mark Doliner <markdoliner@pidgin.im>
parents: 8843
diff changeset
1540 }
d43f69354213 [gaim-migrate @ 10329]
Mark Doliner <markdoliner@pidgin.im>
parents: 8843
diff changeset
1541
5477
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1542 void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1543 purple_request_close(PurpleRequestType type, void *ui_handle)
5477
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1544 {
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1545 GList *l;
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1546
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1547 g_return_if_fail(ui_handle != NULL);
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1548
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1549 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
1550 PurpleRequestInfo *info = l->data;
5477
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 if (info->ui_handle == ui_handle) {
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1553 handles = g_list_remove(handles, info);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1554 purple_request_close_info(info);
5477
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1555 break;
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1556 }
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1557 }
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1558 }
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 void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1561 purple_request_close_with_handle(void *handle)
5477
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 GList *l, *l_next;
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1564
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1565 g_return_if_fail(handle != NULL);
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1566
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1567 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
1568 PurpleRequestInfo *info = l->data;
5477
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 l_next = l->next;
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1571
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1572 if (info->handle == handle) {
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1573 handles = g_list_remove(handles, info);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1574 purple_request_close_info(info);
5477
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1575 }
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1576 }
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1577 }
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 void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1580 purple_request_set_ui_ops(PurpleRequestUiOps *ops)
5477
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 request_ui_ops = ops;
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1583 }
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1584
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1585 PurpleRequestUiOps *
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1586 purple_request_get_ui_ops(void)
5477
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1587 {
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1588 return request_ui_ops;
942b6f295034 [gaim-migrate @ 5873]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1589 }

mercurial