annotate src/accountopt.h @ 13909:8264f52a1142

[gaim-migrate @ 16406] More of sf patch #1490646, from Jonty Wareing & Jono Cole "The screen name + hostname of the sending user is sent in the outgoing jabber message, fixing a sporadic problem with iChat. The port in use has been fixed to the one described in the Bonjour specification and can no longer be changed in the prpl preferences - modifiying this just stops the client from being able to start a chat. The option for a buddy icon has been removed for now as no code actually uses it yet - we plan to change this in the future. This update also introduces automatic local port retry for up to ten attempts if the port is in use (e.g. if multiple instances of gaim are running)." committer: Tailor Script <tailor@pidgin.im>
author Mark Doliner <mark@kingant.net>
date Mon, 03 Jul 2006 00:37:41 +0000
parents 128324dcc821
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
5639
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1 /**
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
2 * @file accountopt.h Account Options API
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
3 * @ingroup core
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
4 *
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
5 * gaim
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
6 *
8046
fa6395637e2c [gaim-migrate @ 8730]
Sean Egan <seanegan@gmail.com>
parents: 6902
diff changeset
7 * Gaim is the legal property of its developers, whose names are too numerous
fa6395637e2c [gaim-migrate @ 8730]
Sean Egan <seanegan@gmail.com>
parents: 6902
diff changeset
8 * to list here. Please refer to the COPYRIGHT file distributed with this
fa6395637e2c [gaim-migrate @ 8730]
Sean Egan <seanegan@gmail.com>
parents: 6902
diff changeset
9 * source distribution.
6902
e30bedfb99db [gaim-migrate @ 7449]
Christian Hammond <chipx86@chipx86.com>
parents: 5944
diff changeset
10 *
5639
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
11 * This program is free software; you can redistribute it and/or modify
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
12 * it under the terms of the GNU General Public License as published by
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
13 * the Free Software Foundation; either version 2 of the License, or
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
14 * (at your option) any later version.
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
15 *
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
16 * This program is distributed in the hope that it will be useful,
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
17 * but WITHOUT ANY WARRANTY; without even the implied warranty of
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
18 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
19 * GNU General Public License for more details.
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
20 *
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
21 * You should have received a copy of the GNU General Public License
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
22 * along with this program; if not, write to the Free Software
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
23 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
24 */
9713
db62420a53a2 [gaim-migrate @ 10574]
Mark Doliner <mark@kingant.net>
parents: 8570
diff changeset
25 #ifndef _GAIM_ACCOUNTOPT_H_
db62420a53a2 [gaim-migrate @ 10574]
Mark Doliner <mark@kingant.net>
parents: 8570
diff changeset
26 #define _GAIM_ACCOUNTOPT_H_
5639
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
27
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
28 #include "prefs.h"
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
29
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
30 /**
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
31 * An option for an account.
6902
e30bedfb99db [gaim-migrate @ 7449]
Christian Hammond <chipx86@chipx86.com>
parents: 5944
diff changeset
32 *
5639
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
33 * This is set by protocol plugins, and appears in the account settings
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
34 * dialogs.
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
35 */
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
36 typedef struct
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
37 {
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
38 GaimPrefType type; /**< The type of value. */
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
39
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
40 char *text; /**< The text that will appear to the user. */
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
41 char *pref_name; /**< The name of the associated preference. */
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
42
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
43 union
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
44 {
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
45 gboolean boolean; /**< The default boolean value. */
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
46 int integer; /**< The default integer value. */
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
47 char *string; /**< The default string value. */
8570
1a62ab7225f3 [gaim-migrate @ 9318]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
48 GList *list; /**< The default list value. */
5639
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
49
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
50 } default_value;
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
51
10658
61930cadca7c [gaim-migrate @ 12190]
Mark Doliner <mark@kingant.net>
parents: 9713
diff changeset
52 gboolean masked;
61930cadca7c [gaim-migrate @ 12190]
Mark Doliner <mark@kingant.net>
parents: 9713
diff changeset
53
5639
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
54 } GaimAccountOption;
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
55
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
56 /**
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
57 * A username split.
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
58 *
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
59 * This is used by some protocols to separate the fields of the username
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
60 * into more human-readable components.
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
61 */
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
62 typedef struct
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
63 {
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
64 char *text; /**< The text that will appear to the user. */
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
65 char *default_value; /**< The default value. */
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
66 char field_sep; /**< The field separator. */
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
67
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
68 } GaimAccountUserSplit;
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
69
5944
158196b2db19 [gaim-migrate @ 6385]
Christian Hammond <chipx86@chipx86.com>
parents: 5660
diff changeset
70 #ifdef __cplusplus
158196b2db19 [gaim-migrate @ 6385]
Christian Hammond <chipx86@chipx86.com>
parents: 5660
diff changeset
71 extern "C" {
158196b2db19 [gaim-migrate @ 6385]
Christian Hammond <chipx86@chipx86.com>
parents: 5660
diff changeset
72 #endif
158196b2db19 [gaim-migrate @ 6385]
Christian Hammond <chipx86@chipx86.com>
parents: 5660
diff changeset
73
5639
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
74 /**************************************************************************/
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
75 /** @name Account Option API */
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
76 /**************************************************************************/
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
77 /*@{*/
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
78
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
79 /**
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
80 * Creates a new account option.
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
81 *
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
82 * @param type The type of option.
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
83 * @param text The text of the option.
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
84 * @param pref_name The account preference name for the option.
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
85 *
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
86 * @return The account option.
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
87 */
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
88 GaimAccountOption *gaim_account_option_new(GaimPrefType type, const char *text,
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
89 const char *pref_name);
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
90
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
91 /**
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
92 * Creates a new boolean account option.
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
93 *
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
94 * @param text The text of the option.
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
95 * @param pref_name The account preference name for the option.
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
96 * @param default_value The default value.
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
97 *
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
98 * @return The account option.
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
99 */
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
100 GaimAccountOption *gaim_account_option_bool_new(const char *text,
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
101 const char *pref_name,
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
102 gboolean default_value);
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
103
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
104 /**
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
105 * Creates a new integer account option.
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
106 *
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
107 * @param text The text of the option.
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
108 * @param pref_name The account preference name for the option.
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
109 * @param default_value The default value.
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
110 *
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
111 * @return The account option.
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
112 */
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
113 GaimAccountOption *gaim_account_option_int_new(const char *text,
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
114 const char *pref_name,
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
115 int default_value);
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
116
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
117 /**
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
118 * Creates a new string account option.
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
119 *
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
120 * @param text The text of the option.
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
121 * @param pref_name The account preference name for the option.
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
122 * @param default_value The default value.
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
123 *
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
124 * @return The account option.
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
125 */
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
126 GaimAccountOption *gaim_account_option_string_new(const char *text,
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
127 const char *pref_name,
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
128 const char *default_value);
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
129
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
130 /**
8570
1a62ab7225f3 [gaim-migrate @ 9318]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
131 * Creates a new list account option.
1a62ab7225f3 [gaim-migrate @ 9318]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
132 *
1a62ab7225f3 [gaim-migrate @ 9318]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
133 * The list passed will be owned by the account option, and the
1a62ab7225f3 [gaim-migrate @ 9318]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
134 * strings inside will be freed automatically.
1a62ab7225f3 [gaim-migrate @ 9318]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
135 *
12106
36a0c8719af3 [gaim-migrate @ 14403]
Sean Egan <seanegan@gmail.com>
parents: 10658
diff changeset
136 * The list is a list of GaimKeyValuePair items. The key is the ID stored and
36a0c8719af3 [gaim-migrate @ 14403]
Sean Egan <seanegan@gmail.com>
parents: 10658
diff changeset
137 * used internally, and the value is the label displayed.
8570
1a62ab7225f3 [gaim-migrate @ 9318]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
138 *
1a62ab7225f3 [gaim-migrate @ 9318]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
139 * @param text The text of the option.
1a62ab7225f3 [gaim-migrate @ 9318]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
140 * @param pref_name The account preference name for the option.
1a62ab7225f3 [gaim-migrate @ 9318]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
141 * @param list The key, value list.
1a62ab7225f3 [gaim-migrate @ 9318]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
142 *
1a62ab7225f3 [gaim-migrate @ 9318]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
143 * @return The account option.
1a62ab7225f3 [gaim-migrate @ 9318]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
144 */
1a62ab7225f3 [gaim-migrate @ 9318]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
145 GaimAccountOption *gaim_account_option_list_new(const char *text,
1a62ab7225f3 [gaim-migrate @ 9318]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
146 const char *pref_name,
1a62ab7225f3 [gaim-migrate @ 9318]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
147 GList *list);
1a62ab7225f3 [gaim-migrate @ 9318]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
148
1a62ab7225f3 [gaim-migrate @ 9318]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
149 /**
5639
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
150 * Destroys an account option.
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
151 *
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
152 * @param option The option to destroy.
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
153 */
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
154 void gaim_account_option_destroy(GaimAccountOption *option);
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
155
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
156 /**
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
157 * Sets the default boolean value for an account option.
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
158 *
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
159 * @param option The account option.
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
160 * @param value The default boolean value.
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
161 */
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
162 void gaim_account_option_set_default_bool(GaimAccountOption *option,
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
163 gboolean value);
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
164
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
165 /**
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
166 * Sets the default integer value for an account option.
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
167 *
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
168 * @param option The account option.
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
169 * @param value The default integer value.
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
170 */
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
171 void gaim_account_option_set_default_int(GaimAccountOption *option,
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
172 int value);
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
173
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
174 /**
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
175 * Sets the default string value for an account option.
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
176 *
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
177 * @param option The account option.
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
178 * @param value The default string value.
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
179 */
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
180 void gaim_account_option_set_default_string(GaimAccountOption *option,
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
181 const char *value);
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
182
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
183 /**
10658
61930cadca7c [gaim-migrate @ 12190]
Mark Doliner <mark@kingant.net>
parents: 9713
diff changeset
184 * Sets the masking for an account option.
61930cadca7c [gaim-migrate @ 12190]
Mark Doliner <mark@kingant.net>
parents: 9713
diff changeset
185 *
61930cadca7c [gaim-migrate @ 12190]
Mark Doliner <mark@kingant.net>
parents: 9713
diff changeset
186 * @param option The account option.
61930cadca7c [gaim-migrate @ 12190]
Mark Doliner <mark@kingant.net>
parents: 9713
diff changeset
187 * @param masked The masking.
61930cadca7c [gaim-migrate @ 12190]
Mark Doliner <mark@kingant.net>
parents: 9713
diff changeset
188 */
61930cadca7c [gaim-migrate @ 12190]
Mark Doliner <mark@kingant.net>
parents: 9713
diff changeset
189 void
61930cadca7c [gaim-migrate @ 12190]
Mark Doliner <mark@kingant.net>
parents: 9713
diff changeset
190 gaim_account_option_set_masked(GaimAccountOption *option, gboolean masked);
61930cadca7c [gaim-migrate @ 12190]
Mark Doliner <mark@kingant.net>
parents: 9713
diff changeset
191
61930cadca7c [gaim-migrate @ 12190]
Mark Doliner <mark@kingant.net>
parents: 9713
diff changeset
192 /**
8570
1a62ab7225f3 [gaim-migrate @ 9318]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
193 * Sets the list values for an account option.
1a62ab7225f3 [gaim-migrate @ 9318]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
194 *
1a62ab7225f3 [gaim-migrate @ 9318]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
195 * The list passed will be owned by the account option, and the
1a62ab7225f3 [gaim-migrate @ 9318]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
196 * strings inside will be freed automatically.
1a62ab7225f3 [gaim-migrate @ 9318]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
197 *
1a62ab7225f3 [gaim-migrate @ 9318]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
198 * The list is in key, value pairs. The key is the ID stored and used
1a62ab7225f3 [gaim-migrate @ 9318]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
199 * internally, and the value is the label displayed.
1a62ab7225f3 [gaim-migrate @ 9318]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
200 *
1a62ab7225f3 [gaim-migrate @ 9318]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
201 * @param option The account option.
1a62ab7225f3 [gaim-migrate @ 9318]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
202 * @param values The default list value.
1a62ab7225f3 [gaim-migrate @ 9318]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
203 */
1a62ab7225f3 [gaim-migrate @ 9318]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
204 void gaim_account_option_set_list(GaimAccountOption *option, GList *values);
1a62ab7225f3 [gaim-migrate @ 9318]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
205
1a62ab7225f3 [gaim-migrate @ 9318]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
206 /**
1a62ab7225f3 [gaim-migrate @ 9318]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
207 * Adds an item to a list account option.
1a62ab7225f3 [gaim-migrate @ 9318]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
208 *
1a62ab7225f3 [gaim-migrate @ 9318]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
209 * @param option The account option.
1a62ab7225f3 [gaim-migrate @ 9318]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
210 * @param key The key.
1a62ab7225f3 [gaim-migrate @ 9318]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
211 * @param value The value.
1a62ab7225f3 [gaim-migrate @ 9318]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
212 */
1a62ab7225f3 [gaim-migrate @ 9318]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
213 void gaim_account_option_add_list_item(GaimAccountOption *option,
1a62ab7225f3 [gaim-migrate @ 9318]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
214 const char *key, const char *value);
1a62ab7225f3 [gaim-migrate @ 9318]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
215
1a62ab7225f3 [gaim-migrate @ 9318]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
216 /**
5639
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
217 * Returns the specified account option's type.
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
218 *
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
219 * @param option The account option.
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
220 *
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
221 * @return The account option's type.
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
222 */
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
223 GaimPrefType gaim_account_option_get_type(const GaimAccountOption *option);
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
224
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
225 /**
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
226 * Returns the text for an account option.
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
227 *
13309
128324dcc821 [gaim-migrate @ 15675]
Richard Laager <rlaager@wiktel.com>
parents: 12172
diff changeset
228 * @param option The account option.
5639
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
229 *
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
230 * @return The account option's text.
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
231 */
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
232 const char *gaim_account_option_get_text(const GaimAccountOption *option);
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
233
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
234 /**
5660
1709a545a7bd [gaim-migrate @ 6074]
Christian Hammond <chipx86@chipx86.com>
parents: 5654
diff changeset
235 * Returns the account setting for an account option.
1709a545a7bd [gaim-migrate @ 6074]
Christian Hammond <chipx86@chipx86.com>
parents: 5654
diff changeset
236 *
13309
128324dcc821 [gaim-migrate @ 15675]
Richard Laager <rlaager@wiktel.com>
parents: 12172
diff changeset
237 * @param option The account option.
5660
1709a545a7bd [gaim-migrate @ 6074]
Christian Hammond <chipx86@chipx86.com>
parents: 5654
diff changeset
238 *
1709a545a7bd [gaim-migrate @ 6074]
Christian Hammond <chipx86@chipx86.com>
parents: 5654
diff changeset
239 * @return The account setting.
1709a545a7bd [gaim-migrate @ 6074]
Christian Hammond <chipx86@chipx86.com>
parents: 5654
diff changeset
240 */
1709a545a7bd [gaim-migrate @ 6074]
Christian Hammond <chipx86@chipx86.com>
parents: 5654
diff changeset
241 const char *gaim_account_option_get_setting(const GaimAccountOption *option);
1709a545a7bd [gaim-migrate @ 6074]
Christian Hammond <chipx86@chipx86.com>
parents: 5654
diff changeset
242
1709a545a7bd [gaim-migrate @ 6074]
Christian Hammond <chipx86@chipx86.com>
parents: 5654
diff changeset
243 /**
5639
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
244 * Returns the default boolean value for an account option.
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
245 *
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
246 * @param option The account option.
6902
e30bedfb99db [gaim-migrate @ 7449]
Christian Hammond <chipx86@chipx86.com>
parents: 5944
diff changeset
247 *
5639
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
248 * @return The default boolean value.
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
249 */
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
250 gboolean gaim_account_option_get_default_bool(const GaimAccountOption *option);
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
251
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
252 /**
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
253 * Returns the default integer value for an account option.
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
254 *
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
255 * @param option The account option.
6902
e30bedfb99db [gaim-migrate @ 7449]
Christian Hammond <chipx86@chipx86.com>
parents: 5944
diff changeset
256 *
5639
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
257 * @return The default integer value.
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
258 */
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
259 int gaim_account_option_get_default_int(const GaimAccountOption *option);
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
260
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
261 /**
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
262 * Returns the default string value for an account option.
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
263 *
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
264 * @param option The account option.
6902
e30bedfb99db [gaim-migrate @ 7449]
Christian Hammond <chipx86@chipx86.com>
parents: 5944
diff changeset
265 *
5639
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
266 * @return The default string value.
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
267 */
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
268 const char *gaim_account_option_get_default_string(
8570
1a62ab7225f3 [gaim-migrate @ 9318]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
269 const GaimAccountOption *option);
1a62ab7225f3 [gaim-migrate @ 9318]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
270
1a62ab7225f3 [gaim-migrate @ 9318]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
271 /**
12172
d5937f126c60 [gaim-migrate @ 14474]
Stu Tomlinson <stu@nosnilmot.com>
parents: 12106
diff changeset
272 * Returns the default string value for a list account option.
d5937f126c60 [gaim-migrate @ 14474]
Stu Tomlinson <stu@nosnilmot.com>
parents: 12106
diff changeset
273 *
d5937f126c60 [gaim-migrate @ 14474]
Stu Tomlinson <stu@nosnilmot.com>
parents: 12106
diff changeset
274 * @param option The account option.
d5937f126c60 [gaim-migrate @ 14474]
Stu Tomlinson <stu@nosnilmot.com>
parents: 12106
diff changeset
275 *
d5937f126c60 [gaim-migrate @ 14474]
Stu Tomlinson <stu@nosnilmot.com>
parents: 12106
diff changeset
276 * @return The default list string value.
d5937f126c60 [gaim-migrate @ 14474]
Stu Tomlinson <stu@nosnilmot.com>
parents: 12106
diff changeset
277 */
d5937f126c60 [gaim-migrate @ 14474]
Stu Tomlinson <stu@nosnilmot.com>
parents: 12106
diff changeset
278 const char *gaim_account_option_get_default_list_value(
d5937f126c60 [gaim-migrate @ 14474]
Stu Tomlinson <stu@nosnilmot.com>
parents: 12106
diff changeset
279 const GaimAccountOption *option);
d5937f126c60 [gaim-migrate @ 14474]
Stu Tomlinson <stu@nosnilmot.com>
parents: 12106
diff changeset
280
d5937f126c60 [gaim-migrate @ 14474]
Stu Tomlinson <stu@nosnilmot.com>
parents: 12106
diff changeset
281 /**
10658
61930cadca7c [gaim-migrate @ 12190]
Mark Doliner <mark@kingant.net>
parents: 9713
diff changeset
282 * Returns the masking for an account option.
61930cadca7c [gaim-migrate @ 12190]
Mark Doliner <mark@kingant.net>
parents: 9713
diff changeset
283 *
61930cadca7c [gaim-migrate @ 12190]
Mark Doliner <mark@kingant.net>
parents: 9713
diff changeset
284 * @param option The account option.
61930cadca7c [gaim-migrate @ 12190]
Mark Doliner <mark@kingant.net>
parents: 9713
diff changeset
285 *
61930cadca7c [gaim-migrate @ 12190]
Mark Doliner <mark@kingant.net>
parents: 9713
diff changeset
286 * @return The masking.
61930cadca7c [gaim-migrate @ 12190]
Mark Doliner <mark@kingant.net>
parents: 9713
diff changeset
287 */
61930cadca7c [gaim-migrate @ 12190]
Mark Doliner <mark@kingant.net>
parents: 9713
diff changeset
288 gboolean
61930cadca7c [gaim-migrate @ 12190]
Mark Doliner <mark@kingant.net>
parents: 9713
diff changeset
289 gaim_account_option_get_masked(const GaimAccountOption *option);
61930cadca7c [gaim-migrate @ 12190]
Mark Doliner <mark@kingant.net>
parents: 9713
diff changeset
290
61930cadca7c [gaim-migrate @ 12190]
Mark Doliner <mark@kingant.net>
parents: 9713
diff changeset
291 /**
8570
1a62ab7225f3 [gaim-migrate @ 9318]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
292 * Returns the list values for an account option.
1a62ab7225f3 [gaim-migrate @ 9318]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
293 *
1a62ab7225f3 [gaim-migrate @ 9318]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
294 * @param option The account option.
1a62ab7225f3 [gaim-migrate @ 9318]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
295 *
1a62ab7225f3 [gaim-migrate @ 9318]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
296 * @return The list values.
1a62ab7225f3 [gaim-migrate @ 9318]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
297 */
1a62ab7225f3 [gaim-migrate @ 9318]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
298 const GList *gaim_account_option_get_list(const GaimAccountOption *option);
5639
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
299
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
300 /*@}*/
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
301
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
302
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
303 /**************************************************************************/
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
304 /** @name Account User Split API */
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
305 /**************************************************************************/
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
306 /*@{*/
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
307
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
308 /**
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
309 * Creates a new account username split.
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
310 *
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
311 * @param text The text of the option.
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
312 * @param default_value The default value.
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
313 * @param sep The field separator.
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
314 *
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
315 * @return The new user split.
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
316 */
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
317 GaimAccountUserSplit *gaim_account_user_split_new(const char *text,
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
318 const char *default_value,
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
319 char sep);
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
320
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
321 /**
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
322 * Destroys an account username split.
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
323 *
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
324 * @param split The split to destroy.
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
325 */
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
326 void gaim_account_user_split_destroy(GaimAccountUserSplit *split);
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
327
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
328 /**
5654
c52a97f3739e [gaim-migrate @ 6068]
Christian Hammond <chipx86@chipx86.com>
parents: 5639
diff changeset
329 * Returns the text for an account username split.
c52a97f3739e [gaim-migrate @ 6068]
Christian Hammond <chipx86@chipx86.com>
parents: 5639
diff changeset
330 *
c52a97f3739e [gaim-migrate @ 6068]
Christian Hammond <chipx86@chipx86.com>
parents: 5639
diff changeset
331 * @param split The account username split.
c52a97f3739e [gaim-migrate @ 6068]
Christian Hammond <chipx86@chipx86.com>
parents: 5639
diff changeset
332 *
c52a97f3739e [gaim-migrate @ 6068]
Christian Hammond <chipx86@chipx86.com>
parents: 5639
diff changeset
333 * @return The account username split's text.
c52a97f3739e [gaim-migrate @ 6068]
Christian Hammond <chipx86@chipx86.com>
parents: 5639
diff changeset
334 */
c52a97f3739e [gaim-migrate @ 6068]
Christian Hammond <chipx86@chipx86.com>
parents: 5639
diff changeset
335 const char *gaim_account_user_split_get_text(const GaimAccountUserSplit *split);
c52a97f3739e [gaim-migrate @ 6068]
Christian Hammond <chipx86@chipx86.com>
parents: 5639
diff changeset
336
c52a97f3739e [gaim-migrate @ 6068]
Christian Hammond <chipx86@chipx86.com>
parents: 5639
diff changeset
337 /**
5639
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
338 * Returns the default string value for an account split.
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
339 *
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
340 * @param split The account username split.
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
341 *
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
342 * @return The default string.
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
343 */
5654
c52a97f3739e [gaim-migrate @ 6068]
Christian Hammond <chipx86@chipx86.com>
parents: 5639
diff changeset
344 const char *gaim_account_user_split_get_default_value(
5639
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
345 const GaimAccountUserSplit *split);
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
346
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
347 /**
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
348 * Returns the field separator for an account split.
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
349 *
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
350 * @param split The account username split.
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
351 *
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
352 * @return The field separator.
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
353 */
5654
c52a97f3739e [gaim-migrate @ 6068]
Christian Hammond <chipx86@chipx86.com>
parents: 5639
diff changeset
354 char gaim_account_user_split_get_separator(const GaimAccountUserSplit *split);
5639
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
355
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
356 /*@}*/
408fef845144 [gaim-migrate @ 6051]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
357
5944
158196b2db19 [gaim-migrate @ 6385]
Christian Hammond <chipx86@chipx86.com>
parents: 5660
diff changeset
358 #ifdef __cplusplus
158196b2db19 [gaim-migrate @ 6385]
Christian Hammond <chipx86@chipx86.com>
parents: 5660
diff changeset
359 }
158196b2db19 [gaim-migrate @ 6385]
Christian Hammond <chipx86@chipx86.com>
parents: 5660
diff changeset
360 #endif
158196b2db19 [gaim-migrate @ 6385]
Christian Hammond <chipx86@chipx86.com>
parents: 5660
diff changeset
361
9713
db62420a53a2 [gaim-migrate @ 10574]
Mark Doliner <mark@kingant.net>
parents: 8570
diff changeset
362 #endif /* _GAIM_ACCOUNTOPT_H_ */