Mercurial > pidgin.yaz
annotate pidgin/pidginstock.c @ 19367:bf918749b375
Separate out setting up the labelled-by and label-for ATK relationships
from pidgin_set_accessible_label(). This allows us to set up the label
relationships for combo boxes in gtkprefs without setting an ATK
name on the combo box (which breaks screen reading of the combo box).
Fixes ticket #2687 (Gnome bug #468762).
author | Casey Harkins <charkins@pidgin.im> |
---|---|
date | Thu, 23 Aug 2007 03:06:52 +0000 |
parents | e4f830189bf2 |
children | 42ee8f13c917 |
rev | line source |
---|---|
15822
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1 /** |
15870
99b965aaf9bf
Install pixmaps to the right directories and make them load properly.
Richard Laager <rlaager@wiktel.com>
parents:
15823
diff
changeset
|
2 * @file pidginstock.c GTK+ Stock resources |
16193
247e421c4fa6
Rename the Doxygen group from gtkui to pidgin.
Richard Laager <rlaager@wiktel.com>
parents:
16007
diff
changeset
|
3 * @ingroup pidgin |
15822
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
4 * |
15870
99b965aaf9bf
Install pixmaps to the right directories and make them load properly.
Richard Laager <rlaager@wiktel.com>
parents:
15823
diff
changeset
|
5 * pidgin |
15822
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
6 * |
15870
99b965aaf9bf
Install pixmaps to the right directories and make them load properly.
Richard Laager <rlaager@wiktel.com>
parents:
15823
diff
changeset
|
7 * Pidgin is the legal property of its developers, whose names are too numerous |
15822
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
8 * to list here. Please refer to the COPYRIGHT file distributed with this |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
9 * source distribution. |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
10 * |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
11 * This program is free software; you can redistribute it and/or modify |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
12 * it under the terms of the GNU General Public License as published by |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
13 * the Free Software Foundation; either version 2 of the License, or |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
14 * (at your option) any later version. |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
15 * |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
16 * This program is distributed in the hope that it will be useful, |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
17 * but WITHOUT ANY WARRANTY; without even the implied warranty of |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
18 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
19 * GNU General Public License for more details. |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
20 * |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
21 * You should have received a copy of the GNU General Public License |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
22 * along with this program; if not, write to the Free Software |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
23 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
24 * |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
25 */ |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
26 #include "internal.h" |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
27 #include "pidgin.h" |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
28 |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
29 #include "pidginstock.h" |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
30 |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
31 static struct StockIcon |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
32 { |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
33 const char *name; |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
34 const char *dir; |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
35 const char *filename; |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
36 |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
37 } const stock_icons[] = |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
38 { |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
39 { PIDGIN_STOCK_ACTION, NULL, GTK_STOCK_EXECUTE }, |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
40 #if GTK_CHECK_VERSION(2,6,0) |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
41 { PIDGIN_STOCK_ALIAS, NULL, GTK_STOCK_EDIT }, |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
42 #else |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
43 { PIDGIN_STOCK_ALIAS, "buttons", "edit.png" }, |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
44 #endif |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
45 { PIDGIN_STOCK_CHAT, NULL, GTK_STOCK_JUMP_TO }, |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
46 { PIDGIN_STOCK_CLEAR, NULL, GTK_STOCK_CLEAR }, |
18822
8410abf85678
Remove reference to close-tab.png
Sean Egan <seanegan@gmail.com>
parents:
18797
diff
changeset
|
47 { PIDGIN_STOCK_CLOSE_TABS, NULL, GTK_STOCK_CLOSE }, |
15822
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
48 { PIDGIN_STOCK_DEBUG, NULL, GTK_STOCK_PROPERTIES }, |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
49 { PIDGIN_STOCK_DOWNLOAD, NULL, GTK_STOCK_GO_DOWN }, |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
50 #if GTK_CHECK_VERSION(2,6,0) |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
51 { PIDGIN_STOCK_DISCONNECT, NULL, GTK_STOCK_DISCONNECT }, |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
52 #else |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
53 { PIDGIN_STOCK_DISCONNECT, "icons", "stock_disconnect_16.png" }, |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
54 #endif |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
55 { PIDGIN_STOCK_FGCOLOR, "buttons", "change-fgcolor-small.png" }, |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
56 #if GTK_CHECK_VERSION(2,6,0) |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
57 { PIDGIN_STOCK_EDIT, NULL, GTK_STOCK_EDIT }, |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
58 #else |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
59 { PIDGIN_STOCK_EDIT, "buttons", "edit.png" }, |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
60 #endif |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
61 { PIDGIN_STOCK_FILE_CANCELED, NULL, GTK_STOCK_CANCEL }, |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
62 { PIDGIN_STOCK_FILE_DONE, NULL, GTK_STOCK_APPLY }, |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
63 { PIDGIN_STOCK_IGNORE, NULL, GTK_STOCK_DIALOG_ERROR }, |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
64 { PIDGIN_STOCK_INVITE, NULL, GTK_STOCK_JUMP_TO }, |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
65 { PIDGIN_STOCK_MODIFY, NULL, GTK_STOCK_PREFERENCES }, |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
66 #if GTK_CHECK_VERSION(2,6,0) |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
67 { PIDGIN_STOCK_PAUSE, NULL, GTK_STOCK_MEDIA_PAUSE }, |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
68 #else |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
69 { PIDGIN_STOCK_PAUSE, "buttons", "pause.png" }, |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
70 #endif |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
71 { PIDGIN_STOCK_POUNCE, NULL, GTK_STOCK_REDO }, |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
72 { PIDGIN_STOCK_OPEN_MAIL, NULL, GTK_STOCK_JUMP_TO }, |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
73 { PIDGIN_STOCK_SIGN_ON, NULL, GTK_STOCK_EXECUTE }, |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
74 { PIDGIN_STOCK_SIGN_OFF, NULL, GTK_STOCK_CLOSE }, |
15870
99b965aaf9bf
Install pixmaps to the right directories and make them load properly.
Richard Laager <rlaager@wiktel.com>
parents:
15823
diff
changeset
|
75 { PIDGIN_STOCK_TYPED, "pidgin", "typed.png" }, |
15822
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
76 { PIDGIN_STOCK_UPLOAD, NULL, GTK_STOCK_GO_UP }, |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
77 }; |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
78 |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
79 static const GtkStockItem stock_items[] = |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
80 { |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
81 { PIDGIN_STOCK_ALIAS, N_("_Alias"), 0, 0, NULL }, |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
82 { PIDGIN_STOCK_CHAT, N_("_Join"), 0, 0, NULL }, |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
83 { PIDGIN_STOCK_CLOSE_TABS, N_("Close _tabs"), 0, 0, NULL }, |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
84 { PIDGIN_STOCK_TOOLBAR_MESSAGE_NEW, N_("I_M"), 0, 0, NULL }, |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
85 { PIDGIN_STOCK_TOOLBAR_USER_INFO, N_("_Get Info"), 0, 0, NULL }, |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
86 { PIDGIN_STOCK_INVITE, N_("_Invite"), 0, 0, NULL }, |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
87 { PIDGIN_STOCK_MODIFY, N_("_Modify"), 0, 0, NULL }, |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
88 { PIDGIN_STOCK_OPEN_MAIL, N_("_Open Mail"), 0, 0, NULL }, |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
89 { PIDGIN_STOCK_PAUSE, N_("_Pause"), 0, 0, NULL }, |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
90 }; |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
91 |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
92 static struct SizedStockIcon { |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
93 const char *name; |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
94 const char *dir; |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
95 const char *filename; |
19292
36316f1db621
Adds a new icon size for tab status icons
Sean Egan <seanegan@gmail.com>
parents:
18822
diff
changeset
|
96 gboolean microscopic; |
15822
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
97 gboolean extra_small; |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
98 gboolean small; |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
99 gboolean medium; |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
100 gboolean large; |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
101 gboolean huge; |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
102 gboolean rtl; |
16436
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
103 const char *translucent_name; |
15822
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
104 } const sized_stock_icons [] = { |
19292
36316f1db621
Adds a new icon size for tab status icons
Sean Egan <seanegan@gmail.com>
parents:
18822
diff
changeset
|
105 { PIDGIN_STOCK_STATUS_AVAILABLE, "status", "available.png", TRUE, TRUE, TRUE, TRUE, TRUE, FALSE, FALSE, PIDGIN_STOCK_STATUS_AVAILABLE_I }, |
36316f1db621
Adds a new icon size for tab status icons
Sean Egan <seanegan@gmail.com>
parents:
18822
diff
changeset
|
106 { PIDGIN_STOCK_STATUS_AWAY, "status", "away.png", TRUE, TRUE, TRUE, TRUE, TRUE, FALSE, FALSE, PIDGIN_STOCK_STATUS_AWAY_I }, |
36316f1db621
Adds a new icon size for tab status icons
Sean Egan <seanegan@gmail.com>
parents:
18822
diff
changeset
|
107 { PIDGIN_STOCK_STATUS_BUSY, "status", "busy.png", TRUE, TRUE, TRUE, TRUE, TRUE, FALSE, FALSE, PIDGIN_STOCK_STATUS_BUSY_I }, |
36316f1db621
Adds a new icon size for tab status icons
Sean Egan <seanegan@gmail.com>
parents:
18822
diff
changeset
|
108 { PIDGIN_STOCK_STATUS_CHAT, "status", "chat.png", TRUE, TRUE, TRUE, TRUE, TRUE, FALSE, TRUE, NULL }, |
36316f1db621
Adds a new icon size for tab status icons
Sean Egan <seanegan@gmail.com>
parents:
18822
diff
changeset
|
109 { PIDGIN_STOCK_STATUS_INVISIBLE,"status", "invisible.png", TRUE, TRUE, TRUE, TRUE, TRUE, FALSE, FALSE, NULL }, |
36316f1db621
Adds a new icon size for tab status icons
Sean Egan <seanegan@gmail.com>
parents:
18822
diff
changeset
|
110 { PIDGIN_STOCK_STATUS_XA, "status", "extended-away.png", TRUE, TRUE, TRUE, TRUE, TRUE, FALSE, TRUE, PIDGIN_STOCK_STATUS_XA_I }, |
19308
e4f830189bf2
more new status icons, notably new login and logout, with rtl variants.
Sean Egan <seanegan@gmail.com>
parents:
19293
diff
changeset
|
111 { PIDGIN_STOCK_STATUS_LOGIN, "status", "log-in.png", FALSE, TRUE, TRUE, TRUE, TRUE, FALSE, TRUE, NULL }, |
e4f830189bf2
more new status icons, notably new login and logout, with rtl variants.
Sean Egan <seanegan@gmail.com>
parents:
19293
diff
changeset
|
112 { PIDGIN_STOCK_STATUS_LOGOUT, "status", "log-out.png", FALSE, TRUE, TRUE, TRUE, TRUE, FALSE, TRUE, NULL }, |
19292
36316f1db621
Adds a new icon size for tab status icons
Sean Egan <seanegan@gmail.com>
parents:
18822
diff
changeset
|
113 { PIDGIN_STOCK_STATUS_OFFLINE, "status", "offline.png", TRUE, TRUE, TRUE, TRUE, TRUE, FALSE, FALSE, PIDGIN_STOCK_STATUS_OFFLINE_I }, |
36316f1db621
Adds a new icon size for tab status icons
Sean Egan <seanegan@gmail.com>
parents:
18822
diff
changeset
|
114 { PIDGIN_STOCK_STATUS_PERSON, "status", "person.png", TRUE, TRUE, TRUE, TRUE, TRUE, FALSE, FALSE, NULL }, |
36316f1db621
Adds a new icon size for tab status icons
Sean Egan <seanegan@gmail.com>
parents:
18822
diff
changeset
|
115 { PIDGIN_STOCK_STATUS_MESSAGE, "toolbar", "message-new.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
15822
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
116 |
19292
36316f1db621
Adds a new icon size for tab status icons
Sean Egan <seanegan@gmail.com>
parents:
18822
diff
changeset
|
117 { PIDGIN_STOCK_STATUS_IGNORED, "emblems", "blocked.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
36316f1db621
Adds a new icon size for tab status icons
Sean Egan <seanegan@gmail.com>
parents:
18822
diff
changeset
|
118 { PIDGIN_STOCK_STATUS_FOUNDER, "emblems", "founder.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
36316f1db621
Adds a new icon size for tab status icons
Sean Egan <seanegan@gmail.com>
parents:
18822
diff
changeset
|
119 { PIDGIN_STOCK_STATUS_OPERATOR, "emblems", "operator.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
36316f1db621
Adds a new icon size for tab status icons
Sean Egan <seanegan@gmail.com>
parents:
18822
diff
changeset
|
120 { PIDGIN_STOCK_STATUS_HALFOP, "emblems", "half-operator.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
36316f1db621
Adds a new icon size for tab status icons
Sean Egan <seanegan@gmail.com>
parents:
18822
diff
changeset
|
121 { PIDGIN_STOCK_STATUS_VOICE, "emblems", "voice.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
15822
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
122 |
19292
36316f1db621
Adds a new icon size for tab status icons
Sean Egan <seanegan@gmail.com>
parents:
18822
diff
changeset
|
123 { PIDGIN_STOCK_DIALOG_AUTH, "dialogs", "auth.png", FALSE, TRUE, FALSE, FALSE, FALSE, TRUE, FALSE, NULL }, |
36316f1db621
Adds a new icon size for tab status icons
Sean Egan <seanegan@gmail.com>
parents:
18822
diff
changeset
|
124 { PIDGIN_STOCK_DIALOG_COOL, "dialogs", "cool.png", FALSE, FALSE, FALSE, FALSE, FALSE, TRUE, FALSE, NULL }, |
36316f1db621
Adds a new icon size for tab status icons
Sean Egan <seanegan@gmail.com>
parents:
18822
diff
changeset
|
125 { PIDGIN_STOCK_DIALOG_ERROR, "dialogs", "error.png", FALSE, TRUE, FALSE, FALSE, FALSE, TRUE, FALSE, NULL }, |
36316f1db621
Adds a new icon size for tab status icons
Sean Egan <seanegan@gmail.com>
parents:
18822
diff
changeset
|
126 { PIDGIN_STOCK_DIALOG_INFO, "dialogs", "info.png", FALSE, TRUE, FALSE, FALSE, FALSE, TRUE, FALSE, NULL }, |
36316f1db621
Adds a new icon size for tab status icons
Sean Egan <seanegan@gmail.com>
parents:
18822
diff
changeset
|
127 { PIDGIN_STOCK_DIALOG_MAIL, "dialogs", "mail.png", FALSE, TRUE, FALSE, FALSE, FALSE, TRUE, FALSE, NULL }, |
36316f1db621
Adds a new icon size for tab status icons
Sean Egan <seanegan@gmail.com>
parents:
18822
diff
changeset
|
128 { PIDGIN_STOCK_DIALOG_QUESTION, "dialogs", "question.png", FALSE, TRUE, FALSE, FALSE, FALSE, TRUE, FALSE, NULL }, |
36316f1db621
Adds a new icon size for tab status icons
Sean Egan <seanegan@gmail.com>
parents:
18822
diff
changeset
|
129 { PIDGIN_STOCK_DIALOG_WARNING, "dialogs", "warning.png", FALSE, FALSE, FALSE, FALSE, FALSE, TRUE, FALSE, NULL }, |
15822
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
130 |
19292
36316f1db621
Adds a new icon size for tab status icons
Sean Egan <seanegan@gmail.com>
parents:
18822
diff
changeset
|
131 { PIDGIN_STOCK_ANIMATION_CONNECT0, "animations", "connect0.png",FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
36316f1db621
Adds a new icon size for tab status icons
Sean Egan <seanegan@gmail.com>
parents:
18822
diff
changeset
|
132 { PIDGIN_STOCK_ANIMATION_CONNECT1, "animations", "connect1.png",FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
36316f1db621
Adds a new icon size for tab status icons
Sean Egan <seanegan@gmail.com>
parents:
18822
diff
changeset
|
133 { PIDGIN_STOCK_ANIMATION_CONNECT2, "animations", "connect2.png",FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
36316f1db621
Adds a new icon size for tab status icons
Sean Egan <seanegan@gmail.com>
parents:
18822
diff
changeset
|
134 { PIDGIN_STOCK_ANIMATION_CONNECT3, "animations", "connect3.png",FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
36316f1db621
Adds a new icon size for tab status icons
Sean Egan <seanegan@gmail.com>
parents:
18822
diff
changeset
|
135 { PIDGIN_STOCK_ANIMATION_CONNECT4, "animations", "connect4.png",FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
36316f1db621
Adds a new icon size for tab status icons
Sean Egan <seanegan@gmail.com>
parents:
18822
diff
changeset
|
136 { PIDGIN_STOCK_ANIMATION_CONNECT5, "animations", "connect5.png",FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
36316f1db621
Adds a new icon size for tab status icons
Sean Egan <seanegan@gmail.com>
parents:
18822
diff
changeset
|
137 { PIDGIN_STOCK_ANIMATION_CONNECT6, "animations", "connect6.png",FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
36316f1db621
Adds a new icon size for tab status icons
Sean Egan <seanegan@gmail.com>
parents:
18822
diff
changeset
|
138 { PIDGIN_STOCK_ANIMATION_CONNECT7, "animations", "connect7.png",FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
36316f1db621
Adds a new icon size for tab status icons
Sean Egan <seanegan@gmail.com>
parents:
18822
diff
changeset
|
139 { PIDGIN_STOCK_ANIMATION_CONNECT8, "animations", "connect8.png",FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
36316f1db621
Adds a new icon size for tab status icons
Sean Egan <seanegan@gmail.com>
parents:
18822
diff
changeset
|
140 { PIDGIN_STOCK_ANIMATION_TYPING0, "animations", "typing0.png",FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
36316f1db621
Adds a new icon size for tab status icons
Sean Egan <seanegan@gmail.com>
parents:
18822
diff
changeset
|
141 { PIDGIN_STOCK_ANIMATION_TYPING1, "animations", "typing1.png",FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
36316f1db621
Adds a new icon size for tab status icons
Sean Egan <seanegan@gmail.com>
parents:
18822
diff
changeset
|
142 { PIDGIN_STOCK_ANIMATION_TYPING2, "animations", "typing2.png",FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
36316f1db621
Adds a new icon size for tab status icons
Sean Egan <seanegan@gmail.com>
parents:
18822
diff
changeset
|
143 { PIDGIN_STOCK_ANIMATION_TYPING3, "animations", "typing3.png",FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
36316f1db621
Adds a new icon size for tab status icons
Sean Egan <seanegan@gmail.com>
parents:
18822
diff
changeset
|
144 { PIDGIN_STOCK_ANIMATION_TYPING4, "animations", "typing4.png",FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
36316f1db621
Adds a new icon size for tab status icons
Sean Egan <seanegan@gmail.com>
parents:
18822
diff
changeset
|
145 { PIDGIN_STOCK_ANIMATION_TYPING5, "animations", "typing5.png",FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
15822
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
146 |
19292
36316f1db621
Adds a new icon size for tab status icons
Sean Egan <seanegan@gmail.com>
parents:
18822
diff
changeset
|
147 { PIDGIN_STOCK_TOOLBAR_ACCOUNTS, "toolbar", "accounts.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
36316f1db621
Adds a new icon size for tab status icons
Sean Egan <seanegan@gmail.com>
parents:
18822
diff
changeset
|
148 { PIDGIN_STOCK_TOOLBAR_BGCOLOR, "toolbar", "change-bgcolor.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
36316f1db621
Adds a new icon size for tab status icons
Sean Egan <seanegan@gmail.com>
parents:
18822
diff
changeset
|
149 { PIDGIN_STOCK_TOOLBAR_BLOCK, "emblems", "blocked.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
36316f1db621
Adds a new icon size for tab status icons
Sean Egan <seanegan@gmail.com>
parents:
18822
diff
changeset
|
150 { PIDGIN_STOCK_TOOLBAR_FGCOLOR, "toolbar", "change-fgcolor.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
36316f1db621
Adds a new icon size for tab status icons
Sean Egan <seanegan@gmail.com>
parents:
18822
diff
changeset
|
151 { PIDGIN_STOCK_TOOLBAR_SMILEY, "toolbar", "emote-select.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
36316f1db621
Adds a new icon size for tab status icons
Sean Egan <seanegan@gmail.com>
parents:
18822
diff
changeset
|
152 { PIDGIN_STOCK_TOOLBAR_FONT_FACE, "toolbar", "font-face.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
36316f1db621
Adds a new icon size for tab status icons
Sean Egan <seanegan@gmail.com>
parents:
18822
diff
changeset
|
153 { PIDGIN_STOCK_TOOLBAR_TEXT_SMALLER, "toolbar", "font-size-down.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
36316f1db621
Adds a new icon size for tab status icons
Sean Egan <seanegan@gmail.com>
parents:
18822
diff
changeset
|
154 { PIDGIN_STOCK_TOOLBAR_TEXT_LARGER, "toolbar", "font-size-up.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
36316f1db621
Adds a new icon size for tab status icons
Sean Egan <seanegan@gmail.com>
parents:
18822
diff
changeset
|
155 { PIDGIN_STOCK_TOOLBAR_INSERT, "toolbar", "insert.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
36316f1db621
Adds a new icon size for tab status icons
Sean Egan <seanegan@gmail.com>
parents:
18822
diff
changeset
|
156 { PIDGIN_STOCK_TOOLBAR_INSERT_IMAGE, "toolbar", "insert-image.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
36316f1db621
Adds a new icon size for tab status icons
Sean Egan <seanegan@gmail.com>
parents:
18822
diff
changeset
|
157 { PIDGIN_STOCK_TOOLBAR_INSERT_LINK, "toolbar", "insert-link.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
36316f1db621
Adds a new icon size for tab status icons
Sean Egan <seanegan@gmail.com>
parents:
18822
diff
changeset
|
158 { PIDGIN_STOCK_TOOLBAR_MESSAGE_NEW, "toolbar", "message-new.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
36316f1db621
Adds a new icon size for tab status icons
Sean Egan <seanegan@gmail.com>
parents:
18822
diff
changeset
|
159 { PIDGIN_STOCK_TOOLBAR_PENDING, "toolbar", "message-new.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
36316f1db621
Adds a new icon size for tab status icons
Sean Egan <seanegan@gmail.com>
parents:
18822
diff
changeset
|
160 { PIDGIN_STOCK_TOOLBAR_PLUGINS, "toolbar", "plugins.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
36316f1db621
Adds a new icon size for tab status icons
Sean Egan <seanegan@gmail.com>
parents:
18822
diff
changeset
|
161 { PIDGIN_STOCK_TOOLBAR_TYPING, "toolbar", "typing.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
36316f1db621
Adds a new icon size for tab status icons
Sean Egan <seanegan@gmail.com>
parents:
18822
diff
changeset
|
162 { PIDGIN_STOCK_TOOLBAR_UNBLOCK, "toolbar", "unblock.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
36316f1db621
Adds a new icon size for tab status icons
Sean Egan <seanegan@gmail.com>
parents:
18822
diff
changeset
|
163 { PIDGIN_STOCK_TOOLBAR_SELECT_AVATAR, "toolbar", "select-avatar.png", FALSE, FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, NULL }, |
36316f1db621
Adds a new icon size for tab status icons
Sean Egan <seanegan@gmail.com>
parents:
18822
diff
changeset
|
164 { PIDGIN_STOCK_TOOLBAR_SEND_FILE, "toolbar", "send-file.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
16007
d64602bb59d2
block and unblock have the right icons now
Nathan Walp <nwalp@pidgin.im>
parents:
15870
diff
changeset
|
165 |
19292
36316f1db621
Adds a new icon size for tab status icons
Sean Egan <seanegan@gmail.com>
parents:
18822
diff
changeset
|
166 { PIDGIN_STOCK_TRAY_AVAILABLE, "tray", "tray-online.png", FALSE, TRUE, TRUE, TRUE, TRUE, FALSE, FALSE, NULL }, |
36316f1db621
Adds a new icon size for tab status icons
Sean Egan <seanegan@gmail.com>
parents:
18822
diff
changeset
|
167 { PIDGIN_STOCK_TRAY_INVISIBLE, "tray", "tray-invisible.png", FALSE, TRUE, TRUE, TRUE, TRUE, FALSE, FALSE, NULL }, |
36316f1db621
Adds a new icon size for tab status icons
Sean Egan <seanegan@gmail.com>
parents:
18822
diff
changeset
|
168 { PIDGIN_STOCK_TRAY_AWAY, "tray", "tray-away.png", FALSE, TRUE, TRUE, TRUE, TRUE, FALSE, FALSE, NULL }, |
36316f1db621
Adds a new icon size for tab status icons
Sean Egan <seanegan@gmail.com>
parents:
18822
diff
changeset
|
169 { PIDGIN_STOCK_TRAY_BUSY, "tray", "tray-busy.png", FALSE, TRUE, TRUE, TRUE, TRUE, FALSE, FALSE, NULL }, |
36316f1db621
Adds a new icon size for tab status icons
Sean Egan <seanegan@gmail.com>
parents:
18822
diff
changeset
|
170 { PIDGIN_STOCK_TRAY_XA, "tray", "tray-extended-away.png", FALSE, TRUE, TRUE, TRUE, TRUE, FALSE, FALSE, NULL }, |
36316f1db621
Adds a new icon size for tab status icons
Sean Egan <seanegan@gmail.com>
parents:
18822
diff
changeset
|
171 { PIDGIN_STOCK_TRAY_OFFLINE, "tray", "tray-offline.png", FALSE, TRUE, TRUE, TRUE, TRUE, FALSE, FALSE, NULL }, |
36316f1db621
Adds a new icon size for tab status icons
Sean Egan <seanegan@gmail.com>
parents:
18822
diff
changeset
|
172 { PIDGIN_STOCK_TRAY_CONNECT, "tray", "tray-connecting.png", FALSE, TRUE, TRUE, TRUE, TRUE, FALSE, FALSE, NULL }, |
36316f1db621
Adds a new icon size for tab status icons
Sean Egan <seanegan@gmail.com>
parents:
18822
diff
changeset
|
173 { PIDGIN_STOCK_TRAY_PENDING, "tray", "tray-new-im.png", FALSE, TRUE, TRUE, TRUE, TRUE, FALSE, FALSE, NULL }, |
36316f1db621
Adds a new icon size for tab status icons
Sean Egan <seanegan@gmail.com>
parents:
18822
diff
changeset
|
174 { PIDGIN_STOCK_TRAY_EMAIL, "tray", "tray-message.png", FALSE, TRUE, TRUE, TRUE, TRUE, FALSE, FALSE, NULL } |
15822
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
175 }; |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
176 |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
177 static gchar * |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
178 find_file(const char *dir, const char *base) |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
179 { |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
180 char *filename; |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
181 |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
182 if (base == NULL) |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
183 return NULL; |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
184 |
15870
99b965aaf9bf
Install pixmaps to the right directories and make them load properly.
Richard Laager <rlaager@wiktel.com>
parents:
15823
diff
changeset
|
185 if (!strcmp(dir, "pidgin")) |
99b965aaf9bf
Install pixmaps to the right directories and make them load properly.
Richard Laager <rlaager@wiktel.com>
parents:
15823
diff
changeset
|
186 filename = g_build_filename(DATADIR, "pixmaps", "pidgin", base, NULL); |
15822
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
187 else |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
188 { |
15870
99b965aaf9bf
Install pixmaps to the right directories and make them load properly.
Richard Laager <rlaager@wiktel.com>
parents:
15823
diff
changeset
|
189 filename = g_build_filename(DATADIR, "pixmaps", "pidgin", dir, |
15822
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
190 base, NULL); |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
191 } |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
192 |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
193 return filename; |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
194 } |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
195 |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
196 static void |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
197 add_sized_icon(GtkIconSet *iconset, GtkIconSize sizeid, const char *dir, |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
198 gboolean rtl, const char *size, const char *file) |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
199 { |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
200 char *filename; |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
201 GtkIconSource *source; |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
202 |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
203 filename = g_build_filename(DATADIR, "pixmaps", "pidgin", dir, size, file, NULL); |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
204 source = gtk_icon_source_new(); |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
205 gtk_icon_source_set_filename(source, filename); |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
206 gtk_icon_source_set_direction(source, GTK_TEXT_DIR_LTR); |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
207 gtk_icon_source_set_direction_wildcarded(source, !rtl); |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
208 gtk_icon_source_set_size(source, sizeid); |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
209 gtk_icon_source_set_size_wildcarded(source, FALSE); |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
210 gtk_icon_source_set_state_wildcarded(source, TRUE); |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
211 gtk_icon_set_add_source(iconset, source); |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
212 gtk_icon_source_free(source); |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
213 |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
214 if (sizeid == gtk_icon_size_from_name(PIDGIN_ICON_SIZE_TANGO_EXTRA_SMALL)) { |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
215 source = gtk_icon_source_new(); |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
216 gtk_icon_source_set_filename(source, filename); |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
217 gtk_icon_source_set_direction_wildcarded(source, TRUE); |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
218 gtk_icon_source_set_size(source, GTK_ICON_SIZE_MENU); |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
219 gtk_icon_source_set_size_wildcarded(source, FALSE); |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
220 gtk_icon_source_set_state_wildcarded(source, TRUE); |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
221 gtk_icon_set_add_source(iconset, source); |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
222 gtk_icon_source_free(source); |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
223 } |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
224 g_free(filename); |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
225 |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
226 if (rtl) { |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
227 filename = g_build_filename(DATADIR, "pixmaps", "pidgin", dir, size, "rtl", file, NULL); |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
228 source = gtk_icon_source_new(); |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
229 gtk_icon_source_set_filename(source, filename); |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
230 gtk_icon_source_set_direction(source, GTK_TEXT_DIR_RTL); |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
231 gtk_icon_source_set_size(source, sizeid); |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
232 gtk_icon_source_set_size_wildcarded(source, FALSE); |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
233 gtk_icon_source_set_state_wildcarded(source, TRUE); |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
234 gtk_icon_set_add_source(iconset, source); |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
235 g_free(filename); |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
236 gtk_icon_source_free(source); |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
237 } |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
238 |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
239 |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
240 } |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
241 |
16436
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
242 /* Altered from do_colorshift in gnome-panel */ |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
243 static void |
16578
43e119f590ce
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@gmail.com>
parents:
16436
diff
changeset
|
244 do_alphashift (GdkPixbuf *dest, GdkPixbuf *src) |
16436
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
245 { |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
246 gint i, j; |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
247 gint width, height, has_alpha, srcrowstride, destrowstride; |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
248 guchar *target_pixels; |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
249 guchar *original_pixels; |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
250 guchar *pixsrc; |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
251 guchar *pixdest; |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
252 guchar a; |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
253 |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
254 has_alpha = gdk_pixbuf_get_has_alpha (src); |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
255 if (!has_alpha) |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
256 return; |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
257 |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
258 width = gdk_pixbuf_get_width (src); |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
259 height = gdk_pixbuf_get_height (src); |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
260 srcrowstride = gdk_pixbuf_get_rowstride (src); |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
261 destrowstride = gdk_pixbuf_get_rowstride (dest); |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
262 target_pixels = gdk_pixbuf_get_pixels (dest); |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
263 original_pixels = gdk_pixbuf_get_pixels (src); |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
264 |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
265 for (i = 0; i < height; i++) { |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
266 pixdest = target_pixels + i*destrowstride; |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
267 pixsrc = original_pixels + i*srcrowstride; |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
268 for (j = 0; j < width; j++) { |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
269 *(pixdest++) = *(pixsrc++); |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
270 *(pixdest++) = *(pixsrc++); |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
271 *(pixdest++) = *(pixsrc++); |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
272 a = *(pixsrc++); |
16578
43e119f590ce
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@gmail.com>
parents:
16436
diff
changeset
|
273 *(pixdest++) = a / 2; |
16436
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
274 } |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
275 } |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
276 } |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
277 |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
278 /* TODO: This is almost certainly not the best way to do this, but it's late, I'm tired, |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
279 * we're a few hours from getting this thing out, and copy/paste is EASY. |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
280 */ |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
281 static void |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
282 add_translucent_sized_icon(GtkIconSet *iconset, GtkIconSize sizeid, const char *dir, |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
283 gboolean rtl, const char *size, const char *file) |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
284 { |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
285 char *filename; |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
286 GtkIconSource *source; |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
287 GdkPixbuf *pixbuf; |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
288 |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
289 filename = g_build_filename(DATADIR, "pixmaps", "pidgin", dir, size, file, NULL); |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
290 pixbuf = gdk_pixbuf_new_from_file(filename, NULL); |
16578
43e119f590ce
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@gmail.com>
parents:
16436
diff
changeset
|
291 do_alphashift(pixbuf, pixbuf); |
16436
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
292 |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
293 source = gtk_icon_source_new(); |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
294 gtk_icon_source_set_pixbuf(source, pixbuf); |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
295 gtk_icon_source_set_direction(source, GTK_TEXT_DIR_LTR); |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
296 gtk_icon_source_set_direction_wildcarded(source, !rtl); |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
297 gtk_icon_source_set_size(source, sizeid); |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
298 gtk_icon_source_set_size_wildcarded(source, FALSE); |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
299 gtk_icon_source_set_state_wildcarded(source, TRUE); |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
300 gtk_icon_set_add_source(iconset, source); |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
301 gtk_icon_source_free(source); |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
302 |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
303 if (sizeid == gtk_icon_size_from_name(PIDGIN_ICON_SIZE_TANGO_EXTRA_SMALL)) { |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
304 source = gtk_icon_source_new(); |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
305 gtk_icon_source_set_pixbuf(source, pixbuf); |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
306 gtk_icon_source_set_direction_wildcarded(source, TRUE); |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
307 gtk_icon_source_set_size(source, GTK_ICON_SIZE_MENU); |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
308 gtk_icon_source_set_size_wildcarded(source, FALSE); |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
309 gtk_icon_source_set_state_wildcarded(source, TRUE); |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
310 gtk_icon_set_add_source(iconset, source); |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
311 gtk_icon_source_free(source); |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
312 } |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
313 g_free(filename); |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
314 g_object_unref(pixbuf); |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
315 |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
316 if (rtl) { |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
317 filename = g_build_filename(DATADIR, "pixmaps", "pidgin", dir, size, "rtl", file, NULL); |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
318 pixbuf = gdk_pixbuf_new_from_file(filename, NULL); |
16578
43e119f590ce
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@gmail.com>
parents:
16436
diff
changeset
|
319 do_alphashift(pixbuf, pixbuf); |
16436
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
320 source = gtk_icon_source_new(); |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
321 gtk_icon_source_set_pixbuf(source, pixbuf); |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
322 gtk_icon_source_set_direction(source, GTK_TEXT_DIR_RTL); |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
323 gtk_icon_source_set_size(source, sizeid); |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
324 gtk_icon_source_set_size_wildcarded(source, FALSE); |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
325 gtk_icon_source_set_state_wildcarded(source, TRUE); |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
326 gtk_icon_set_add_source(iconset, source); |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
327 g_free(filename); |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
328 g_object_unref(pixbuf); |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
329 gtk_icon_source_free(source); |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
330 } |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
331 |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
332 |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
333 } |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
334 |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
335 |
15822
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
336 void |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
337 pidgin_stock_init(void) |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
338 { |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
339 static gboolean stock_initted = FALSE; |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
340 GtkIconFactory *icon_factory; |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
341 size_t i; |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
342 GtkWidget *win; |
19292
36316f1db621
Adds a new icon size for tab status icons
Sean Egan <seanegan@gmail.com>
parents:
18822
diff
changeset
|
343 GtkIconSize microscopic, extra_small, small, medium, large, huge; |
15822
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
344 |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
345 if (stock_initted) |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
346 return; |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
347 |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
348 stock_initted = TRUE; |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
349 |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
350 /* Setup the icon factory. */ |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
351 icon_factory = gtk_icon_factory_new(); |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
352 |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
353 gtk_icon_factory_add_default(icon_factory); |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
354 |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
355 /* Er, yeah, a hack, but it works. :) */ |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
356 win = gtk_window_new(GTK_WINDOW_TOPLEVEL); |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
357 gtk_widget_realize(win); |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
358 |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
359 for (i = 0; i < G_N_ELEMENTS(stock_icons); i++) |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
360 { |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
361 GtkIconSource *source; |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
362 GtkIconSet *iconset; |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
363 gchar *filename; |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
364 |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
365 if (stock_icons[i].dir == NULL) |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
366 { |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
367 /* GTK+ Stock icon */ |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
368 iconset = gtk_style_lookup_icon_set(gtk_widget_get_style(win), |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
369 stock_icons[i].filename); |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
370 } |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
371 else |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
372 { |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
373 filename = find_file(stock_icons[i].dir, stock_icons[i].filename); |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
374 |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
375 if (filename == NULL) |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
376 continue; |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
377 |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
378 source = gtk_icon_source_new(); |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
379 gtk_icon_source_set_filename(source, filename); |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
380 gtk_icon_source_set_direction_wildcarded(source, TRUE); |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
381 gtk_icon_source_set_size_wildcarded(source, TRUE); |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
382 gtk_icon_source_set_state_wildcarded(source, TRUE); |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
383 |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
384 |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
385 iconset = gtk_icon_set_new(); |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
386 gtk_icon_set_add_source(iconset, source); |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
387 |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
388 gtk_icon_source_free(source); |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
389 g_free(filename); |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
390 } |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
391 |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
392 gtk_icon_factory_add(icon_factory, stock_icons[i].name, iconset); |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
393 |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
394 gtk_icon_set_unref(iconset); |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
395 } |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
396 |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
397 /* register custom icon sizes */ |
19292
36316f1db621
Adds a new icon size for tab status icons
Sean Egan <seanegan@gmail.com>
parents:
18822
diff
changeset
|
398 |
36316f1db621
Adds a new icon size for tab status icons
Sean Egan <seanegan@gmail.com>
parents:
18822
diff
changeset
|
399 microscopic = gtk_icon_size_register("pidgin-icon-size-tango-microscopic", 11, 11); |
15822
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
400 extra_small = gtk_icon_size_register(PIDGIN_ICON_SIZE_TANGO_EXTRA_SMALL, 16, 16); |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
401 small = gtk_icon_size_register(PIDGIN_ICON_SIZE_TANGO_SMALL, 22, 22); |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
402 medium = gtk_icon_size_register(PIDGIN_ICON_SIZE_TANGO_MEDIUM, 32, 32); |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
403 large = gtk_icon_size_register(PIDGIN_ICON_SIZE_TANGO_LARGE, 48, 48); |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
404 huge = gtk_icon_size_register(PIDGIN_ICON_SIZE_TANGO_HUGE, 64, 64); |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
405 |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
406 for (i = 0; i < G_N_ELEMENTS(sized_stock_icons); i++) |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
407 { |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
408 GtkIconSet *iconset; |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
409 |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
410 iconset = gtk_icon_set_new(); |
19292
36316f1db621
Adds a new icon size for tab status icons
Sean Egan <seanegan@gmail.com>
parents:
18822
diff
changeset
|
411 if (sized_stock_icons[i].microscopic) |
36316f1db621
Adds a new icon size for tab status icons
Sean Egan <seanegan@gmail.com>
parents:
18822
diff
changeset
|
412 add_sized_icon(iconset, microscopic, |
36316f1db621
Adds a new icon size for tab status icons
Sean Egan <seanegan@gmail.com>
parents:
18822
diff
changeset
|
413 sized_stock_icons[i].dir, sized_stock_icons[i].rtl, |
36316f1db621
Adds a new icon size for tab status icons
Sean Egan <seanegan@gmail.com>
parents:
18822
diff
changeset
|
414 "11", sized_stock_icons[i].filename); |
15822
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
415 if (sized_stock_icons[i].extra_small) |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
416 add_sized_icon(iconset, extra_small, |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
417 sized_stock_icons[i].dir, sized_stock_icons[i].rtl, |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
418 "16", sized_stock_icons[i].filename); |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
419 if (sized_stock_icons[i].small) |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
420 add_sized_icon(iconset, small, |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
421 sized_stock_icons[i].dir, sized_stock_icons[i].rtl, |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
422 "22", sized_stock_icons[i].filename); |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
423 if (sized_stock_icons[i].medium) |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
424 add_sized_icon(iconset, medium, |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
425 sized_stock_icons[i].dir, sized_stock_icons[i].rtl, |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
426 "32", sized_stock_icons[i].filename); |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
427 if (sized_stock_icons[i].large) |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
428 add_sized_icon(iconset, large, |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
429 sized_stock_icons[i].dir, sized_stock_icons[i].rtl, |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
430 "48", sized_stock_icons[i].filename); |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
431 if (sized_stock_icons[i].huge) |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
432 add_sized_icon(iconset, huge, |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
433 sized_stock_icons[i].dir, sized_stock_icons[i].rtl, |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
434 "64", sized_stock_icons[i].filename); |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
435 |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
436 gtk_icon_factory_add(icon_factory, sized_stock_icons[i].name, iconset); |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
437 gtk_icon_set_unref(iconset); |
16436
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
438 |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
439 if (sized_stock_icons[i].translucent_name) { |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
440 iconset = gtk_icon_set_new(); |
19293 | 441 if (sized_stock_icons[i].microscopic) |
442 add_translucent_sized_icon(iconset, microscopic, | |
443 sized_stock_icons[i].dir, sized_stock_icons[i].rtl, | |
444 "11", sized_stock_icons[i].filename); | |
16436
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
445 if (sized_stock_icons[i].extra_small) |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
446 add_translucent_sized_icon(iconset, extra_small, |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
447 sized_stock_icons[i].dir, sized_stock_icons[i].rtl, |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
448 "16", sized_stock_icons[i].filename); |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
449 if (sized_stock_icons[i].small) |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
450 add_translucent_sized_icon(iconset, small, |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
451 sized_stock_icons[i].dir, sized_stock_icons[i].rtl, |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
452 "22", sized_stock_icons[i].filename); |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
453 if (sized_stock_icons[i].medium) |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
454 add_translucent_sized_icon(iconset, medium, |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
455 sized_stock_icons[i].dir, sized_stock_icons[i].rtl, |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
456 "32", sized_stock_icons[i].filename); |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
457 if (sized_stock_icons[i].large) |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
458 add_translucent_sized_icon(iconset, large, |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
459 sized_stock_icons[i].dir, sized_stock_icons[i].rtl, |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
460 "48", sized_stock_icons[i].filename); |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
461 if (sized_stock_icons[i].huge) |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
462 add_translucent_sized_icon(iconset, huge, |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
463 sized_stock_icons[i].dir, sized_stock_icons[i].rtl, |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
464 "64", sized_stock_icons[i].filename); |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
465 |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
466 gtk_icon_factory_add(icon_factory, sized_stock_icons[i].translucent_name, iconset); |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
467 gtk_icon_set_unref(iconset); |
c0c5f07027ff
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@gmail.com>
parents:
16356
diff
changeset
|
468 } |
15822
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
469 } |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
470 |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
471 gtk_widget_destroy(win); |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
472 g_object_unref(G_OBJECT(icon_factory)); |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
473 |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
474 /* Register the stock items. */ |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
475 gtk_stock_add_static(stock_items, G_N_ELEMENTS(stock_items)); |
84b0f9b23ede
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
476 } |