~vish/ubuntu/maverick/pidgin/bug25979

« back to all changes in this revision

Viewing changes to libpurple/theme.h

  • Committer: Bazaar Package Importer
  • Author(s): Felix Geyer
  • Date: 2009-10-09 19:40:26 UTC
  • mfrom: (1.4.1 upstream) (46.1.10 karmic)
  • Revision ID: james.westby@ubuntu.com-20091009194026-wbqqh0bsbz19nx5q
Tags: 1:2.6.2-1ubuntu7
* Don't stick the buddy list window to all desktops as some
  window managers have trouble to properly unstick it (LP: #346840)
  - debian/patches/11_buddy_list_really_show.patch
* Always use default tray icon size on KDE (LP: #209440)
  - debian/patches/62_tray_icon_size_kde.patch
* Use scrollbars in the preferences dialog if the screen height is
  below 700 px instead of 600 px
  - debian/patches/60_1024x600_gtkprefs.c.patch

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/**
 
2
 * @file theme.h  Purple Theme Abstact Class API
 
3
 */
 
4
 
 
5
/* purple
 
6
 *
 
7
 * Purple is the legal property of its developers, whose names are too numerous
 
8
 * to list here.  Please refer to the COPYRIGHT file distributed with this
 
9
 * source distribution.
 
10
 *
 
11
 * This program is free software; you can redistribute it and/or modify
 
12
 * it under the terms of the GNU General Public License as published by
 
13
 * the Free Software Foundation; either version 2 of the License, or
 
14
 * (at your option) any later version.
 
15
 *
 
16
 * This program is distributed in the hope that it will be useful,
 
17
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 
18
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 
19
 * GNU General Public License for more details.
 
20
 *
 
21
 * You should have received a copy of the GNU General Public License
 
22
 * along with this program; if not, write to the Free Software
 
23
 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02111-1301  USA
 
24
 */
 
25
 
 
26
#ifndef PURPLE_THEME_H
 
27
#define PURPLE_THEME_H
 
28
 
 
29
#include <glib.h>
 
30
#include <glib-object.h>
 
31
#include "imgstore.h"
 
32
 
 
33
/**
 
34
 * A purple theme.
 
35
 * This is an abstract class for Purple to use with the Purple theme manager.
 
36
 *
 
37
 * PurpleTheme is a GObject.
 
38
 */
 
39
typedef struct _PurpleTheme        PurpleTheme;
 
40
typedef struct _PurpleThemeClass   PurpleThemeClass;
 
41
 
 
42
#define PURPLE_TYPE_THEME            (purple_theme_get_type ())
 
43
#define PURPLE_THEME(obj)            (G_TYPE_CHECK_INSTANCE_CAST ((obj), PURPLE_TYPE_THEME, PurpleTheme))
 
44
#define PURPLE_THEME_CLASS(klass)    (G_TYPE_CHECK_CLASS_CAST ((klass), PURPLE_TYPE_THEME, PurpleThemeClass))
 
45
#define PURPLE_IS_THEME(obj)         (G_TYPE_CHECK_INSTANCE_TYPE ((obj), PURPLE_TYPE_THEME))
 
46
#define PURPLE_IS_THEME_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), PURPLE_TYPE_THEME))
 
47
#define PURPLE_THEME_GET_CLASS(obj)  (G_TYPE_INSTANCE_GET_CLASS ((obj), PURPLE_TYPE_THEME, PurpleThemeClass))
 
48
 
 
49
struct _PurpleTheme
 
50
{
 
51
        GObject parent;
 
52
        gpointer priv;
 
53
};
 
54
 
 
55
struct _PurpleThemeClass
 
56
{
 
57
        GObjectClass parent_class;
 
58
};
 
59
 
 
60
/**************************************************************************/
 
61
/** @name Purple Theme API                                                */
 
62
/**************************************************************************/
 
63
G_BEGIN_DECLS
 
64
 
 
65
/**
 
66
 * GObject foo.
 
67
 * @internal.
 
68
 */
 
69
GType purple_theme_get_type(void);
 
70
 
 
71
/**
 
72
 * Returns the name of the PurpleTheme object.
 
73
 *
 
74
 * @param theme  The purple theme.
 
75
 *
 
76
 * @return The string representing the name of the theme.
 
77
 */
 
78
const gchar *purple_theme_get_name(PurpleTheme *theme);
 
79
 
 
80
/**
 
81
 * Sets the name of the PurpleTheme object.
 
82
 *
 
83
 * @param theme The purple theme.
 
84
 * @param name  The name of the PurpleTheme object.
 
85
 */
 
86
void purple_theme_set_name(PurpleTheme *theme, const gchar *name);
 
87
 
 
88
/**
 
89
 * Returns the description of the PurpleTheme object.
 
90
 *
 
91
 * @param theme  The purple theme.
 
92
 *
 
93
 * @return A short description of the theme.
 
94
 */
 
95
const gchar *purple_theme_get_description(PurpleTheme *theme);
 
96
 
 
97
/**
 
98
 * Sets the description of the PurpleTheme object.
 
99
 *
 
100
 * @param theme  The purple theme.
 
101
 * @param description The description of the PurpleTheme object.
 
102
 */
 
103
void purple_theme_set_description(PurpleTheme *theme, const gchar *description);
 
104
 
 
105
/**
 
106
 * Returns the author of the PurpleTheme object.
 
107
 *
 
108
 * @param theme  The purple theme.
 
109
 *
 
110
 * @return The author of the theme.
 
111
 */
 
112
const gchar *purple_theme_get_author(PurpleTheme *theme);
 
113
 
 
114
/**
 
115
 * Sets the author of the PurpleTheme object.
 
116
 *
 
117
 * @param theme  The purple theme.
 
118
 * @param author The author of the PurpleTheme object.
 
119
 */
 
120
void purple_theme_set_author(PurpleTheme *theme, const gchar *author);
 
121
 
 
122
/**
 
123
 * Returns the type (string) of the PurpleTheme object.
 
124
 *
 
125
 * @param theme  The purple theme.
 
126
 *
 
127
 * @return The string representing the type.
 
128
 */
 
129
const gchar *purple_theme_get_type_string(PurpleTheme *theme);
 
130
 
 
131
/**
 
132
 * Returns the directory of the PurpleTheme object.
 
133
 *
 
134
 * @param theme  The purple theme.
 
135
 *
 
136
 * @return The string representing the theme directory.
 
137
 */
 
138
const gchar *purple_theme_get_dir(PurpleTheme *theme);
 
139
 
 
140
/**
 
141
 * Sets the directory of the PurpleTheme object.
 
142
 *
 
143
 * @param theme  The purple theme.
 
144
 * @param dir    The directory of the PurpleTheme object.
 
145
 */
 
146
void purple_theme_set_dir(PurpleTheme *theme, const gchar *dir);
 
147
 
 
148
/**
 
149
 * Returns the image preview of the PurpleTheme object.
 
150
 *
 
151
 * @param theme  The purple theme.
 
152
 *
 
153
 * @return The image preview of the PurpleTheme object.
 
154
 */
 
155
const gchar *purple_theme_get_image(PurpleTheme *theme);
 
156
 
 
157
/**
 
158
 * Returns the image preview and directory of the PurpleTheme object.
 
159
 *
 
160
 * @param theme  The purple theme.
 
161
 *
 
162
 * @return The image preview of the PurpleTheme object.
 
163
 */
 
164
gchar *purple_theme_get_image_full(PurpleTheme *theme);
 
165
 
 
166
/**
 
167
 * Sets the directory of the PurpleTheme object.
 
168
 *
 
169
 * @param theme  The purple theme.
 
170
 * @param img    The image preview of the PurpleTheme object.
 
171
 */
 
172
void purple_theme_set_image(PurpleTheme *theme, const gchar *img);
 
173
 
 
174
G_END_DECLS
 
175
#endif /* PURPLE_THEME_H */