pidgin/gtkconv-theme.h

Thu, 22 May 2014 17:10:34 +0200

author
Tomasz Wasilczyk <twasilczyk@pidgin.im>
date
Thu, 22 May 2014 17:10:34 +0200
changeset 36083
bb50003b96d0
parent 35487
494f09f7f331
child 37094
84873ce721dc
permissions
-rw-r--r--

Fix a crash

32536
91b09760ab0c Add some boilerplate Conversation theme GObjects. These don't do
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
1 /* pidgin
91b09760ab0c Add some boilerplate Conversation theme GObjects. These don't do
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
2 *
91b09760ab0c Add some boilerplate Conversation theme GObjects. These don't do
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
3 * Pidgin is the legal property of its developers, whose names are too numerous
91b09760ab0c Add some boilerplate Conversation theme GObjects. These don't do
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
4 * to list here. Please refer to the COPYRIGHT file distributed with this
91b09760ab0c Add some boilerplate Conversation theme GObjects. These don't do
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
5 * source distribution.
91b09760ab0c Add some boilerplate Conversation theme GObjects. These don't do
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
6 *
91b09760ab0c Add some boilerplate Conversation theme GObjects. These don't do
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
7 * This program is free software; you can redistribute it and/or modify
91b09760ab0c Add some boilerplate Conversation theme GObjects. These don't do
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
8 * it under the terms of the GNU General Public License as published by
91b09760ab0c Add some boilerplate Conversation theme GObjects. These don't do
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
9 * the Free Software Foundation; either version 2 of the License, or
91b09760ab0c Add some boilerplate Conversation theme GObjects. These don't do
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
10 * (at your option) any later version.
91b09760ab0c Add some boilerplate Conversation theme GObjects. These don't do
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
11 *
91b09760ab0c Add some boilerplate Conversation theme GObjects. These don't do
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
12 * This program is distributed in the hope that it will be useful,
91b09760ab0c Add some boilerplate Conversation theme GObjects. These don't do
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
91b09760ab0c Add some boilerplate Conversation theme GObjects. These don't do
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
91b09760ab0c Add some boilerplate Conversation theme GObjects. These don't do
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
15 * GNU General Public License for more details.
91b09760ab0c Add some boilerplate Conversation theme GObjects. These don't do
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
16 *
91b09760ab0c Add some boilerplate Conversation theme GObjects. These don't do
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
17 * You should have received a copy of the GNU General Public License
91b09760ab0c Add some boilerplate Conversation theme GObjects. These don't do
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
18 * along with this program; if not, write to the Free Software
91b09760ab0c Add some boilerplate Conversation theme GObjects. These don't do
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
19 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA
91b09760ab0c Add some boilerplate Conversation theme GObjects. These don't do
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
20 */
35487
494f09f7f331 Move section blocks inside inclusion guards -- otherwise g-ir-scanner yells
Ankit Vani <a@nevitus.org>
parents: 35474
diff changeset
21
494f09f7f331 Move section blocks inside inclusion guards -- otherwise g-ir-scanner yells
Ankit Vani <a@nevitus.org>
parents: 35474
diff changeset
22 #ifndef PIDGIN_CONV_THEME_H
494f09f7f331 Move section blocks inside inclusion guards -- otherwise g-ir-scanner yells
Ankit Vani <a@nevitus.org>
parents: 35474
diff changeset
23 #define PIDGIN_CONV_THEME_H
35451
206524351826 Add sections for finch and re-arrange its doc index
Ankit Vani <a@nevitus.org>
parents: 35415
diff changeset
24 /**
206524351826 Add sections for finch and re-arrange its doc index
Ankit Vani <a@nevitus.org>
parents: 35415
diff changeset
25 * SECTION:gtkconv-theme
206524351826 Add sections for finch and re-arrange its doc index
Ankit Vani <a@nevitus.org>
parents: 35415
diff changeset
26 * @section_id: pidgin-gtkconv-theme
206524351826 Add sections for finch and re-arrange its doc index
Ankit Vani <a@nevitus.org>
parents: 35415
diff changeset
27 * @short_description: <filename>gtkconv-theme.h</filename>
206524351826 Add sections for finch and re-arrange its doc index
Ankit Vani <a@nevitus.org>
parents: 35415
diff changeset
28 * @title: Conversation Theme Class
206524351826 Add sections for finch and re-arrange its doc index
Ankit Vani <a@nevitus.org>
parents: 35415
diff changeset
29 */
32536
91b09760ab0c Add some boilerplate Conversation theme GObjects. These don't do
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
30
91b09760ab0c Add some boilerplate Conversation theme GObjects. These don't do
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
31 #include <glib.h>
91b09760ab0c Add some boilerplate Conversation theme GObjects. These don't do
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
32 #include <glib-object.h>
32544
4cf095ee82e3 Copy theme-to-conversation loading stuff into the GObject code.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32540
diff changeset
33 #include "conversation.h"
32536
91b09760ab0c Add some boilerplate Conversation theme GObjects. These don't do
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
34 #include "theme.h"
91b09760ab0c Add some boilerplate Conversation theme GObjects. These don't do
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
35
91b09760ab0c Add some boilerplate Conversation theme GObjects. These don't do
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
36 typedef struct _PidginConvTheme PidginConvTheme;
91b09760ab0c Add some boilerplate Conversation theme GObjects. These don't do
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
37 typedef struct _PidginConvThemeClass PidginConvThemeClass;
91b09760ab0c Add some boilerplate Conversation theme GObjects. These don't do
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
38
91b09760ab0c Add some boilerplate Conversation theme GObjects. These don't do
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
39 #define PIDGIN_TYPE_CONV_THEME (pidgin_conversation_theme_get_type ())
91b09760ab0c Add some boilerplate Conversation theme GObjects. These don't do
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
40 #define PIDGIN_CONV_THEME(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), PIDGIN_TYPE_CONV_THEME, PidginConvTheme))
91b09760ab0c Add some boilerplate Conversation theme GObjects. These don't do
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
41 #define PIDGIN_CONV_THEME_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), PIDGIN_TYPE_CONV_THEME, PidginConvThemeClass))
91b09760ab0c Add some boilerplate Conversation theme GObjects. These don't do
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
42 #define PIDGIN_IS_CONV_THEME(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), PIDGIN_TYPE_CONV_THEME))
91b09760ab0c Add some boilerplate Conversation theme GObjects. These don't do
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
43 #define PIDGIN_IS_CONV_THEME_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), PIDGIN_TYPE_CONV_THEME))
91b09760ab0c Add some boilerplate Conversation theme GObjects. These don't do
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
44 #define PIDGIN_CONV_THEME_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), PIDGIN_TYPE_CONV_THEME, PidginConvThemeClass))
91b09760ab0c Add some boilerplate Conversation theme GObjects. These don't do
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
45
35415
ba28be1a7611 Convert docs from doxygen to gtk-doc format for gtkaccount to gtkconvwin
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
46 /**
ba28be1a7611 Convert docs from doxygen to gtk-doc format for gtkaccount to gtkconvwin
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
47 * PidginConvTheme:
ba28be1a7611 Convert docs from doxygen to gtk-doc format for gtkaccount to gtkconvwin
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
48 *
ba28be1a7611 Convert docs from doxygen to gtk-doc format for gtkaccount to gtkconvwin
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
49 * extends PurpleTheme (theme.h)
ba28be1a7611 Convert docs from doxygen to gtk-doc format for gtkaccount to gtkconvwin
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
50 * A pidgin icon theme.
ba28be1a7611 Convert docs from doxygen to gtk-doc format for gtkaccount to gtkconvwin
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
51 * This object represents a Pidgin icon theme.
ba28be1a7611 Convert docs from doxygen to gtk-doc format for gtkaccount to gtkconvwin
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
52 *
ba28be1a7611 Convert docs from doxygen to gtk-doc format for gtkaccount to gtkconvwin
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
53 * PidginConvTheme is a PurpleTheme Object.
ba28be1a7611 Convert docs from doxygen to gtk-doc format for gtkaccount to gtkconvwin
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
54 */
32536
91b09760ab0c Add some boilerplate Conversation theme GObjects. These don't do
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
55 struct _PidginConvTheme
91b09760ab0c Add some boilerplate Conversation theme GObjects. These don't do
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
56 {
91b09760ab0c Add some boilerplate Conversation theme GObjects. These don't do
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
57 PurpleTheme parent;
91b09760ab0c Add some boilerplate Conversation theme GObjects. These don't do
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
58 };
91b09760ab0c Add some boilerplate Conversation theme GObjects. These don't do
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
59
91b09760ab0c Add some boilerplate Conversation theme GObjects. These don't do
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
60 struct _PidginConvThemeClass
91b09760ab0c Add some boilerplate Conversation theme GObjects. These don't do
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
61 {
91b09760ab0c Add some boilerplate Conversation theme GObjects. These don't do
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
62 PurpleThemeClass parent_class;
91b09760ab0c Add some boilerplate Conversation theme GObjects. These don't do
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
63 };
91b09760ab0c Add some boilerplate Conversation theme GObjects. These don't do
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
64
32571
04b564092222 Add an accessor for template data. Also, fix some fallbacks.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32569
diff changeset
65 typedef enum {
04b564092222 Add an accessor for template data. Also, fix some fallbacks.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32569
diff changeset
66 PIDGIN_CONVERSATION_THEME_TEMPLATE_MAIN,
04b564092222 Add an accessor for template data. Also, fix some fallbacks.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32569
diff changeset
67 PIDGIN_CONVERSATION_THEME_TEMPLATE_HEADER,
04b564092222 Add an accessor for template data. Also, fix some fallbacks.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32569
diff changeset
68 PIDGIN_CONVERSATION_THEME_TEMPLATE_FOOTER,
04b564092222 Add an accessor for template data. Also, fix some fallbacks.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32569
diff changeset
69 PIDGIN_CONVERSATION_THEME_TEMPLATE_TOPIC,
04b564092222 Add an accessor for template data. Also, fix some fallbacks.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32569
diff changeset
70 PIDGIN_CONVERSATION_THEME_TEMPLATE_STATUS,
04b564092222 Add an accessor for template data. Also, fix some fallbacks.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32569
diff changeset
71 PIDGIN_CONVERSATION_THEME_TEMPLATE_CONTENT,
04b564092222 Add an accessor for template data. Also, fix some fallbacks.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32569
diff changeset
72 PIDGIN_CONVERSATION_THEME_TEMPLATE_INCOMING_CONTENT,
04b564092222 Add an accessor for template data. Also, fix some fallbacks.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32569
diff changeset
73 PIDGIN_CONVERSATION_THEME_TEMPLATE_INCOMING_NEXT_CONTENT,
04b564092222 Add an accessor for template data. Also, fix some fallbacks.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32569
diff changeset
74 PIDGIN_CONVERSATION_THEME_TEMPLATE_INCOMING_CONTEXT,
04b564092222 Add an accessor for template data. Also, fix some fallbacks.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32569
diff changeset
75 PIDGIN_CONVERSATION_THEME_TEMPLATE_INCOMING_NEXT_CONTEXT,
04b564092222 Add an accessor for template data. Also, fix some fallbacks.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32569
diff changeset
76 PIDGIN_CONVERSATION_THEME_TEMPLATE_OUTGOING_CONTENT,
04b564092222 Add an accessor for template data. Also, fix some fallbacks.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32569
diff changeset
77 PIDGIN_CONVERSATION_THEME_TEMPLATE_OUTGOING_NEXT_CONTENT,
04b564092222 Add an accessor for template data. Also, fix some fallbacks.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32569
diff changeset
78 PIDGIN_CONVERSATION_THEME_TEMPLATE_OUTGOING_CONTEXT,
32574
56dc04a81f4b Add template lookup for 'basestyle' CSS.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32573
diff changeset
79 PIDGIN_CONVERSATION_THEME_TEMPLATE_OUTGOING_NEXT_CONTEXT,
56dc04a81f4b Add template lookup for 'basestyle' CSS.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32573
diff changeset
80 PIDGIN_CONVERSATION_THEME_TEMPLATE_BASESTYLE_CSS
32571
04b564092222 Add an accessor for template data. Also, fix some fallbacks.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32569
diff changeset
81
04b564092222 Add an accessor for template data. Also, fix some fallbacks.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32569
diff changeset
82 } PidginConvThemeTemplateType;
04b564092222 Add an accessor for template data. Also, fix some fallbacks.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32569
diff changeset
83
32536
91b09760ab0c Add some boilerplate Conversation theme GObjects. These don't do
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
84 /**************************************************************************/
35472
474e26199560 Removed @name
Ankit Vani <a@nevitus.org>
parents: 35451
diff changeset
85 /* Pidgin Conversation Theme API */
32536
91b09760ab0c Add some boilerplate Conversation theme GObjects. These don't do
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
86 /**************************************************************************/
91b09760ab0c Add some boilerplate Conversation theme GObjects. These don't do
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
87 G_BEGIN_DECLS
91b09760ab0c Add some boilerplate Conversation theme GObjects. These don't do
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
88
91b09760ab0c Add some boilerplate Conversation theme GObjects. These don't do
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
89 /**
35415
ba28be1a7611 Convert docs from doxygen to gtk-doc format for gtkaccount to gtkconvwin
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
90 * pidgin_conversation_theme_get_type:
ba28be1a7611 Convert docs from doxygen to gtk-doc format for gtkaccount to gtkconvwin
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
91 *
35474
ff5eccb9f797 Remove @internal
Ankit Vani <a@nevitus.org>
parents: 35472
diff changeset
92 * Returns: The #GType for a conversation theme.
32536
91b09760ab0c Add some boilerplate Conversation theme GObjects. These don't do
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
93 */
91b09760ab0c Add some boilerplate Conversation theme GObjects. These don't do
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
94 GType pidgin_conversation_theme_get_type(void);
91b09760ab0c Add some boilerplate Conversation theme GObjects. These don't do
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
95
32569
4d13cf881984 Add documentation for conversation themes.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32567
diff changeset
96 /**
35415
ba28be1a7611 Convert docs from doxygen to gtk-doc format for gtkaccount to gtkconvwin
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
97 * pidgin_conversation_theme_get_info:
ba28be1a7611 Convert docs from doxygen to gtk-doc format for gtkaccount to gtkconvwin
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
98 * @theme: The conversation theme
32569
4d13cf881984 Add documentation for conversation themes.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32567
diff changeset
99 *
35415
ba28be1a7611 Convert docs from doxygen to gtk-doc format for gtkaccount to gtkconvwin
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
100 * Get the Info.plist hash table from a conversation theme.
32569
4d13cf881984 Add documentation for conversation themes.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32567
diff changeset
101 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 33384
diff changeset
102 * Returns: The hash table. Keys are strings as outlined for message styles,
32569
4d13cf881984 Add documentation for conversation themes.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32567
diff changeset
103 * values are GValue*s. This is an internal structure. Take a ref if
4d13cf881984 Add documentation for conversation themes.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32567
diff changeset
104 * necessary, but don't destroy it yourself.
4d13cf881984 Add documentation for conversation themes.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32567
diff changeset
105 */
32545
1b21192ab58a Move conversation theme loading into the PidginConvThemeLoader GObject
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32544
diff changeset
106 const GHashTable *pidgin_conversation_theme_get_info(const PidginConvTheme *theme);
32569
4d13cf881984 Add documentation for conversation themes.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32567
diff changeset
107
4d13cf881984 Add documentation for conversation themes.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32567
diff changeset
108 /**
35415
ba28be1a7611 Convert docs from doxygen to gtk-doc format for gtkaccount to gtkconvwin
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
109 * pidgin_conversation_theme_set_info:
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 33384
diff changeset
110 * @theme: The conversation theme
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 33384
diff changeset
111 * @info: The new hash table. The theme will take ownership of this hash
32569
4d13cf881984 Add documentation for conversation themes.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32567
diff changeset
112 * table. Do not use it yourself afterwards with holding a ref.
35415
ba28be1a7611 Convert docs from doxygen to gtk-doc format for gtkaccount to gtkconvwin
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
113 * For key and value specifications, see pidgin_conversation_theme_get_info().
32569
4d13cf881984 Add documentation for conversation themes.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32567
diff changeset
114 *
35415
ba28be1a7611 Convert docs from doxygen to gtk-doc format for gtkaccount to gtkconvwin
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
115 * Set the Info.plist hash table for a conversation theme.
32569
4d13cf881984 Add documentation for conversation themes.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32567
diff changeset
116 */
32545
1b21192ab58a Move conversation theme loading into the PidginConvThemeLoader GObject
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32544
diff changeset
117 void pidgin_conversation_theme_set_info(PidginConvTheme *theme, GHashTable *info);
1b21192ab58a Move conversation theme loading into the PidginConvThemeLoader GObject
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32544
diff changeset
118
32572
c61acbf96b7c Document things.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32571
diff changeset
119 /**
35415
ba28be1a7611 Convert docs from doxygen to gtk-doc format for gtkaccount to gtkconvwin
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
120 * pidgin_conversation_theme_lookup:
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 33384
diff changeset
121 * @theme: The conversation theme
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 33384
diff changeset
122 * @key: The key to find
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 33384
diff changeset
123 * @specific: Whether to search variant-specific keys
32573
83bf257530d0 Add a function for lookup of Info.plist entries.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32572
diff changeset
124 *
35415
ba28be1a7611 Convert docs from doxygen to gtk-doc format for gtkaccount to gtkconvwin
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
125 * Lookup a key in a theme
ba28be1a7611 Convert docs from doxygen to gtk-doc format for gtkaccount to gtkconvwin
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
126 *
ba28be1a7611 Convert docs from doxygen to gtk-doc format for gtkaccount to gtkconvwin
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
127 * Returns: The key information. If @specific is %TRUE, then keys are first
32573
83bf257530d0 Add a function for lookup of Info.plist entries.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32572
diff changeset
128 * searched by variant, then by general ones. Otherwise, only general
83bf257530d0 Add a function for lookup of Info.plist entries.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32572
diff changeset
129 * key values are returned.
83bf257530d0 Add a function for lookup of Info.plist entries.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32572
diff changeset
130 */
83bf257530d0 Add a function for lookup of Info.plist entries.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32572
diff changeset
131 const GValue *pidgin_conversation_theme_lookup(PidginConvTheme *theme, const char *key, gboolean specific);
83bf257530d0 Add a function for lookup of Info.plist entries.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32572
diff changeset
132
83bf257530d0 Add a function for lookup of Info.plist entries.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32572
diff changeset
133 /**
35415
ba28be1a7611 Convert docs from doxygen to gtk-doc format for gtkaccount to gtkconvwin
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
134 * pidgin_conversation_theme_get_template:
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 33384
diff changeset
135 * @theme: The conversation theme
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 33384
diff changeset
136 * @type: The type of template data
32572
c61acbf96b7c Document things.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32571
diff changeset
137 *
35415
ba28be1a7611 Convert docs from doxygen to gtk-doc format for gtkaccount to gtkconvwin
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
138 * Get the template data from a conversation theme.
ba28be1a7611 Convert docs from doxygen to gtk-doc format for gtkaccount to gtkconvwin
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
139 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 33384
diff changeset
140 * Returns: The template data requested. Fallback is made as required by styles.
32572
c61acbf96b7c Document things.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32571
diff changeset
141 * Subsequent calls to this function will return cached values.
c61acbf96b7c Document things.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32571
diff changeset
142 */
32571
04b564092222 Add an accessor for template data. Also, fix some fallbacks.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32569
diff changeset
143 const char *pidgin_conversation_theme_get_template(PidginConvTheme *theme, PidginConvThemeTemplateType type);
04b564092222 Add an accessor for template data. Also, fix some fallbacks.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32569
diff changeset
144
32569
4d13cf881984 Add documentation for conversation themes.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32567
diff changeset
145 /**
35415
ba28be1a7611 Convert docs from doxygen to gtk-doc format for gtkaccount to gtkconvwin
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
146 * pidgin_conversation_theme_add_variant:
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 33384
diff changeset
147 * @theme: The conversation theme
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 33384
diff changeset
148 * @variant: The name of the variant
32569
4d13cf881984 Add documentation for conversation themes.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32567
diff changeset
149 *
35415
ba28be1a7611 Convert docs from doxygen to gtk-doc format for gtkaccount to gtkconvwin
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
150 * Add an available variant name to a conversation theme.
ba28be1a7611 Convert docs from doxygen to gtk-doc format for gtkaccount to gtkconvwin
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
151 *
ba28be1a7611 Convert docs from doxygen to gtk-doc format for gtkaccount to gtkconvwin
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
152 * Note: The conversation theme will take ownership of the variant name string.
32569
4d13cf881984 Add documentation for conversation themes.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32567
diff changeset
153 * This function should normally only be called by the theme loader.
4d13cf881984 Add documentation for conversation themes.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32567
diff changeset
154 */
32564
b711e92242da Fix a leak. pidgin_conversation_theme_add_variant should only be
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32562
diff changeset
155 void pidgin_conversation_theme_add_variant(PidginConvTheme *theme, char *variant);
32569
4d13cf881984 Add documentation for conversation themes.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32567
diff changeset
156
4d13cf881984 Add documentation for conversation themes.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32567
diff changeset
157 /**
35415
ba28be1a7611 Convert docs from doxygen to gtk-doc format for gtkaccount to gtkconvwin
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
158 * pidgin_conversation_theme_get_variant:
ba28be1a7611 Convert docs from doxygen to gtk-doc format for gtkaccount to gtkconvwin
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
159 * @theme: The conversation theme
32569
4d13cf881984 Add documentation for conversation themes.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32567
diff changeset
160 *
35415
ba28be1a7611 Convert docs from doxygen to gtk-doc format for gtkaccount to gtkconvwin
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
161 * Get the currently set variant name for a conversation theme.
32569
4d13cf881984 Add documentation for conversation themes.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32567
diff changeset
162 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 33384
diff changeset
163 * Returns: The current variant name.
32569
4d13cf881984 Add documentation for conversation themes.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32567
diff changeset
164 */
32562
9c094ffe9333 Load the list of variants when building the theme.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32545
diff changeset
165 const char *pidgin_conversation_theme_get_variant(PidginConvTheme *theme);
32569
4d13cf881984 Add documentation for conversation themes.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32567
diff changeset
166
4d13cf881984 Add documentation for conversation themes.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32567
diff changeset
167 /**
35415
ba28be1a7611 Convert docs from doxygen to gtk-doc format for gtkaccount to gtkconvwin
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
168 * pidgin_conversation_theme_set_variant:
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 33384
diff changeset
169 * @theme: The conversation theme
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 33384
diff changeset
170 * @variant: The name of the variant
32569
4d13cf881984 Add documentation for conversation themes.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32567
diff changeset
171 *
35415
ba28be1a7611 Convert docs from doxygen to gtk-doc format for gtkaccount to gtkconvwin
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
172 * Set the variant name for a conversation theme.
32569
4d13cf881984 Add documentation for conversation themes.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32567
diff changeset
173 */
32562
9c094ffe9333 Load the list of variants when building the theme.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32545
diff changeset
174 void pidgin_conversation_theme_set_variant(PidginConvTheme *theme, const char *variant);
32569
4d13cf881984 Add documentation for conversation themes.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32567
diff changeset
175
4d13cf881984 Add documentation for conversation themes.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32567
diff changeset
176 /**
35415
ba28be1a7611 Convert docs from doxygen to gtk-doc format for gtkaccount to gtkconvwin
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
177 * pidgin_conversation_theme_get_variants:
ba28be1a7611 Convert docs from doxygen to gtk-doc format for gtkaccount to gtkconvwin
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
178 * @theme: The conversation theme
32569
4d13cf881984 Add documentation for conversation themes.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32567
diff changeset
179 *
35415
ba28be1a7611 Convert docs from doxygen to gtk-doc format for gtkaccount to gtkconvwin
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
180 * Get a list of available variants for a conversation theme.
32569
4d13cf881984 Add documentation for conversation themes.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32567
diff changeset
181 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 33384
diff changeset
182 * Returns: The list of variants. This GList and the string data are owned by
32569
4d13cf881984 Add documentation for conversation themes.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32567
diff changeset
183 * the theme and should not be freed by the caller.
4d13cf881984 Add documentation for conversation themes.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32567
diff changeset
184 */
32562
9c094ffe9333 Load the list of variants when building the theme.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32545
diff changeset
185 const GList *pidgin_conversation_theme_get_variants(PidginConvTheme *theme);
9c094ffe9333 Load the list of variants when building the theme.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32545
diff changeset
186
32575
eb4fc932fae9 Apply conversation theme when opening the GTK conversation. All the
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32574
diff changeset
187 /**
35415
ba28be1a7611 Convert docs from doxygen to gtk-doc format for gtkaccount to gtkconvwin
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
188 * pidgin_conversation_theme_get_template_path:
ba28be1a7611 Convert docs from doxygen to gtk-doc format for gtkaccount to gtkconvwin
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
189 * @theme: The conversation theme
32575
eb4fc932fae9 Apply conversation theme when opening the GTK conversation. All the
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32574
diff changeset
190 *
35415
ba28be1a7611 Convert docs from doxygen to gtk-doc format for gtkaccount to gtkconvwin
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
191 * Get the path to the template HTML file.
32575
eb4fc932fae9 Apply conversation theme when opening the GTK conversation. All the
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32574
diff changeset
192 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 33384
diff changeset
193 * Returns: The path to the HTML file.
32575
eb4fc932fae9 Apply conversation theme when opening the GTK conversation. All the
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32574
diff changeset
194 */
eb4fc932fae9 Apply conversation theme when opening the GTK conversation. All the
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32574
diff changeset
195 char *pidgin_conversation_theme_get_template_path(PidginConvTheme *theme);
32540
1e50f90abb9b Attempt to move the message style object from the plugin into the new
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32536
diff changeset
196
32575
eb4fc932fae9 Apply conversation theme when opening the GTK conversation. All the
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32574
diff changeset
197 /**
35415
ba28be1a7611 Convert docs from doxygen to gtk-doc format for gtkaccount to gtkconvwin
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
198 * pidgin_conversation_theme_get_css_path:
ba28be1a7611 Convert docs from doxygen to gtk-doc format for gtkaccount to gtkconvwin
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
199 * @theme: The conversation theme
32575
eb4fc932fae9 Apply conversation theme when opening the GTK conversation. All the
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32574
diff changeset
200 *
35415
ba28be1a7611 Convert docs from doxygen to gtk-doc format for gtkaccount to gtkconvwin
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
201 * Get the path to the current variant CSS file.
32575
eb4fc932fae9 Apply conversation theme when opening the GTK conversation. All the
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32574
diff changeset
202 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 33384
diff changeset
203 * Returns: The path to the CSS file.
32575
eb4fc932fae9 Apply conversation theme when opening the GTK conversation. All the
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32574
diff changeset
204 */
eb4fc932fae9 Apply conversation theme when opening the GTK conversation. All the
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32574
diff changeset
205 char *pidgin_conversation_theme_get_css_path(PidginConvTheme *theme);
32544
4cf095ee82e3 Copy theme-to-conversation loading stuff into the GObject code.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32540
diff changeset
206
33384
215f0b668ac6 now loads the SenderColors.txt file from the theme if it exists, otherwise falls back to the built-in runtime-generated list
Nathan Walp <nwalp@pidgin.im>
parents: 32575
diff changeset
207 /**
35415
ba28be1a7611 Convert docs from doxygen to gtk-doc format for gtkaccount to gtkconvwin
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
208 * pidgin_conversation_theme_get_nick_colors:
ba28be1a7611 Convert docs from doxygen to gtk-doc format for gtkaccount to gtkconvwin
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
209 * @theme: The conversation theme
33384
215f0b668ac6 now loads the SenderColors.txt file from the theme if it exists, otherwise falls back to the built-in runtime-generated list
Nathan Walp <nwalp@pidgin.im>
parents: 32575
diff changeset
210 *
35415
ba28be1a7611 Convert docs from doxygen to gtk-doc format for gtkaccount to gtkconvwin
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
211 * Get (and reference) the array of nick colors
33384
215f0b668ac6 now loads the SenderColors.txt file from the theme if it exists, otherwise falls back to the built-in runtime-generated list
Nathan Walp <nwalp@pidgin.im>
parents: 32575
diff changeset
212 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 33384
diff changeset
213 * Returns: Pointer to GArray of nick colors, or NULL if no colors in theme
33384
215f0b668ac6 now loads the SenderColors.txt file from the theme if it exists, otherwise falls back to the built-in runtime-generated list
Nathan Walp <nwalp@pidgin.im>
parents: 32575
diff changeset
214 */
215f0b668ac6 now loads the SenderColors.txt file from the theme if it exists, otherwise falls back to the built-in runtime-generated list
Nathan Walp <nwalp@pidgin.im>
parents: 32575
diff changeset
215 GArray *pidgin_conversation_theme_get_nick_colors(PidginConvTheme *theme);
215f0b668ac6 now loads the SenderColors.txt file from the theme if it exists, otherwise falls back to the built-in runtime-generated list
Nathan Walp <nwalp@pidgin.im>
parents: 32575
diff changeset
216
32536
91b09760ab0c Add some boilerplate Conversation theme GObjects. These don't do
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
217 G_END_DECLS
35415
ba28be1a7611 Convert docs from doxygen to gtk-doc format for gtkaccount to gtkconvwin
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
218
32536
91b09760ab0c Add some boilerplate Conversation theme GObjects. These don't do
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
219 #endif /* PIDGIN_CONV_THEME_H */
91b09760ab0c Add some boilerplate Conversation theme GObjects. These don't do
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
220

mercurial