Replace strcmp() with purple_strequal()
[pidgin-git.git] / pidgin / pidginstock.h
blob83185aee8349c059ce8b652f928a057f01db0115
1 /**
2 * @file pidginstock.h GTK+ Stock resources
3 * @ingroup pidgin
4 */
6 /* pidgin
8 * Pidgin is the legal property of its developers, whose names are too numerous
9 * to list here. Please refer to the COPYRIGHT file distributed with this
10 * source distribution.
12 * This program is free software; you can redistribute it and/or modify
13 * it under the terms of the GNU General Public License as published by
14 * the Free Software Foundation; either version 2 of the License, or
15 * (at your option) any later version.
17 * This program is distributed in the hope that it will be useful,
18 * but WITHOUT ANY WARRANTY; without even the implied warranty of
19 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
20 * GNU General Public License for more details.
22 * You should have received a copy of the GNU General Public License
23 * along with this program; if not, write to the Free Software
24 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA
26 #include <gtk/gtk.h>
27 #include "gtkstatus-icon-theme.h"
29 #ifndef _PIDGIN_STOCK_H_
30 #define _PIDGIN_STOCK_H_
32 /**************************************************************************/
33 /** @name Stock images */
34 /**************************************************************************/
35 /*@{*/
36 #define PIDGIN_STOCK_ACTION "pidgin-action"
37 #define PIDGIN_STOCK_ALIAS "pidgin-alias"
38 #define PIDGIN_STOCK_AWAY "pidgin-away"
39 #define PIDGIN_STOCK_CHAT "pidgin-chat"
40 #define PIDGIN_STOCK_CLEAR "pidgin-clear"
41 #define PIDGIN_STOCK_CLOSE_TABS "pidgin-close-tab"
42 #define PIDGIN_STOCK_DEBUG "pidgin-debug"
43 #define PIDGIN_STOCK_DISCONNECT "pidgin-disconnect"
44 #define PIDGIN_STOCK_DOWNLOAD "pidgin-download"
45 #define PIDGIN_STOCK_EDIT "pidgin-edit"
46 #define PIDGIN_STOCK_FGCOLOR "pidgin-fgcolor"
47 #define PIDGIN_STOCK_FILE_CANCELED "pidgin-file-cancelled"
48 #define PIDGIN_STOCK_FILE_DONE "pidgin-file-done"
49 #define PIDGIN_STOCK_IGNORE "pidgin-ignore"
50 #define PIDGIN_STOCK_INFO "pidgin-info"
51 #define PIDGIN_STOCK_INVITE "pidgin-invite"
52 #define PIDGIN_STOCK_MODIFY "pidgin-modify"
53 #define PIDGIN_STOCK_ADD "pidgin-add"
54 #define PIDGIN_STOCK_OPEN_MAIL "pidgin-stock-open-mail"
55 #define PIDGIN_STOCK_PAUSE "pidgin-pause"
56 #define PIDGIN_STOCK_POUNCE "pidgin-pounce"
57 #define PIDGIN_STOCK_SIGN_OFF "pidgin-sign-off"
58 #define PIDGIN_STOCK_SIGN_ON "pidgin-sign-on"
59 #define PIDGIN_STOCK_TEXT_NORMAL "pidgin-text-normal"
60 #define PIDGIN_STOCK_TYPED "pidgin-typed"
61 #define PIDGIN_STOCK_UPLOAD "pidgin-upload"
63 /* Status icons */
64 #define PIDGIN_STOCK_STATUS_AVAILABLE "pidgin-status-available"
65 #define PIDGIN_STOCK_STATUS_AVAILABLE_I "pidgin-status-available-i"
66 #define PIDGIN_STOCK_STATUS_AWAY "pidgin-status-away"
67 #define PIDGIN_STOCK_STATUS_AWAY_I "pidgin-status-away-i"
68 #define PIDGIN_STOCK_STATUS_BUSY "pidgin-status-busy"
69 #define PIDGIN_STOCK_STATUS_BUSY_I "pidgin-status-busy-i"
70 #define PIDGIN_STOCK_STATUS_CHAT "pidgin-status-chat"
71 #define PIDGIN_STOCK_STATUS_INVISIBLE "pidgin-status-invisible"
72 #define PIDGIN_STOCK_STATUS_XA "pidgin-status-xa"
73 #define PIDGIN_STOCK_STATUS_XA_I "pidgin-status-xa-i"
74 #define PIDGIN_STOCK_STATUS_LOGIN "pidgin-status-login"
75 #define PIDGIN_STOCK_STATUS_LOGOUT "pidgin-status-logout"
76 #define PIDGIN_STOCK_STATUS_OFFLINE "pidgin-status-offline"
77 #define PIDGIN_STOCK_STATUS_OFFLINE_I "pidgin-status-offline"
78 #define PIDGIN_STOCK_STATUS_PERSON "pidgin-status-person"
79 #define PIDGIN_STOCK_STATUS_MESSAGE "pidgin-status-message"
81 /* Chat room emblems */
82 #define PIDGIN_STOCK_STATUS_IGNORED "pidgin-status-ignored"
83 #define PIDGIN_STOCK_STATUS_FOUNDER "pidgin-status-founder"
84 #define PIDGIN_STOCK_STATUS_OPERATOR "pidgin-status-operator"
85 #define PIDGIN_STOCK_STATUS_HALFOP "pidgin-status-halfop"
86 #define PIDGIN_STOCK_STATUS_VOICE "pidgin-status-voice"
88 /* Dialog icons */
89 #define PIDGIN_STOCK_DIALOG_AUTH "pidgin-dialog-auth"
90 #define PIDGIN_STOCK_DIALOG_ERROR "pidgin-dialog-error"
91 #define PIDGIN_STOCK_DIALOG_INFO "pidgin-dialog-info"
92 #define PIDGIN_STOCK_DIALOG_MAIL "pidgin-dialog-mail"
93 #define PIDGIN_STOCK_DIALOG_QUESTION "pidgin-dialog-question"
94 #define PIDGIN_STOCK_DIALOG_COOL "pidgin-dialog-cool"
95 #define PIDGIN_STOCK_DIALOG_WARNING "pidgin-dialog-warning"
97 /* StatusBox Animations */
98 #define PIDGIN_STOCK_ANIMATION_CONNECT0 "pidgin-anim-connect0"
99 #define PIDGIN_STOCK_ANIMATION_CONNECT1 "pidgin-anim-connect1"
100 #define PIDGIN_STOCK_ANIMATION_CONNECT2 "pidgin-anim-connect2"
101 #define PIDGIN_STOCK_ANIMATION_CONNECT3 "pidgin-anim-connect3"
102 #define PIDGIN_STOCK_ANIMATION_CONNECT4 "pidgin-anim-connect4"
103 #define PIDGIN_STOCK_ANIMATION_CONNECT5 "pidgin-anim-connect5"
104 #define PIDGIN_STOCK_ANIMATION_CONNECT6 "pidgin-anim-connect6"
105 #define PIDGIN_STOCK_ANIMATION_CONNECT7 "pidgin-anim-connect7"
106 #define PIDGIN_STOCK_ANIMATION_CONNECT8 "pidgin-anim-connect8"
107 #define PIDGIN_STOCK_ANIMATION_CONNECT9 "pidgin-anim-connect9"
108 #define PIDGIN_STOCK_ANIMATION_CONNECT10 "pidgin-anim-connect10"
109 #define PIDGIN_STOCK_ANIMATION_CONNECT11 "pidgin-anim-connect11"
110 #define PIDGIN_STOCK_ANIMATION_CONNECT12 "pidgin-anim-connect12"
111 #define PIDGIN_STOCK_ANIMATION_CONNECT13 "pidgin-anim-connect13"
112 #define PIDGIN_STOCK_ANIMATION_CONNECT14 "pidgin-anim-connect14"
113 #define PIDGIN_STOCK_ANIMATION_CONNECT15 "pidgin-anim-connect15"
114 #define PIDGIN_STOCK_ANIMATION_CONNECT16 "pidgin-anim-connect16"
115 #define PIDGIN_STOCK_ANIMATION_CONNECT17 "pidgin-anim-connect17"
116 #define PIDGIN_STOCK_ANIMATION_CONNECT18 "pidgin-anim-connect18"
117 #define PIDGIN_STOCK_ANIMATION_CONNECT19 "pidgin-anim-connect19"
118 #define PIDGIN_STOCK_ANIMATION_CONNECT20 "pidgin-anim-connect20"
119 #define PIDGIN_STOCK_ANIMATION_CONNECT21 "pidgin-anim-connect21"
120 #define PIDGIN_STOCK_ANIMATION_CONNECT22 "pidgin-anim-connect22"
121 #define PIDGIN_STOCK_ANIMATION_CONNECT23 "pidgin-anim-connect23"
122 #define PIDGIN_STOCK_ANIMATION_CONNECT24 "pidgin-anim-connect24"
123 #define PIDGIN_STOCK_ANIMATION_CONNECT25 "pidgin-anim-connect25"
124 #define PIDGIN_STOCK_ANIMATION_CONNECT26 "pidgin-anim-connect26"
125 #define PIDGIN_STOCK_ANIMATION_CONNECT27 "pidgin-anim-connect27"
126 #define PIDGIN_STOCK_ANIMATION_CONNECT28 "pidgin-anim-connect28"
127 #define PIDGIN_STOCK_ANIMATION_CONNECT29 "pidgin-anim-connect29"
128 #define PIDGIN_STOCK_ANIMATION_CONNECT30 "pidgin-anim-connect30"
129 #define PIDGIN_STOCK_ANIMATION_TYPING0 "pidgin-anim-typing0"
130 #define PIDGIN_STOCK_ANIMATION_TYPING1 "pidgin-anim-typing1"
131 #define PIDGIN_STOCK_ANIMATION_TYPING2 "pidgin-anim-typing2"
132 #define PIDGIN_STOCK_ANIMATION_TYPING3 "pidgin-anim-typing3"
133 #define PIDGIN_STOCK_ANIMATION_TYPING4 "pidgin-anim-typing4"
134 #define PIDGIN_STOCK_ANIMATION_TYPING5 "pidgin-anim-typing5"
136 /* Toolbar (and menu) icons */
137 #define PIDGIN_STOCK_TOOLBAR_ACCOUNTS "pidgin-accounts"
138 #define PIDGIN_STOCK_TOOLBAR_BGCOLOR "pidgin-bgcolor"
139 #define PIDGIN_STOCK_TOOLBAR_BLOCK "pidgin-block"
140 #define PIDGIN_STOCK_TOOLBAR_FGCOLOR "pidgin-fgcolor"
141 #define PIDGIN_STOCK_TOOLBAR_SMILEY "pidgin-smiley"
142 #define PIDGIN_STOCK_TOOLBAR_FONT_FACE "pidgin-font-face"
143 #define PIDGIN_STOCK_TOOLBAR_TEXT_SMALLER "pidgin-text-smaller"
144 #define PIDGIN_STOCK_TOOLBAR_TEXT_LARGER "pidgin-text-larger"
145 #define PIDGIN_STOCK_TOOLBAR_INSERT "pidgin-insert"
146 #define PIDGIN_STOCK_TOOLBAR_INSERT_IMAGE "pidgin-insert-image"
147 #define PIDGIN_STOCK_TOOLBAR_INSERT_LINK "pidgin-insert-link"
148 #define PIDGIN_STOCK_TOOLBAR_MESSAGE_NEW "pidgin-message-new"
149 #define PIDGIN_STOCK_TOOLBAR_PENDING "pidgin-pending"
150 #define PIDGIN_STOCK_TOOLBAR_PLUGINS "pidgin-plugins"
151 #define PIDGIN_STOCK_TOOLBAR_TYPING "pidgin-typing"
152 #define PIDGIN_STOCK_TOOLBAR_USER_INFO "pidgin-info"
153 #define PIDGIN_STOCK_TOOLBAR_UNBLOCK "pidgin-unblock"
154 #define PIDGIN_STOCK_TOOLBAR_SELECT_AVATAR "pidgin-select-avatar"
155 #define PIDGIN_STOCK_TOOLBAR_SEND_FILE "pidgin-send-file"
156 #define PIDGIN_STOCK_TOOLBAR_TRANSFER "pidgin-transfer"
157 #ifdef USE_VV
158 #define PIDGIN_STOCK_TOOLBAR_AUDIO_CALL "pidgin-audio-call"
159 #define PIDGIN_STOCK_TOOLBAR_VIDEO_CALL "pidgin-video-call"
160 #define PIDGIN_STOCK_TOOLBAR_AUDIO_VIDEO_CALL "pidgin-audio-video-call"
161 #endif
162 #define PIDGIN_STOCK_TOOLBAR_SEND_ATTENTION "pidgin-send-attention"
164 /* Tray icons */
165 #define PIDGIN_STOCK_TRAY_AVAILABLE "pidgin-tray-available"
166 #define PIDGIN_STOCK_TRAY_INVISIBLE "pidgin-tray-invisible"
167 #define PIDGIN_STOCK_TRAY_AWAY "pidgin-tray-away"
168 #define PIDGIN_STOCK_TRAY_BUSY "pidgin-tray-busy"
169 #define PIDGIN_STOCK_TRAY_XA "pidgin-tray-xa"
170 #define PIDGIN_STOCK_TRAY_OFFLINE "pidgin-tray-offline"
171 #define PIDGIN_STOCK_TRAY_CONNECT "pidgin-tray-connect"
172 #define PIDGIN_STOCK_TRAY_PENDING "pidgin-tray-pending"
173 #define PIDGIN_STOCK_TRAY_EMAIL "pidgin-tray-email"
176 /*@}*/
179 * For using icons that aren't one of the default GTK_ICON_SIZEs
181 #define PIDGIN_ICON_SIZE_TANGO_MICROSCOPIC "pidgin-icon-size-tango-microscopic"
182 #define PIDGIN_ICON_SIZE_TANGO_EXTRA_SMALL "pidgin-icon-size-tango-extra-small"
183 #define PIDGIN_ICON_SIZE_TANGO_SMALL "pidgin-icon-size-tango-small"
184 #define PIDGIN_ICON_SIZE_TANGO_MEDIUM "pidgin-icon-size-tango-medium"
185 #define PIDGIN_ICON_SIZE_TANGO_LARGE "pidgin-icon-size-tango-large"
186 #define PIDGIN_ICON_SIZE_TANGO_HUGE "pidgin-icon-size-tango-huge"
189 * extends PidginIconTheme (gtkicon-theme.h)
190 * A pidgin stock icon theme.
191 * This object represents a Pidgin stock icon theme.
193 * PidginStockIconTheme is a PidginIconTheme Object.
195 typedef struct _PidginStockIconTheme PidginStockIconTheme;
196 typedef struct _PidginStockIconThemeClass PidginStockIconThemeClass;
198 #define PIDGIN_TYPE_STOCK_ICON_THEME (pidgin_stock_icon_theme_get_type ())
199 #define PIDGIN_STOCK_ICON_THEME(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), PIDGIN_TYPE_STOCK_ICON_THEME, PidginStockIconTheme))
200 #define PIDGIN_STOCK_ICON_THEME_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), PIDGIN_TYPE_STOCK_ICON_THEME, PidginStockIconThemeClass))
201 #define PIDGIN_IS_STOCK_ICON_THEME(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), PIDGIN_TYPE_STOCK_ICON_THEME))
202 #define PIDGIN_IS_STOCK_ICON_THEME_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), PIDGIN_TYPE_STOCK_ICON_THEME))
203 #define PIDGIN_STOCK_ICON_THEME_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), PIDGIN_TYPE_STOCK_ICON_THEME, PidginStockIconThemeClass))
205 struct _PidginStockIconTheme
207 PidginIconTheme parent;
210 struct _PidginStockIconThemeClass
212 PidginIconThemeClass parent_class;
215 G_BEGIN_DECLS
218 * GObject foo.
219 * @internal.
221 GType pidgin_stock_icon_theme_get_type(void);
224 * Loades all of the icons from the status icon theme into Pidgin stock
226 * @param theme the theme to load, or null to load all the default icons
228 void pidgin_stock_load_status_icon_theme(PidginStatusIconTheme *theme);
231 void pidgin_stock_load_stock_icon_theme(PidginStockIconTheme *theme);
234 * Sets up the purple stock repository.
236 void pidgin_stock_init(void);
238 G_END_DECLS
239 #endif /* _PIDGIN_STOCK_H_ */