1 /** 2 * @file pidginstock.h GTK+ Stock resources 3 * @ingroup pidgin 4 */ 5 6 /* pidgin 7 * 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. 11 * 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. 16 * 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. 21 * 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 25 */ 26 #include <gtk/gtk.h> 27 #include "gtkstatus-icon-theme.h" 28 29 #ifndef _PIDGIN_STOCK_H_ 30 #define _PIDGIN_STOCK_H_ 31 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" 62 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" 80 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" 87 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" 96 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" 135 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" 163 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" 174 175 176 /*@}*/ 177 178 /** 179 * For using icons that aren't one of the default GTK_ICON_SIZEs 180 */ 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" 187 188 /** 189 * extends PidginIconTheme (gtkicon-theme.h) 190 * A pidgin stock icon theme. 191 * This object represents a Pidgin stock icon theme. 192 * 193 * PidginStockIconTheme is a PidginIconTheme Object. 194 */ 195 typedef struct _PidginStockIconTheme PidginStockIconTheme; 196 typedef struct _PidginStockIconThemeClass PidginStockIconThemeClass; 197 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)) 204 205 struct _PidginStockIconTheme 206 { 207 PidginIconTheme parent; 208 }; 209 210 struct _PidginStockIconThemeClass 211 { 212 PidginIconThemeClass parent_class; 213 }; 214 215 G_BEGIN_DECLS 216 217 /** 218 * GObject foo. 219 * @internal. 220 */ 221 GType pidgin_stock_icon_theme_get_type(void); 222 223 /** 224 * Loades all of the icons from the status icon theme into Pidgin stock 225 * 226 * @param theme the theme to load, or null to load all the default icons 227 */ 228 void pidgin_stock_load_status_icon_theme(PidginStatusIconTheme *theme); 229 230 231 void pidgin_stock_load_stock_icon_theme(PidginStockIconTheme *theme); 232 233 /** 234 * Sets up the purple stock repository. 235 */ 236 void pidgin_stock_init(void); 237 238 G_END_DECLS 239 #endif /* _PIDGIN_STOCK_H_ */ 240