pidgin/pidginstock.c

Sun, 15 Feb 2009 22:52:47 +0000

author
Elliott Sales de Andrade <qulogic@pidgin.im>
date
Sun, 15 Feb 2009 22:52:47 +0000
changeset 25616
7ffb51d133a4
parent 24838
23af0bbc5be5
child 25000
64c498855e85
child 25937
0e25d1df776d
child 26171
85b43bce42f1
permissions
-rw-r--r--

Set a NULL statusline and CurrentMedia if the UBX returns an empty payload,
instead of trying to parse the empty text. If only users wouldn't freak out
just because they see the word "error"...

Fixes #8348.

10297
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
1 /**
15930
d851247cb931 Install pixmaps to the right directories and make them load properly.
Richard Laager <rlaager@pidgin.im>
parents: 15914
diff changeset
2 * @file pidginstock.c GTK+ Stock resources
16254
eeb2bba4dc94 Rename the Doxygen group from gtkui to pidgin.
Richard Laager <rlaager@pidgin.im>
parents: 16068
diff changeset
3 * @ingroup pidgin
20147
66f05a854eee applied changes from 8a731bbd0197fbcc91a705c2d8f528154216defa
Richard Laager <rlaager@pidgin.im>
parents: 19859
diff changeset
4 */
66f05a854eee applied changes from 8a731bbd0197fbcc91a705c2d8f528154216defa
Richard Laager <rlaager@pidgin.im>
parents: 19859
diff changeset
5
66f05a854eee applied changes from 8a731bbd0197fbcc91a705c2d8f528154216defa
Richard Laager <rlaager@pidgin.im>
parents: 19859
diff changeset
6 /* pidgin
10297
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
7 *
15930
d851247cb931 Install pixmaps to the right directories and make them load properly.
Richard Laager <rlaager@pidgin.im>
parents: 15914
diff changeset
8 * Pidgin is the legal property of its developers, whose names are too numerous
10297
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
9 * to list here. Please refer to the COPYRIGHT file distributed with this
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
10 * source distribution.
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
11 *
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
12 * This program is free software; you can redistribute it and/or modify
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
13 * it under the terms of the GNU General Public License as published by
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
14 * the Free Software Foundation; either version 2 of the License, or
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
15 * (at your option) any later version.
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
16 *
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
17 * This program is distributed in the hope that it will be useful,
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
18 * but WITHOUT ANY WARRANTY; without even the implied warranty of
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
19 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
20 * GNU General Public License for more details.
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
21 *
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
22 * You should have received a copy of the GNU General Public License
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@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: 19667
diff changeset
24 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA
10297
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
25 *
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
26 */
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
27 #include "internal.h"
15577
b8129373f65e More pidgin changes
Sean Egan <seanegan@pidgin.im>
parents: 15570
diff changeset
28 #include "pidgin.h"
10297
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
29
15883
969b74a3e27a According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@pidgin.im>
parents: 15834
diff changeset
30 #include "pidginstock.h"
10297
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
31
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
32 static struct StockIcon
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
33 {
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
34 const char *name;
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
35 const char *dir;
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
36 const char *filename;
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
37
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
38 } const stock_icons[] =
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
39 {
15570
81e9b7d13875 stock to pidgin
Sean Egan <seanegan@pidgin.im>
parents: 15562
diff changeset
40 { PIDGIN_STOCK_ACTION, NULL, GTK_STOCK_EXECUTE },
11370
3b20dd1aaf22 [gaim-migrate @ 13595]
Richard Laager <rlaager@pidgin.im>
parents: 11271
diff changeset
41 #if GTK_CHECK_VERSION(2,6,0)
15570
81e9b7d13875 stock to pidgin
Sean Egan <seanegan@pidgin.im>
parents: 15562
diff changeset
42 { PIDGIN_STOCK_ALIAS, NULL, GTK_STOCK_EDIT },
11370
3b20dd1aaf22 [gaim-migrate @ 13595]
Richard Laager <rlaager@pidgin.im>
parents: 11271
diff changeset
43 #else
15570
81e9b7d13875 stock to pidgin
Sean Egan <seanegan@pidgin.im>
parents: 15562
diff changeset
44 { PIDGIN_STOCK_ALIAS, "buttons", "edit.png" },
11370
3b20dd1aaf22 [gaim-migrate @ 13595]
Richard Laager <rlaager@pidgin.im>
parents: 11271
diff changeset
45 #endif
15570
81e9b7d13875 stock to pidgin
Sean Egan <seanegan@pidgin.im>
parents: 15562
diff changeset
46 { PIDGIN_STOCK_CHAT, NULL, GTK_STOCK_JUMP_TO },
81e9b7d13875 stock to pidgin
Sean Egan <seanegan@pidgin.im>
parents: 15562
diff changeset
47 { PIDGIN_STOCK_CLEAR, NULL, GTK_STOCK_CLEAR },
19117
c55d71840e82 Remove reference to close-tab.png
Sean Egan <seanegan@pidgin.im>
parents: 19092
diff changeset
48 { PIDGIN_STOCK_CLOSE_TABS, NULL, GTK_STOCK_CLOSE },
15570
81e9b7d13875 stock to pidgin
Sean Egan <seanegan@pidgin.im>
parents: 15562
diff changeset
49 { PIDGIN_STOCK_DEBUG, NULL, GTK_STOCK_PROPERTIES },
81e9b7d13875 stock to pidgin
Sean Egan <seanegan@pidgin.im>
parents: 15562
diff changeset
50 { PIDGIN_STOCK_DOWNLOAD, NULL, GTK_STOCK_GO_DOWN },
12163
483d8be2deec [gaim-migrate @ 14464]
Richard Laager <rlaager@pidgin.im>
parents: 12116
diff changeset
51 #if GTK_CHECK_VERSION(2,6,0)
15570
81e9b7d13875 stock to pidgin
Sean Egan <seanegan@pidgin.im>
parents: 15562
diff changeset
52 { PIDGIN_STOCK_DISCONNECT, NULL, GTK_STOCK_DISCONNECT },
12163
483d8be2deec [gaim-migrate @ 14464]
Richard Laager <rlaager@pidgin.im>
parents: 12116
diff changeset
53 #else
15570
81e9b7d13875 stock to pidgin
Sean Egan <seanegan@pidgin.im>
parents: 15562
diff changeset
54 { PIDGIN_STOCK_DISCONNECT, "icons", "stock_disconnect_16.png" },
12163
483d8be2deec [gaim-migrate @ 14464]
Richard Laager <rlaager@pidgin.im>
parents: 12116
diff changeset
55 #endif
15570
81e9b7d13875 stock to pidgin
Sean Egan <seanegan@pidgin.im>
parents: 15562
diff changeset
56 { PIDGIN_STOCK_FGCOLOR, "buttons", "change-fgcolor-small.png" },
11370
3b20dd1aaf22 [gaim-migrate @ 13595]
Richard Laager <rlaager@pidgin.im>
parents: 11271
diff changeset
57 #if GTK_CHECK_VERSION(2,6,0)
15570
81e9b7d13875 stock to pidgin
Sean Egan <seanegan@pidgin.im>
parents: 15562
diff changeset
58 { PIDGIN_STOCK_EDIT, NULL, GTK_STOCK_EDIT },
11370
3b20dd1aaf22 [gaim-migrate @ 13595]
Richard Laager <rlaager@pidgin.im>
parents: 11271
diff changeset
59 #else
15570
81e9b7d13875 stock to pidgin
Sean Egan <seanegan@pidgin.im>
parents: 15562
diff changeset
60 { PIDGIN_STOCK_EDIT, "buttons", "edit.png" },
11370
3b20dd1aaf22 [gaim-migrate @ 13595]
Richard Laager <rlaager@pidgin.im>
parents: 11271
diff changeset
61 #endif
15570
81e9b7d13875 stock to pidgin
Sean Egan <seanegan@pidgin.im>
parents: 15562
diff changeset
62 { PIDGIN_STOCK_FILE_CANCELED, NULL, GTK_STOCK_CANCEL },
81e9b7d13875 stock to pidgin
Sean Egan <seanegan@pidgin.im>
parents: 15562
diff changeset
63 { PIDGIN_STOCK_FILE_DONE, NULL, GTK_STOCK_APPLY },
81e9b7d13875 stock to pidgin
Sean Egan <seanegan@pidgin.im>
parents: 15562
diff changeset
64 { PIDGIN_STOCK_IGNORE, NULL, GTK_STOCK_DIALOG_ERROR },
81e9b7d13875 stock to pidgin
Sean Egan <seanegan@pidgin.im>
parents: 15562
diff changeset
65 { PIDGIN_STOCK_INVITE, NULL, GTK_STOCK_JUMP_TO },
81e9b7d13875 stock to pidgin
Sean Egan <seanegan@pidgin.im>
parents: 15562
diff changeset
66 { PIDGIN_STOCK_MODIFY, NULL, GTK_STOCK_PREFERENCES },
24594
b2da1decae23 Add an ellipsis to the "Add" and "Modify" buttons in the accounts, pounces, and
Alex Willmer <alex@moreati.org.uk>
parents: 24154
diff changeset
67 { PIDGIN_STOCK_ADD, NULL, GTK_STOCK_ADD },
12163
483d8be2deec [gaim-migrate @ 14464]
Richard Laager <rlaager@pidgin.im>
parents: 12116
diff changeset
68 #if GTK_CHECK_VERSION(2,6,0)
15570
81e9b7d13875 stock to pidgin
Sean Egan <seanegan@pidgin.im>
parents: 15562
diff changeset
69 { PIDGIN_STOCK_PAUSE, NULL, GTK_STOCK_MEDIA_PAUSE },
12163
483d8be2deec [gaim-migrate @ 14464]
Richard Laager <rlaager@pidgin.im>
parents: 12116
diff changeset
70 #else
15570
81e9b7d13875 stock to pidgin
Sean Egan <seanegan@pidgin.im>
parents: 15562
diff changeset
71 { PIDGIN_STOCK_PAUSE, "buttons", "pause.png" },
12163
483d8be2deec [gaim-migrate @ 14464]
Richard Laager <rlaager@pidgin.im>
parents: 12116
diff changeset
72 #endif
15570
81e9b7d13875 stock to pidgin
Sean Egan <seanegan@pidgin.im>
parents: 15562
diff changeset
73 { PIDGIN_STOCK_POUNCE, NULL, GTK_STOCK_REDO },
81e9b7d13875 stock to pidgin
Sean Egan <seanegan@pidgin.im>
parents: 15562
diff changeset
74 { PIDGIN_STOCK_OPEN_MAIL, NULL, GTK_STOCK_JUMP_TO },
81e9b7d13875 stock to pidgin
Sean Egan <seanegan@pidgin.im>
parents: 15562
diff changeset
75 { PIDGIN_STOCK_SIGN_ON, NULL, GTK_STOCK_EXECUTE },
81e9b7d13875 stock to pidgin
Sean Egan <seanegan@pidgin.im>
parents: 15562
diff changeset
76 { PIDGIN_STOCK_SIGN_OFF, NULL, GTK_STOCK_CLOSE },
15930
d851247cb931 Install pixmaps to the right directories and make them load properly.
Richard Laager <rlaager@pidgin.im>
parents: 15914
diff changeset
77 { PIDGIN_STOCK_TYPED, "pidgin", "typed.png" },
15570
81e9b7d13875 stock to pidgin
Sean Egan <seanegan@pidgin.im>
parents: 15562
diff changeset
78 { PIDGIN_STOCK_UPLOAD, NULL, GTK_STOCK_GO_UP },
19667
4a8d8a6bd2b0 Make the gtkcert stuff compile on GTK+ older than 2.8
Daniel Atallah <datallah@pidgin.im>
parents: 19651
diff changeset
79 #if GTK_CHECK_VERSION(2,8,0)
4a8d8a6bd2b0 Make the gtkcert stuff compile on GTK+ older than 2.8
Daniel Atallah <datallah@pidgin.im>
parents: 19651
diff changeset
80 { PIDGIN_STOCK_INFO, NULL, GTK_STOCK_INFO },
4a8d8a6bd2b0 Make the gtkcert stuff compile on GTK+ older than 2.8
Daniel Atallah <datallah@pidgin.im>
parents: 19651
diff changeset
81 #else
4a8d8a6bd2b0 Make the gtkcert stuff compile on GTK+ older than 2.8
Daniel Atallah <datallah@pidgin.im>
parents: 19651
diff changeset
82 { PIDGIN_STOCK_INFO, "buttons", "info.png" },
4a8d8a6bd2b0 Make the gtkcert stuff compile on GTK+ older than 2.8
Daniel Atallah <datallah@pidgin.im>
parents: 19651
diff changeset
83 #endif
10297
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
84 };
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
85
10871
c0282a4f2250 [gaim-migrate @ 12558]
Mark Doliner <markdoliner@pidgin.im>
parents: 10643
diff changeset
86 static const GtkStockItem stock_items[] =
10297
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
87 {
15623
bf485c598199 toolbar/menu icons. reduce the imhtmltoolbar spacing. more gaimstock pruning
Sean Egan <seanegan@pidgin.im>
parents: 15577
diff changeset
88 { PIDGIN_STOCK_ALIAS, N_("_Alias"), 0, 0, NULL },
bf485c598199 toolbar/menu icons. reduce the imhtmltoolbar spacing. more gaimstock pruning
Sean Egan <seanegan@pidgin.im>
parents: 15577
diff changeset
89 { PIDGIN_STOCK_CHAT, N_("_Join"), 0, 0, NULL },
bf485c598199 toolbar/menu icons. reduce the imhtmltoolbar spacing. more gaimstock pruning
Sean Egan <seanegan@pidgin.im>
parents: 15577
diff changeset
90 { PIDGIN_STOCK_CLOSE_TABS, N_("Close _tabs"), 0, 0, NULL },
bf485c598199 toolbar/menu icons. reduce the imhtmltoolbar spacing. more gaimstock pruning
Sean Egan <seanegan@pidgin.im>
parents: 15577
diff changeset
91 { PIDGIN_STOCK_TOOLBAR_MESSAGE_NEW, N_("I_M"), 0, 0, NULL },
bf485c598199 toolbar/menu icons. reduce the imhtmltoolbar spacing. more gaimstock pruning
Sean Egan <seanegan@pidgin.im>
parents: 15577
diff changeset
92 { PIDGIN_STOCK_TOOLBAR_USER_INFO, N_("_Get Info"), 0, 0, NULL },
bf485c598199 toolbar/menu icons. reduce the imhtmltoolbar spacing. more gaimstock pruning
Sean Egan <seanegan@pidgin.im>
parents: 15577
diff changeset
93 { PIDGIN_STOCK_INVITE, N_("_Invite"), 0, 0, NULL },
24594
b2da1decae23 Add an ellipsis to the "Add" and "Modify" buttons in the accounts, pounces, and
Alex Willmer <alex@moreati.org.uk>
parents: 24154
diff changeset
94 { PIDGIN_STOCK_MODIFY, N_("_Modify..."), 0, 0, NULL },
b2da1decae23 Add an ellipsis to the "Add" and "Modify" buttons in the accounts, pounces, and
Alex Willmer <alex@moreati.org.uk>
parents: 24154
diff changeset
95 { PIDGIN_STOCK_ADD, N_("_Add..."), 0, 0, NULL },
15623
bf485c598199 toolbar/menu icons. reduce the imhtmltoolbar spacing. more gaimstock pruning
Sean Egan <seanegan@pidgin.im>
parents: 15577
diff changeset
96 { PIDGIN_STOCK_OPEN_MAIL, N_("_Open Mail"), 0, 0, NULL },
bf485c598199 toolbar/menu icons. reduce the imhtmltoolbar spacing. more gaimstock pruning
Sean Egan <seanegan@pidgin.im>
parents: 15577
diff changeset
97 { PIDGIN_STOCK_PAUSE, N_("_Pause"), 0, 0, NULL },
24154
22266374cb19 Show 'Edit' instead of 'pidgin-edit' in the edit buttons. Fixes #6742
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24147
diff changeset
98 { PIDGIN_STOCK_EDIT, N_("_Edit"), 0, 0, NULL }
10297
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
99 };
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
100
15458
39c79dc7c965 A lot of status icon changes:
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
101 static struct SizedStockIcon {
39c79dc7c965 A lot of status icon changes:
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
102 const char *name;
39c79dc7c965 A lot of status icon changes:
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
103 const char *dir;
39c79dc7c965 A lot of status icon changes:
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
104 const char *filename;
19406
a71cfa7982c6 Adds a new icon size for tab status icons
Sean Egan <seanegan@pidgin.im>
parents: 19117
diff changeset
105 gboolean microscopic;
15458
39c79dc7c965 A lot of status icon changes:
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
106 gboolean extra_small;
39c79dc7c965 A lot of status icon changes:
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
107 gboolean small;
39c79dc7c965 A lot of status icon changes:
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
108 gboolean medium;
15792
862d8eb17606 make rtl icons work: http://gaim.sf.net/sean/rtl.png
Sean Egan <seanegan@pidgin.im>
parents: 15774
diff changeset
109 gboolean large;
15458
39c79dc7c965 A lot of status icon changes:
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
110 gboolean huge;
15792
862d8eb17606 make rtl icons work: http://gaim.sf.net/sean/rtl.png
Sean Egan <seanegan@pidgin.im>
parents: 15774
diff changeset
111 gboolean rtl;
16484
4c91c9a40dea Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents: 16454
diff changeset
112 const char *translucent_name;
15458
39c79dc7c965 A lot of status icon changes:
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
113 } const sized_stock_icons [] = {
19406
a71cfa7982c6 Adds a new icon size for tab status icons
Sean Egan <seanegan@pidgin.im>
parents: 19117
diff changeset
114 { PIDGIN_STOCK_STATUS_AVAILABLE, "status", "available.png", TRUE, TRUE, TRUE, TRUE, TRUE, FALSE, FALSE, PIDGIN_STOCK_STATUS_AVAILABLE_I },
a71cfa7982c6 Adds a new icon size for tab status icons
Sean Egan <seanegan@pidgin.im>
parents: 19117
diff changeset
115 { PIDGIN_STOCK_STATUS_AWAY, "status", "away.png", TRUE, TRUE, TRUE, TRUE, TRUE, FALSE, FALSE, PIDGIN_STOCK_STATUS_AWAY_I },
a71cfa7982c6 Adds a new icon size for tab status icons
Sean Egan <seanegan@pidgin.im>
parents: 19117
diff changeset
116 { PIDGIN_STOCK_STATUS_BUSY, "status", "busy.png", TRUE, TRUE, TRUE, TRUE, TRUE, FALSE, FALSE, PIDGIN_STOCK_STATUS_BUSY_I },
19651
0ceeb2e33674 Add 11px extended-away rtl icon.
Sean Egan <seanegan@pidgin.im>
parents: 19647
diff changeset
117 { PIDGIN_STOCK_STATUS_CHAT, "status", "chat.png", TRUE, TRUE, TRUE, TRUE, TRUE, FALSE, FALSE, NULL },
19406
a71cfa7982c6 Adds a new icon size for tab status icons
Sean Egan <seanegan@pidgin.im>
parents: 19117
diff changeset
118 { PIDGIN_STOCK_STATUS_INVISIBLE,"status", "invisible.png", TRUE, TRUE, TRUE, TRUE, TRUE, FALSE, FALSE, NULL },
a71cfa7982c6 Adds a new icon size for tab status icons
Sean Egan <seanegan@pidgin.im>
parents: 19117
diff changeset
119 { PIDGIN_STOCK_STATUS_XA, "status", "extended-away.png", TRUE, TRUE, TRUE, TRUE, TRUE, FALSE, TRUE, PIDGIN_STOCK_STATUS_XA_I },
20834
ffcf699cdfcc Hylke made a new win32 installer pixmap
Sean Egan <seanegan@pidgin.im>
parents: 20147
diff changeset
120 { PIDGIN_STOCK_STATUS_LOGIN, "status", "log-in.png", TRUE, TRUE, TRUE, TRUE, TRUE, FALSE, TRUE, NULL },
ffcf699cdfcc Hylke made a new win32 installer pixmap
Sean Egan <seanegan@pidgin.im>
parents: 20147
diff changeset
121 { PIDGIN_STOCK_STATUS_LOGOUT, "status", "log-out.png", TRUE, TRUE, TRUE, TRUE, TRUE, FALSE, TRUE, NULL },
19406
a71cfa7982c6 Adds a new icon size for tab status icons
Sean Egan <seanegan@pidgin.im>
parents: 19117
diff changeset
122 { PIDGIN_STOCK_STATUS_OFFLINE, "status", "offline.png", TRUE, TRUE, TRUE, TRUE, TRUE, FALSE, FALSE, PIDGIN_STOCK_STATUS_OFFLINE_I },
a71cfa7982c6 Adds a new icon size for tab status icons
Sean Egan <seanegan@pidgin.im>
parents: 19117
diff changeset
123 { PIDGIN_STOCK_STATUS_PERSON, "status", "person.png", TRUE, TRUE, TRUE, TRUE, TRUE, FALSE, FALSE, NULL },
20834
ffcf699cdfcc Hylke made a new win32 installer pixmap
Sean Egan <seanegan@pidgin.im>
parents: 20147
diff changeset
124 { PIDGIN_STOCK_STATUS_MESSAGE, "toolbar", "message-new.png", TRUE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL },
15760
209681319cac docklet pending status
Sean Egan <seanegan@pidgin.im>
parents: 15739
diff changeset
125
19406
a71cfa7982c6 Adds a new icon size for tab status icons
Sean Egan <seanegan@pidgin.im>
parents: 19117
diff changeset
126 { PIDGIN_STOCK_STATUS_IGNORED, "emblems", "blocked.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL },
a71cfa7982c6 Adds a new icon size for tab status icons
Sean Egan <seanegan@pidgin.im>
parents: 19117
diff changeset
127 { PIDGIN_STOCK_STATUS_FOUNDER, "emblems", "founder.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL },
a71cfa7982c6 Adds a new icon size for tab status icons
Sean Egan <seanegan@pidgin.im>
parents: 19117
diff changeset
128 { PIDGIN_STOCK_STATUS_OPERATOR, "emblems", "operator.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL },
a71cfa7982c6 Adds a new icon size for tab status icons
Sean Egan <seanegan@pidgin.im>
parents: 19117
diff changeset
129 { PIDGIN_STOCK_STATUS_HALFOP, "emblems", "half-operator.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL },
a71cfa7982c6 Adds a new icon size for tab status icons
Sean Egan <seanegan@pidgin.im>
parents: 19117
diff changeset
130 { PIDGIN_STOCK_STATUS_VOICE, "emblems", "voice.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL },
15497
92f02f4bd5ee Dialog icon changes
Sean Egan <seanegan@pidgin.im>
parents: 15458
diff changeset
131
19406
a71cfa7982c6 Adds a new icon size for tab status icons
Sean Egan <seanegan@pidgin.im>
parents: 19117
diff changeset
132 { PIDGIN_STOCK_DIALOG_AUTH, "dialogs", "auth.png", FALSE, TRUE, FALSE, FALSE, FALSE, TRUE, FALSE, NULL },
a71cfa7982c6 Adds a new icon size for tab status icons
Sean Egan <seanegan@pidgin.im>
parents: 19117
diff changeset
133 { PIDGIN_STOCK_DIALOG_COOL, "dialogs", "cool.png", FALSE, FALSE, FALSE, FALSE, FALSE, TRUE, FALSE, NULL },
a71cfa7982c6 Adds a new icon size for tab status icons
Sean Egan <seanegan@pidgin.im>
parents: 19117
diff changeset
134 { PIDGIN_STOCK_DIALOG_ERROR, "dialogs", "error.png", FALSE, TRUE, FALSE, FALSE, FALSE, TRUE, FALSE, NULL },
a71cfa7982c6 Adds a new icon size for tab status icons
Sean Egan <seanegan@pidgin.im>
parents: 19117
diff changeset
135 { PIDGIN_STOCK_DIALOG_INFO, "dialogs", "info.png", FALSE, TRUE, FALSE, FALSE, FALSE, TRUE, FALSE, NULL },
a71cfa7982c6 Adds a new icon size for tab status icons
Sean Egan <seanegan@pidgin.im>
parents: 19117
diff changeset
136 { PIDGIN_STOCK_DIALOG_MAIL, "dialogs", "mail.png", FALSE, TRUE, FALSE, FALSE, FALSE, TRUE, FALSE, NULL },
a71cfa7982c6 Adds a new icon size for tab status icons
Sean Egan <seanegan@pidgin.im>
parents: 19117
diff changeset
137 { PIDGIN_STOCK_DIALOG_QUESTION, "dialogs", "question.png", FALSE, TRUE, FALSE, FALSE, FALSE, TRUE, FALSE, NULL },
a71cfa7982c6 Adds a new icon size for tab status icons
Sean Egan <seanegan@pidgin.im>
parents: 19117
diff changeset
138 { PIDGIN_STOCK_DIALOG_WARNING, "dialogs", "warning.png", FALSE, FALSE, FALSE, FALSE, FALSE, TRUE, FALSE, NULL },
15519
82e4cfb65343 Finish converting the statusbox. Note the connecting and animation icons are too large. I put out a request to Hylke.
Sean Egan <seanegan@pidgin.im>
parents: 15500
diff changeset
139
24147
b730c8d207e9 Throbber test.
Hylke Bons <hbons@pidgin.im>
parents: 24058
diff changeset
140 { PIDGIN_STOCK_ANIMATION_CONNECT0, "animations", "process-working0.png",FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL },
b730c8d207e9 Throbber test.
Hylke Bons <hbons@pidgin.im>
parents: 24058
diff changeset
141 { PIDGIN_STOCK_ANIMATION_CONNECT1, "animations", "process-working1.png",FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL },
b730c8d207e9 Throbber test.
Hylke Bons <hbons@pidgin.im>
parents: 24058
diff changeset
142 { PIDGIN_STOCK_ANIMATION_CONNECT2, "animations", "process-working2.png",FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL },
b730c8d207e9 Throbber test.
Hylke Bons <hbons@pidgin.im>
parents: 24058
diff changeset
143 { PIDGIN_STOCK_ANIMATION_CONNECT3, "animations", "process-working3.png",FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL },
b730c8d207e9 Throbber test.
Hylke Bons <hbons@pidgin.im>
parents: 24058
diff changeset
144 { PIDGIN_STOCK_ANIMATION_CONNECT4, "animations", "process-working4.png",FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL },
b730c8d207e9 Throbber test.
Hylke Bons <hbons@pidgin.im>
parents: 24058
diff changeset
145 { PIDGIN_STOCK_ANIMATION_CONNECT5, "animations", "process-working5.png",FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL },
b730c8d207e9 Throbber test.
Hylke Bons <hbons@pidgin.im>
parents: 24058
diff changeset
146 { PIDGIN_STOCK_ANIMATION_CONNECT6, "animations", "process-working6.png",FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL },
b730c8d207e9 Throbber test.
Hylke Bons <hbons@pidgin.im>
parents: 24058
diff changeset
147 { PIDGIN_STOCK_ANIMATION_CONNECT7, "animations", "process-working7.png",FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL },
b730c8d207e9 Throbber test.
Hylke Bons <hbons@pidgin.im>
parents: 24058
diff changeset
148 { PIDGIN_STOCK_ANIMATION_CONNECT8, "animations", "process-working8.png",FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL },
b730c8d207e9 Throbber test.
Hylke Bons <hbons@pidgin.im>
parents: 24058
diff changeset
149 { PIDGIN_STOCK_ANIMATION_CONNECT9, "animations", "process-working9.png",FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL },
b730c8d207e9 Throbber test.
Hylke Bons <hbons@pidgin.im>
parents: 24058
diff changeset
150 { PIDGIN_STOCK_ANIMATION_CONNECT10, "animations", "process-working10.png",FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL },
b730c8d207e9 Throbber test.
Hylke Bons <hbons@pidgin.im>
parents: 24058
diff changeset
151 { PIDGIN_STOCK_ANIMATION_CONNECT11, "animations", "process-working11.png",FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL },
b730c8d207e9 Throbber test.
Hylke Bons <hbons@pidgin.im>
parents: 24058
diff changeset
152 { PIDGIN_STOCK_ANIMATION_CONNECT12, "animations", "process-working12.png",FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL },
b730c8d207e9 Throbber test.
Hylke Bons <hbons@pidgin.im>
parents: 24058
diff changeset
153 { PIDGIN_STOCK_ANIMATION_CONNECT13, "animations", "process-working13.png",FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL },
b730c8d207e9 Throbber test.
Hylke Bons <hbons@pidgin.im>
parents: 24058
diff changeset
154 { PIDGIN_STOCK_ANIMATION_CONNECT14, "animations", "process-working14.png",FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL },
b730c8d207e9 Throbber test.
Hylke Bons <hbons@pidgin.im>
parents: 24058
diff changeset
155 { PIDGIN_STOCK_ANIMATION_CONNECT15, "animations", "process-working15.png",FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL },
b730c8d207e9 Throbber test.
Hylke Bons <hbons@pidgin.im>
parents: 24058
diff changeset
156 { PIDGIN_STOCK_ANIMATION_CONNECT16, "animations", "process-working16.png",FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL },
b730c8d207e9 Throbber test.
Hylke Bons <hbons@pidgin.im>
parents: 24058
diff changeset
157 { PIDGIN_STOCK_ANIMATION_CONNECT17, "animations", "process-working17.png",FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL },
b730c8d207e9 Throbber test.
Hylke Bons <hbons@pidgin.im>
parents: 24058
diff changeset
158 { PIDGIN_STOCK_ANIMATION_CONNECT18, "animations", "process-working18.png",FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL },
b730c8d207e9 Throbber test.
Hylke Bons <hbons@pidgin.im>
parents: 24058
diff changeset
159 { PIDGIN_STOCK_ANIMATION_CONNECT19, "animations", "process-working19.png",FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL },
b730c8d207e9 Throbber test.
Hylke Bons <hbons@pidgin.im>
parents: 24058
diff changeset
160 { PIDGIN_STOCK_ANIMATION_CONNECT20, "animations", "process-working20.png",FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL },
b730c8d207e9 Throbber test.
Hylke Bons <hbons@pidgin.im>
parents: 24058
diff changeset
161 { PIDGIN_STOCK_ANIMATION_CONNECT21, "animations", "process-working21.png",FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL },
b730c8d207e9 Throbber test.
Hylke Bons <hbons@pidgin.im>
parents: 24058
diff changeset
162 { PIDGIN_STOCK_ANIMATION_CONNECT22, "animations", "process-working22.png",FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL },
b730c8d207e9 Throbber test.
Hylke Bons <hbons@pidgin.im>
parents: 24058
diff changeset
163 { PIDGIN_STOCK_ANIMATION_CONNECT23, "animations", "process-working23.png",FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL },
b730c8d207e9 Throbber test.
Hylke Bons <hbons@pidgin.im>
parents: 24058
diff changeset
164 { PIDGIN_STOCK_ANIMATION_CONNECT24, "animations", "process-working24.png",FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL },
b730c8d207e9 Throbber test.
Hylke Bons <hbons@pidgin.im>
parents: 24058
diff changeset
165 { PIDGIN_STOCK_ANIMATION_CONNECT25, "animations", "process-working25.png",FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL },
b730c8d207e9 Throbber test.
Hylke Bons <hbons@pidgin.im>
parents: 24058
diff changeset
166 { PIDGIN_STOCK_ANIMATION_CONNECT26, "animations", "process-working26.png",FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL },
b730c8d207e9 Throbber test.
Hylke Bons <hbons@pidgin.im>
parents: 24058
diff changeset
167 { PIDGIN_STOCK_ANIMATION_CONNECT27, "animations", "process-working27.png",FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL },
b730c8d207e9 Throbber test.
Hylke Bons <hbons@pidgin.im>
parents: 24058
diff changeset
168 { PIDGIN_STOCK_ANIMATION_CONNECT28, "animations", "process-working28.png",FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL },
b730c8d207e9 Throbber test.
Hylke Bons <hbons@pidgin.im>
parents: 24058
diff changeset
169 { PIDGIN_STOCK_ANIMATION_CONNECT29, "animations", "process-working29.png",FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL },
b730c8d207e9 Throbber test.
Hylke Bons <hbons@pidgin.im>
parents: 24058
diff changeset
170 { PIDGIN_STOCK_ANIMATION_CONNECT30, "animations", "process-working30.png",FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL },
19406
a71cfa7982c6 Adds a new icon size for tab status icons
Sean Egan <seanegan@pidgin.im>
parents: 19117
diff changeset
171 { PIDGIN_STOCK_ANIMATION_TYPING0, "animations", "typing0.png",FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL },
a71cfa7982c6 Adds a new icon size for tab status icons
Sean Egan <seanegan@pidgin.im>
parents: 19117
diff changeset
172 { PIDGIN_STOCK_ANIMATION_TYPING1, "animations", "typing1.png",FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL },
a71cfa7982c6 Adds a new icon size for tab status icons
Sean Egan <seanegan@pidgin.im>
parents: 19117
diff changeset
173 { PIDGIN_STOCK_ANIMATION_TYPING2, "animations", "typing2.png",FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL },
a71cfa7982c6 Adds a new icon size for tab status icons
Sean Egan <seanegan@pidgin.im>
parents: 19117
diff changeset
174 { PIDGIN_STOCK_ANIMATION_TYPING3, "animations", "typing3.png",FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL },
a71cfa7982c6 Adds a new icon size for tab status icons
Sean Egan <seanegan@pidgin.im>
parents: 19117
diff changeset
175 { PIDGIN_STOCK_ANIMATION_TYPING4, "animations", "typing4.png",FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL },
a71cfa7982c6 Adds a new icon size for tab status icons
Sean Egan <seanegan@pidgin.im>
parents: 19117
diff changeset
176 { PIDGIN_STOCK_ANIMATION_TYPING5, "animations", "typing5.png",FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL },
15623
bf485c598199 toolbar/menu icons. reduce the imhtmltoolbar spacing. more gaimstock pruning
Sean Egan <seanegan@pidgin.im>
parents: 15577
diff changeset
177
19406
a71cfa7982c6 Adds a new icon size for tab status icons
Sean Egan <seanegan@pidgin.im>
parents: 19117
diff changeset
178 { PIDGIN_STOCK_TOOLBAR_BGCOLOR, "toolbar", "change-bgcolor.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL },
a71cfa7982c6 Adds a new icon size for tab status icons
Sean Egan <seanegan@pidgin.im>
parents: 19117
diff changeset
179 { PIDGIN_STOCK_TOOLBAR_BLOCK, "emblems", "blocked.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL },
a71cfa7982c6 Adds a new icon size for tab status icons
Sean Egan <seanegan@pidgin.im>
parents: 19117
diff changeset
180 { PIDGIN_STOCK_TOOLBAR_FGCOLOR, "toolbar", "change-fgcolor.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL },
a71cfa7982c6 Adds a new icon size for tab status icons
Sean Egan <seanegan@pidgin.im>
parents: 19117
diff changeset
181 { PIDGIN_STOCK_TOOLBAR_SMILEY, "toolbar", "emote-select.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL },
a71cfa7982c6 Adds a new icon size for tab status icons
Sean Egan <seanegan@pidgin.im>
parents: 19117
diff changeset
182 { PIDGIN_STOCK_TOOLBAR_FONT_FACE, "toolbar", "font-face.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL },
a71cfa7982c6 Adds a new icon size for tab status icons
Sean Egan <seanegan@pidgin.im>
parents: 19117
diff changeset
183 { PIDGIN_STOCK_TOOLBAR_TEXT_SMALLER, "toolbar", "font-size-down.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL },
a71cfa7982c6 Adds a new icon size for tab status icons
Sean Egan <seanegan@pidgin.im>
parents: 19117
diff changeset
184 { PIDGIN_STOCK_TOOLBAR_TEXT_LARGER, "toolbar", "font-size-up.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL },
a71cfa7982c6 Adds a new icon size for tab status icons
Sean Egan <seanegan@pidgin.im>
parents: 19117
diff changeset
185 { PIDGIN_STOCK_TOOLBAR_INSERT, "toolbar", "insert.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL },
a71cfa7982c6 Adds a new icon size for tab status icons
Sean Egan <seanegan@pidgin.im>
parents: 19117
diff changeset
186 { PIDGIN_STOCK_TOOLBAR_INSERT_IMAGE, "toolbar", "insert-image.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL },
a71cfa7982c6 Adds a new icon size for tab status icons
Sean Egan <seanegan@pidgin.im>
parents: 19117
diff changeset
187 { PIDGIN_STOCK_TOOLBAR_INSERT_LINK, "toolbar", "insert-link.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL },
a71cfa7982c6 Adds a new icon size for tab status icons
Sean Egan <seanegan@pidgin.im>
parents: 19117
diff changeset
188 { PIDGIN_STOCK_TOOLBAR_MESSAGE_NEW, "toolbar", "message-new.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL },
24058
b241f51859cd Slicker application icons. Don't hate me.
Hylke Bons <hbons@pidgin.im>
parents: 23423
diff changeset
189 { PIDGIN_STOCK_TOOLBAR_PENDING, "tray", "tray-new-im.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL },
19406
a71cfa7982c6 Adds a new icon size for tab status icons
Sean Egan <seanegan@pidgin.im>
parents: 19117
diff changeset
190 { PIDGIN_STOCK_TOOLBAR_PLUGINS, "toolbar", "plugins.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL },
a71cfa7982c6 Adds a new icon size for tab status icons
Sean Egan <seanegan@pidgin.im>
parents: 19117
diff changeset
191 { PIDGIN_STOCK_TOOLBAR_UNBLOCK, "toolbar", "unblock.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL },
a71cfa7982c6 Adds a new icon size for tab status icons
Sean Egan <seanegan@pidgin.im>
parents: 19117
diff changeset
192 { PIDGIN_STOCK_TOOLBAR_SELECT_AVATAR, "toolbar", "select-avatar.png", FALSE, FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, NULL },
a71cfa7982c6 Adds a new icon size for tab status icons
Sean Egan <seanegan@pidgin.im>
parents: 19117
diff changeset
193 { PIDGIN_STOCK_TOOLBAR_SEND_FILE, "toolbar", "send-file.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL },
23423
05e6ffac284c Update File Transfer icon and use new send fie icon. Fixes #2744.
Daniel Atallah <datallah@pidgin.im>
parents: 22411
diff changeset
194 { PIDGIN_STOCK_TOOLBAR_TRANSFER, "toolbar", "transfer.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL },
16068
b1dac315ed09 block and unblock have the right icons now
Nathan Walp <nwalp@pidgin.im>
parents: 15930
diff changeset
195
19406
a71cfa7982c6 Adds a new icon size for tab status icons
Sean Egan <seanegan@pidgin.im>
parents: 19117
diff changeset
196 { PIDGIN_STOCK_TRAY_AVAILABLE, "tray", "tray-online.png", FALSE, TRUE, TRUE, TRUE, TRUE, FALSE, FALSE, NULL },
a71cfa7982c6 Adds a new icon size for tab status icons
Sean Egan <seanegan@pidgin.im>
parents: 19117
diff changeset
197 { PIDGIN_STOCK_TRAY_INVISIBLE, "tray", "tray-invisible.png", FALSE, TRUE, TRUE, TRUE, TRUE, FALSE, FALSE, NULL },
a71cfa7982c6 Adds a new icon size for tab status icons
Sean Egan <seanegan@pidgin.im>
parents: 19117
diff changeset
198 { PIDGIN_STOCK_TRAY_AWAY, "tray", "tray-away.png", FALSE, TRUE, TRUE, TRUE, TRUE, FALSE, FALSE, NULL },
a71cfa7982c6 Adds a new icon size for tab status icons
Sean Egan <seanegan@pidgin.im>
parents: 19117
diff changeset
199 { PIDGIN_STOCK_TRAY_BUSY, "tray", "tray-busy.png", FALSE, TRUE, TRUE, TRUE, TRUE, FALSE, FALSE, NULL },
a71cfa7982c6 Adds a new icon size for tab status icons
Sean Egan <seanegan@pidgin.im>
parents: 19117
diff changeset
200 { PIDGIN_STOCK_TRAY_XA, "tray", "tray-extended-away.png", FALSE, TRUE, TRUE, TRUE, TRUE, FALSE, FALSE, NULL },
a71cfa7982c6 Adds a new icon size for tab status icons
Sean Egan <seanegan@pidgin.im>
parents: 19117
diff changeset
201 { PIDGIN_STOCK_TRAY_OFFLINE, "tray", "tray-offline.png", FALSE, TRUE, TRUE, TRUE, TRUE, FALSE, FALSE, NULL },
a71cfa7982c6 Adds a new icon size for tab status icons
Sean Egan <seanegan@pidgin.im>
parents: 19117
diff changeset
202 { PIDGIN_STOCK_TRAY_CONNECT, "tray", "tray-connecting.png", FALSE, TRUE, TRUE, TRUE, TRUE, FALSE, FALSE, NULL },
a71cfa7982c6 Adds a new icon size for tab status icons
Sean Egan <seanegan@pidgin.im>
parents: 19117
diff changeset
203 { PIDGIN_STOCK_TRAY_PENDING, "tray", "tray-new-im.png", FALSE, TRUE, TRUE, TRUE, TRUE, FALSE, FALSE, NULL },
a71cfa7982c6 Adds a new icon size for tab status icons
Sean Egan <seanegan@pidgin.im>
parents: 19117
diff changeset
204 { PIDGIN_STOCK_TRAY_EMAIL, "tray", "tray-message.png", FALSE, TRUE, TRUE, TRUE, TRUE, FALSE, FALSE, NULL }
15458
39c79dc7c965 A lot of status icon changes:
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
205 };
39c79dc7c965 A lot of status icon changes:
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
206
24696
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
207 static void
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
208 add_sized_icon_common(GtkIconSet *iconset, GtkIconSize sizeid, const char *dir,
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
209 gboolean rtl, const char *size, const char *file,
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
210 gboolean translucent);
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
211
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
212 static gchar *
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
213 find_file_common(const char *name)
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
214 {
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
215 gchar *filename;
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
216 #if GLIB_CHECK_VERSION(2,6,0)
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
217 const gchar *userdir;
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
218 const gchar * const *sysdirs;
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
219
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
220 userdir = g_get_user_data_dir();
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
221 filename = g_build_filename(userdir, name, NULL);
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
222 if (g_file_test(filename, G_FILE_TEST_EXISTS))
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
223 return filename;
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
224 g_free(filename);
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
225
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
226 sysdirs = g_get_system_data_dirs();
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
227 for (; *sysdirs; sysdirs++) {
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
228 filename = g_build_filename(*sysdirs, name, NULL);
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
229 if (g_file_test(filename, G_FILE_TEST_EXISTS))
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
230 return filename;
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
231 g_free(filename);
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
232 }
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
233 #endif
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
234 filename = g_build_filename(DATADIR, name, NULL);
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
235 if (g_file_test(filename, G_FILE_TEST_EXISTS))
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
236 return filename;
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
237 g_free(filename);
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
238 return NULL;
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
239 }
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
240
10297
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
241 static gchar *
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
242 find_file(const char *dir, const char *base)
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
243 {
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
244 char *filename;
24696
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
245 char *ret;
10297
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
246
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
247 if (base == NULL)
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
248 return NULL;
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
249
15930
d851247cb931 Install pixmaps to the right directories and make them load properly.
Richard Laager <rlaager@pidgin.im>
parents: 15914
diff changeset
250 if (!strcmp(dir, "pidgin"))
24696
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
251 filename = g_build_filename("pixmaps", "pidgin", base, NULL);
10297
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
252 else
24696
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
253 filename = g_build_filename("pixmaps", "pidgin", dir, base, NULL);
10297
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
254
24696
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
255 ret = find_file_common(filename);
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
256 g_free(filename);
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
257 return ret;
15458
39c79dc7c965 A lot of status icon changes:
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
258 }
39c79dc7c965 A lot of status icon changes:
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
259
39c79dc7c965 A lot of status icon changes:
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
260 static void
24696
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
261 add_sized_icon(GtkIconSet *iconset, GtkIconSize sizeid, const char *dir,
15792
862d8eb17606 make rtl icons work: http://gaim.sf.net/sean/rtl.png
Sean Egan <seanegan@pidgin.im>
parents: 15774
diff changeset
262 gboolean rtl, const char *size, const char *file)
15458
39c79dc7c965 A lot of status icon changes:
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
263 {
24696
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
264 add_sized_icon_common(iconset, sizeid, dir, rtl, size, file, FALSE);
10297
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
265 }
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
266
16484
4c91c9a40dea Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents: 16454
diff changeset
267 /* Altered from do_colorshift in gnome-panel */
4c91c9a40dea Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents: 16454
diff changeset
268 static void
16639
0ded4b9be48c DennisR noticed that the idle icons were jagged on the sides. This is because I was subtracting 128 from the alpha value of each pixel, rather than halving them, causing anti-aliasing pixels to hit 0
Sean Egan <seanegan@pidgin.im>
parents: 16484
diff changeset
269 do_alphashift (GdkPixbuf *dest, GdkPixbuf *src)
16484
4c91c9a40dea Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents: 16454
diff changeset
270 {
4c91c9a40dea Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents: 16454
diff changeset
271 gint i, j;
4c91c9a40dea Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents: 16454
diff changeset
272 gint width, height, has_alpha, srcrowstride, destrowstride;
4c91c9a40dea Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents: 16454
diff changeset
273 guchar *target_pixels;
4c91c9a40dea Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents: 16454
diff changeset
274 guchar *original_pixels;
4c91c9a40dea Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents: 16454
diff changeset
275 guchar *pixsrc;
4c91c9a40dea Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents: 16454
diff changeset
276 guchar *pixdest;
4c91c9a40dea Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents: 16454
diff changeset
277 guchar a;
4c91c9a40dea Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents: 16454
diff changeset
278
4c91c9a40dea Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents: 16454
diff changeset
279 has_alpha = gdk_pixbuf_get_has_alpha (src);
4c91c9a40dea Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents: 16454
diff changeset
280 if (!has_alpha)
4c91c9a40dea Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents: 16454
diff changeset
281 return;
4c91c9a40dea Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents: 16454
diff changeset
282
4c91c9a40dea Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents: 16454
diff changeset
283 width = gdk_pixbuf_get_width (src);
4c91c9a40dea Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents: 16454
diff changeset
284 height = gdk_pixbuf_get_height (src);
4c91c9a40dea Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents: 16454
diff changeset
285 srcrowstride = gdk_pixbuf_get_rowstride (src);
4c91c9a40dea Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents: 16454
diff changeset
286 destrowstride = gdk_pixbuf_get_rowstride (dest);
4c91c9a40dea Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents: 16454
diff changeset
287 target_pixels = gdk_pixbuf_get_pixels (dest);
4c91c9a40dea Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents: 16454
diff changeset
288 original_pixels = gdk_pixbuf_get_pixels (src);
4c91c9a40dea Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents: 16454
diff changeset
289
4c91c9a40dea Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents: 16454
diff changeset
290 for (i = 0; i < height; i++) {
4c91c9a40dea Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents: 16454
diff changeset
291 pixdest = target_pixels + i*destrowstride;
4c91c9a40dea Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents: 16454
diff changeset
292 pixsrc = original_pixels + i*srcrowstride;
4c91c9a40dea Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents: 16454
diff changeset
293 for (j = 0; j < width; j++) {
4c91c9a40dea Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents: 16454
diff changeset
294 *(pixdest++) = *(pixsrc++);
4c91c9a40dea Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents: 16454
diff changeset
295 *(pixdest++) = *(pixsrc++);
4c91c9a40dea Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents: 16454
diff changeset
296 *(pixdest++) = *(pixsrc++);
4c91c9a40dea Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents: 16454
diff changeset
297 a = *(pixsrc++);
16639
0ded4b9be48c DennisR noticed that the idle icons were jagged on the sides. This is because I was subtracting 128 from the alpha value of each pixel, rather than halving them, causing anti-aliasing pixels to hit 0
Sean Egan <seanegan@pidgin.im>
parents: 16484
diff changeset
298 *(pixdest++) = a / 2;
16484
4c91c9a40dea Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents: 16454
diff changeset
299 }
4c91c9a40dea Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents: 16454
diff changeset
300 }
4c91c9a40dea Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents: 16454
diff changeset
301 }
4c91c9a40dea Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents: 16454
diff changeset
302
4c91c9a40dea Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents: 16454
diff changeset
303 static void
4c91c9a40dea Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents: 16454
diff changeset
304 add_translucent_sized_icon(GtkIconSet *iconset, GtkIconSize sizeid, const char *dir,
4c91c9a40dea Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents: 16454
diff changeset
305 gboolean rtl, const char *size, const char *file)
4c91c9a40dea Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents: 16454
diff changeset
306 {
24696
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
307 add_sized_icon_common(iconset, sizeid, dir, rtl, size, file, TRUE);
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
308 }
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
309
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
310 static void
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
311 add_sized_icon_common(GtkIconSet *iconset, GtkIconSize sizeid, const char *dir,
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
312 gboolean rtl, const char *size, const char *file,
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
313 gboolean translucent)
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
314 {
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
315 char *filename, *subpath;
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
316 GtkIconSource *source;
16484
4c91c9a40dea Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents: 16454
diff changeset
317 GdkPixbuf *pixbuf;
4c91c9a40dea Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents: 16454
diff changeset
318
24696
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
319 subpath = g_build_filename("pixmaps", "pidgin", dir, size, file, NULL);
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
320 filename = find_file_common(subpath);
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
321 g_free(subpath);
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
322 if (!filename)
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
323 return;
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
324
16484
4c91c9a40dea Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents: 16454
diff changeset
325 pixbuf = gdk_pixbuf_new_from_file(filename, NULL);
24696
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
326 if (translucent)
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
327 do_alphashift(pixbuf, pixbuf);
16484
4c91c9a40dea Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents: 16454
diff changeset
328
4c91c9a40dea Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents: 16454
diff changeset
329 source = gtk_icon_source_new();
24696
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
330 gtk_icon_source_set_pixbuf(source, pixbuf);
16484
4c91c9a40dea Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents: 16454
diff changeset
331 gtk_icon_source_set_direction(source, GTK_TEXT_DIR_LTR);
24696
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
332 gtk_icon_source_set_direction_wildcarded(source, !rtl);
16484
4c91c9a40dea Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents: 16454
diff changeset
333 gtk_icon_source_set_size(source, sizeid);
24696
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
334 gtk_icon_source_set_size_wildcarded(source, FALSE);
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
335 gtk_icon_source_set_state_wildcarded(source, TRUE);
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
336 gtk_icon_set_add_source(iconset, source);
16484
4c91c9a40dea Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents: 16454
diff changeset
337 gtk_icon_source_free(source);
4c91c9a40dea Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents: 16454
diff changeset
338
4c91c9a40dea Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents: 16454
diff changeset
339 if (sizeid == gtk_icon_size_from_name(PIDGIN_ICON_SIZE_TANGO_EXTRA_SMALL)) {
4c91c9a40dea Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents: 16454
diff changeset
340 source = gtk_icon_source_new();
24696
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
341 gtk_icon_source_set_pixbuf(source, pixbuf);
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
342 gtk_icon_source_set_direction_wildcarded(source, TRUE);
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
343 gtk_icon_source_set_size(source, GTK_ICON_SIZE_MENU);
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
344 gtk_icon_source_set_size_wildcarded(source, FALSE);
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
345 gtk_icon_source_set_state_wildcarded(source, TRUE);
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
346 gtk_icon_set_add_source(iconset, source);
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
347 gtk_icon_source_free(source);
16484
4c91c9a40dea Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents: 16454
diff changeset
348 }
24696
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
349 g_free(filename);
16484
4c91c9a40dea Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents: 16454
diff changeset
350 g_object_unref(pixbuf);
4c91c9a40dea Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents: 16454
diff changeset
351
24696
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
352 if (rtl) {
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
353 subpath = g_build_filename("pixmaps", "pidgin", dir, size, "rtl", file, NULL);
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
354 filename = find_file_common(subpath);
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
355 g_free(subpath);
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
356 if (!filename)
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
357 return;
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
358 pixbuf = gdk_pixbuf_new_from_file(filename, NULL);
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
359 if (translucent)
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
360 do_alphashift(pixbuf, pixbuf);
16484
4c91c9a40dea Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents: 16454
diff changeset
361 source = gtk_icon_source_new();
24696
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
362 gtk_icon_source_set_pixbuf(source, pixbuf);
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
363 gtk_icon_source_set_direction(source, GTK_TEXT_DIR_RTL);
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
364 gtk_icon_source_set_size(source, sizeid);
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
365 gtk_icon_source_set_size_wildcarded(source, FALSE);
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
366 gtk_icon_source_set_state_wildcarded(source, TRUE);
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
367 gtk_icon_set_add_source(iconset, source);
16484
4c91c9a40dea Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents: 16454
diff changeset
368 g_free(filename);
4c91c9a40dea Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents: 16454
diff changeset
369 g_object_unref(pixbuf);
4c91c9a40dea Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents: 16454
diff changeset
370 gtk_icon_source_free(source);
24696
33d0b1c4806a Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24594
diff changeset
371 }
16484
4c91c9a40dea Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents: 16454
diff changeset
372 }
4c91c9a40dea Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents: 16454
diff changeset
373
10297
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
374 void
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15559
diff changeset
375 pidgin_stock_init(void)
10297
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
376 {
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
377 static gboolean stock_initted = FALSE;
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
378 GtkIconFactory *icon_factory;
12255
f37495b09522 [gaim-migrate @ 14557]
Richard Laager <rlaager@pidgin.im>
parents: 12191
diff changeset
379 size_t i;
10297
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
380 GtkWidget *win;
19406
a71cfa7982c6 Adds a new icon size for tab status icons
Sean Egan <seanegan@pidgin.im>
parents: 19117
diff changeset
381 GtkIconSize microscopic, extra_small, small, medium, large, huge;
21811
c07bdd3bd67a I find this less painful to the eyes.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 20834
diff changeset
382
10297
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
383 if (stock_initted)
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
384 return;
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
385
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
386 stock_initted = TRUE;
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
387
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
388 /* Setup the icon factory. */
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
389 icon_factory = gtk_icon_factory_new();
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
390
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
391 gtk_icon_factory_add_default(icon_factory);
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
392
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
393 /* Er, yeah, a hack, but it works. :) */
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
394 win = gtk_window_new(GTK_WINDOW_TOPLEVEL);
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
395 gtk_widget_realize(win);
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
396
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
397 for (i = 0; i < G_N_ELEMENTS(stock_icons); i++)
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
398 {
15458
39c79dc7c965 A lot of status icon changes:
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
399 GtkIconSource *source;
10297
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
400 GtkIconSet *iconset;
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
401 gchar *filename;
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
402
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
403 if (stock_icons[i].dir == NULL)
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
404 {
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
405 /* GTK+ Stock icon */
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
406 iconset = gtk_style_lookup_icon_set(gtk_widget_get_style(win),
21811
c07bdd3bd67a I find this less painful to the eyes.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 20834
diff changeset
407 stock_icons[i].filename);
10297
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
408 }
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
409 else
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
410 {
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
411 filename = find_file(stock_icons[i].dir, stock_icons[i].filename);
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
412
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
413 if (filename == NULL)
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
414 continue;
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
415
15458
39c79dc7c965 A lot of status icon changes:
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
416 source = gtk_icon_source_new();
39c79dc7c965 A lot of status icon changes:
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
417 gtk_icon_source_set_filename(source, filename);
39c79dc7c965 A lot of status icon changes:
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
418 gtk_icon_source_set_direction_wildcarded(source, TRUE);
39c79dc7c965 A lot of status icon changes:
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
419 gtk_icon_source_set_size_wildcarded(source, TRUE);
39c79dc7c965 A lot of status icon changes:
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
420 gtk_icon_source_set_state_wildcarded(source, TRUE);
21811
c07bdd3bd67a I find this less painful to the eyes.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 20834
diff changeset
421
15458
39c79dc7c965 A lot of status icon changes:
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
422 iconset = gtk_icon_set_new();
39c79dc7c965 A lot of status icon changes:
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
423 gtk_icon_set_add_source(iconset, source);
21811
c07bdd3bd67a I find this less painful to the eyes.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 20834
diff changeset
424
15458
39c79dc7c965 A lot of status icon changes:
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
425 gtk_icon_source_free(source);
39c79dc7c965 A lot of status icon changes:
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
426 g_free(filename);
10297
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
427 }
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
428
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
429 gtk_icon_factory_add(icon_factory, stock_icons[i].name, iconset);
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
430
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
431 gtk_icon_set_unref(iconset);
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
432 }
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
433
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
434 /* register custom icon sizes */
21811
c07bdd3bd67a I find this less painful to the eyes.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 20834
diff changeset
435
19647
5d8cf24e5ce9 Add horizontal rules and strikethroughs to the toolbar
Sean Egan <seanegan@pidgin.im>
parents: 19417
diff changeset
436 microscopic = gtk_icon_size_register(PIDGIN_ICON_SIZE_TANGO_MICROSCOPIC, 11, 11);
15497
92f02f4bd5ee Dialog icon changes
Sean Egan <seanegan@pidgin.im>
parents: 15458
diff changeset
437 extra_small = gtk_icon_size_register(PIDGIN_ICON_SIZE_TANGO_EXTRA_SMALL, 16, 16);
92f02f4bd5ee Dialog icon changes
Sean Egan <seanegan@pidgin.im>
parents: 15458
diff changeset
438 small = gtk_icon_size_register(PIDGIN_ICON_SIZE_TANGO_SMALL, 22, 22);
92f02f4bd5ee Dialog icon changes
Sean Egan <seanegan@pidgin.im>
parents: 15458
diff changeset
439 medium = gtk_icon_size_register(PIDGIN_ICON_SIZE_TANGO_MEDIUM, 32, 32);
15792
862d8eb17606 make rtl icons work: http://gaim.sf.net/sean/rtl.png
Sean Egan <seanegan@pidgin.im>
parents: 15774
diff changeset
440 large = gtk_icon_size_register(PIDGIN_ICON_SIZE_TANGO_LARGE, 48, 48);
15497
92f02f4bd5ee Dialog icon changes
Sean Egan <seanegan@pidgin.im>
parents: 15458
diff changeset
441 huge = gtk_icon_size_register(PIDGIN_ICON_SIZE_TANGO_HUGE, 64, 64);
15458
39c79dc7c965 A lot of status icon changes:
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
442
39c79dc7c965 A lot of status icon changes:
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
443 for (i = 0; i < G_N_ELEMENTS(sized_stock_icons); i++)
39c79dc7c965 A lot of status icon changes:
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
444 {
39c79dc7c965 A lot of status icon changes:
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
445 GtkIconSet *iconset;
10297
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
446
15458
39c79dc7c965 A lot of status icon changes:
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
447 iconset = gtk_icon_set_new();
21811
c07bdd3bd67a I find this less painful to the eyes.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 20834
diff changeset
448
c07bdd3bd67a I find this less painful to the eyes.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 20834
diff changeset
449 #define ADD_SIZED_ICON(name, size) do { \
c07bdd3bd67a I find this less painful to the eyes.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 20834
diff changeset
450 if (sized_stock_icons[i].name) \
c07bdd3bd67a I find this less painful to the eyes.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 20834
diff changeset
451 add_sized_icon(iconset, name, \
c07bdd3bd67a I find this less painful to the eyes.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 20834
diff changeset
452 sized_stock_icons[i].dir, sized_stock_icons[i].rtl, \
c07bdd3bd67a I find this less painful to the eyes.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 20834
diff changeset
453 size, sized_stock_icons[i].filename); \
c07bdd3bd67a I find this less painful to the eyes.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 20834
diff changeset
454 } while (0)
c07bdd3bd67a I find this less painful to the eyes.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 20834
diff changeset
455 ADD_SIZED_ICON(microscopic, "11");
c07bdd3bd67a I find this less painful to the eyes.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 20834
diff changeset
456 ADD_SIZED_ICON(extra_small, "16");
c07bdd3bd67a I find this less painful to the eyes.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 20834
diff changeset
457 ADD_SIZED_ICON(small, "22");
c07bdd3bd67a I find this less painful to the eyes.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 20834
diff changeset
458 ADD_SIZED_ICON(medium, "32");
c07bdd3bd67a I find this less painful to the eyes.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 20834
diff changeset
459 ADD_SIZED_ICON(large, "48");
c07bdd3bd67a I find this less painful to the eyes.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 20834
diff changeset
460 ADD_SIZED_ICON(huge, "64");
c07bdd3bd67a I find this less painful to the eyes.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 20834
diff changeset
461 #undef ADD_SIZED_ICON
15458
39c79dc7c965 A lot of status icon changes:
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
462
39c79dc7c965 A lot of status icon changes:
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
463 gtk_icon_factory_add(icon_factory, sized_stock_icons[i].name, iconset);
39c79dc7c965 A lot of status icon changes:
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
464 gtk_icon_set_unref(iconset);
16484
4c91c9a40dea Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents: 16454
diff changeset
465
4c91c9a40dea Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents: 16454
diff changeset
466 if (sized_stock_icons[i].translucent_name) {
4c91c9a40dea Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents: 16454
diff changeset
467 iconset = gtk_icon_set_new();
21811
c07bdd3bd67a I find this less painful to the eyes.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 20834
diff changeset
468
c07bdd3bd67a I find this less painful to the eyes.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 20834
diff changeset
469 #define ADD_TRANS_ICON(name, size) do { \
c07bdd3bd67a I find this less painful to the eyes.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 20834
diff changeset
470 if (sized_stock_icons[i].name) \
c07bdd3bd67a I find this less painful to the eyes.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 20834
diff changeset
471 add_translucent_sized_icon(iconset, name, \
c07bdd3bd67a I find this less painful to the eyes.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 20834
diff changeset
472 sized_stock_icons[i].dir, sized_stock_icons[i].rtl, \
c07bdd3bd67a I find this less painful to the eyes.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 20834
diff changeset
473 size, sized_stock_icons[i].filename); \
c07bdd3bd67a I find this less painful to the eyes.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 20834
diff changeset
474 } while (0)
c07bdd3bd67a I find this less painful to the eyes.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 20834
diff changeset
475 ADD_TRANS_ICON(microscopic, "11");
c07bdd3bd67a I find this less painful to the eyes.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 20834
diff changeset
476 ADD_TRANS_ICON(extra_small, "16");
c07bdd3bd67a I find this less painful to the eyes.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 20834
diff changeset
477 ADD_TRANS_ICON(small, "22");
c07bdd3bd67a I find this less painful to the eyes.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 20834
diff changeset
478 ADD_TRANS_ICON(medium, "32");
c07bdd3bd67a I find this less painful to the eyes.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 20834
diff changeset
479 ADD_TRANS_ICON(large, "48");
c07bdd3bd67a I find this less painful to the eyes.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 20834
diff changeset
480 ADD_TRANS_ICON(huge, "64");
c07bdd3bd67a I find this less painful to the eyes.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 20834
diff changeset
481 #undef ADD_TRANS_ICON
c07bdd3bd67a I find this less painful to the eyes.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 20834
diff changeset
482
16484
4c91c9a40dea Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents: 16454
diff changeset
483 gtk_icon_factory_add(icon_factory, sized_stock_icons[i].translucent_name, iconset);
4c91c9a40dea Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents: 16454
diff changeset
484 gtk_icon_set_unref(iconset);
4c91c9a40dea Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents: 16454
diff changeset
485 }
15458
39c79dc7c965 A lot of status icon changes:
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
486 }
39c79dc7c965 A lot of status icon changes:
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
487
39c79dc7c965 A lot of status icon changes:
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
488 gtk_widget_destroy(win);
10297
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
489 g_object_unref(G_OBJECT(icon_factory));
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
490
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
491 /* Register the stock items. */
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
492 gtk_stock_add_static(stock_items, G_N_ELEMENTS(stock_items));
b36800725b7a [gaim-migrate @ 11480]
Evan Schoenberg <evands@pidgin.im>
parents:
diff changeset
493 }

mercurial