libpurple/status.h

Wed, 29 Jan 2014 05:28:33 +0530

author
Ankit Vani <a@nevitus.org>
date
Wed, 29 Jan 2014 05:28:33 +0530
branch
soc.2013.gobjectification.plugins
changeset 37017
8e2b68c79fa1
parent 36960
11e9cd6fd6a3
child 37021
04c99b24db84
permissions
-rw-r--r--

Convert doxygen's @return and @param commands for gtk-doc

34834
f45f0745da61 Started GObjectification of PurplePresence.
Ankit Vani <a@nevitus.org>
parents: 34801
diff changeset
1 /**
f45f0745da61 Started GObjectification of PurplePresence.
Ankit Vani <a@nevitus.org>
parents: 34801
diff changeset
2 * @file status.h Status API
f45f0745da61 Started GObjectification of PurplePresence.
Ankit Vani <a@nevitus.org>
parents: 34801
diff changeset
3 * @ingroup core
f45f0745da61 Started GObjectification of PurplePresence.
Ankit Vani <a@nevitus.org>
parents: 34801
diff changeset
4 */
11035
c10c382f4896 [gaim-migrate @ 12922]
Gary Kramlich <grim@reaperworld.com>
parents: 10860
diff changeset
5 /*
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
6 * purple
6065
ccd9672f9636 [gaim-migrate @ 6515]
Sean Egan <seanegan@pidgin.im>
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: 6065
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: 6065
diff changeset
10 * source distribution.
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
11 *
6065
ccd9672f9636 [gaim-migrate @ 6515]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
12 * This program is free software; you can redistribute it and/or modify
ccd9672f9636 [gaim-migrate @ 6515]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
13 * it under the terms of the GNU General Public License as published by
ccd9672f9636 [gaim-migrate @ 6515]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
14 * the Free Software Foundation; either version 2 of the License, or
ccd9672f9636 [gaim-migrate @ 6515]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
15 * (at your option) any later version.
ccd9672f9636 [gaim-migrate @ 6515]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
16 *
ccd9672f9636 [gaim-migrate @ 6515]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
17 * This program is distributed in the hope that it will be useful,
ccd9672f9636 [gaim-migrate @ 6515]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
18 * but WITHOUT ANY WARRANTY; without even the implied warranty of
ccd9672f9636 [gaim-migrate @ 6515]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
19 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
ccd9672f9636 [gaim-migrate @ 6515]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
20 * GNU General Public License for more details.
ccd9672f9636 [gaim-migrate @ 6515]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
21 *
ccd9672f9636 [gaim-migrate @ 6515]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
22 * You should have received a copy of the GNU General Public License
ccd9672f9636 [gaim-migrate @ 6515]
Sean Egan <seanegan@pidgin.im>
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: 18243
diff changeset
24 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA
6065
ccd9672f9636 [gaim-migrate @ 6515]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
25 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
26 #ifndef _PURPLE_STATUS_H_
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
27 #define _PURPLE_STATUS_H_
6065
ccd9672f9636 [gaim-migrate @ 6515]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
28
34854
8417ea6a9235 Started GObjectification of PurpleStatus.
Ankit Vani <a@nevitus.org>
parents: 34852
diff changeset
29 #define PURPLE_TYPE_STATUS (purple_status_get_type())
8417ea6a9235 Started GObjectification of PurpleStatus.
Ankit Vani <a@nevitus.org>
parents: 34852
diff changeset
30 #define PURPLE_STATUS(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), PURPLE_TYPE_STATUS, PurpleStatus))
8417ea6a9235 Started GObjectification of PurpleStatus.
Ankit Vani <a@nevitus.org>
parents: 34852
diff changeset
31 #define PURPLE_STATUS_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), PURPLE_TYPE_STATUS, PurpleStatusClass))
8417ea6a9235 Started GObjectification of PurpleStatus.
Ankit Vani <a@nevitus.org>
parents: 34852
diff changeset
32 #define PURPLE_IS_STATUS(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), PURPLE_TYPE_STATUS))
8417ea6a9235 Started GObjectification of PurpleStatus.
Ankit Vani <a@nevitus.org>
parents: 34852
diff changeset
33 #define PURPLE_IS_STATUS_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), PURPLE_TYPE_STATUS))
8417ea6a9235 Started GObjectification of PurpleStatus.
Ankit Vani <a@nevitus.org>
parents: 34852
diff changeset
34 #define PURPLE_STATUS_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), PURPLE_TYPE_STATUS, PurpleStatusClass))
8417ea6a9235 Started GObjectification of PurpleStatus.
Ankit Vani <a@nevitus.org>
parents: 34852
diff changeset
35
34857
cfe2b7ce3421 Added GObject code to status.[ch]
Ankit Vani <a@nevitus.org>
parents: 34854
diff changeset
36 /** @copydoc _PurpleStatus */
34854
8417ea6a9235 Started GObjectification of PurpleStatus.
Ankit Vani <a@nevitus.org>
parents: 34852
diff changeset
37 typedef struct _PurpleStatus PurpleStatus;
34857
cfe2b7ce3421 Added GObject code to status.[ch]
Ankit Vani <a@nevitus.org>
parents: 34854
diff changeset
38 /** @copydoc _PurpleStatusClass */
cfe2b7ce3421 Added GObject code to status.[ch]
Ankit Vani <a@nevitus.org>
parents: 34854
diff changeset
39 typedef struct _PurpleStatusClass PurpleStatusClass;
34785
99bcdb44c75f Added boxed types for PurpleStatus and PurpleSavedStatus
Ankit Vani <a@nevitus.org>
parents: 34778
diff changeset
40
34854
8417ea6a9235 Started GObjectification of PurpleStatus.
Ankit Vani <a@nevitus.org>
parents: 34852
diff changeset
41 #define PURPLE_TYPE_STATUS_TYPE (purple_status_type_get_type())
8417ea6a9235 Started GObjectification of PurpleStatus.
Ankit Vani <a@nevitus.org>
parents: 34852
diff changeset
42
35088
a156686b58eb Moved the status API documentation to the appropriate structures
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
43 /**
36960
11e9cd6fd6a3 Merged soc.2013.gobjectification branch
Ankit Vani <a@nevitus.org>
parents: 36896 35088
diff changeset
44 * PurpleStatusType's are created by each protocol. They outline the
35088
a156686b58eb Moved the status API documentation to the appropriate structures
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
45 * available statuses of the protocol. AIM, for example, supports
a156686b58eb Moved the status API documentation to the appropriate structures
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
46 * an available state with an optional available message, an away
a156686b58eb Moved the status API documentation to the appropriate structures
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
47 * state with a mandatory message, and an invisible state (which is
a156686b58eb Moved the status API documentation to the appropriate structures
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
48 * technically "independent" of the other two, but we'll get into
a156686b58eb Moved the status API documentation to the appropriate structures
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
49 * that later). PurpleStatusTypes are very permanent. They are
36960
11e9cd6fd6a3 Merged soc.2013.gobjectification branch
Ankit Vani <a@nevitus.org>
parents: 36896 35088
diff changeset
50 * hardcoded in each protocol and will not change often. And because
35088
a156686b58eb Moved the status API documentation to the appropriate structures
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
51 * they are hardcoded, they do not need to be saved to any XML file.
a156686b58eb Moved the status API documentation to the appropriate structures
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
52 */
34854
8417ea6a9235 Started GObjectification of PurpleStatus.
Ankit Vani <a@nevitus.org>
parents: 34852
diff changeset
53 typedef struct _PurpleStatusType PurpleStatusType;
8417ea6a9235 Started GObjectification of PurpleStatus.
Ankit Vani <a@nevitus.org>
parents: 34852
diff changeset
54
34858
28ac3a0418f1 Renamed PurpleStatusAttr to PurpleStatusAttribute for simplicity.
Ankit Vani <a@nevitus.org>
parents: 34857
diff changeset
55 #define PURPLE_TYPE_STATUS_ATTRIBUTE (purple_status_attribute_get_type())
34854
8417ea6a9235 Started GObjectification of PurpleStatus.
Ankit Vani <a@nevitus.org>
parents: 34852
diff changeset
56
34858
28ac3a0418f1 Renamed PurpleStatusAttr to PurpleStatusAttribute for simplicity.
Ankit Vani <a@nevitus.org>
parents: 34857
diff changeset
57 typedef struct _PurpleStatusAttribute PurpleStatusAttribute;
34854
8417ea6a9235 Started GObjectification of PurpleStatus.
Ankit Vani <a@nevitus.org>
parents: 34852
diff changeset
58
8417ea6a9235 Started GObjectification of PurpleStatus.
Ankit Vani <a@nevitus.org>
parents: 34852
diff changeset
59 #define PURPLE_TYPE_MOOD (purple_mood_get_type())
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
60
24912
9ae8349f0353 Move the mood UI for ICQ into Pidgin. It still uses the new request API
Richard Laager <rlaager@pidgin.im>
parents: 24911
diff changeset
61 typedef struct _PurpleMood {
9ae8349f0353 Move the mood UI for ICQ into Pidgin. It still uses the new request API
Richard Laager <rlaager@pidgin.im>
parents: 24911
diff changeset
62 const char *mood;
9ae8349f0353 Move the mood UI for ICQ into Pidgin. It still uses the new request API
Richard Laager <rlaager@pidgin.im>
parents: 24911
diff changeset
63 const char *description;
9ae8349f0353 Move the mood UI for ICQ into Pidgin. It still uses the new request API
Richard Laager <rlaager@pidgin.im>
parents: 24911
diff changeset
64 gpointer *padding;
9ae8349f0353 Move the mood UI for ICQ into Pidgin. It still uses the new request API
Richard Laager <rlaager@pidgin.im>
parents: 24911
diff changeset
65 } PurpleMood;
9ae8349f0353 Move the mood UI for ICQ into Pidgin. It still uses the new request API
Richard Laager <rlaager@pidgin.im>
parents: 24911
diff changeset
66
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
67 /**
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
68 * A primitive defining the basic structure of a status type.
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
69 */
21201
493e5846c38d Add PURPLE_STATUS_TUNE to status_primitive_map so that it has a name
Mark Doliner <markdoliner@pidgin.im>
parents: 21193
diff changeset
70 /*
493e5846c38d Add PURPLE_STATUS_TUNE to status_primitive_map so that it has a name
Mark Doliner <markdoliner@pidgin.im>
parents: 21193
diff changeset
71 * If you add a value to this enum, make sure you update
24907
13118548c74c Add a PURPLE_STATUS_MOOD primitive and change ICQ to use it.
Richard Laager <rlaager@pidgin.im>
parents: 22793
diff changeset
72 * the status_primitive_map and primitive_scores arrays in status.c.
21201
493e5846c38d Add PURPLE_STATUS_TUNE to status_primitive_map so that it has a name
Mark Doliner <markdoliner@pidgin.im>
parents: 21193
diff changeset
73 */
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
74 typedef enum
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
75 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
76 PURPLE_STATUS_UNSET = 0,
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
77 PURPLE_STATUS_OFFLINE,
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
78 PURPLE_STATUS_AVAILABLE,
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
79 PURPLE_STATUS_UNAVAILABLE,
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
80 PURPLE_STATUS_INVISIBLE,
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
81 PURPLE_STATUS_AWAY,
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
82 PURPLE_STATUS_EXTENDED_AWAY,
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
83 PURPLE_STATUS_MOBILE,
21193
e918a1846d03 Use an independant status type for 'current media' stuff, instead of using
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 19897
diff changeset
84 PURPLE_STATUS_TUNE,
24907
13118548c74c Add a PURPLE_STATUS_MOOD primitive and change ICQ to use it.
Richard Laager <rlaager@pidgin.im>
parents: 22793
diff changeset
85 PURPLE_STATUS_MOOD,
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
86 PURPLE_STATUS_NUM_PRIMITIVES
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
87 } PurpleStatusPrimitive;
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
88
34852
0e01a98b2ef7 Renamed blistnodes.[ch] to blistnode.[ch], presences.[ch] to presence.[ch]
Ankit Vani <a@nevitus.org>
parents: 34848
diff changeset
89 #include "presence.h"
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
90
17800
39a0f9ed0e26 Replaced a clean and simple API with a very weird hack due to vivid request on #pidgin by multiple devs. This avoids the change in PurplePluginProtocolInfo, but requires complicated change tracking in every prpl. The others prpl should add this change tracking, too (since otherwise the status gets changed even though nothing they care about changed), but that's not up to me.
Andreas Monitzer <am@adiumx.com>
parents: 16870
diff changeset
91 #define PURPLE_TUNE_ARTIST "tune_artist"
39a0f9ed0e26 Replaced a clean and simple API with a very weird hack due to vivid request on #pidgin by multiple devs. This avoids the change in PurplePluginProtocolInfo, but requires complicated change tracking in every prpl. The others prpl should add this change tracking, too (since otherwise the status gets changed even though nothing they care about changed), but that's not up to me.
Andreas Monitzer <am@adiumx.com>
parents: 16870
diff changeset
92 #define PURPLE_TUNE_TITLE "tune_title"
39a0f9ed0e26 Replaced a clean and simple API with a very weird hack due to vivid request on #pidgin by multiple devs. This avoids the change in PurplePluginProtocolInfo, but requires complicated change tracking in every prpl. The others prpl should add this change tracking, too (since otherwise the status gets changed even though nothing they care about changed), but that's not up to me.
Andreas Monitzer <am@adiumx.com>
parents: 16870
diff changeset
93 #define PURPLE_TUNE_ALBUM "tune_album"
39a0f9ed0e26 Replaced a clean and simple API with a very weird hack due to vivid request on #pidgin by multiple devs. This avoids the change in PurplePluginProtocolInfo, but requires complicated change tracking in every prpl. The others prpl should add this change tracking, too (since otherwise the status gets changed even though nothing they care about changed), but that's not up to me.
Andreas Monitzer <am@adiumx.com>
parents: 16870
diff changeset
94 #define PURPLE_TUNE_GENRE "tune_genre"
39a0f9ed0e26 Replaced a clean and simple API with a very weird hack due to vivid request on #pidgin by multiple devs. This avoids the change in PurplePluginProtocolInfo, but requires complicated change tracking in every prpl. The others prpl should add this change tracking, too (since otherwise the status gets changed even though nothing they care about changed), but that's not up to me.
Andreas Monitzer <am@adiumx.com>
parents: 16870
diff changeset
95 #define PURPLE_TUNE_COMMENT "tune_comment"
39a0f9ed0e26 Replaced a clean and simple API with a very weird hack due to vivid request on #pidgin by multiple devs. This avoids the change in PurplePluginProtocolInfo, but requires complicated change tracking in every prpl. The others prpl should add this change tracking, too (since otherwise the status gets changed even though nothing they care about changed), but that's not up to me.
Andreas Monitzer <am@adiumx.com>
parents: 16870
diff changeset
96 #define PURPLE_TUNE_TRACK "tune_track"
39a0f9ed0e26 Replaced a clean and simple API with a very weird hack due to vivid request on #pidgin by multiple devs. This avoids the change in PurplePluginProtocolInfo, but requires complicated change tracking in every prpl. The others prpl should add this change tracking, too (since otherwise the status gets changed even though nothing they care about changed), but that's not up to me.
Andreas Monitzer <am@adiumx.com>
parents: 16870
diff changeset
97 #define PURPLE_TUNE_TIME "tune_time"
39a0f9ed0e26 Replaced a clean and simple API with a very weird hack due to vivid request on #pidgin by multiple devs. This avoids the change in PurplePluginProtocolInfo, but requires complicated change tracking in every prpl. The others prpl should add this change tracking, too (since otherwise the status gets changed even though nothing they care about changed), but that's not up to me.
Andreas Monitzer <am@adiumx.com>
parents: 16870
diff changeset
98 #define PURPLE_TUNE_YEAR "tune_year"
21029
097ab54af4c0 Use a #define for the msn 'currentmedia' status attribute in line with the PURPLE_TUNE_ attributes used in the xmpp prpl
Evan Schoenberg <evands@pidgin.im>
parents: 19897
diff changeset
99 #define PURPLE_TUNE_URL "tune_url"
097ab54af4c0 Use a #define for the msn 'currentmedia' status attribute in line with the PURPLE_TUNE_ attributes used in the xmpp prpl
Evan Schoenberg <evands@pidgin.im>
parents: 19897
diff changeset
100 #define PURPLE_TUNE_FULL "tune_full"
17800
39a0f9ed0e26 Replaced a clean and simple API with a very weird hack due to vivid request on #pidgin by multiple devs. This avoids the change in PurplePluginProtocolInfo, but requires complicated change tracking in every prpl. The others prpl should add this change tracking, too (since otherwise the status gets changed even though nothing they care about changed), but that's not up to me.
Andreas Monitzer <am@adiumx.com>
parents: 16870
diff changeset
101
24907
13118548c74c Add a PURPLE_STATUS_MOOD primitive and change ICQ to use it.
Richard Laager <rlaager@pidgin.im>
parents: 22793
diff changeset
102 #define PURPLE_MOOD_NAME "mood"
13118548c74c Add a PURPLE_STATUS_MOOD primitive and change ICQ to use it.
Richard Laager <rlaager@pidgin.im>
parents: 22793
diff changeset
103 #define PURPLE_MOOD_COMMENT "moodtext"
13118548c74c Add a PURPLE_STATUS_MOOD primitive and change ICQ to use it.
Richard Laager <rlaager@pidgin.im>
parents: 22793
diff changeset
104
34854
8417ea6a9235 Started GObjectification of PurpleStatus.
Ankit Vani <a@nevitus.org>
parents: 34852
diff changeset
105 /**
35088
a156686b58eb Moved the status API documentation to the appropriate structures
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
106 * A PurpleStatus can be thought of as an "instance" of a PurpleStatusType.
a156686b58eb Moved the status API documentation to the appropriate structures
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
107 * If you're familiar with object-oriented programming languages
a156686b58eb Moved the status API documentation to the appropriate structures
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
108 * then this should be immediately clear. Say, for example, that
a156686b58eb Moved the status API documentation to the appropriate structures
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
109 * one of your AIM buddies has set himself as "away." You have a
a156686b58eb Moved the status API documentation to the appropriate structures
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
110 * PurpleBuddy node for this person in your buddy list. Purple wants
a156686b58eb Moved the status API documentation to the appropriate structures
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
111 * to mark this buddy as "away," so it creates a new PurpleStatus.
a156686b58eb Moved the status API documentation to the appropriate structures
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
112 * The PurpleStatus has its PurpleStatusType set to the "away" state
36960
11e9cd6fd6a3 Merged soc.2013.gobjectification branch
Ankit Vani <a@nevitus.org>
parents: 36896 35088
diff changeset
113 * for the oscar protocol. The PurpleStatus also contains the buddy's
35088
a156686b58eb Moved the status API documentation to the appropriate structures
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
114 * away message. PurpleStatuses are sometimes saved, depending on
a156686b58eb Moved the status API documentation to the appropriate structures
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
115 * the context. The current PurpleStatuses associated with each of
a156686b58eb Moved the status API documentation to the appropriate structures
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
116 * your accounts are saved so that the next time you start Purple,
a156686b58eb Moved the status API documentation to the appropriate structures
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
117 * your accounts will be set to their last known statuses. There
a156686b58eb Moved the status API documentation to the appropriate structures
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
118 * is also a list of saved statuses that are written to the
a156686b58eb Moved the status API documentation to the appropriate structures
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
119 * status.xml file. Also, each PurpleStatus has a "saveable" boolean.
a156686b58eb Moved the status API documentation to the appropriate structures
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
120 * If "saveable" is set to FALSE then the status is NEVER saved.
a156686b58eb Moved the status API documentation to the appropriate structures
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
121 * All PurpleStatuses should be inside a PurplePresence.
a156686b58eb Moved the status API documentation to the appropriate structures
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
122 *
a156686b58eb Moved the status API documentation to the appropriate structures
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
123 * A PurpleStatus is either "independent" or "exclusive."
a156686b58eb Moved the status API documentation to the appropriate structures
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
124 * Independent statuses can be active or inactive and they don't
a156686b58eb Moved the status API documentation to the appropriate structures
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
125 * affect anything else. However, you can only have one exclusive
a156686b58eb Moved the status API documentation to the appropriate structures
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
126 * status per PurplePresence. If you activate one exclusive status,
a156686b58eb Moved the status API documentation to the appropriate structures
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
127 * then the previous exclusive status is automatically deactivated.
a156686b58eb Moved the status API documentation to the appropriate structures
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
128 *
a156686b58eb Moved the status API documentation to the appropriate structures
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
129 * A PurplePresence is like a collection of PurpleStatuses (plus some
a156686b58eb Moved the status API documentation to the appropriate structures
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
130 * other random info).
a156686b58eb Moved the status API documentation to the appropriate structures
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
131 *
a156686b58eb Moved the status API documentation to the appropriate structures
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
132 * @see presence.h
34854
8417ea6a9235 Started GObjectification of PurpleStatus.
Ankit Vani <a@nevitus.org>
parents: 34852
diff changeset
133 */
8417ea6a9235 Started GObjectification of PurpleStatus.
Ankit Vani <a@nevitus.org>
parents: 34852
diff changeset
134 struct _PurpleStatus
8417ea6a9235 Started GObjectification of PurpleStatus.
Ankit Vani <a@nevitus.org>
parents: 34852
diff changeset
135 {
8417ea6a9235 Started GObjectification of PurpleStatus.
Ankit Vani <a@nevitus.org>
parents: 34852
diff changeset
136 GObject gparent;
8417ea6a9235 Started GObjectification of PurpleStatus.
Ankit Vani <a@nevitus.org>
parents: 34852
diff changeset
137 };
8417ea6a9235 Started GObjectification of PurpleStatus.
Ankit Vani <a@nevitus.org>
parents: 34852
diff changeset
138
8417ea6a9235 Started GObjectification of PurpleStatus.
Ankit Vani <a@nevitus.org>
parents: 34852
diff changeset
139 /** Base class for all #PurpleStatus's */
8417ea6a9235 Started GObjectification of PurpleStatus.
Ankit Vani <a@nevitus.org>
parents: 34852
diff changeset
140 struct _PurpleStatusClass {
8417ea6a9235 Started GObjectification of PurpleStatus.
Ankit Vani <a@nevitus.org>
parents: 34852
diff changeset
141 GObjectClass parent_class;
8417ea6a9235 Started GObjectification of PurpleStatus.
Ankit Vani <a@nevitus.org>
parents: 34852
diff changeset
142
35024
eb3afb7643ce Added /*< private >*/ for padding members, clean them up and add missing ones
Ankit Vani <a@nevitus.org>
parents: 34860
diff changeset
143 /*< private >*/
34854
8417ea6a9235 Started GObjectification of PurpleStatus.
Ankit Vani <a@nevitus.org>
parents: 34852
diff changeset
144 void (*_purple_reserved1)(void);
8417ea6a9235 Started GObjectification of PurpleStatus.
Ankit Vani <a@nevitus.org>
parents: 34852
diff changeset
145 void (*_purple_reserved2)(void);
8417ea6a9235 Started GObjectification of PurpleStatus.
Ankit Vani <a@nevitus.org>
parents: 34852
diff changeset
146 void (*_purple_reserved3)(void);
8417ea6a9235 Started GObjectification of PurpleStatus.
Ankit Vani <a@nevitus.org>
parents: 34852
diff changeset
147 void (*_purple_reserved4)(void);
8417ea6a9235 Started GObjectification of PurpleStatus.
Ankit Vani <a@nevitus.org>
parents: 34852
diff changeset
148 };
8417ea6a9235 Started GObjectification of PurpleStatus.
Ankit Vani <a@nevitus.org>
parents: 34852
diff changeset
149
32787
7072f190d6ad Use G_BEGIN/END_DECLS in public libpurple files. This was
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32303
diff changeset
150 G_BEGIN_DECLS
14988
66b34458d49e [gaim-migrate @ 17698]
Richard Laager <rlaager@pidgin.im>
parents: 14254
diff changeset
151
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
152 /**************************************************************************/
28221
c62d1e63f410 Some comment-fixes I apparently had lying around.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 25893
diff changeset
153 /** @name PurpleStatusPrimitive API */
10419
cb6b7316fdba [gaim-migrate @ 11670]
Mark Doliner <markdoliner@pidgin.im>
parents: 10418
diff changeset
154 /**************************************************************************/
cb6b7316fdba [gaim-migrate @ 11670]
Mark Doliner <markdoliner@pidgin.im>
parents: 10418
diff changeset
155 /*@{*/
cb6b7316fdba [gaim-migrate @ 11670]
Mark Doliner <markdoliner@pidgin.im>
parents: 10418
diff changeset
156
cb6b7316fdba [gaim-migrate @ 11670]
Mark Doliner <markdoliner@pidgin.im>
parents: 10418
diff changeset
157 /**
cb6b7316fdba [gaim-migrate @ 11670]
Mark Doliner <markdoliner@pidgin.im>
parents: 10418
diff changeset
158 * Lookup the id of a primitive status type based on the type. This
cb6b7316fdba [gaim-migrate @ 11670]
Mark Doliner <markdoliner@pidgin.im>
parents: 10418
diff changeset
159 * ID is a unique plain-text name of the status, without spaces.
cb6b7316fdba [gaim-migrate @ 11670]
Mark Doliner <markdoliner@pidgin.im>
parents: 10418
diff changeset
160 *
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
161 * @type: A primitive status type.
10419
cb6b7316fdba [gaim-migrate @ 11670]
Mark Doliner <markdoliner@pidgin.im>
parents: 10418
diff changeset
162 *
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
163 * Returns: The unique ID for this type.
10419
cb6b7316fdba [gaim-migrate @ 11670]
Mark Doliner <markdoliner@pidgin.im>
parents: 10418
diff changeset
164 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
165 const char *purple_primitive_get_id_from_type(PurpleStatusPrimitive type);
10419
cb6b7316fdba [gaim-migrate @ 11670]
Mark Doliner <markdoliner@pidgin.im>
parents: 10418
diff changeset
166
cb6b7316fdba [gaim-migrate @ 11670]
Mark Doliner <markdoliner@pidgin.im>
parents: 10418
diff changeset
167 /**
cb6b7316fdba [gaim-migrate @ 11670]
Mark Doliner <markdoliner@pidgin.im>
parents: 10418
diff changeset
168 * Lookup the name of a primitive status type based on the type. This
cb6b7316fdba [gaim-migrate @ 11670]
Mark Doliner <markdoliner@pidgin.im>
parents: 10418
diff changeset
169 * name is the plain-English name of the status type. It is usually one
12037
0f1e1fa4b601 [gaim-migrate @ 14330]
Evan Schoenberg <evands@pidgin.im>
parents: 11696
diff changeset
170 * or two words.
10419
cb6b7316fdba [gaim-migrate @ 11670]
Mark Doliner <markdoliner@pidgin.im>
parents: 10418
diff changeset
171 *
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
172 * @type: A primitive status type.
10419
cb6b7316fdba [gaim-migrate @ 11670]
Mark Doliner <markdoliner@pidgin.im>
parents: 10418
diff changeset
173 *
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
174 * Returns: The name of this type, suitable for users to see.
10419
cb6b7316fdba [gaim-migrate @ 11670]
Mark Doliner <markdoliner@pidgin.im>
parents: 10418
diff changeset
175 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
176 const char *purple_primitive_get_name_from_type(PurpleStatusPrimitive type);
10419
cb6b7316fdba [gaim-migrate @ 11670]
Mark Doliner <markdoliner@pidgin.im>
parents: 10418
diff changeset
177
cb6b7316fdba [gaim-migrate @ 11670]
Mark Doliner <markdoliner@pidgin.im>
parents: 10418
diff changeset
178 /**
cb6b7316fdba [gaim-migrate @ 11670]
Mark Doliner <markdoliner@pidgin.im>
parents: 10418
diff changeset
179 * Lookup the value of a primitive status type based on the id. The
cb6b7316fdba [gaim-migrate @ 11670]
Mark Doliner <markdoliner@pidgin.im>
parents: 10418
diff changeset
180 * ID is a unique plain-text name of the status, without spaces.
cb6b7316fdba [gaim-migrate @ 11670]
Mark Doliner <markdoliner@pidgin.im>
parents: 10418
diff changeset
181 *
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
182 * @id: The unique ID of a primitive status type.
10419
cb6b7316fdba [gaim-migrate @ 11670]
Mark Doliner <markdoliner@pidgin.im>
parents: 10418
diff changeset
183 *
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
184 * Returns: The PurpleStatusPrimitive value.
10419
cb6b7316fdba [gaim-migrate @ 11670]
Mark Doliner <markdoliner@pidgin.im>
parents: 10418
diff changeset
185 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
186 PurpleStatusPrimitive purple_primitive_get_type_from_id(const char *id);
10419
cb6b7316fdba [gaim-migrate @ 11670]
Mark Doliner <markdoliner@pidgin.im>
parents: 10418
diff changeset
187
cb6b7316fdba [gaim-migrate @ 11670]
Mark Doliner <markdoliner@pidgin.im>
parents: 10418
diff changeset
188 /*@}*/
cb6b7316fdba [gaim-migrate @ 11670]
Mark Doliner <markdoliner@pidgin.im>
parents: 10418
diff changeset
189
cb6b7316fdba [gaim-migrate @ 11670]
Mark Doliner <markdoliner@pidgin.im>
parents: 10418
diff changeset
190 /**************************************************************************/
28221
c62d1e63f410 Some comment-fixes I apparently had lying around.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 25893
diff changeset
191 /** @name PurpleStatusType API */
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
192 /**************************************************************************/
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
193 /*@{*/
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
194
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
195 /**
34854
8417ea6a9235 Started GObjectification of PurpleStatus.
Ankit Vani <a@nevitus.org>
parents: 34852
diff changeset
196 * Returns the GType for the PurpleStatusType boxed structure.
8417ea6a9235 Started GObjectification of PurpleStatus.
Ankit Vani <a@nevitus.org>
parents: 34852
diff changeset
197 */
8417ea6a9235 Started GObjectification of PurpleStatus.
Ankit Vani <a@nevitus.org>
parents: 34852
diff changeset
198 GType purple_status_type_get_type(void);
8417ea6a9235 Started GObjectification of PurpleStatus.
Ankit Vani <a@nevitus.org>
parents: 34852
diff changeset
199
8417ea6a9235 Started GObjectification of PurpleStatus.
Ankit Vani <a@nevitus.org>
parents: 34852
diff changeset
200 /**
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
201 * Creates a new status type.
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
202 *
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
203 * @primitive: The primitive status type.
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
204 * @id: The ID of the status type, or @c NULL to use the id of
12595
8108c22aa723 [gaim-migrate @ 14925]
Richard Laager <rlaager@pidgin.im>
parents: 12484
diff changeset
205 * the primitive status type.
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
206 * @name: The name presented to the user, or @c NULL to use the
12595
8108c22aa723 [gaim-migrate @ 14925]
Richard Laager <rlaager@pidgin.im>
parents: 12484
diff changeset
207 * name of the primitive status type.
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
208 * @saveable: TRUE if the information set for this status by the
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
209 * user can be saved for future sessions.
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
210 * @user_settable: TRUE if this is a status the user can manually set.
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
211 * @independent: TRUE if this is an independent (non-exclusive)
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
212 * status type.
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
213 *
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
214 * Returns: A new status type.
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
215 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
216 PurpleStatusType *purple_status_type_new_full(PurpleStatusPrimitive primitive,
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
217 const char *id, const char *name,
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
218 gboolean saveable,
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
219 gboolean user_settable,
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
220 gboolean independent);
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
221
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
222 /**
25445
b36f23e05c50 Thomas Gibson-Robinson noticed that the "saveable" attribute of a status type
Daniel Atallah <datallah@pidgin.im>
parents: 25231
diff changeset
223 * Creates a new status type with some default values (
24911
624850f5e6a7 s/savable/saveable/
Richard Laager <rlaager@pidgin.im>
parents: 24907
diff changeset
224 * saveable and not independent).
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
225 *
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
226 * @primitive: The primitive status type.
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
227 * @id: The ID of the status type, or @c NULL to use the id of
12595
8108c22aa723 [gaim-migrate @ 14925]
Richard Laager <rlaager@pidgin.im>
parents: 12484
diff changeset
228 * the primitive status type.
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
229 * @name: The name presented to the user, or @c NULL to use the
12595
8108c22aa723 [gaim-migrate @ 14925]
Richard Laager <rlaager@pidgin.im>
parents: 12484
diff changeset
230 * name of the primitive status type.
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
231 * @user_settable: TRUE if this is a status the user can manually set.
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
232 *
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
233 * Returns: A new status type.
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
234 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
235 PurpleStatusType *purple_status_type_new(PurpleStatusPrimitive primitive,
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
236 const char *id, const char *name,
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
237 gboolean user_settable);
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
238
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
239 /**
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
240 * Creates a new status type with attributes.
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
241 *
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
242 * @primitive: The primitive status type.
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
243 * @id: The ID of the status type, or @c NULL to use the id of
12595
8108c22aa723 [gaim-migrate @ 14925]
Richard Laager <rlaager@pidgin.im>
parents: 12484
diff changeset
244 * the primitive status type.
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
245 * @name: The name presented to the user, or @c NULL to use the
12595
8108c22aa723 [gaim-migrate @ 14925]
Richard Laager <rlaager@pidgin.im>
parents: 12484
diff changeset
246 * name of the primitive status type.
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
247 * @saveable: TRUE if the information set for this status by the
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
248 * user can be saved for future sessions.
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
249 * @user_settable: TRUE if this is a status the user can manually set.
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
250 * @independent: TRUE if this is an independent (non-exclusive)
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
251 * status type.
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
252 * @attr_id: The ID of the first attribute.
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
253 * @attr_name: The name of the first attribute.
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
254 * @attr_value: The value type of the first attribute.
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
255 * @...: Additional attribute information.
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
256 *
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
257 * Returns: A new status type.
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
258 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
259 PurpleStatusType *purple_status_type_new_with_attrs(PurpleStatusPrimitive primitive,
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
260 const char *id,
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
261 const char *name,
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
262 gboolean saveable,
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
263 gboolean user_settable,
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
264 gboolean independent,
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
265 const char *attr_id,
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
266 const char *attr_name,
34801
08c49f30e4a1 Replaced PurpleValue with GType in plugin.h, signals.h. Replaced with GValue in status.h.
Ankit Vani <a@nevitus.org>
parents: 34799
diff changeset
267 GValue *attr_value, ...) G_GNUC_NULL_TERMINATED;
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
268
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
269 /**
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
270 * Destroys a status type.
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
271 *
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
272 * @status_type: The status type to destroy.
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
273 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
274 void purple_status_type_destroy(PurpleStatusType *status_type);
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
275
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
276 /**
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
277 * Returns the primitive type of a status type.
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
278 *
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
279 * @status_type: The status type.
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
280 *
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
281 * Returns: The primitive type of the status type.
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
282 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
283 PurpleStatusPrimitive purple_status_type_get_primitive(
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
284 const PurpleStatusType *status_type);
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
285
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
286 /**
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
287 * Returns the ID of a status type.
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
288 *
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
289 * @status_type: The status type.
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
290 *
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
291 * Returns: The ID of the status type.
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
292 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
293 const char *purple_status_type_get_id(const PurpleStatusType *status_type);
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
294
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
295 /**
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
296 * Returns the name of a status type.
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
297 *
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
298 * @status_type: The status type.
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
299 *
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
300 * Returns: The name of the status type.
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
301 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
302 const char *purple_status_type_get_name(const PurpleStatusType *status_type);
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
303
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
304 /**
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
305 * Returns whether or not the status type is saveable.
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
306 *
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
307 * @status_type: The status type.
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
308 *
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
309 * Returns: TRUE if user-defined statuses based off this type are saveable.
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
310 * FALSE otherwise.
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
311 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
312 gboolean purple_status_type_is_saveable(const PurpleStatusType *status_type);
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
313
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
314 /**
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
315 * Returns whether or not the status type can be set or modified by the
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
316 * user.
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
317 *
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
318 * @status_type: The status type.
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
319 *
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
320 * Returns: TRUE if the status type can be set or modified by the user.
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
321 * FALSE if it's a protocol-set setting.
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
322 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
323 gboolean purple_status_type_is_user_settable(const PurpleStatusType *status_type);
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
324
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
325 /**
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
326 * Returns whether or not the status type is independent.
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
327 *
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
328 * Independent status types are non-exclusive. If other status types on
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
329 * the same hierarchy level are set, this one will not be affected.
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
330 *
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
331 * @status_type: The status type.
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
332 *
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
333 * Returns: TRUE if the status type is independent, or FALSE otherwise.
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
334 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
335 gboolean purple_status_type_is_independent(const PurpleStatusType *status_type);
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
336
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
337 /**
10071
d2ba11541693 [gaim-migrate @ 11047]
Jonathan Champ <royanee@users.sourceforge.net>
parents: 10067
diff changeset
338 * Returns whether the status type is exclusive.
10067
d04171b6f098 [gaim-migrate @ 11043]
Mark Doliner <markdoliner@pidgin.im>
parents: 10040
diff changeset
339 *
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
340 * @status_type: The status type.
10067
d04171b6f098 [gaim-migrate @ 11043]
Mark Doliner <markdoliner@pidgin.im>
parents: 10040
diff changeset
341 *
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
342 * Returns: TRUE if the status type is exclusive, FALSE otherwise.
10067
d04171b6f098 [gaim-migrate @ 11043]
Mark Doliner <markdoliner@pidgin.im>
parents: 10040
diff changeset
343 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
344 gboolean purple_status_type_is_exclusive(const PurpleStatusType *status_type);
10067
d04171b6f098 [gaim-migrate @ 11043]
Mark Doliner <markdoliner@pidgin.im>
parents: 10040
diff changeset
345
d04171b6f098 [gaim-migrate @ 11043]
Mark Doliner <markdoliner@pidgin.im>
parents: 10040
diff changeset
346 /**
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
347 * Returns whether or not a status type is available.
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
348 *
12595
8108c22aa723 [gaim-migrate @ 14925]
Richard Laager <rlaager@pidgin.im>
parents: 12484
diff changeset
349 * Available status types are online and possibly invisible, but not away.
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
350 *
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
351 * @status_type: The status type.
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
352 *
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
353 * Returns: TRUE if the status is available, or FALSE otherwise.
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
354 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
355 gboolean purple_status_type_is_available(const PurpleStatusType *status_type);
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
356
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
357 /**
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
358 * Returns the attribute with the specified ID.
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
359 *
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
360 * @status_type: The status type containing the attribute.
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
361 * @id: The ID of the desired attribute.
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
362 *
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
363 * Returns: The attribute, if found. NULL otherwise.
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
364 */
34858
28ac3a0418f1 Renamed PurpleStatusAttr to PurpleStatusAttribute for simplicity.
Ankit Vani <a@nevitus.org>
parents: 34857
diff changeset
365 PurpleStatusAttribute *purple_status_type_get_attr(const PurpleStatusType *status_type,
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
366 const char *id);
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
367
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
368 /**
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
369 * Returns a list of all attributes in a status type.
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
370 *
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
371 * @status_type: The status type.
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
372 *
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
373 * Returns: (TODO const): The list of attributes.
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
374 */
18190
bcf28ef7e8ff Re-fix the DBus list handling code by killing const GList* / const GSList*
Richard Laager <rlaager@pidgin.im>
parents: 16870
diff changeset
375 GList *purple_status_type_get_attrs(const PurpleStatusType *status_type);
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
376
10348
0ab5eb1a828e [gaim-migrate @ 11562]
Mark Doliner <markdoliner@pidgin.im>
parents: 10340
diff changeset
377 /**
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
378 * Find the PurpleStatusType with the given id.
10348
0ab5eb1a828e [gaim-migrate @ 11562]
Mark Doliner <markdoliner@pidgin.im>
parents: 10340
diff changeset
379 *
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
380 * @status_types: A list of status types. Often account->status_types.
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
381 * @id: The unique ID of the status type you wish to find.
10348
0ab5eb1a828e [gaim-migrate @ 11562]
Mark Doliner <markdoliner@pidgin.im>
parents: 10340
diff changeset
382 *
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
383 * Returns: The status type with the given ID, or NULL if one could
10348
0ab5eb1a828e [gaim-migrate @ 11562]
Mark Doliner <markdoliner@pidgin.im>
parents: 10340
diff changeset
384 * not be found.
0ab5eb1a828e [gaim-migrate @ 11562]
Mark Doliner <markdoliner@pidgin.im>
parents: 10340
diff changeset
385 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
386 const PurpleStatusType *purple_status_type_find_with_id(GList *status_types,
10348
0ab5eb1a828e [gaim-migrate @ 11562]
Mark Doliner <markdoliner@pidgin.im>
parents: 10340
diff changeset
387 const char *id);
0ab5eb1a828e [gaim-migrate @ 11562]
Mark Doliner <markdoliner@pidgin.im>
parents: 10340
diff changeset
388
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
389 /*@}*/
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
390
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
391 /**************************************************************************/
34858
28ac3a0418f1 Renamed PurpleStatusAttr to PurpleStatusAttribute for simplicity.
Ankit Vani <a@nevitus.org>
parents: 34857
diff changeset
392 /** @name PurpleStatusAttribute API */
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
393 /**************************************************************************/
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
394 /*@{*/
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
395
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
396 /**
34858
28ac3a0418f1 Renamed PurpleStatusAttr to PurpleStatusAttribute for simplicity.
Ankit Vani <a@nevitus.org>
parents: 34857
diff changeset
397 * Returns the GType for the PurpleStatusAttribute boxed structure.
34854
8417ea6a9235 Started GObjectification of PurpleStatus.
Ankit Vani <a@nevitus.org>
parents: 34852
diff changeset
398 */
34858
28ac3a0418f1 Renamed PurpleStatusAttr to PurpleStatusAttribute for simplicity.
Ankit Vani <a@nevitus.org>
parents: 34857
diff changeset
399 GType purple_status_attribute_get_type(void);
34854
8417ea6a9235 Started GObjectification of PurpleStatus.
Ankit Vani <a@nevitus.org>
parents: 34852
diff changeset
400
8417ea6a9235 Started GObjectification of PurpleStatus.
Ankit Vani <a@nevitus.org>
parents: 34852
diff changeset
401 /**
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
402 * Creates a new status attribute.
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
403 *
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
404 * @id: The ID of the attribute.
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
405 * @name: The name presented to the user.
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
406 * @value_type: The type of data contained in the attribute.
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
407 *
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
408 * Returns: A new status attribute.
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
409 */
34858
28ac3a0418f1 Renamed PurpleStatusAttr to PurpleStatusAttribute for simplicity.
Ankit Vani <a@nevitus.org>
parents: 34857
diff changeset
410 PurpleStatusAttribute *purple_status_attribute_new(const char *id, const char *name,
34801
08c49f30e4a1 Replaced PurpleValue with GType in plugin.h, signals.h. Replaced with GValue in status.h.
Ankit Vani <a@nevitus.org>
parents: 34799
diff changeset
411 GValue *value_type);
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
412
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
413 /**
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
414 * Destroys a status attribute.
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
415 *
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
416 * @attr: The status attribute to destroy.
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
417 */
34858
28ac3a0418f1 Renamed PurpleStatusAttr to PurpleStatusAttribute for simplicity.
Ankit Vani <a@nevitus.org>
parents: 34857
diff changeset
418 void purple_status_attribute_destroy(PurpleStatusAttribute *attr);
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
419
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
420 /**
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
421 * Returns the ID of a status attribute.
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
422 *
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
423 * @attr: The status attribute.
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
424 *
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
425 * Returns: The status attribute's ID.
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
426 */
34858
28ac3a0418f1 Renamed PurpleStatusAttr to PurpleStatusAttribute for simplicity.
Ankit Vani <a@nevitus.org>
parents: 34857
diff changeset
427 const char *purple_status_attribute_get_id(const PurpleStatusAttribute *attr);
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
428
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
429 /**
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
430 * Returns the name of a status attribute.
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
431 *
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
432 * @attr: The status attribute.
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
433 *
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
434 * Returns: The status attribute's name.
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
435 */
34858
28ac3a0418f1 Renamed PurpleStatusAttr to PurpleStatusAttribute for simplicity.
Ankit Vani <a@nevitus.org>
parents: 34857
diff changeset
436 const char *purple_status_attribute_get_name(const PurpleStatusAttribute *attr);
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
437
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
438 /**
11249
efc82f3e1bd3 [gaim-migrate @ 13418]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 11129
diff changeset
439 * Returns the value of a status attribute.
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
440 *
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
441 * @attr: The status attribute.
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
442 *
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
443 * Returns: The status attribute's value.
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
444 */
34858
28ac3a0418f1 Renamed PurpleStatusAttr to PurpleStatusAttribute for simplicity.
Ankit Vani <a@nevitus.org>
parents: 34857
diff changeset
445 GValue *purple_status_attribute_get_value(const PurpleStatusAttribute *attr);
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
446
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
447 /*@}*/
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
448
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
449 /**************************************************************************/
34854
8417ea6a9235 Started GObjectification of PurpleStatus.
Ankit Vani <a@nevitus.org>
parents: 34852
diff changeset
450 /** @name PurpleMood API */
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
451 /**************************************************************************/
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
452 /*@{*/
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
453
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
454 /**
34854
8417ea6a9235 Started GObjectification of PurpleStatus.
Ankit Vani <a@nevitus.org>
parents: 34852
diff changeset
455 * Returns the GType for the PurpleMood boxed structure.
34785
99bcdb44c75f Added boxed types for PurpleStatus and PurpleSavedStatus
Ankit Vani <a@nevitus.org>
parents: 34778
diff changeset
456 */
34854
8417ea6a9235 Started GObjectification of PurpleStatus.
Ankit Vani <a@nevitus.org>
parents: 34852
diff changeset
457 GType purple_mood_get_type(void);
8417ea6a9235 Started GObjectification of PurpleStatus.
Ankit Vani <a@nevitus.org>
parents: 34852
diff changeset
458
8417ea6a9235 Started GObjectification of PurpleStatus.
Ankit Vani <a@nevitus.org>
parents: 34852
diff changeset
459 /*@}*/
8417ea6a9235 Started GObjectification of PurpleStatus.
Ankit Vani <a@nevitus.org>
parents: 34852
diff changeset
460
8417ea6a9235 Started GObjectification of PurpleStatus.
Ankit Vani <a@nevitus.org>
parents: 34852
diff changeset
461 /**************************************************************************/
8417ea6a9235 Started GObjectification of PurpleStatus.
Ankit Vani <a@nevitus.org>
parents: 34852
diff changeset
462 /** @name PurpleStatus API */
8417ea6a9235 Started GObjectification of PurpleStatus.
Ankit Vani <a@nevitus.org>
parents: 34852
diff changeset
463 /**************************************************************************/
8417ea6a9235 Started GObjectification of PurpleStatus.
Ankit Vani <a@nevitus.org>
parents: 34852
diff changeset
464 /*@{*/
8417ea6a9235 Started GObjectification of PurpleStatus.
Ankit Vani <a@nevitus.org>
parents: 34852
diff changeset
465
8417ea6a9235 Started GObjectification of PurpleStatus.
Ankit Vani <a@nevitus.org>
parents: 34852
diff changeset
466 /**
8417ea6a9235 Started GObjectification of PurpleStatus.
Ankit Vani <a@nevitus.org>
parents: 34852
diff changeset
467 * Returns the GType for the Status object.
8417ea6a9235 Started GObjectification of PurpleStatus.
Ankit Vani <a@nevitus.org>
parents: 34852
diff changeset
468 */
8417ea6a9235 Started GObjectification of PurpleStatus.
Ankit Vani <a@nevitus.org>
parents: 34852
diff changeset
469 GType purple_status_get_type(void);
34785
99bcdb44c75f Added boxed types for PurpleStatus and PurpleSavedStatus
Ankit Vani <a@nevitus.org>
parents: 34778
diff changeset
470
99bcdb44c75f Added boxed types for PurpleStatus and PurpleSavedStatus
Ankit Vani <a@nevitus.org>
parents: 34778
diff changeset
471 /**
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
472 * Creates a new status.
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
473 *
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
474 * @status_type: The type of status.
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
475 * @presence: The parent presence.
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
476 *
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
477 * Returns: The new status.
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
478 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
479 PurpleStatus *purple_status_new(PurpleStatusType *status_type,
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
480 PurplePresence *presence);
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
481
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
482 /**
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
483 * Sets whether or not a status is active.
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
484 *
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
485 * This should only be called by the account, conversation, and buddy APIs.
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
486 *
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
487 * @status: The status.
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
488 * @active: The active state.
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
489 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
490 void purple_status_set_active(PurpleStatus *status, gboolean active);
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
491
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
492 /**
10204
874e91e2a3b3 [gaim-migrate @ 11325]
Mark Doliner <markdoliner@pidgin.im>
parents: 10151
diff changeset
493 * Sets whether or not a status is active.
874e91e2a3b3 [gaim-migrate @ 11325]
Mark Doliner <markdoliner@pidgin.im>
parents: 10151
diff changeset
494 *
874e91e2a3b3 [gaim-migrate @ 11325]
Mark Doliner <markdoliner@pidgin.im>
parents: 10151
diff changeset
495 * This should only be called by the account, conversation, and buddy APIs.
874e91e2a3b3 [gaim-migrate @ 11325]
Mark Doliner <markdoliner@pidgin.im>
parents: 10151
diff changeset
496 *
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
497 * @status: The status.
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
498 * @active: The active state.
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
499 * @args: A list of attributes to set on the status. This list is
10204
874e91e2a3b3 [gaim-migrate @ 11325]
Mark Doliner <markdoliner@pidgin.im>
parents: 10151
diff changeset
500 * composed of key/value pairs, where each key is a valid
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
501 * attribute name for this PurpleStatusType. The list should
10204
874e91e2a3b3 [gaim-migrate @ 11325]
Mark Doliner <markdoliner@pidgin.im>
parents: 10151
diff changeset
502 * be NULL terminated.
874e91e2a3b3 [gaim-migrate @ 11325]
Mark Doliner <markdoliner@pidgin.im>
parents: 10151
diff changeset
503 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
504 void purple_status_set_active_with_attrs(PurpleStatus *status, gboolean active,
10204
874e91e2a3b3 [gaim-migrate @ 11325]
Mark Doliner <markdoliner@pidgin.im>
parents: 10151
diff changeset
505 va_list args);
874e91e2a3b3 [gaim-migrate @ 11325]
Mark Doliner <markdoliner@pidgin.im>
parents: 10151
diff changeset
506
874e91e2a3b3 [gaim-migrate @ 11325]
Mark Doliner <markdoliner@pidgin.im>
parents: 10151
diff changeset
507 /**
11249
efc82f3e1bd3 [gaim-migrate @ 13418]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 11129
diff changeset
508 * Sets whether or not a status is active.
efc82f3e1bd3 [gaim-migrate @ 13418]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 11129
diff changeset
509 *
efc82f3e1bd3 [gaim-migrate @ 13418]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 11129
diff changeset
510 * This should only be called by the account, conversation, and buddy APIs.
efc82f3e1bd3 [gaim-migrate @ 13418]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 11129
diff changeset
511 *
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
512 * @status: The status.
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
513 * @active: The active state.
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
514 * @attrs: A list of attributes to set on the status. This list is
11249
efc82f3e1bd3 [gaim-migrate @ 13418]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 11129
diff changeset
515 * composed of key/value pairs, where each key is a valid
18190
bcf28ef7e8ff Re-fix the DBus list handling code by killing const GList* / const GSList*
Richard Laager <rlaager@pidgin.im>
parents: 16870
diff changeset
516 * attribute name for this PurpleStatusType. The list is
bcf28ef7e8ff Re-fix the DBus list handling code by killing const GList* / const GSList*
Richard Laager <rlaager@pidgin.im>
parents: 16870
diff changeset
517 * not modified or freed by this function.
11249
efc82f3e1bd3 [gaim-migrate @ 13418]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 11129
diff changeset
518 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
519 void purple_status_set_active_with_attrs_list(PurpleStatus *status, gboolean active,
18190
bcf28ef7e8ff Re-fix the DBus list handling code by killing const GList* / const GSList*
Richard Laager <rlaager@pidgin.im>
parents: 16870
diff changeset
520 GList *attrs);
11249
efc82f3e1bd3 [gaim-migrate @ 13418]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 11129
diff changeset
521
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
522 /**
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
523 * Returns the status's type.
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
524 *
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
525 * @status: The status.
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
526 *
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
527 * Returns: The status's type.
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
528 */
34854
8417ea6a9235 Started GObjectification of PurpleStatus.
Ankit Vani <a@nevitus.org>
parents: 34852
diff changeset
529 PurpleStatusType *purple_status_get_status_type(const PurpleStatus *status);
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
530
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
531 /**
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
532 * Returns the status's presence.
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
533 *
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
534 * @status: The status.
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
535 *
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
536 * Returns: The status's presence.
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
537 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
538 PurplePresence *purple_status_get_presence(const PurpleStatus *status);
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
539
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
540 /**
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
541 * Returns the status's type ID.
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
542 *
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
543 * This is a convenience method for
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
544 * purple_status_type_get_id(purple_status_get_type(status)).
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
545 *
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
546 * @status: The status.
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
547 *
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
548 * Returns: The status's ID.
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
549 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
550 const char *purple_status_get_id(const PurpleStatus *status);
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
551
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
552 /**
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
553 * Returns the status's name.
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
554 *
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
555 * This is a convenience method for
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
556 * purple_status_type_get_name(purple_status_get_type(status)).
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
557 *
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
558 * @status: The status.
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
559 *
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
560 * Returns: The status's name.
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
561 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
562 const char *purple_status_get_name(const PurpleStatus *status);
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
563
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
564 /**
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
565 * Returns whether or not a status is independent.
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
566 *
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
567 * This is a convenience method for
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
568 * purple_status_type_is_independent(purple_status_get_type(status)).
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
569 *
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
570 * @status: The status.
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
571 *
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
572 * Returns: TRUE if the status is independent, or FALSE otherwise.
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
573 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
574 gboolean purple_status_is_independent(const PurpleStatus *status);
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
575
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
576 /**
10067
d04171b6f098 [gaim-migrate @ 11043]
Mark Doliner <markdoliner@pidgin.im>
parents: 10040
diff changeset
577 * Returns whether or not a status is exclusive.
d04171b6f098 [gaim-migrate @ 11043]
Mark Doliner <markdoliner@pidgin.im>
parents: 10040
diff changeset
578 *
d04171b6f098 [gaim-migrate @ 11043]
Mark Doliner <markdoliner@pidgin.im>
parents: 10040
diff changeset
579 * This is a convenience method for
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
580 * purple_status_type_is_exclusive(purple_status_get_type(status)).
10067
d04171b6f098 [gaim-migrate @ 11043]
Mark Doliner <markdoliner@pidgin.im>
parents: 10040
diff changeset
581 *
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
582 * @status: The status.
10067
d04171b6f098 [gaim-migrate @ 11043]
Mark Doliner <markdoliner@pidgin.im>
parents: 10040
diff changeset
583 *
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
584 * Returns: TRUE if the status is exclusive, FALSE otherwise.
10067
d04171b6f098 [gaim-migrate @ 11043]
Mark Doliner <markdoliner@pidgin.im>
parents: 10040
diff changeset
585 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
586 gboolean purple_status_is_exclusive(const PurpleStatus *status);
10067
d04171b6f098 [gaim-migrate @ 11043]
Mark Doliner <markdoliner@pidgin.im>
parents: 10040
diff changeset
587
d04171b6f098 [gaim-migrate @ 11043]
Mark Doliner <markdoliner@pidgin.im>
parents: 10040
diff changeset
588 /**
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
589 * Returns whether or not a status is available.
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
590 *
12595
8108c22aa723 [gaim-migrate @ 14925]
Richard Laager <rlaager@pidgin.im>
parents: 12484
diff changeset
591 * Available statuses are online and possibly invisible, but not away or idle.
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
592 *
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
593 * This is a convenience method for
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
594 * purple_status_type_is_available(purple_status_get_type(status)).
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
595 *
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
596 * @status: The status.
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
597 *
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
598 * Returns: TRUE if the status is available, or FALSE otherwise.
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
599 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
600 gboolean purple_status_is_available(const PurpleStatus *status);
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
601
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
602 /**
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
603 * Returns the active state of a status.
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
604 *
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
605 * @status: The status.
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
606 *
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
607 * Returns: The active state of the status.
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
608 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
609 gboolean purple_status_is_active(const PurpleStatus *status);
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
610
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
611 /**
10040
b74aeb350fc5 [gaim-migrate @ 10999]
Dave West <kat@users.sourceforge.net>
parents: 10006
diff changeset
612 * Returns whether or not a status is considered 'online'
b74aeb350fc5 [gaim-migrate @ 10999]
Dave West <kat@users.sourceforge.net>
parents: 10006
diff changeset
613 *
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
614 * @status: The status.
10040
b74aeb350fc5 [gaim-migrate @ 10999]
Dave West <kat@users.sourceforge.net>
parents: 10006
diff changeset
615 *
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
616 * Returns: TRUE if the status is considered online, FALSE otherwise
10040
b74aeb350fc5 [gaim-migrate @ 10999]
Dave West <kat@users.sourceforge.net>
parents: 10006
diff changeset
617 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
618 gboolean purple_status_is_online(const PurpleStatus *status);
10040
b74aeb350fc5 [gaim-migrate @ 10999]
Dave West <kat@users.sourceforge.net>
parents: 10006
diff changeset
619
b74aeb350fc5 [gaim-migrate @ 10999]
Dave West <kat@users.sourceforge.net>
parents: 10006
diff changeset
620 /**
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
621 * Returns the value of an attribute in a status with the specified ID.
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
622 *
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
623 * @status: The status.
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
624 * @id: The attribute ID.
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
625 *
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
626 * Returns: The value of the attribute.
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
627 */
34801
08c49f30e4a1 Replaced PurpleValue with GType in plugin.h, signals.h. Replaced with GValue in status.h.
Ankit Vani <a@nevitus.org>
parents: 34799
diff changeset
628 GValue *purple_status_get_attr_value(const PurpleStatus *status,
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
629 const char *id);
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
630
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
631 /**
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
632 * Returns the boolean value of an attribute in a status with the specified ID.
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
633 *
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
634 * @status: The status.
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
635 * @id: The attribute ID.
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
636 *
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
637 * Returns: The boolean value of the attribute.
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
638 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
639 gboolean purple_status_get_attr_boolean(const PurpleStatus *status,
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
640 const char *id);
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
641
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
642 /**
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
643 * Returns the integer value of an attribute in a status with the specified ID.
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
644 *
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
645 * @status: The status.
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
646 * @id: The attribute ID.
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
647 *
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
648 * Returns: The integer value of the attribute.
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
649 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
650 int purple_status_get_attr_int(const PurpleStatus *status, const char *id);
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
651
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
652 /**
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
653 * Returns the string value of an attribute in a status with the specified ID.
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
654 *
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
655 * @status: The status.
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
656 * @id: The attribute ID.
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
657 *
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
658 * Returns: The string value of the attribute.
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
659 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
660 const char *purple_status_get_attr_string(const PurpleStatus *status,
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
661 const char *id);
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
662
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
663 /**
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
664 * Compares two statuses for availability.
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
665 *
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
666 * @status1: The first status.
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
667 * @status2: The second status.
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
668 *
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
669 * Returns: -1 if @a status1 is more available than @a status2.
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
670 * 0 if @a status1 is equal to @a status2.
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
671 * 1 if @a status2 is more available than @a status1.
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
672 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
673 gint purple_status_compare(const PurpleStatus *status1, const PurpleStatus *status2);
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
674
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
675 /*@}*/
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
676
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
677 /**************************************************************************/
34854
8417ea6a9235 Started GObjectification of PurpleStatus.
Ankit Vani <a@nevitus.org>
parents: 34852
diff changeset
678 /** @name Statuses subsystem */
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
679 /**************************************************************************/
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
680 /*@{*/
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
681
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
682 /**
10087
e5b80a38939d [gaim-migrate @ 11098]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 10071
diff changeset
683 * Get the handle for the status subsystem.
e5b80a38939d [gaim-migrate @ 11098]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 10071
diff changeset
684 *
37017
8e2b68c79fa1 Convert doxygen's @return and @param commands for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 36960
diff changeset
685 * Returns: the handle to the status subsystem
10087
e5b80a38939d [gaim-migrate @ 11098]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 10071
diff changeset
686 */
34854
8417ea6a9235 Started GObjectification of PurpleStatus.
Ankit Vani <a@nevitus.org>
parents: 34852
diff changeset
687 void *purple_statuses_get_handle(void);
10087
e5b80a38939d [gaim-migrate @ 11098]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 10071
diff changeset
688
e5b80a38939d [gaim-migrate @ 11098]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 10071
diff changeset
689 /**
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
690 * Initializes the status subsystem.
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
691 */
34854
8417ea6a9235 Started GObjectification of PurpleStatus.
Ankit Vani <a@nevitus.org>
parents: 34852
diff changeset
692 void purple_statuses_init(void);
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
693
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
694 /**
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
695 * Uninitializes the status subsystem.
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
696 */
34854
8417ea6a9235 Started GObjectification of PurpleStatus.
Ankit Vani <a@nevitus.org>
parents: 34852
diff changeset
697 void purple_statuses_uninit(void);
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
698
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
699 /*@}*/
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
700
32787
7072f190d6ad Use G_BEGIN/END_DECLS in public libpurple files. This was
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32303
diff changeset
701 G_END_DECLS
15124
68a8be380f54 [gaim-migrate @ 17846]
Sean Egan <seanegan@pidgin.im>
parents: 14988
diff changeset
702
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
703 #endif /* _PURPLE_STATUS_H_ */
32787
7072f190d6ad Use G_BEGIN/END_DECLS in public libpurple files. This was
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32303
diff changeset
704

mercurial