libpurple/core.h

Thu, 14 Nov 2019 23:21:54 +0300

author
qarkai <qarkai@gmail.com>
date
Thu, 14 Nov 2019 23:21:54 +0300
changeset 40188
80e78796edb2
parent 40186
d7e2aba4d9f4
child 40243
474bc477bda8
permissions
-rw-r--r--

Revert (skip) annotations

20147
66f05a854eee applied changes from 8a731bbd0197fbcc91a705c2d8f528154216defa
Richard Laager <rlaager@pidgin.im>
parents: 19859
diff changeset
1 /* purple
2417
7751d1269b09 [gaim-migrate @ 2430]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
2 *
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
3 * Purple is the legal property of its developers, whose names are too numerous
8046
c581b20a47d6 [gaim-migrate @ 8730]
Sean Egan <seanegan@pidgin.im>
parents: 7646
diff changeset
4 * to list here. Please refer to the COPYRIGHT file distributed with this
c581b20a47d6 [gaim-migrate @ 8730]
Sean Egan <seanegan@pidgin.im>
parents: 7646
diff changeset
5 * source distribution.
6612
aac6af649208 [gaim-migrate @ 7136]
Christian Hammond <chipx86@chipx86.com>
parents: 6314
diff changeset
6 *
2417
7751d1269b09 [gaim-migrate @ 2430]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
7 * This program is free software; you can redistribute it and/or modify
7751d1269b09 [gaim-migrate @ 2430]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
8 * it under the terms of the GNU General Public License as published by
7751d1269b09 [gaim-migrate @ 2430]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
9 * the Free Software Foundation; either version 2 of the License, or
7751d1269b09 [gaim-migrate @ 2430]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
10 * (at your option) any later version.
7751d1269b09 [gaim-migrate @ 2430]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
11 *
7751d1269b09 [gaim-migrate @ 2430]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
12 * This program is distributed in the hope that it will be useful,
7751d1269b09 [gaim-migrate @ 2430]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
7751d1269b09 [gaim-migrate @ 2430]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
7751d1269b09 [gaim-migrate @ 2430]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
15 * GNU General Public License for more details.
7751d1269b09 [gaim-migrate @ 2430]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
16 *
7751d1269b09 [gaim-migrate @ 2430]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
17 * You should have received a copy of the GNU General Public License
7751d1269b09 [gaim-migrate @ 2430]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
18 * 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: 18606
diff changeset
19 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA
2417
7751d1269b09 [gaim-migrate @ 2430]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
20 */
35487
494f09f7f331 Move section blocks inside inclusion guards -- otherwise g-ir-scanner yells
Ankit Vani <a@nevitus.org>
parents: 35460
diff changeset
21
39659
e4dfb99b0cef Fix libpurple header guards using reserved names.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 39286
diff changeset
22 #ifndef PURPLE_CORE_H
e4dfb99b0cef Fix libpurple header guards using reserved names.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 39286
diff changeset
23 #define PURPLE_CORE_H
35437
1f82cf8c8378 Add section blocks for conversation.h to dbus-server.h
Ankit Vani <a@nevitus.org>
parents: 35418
diff changeset
24 /**
1f82cf8c8378 Add section blocks for conversation.h to dbus-server.h
Ankit Vani <a@nevitus.org>
parents: 35418
diff changeset
25 * SECTION:core
1f82cf8c8378 Add section blocks for conversation.h to dbus-server.h
Ankit Vani <a@nevitus.org>
parents: 35418
diff changeset
26 * @section_id: libpurple-core
1f82cf8c8378 Add section blocks for conversation.h to dbus-server.h
Ankit Vani <a@nevitus.org>
parents: 35418
diff changeset
27 * @short_description: <filename>core.h</filename>
35444
a4ece5a5565a Use upper-case first letters
Ankit Vani <a@nevitus.org>
parents: 35437
diff changeset
28 * @title: Startup and Shutdown of libpurple
35437
1f82cf8c8378 Add section blocks for conversation.h to dbus-server.h
Ankit Vani <a@nevitus.org>
parents: 35418
diff changeset
29 * @see_also: <link linkend="chapter-signals-core">Core signals</link>
28422
d866502c9a96 Make the doxygen docs easier to navigate. It was either this or a main page that says "Click on 'Modules'".
Paul Aurich <darkrain42@pidgin.im>
parents: 27408
diff changeset
30 */
d866502c9a96 Make the doxygen docs easier to navigate. It was either this or a main page that says "Click on 'Modules'".
Paul Aurich <darkrain42@pidgin.im>
parents: 27408
diff changeset
31
34896
1dfc0cdbeb8e Included glib.h in core.h
Ankit Vani <a@nevitus.org>
parents: 33955
diff changeset
32 #include <glib.h>
35572
5c4846317f2f Box the *UiOps structures
Ankit Vani <a@nevitus.org>
parents: 35487
diff changeset
33 #include <glib-object.h>
5c4846317f2f Box the *UiOps structures
Ankit Vani <a@nevitus.org>
parents: 35487
diff changeset
34
5c4846317f2f Box the *UiOps structures
Ankit Vani <a@nevitus.org>
parents: 35487
diff changeset
35 #define PURPLE_TYPE_CORE_UI_OPS (purple_core_ui_ops_get_type())
34896
1dfc0cdbeb8e Included glib.h in core.h
Ankit Vani <a@nevitus.org>
parents: 33955
diff changeset
36
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
37 typedef struct PurpleCore PurpleCore;
35460
96946e21fce5 Fix some more gtk-doc warnings till dnssrv
Ankit Vani <a@nevitus.org>
parents: 35444
diff changeset
38 typedef struct _PurpleCoreUiOps PurpleCoreUiOps;
6179
4df73df94250 [gaim-migrate @ 6664]
Christian Hammond <chipx86@chipx86.com>
parents: 6169
diff changeset
39
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
40 /**
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
41 * PurpleCoreUiOps:
35460
96946e21fce5 Fix some more gtk-doc warnings till dnssrv
Ankit Vani <a@nevitus.org>
parents: 35444
diff changeset
42 * @ui_prefs_init: Called just after the preferences subsystem is initialized;
96946e21fce5 Fix some more gtk-doc warnings till dnssrv
Ankit Vani <a@nevitus.org>
parents: 35444
diff changeset
43 * the UI could use this callback to add some preferences it
96946e21fce5 Fix some more gtk-doc warnings till dnssrv
Ankit Vani <a@nevitus.org>
parents: 35444
diff changeset
44 * needs to be in place when other subsystems are initialized.
96946e21fce5 Fix some more gtk-doc warnings till dnssrv
Ankit Vani <a@nevitus.org>
parents: 35444
diff changeset
45 * @debug_ui_init: Called just after the debug subsystem is initialized, but
96946e21fce5 Fix some more gtk-doc warnings till dnssrv
Ankit Vani <a@nevitus.org>
parents: 35444
diff changeset
46 * before just about every other component's initialization. The
96946e21fce5 Fix some more gtk-doc warnings till dnssrv
Ankit Vani <a@nevitus.org>
parents: 35444
diff changeset
47 * UI should use this hook to call purple_debug_set_ui_ops() so
96946e21fce5 Fix some more gtk-doc warnings till dnssrv
Ankit Vani <a@nevitus.org>
parents: 35444
diff changeset
48 * that debugging information for other components can be logged
96946e21fce5 Fix some more gtk-doc warnings till dnssrv
Ankit Vani <a@nevitus.org>
parents: 35444
diff changeset
49 * during their initialization.
96946e21fce5 Fix some more gtk-doc warnings till dnssrv
Ankit Vani <a@nevitus.org>
parents: 35444
diff changeset
50 * @ui_init: Called after all of libpurple has been initialized. The UI
96946e21fce5 Fix some more gtk-doc warnings till dnssrv
Ankit Vani <a@nevitus.org>
parents: 35444
diff changeset
51 * should use this hook to set all other necessary
96946e21fce5 Fix some more gtk-doc warnings till dnssrv
Ankit Vani <a@nevitus.org>
parents: 35444
diff changeset
52 * <link linkend="chapter-ui-ops"><literal>UiOps structures</literal></link>.
96946e21fce5 Fix some more gtk-doc warnings till dnssrv
Ankit Vani <a@nevitus.org>
parents: 35444
diff changeset
53 * @quit: Called after most of libpurple has been uninitialized.
96946e21fce5 Fix some more gtk-doc warnings till dnssrv
Ankit Vani <a@nevitus.org>
parents: 35444
diff changeset
54 * @get_ui_info: Called by purple_core_get_ui_info(); should return the
96946e21fce5 Fix some more gtk-doc warnings till dnssrv
Ankit Vani <a@nevitus.org>
parents: 35444
diff changeset
55 * information documented there.
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
56 *
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
57 * Callbacks that fire at different points of the initialization and teardown
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
58 * of libpurple, along with a hook to return descriptive information about the
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
59 * UI.
23511
650ebfc167ab Document PurpleCoreUiOps and purple_core_get_ui_info(), tweaking other core
Will Thompson <resiak@pidgin.im>
parents: 22107
diff changeset
60 */
35460
96946e21fce5 Fix some more gtk-doc warnings till dnssrv
Ankit Vani <a@nevitus.org>
parents: 35444
diff changeset
61 struct _PurpleCoreUiOps
6179
4df73df94250 [gaim-migrate @ 6664]
Christian Hammond <chipx86@chipx86.com>
parents: 6169
diff changeset
62 {
4df73df94250 [gaim-migrate @ 6664]
Christian Hammond <chipx86@chipx86.com>
parents: 6169
diff changeset
63 void (*ui_prefs_init)(void);
23511
650ebfc167ab Document PurpleCoreUiOps and purple_core_get_ui_info(), tweaking other core
Will Thompson <resiak@pidgin.im>
parents: 22107
diff changeset
64 void (*debug_ui_init)(void);
6179
4df73df94250 [gaim-migrate @ 6664]
Christian Hammond <chipx86@chipx86.com>
parents: 6169
diff changeset
65 void (*ui_init)(void);
35460
96946e21fce5 Fix some more gtk-doc warnings till dnssrv
Ankit Vani <a@nevitus.org>
parents: 35444
diff changeset
66
6179
4df73df94250 [gaim-migrate @ 6664]
Christian Hammond <chipx86@chipx86.com>
parents: 6169
diff changeset
67 void (*quit)(void);
23511
650ebfc167ab Document PurpleCoreUiOps and purple_core_get_ui_info(), tweaking other core
Will Thompson <resiak@pidgin.im>
parents: 22107
diff changeset
68
18441
d255d04c0aa1 core support for UI info...now to do the UI piece
Nathan Walp <nwalp@pidgin.im>
parents: 18072
diff changeset
69 GHashTable* (*get_ui_info)(void);
6179
4df73df94250 [gaim-migrate @ 6664]
Christian Hammond <chipx86@chipx86.com>
parents: 6169
diff changeset
70
35024
eb3afb7643ce Added /*< private >*/ for padding members, clean them up and add missing ones
Ankit Vani <a@nevitus.org>
parents: 34896
diff changeset
71 /*< private >*/
16743
1ce5ffe12e2a Initial addition of padding for ui_ops and other class-like structs
Gary Kramlich <grim@reaperworld.com>
parents: 16409
diff changeset
72 void (*_purple_reserved1)(void);
1ce5ffe12e2a Initial addition of padding for ui_ops and other class-like structs
Gary Kramlich <grim@reaperworld.com>
parents: 16409
diff changeset
73 void (*_purple_reserved2)(void);
1ce5ffe12e2a Initial addition of padding for ui_ops and other class-like structs
Gary Kramlich <grim@reaperworld.com>
parents: 16409
diff changeset
74 void (*_purple_reserved3)(void);
35024
eb3afb7643ce Added /*< private >*/ for padding members, clean them up and add missing ones
Ankit Vani <a@nevitus.org>
parents: 34896
diff changeset
75 void (*_purple_reserved4)(void);
35460
96946e21fce5 Fix some more gtk-doc warnings till dnssrv
Ankit Vani <a@nevitus.org>
parents: 35444
diff changeset
76 };
6179
4df73df94250 [gaim-migrate @ 6664]
Christian Hammond <chipx86@chipx86.com>
parents: 6169
diff changeset
77
32787
7072f190d6ad Use G_BEGIN/END_DECLS in public libpurple files. This was
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32438
diff changeset
78 G_BEGIN_DECLS
6314
25bba03c42cd [gaim-migrate @ 6813]
Christian Hammond <chipx86@chipx86.com>
parents: 6182
diff changeset
79
6179
4df73df94250 [gaim-migrate @ 6664]
Christian Hammond <chipx86@chipx86.com>
parents: 6169
diff changeset
80 /**
35572
5c4846317f2f Box the *UiOps structures
Ankit Vani <a@nevitus.org>
parents: 35487
diff changeset
81 * purple_core_ui_ops_get_type:
5c4846317f2f Box the *UiOps structures
Ankit Vani <a@nevitus.org>
parents: 35487
diff changeset
82 *
5c4846317f2f Box the *UiOps structures
Ankit Vani <a@nevitus.org>
parents: 35487
diff changeset
83 * Returns: The #GType for the #PurpleCoreUiOps boxed structure.
5c4846317f2f Box the *UiOps structures
Ankit Vani <a@nevitus.org>
parents: 35487
diff changeset
84 */
5c4846317f2f Box the *UiOps structures
Ankit Vani <a@nevitus.org>
parents: 35487
diff changeset
85 GType purple_core_ui_ops_get_type(void);
5c4846317f2f Box the *UiOps structures
Ankit Vani <a@nevitus.org>
parents: 35487
diff changeset
86
5c4846317f2f Box the *UiOps structures
Ankit Vani <a@nevitus.org>
parents: 35487
diff changeset
87 /**
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
88 * purple_core_init:
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
89 * @ui: The ID of the UI using the core. This should be a
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
90 * unique ID, registered with the purple team.
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
91 *
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
92 * Initializes the core of purple.
6179
4df73df94250 [gaim-migrate @ 6664]
Christian Hammond <chipx86@chipx86.com>
parents: 6169
diff changeset
93 *
4df73df94250 [gaim-migrate @ 6664]
Christian Hammond <chipx86@chipx86.com>
parents: 6169
diff changeset
94 * This will setup preferences for all the core subsystems.
4df73df94250 [gaim-migrate @ 6664]
Christian Hammond <chipx86@chipx86.com>
parents: 6169
diff changeset
95 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
96 * Returns: %TRUE if successful, or %FALSE otherwise.
6179
4df73df94250 [gaim-migrate @ 6664]
Christian Hammond <chipx86@chipx86.com>
parents: 6169
diff changeset
97 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
98 gboolean purple_core_init(const char *ui);
6179
4df73df94250 [gaim-migrate @ 6664]
Christian Hammond <chipx86@chipx86.com>
parents: 6169
diff changeset
99
4df73df94250 [gaim-migrate @ 6664]
Christian Hammond <chipx86@chipx86.com>
parents: 6169
diff changeset
100 /**
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
101 * purple_core_quit:
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
102 *
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
103 * Quits the core of purple, which, depending on the UI, may quit the
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
104 * application using the purple core.
6179
4df73df94250 [gaim-migrate @ 6664]
Christian Hammond <chipx86@chipx86.com>
parents: 6169
diff changeset
105 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
106 void purple_core_quit(void);
2417
7751d1269b09 [gaim-migrate @ 2430]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
107
6179
4df73df94250 [gaim-migrate @ 6664]
Christian Hammond <chipx86@chipx86.com>
parents: 6169
diff changeset
108 /**
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
109 * purple_core_quit_cb:
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
110 *
25888
d0fdd378a635 Remove trailing whitespace
Mark Doliner <markdoliner@pidgin.im>
parents: 23545
diff changeset
111 * Calls purple_core_quit(). This can be used as the function
38434
100b822f737a eventloop: Remove purple_timeout_* functions
Mike Ruprecht <cmaiku@gmail.com>
parents: 37113
diff changeset
112 * passed to g_timeout_add() when you want to shutdown Purple
25888
d0fdd378a635 Remove trailing whitespace
Mark Doliner <markdoliner@pidgin.im>
parents: 23545
diff changeset
113 * in a specified amount of time. When shutting down Purple
22107
776a0aa56a41 Clarify a comment that was confusing me. Thanks resiak!
Richard Laager <rlaager@pidgin.im>
parents: 20889
diff changeset
114 * from a plugin, you must use this instead of purple_core_quit();
25888
d0fdd378a635 Remove trailing whitespace
Mark Doliner <markdoliner@pidgin.im>
parents: 23545
diff changeset
115 * for an immediate exit, use a timeout value of 0:
23511
650ebfc167ab Document PurpleCoreUiOps and purple_core_get_ui_info(), tweaking other core
Will Thompson <resiak@pidgin.im>
parents: 22107
diff changeset
116 *
35404
8f134af3e36d Fix gtk-doc errors
Ankit Vani <a@nevitus.org>
parents: 35397
diff changeset
117 * <programlisting>
38434
100b822f737a eventloop: Remove purple_timeout_* functions
Mike Ruprecht <cmaiku@gmail.com>
parents: 37113
diff changeset
118 * g_timeout_add(0, purple_core_quitcb, NULL)
35404
8f134af3e36d Fix gtk-doc errors
Ankit Vani <a@nevitus.org>
parents: 35397
diff changeset
119 * </programlisting>
23511
650ebfc167ab Document PurpleCoreUiOps and purple_core_get_ui_info(), tweaking other core
Will Thompson <resiak@pidgin.im>
parents: 22107
diff changeset
120 *
25888
d0fdd378a635 Remove trailing whitespace
Mark Doliner <markdoliner@pidgin.im>
parents: 23545
diff changeset
121 * This is ensures that code from your plugin is not being
22107
776a0aa56a41 Clarify a comment that was confusing me. Thanks resiak!
Richard Laager <rlaager@pidgin.im>
parents: 20889
diff changeset
122 * executed when purple_core_quit() is called. If the plugin
776a0aa56a41 Clarify a comment that was confusing me. Thanks resiak!
Richard Laager <rlaager@pidgin.im>
parents: 20889
diff changeset
123 * called purple_core_quit() directly, you would get a core dump
776a0aa56a41 Clarify a comment that was confusing me. Thanks resiak!
Richard Laager <rlaager@pidgin.im>
parents: 20889
diff changeset
124 * after purple_core_quit() executes and control returns to your
776a0aa56a41 Clarify a comment that was confusing me. Thanks resiak!
Richard Laager <rlaager@pidgin.im>
parents: 20889
diff changeset
125 * plugin because purple_core_quit() frees all plugins.
7646
6806a6893ac0 [gaim-migrate @ 8289]
Mark Doliner <markdoliner@pidgin.im>
parents: 7082
diff changeset
126 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
127 gboolean purple_core_quit_cb(gpointer unused);
7646
6806a6893ac0 [gaim-migrate @ 8289]
Mark Doliner <markdoliner@pidgin.im>
parents: 7082
diff changeset
128
6806a6893ac0 [gaim-migrate @ 8289]
Mark Doliner <markdoliner@pidgin.im>
parents: 7082
diff changeset
129 /**
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
130 * purple_core_get_version:
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
131 *
6612
aac6af649208 [gaim-migrate @ 7136]
Christian Hammond <chipx86@chipx86.com>
parents: 6314
diff changeset
132 * Returns the version of the core library.
aac6af649208 [gaim-migrate @ 7136]
Christian Hammond <chipx86@chipx86.com>
parents: 6314
diff changeset
133 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
134 * Returns: The version of the core library.
6612
aac6af649208 [gaim-migrate @ 7136]
Christian Hammond <chipx86@chipx86.com>
parents: 6314
diff changeset
135 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
136 const char *purple_core_get_version(void);
6612
aac6af649208 [gaim-migrate @ 7136]
Christian Hammond <chipx86@chipx86.com>
parents: 6314
diff changeset
137
aac6af649208 [gaim-migrate @ 7136]
Christian Hammond <chipx86@chipx86.com>
parents: 6314
diff changeset
138 /**
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
139 * purple_core_get_ui:
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
140 *
23511
650ebfc167ab Document PurpleCoreUiOps and purple_core_get_ui_info(), tweaking other core
Will Thompson <resiak@pidgin.im>
parents: 22107
diff changeset
141 * Returns the ID of the UI that is using the core, as passed to
650ebfc167ab Document PurpleCoreUiOps and purple_core_get_ui_info(), tweaking other core
Will Thompson <resiak@pidgin.im>
parents: 22107
diff changeset
142 * purple_core_init().
6179
4df73df94250 [gaim-migrate @ 6664]
Christian Hammond <chipx86@chipx86.com>
parents: 6169
diff changeset
143 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
144 * Returns: The ID of the UI that is currently using the core.
6179
4df73df94250 [gaim-migrate @ 6664]
Christian Hammond <chipx86@chipx86.com>
parents: 6169
diff changeset
145 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
146 const char *purple_core_get_ui(void);
6179
4df73df94250 [gaim-migrate @ 6664]
Christian Hammond <chipx86@chipx86.com>
parents: 6169
diff changeset
147
4df73df94250 [gaim-migrate @ 6664]
Christian Hammond <chipx86@chipx86.com>
parents: 6169
diff changeset
148 /**
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
149 * purple_get_core:
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
150 *
35460
96946e21fce5 Fix some more gtk-doc warnings till dnssrv
Ankit Vani <a@nevitus.org>
parents: 35444
diff changeset
151 * This is used to connect to
96946e21fce5 Fix some more gtk-doc warnings till dnssrv
Ankit Vani <a@nevitus.org>
parents: 35444
diff changeset
152 * <link linkend="chapter-signals-core">core signals</link>.
6179
4df73df94250 [gaim-migrate @ 6664]
Christian Hammond <chipx86@chipx86.com>
parents: 6169
diff changeset
153 *
40188
80e78796edb2 Revert (skip) annotations
qarkai <qarkai@gmail.com>
parents: 40186
diff changeset
154 * Returns: (transfer none): A handle to the purple core.
6179
4df73df94250 [gaim-migrate @ 6664]
Christian Hammond <chipx86@chipx86.com>
parents: 6169
diff changeset
155 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
156 PurpleCore *purple_get_core(void);
6179
4df73df94250 [gaim-migrate @ 6664]
Christian Hammond <chipx86@chipx86.com>
parents: 6169
diff changeset
157
4df73df94250 [gaim-migrate @ 6664]
Christian Hammond <chipx86@chipx86.com>
parents: 6169
diff changeset
158 /**
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
159 * purple_core_set_ui_ops:
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
160 * @ops: A UI ops structure for the core.
6179
4df73df94250 [gaim-migrate @ 6664]
Christian Hammond <chipx86@chipx86.com>
parents: 6169
diff changeset
161 *
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
162 * Sets the UI ops for the core.
6179
4df73df94250 [gaim-migrate @ 6664]
Christian Hammond <chipx86@chipx86.com>
parents: 6169
diff changeset
163 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
164 void purple_core_set_ui_ops(PurpleCoreUiOps *ops);
6179
4df73df94250 [gaim-migrate @ 6664]
Christian Hammond <chipx86@chipx86.com>
parents: 6169
diff changeset
165
4df73df94250 [gaim-migrate @ 6664]
Christian Hammond <chipx86@chipx86.com>
parents: 6169
diff changeset
166 /**
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
167 * purple_core_get_ui_ops:
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
168 *
6179
4df73df94250 [gaim-migrate @ 6664]
Christian Hammond <chipx86@chipx86.com>
parents: 6169
diff changeset
169 * Returns the UI ops for the core.
4df73df94250 [gaim-migrate @ 6664]
Christian Hammond <chipx86@chipx86.com>
parents: 6169
diff changeset
170 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
171 * Returns: The core's UI ops structure.
6179
4df73df94250 [gaim-migrate @ 6664]
Christian Hammond <chipx86@chipx86.com>
parents: 6169
diff changeset
172 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
173 PurpleCoreUiOps *purple_core_get_ui_ops(void);
6179
4df73df94250 [gaim-migrate @ 6664]
Christian Hammond <chipx86@chipx86.com>
parents: 6169
diff changeset
174
16409
8c153c6febdd The core portion of the migration code. This is implemented as I described
Richard Laager <rlaager@pidgin.im>
parents: 16256
diff changeset
175 /**
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
176 * purple_core_get_ui_info:
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
177 *
23511
650ebfc167ab Document PurpleCoreUiOps and purple_core_get_ui_info(), tweaking other core
Will Thompson <resiak@pidgin.im>
parents: 22107
diff changeset
178 * Returns a hash table containing various information about the UI. The
650ebfc167ab Document PurpleCoreUiOps and purple_core_get_ui_info(), tweaking other core
Will Thompson <resiak@pidgin.im>
parents: 22107
diff changeset
179 * following well-known entries may be in the table (along with any others the
650ebfc167ab Document PurpleCoreUiOps and purple_core_get_ui_info(), tweaking other core
Will Thompson <resiak@pidgin.im>
parents: 22107
diff changeset
180 * UI might choose to include):
650ebfc167ab Document PurpleCoreUiOps and purple_core_get_ui_info(), tweaking other core
Will Thompson <resiak@pidgin.im>
parents: 22107
diff changeset
181 *
35404
8f134af3e36d Fix gtk-doc errors
Ankit Vani <a@nevitus.org>
parents: 35397
diff changeset
182 * <informaltable frame='none'>
8f134af3e36d Fix gtk-doc errors
Ankit Vani <a@nevitus.org>
parents: 35397
diff changeset
183 * <tgroup cols='2'><tbody>
8f134af3e36d Fix gtk-doc errors
Ankit Vani <a@nevitus.org>
parents: 35397
diff changeset
184 * <row>
35418
78f57b23470e Use <literal>'s in core's table
Ankit Vani <a@nevitus.org>
parents: 35404
diff changeset
185 * <entry><literal>name</literal></entry>
35404
8f134af3e36d Fix gtk-doc errors
Ankit Vani <a@nevitus.org>
parents: 35397
diff changeset
186 * <entry>the user-readable name for the UI.</entry>
8f134af3e36d Fix gtk-doc errors
Ankit Vani <a@nevitus.org>
parents: 35397
diff changeset
187 * </row>
8f134af3e36d Fix gtk-doc errors
Ankit Vani <a@nevitus.org>
parents: 35397
diff changeset
188 * <row>
35418
78f57b23470e Use <literal>'s in core's table
Ankit Vani <a@nevitus.org>
parents: 35404
diff changeset
189 * <entry><literal>version</literal></entry>
35404
8f134af3e36d Fix gtk-doc errors
Ankit Vani <a@nevitus.org>
parents: 35397
diff changeset
190 * <entry>a user-readable description of the current version of the UI.</entry>
8f134af3e36d Fix gtk-doc errors
Ankit Vani <a@nevitus.org>
parents: 35397
diff changeset
191 * </row>
8f134af3e36d Fix gtk-doc errors
Ankit Vani <a@nevitus.org>
parents: 35397
diff changeset
192 * <row>
35418
78f57b23470e Use <literal>'s in core's table
Ankit Vani <a@nevitus.org>
parents: 35404
diff changeset
193 * <entry><literal>website</literal></entry>
35404
8f134af3e36d Fix gtk-doc errors
Ankit Vani <a@nevitus.org>
parents: 35397
diff changeset
194 * <entry>the UI's website, such as https://pidgin.im.</entry>
8f134af3e36d Fix gtk-doc errors
Ankit Vani <a@nevitus.org>
parents: 35397
diff changeset
195 * </row>
8f134af3e36d Fix gtk-doc errors
Ankit Vani <a@nevitus.org>
parents: 35397
diff changeset
196 * <row>
35418
78f57b23470e Use <literal>'s in core's table
Ankit Vani <a@nevitus.org>
parents: 35404
diff changeset
197 * <entry><literal>dev_website</literal></entry>
35404
8f134af3e36d Fix gtk-doc errors
Ankit Vani <a@nevitus.org>
parents: 35397
diff changeset
198 * <entry>the UI's development/support website, such as
8f134af3e36d Fix gtk-doc errors
Ankit Vani <a@nevitus.org>
parents: 35397
diff changeset
199 * https://developer.pidgin.im.</entry>
8f134af3e36d Fix gtk-doc errors
Ankit Vani <a@nevitus.org>
parents: 35397
diff changeset
200 * </row>
8f134af3e36d Fix gtk-doc errors
Ankit Vani <a@nevitus.org>
parents: 35397
diff changeset
201 * <row>
35418
78f57b23470e Use <literal>'s in core's table
Ankit Vani <a@nevitus.org>
parents: 35404
diff changeset
202 * <entry><literal>client_type</literal></entry>
35404
8f134af3e36d Fix gtk-doc errors
Ankit Vani <a@nevitus.org>
parents: 35397
diff changeset
203 * <entry>the type of UI. Possible values include 'pc', 'console', 'phone',
27408
056092bcdfd4 Clarify the usage of client_type (i.e. these values are matched against using
Paul Aurich <darkrain42@pidgin.im>
parents: 26046
diff changeset
204 * 'handheld', 'web', and 'bot'. These values are compared
35404
8f134af3e36d Fix gtk-doc errors
Ankit Vani <a@nevitus.org>
parents: 35397
diff changeset
205 * programmatically and should not be localized.</entry>
8f134af3e36d Fix gtk-doc errors
Ankit Vani <a@nevitus.org>
parents: 35397
diff changeset
206 * </row>
8f134af3e36d Fix gtk-doc errors
Ankit Vani <a@nevitus.org>
parents: 35397
diff changeset
207 * </tbody></tgroup>
8f134af3e36d Fix gtk-doc errors
Ankit Vani <a@nevitus.org>
parents: 35397
diff changeset
208 * </informaltable>
18441
d255d04c0aa1 core support for UI info...now to do the UI piece
Nathan Walp <nwalp@pidgin.im>
parents: 18072
diff changeset
209 *
39738
14d425a528ad Add missing transfer annotations.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 39659
diff changeset
210 * Returns: (transfer none): A GHashTable with strings for keys and values.
14d425a528ad Add missing transfer annotations.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 39659
diff changeset
211 * This hash table should not be modified.
18441
d255d04c0aa1 core support for UI info...now to do the UI piece
Nathan Walp <nwalp@pidgin.im>
parents: 18072
diff changeset
212 *
d255d04c0aa1 core support for UI info...now to do the UI piece
Nathan Walp <nwalp@pidgin.im>
parents: 18072
diff changeset
213 */
d255d04c0aa1 core support for UI info...now to do the UI piece
Nathan Walp <nwalp@pidgin.im>
parents: 18072
diff changeset
214 GHashTable* purple_core_get_ui_info(void);
d255d04c0aa1 core support for UI info...now to do the UI piece
Nathan Walp <nwalp@pidgin.im>
parents: 18072
diff changeset
215
38893
ea7c40572374 Move migration to core, check for errors
qarkai <qarkai@gmail.com>
parents: 37113
diff changeset
216 /**
ea7c40572374 Move migration to core, check for errors
qarkai <qarkai@gmail.com>
parents: 37113
diff changeset
217 * purple_core_migrate_to_xdg_base_dirs:
ea7c40572374 Move migration to core, check for errors
qarkai <qarkai@gmail.com>
parents: 37113
diff changeset
218 *
ea7c40572374 Move migration to core, check for errors
qarkai <qarkai@gmail.com>
parents: 37113
diff changeset
219 * Migrates from legacy directory for libpurple to location following
ea7c40572374 Move migration to core, check for errors
qarkai <qarkai@gmail.com>
parents: 37113
diff changeset
220 * XDG base dir spec. https://developer.pidgin.im/ticket/10029
ea7c40572374 Move migration to core, check for errors
qarkai <qarkai@gmail.com>
parents: 37113
diff changeset
221 * NOTE This is not finished yet. Need to decide where other profile files
38899
73b49f76016a Some fixes
qarkai <qarkai@gmail.com>
parents: 38893
diff changeset
222 * should be moved. Search for usages of purple_user_dir().
38893
ea7c40572374 Move migration to core, check for errors
qarkai <qarkai@gmail.com>
parents: 37113
diff changeset
223 *
ea7c40572374 Move migration to core, check for errors
qarkai <qarkai@gmail.com>
parents: 37113
diff changeset
224 * Returns: TRUE if migrated successfully, FALSE otherwise. On failure,
ea7c40572374 Move migration to core, check for errors
qarkai <qarkai@gmail.com>
parents: 37113
diff changeset
225 * the application must display an error to the user and then exit.
ea7c40572374 Move migration to core, check for errors
qarkai <qarkai@gmail.com>
parents: 37113
diff changeset
226 */
ea7c40572374 Move migration to core, check for errors
qarkai <qarkai@gmail.com>
parents: 37113
diff changeset
227 gboolean purple_core_migrate_to_xdg_base_dirs(void);
ea7c40572374 Move migration to core, check for errors
qarkai <qarkai@gmail.com>
parents: 37113
diff changeset
228
32787
7072f190d6ad Use G_BEGIN/END_DECLS in public libpurple files. This was
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32438
diff changeset
229 G_END_DECLS
6314
25bba03c42cd [gaim-migrate @ 6813]
Christian Hammond <chipx86@chipx86.com>
parents: 6182
diff changeset
230
39659
e4dfb99b0cef Fix libpurple header guards using reserved names.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 39286
diff changeset
231 #endif /* PURPLE_CORE_H */
5862
1099a19a8351 [gaim-migrate @ 6293]
Sean Egan <seanegan@pidgin.im>
parents: 5859
diff changeset
232
1099a19a8351 [gaim-migrate @ 6293]
Sean Egan <seanegan@pidgin.im>
parents: 5859
diff changeset
233 /*
1099a19a8351 [gaim-migrate @ 6293]
Sean Egan <seanegan@pidgin.im>
parents: 5859
diff changeset
234
1099a19a8351 [gaim-migrate @ 6293]
Sean Egan <seanegan@pidgin.im>
parents: 5859
diff changeset
235 /===-
1099a19a8351 [gaim-migrate @ 6293]
Sean Egan <seanegan@pidgin.im>
parents: 5859
diff changeset
236 `//"\\ """"`---.___.-""
1099a19a8351 [gaim-migrate @ 6293]
Sean Egan <seanegan@pidgin.im>
parents: 5859
diff changeset
237 ______-==| | | \\ _-"`
1099a19a8351 [gaim-migrate @ 6293]
Sean Egan <seanegan@pidgin.im>
parents: 5859
diff changeset
238 __--""" ,-/-==\\ | | `\ ,'
1099a19a8351 [gaim-migrate @ 6293]
Sean Egan <seanegan@pidgin.im>
parents: 5859
diff changeset
239 _-" /' | \\ ___ / / \ /
1099a19a8351 [gaim-migrate @ 6293]
Sean Egan <seanegan@pidgin.im>
parents: 5859
diff changeset
240 .' / | \\ /" "\ /' / \ /'
6169
d23c0f0228ae [gaim-migrate @ 6652]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
241 / ____ / | \`\.__/-"" D O \_/' / \/'
d23c0f0228ae [gaim-migrate @ 6652]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
242 /-'" """""---__ | "-/" O G R /' _--"`
6179
4df73df94250 [gaim-migrate @ 6664]
Christian Hammond <chipx86@chipx86.com>
parents: 6169
diff changeset
243 \_| / R __--_ t ), __--""
4df73df94250 [gaim-migrate @ 6664]
Christian Hammond <chipx86@chipx86.com>
parents: 6169
diff changeset
244 '""--_/ T _-"_>--<_\ h '-" \
4df73df94250 [gaim-migrate @ 6664]
Christian Hammond <chipx86@chipx86.com>
parents: 6169
diff changeset
245 {\__--_/} / \\__>--<__\ e B \
6169
d23c0f0228ae [gaim-migrate @ 6652]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
246 /' (_/ _-" | |__>--<__| U |
d23c0f0228ae [gaim-migrate @ 6652]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
247 | _/) )-" | |__>--<__| R |
d23c0f0228ae [gaim-migrate @ 6652]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
248 / /" ,_/ / /__>---<__/ N |
d23c0f0228ae [gaim-migrate @ 6652]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
249 o-o _// /-"_>---<__-" I /
d23c0f0228ae [gaim-migrate @ 6652]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
250 (^(" /"_>---<__- N _-"
d23c0f0228ae [gaim-migrate @ 6652]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
251 ,/| /__>--<__/ A _-"
d23c0f0228ae [gaim-migrate @ 6652]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
252 ,//('( |__>--<__| T / .----_
5862
1099a19a8351 [gaim-migrate @ 6293]
Sean Egan <seanegan@pidgin.im>
parents: 5859
diff changeset
253 ( ( ')) |__>--<__| | /' _---_"\
6169
d23c0f0228ae [gaim-migrate @ 6652]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
254 `-)) )) ( |__>--<__| O | /' / "\`\
d23c0f0228ae [gaim-migrate @ 6652]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
255 ,/,'//( ( \__>--<__\ R \ /' // ||
5862
1099a19a8351 [gaim-migrate @ 6293]
Sean Egan <seanegan@pidgin.im>
parents: 5859
diff changeset
256 ,( ( ((, )) "-__>--<_"-_ "--____---"' _/'/ /'
1099a19a8351 [gaim-migrate @ 6293]
Sean Egan <seanegan@pidgin.im>
parents: 5859
diff changeset
257 `"/ )` ) ,/| "-_">--<_/-__ __-" _/
1099a19a8351 [gaim-migrate @ 6293]
Sean Egan <seanegan@pidgin.im>
parents: 5859
diff changeset
258 ._-"//( )/ )) ` ""-'_/_/ /"""""""__--"
1099a19a8351 [gaim-migrate @ 6293]
Sean Egan <seanegan@pidgin.im>
parents: 5859
diff changeset
259 ;'( ')/ ,)( """"""""""
1099a19a8351 [gaim-migrate @ 6293]
Sean Egan <seanegan@pidgin.im>
parents: 5859
diff changeset
260 ' ') '( (/
1099a19a8351 [gaim-migrate @ 6293]
Sean Egan <seanegan@pidgin.im>
parents: 5859
diff changeset
261 ' ' `
1099a19a8351 [gaim-migrate @ 6293]
Sean Egan <seanegan@pidgin.im>
parents: 5859
diff changeset
262
1099a19a8351 [gaim-migrate @ 6293]
Sean Egan <seanegan@pidgin.im>
parents: 5859
diff changeset
263 */

mercurial