core.h
Go to the documentation of this file.
1
7 /* purple
8 *
9 * Purple is the legal property of its developers, whose names are too numerous
10 * to list here. Please refer to the COPYRIGHT file distributed with this
11 * source distribution.
12 *
13 * This program is free software; you can redistribute it and/or modify
14 * it under the terms of the GNU General Public License as published by
15 * the Free Software Foundation; either version 2 of the License, or
16 * (at your option) any later version.
17 *
18 * This program is distributed in the hope that it will be useful,
19 * but WITHOUT ANY WARRANTY; without even the implied warranty of
20 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21 * GNU General Public License for more details.
22 *
23 * You should have received a copy of the GNU General Public License
24 * along with this program; if not, write to the Free Software
25 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA
26 */
27
37 #ifndef _PURPLE_CORE_H_
38 #define _PURPLE_CORE_H_
39
40 typedef struct PurpleCore PurpleCore;
41
46 typedef struct
47 {
52 void (*ui_prefs_init)(void);
59 void (*debug_ui_init)(void);
65 void (*ui_init)(void);
67 void (*quit)(void);
68
72 GHashTable* (*get_ui_info)(void);
73
74 void (*_purple_reserved1)(void);
75 void (*_purple_reserved2)(void);
76 void (*_purple_reserved3)(void);
77 } PurpleCoreUiOps;
78
79 #ifdef __cplusplus
80 extern "C" {
81 #endif
82
93 gboolean purple_core_init(const char *ui);
94
99 void purple_core_quit(void);
100
120 gboolean purple_core_quit_cb(gpointer unused);
121
127 const char *purple_core_get_version(void);
128
135 const char *purple_core_get_ui(void);
136
142 PurpleCore *purple_get_core(void);
143
149 void purple_core_set_ui_ops(PurpleCoreUiOps *ops);
150
156 PurpleCoreUiOps *purple_core_get_ui_ops(void);
157
167 gboolean purple_core_migrate(void);
168
180 gboolean purple_core_ensure_single_instance(void);
181
213 GHashTable* purple_core_get_ui_info(void);
214
215 #ifdef __cplusplus
216 }
217 #endif
218
219 #endif /* _PURPLE_CORE_H_ */
220
221 /*
222
223 /===-
224 `//"\\ """"`---.___.-""
225 ______-==| | | \\ _-"`
226 __--""" ,-/-==\\ | | `\ ,'
227 _-" /' | \\ ___ / / \ /
228 .' / | \\ /" "\ /' / \ /'
229 / ____ / | \`\.__/-"" D O \_/' / \/'
230 /-'" """""---__ | "-/" O G R /' _--"`
231 \_| / R __--_ t ), __--""
232 '""--_/ T _-"_>--<_\ h '-" \
233 {\__--_/} / \\__>--<__\ e B \
234 /' (_/ _-" | |__>--<__| U |
235 | _/) )-" | |__>--<__| R |
236 / /" ,_/ / /__>---<__/ N |
237 o-o _// /-"_>---<__-" I /
238 (^(" /"_>---<__- N _-"
239 ,/| /__>--<__/ A _-"
240 ,//('( |__>--<__| T / .----_
241 ( ( ')) |__>--<__| | /' _---_"\
242 `-)) )) ( |__>--<__| O | /' / "\`\
243 ,/,'//( ( \__>--<__\ R \ /' // ||
244 ,( ( ((, )) "-__>--<_"-_ "--____---"' _/'/ /'
245 `"/ )` ) ,/| "-_">--<_/-__ __-" _/
246 ._-"//( )/ )) ` ""-'_/_/ /"""""""__--"
247 ;'( ')/ ,)( """"""""""
248 ' ') '( (/
249 ' ' `
250
251 */
purple_core_set_ui_ops
void purple_core_set_ui_ops(PurpleCoreUiOps *ops)
Sets the UI ops for the core.
purple_core_quit
void purple_core_quit(void)
Quits the core of purple, which, depending on the UI, may quit the application using the purple core...
purple_core_get_version
const char * purple_core_get_version(void)
Returns the version of the core library.
purple_core_ensure_single_instance
gboolean purple_core_ensure_single_instance(void)
Ensures that only one instance is running.
purple_core_quit_cb
gboolean purple_core_quit_cb(gpointer unused)
purple_core_get_ui_ops
PurpleCoreUiOps * purple_core_get_ui_ops(void)
Returns the UI ops for the core.
purple_core_get_ui_info
GHashTable * purple_core_get_ui_info(void)
Returns a hash table containing various information about the UI.
PurpleCoreUiOps
Callbacks that fire at different points of the initialization and teardown of libpurple, along with a hook to return descriptive information about the UI.
Definition: core.h:46
purple_get_core
PurpleCore * purple_get_core(void)
Returns a handle to the purple core.
purple_core_migrate
gboolean purple_core_migrate(void)
Migrates from .gaim to .purple.
purple_core_init
gboolean purple_core_init(const char *ui)
Initializes the core of purple.
purple_core_get_ui
const char * purple_core_get_ui(void)
Returns the ID of the UI that is using the core, as passed to purple_core_init(). ...