Wed, 21 Sep 2011 06:45:26 +0000
Apply conversation theme when opening the GTK conversation. All the
parsing stuff was moved out of the theme code and into the conversation
code.
Someone (not me!) needs to check the code I commented out and see if
we really need that stuff (and then port it to WebKit/styling).
We also need to determine where to place Template.html and the rest
of our (not-yet-written) default theme.
| 10297 | 1 | /** |
|
15930
d851247cb931
Install pixmaps to the right directories and make them load properly.
Richard Laager <rlaager@pidgin.im>
parents:
15914
diff
changeset
|
2 | * @file pidginstock.c GTK+ Stock resources |
|
16254
eeb2bba4dc94
Rename the Doxygen group from gtkui to pidgin.
Richard Laager <rlaager@pidgin.im>
parents:
16068
diff
changeset
|
3 | * @ingroup pidgin |
|
20147
66f05a854eee
applied changes from 8a731bbd0197fbcc91a705c2d8f528154216defa
Richard Laager <rlaager@pidgin.im>
parents:
19859
diff
changeset
|
4 | */ |
|
66f05a854eee
applied changes from 8a731bbd0197fbcc91a705c2d8f528154216defa
Richard Laager <rlaager@pidgin.im>
parents:
19859
diff
changeset
|
5 | |
|
66f05a854eee
applied changes from 8a731bbd0197fbcc91a705c2d8f528154216defa
Richard Laager <rlaager@pidgin.im>
parents:
19859
diff
changeset
|
6 | /* pidgin |
| 10297 | 7 | * |
|
15930
d851247cb931
Install pixmaps to the right directories and make them load properly.
Richard Laager <rlaager@pidgin.im>
parents:
15914
diff
changeset
|
8 | * Pidgin is the legal property of its developers, whose names are too numerous |
| 10297 | 9 | * to list here. Please refer to the COPYRIGHT file distributed with this |
| 10 | * source distribution. | |
| 11 | * | |
| 12 | * This program is free software; you can redistribute it and/or modify | |
| 13 | * it under the terms of the GNU General Public License as published by | |
| 14 | * the Free Software Foundation; either version 2 of the License, or | |
| 15 | * (at your option) any later version. | |
| 16 | * | |
| 17 | * This program is distributed in the hope that it will be useful, | |
| 18 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
| 19 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
| 20 | * GNU General Public License for more details. | |
| 21 | * | |
| 22 | * You should have received a copy of the GNU General Public License | |
| 23 | * along with this program; if not, write to the Free Software | |
|
19859
71d37b57eff2
The FSF changed its address a while ago; our files were out of date.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
19667
diff
changeset
|
24 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA |
| 10297 | 25 | * |
| 26 | */ | |
| 27 | #include "internal.h" | |
| 15577 | 28 | #include "pidgin.h" |
|
23964
342e3f5bedd9
partially working status icon theme stuff
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23423
diff
changeset
|
29 | #include "prefs.h" |
|
342e3f5bedd9
partially working status icon theme stuff
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23423
diff
changeset
|
30 | |
|
24377
8d0bfda8402d
renamed gtkblist-loader.[ch] to gtblist-theme-loader.[ch]
Gary Kramlich <grim@reaperworld.com>
parents:
24376
diff
changeset
|
31 | #include "gtkicon-theme-loader.h" |
|
23964
342e3f5bedd9
partially working status icon theme stuff
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23423
diff
changeset
|
32 | #include "theme-manager.h" |
| 10297 | 33 | |
|
15883
969b74a3e27a
According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@pidgin.im>
parents:
15834
diff
changeset
|
34 | #include "pidginstock.h" |
| 10297 | 35 | |
|
23964
342e3f5bedd9
partially working status icon theme stuff
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23423
diff
changeset
|
36 | /************************************************************************** |
|
342e3f5bedd9
partially working status icon theme stuff
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23423
diff
changeset
|
37 | * Globals |
|
342e3f5bedd9
partially working status icon theme stuff
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23423
diff
changeset
|
38 | **************************************************************************/ |
|
342e3f5bedd9
partially working status icon theme stuff
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23423
diff
changeset
|
39 | |
|
342e3f5bedd9
partially working status icon theme stuff
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23423
diff
changeset
|
40 | static gboolean stock_initted = FALSE; |
|
342e3f5bedd9
partially working status icon theme stuff
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23423
diff
changeset
|
41 | static GtkIconSize microscopic, extra_small, small, medium, large, huge; |
|
342e3f5bedd9
partially working status icon theme stuff
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23423
diff
changeset
|
42 | |
|
342e3f5bedd9
partially working status icon theme stuff
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23423
diff
changeset
|
43 | /************************************************************************** |
|
342e3f5bedd9
partially working status icon theme stuff
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23423
diff
changeset
|
44 | * Structures |
|
342e3f5bedd9
partially working status icon theme stuff
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23423
diff
changeset
|
45 | **************************************************************************/ |
|
342e3f5bedd9
partially working status icon theme stuff
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23423
diff
changeset
|
46 | |
| 10297 | 47 | static struct StockIcon |
| 48 | { | |
| 49 | const char *name; | |
| 50 | const char *dir; | |
| 51 | const char *filename; | |
| 52 | ||
|
23964
342e3f5bedd9
partially working status icon theme stuff
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23423
diff
changeset
|
53 | } const stock_icons[] = { |
|
342e3f5bedd9
partially working status icon theme stuff
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23423
diff
changeset
|
54 | |
| 15570 | 55 | { PIDGIN_STOCK_ACTION, NULL, GTK_STOCK_EXECUTE }, |
| 56 | { PIDGIN_STOCK_ALIAS, NULL, GTK_STOCK_EDIT }, | |
| 57 | { PIDGIN_STOCK_CHAT, NULL, GTK_STOCK_JUMP_TO }, | |
| 58 | { PIDGIN_STOCK_CLEAR, NULL, GTK_STOCK_CLEAR }, | |
|
19117
c55d71840e82
Remove reference to close-tab.png
Sean Egan <seanegan@pidgin.im>
parents:
19092
diff
changeset
|
59 | { PIDGIN_STOCK_CLOSE_TABS, NULL, GTK_STOCK_CLOSE }, |
| 15570 | 60 | { PIDGIN_STOCK_DEBUG, NULL, GTK_STOCK_PROPERTIES }, |
| 61 | { PIDGIN_STOCK_DOWNLOAD, NULL, GTK_STOCK_GO_DOWN }, | |
| 62 | { PIDGIN_STOCK_DISCONNECT, NULL, GTK_STOCK_DISCONNECT }, | |
| 63 | { PIDGIN_STOCK_FGCOLOR, "buttons", "change-fgcolor-small.png" }, | |
| 64 | { PIDGIN_STOCK_EDIT, NULL, GTK_STOCK_EDIT }, | |
| 65 | { PIDGIN_STOCK_FILE_CANCELED, NULL, GTK_STOCK_CANCEL }, | |
| 66 | { PIDGIN_STOCK_FILE_DONE, NULL, GTK_STOCK_APPLY }, | |
| 67 | { PIDGIN_STOCK_IGNORE, NULL, GTK_STOCK_DIALOG_ERROR }, | |
| 68 | { PIDGIN_STOCK_INVITE, NULL, GTK_STOCK_JUMP_TO }, | |
| 69 | { PIDGIN_STOCK_MODIFY, NULL, GTK_STOCK_PREFERENCES }, | |
|
24594
b2da1decae23
Add an ellipsis to the "Add" and "Modify" buttons in the accounts, pounces, and
Alex Willmer <alex@moreati.org.uk>
parents:
24154
diff
changeset
|
70 | { PIDGIN_STOCK_ADD, NULL, GTK_STOCK_ADD }, |
| 15570 | 71 | { PIDGIN_STOCK_PAUSE, NULL, GTK_STOCK_MEDIA_PAUSE }, |
| 72 | { PIDGIN_STOCK_POUNCE, NULL, GTK_STOCK_REDO }, | |
| 73 | { PIDGIN_STOCK_OPEN_MAIL, NULL, GTK_STOCK_JUMP_TO }, | |
| 74 | { PIDGIN_STOCK_SIGN_ON, NULL, GTK_STOCK_EXECUTE }, | |
| 75 | { PIDGIN_STOCK_SIGN_OFF, NULL, GTK_STOCK_CLOSE }, | |
|
15930
d851247cb931
Install pixmaps to the right directories and make them load properly.
Richard Laager <rlaager@pidgin.im>
parents:
15914
diff
changeset
|
76 | { PIDGIN_STOCK_TYPED, "pidgin", "typed.png" }, |
| 15570 | 77 | { PIDGIN_STOCK_UPLOAD, NULL, GTK_STOCK_GO_UP }, |
|
19667
4a8d8a6bd2b0
Make the gtkcert stuff compile on GTK+ older than 2.8
Daniel Atallah <datallah@pidgin.im>
parents:
19651
diff
changeset
|
78 | { PIDGIN_STOCK_INFO, NULL, GTK_STOCK_INFO }, |
| 10297 | 79 | }; |
| 80 | ||
|
10871
c0282a4f2250
[gaim-migrate @ 12558]
Mark Doliner <markdoliner@pidgin.im>
parents:
10643
diff
changeset
|
81 | static const GtkStockItem stock_items[] = |
| 10297 | 82 | { |
|
15623
bf485c598199
toolbar/menu icons. reduce the imhtmltoolbar spacing. more gaimstock pruning
Sean Egan <seanegan@pidgin.im>
parents:
15577
diff
changeset
|
83 | { PIDGIN_STOCK_ALIAS, N_("_Alias"), 0, 0, NULL }, |
|
bf485c598199
toolbar/menu icons. reduce the imhtmltoolbar spacing. more gaimstock pruning
Sean Egan <seanegan@pidgin.im>
parents:
15577
diff
changeset
|
84 | { PIDGIN_STOCK_CHAT, N_("_Join"), 0, 0, NULL }, |
|
bf485c598199
toolbar/menu icons. reduce the imhtmltoolbar spacing. more gaimstock pruning
Sean Egan <seanegan@pidgin.im>
parents:
15577
diff
changeset
|
85 | { PIDGIN_STOCK_CLOSE_TABS, N_("Close _tabs"), 0, 0, NULL }, |
|
bf485c598199
toolbar/menu icons. reduce the imhtmltoolbar spacing. more gaimstock pruning
Sean Egan <seanegan@pidgin.im>
parents:
15577
diff
changeset
|
86 | { PIDGIN_STOCK_TOOLBAR_MESSAGE_NEW, N_("I_M"), 0, 0, NULL }, |
|
bf485c598199
toolbar/menu icons. reduce the imhtmltoolbar spacing. more gaimstock pruning
Sean Egan <seanegan@pidgin.im>
parents:
15577
diff
changeset
|
87 | { PIDGIN_STOCK_TOOLBAR_USER_INFO, N_("_Get Info"), 0, 0, NULL }, |
|
bf485c598199
toolbar/menu icons. reduce the imhtmltoolbar spacing. more gaimstock pruning
Sean Egan <seanegan@pidgin.im>
parents:
15577
diff
changeset
|
88 | { PIDGIN_STOCK_INVITE, N_("_Invite"), 0, 0, NULL }, |
|
24594
b2da1decae23
Add an ellipsis to the "Add" and "Modify" buttons in the accounts, pounces, and
Alex Willmer <alex@moreati.org.uk>
parents:
24154
diff
changeset
|
89 | { PIDGIN_STOCK_MODIFY, N_("_Modify..."), 0, 0, NULL }, |
|
b2da1decae23
Add an ellipsis to the "Add" and "Modify" buttons in the accounts, pounces, and
Alex Willmer <alex@moreati.org.uk>
parents:
24154
diff
changeset
|
90 | { PIDGIN_STOCK_ADD, N_("_Add..."), 0, 0, NULL }, |
|
15623
bf485c598199
toolbar/menu icons. reduce the imhtmltoolbar spacing. more gaimstock pruning
Sean Egan <seanegan@pidgin.im>
parents:
15577
diff
changeset
|
91 | { PIDGIN_STOCK_OPEN_MAIL, N_("_Open Mail"), 0, 0, NULL }, |
|
bf485c598199
toolbar/menu icons. reduce the imhtmltoolbar spacing. more gaimstock pruning
Sean Egan <seanegan@pidgin.im>
parents:
15577
diff
changeset
|
92 | { PIDGIN_STOCK_PAUSE, N_("_Pause"), 0, 0, NULL }, |
|
24154
22266374cb19
Show 'Edit' instead of 'pidgin-edit' in the edit buttons. Fixes #6742
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
24147
diff
changeset
|
93 | { PIDGIN_STOCK_EDIT, N_("_Edit"), 0, 0, NULL } |
| 10297 | 94 | }; |
| 95 | ||
| 26338 | 96 | typedef struct { |
|
27262
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
97 | const char *name; |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
98 | const char *dir; |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
99 | const char *filename; |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
100 | gboolean microscopic; |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
101 | gboolean extra_small; |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
102 | gboolean small; |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
103 | gboolean medium; |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
104 | gboolean large; |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
105 | gboolean huge; |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
106 | gboolean rtl; |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
107 | const char *translucent_name; |
| 26338 | 108 | } SizedStockIcon; |
| 109 | ||
| 110 | const SizedStockIcon sized_stock_icons [] = { | |
| 111 | ||
|
27262
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
112 | { PIDGIN_STOCK_STATUS_IGNORED, "emblems", "blocked.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
113 | { PIDGIN_STOCK_STATUS_FOUNDER, "emblems", "founder.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
114 | { PIDGIN_STOCK_STATUS_OPERATOR, "emblems", "operator.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
115 | { PIDGIN_STOCK_STATUS_HALFOP, "emblems", "half-operator.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
116 | { PIDGIN_STOCK_STATUS_VOICE, "emblems", "voice.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
| 15497 | 117 | |
|
27262
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
118 | { PIDGIN_STOCK_DIALOG_AUTH, "dialogs", "auth.png", FALSE, TRUE, FALSE, FALSE, FALSE, TRUE, FALSE, NULL }, |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
119 | { PIDGIN_STOCK_DIALOG_COOL, "dialogs", "cool.png", FALSE, FALSE, FALSE, FALSE, FALSE, TRUE, FALSE, NULL }, |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
120 | { PIDGIN_STOCK_DIALOG_ERROR, "dialogs", "error.png", FALSE, TRUE, FALSE, FALSE, FALSE, TRUE, FALSE, NULL }, |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
121 | { PIDGIN_STOCK_DIALOG_INFO, "dialogs", "info.png", FALSE, TRUE, FALSE, FALSE, FALSE, TRUE, FALSE, NULL }, |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
122 | { PIDGIN_STOCK_DIALOG_MAIL, "dialogs", "mail.png", FALSE, TRUE, FALSE, FALSE, FALSE, TRUE, FALSE, NULL }, |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
123 | { PIDGIN_STOCK_DIALOG_QUESTION, "dialogs", "question.png", FALSE, TRUE, FALSE, FALSE, FALSE, TRUE, FALSE, NULL }, |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
124 | { PIDGIN_STOCK_DIALOG_WARNING, "dialogs", "warning.png", FALSE, FALSE, FALSE, FALSE, FALSE, TRUE, FALSE, NULL }, |
|
15519
82e4cfb65343
Finish converting the statusbox. Note the connecting and animation icons are too large. I put out a request to Hylke.
Sean Egan <seanegan@pidgin.im>
parents:
15500
diff
changeset
|
125 | |
|
27262
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
126 | { PIDGIN_STOCK_ANIMATION_CONNECT0, "animations", "process-working0.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
127 | { PIDGIN_STOCK_ANIMATION_CONNECT1, "animations", "process-working1.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
128 | { PIDGIN_STOCK_ANIMATION_CONNECT2, "animations", "process-working2.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
129 | { PIDGIN_STOCK_ANIMATION_CONNECT3, "animations", "process-working3.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
130 | { PIDGIN_STOCK_ANIMATION_CONNECT4, "animations", "process-working4.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
131 | { PIDGIN_STOCK_ANIMATION_CONNECT5, "animations", "process-working5.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
132 | { PIDGIN_STOCK_ANIMATION_CONNECT6, "animations", "process-working6.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
133 | { PIDGIN_STOCK_ANIMATION_CONNECT7, "animations", "process-working7.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
134 | { PIDGIN_STOCK_ANIMATION_CONNECT8, "animations", "process-working8.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
135 | { PIDGIN_STOCK_ANIMATION_CONNECT9, "animations", "process-working9.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
136 | { PIDGIN_STOCK_ANIMATION_CONNECT10, "animations", "process-working10.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
137 | { PIDGIN_STOCK_ANIMATION_CONNECT11, "animations", "process-working11.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
138 | { PIDGIN_STOCK_ANIMATION_CONNECT12, "animations", "process-working12.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
139 | { PIDGIN_STOCK_ANIMATION_CONNECT13, "animations", "process-working13.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
140 | { PIDGIN_STOCK_ANIMATION_CONNECT14, "animations", "process-working14.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
141 | { PIDGIN_STOCK_ANIMATION_CONNECT15, "animations", "process-working15.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
142 | { PIDGIN_STOCK_ANIMATION_CONNECT16, "animations", "process-working16.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
143 | { PIDGIN_STOCK_ANIMATION_CONNECT17, "animations", "process-working17.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
144 | { PIDGIN_STOCK_ANIMATION_CONNECT18, "animations", "process-working18.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
145 | { PIDGIN_STOCK_ANIMATION_CONNECT19, "animations", "process-working19.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
146 | { PIDGIN_STOCK_ANIMATION_CONNECT20, "animations", "process-working20.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
147 | { PIDGIN_STOCK_ANIMATION_CONNECT21, "animations", "process-working21.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
148 | { PIDGIN_STOCK_ANIMATION_CONNECT22, "animations", "process-working22.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
149 | { PIDGIN_STOCK_ANIMATION_CONNECT23, "animations", "process-working23.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
150 | { PIDGIN_STOCK_ANIMATION_CONNECT24, "animations", "process-working24.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
151 | { PIDGIN_STOCK_ANIMATION_CONNECT25, "animations", "process-working25.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
152 | { PIDGIN_STOCK_ANIMATION_CONNECT26, "animations", "process-working26.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
153 | { PIDGIN_STOCK_ANIMATION_CONNECT27, "animations", "process-working27.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
154 | { PIDGIN_STOCK_ANIMATION_CONNECT28, "animations", "process-working28.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
155 | { PIDGIN_STOCK_ANIMATION_CONNECT29, "animations", "process-working29.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
156 | { PIDGIN_STOCK_ANIMATION_CONNECT30, "animations", "process-working30.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
|
15623
bf485c598199
toolbar/menu icons. reduce the imhtmltoolbar spacing. more gaimstock pruning
Sean Egan <seanegan@pidgin.im>
parents:
15577
diff
changeset
|
157 | |
|
27262
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
158 | { PIDGIN_STOCK_ANIMATION_TYPING0, "animations", "typing0.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
159 | { PIDGIN_STOCK_ANIMATION_TYPING1, "animations", "typing1.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
160 | { PIDGIN_STOCK_ANIMATION_TYPING2, "animations", "typing2.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
161 | { PIDGIN_STOCK_ANIMATION_TYPING3, "animations", "typing3.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
162 | { PIDGIN_STOCK_ANIMATION_TYPING4, "animations", "typing4.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
163 | { PIDGIN_STOCK_ANIMATION_TYPING5, "animations", "typing5.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
164 | |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
165 | { PIDGIN_STOCK_TOOLBAR_BGCOLOR, "toolbar", "change-bgcolor.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
166 | { PIDGIN_STOCK_TOOLBAR_BLOCK, "emblems", "blocked.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
167 | { PIDGIN_STOCK_TOOLBAR_FGCOLOR, "toolbar", "change-fgcolor.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
168 | { PIDGIN_STOCK_TOOLBAR_SMILEY, "toolbar", "emote-select.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
169 | { PIDGIN_STOCK_TOOLBAR_FONT_FACE, "toolbar", "font-face.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
170 | { PIDGIN_STOCK_TOOLBAR_TEXT_SMALLER, "toolbar", "font-size-down.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
171 | { PIDGIN_STOCK_TOOLBAR_TEXT_LARGER, "toolbar", "font-size-up.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
172 | { PIDGIN_STOCK_TOOLBAR_INSERT, "toolbar", "insert.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
173 | { PIDGIN_STOCK_TOOLBAR_INSERT_IMAGE, "toolbar", "insert-image.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
174 | { PIDGIN_STOCK_TOOLBAR_INSERT_LINK, "toolbar", "insert-link.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
175 | { PIDGIN_STOCK_TOOLBAR_MESSAGE_NEW, "toolbar", "message-new.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
176 | { PIDGIN_STOCK_TOOLBAR_PENDING, "toolbar", "message-new.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
177 | { PIDGIN_STOCK_TOOLBAR_PLUGINS, "toolbar", "plugins.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
178 | { PIDGIN_STOCK_TOOLBAR_UNBLOCK, "toolbar", "unblock.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
179 | { PIDGIN_STOCK_TOOLBAR_SELECT_AVATAR, "toolbar", "select-avatar.png", FALSE, FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, NULL }, |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
180 | { PIDGIN_STOCK_TOOLBAR_SEND_FILE, "toolbar", "send-file.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
181 | { PIDGIN_STOCK_TOOLBAR_TRANSFER, "toolbar", "transfer.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
| 26338 | 182 | #ifdef USE_VV |
|
27910
f72e8440bd9b
Check in updated icons, logo, and new voice/video icons from Hylke.
Paul Aurich <darkrain42@pidgin.im>
parents:
27262
diff
changeset
|
183 | { PIDGIN_STOCK_TOOLBAR_AUDIO_CALL, "toolbar", "audio-call.png", FALSE, TRUE, TRUE, TRUE, TRUE, FALSE, FALSE, NULL }, |
|
f72e8440bd9b
Check in updated icons, logo, and new voice/video icons from Hylke.
Paul Aurich <darkrain42@pidgin.im>
parents:
27262
diff
changeset
|
184 | { PIDGIN_STOCK_TOOLBAR_VIDEO_CALL, "toolbar", "video-call.png", FALSE, TRUE, TRUE, TRUE, TRUE, FALSE, FALSE, NULL }, |
|
27262
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
185 | { PIDGIN_STOCK_TOOLBAR_AUDIO_VIDEO_CALL, "toolbar", "audio-video-call.png", FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL }, |
| 26338 | 186 | #endif |
|
26048
9eeed41d0004
Make it work again after the merge from i.p.p.... :)
Marcus Lundblad <malu@pidgin.im>
parents:
26047
diff
changeset
|
187 | { PIDGIN_STOCK_TOOLBAR_SEND_ATTENTION, "toolbar", "get-attention.png", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL } |
|
15458
39c79dc7c965
A lot of status icon changes:
Sean Egan <seanegan@pidgin.im>
parents:
15435
diff
changeset
|
188 | }; |
|
39c79dc7c965
A lot of status icon changes:
Sean Egan <seanegan@pidgin.im>
parents:
15435
diff
changeset
|
189 | |
|
23964
342e3f5bedd9
partially working status icon theme stuff
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23423
diff
changeset
|
190 | const SizedStockIcon sized_status_icons [] = { |
|
16068
b1dac315ed09
block and unblock have the right icons now
Nathan Walp <nwalp@pidgin.im>
parents:
15930
diff
changeset
|
191 | |
|
27262
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
192 | { PIDGIN_STOCK_STATUS_AVAILABLE, "status", "available.png", TRUE, TRUE, TRUE, TRUE, TRUE, FALSE, FALSE, PIDGIN_STOCK_STATUS_AVAILABLE_I }, |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
193 | { PIDGIN_STOCK_STATUS_AWAY, "status", "away.png", TRUE, TRUE, TRUE, TRUE, TRUE, FALSE, FALSE, PIDGIN_STOCK_STATUS_AWAY_I }, |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
194 | { PIDGIN_STOCK_STATUS_BUSY, "status", "busy.png", TRUE, TRUE, TRUE, TRUE, TRUE, FALSE, FALSE, PIDGIN_STOCK_STATUS_BUSY_I }, |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
195 | { PIDGIN_STOCK_STATUS_CHAT, "status", "chat.png", TRUE, TRUE, TRUE, TRUE, TRUE, FALSE, FALSE, NULL }, |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
196 | { PIDGIN_STOCK_STATUS_INVISIBLE, "status", "invisible.png", TRUE, TRUE, TRUE, TRUE, TRUE, FALSE, FALSE, NULL }, |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
197 | { PIDGIN_STOCK_STATUS_XA, "status", "extended-away.png", TRUE, TRUE, TRUE, TRUE, TRUE, FALSE, TRUE, PIDGIN_STOCK_STATUS_XA_I }, |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
198 | { PIDGIN_STOCK_STATUS_LOGIN, "status", "log-in.png", TRUE, TRUE, TRUE, TRUE, TRUE, FALSE, TRUE, NULL }, |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
199 | { PIDGIN_STOCK_STATUS_LOGOUT, "status", "log-out.png", TRUE, TRUE, TRUE, TRUE, TRUE, FALSE, TRUE, NULL }, |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
200 | { PIDGIN_STOCK_STATUS_OFFLINE, "status", "offline.png", TRUE, TRUE, TRUE, TRUE, TRUE, FALSE, FALSE, PIDGIN_STOCK_STATUS_OFFLINE_I }, |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
201 | { PIDGIN_STOCK_STATUS_PERSON, "status", "person.png", TRUE, TRUE, TRUE, TRUE, TRUE, FALSE, FALSE, NULL }, |
|
29641
e54552cf87d8
Use GtkStatusIcon on GTK+ 2.10+. That's actually the required version for
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29514
diff
changeset
|
202 | { PIDGIN_STOCK_STATUS_MESSAGE, "toolbar", "message-new.png", TRUE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL } |
|
e54552cf87d8
Use GtkStatusIcon on GTK+ 2.10+. That's actually the required version for
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29514
diff
changeset
|
203 | }; |
|
e54552cf87d8
Use GtkStatusIcon on GTK+ 2.10+. That's actually the required version for
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29514
diff
changeset
|
204 | |
|
e54552cf87d8
Use GtkStatusIcon on GTK+ 2.10+. That's actually the required version for
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29514
diff
changeset
|
205 | const SizedStockIcon sized_tray_icons [] = { |
|
29707
f9d7d4373550
Make sure that the stock loader uses the new location of the tray icons
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29705
diff
changeset
|
206 | #define SIZED_TRAY_ICON(name) \ |
|
f9d7d4373550
Make sure that the stock loader uses the new location of the tray icons
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29705
diff
changeset
|
207 | { name, "tray/hicolor", "status/" name ".png", FALSE, TRUE, TRUE, TRUE, TRUE, FALSE, FALSE, NULL } |
|
f9d7d4373550
Make sure that the stock loader uses the new location of the tray icons
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29705
diff
changeset
|
208 | SIZED_TRAY_ICON( PIDGIN_STOCK_TRAY_AVAILABLE ), |
|
f9d7d4373550
Make sure that the stock loader uses the new location of the tray icons
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29705
diff
changeset
|
209 | SIZED_TRAY_ICON( PIDGIN_STOCK_TRAY_INVISIBLE ), |
|
f9d7d4373550
Make sure that the stock loader uses the new location of the tray icons
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29705
diff
changeset
|
210 | SIZED_TRAY_ICON( PIDGIN_STOCK_TRAY_AWAY ), |
|
f9d7d4373550
Make sure that the stock loader uses the new location of the tray icons
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29705
diff
changeset
|
211 | SIZED_TRAY_ICON( PIDGIN_STOCK_TRAY_BUSY ), |
|
f9d7d4373550
Make sure that the stock loader uses the new location of the tray icons
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29705
diff
changeset
|
212 | SIZED_TRAY_ICON( PIDGIN_STOCK_TRAY_XA ), |
|
f9d7d4373550
Make sure that the stock loader uses the new location of the tray icons
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29705
diff
changeset
|
213 | SIZED_TRAY_ICON( PIDGIN_STOCK_TRAY_OFFLINE ), |
|
f9d7d4373550
Make sure that the stock loader uses the new location of the tray icons
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29705
diff
changeset
|
214 | SIZED_TRAY_ICON( PIDGIN_STOCK_TRAY_CONNECT ), |
|
f9d7d4373550
Make sure that the stock loader uses the new location of the tray icons
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29705
diff
changeset
|
215 | SIZED_TRAY_ICON( PIDGIN_STOCK_TRAY_PENDING ), |
|
f9d7d4373550
Make sure that the stock loader uses the new location of the tray icons
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29705
diff
changeset
|
216 | SIZED_TRAY_ICON( PIDGIN_STOCK_TRAY_EMAIL ) |
|
f9d7d4373550
Make sure that the stock loader uses the new location of the tray icons
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29705
diff
changeset
|
217 | #undef SIZED_TRAY_ICON |
|
15458
39c79dc7c965
A lot of status icon changes:
Sean Egan <seanegan@pidgin.im>
parents:
15435
diff
changeset
|
218 | }; |
|
39c79dc7c965
A lot of status icon changes:
Sean Egan <seanegan@pidgin.im>
parents:
15435
diff
changeset
|
219 | |
|
23964
342e3f5bedd9
partially working status icon theme stuff
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23423
diff
changeset
|
220 | /***************************************************************************** |
|
25888
d0fdd378a635
Remove trailing whitespace
Mark Doliner <markdoliner@pidgin.im>
parents:
25000
diff
changeset
|
221 | * Private functions |
|
23964
342e3f5bedd9
partially working status icon theme stuff
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23423
diff
changeset
|
222 | *****************************************************************************/ |
|
24696
33d0b1c4806a
Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
24594
diff
changeset
|
223 | |
|
33d0b1c4806a
Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
24594
diff
changeset
|
224 | static gchar * |
|
33d0b1c4806a
Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
24594
diff
changeset
|
225 | find_file_common(const char *name) |
|
33d0b1c4806a
Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
24594
diff
changeset
|
226 | { |
|
33d0b1c4806a
Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
24594
diff
changeset
|
227 | gchar *filename; |
|
33d0b1c4806a
Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
24594
diff
changeset
|
228 | const gchar *userdir; |
|
33d0b1c4806a
Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
24594
diff
changeset
|
229 | const gchar * const *sysdirs; |
|
33d0b1c4806a
Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
24594
diff
changeset
|
230 | |
|
33d0b1c4806a
Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
24594
diff
changeset
|
231 | userdir = g_get_user_data_dir(); |
|
33d0b1c4806a
Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
24594
diff
changeset
|
232 | filename = g_build_filename(userdir, name, NULL); |
|
33d0b1c4806a
Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
24594
diff
changeset
|
233 | if (g_file_test(filename, G_FILE_TEST_EXISTS)) |
|
33d0b1c4806a
Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
24594
diff
changeset
|
234 | return filename; |
|
33d0b1c4806a
Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
24594
diff
changeset
|
235 | g_free(filename); |
|
33d0b1c4806a
Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
24594
diff
changeset
|
236 | |
|
33d0b1c4806a
Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
24594
diff
changeset
|
237 | sysdirs = g_get_system_data_dirs(); |
|
33d0b1c4806a
Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
24594
diff
changeset
|
238 | for (; *sysdirs; sysdirs++) { |
|
33d0b1c4806a
Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
24594
diff
changeset
|
239 | filename = g_build_filename(*sysdirs, name, NULL); |
|
33d0b1c4806a
Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
24594
diff
changeset
|
240 | if (g_file_test(filename, G_FILE_TEST_EXISTS)) |
|
33d0b1c4806a
Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
24594
diff
changeset
|
241 | return filename; |
|
33d0b1c4806a
Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
24594
diff
changeset
|
242 | g_free(filename); |
|
33d0b1c4806a
Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
24594
diff
changeset
|
243 | } |
|
33d0b1c4806a
Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
24594
diff
changeset
|
244 | filename = g_build_filename(DATADIR, name, NULL); |
|
33d0b1c4806a
Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
24594
diff
changeset
|
245 | if (g_file_test(filename, G_FILE_TEST_EXISTS)) |
|
33d0b1c4806a
Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
24594
diff
changeset
|
246 | return filename; |
|
33d0b1c4806a
Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
24594
diff
changeset
|
247 | g_free(filename); |
|
33d0b1c4806a
Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
24594
diff
changeset
|
248 | return NULL; |
|
33d0b1c4806a
Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
24594
diff
changeset
|
249 | } |
|
33d0b1c4806a
Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
24594
diff
changeset
|
250 | |
| 10297 | 251 | static gchar * |
| 252 | find_file(const char *dir, const char *base) | |
| 253 | { | |
| 254 | char *filename; | |
|
24696
33d0b1c4806a
Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
24594
diff
changeset
|
255 | char *ret; |
| 10297 | 256 | |
| 257 | if (base == NULL) | |
| 258 | return NULL; | |
| 259 | ||
|
15930
d851247cb931
Install pixmaps to the right directories and make them load properly.
Richard Laager <rlaager@pidgin.im>
parents:
15914
diff
changeset
|
260 | if (!strcmp(dir, "pidgin")) |
|
24696
33d0b1c4806a
Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
24594
diff
changeset
|
261 | filename = g_build_filename("pixmaps", "pidgin", base, NULL); |
| 10297 | 262 | else |
|
24696
33d0b1c4806a
Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
24594
diff
changeset
|
263 | filename = g_build_filename("pixmaps", "pidgin", dir, base, NULL); |
| 10297 | 264 | |
|
24696
33d0b1c4806a
Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
24594
diff
changeset
|
265 | ret = find_file_common(filename); |
|
33d0b1c4806a
Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
24594
diff
changeset
|
266 | g_free(filename); |
|
33d0b1c4806a
Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
24594
diff
changeset
|
267 | return ret; |
|
15458
39c79dc7c965
A lot of status icon changes:
Sean Egan <seanegan@pidgin.im>
parents:
15435
diff
changeset
|
268 | } |
|
39c79dc7c965
A lot of status icon changes:
Sean Egan <seanegan@pidgin.im>
parents:
15435
diff
changeset
|
269 | |
|
26482
72d16a73cf12
Get rid of the rest of the extraneous changes.
Michael Ruprecht <maiku@pidgin.im>
parents:
26338
diff
changeset
|
270 | |
|
16484
4c91c9a40dea
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents:
16454
diff
changeset
|
271 | /* Altered from do_colorshift in gnome-panel */ |
|
4c91c9a40dea
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents:
16454
diff
changeset
|
272 | static void |
|
29759
89d25a5185e9
Simplify: dest always equals src. No need to copy everything.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29707
diff
changeset
|
273 | do_alphashift(GdkPixbuf *pixbuf) |
|
16484
4c91c9a40dea
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents:
16454
diff
changeset
|
274 | { |
|
27262
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
275 | gint i, j; |
|
29759
89d25a5185e9
Simplify: dest always equals src. No need to copy everything.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29707
diff
changeset
|
276 | gint width, height, padding; |
|
89d25a5185e9
Simplify: dest always equals src. No need to copy everything.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29707
diff
changeset
|
277 | guchar *pixels; |
|
27262
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
278 | guchar a; |
|
16484
4c91c9a40dea
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents:
16454
diff
changeset
|
279 | |
|
29759
89d25a5185e9
Simplify: dest always equals src. No need to copy everything.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29707
diff
changeset
|
280 | if (!gdk_pixbuf_get_has_alpha(pixbuf)) |
|
27262
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
281 | return; |
|
16484
4c91c9a40dea
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents:
16454
diff
changeset
|
282 | |
|
29759
89d25a5185e9
Simplify: dest always equals src. No need to copy everything.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29707
diff
changeset
|
283 | width = gdk_pixbuf_get_width(pixbuf); |
|
89d25a5185e9
Simplify: dest always equals src. No need to copy everything.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29707
diff
changeset
|
284 | height = gdk_pixbuf_get_height(pixbuf); |
|
89d25a5185e9
Simplify: dest always equals src. No need to copy everything.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29707
diff
changeset
|
285 | padding = gdk_pixbuf_get_rowstride(pixbuf) - width * 4; |
|
89d25a5185e9
Simplify: dest always equals src. No need to copy everything.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29707
diff
changeset
|
286 | pixels = gdk_pixbuf_get_pixels(pixbuf); |
|
16484
4c91c9a40dea
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents:
16454
diff
changeset
|
287 | |
|
27262
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
288 | for (i = 0; i < height; i++) { |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
289 | for (j = 0; j < width; j++) { |
|
29759
89d25a5185e9
Simplify: dest always equals src. No need to copy everything.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29707
diff
changeset
|
290 | pixels++; |
|
89d25a5185e9
Simplify: dest always equals src. No need to copy everything.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29707
diff
changeset
|
291 | pixels++; |
|
89d25a5185e9
Simplify: dest always equals src. No need to copy everything.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29707
diff
changeset
|
292 | pixels++; |
|
89d25a5185e9
Simplify: dest always equals src. No need to copy everything.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29707
diff
changeset
|
293 | a = *(pixels); |
|
89d25a5185e9
Simplify: dest always equals src. No need to copy everything.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29707
diff
changeset
|
294 | *(pixels++) = a / 2; |
|
27262
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
295 | } |
|
29759
89d25a5185e9
Simplify: dest always equals src. No need to copy everything.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29707
diff
changeset
|
296 | pixels += padding; |
|
27262
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
297 | } |
|
16484
4c91c9a40dea
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents:
16454
diff
changeset
|
298 | } |
|
4c91c9a40dea
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents:
16454
diff
changeset
|
299 | |
|
23965
13cd30de531b
Add the icon theme files, and re-work some things
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23964
diff
changeset
|
300 | static gchar * |
|
26813
c1a058a2466e
Make it possible to load non-status icons using a PidginStockIconTheme.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
26747
diff
changeset
|
301 | find_icon_file(PidginIconTheme *theme, const gchar *size, SizedStockIcon sized_icon, gboolean rtl) |
|
16484
4c91c9a40dea
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents:
16454
diff
changeset
|
302 | { |
|
23965
13cd30de531b
Add the icon theme files, and re-work some things
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23964
diff
changeset
|
303 | const gchar *file, *dir; |
|
13cd30de531b
Add the icon theme files, and re-work some things
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23964
diff
changeset
|
304 | gchar *file_full = NULL; |
|
24989
81e2345f35f3
Clean up the merge I just did.
Richard Laager <rlaager@pidgin.im>
parents:
24988
diff
changeset
|
305 | gchar *tmp; |
|
23965
13cd30de531b
Add the icon theme files, and re-work some things
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23964
diff
changeset
|
306 | |
|
13cd30de531b
Add the icon theme files, and re-work some things
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23964
diff
changeset
|
307 | if (theme != NULL) { |
|
23972
90e0da03c053
theme loader cleanup, and remove a few warnings
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23970
diff
changeset
|
308 | file = pidgin_icon_theme_get_icon(PIDGIN_ICON_THEME(theme), sized_icon.name); |
|
23965
13cd30de531b
Add the icon theme files, and re-work some things
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23964
diff
changeset
|
309 | dir = purple_theme_get_dir(PURPLE_THEME(theme)); |
|
13cd30de531b
Add the icon theme files, and re-work some things
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23964
diff
changeset
|
310 | |
|
13cd30de531b
Add the icon theme files, and re-work some things
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23964
diff
changeset
|
311 | if (rtl) |
|
13cd30de531b
Add the icon theme files, and re-work some things
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23964
diff
changeset
|
312 | file_full = g_build_filename(dir, size, "rtl", file, NULL); |
|
24988
4150b857c58b
explicit merge of '33d0b1c4806ab021469a1bccd95f2b753de3bc42'
Richard Laager <rlaager@pidgin.im>
diff
changeset
|
313 | else |
|
4150b857c58b
explicit merge of '33d0b1c4806ab021469a1bccd95f2b753de3bc42'
Richard Laager <rlaager@pidgin.im>
diff
changeset
|
314 | file_full = g_build_filename(dir, size, file, NULL); |
|
23965
13cd30de531b
Add the icon theme files, and re-work some things
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23964
diff
changeset
|
315 | |
|
25888
d0fdd378a635
Remove trailing whitespace
Mark Doliner <markdoliner@pidgin.im>
parents:
25000
diff
changeset
|
316 | if (g_file_test(file_full, G_FILE_TEST_IS_REGULAR)) |
|
23965
13cd30de531b
Add the icon theme files, and re-work some things
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23964
diff
changeset
|
317 | return file_full; |
|
13cd30de531b
Add the icon theme files, and re-work some things
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23964
diff
changeset
|
318 | |
|
13cd30de531b
Add the icon theme files, and re-work some things
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23964
diff
changeset
|
319 | g_free(file_full); |
|
24988
4150b857c58b
explicit merge of '33d0b1c4806ab021469a1bccd95f2b753de3bc42'
Richard Laager <rlaager@pidgin.im>
diff
changeset
|
320 | } |
|
23965
13cd30de531b
Add the icon theme files, and re-work some things
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23964
diff
changeset
|
321 | |
|
13cd30de531b
Add the icon theme files, and re-work some things
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23964
diff
changeset
|
322 | if (rtl) |
|
24988
4150b857c58b
explicit merge of '33d0b1c4806ab021469a1bccd95f2b753de3bc42'
Richard Laager <rlaager@pidgin.im>
diff
changeset
|
323 | tmp = g_build_filename("pixmaps", "pidgin", sized_icon.dir, size, "rtl", sized_icon.filename, NULL); |
|
4150b857c58b
explicit merge of '33d0b1c4806ab021469a1bccd95f2b753de3bc42'
Richard Laager <rlaager@pidgin.im>
diff
changeset
|
324 | else |
|
4150b857c58b
explicit merge of '33d0b1c4806ab021469a1bccd95f2b753de3bc42'
Richard Laager <rlaager@pidgin.im>
diff
changeset
|
325 | tmp = g_build_filename("pixmaps", "pidgin", sized_icon.dir, size, sized_icon.filename, NULL); |
|
4150b857c58b
explicit merge of '33d0b1c4806ab021469a1bccd95f2b753de3bc42'
Richard Laager <rlaager@pidgin.im>
diff
changeset
|
326 | |
|
4150b857c58b
explicit merge of '33d0b1c4806ab021469a1bccd95f2b753de3bc42'
Richard Laager <rlaager@pidgin.im>
diff
changeset
|
327 | file_full = find_file_common(tmp); |
|
4150b857c58b
explicit merge of '33d0b1c4806ab021469a1bccd95f2b753de3bc42'
Richard Laager <rlaager@pidgin.im>
diff
changeset
|
328 | g_free(tmp); |
|
4150b857c58b
explicit merge of '33d0b1c4806ab021469a1bccd95f2b753de3bc42'
Richard Laager <rlaager@pidgin.im>
diff
changeset
|
329 | return file_full; |
|
24696
33d0b1c4806a
Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
24594
diff
changeset
|
330 | } |
|
33d0b1c4806a
Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
24594
diff
changeset
|
331 | |
|
33d0b1c4806a
Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
24594
diff
changeset
|
332 | static void |
|
26813
c1a058a2466e
Make it possible to load non-status icons using a PidginStockIconTheme.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
26747
diff
changeset
|
333 | add_sized_icon(GtkIconSet *iconset, GtkIconSize sizeid, PidginIconTheme *theme, |
|
29705
3ccbf39a7f8e
Revert some changes to pidginstock.[ch] that are no longer necessary now
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29653
diff
changeset
|
334 | const char *size, SizedStockIcon sized_icon, gboolean translucent) |
|
24696
33d0b1c4806a
Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
24594
diff
changeset
|
335 | { |
|
16484
4c91c9a40dea
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents:
16454
diff
changeset
|
336 | char *filename; |
|
24696
33d0b1c4806a
Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
24594
diff
changeset
|
337 | GtkIconSource *source; |
|
16484
4c91c9a40dea
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents:
16454
diff
changeset
|
338 | GdkPixbuf *pixbuf; |
|
4c91c9a40dea
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents:
16454
diff
changeset
|
339 | |
|
23965
13cd30de531b
Add the icon theme files, and re-work some things
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23964
diff
changeset
|
340 | filename = find_icon_file(theme, size, sized_icon, FALSE); |
|
24988
4150b857c58b
explicit merge of '33d0b1c4806ab021469a1bccd95f2b753de3bc42'
Richard Laager <rlaager@pidgin.im>
diff
changeset
|
341 | g_return_if_fail(filename != NULL); |
|
16484
4c91c9a40dea
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents:
16454
diff
changeset
|
342 | pixbuf = gdk_pixbuf_new_from_file(filename, NULL); |
|
24696
33d0b1c4806a
Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
24594
diff
changeset
|
343 | if (translucent) |
|
29759
89d25a5185e9
Simplify: dest always equals src. No need to copy everything.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29707
diff
changeset
|
344 | do_alphashift(pixbuf); |
|
16484
4c91c9a40dea
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents:
16454
diff
changeset
|
345 | |
|
4c91c9a40dea
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents:
16454
diff
changeset
|
346 | source = gtk_icon_source_new(); |
|
24696
33d0b1c4806a
Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
24594
diff
changeset
|
347 | gtk_icon_source_set_pixbuf(source, pixbuf); |
|
16484
4c91c9a40dea
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents:
16454
diff
changeset
|
348 | gtk_icon_source_set_direction(source, GTK_TEXT_DIR_LTR); |
|
24988
4150b857c58b
explicit merge of '33d0b1c4806ab021469a1bccd95f2b753de3bc42'
Richard Laager <rlaager@pidgin.im>
diff
changeset
|
349 | gtk_icon_source_set_direction_wildcarded(source, !sized_icon.rtl); |
|
16484
4c91c9a40dea
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents:
16454
diff
changeset
|
350 | gtk_icon_source_set_size(source, sizeid); |
|
29705
3ccbf39a7f8e
Revert some changes to pidginstock.[ch] that are no longer necessary now
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29653
diff
changeset
|
351 | gtk_icon_source_set_size_wildcarded(source, FALSE); |
|
24696
33d0b1c4806a
Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
24594
diff
changeset
|
352 | gtk_icon_source_set_state_wildcarded(source, TRUE); |
|
33d0b1c4806a
Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
24594
diff
changeset
|
353 | gtk_icon_set_add_source(iconset, source); |
|
16484
4c91c9a40dea
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents:
16454
diff
changeset
|
354 | gtk_icon_source_free(source); |
|
4c91c9a40dea
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents:
16454
diff
changeset
|
355 | |
|
4c91c9a40dea
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents:
16454
diff
changeset
|
356 | if (sizeid == gtk_icon_size_from_name(PIDGIN_ICON_SIZE_TANGO_EXTRA_SMALL)) { |
|
4c91c9a40dea
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents:
16454
diff
changeset
|
357 | source = gtk_icon_source_new(); |
|
24696
33d0b1c4806a
Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
24594
diff
changeset
|
358 | gtk_icon_source_set_pixbuf(source, pixbuf); |
|
33d0b1c4806a
Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
24594
diff
changeset
|
359 | gtk_icon_source_set_direction_wildcarded(source, TRUE); |
|
33d0b1c4806a
Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
24594
diff
changeset
|
360 | gtk_icon_source_set_size(source, GTK_ICON_SIZE_MENU); |
|
29705
3ccbf39a7f8e
Revert some changes to pidginstock.[ch] that are no longer necessary now
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29653
diff
changeset
|
361 | gtk_icon_source_set_size_wildcarded(source, FALSE); |
|
24696
33d0b1c4806a
Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
24594
diff
changeset
|
362 | gtk_icon_source_set_state_wildcarded(source, TRUE); |
|
33d0b1c4806a
Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
24594
diff
changeset
|
363 | gtk_icon_set_add_source(iconset, source); |
|
33d0b1c4806a
Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
24594
diff
changeset
|
364 | gtk_icon_source_free(source); |
|
16484
4c91c9a40dea
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents:
16454
diff
changeset
|
365 | } |
|
24696
33d0b1c4806a
Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
24594
diff
changeset
|
366 | g_free(filename); |
|
16484
4c91c9a40dea
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents:
16454
diff
changeset
|
367 | g_object_unref(pixbuf); |
|
4c91c9a40dea
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents:
16454
diff
changeset
|
368 | |
|
24988
4150b857c58b
explicit merge of '33d0b1c4806ab021469a1bccd95f2b753de3bc42'
Richard Laager <rlaager@pidgin.im>
diff
changeset
|
369 | if (sized_icon.rtl) { |
|
23965
13cd30de531b
Add the icon theme files, and re-work some things
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23964
diff
changeset
|
370 | filename = find_icon_file(theme, size, sized_icon, TRUE); |
|
24988
4150b857c58b
explicit merge of '33d0b1c4806ab021469a1bccd95f2b753de3bc42'
Richard Laager <rlaager@pidgin.im>
diff
changeset
|
371 | g_return_if_fail(filename != NULL); |
|
24696
33d0b1c4806a
Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
24594
diff
changeset
|
372 | pixbuf = gdk_pixbuf_new_from_file(filename, NULL); |
|
33d0b1c4806a
Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
24594
diff
changeset
|
373 | if (translucent) |
|
29759
89d25a5185e9
Simplify: dest always equals src. No need to copy everything.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29707
diff
changeset
|
374 | do_alphashift(pixbuf); |
|
23966
af44603a3a6a
fized the icon diplay bug with the icon theme
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23965
diff
changeset
|
375 | |
|
16484
4c91c9a40dea
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents:
16454
diff
changeset
|
376 | source = gtk_icon_source_new(); |
|
24696
33d0b1c4806a
Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
24594
diff
changeset
|
377 | gtk_icon_source_set_pixbuf(source, pixbuf); |
|
24988
4150b857c58b
explicit merge of '33d0b1c4806ab021469a1bccd95f2b753de3bc42'
Richard Laager <rlaager@pidgin.im>
diff
changeset
|
378 | gtk_icon_source_set_filename(source, filename); |
|
24696
33d0b1c4806a
Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
24594
diff
changeset
|
379 | gtk_icon_source_set_direction(source, GTK_TEXT_DIR_RTL); |
|
33d0b1c4806a
Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
24594
diff
changeset
|
380 | gtk_icon_source_set_size(source, sizeid); |
|
29705
3ccbf39a7f8e
Revert some changes to pidginstock.[ch] that are no longer necessary now
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29653
diff
changeset
|
381 | gtk_icon_source_set_size_wildcarded(source, FALSE); |
|
24696
33d0b1c4806a
Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
24594
diff
changeset
|
382 | gtk_icon_source_set_state_wildcarded(source, TRUE); |
|
33d0b1c4806a
Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
24594
diff
changeset
|
383 | gtk_icon_set_add_source(iconset, source); |
|
16484
4c91c9a40dea
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents:
16454
diff
changeset
|
384 | g_free(filename); |
|
4c91c9a40dea
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents:
16454
diff
changeset
|
385 | g_object_unref(pixbuf); |
|
4c91c9a40dea
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents:
16454
diff
changeset
|
386 | gtk_icon_source_free(source); |
|
24696
33d0b1c4806a
Try to be more compliant with the freedesktop.org icon spec thingy with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
24594
diff
changeset
|
387 | } |
|
16484
4c91c9a40dea
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents:
16454
diff
changeset
|
388 | } |
|
4c91c9a40dea
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents:
16454
diff
changeset
|
389 | |
|
26843
9d7022b30f71
Reload settings after updating icon theme.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
26813
diff
changeset
|
390 | static void |
|
9d7022b30f71
Reload settings after updating icon theme.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
26813
diff
changeset
|
391 | reload_settings(void) |
|
9d7022b30f71
Reload settings after updating icon theme.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
26813
diff
changeset
|
392 | { |
|
9d7022b30f71
Reload settings after updating icon theme.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
26813
diff
changeset
|
393 | GtkSettings *setting = NULL; |
|
9d7022b30f71
Reload settings after updating icon theme.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
26813
diff
changeset
|
394 | setting = gtk_settings_get_default(); |
|
9d7022b30f71
Reload settings after updating icon theme.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
26813
diff
changeset
|
395 | gtk_rc_reset_styles(setting); |
|
9d7022b30f71
Reload settings after updating icon theme.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
26813
diff
changeset
|
396 | } |
|
9d7022b30f71
Reload settings after updating icon theme.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
26813
diff
changeset
|
397 | |
|
23964
342e3f5bedd9
partially working status icon theme stuff
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23423
diff
changeset
|
398 | /***************************************************************************** |
|
25888
d0fdd378a635
Remove trailing whitespace
Mark Doliner <markdoliner@pidgin.im>
parents:
25000
diff
changeset
|
399 | * Public API functions |
|
23964
342e3f5bedd9
partially working status icon theme stuff
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23423
diff
changeset
|
400 | *****************************************************************************/ |
|
342e3f5bedd9
partially working status icon theme stuff
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23423
diff
changeset
|
401 | |
|
342e3f5bedd9
partially working status icon theme stuff
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23423
diff
changeset
|
402 | void |
|
23967
cc5667bc8f1e
Clean up status icon themes a bit
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23966
diff
changeset
|
403 | pidgin_stock_load_status_icon_theme(PidginStatusIconTheme *theme) |
|
23964
342e3f5bedd9
partially working status icon theme stuff
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23423
diff
changeset
|
404 | { |
|
342e3f5bedd9
partially working status icon theme stuff
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23423
diff
changeset
|
405 | GtkIconFactory *icon_factory; |
|
342e3f5bedd9
partially working status icon theme stuff
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23423
diff
changeset
|
406 | gint i; |
|
342e3f5bedd9
partially working status icon theme stuff
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23423
diff
changeset
|
407 | GtkIconSet *normal; |
|
342e3f5bedd9
partially working status icon theme stuff
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23423
diff
changeset
|
408 | GtkIconSet *translucent = NULL; |
|
342e3f5bedd9
partially working status icon theme stuff
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23423
diff
changeset
|
409 | GtkWidget *win; |
|
342e3f5bedd9
partially working status icon theme stuff
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23423
diff
changeset
|
410 | |
|
23970
85dcf9218f63
fixes initialize icon theme bug by pre-loading the theme
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23967
diff
changeset
|
411 | if (theme != NULL) { |
|
25888
d0fdd378a635
Remove trailing whitespace
Mark Doliner <markdoliner@pidgin.im>
parents:
25000
diff
changeset
|
412 | purple_prefs_set_string(PIDGIN_PREFS_ROOT "/status/icon-theme", |
|
27262
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
413 | purple_theme_get_name(PURPLE_THEME(theme))); |
|
25888
d0fdd378a635
Remove trailing whitespace
Mark Doliner <markdoliner@pidgin.im>
parents:
25000
diff
changeset
|
414 | purple_prefs_set_path(PIDGIN_PREFS_ROOT "/status/icon-theme-dir", |
|
27262
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
415 | purple_theme_get_dir(PURPLE_THEME(theme))); |
|
23970
85dcf9218f63
fixes initialize icon theme bug by pre-loading the theme
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23967
diff
changeset
|
416 | } |
|
85dcf9218f63
fixes initialize icon theme bug by pre-loading the theme
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23967
diff
changeset
|
417 | else { |
|
85dcf9218f63
fixes initialize icon theme bug by pre-loading the theme
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23967
diff
changeset
|
418 | purple_prefs_set_string(PIDGIN_PREFS_ROOT "/status/icon-theme", ""); |
|
85dcf9218f63
fixes initialize icon theme bug by pre-loading the theme
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23967
diff
changeset
|
419 | purple_prefs_set_path(PIDGIN_PREFS_ROOT "/status/icon-theme-dir", ""); |
|
85dcf9218f63
fixes initialize icon theme bug by pre-loading the theme
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23967
diff
changeset
|
420 | } |
|
25888
d0fdd378a635
Remove trailing whitespace
Mark Doliner <markdoliner@pidgin.im>
parents:
25000
diff
changeset
|
421 | |
|
23964
342e3f5bedd9
partially working status icon theme stuff
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23423
diff
changeset
|
422 | icon_factory = gtk_icon_factory_new(); |
|
342e3f5bedd9
partially working status icon theme stuff
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23423
diff
changeset
|
423 | |
|
342e3f5bedd9
partially working status icon theme stuff
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23423
diff
changeset
|
424 | gtk_icon_factory_add_default(icon_factory); |
|
342e3f5bedd9
partially working status icon theme stuff
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23423
diff
changeset
|
425 | |
|
342e3f5bedd9
partially working status icon theme stuff
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23423
diff
changeset
|
426 | win = gtk_window_new(GTK_WINDOW_TOPLEVEL); |
|
342e3f5bedd9
partially working status icon theme stuff
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23423
diff
changeset
|
427 | gtk_widget_realize(win); |
|
342e3f5bedd9
partially working status icon theme stuff
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23423
diff
changeset
|
428 | |
|
342e3f5bedd9
partially working status icon theme stuff
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23423
diff
changeset
|
429 | for (i = 0; i < G_N_ELEMENTS(sized_status_icons); i++) |
|
342e3f5bedd9
partially working status icon theme stuff
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23423
diff
changeset
|
430 | { |
|
342e3f5bedd9
partially working status icon theme stuff
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23423
diff
changeset
|
431 | normal = gtk_icon_set_new(); |
|
342e3f5bedd9
partially working status icon theme stuff
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23423
diff
changeset
|
432 | if (sized_status_icons[i].translucent_name) |
|
342e3f5bedd9
partially working status icon theme stuff
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23423
diff
changeset
|
433 | translucent = gtk_icon_set_new(); |
|
342e3f5bedd9
partially working status icon theme stuff
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23423
diff
changeset
|
434 | |
|
27262
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
435 | #define ADD_SIZED_ICON(name, size) \ |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
436 | if (sized_status_icons[i].name) { \ |
|
29705
3ccbf39a7f8e
Revert some changes to pidginstock.[ch] that are no longer necessary now
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29653
diff
changeset
|
437 | add_sized_icon(normal, name, PIDGIN_ICON_THEME(theme), size, sized_status_icons[i], FALSE); \ |
|
27262
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
438 | if (sized_status_icons[i].translucent_name) \ |
|
29705
3ccbf39a7f8e
Revert some changes to pidginstock.[ch] that are no longer necessary now
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29653
diff
changeset
|
439 | add_sized_icon(translucent, name, PIDGIN_ICON_THEME(theme), size, sized_status_icons[i], TRUE); \ |
|
27262
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
440 | } |
|
23965
13cd30de531b
Add the icon theme files, and re-work some things
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23964
diff
changeset
|
441 | ADD_SIZED_ICON(microscopic, "11"); |
|
13cd30de531b
Add the icon theme files, and re-work some things
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23964
diff
changeset
|
442 | ADD_SIZED_ICON(extra_small, "16"); |
|
13cd30de531b
Add the icon theme files, and re-work some things
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23964
diff
changeset
|
443 | ADD_SIZED_ICON(small, "22"); |
|
13cd30de531b
Add the icon theme files, and re-work some things
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23964
diff
changeset
|
444 | ADD_SIZED_ICON(medium, "32"); |
|
13cd30de531b
Add the icon theme files, and re-work some things
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23964
diff
changeset
|
445 | ADD_SIZED_ICON(large, "48"); |
|
13cd30de531b
Add the icon theme files, and re-work some things
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23964
diff
changeset
|
446 | ADD_SIZED_ICON(huge, "64"); |
|
13cd30de531b
Add the icon theme files, and re-work some things
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23964
diff
changeset
|
447 | #undef ADD_SIZED_ICON |
|
23964
342e3f5bedd9
partially working status icon theme stuff
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23423
diff
changeset
|
448 | |
|
342e3f5bedd9
partially working status icon theme stuff
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23423
diff
changeset
|
449 | gtk_icon_factory_add(icon_factory, sized_status_icons[i].name, normal); |
|
342e3f5bedd9
partially working status icon theme stuff
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23423
diff
changeset
|
450 | gtk_icon_set_unref(normal); |
|
342e3f5bedd9
partially working status icon theme stuff
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23423
diff
changeset
|
451 | |
|
342e3f5bedd9
partially working status icon theme stuff
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23423
diff
changeset
|
452 | if (sized_status_icons[i].translucent_name) { |
|
342e3f5bedd9
partially working status icon theme stuff
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23423
diff
changeset
|
453 | gtk_icon_factory_add(icon_factory, sized_status_icons[i].translucent_name, translucent); |
|
342e3f5bedd9
partially working status icon theme stuff
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23423
diff
changeset
|
454 | gtk_icon_set_unref(translucent); |
|
342e3f5bedd9
partially working status icon theme stuff
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23423
diff
changeset
|
455 | } |
|
342e3f5bedd9
partially working status icon theme stuff
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23423
diff
changeset
|
456 | } |
|
16484
4c91c9a40dea
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents:
16454
diff
changeset
|
457 | |
|
29641
e54552cf87d8
Use GtkStatusIcon on GTK+ 2.10+. That's actually the required version for
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29514
diff
changeset
|
458 | for (i = 0; i < G_N_ELEMENTS(sized_tray_icons); i++) |
|
e54552cf87d8
Use GtkStatusIcon on GTK+ 2.10+. That's actually the required version for
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29514
diff
changeset
|
459 | { |
|
e54552cf87d8
Use GtkStatusIcon on GTK+ 2.10+. That's actually the required version for
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29514
diff
changeset
|
460 | normal = gtk_icon_set_new(); |
|
e54552cf87d8
Use GtkStatusIcon on GTK+ 2.10+. That's actually the required version for
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29514
diff
changeset
|
461 | if (sized_tray_icons[i].translucent_name) |
|
e54552cf87d8
Use GtkStatusIcon on GTK+ 2.10+. That's actually the required version for
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29514
diff
changeset
|
462 | translucent = gtk_icon_set_new(); |
|
e54552cf87d8
Use GtkStatusIcon on GTK+ 2.10+. That's actually the required version for
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29514
diff
changeset
|
463 | |
|
e54552cf87d8
Use GtkStatusIcon on GTK+ 2.10+. That's actually the required version for
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29514
diff
changeset
|
464 | #define ADD_SIZED_ICON(name, size) \ |
|
e54552cf87d8
Use GtkStatusIcon on GTK+ 2.10+. That's actually the required version for
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29514
diff
changeset
|
465 | if (sized_tray_icons[i].name) { \ |
|
29705
3ccbf39a7f8e
Revert some changes to pidginstock.[ch] that are no longer necessary now
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29653
diff
changeset
|
466 | add_sized_icon(normal, name, PIDGIN_ICON_THEME(theme), size, sized_tray_icons[i], FALSE); \ |
|
29641
e54552cf87d8
Use GtkStatusIcon on GTK+ 2.10+. That's actually the required version for
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29514
diff
changeset
|
467 | if (sized_tray_icons[i].translucent_name) \ |
|
29705
3ccbf39a7f8e
Revert some changes to pidginstock.[ch] that are no longer necessary now
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29653
diff
changeset
|
468 | add_sized_icon(translucent, name, PIDGIN_ICON_THEME(theme), size, sized_tray_icons[i], TRUE); \ |
|
29641
e54552cf87d8
Use GtkStatusIcon on GTK+ 2.10+. That's actually the required version for
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29514
diff
changeset
|
469 | } |
|
29707
f9d7d4373550
Make sure that the stock loader uses the new location of the tray icons
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29705
diff
changeset
|
470 | ADD_SIZED_ICON(extra_small, "16x16"); |
|
f9d7d4373550
Make sure that the stock loader uses the new location of the tray icons
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29705
diff
changeset
|
471 | ADD_SIZED_ICON(small, "22x22"); |
|
f9d7d4373550
Make sure that the stock loader uses the new location of the tray icons
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29705
diff
changeset
|
472 | ADD_SIZED_ICON(medium, "32x32"); |
|
f9d7d4373550
Make sure that the stock loader uses the new location of the tray icons
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29705
diff
changeset
|
473 | ADD_SIZED_ICON(large, "48x48"); |
|
29641
e54552cf87d8
Use GtkStatusIcon on GTK+ 2.10+. That's actually the required version for
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29514
diff
changeset
|
474 | #undef ADD_SIZED_ICON |
|
e54552cf87d8
Use GtkStatusIcon on GTK+ 2.10+. That's actually the required version for
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29514
diff
changeset
|
475 | |
|
e54552cf87d8
Use GtkStatusIcon on GTK+ 2.10+. That's actually the required version for
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29514
diff
changeset
|
476 | gtk_icon_factory_add(icon_factory, sized_tray_icons[i].name, normal); |
|
e54552cf87d8
Use GtkStatusIcon on GTK+ 2.10+. That's actually the required version for
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29514
diff
changeset
|
477 | gtk_icon_set_unref(normal); |
|
e54552cf87d8
Use GtkStatusIcon on GTK+ 2.10+. That's actually the required version for
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29514
diff
changeset
|
478 | |
|
e54552cf87d8
Use GtkStatusIcon on GTK+ 2.10+. That's actually the required version for
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29514
diff
changeset
|
479 | if (sized_tray_icons[i].translucent_name) { |
|
e54552cf87d8
Use GtkStatusIcon on GTK+ 2.10+. That's actually the required version for
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29514
diff
changeset
|
480 | gtk_icon_factory_add(icon_factory, sized_tray_icons[i].translucent_name, translucent); |
|
e54552cf87d8
Use GtkStatusIcon on GTK+ 2.10+. That's actually the required version for
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29514
diff
changeset
|
481 | gtk_icon_set_unref(translucent); |
|
e54552cf87d8
Use GtkStatusIcon on GTK+ 2.10+. That's actually the required version for
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29514
diff
changeset
|
482 | } |
|
e54552cf87d8
Use GtkStatusIcon on GTK+ 2.10+. That's actually the required version for
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29514
diff
changeset
|
483 | } |
|
e54552cf87d8
Use GtkStatusIcon on GTK+ 2.10+. That's actually the required version for
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29514
diff
changeset
|
484 | |
|
23964
342e3f5bedd9
partially working status icon theme stuff
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23423
diff
changeset
|
485 | gtk_widget_destroy(win); |
|
342e3f5bedd9
partially working status icon theme stuff
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23423
diff
changeset
|
486 | g_object_unref(G_OBJECT(icon_factory)); |
|
26843
9d7022b30f71
Reload settings after updating icon theme.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
26813
diff
changeset
|
487 | reload_settings(); |
|
16484
4c91c9a40dea
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents:
16454
diff
changeset
|
488 | } |
|
4c91c9a40dea
Don't use translucent pixmaps for idle, but apply transparency to icons in pidginstock.c
Sean Egan <seanegan@pidgin.im>
parents:
16454
diff
changeset
|
489 | |
| 10297 | 490 | void |
|
26813
c1a058a2466e
Make it possible to load non-status icons using a PidginStockIconTheme.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
26747
diff
changeset
|
491 | pidgin_stock_load_stock_icon_theme(PidginStockIconTheme *theme) |
| 10297 | 492 | { |
| 493 | GtkIconFactory *icon_factory; | |
|
26813
c1a058a2466e
Make it possible to load non-status icons using a PidginStockIconTheme.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
26747
diff
changeset
|
494 | gint i; |
| 10297 | 495 | GtkWidget *win; |
| 496 | ||
|
26813
c1a058a2466e
Make it possible to load non-status icons using a PidginStockIconTheme.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
26747
diff
changeset
|
497 | if (theme != NULL) { |
|
c1a058a2466e
Make it possible to load non-status icons using a PidginStockIconTheme.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
26747
diff
changeset
|
498 | purple_prefs_set_string(PIDGIN_PREFS_ROOT "/stock/icon-theme", |
|
27262
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
499 | purple_theme_get_name(PURPLE_THEME(theme))); |
|
26813
c1a058a2466e
Make it possible to load non-status icons using a PidginStockIconTheme.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
26747
diff
changeset
|
500 | purple_prefs_set_path(PIDGIN_PREFS_ROOT "/stock/icon-theme-dir", |
|
27262
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
501 | purple_theme_get_dir(PURPLE_THEME(theme))); |
|
26813
c1a058a2466e
Make it possible to load non-status icons using a PidginStockIconTheme.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
26747
diff
changeset
|
502 | } |
|
c1a058a2466e
Make it possible to load non-status icons using a PidginStockIconTheme.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
26747
diff
changeset
|
503 | else { |
|
c1a058a2466e
Make it possible to load non-status icons using a PidginStockIconTheme.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
26747
diff
changeset
|
504 | purple_prefs_set_string(PIDGIN_PREFS_ROOT "/stock/icon-theme", ""); |
|
c1a058a2466e
Make it possible to load non-status icons using a PidginStockIconTheme.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
26747
diff
changeset
|
505 | purple_prefs_set_path(PIDGIN_PREFS_ROOT "/stock/icon-theme-dir", ""); |
|
c1a058a2466e
Make it possible to load non-status icons using a PidginStockIconTheme.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
26747
diff
changeset
|
506 | } |
| 10297 | 507 | |
| 508 | icon_factory = gtk_icon_factory_new(); | |
| 509 | ||
| 510 | gtk_icon_factory_add_default(icon_factory); | |
| 511 | ||
| 512 | win = gtk_window_new(GTK_WINDOW_TOPLEVEL); | |
| 513 | gtk_widget_realize(win); | |
| 514 | ||
|
23965
13cd30de531b
Add the icon theme files, and re-work some things
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23964
diff
changeset
|
515 | /* All non-sized icons */ |
|
26813
c1a058a2466e
Make it possible to load non-status icons using a PidginStockIconTheme.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
26747
diff
changeset
|
516 | for (i = 0; i < G_N_ELEMENTS(stock_icons); i++) { |
|
15458
39c79dc7c965
A lot of status icon changes:
Sean Egan <seanegan@pidgin.im>
parents:
15435
diff
changeset
|
517 | GtkIconSource *source; |
| 10297 | 518 | GtkIconSet *iconset; |
| 519 | gchar *filename; | |
| 520 | ||
|
26813
c1a058a2466e
Make it possible to load non-status icons using a PidginStockIconTheme.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
26747
diff
changeset
|
521 | if (stock_icons[i].dir == NULL) { |
| 10297 | 522 | /* GTK+ Stock icon */ |
| 523 | iconset = gtk_style_lookup_icon_set(gtk_widget_get_style(win), | |
|
21811
c07bdd3bd67a
I find this less painful to the eyes.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
20834
diff
changeset
|
524 | stock_icons[i].filename); |
|
26813
c1a058a2466e
Make it possible to load non-status icons using a PidginStockIconTheme.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
26747
diff
changeset
|
525 | } else { |
| 10297 | 526 | filename = find_file(stock_icons[i].dir, stock_icons[i].filename); |
| 527 | ||
| 528 | if (filename == NULL) | |
| 529 | continue; | |
| 530 | ||
|
15458
39c79dc7c965
A lot of status icon changes:
Sean Egan <seanegan@pidgin.im>
parents:
15435
diff
changeset
|
531 | source = gtk_icon_source_new(); |
|
39c79dc7c965
A lot of status icon changes:
Sean Egan <seanegan@pidgin.im>
parents:
15435
diff
changeset
|
532 | gtk_icon_source_set_filename(source, filename); |
|
39c79dc7c965
A lot of status icon changes:
Sean Egan <seanegan@pidgin.im>
parents:
15435
diff
changeset
|
533 | gtk_icon_source_set_direction_wildcarded(source, TRUE); |
|
39c79dc7c965
A lot of status icon changes:
Sean Egan <seanegan@pidgin.im>
parents:
15435
diff
changeset
|
534 | gtk_icon_source_set_size_wildcarded(source, TRUE); |
|
39c79dc7c965
A lot of status icon changes:
Sean Egan <seanegan@pidgin.im>
parents:
15435
diff
changeset
|
535 | gtk_icon_source_set_state_wildcarded(source, TRUE); |
|
21811
c07bdd3bd67a
I find this less painful to the eyes.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
20834
diff
changeset
|
536 | |
|
15458
39c79dc7c965
A lot of status icon changes:
Sean Egan <seanegan@pidgin.im>
parents:
15435
diff
changeset
|
537 | iconset = gtk_icon_set_new(); |
|
39c79dc7c965
A lot of status icon changes:
Sean Egan <seanegan@pidgin.im>
parents:
15435
diff
changeset
|
538 | gtk_icon_set_add_source(iconset, source); |
|
21811
c07bdd3bd67a
I find this less painful to the eyes.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
20834
diff
changeset
|
539 | |
|
15458
39c79dc7c965
A lot of status icon changes:
Sean Egan <seanegan@pidgin.im>
parents:
15435
diff
changeset
|
540 | gtk_icon_source_free(source); |
|
39c79dc7c965
A lot of status icon changes:
Sean Egan <seanegan@pidgin.im>
parents:
15435
diff
changeset
|
541 | g_free(filename); |
| 10297 | 542 | } |
| 543 | ||
| 544 | gtk_icon_factory_add(icon_factory, stock_icons[i].name, iconset); | |
| 545 | ||
| 546 | gtk_icon_set_unref(iconset); | |
| 547 | } | |
| 548 | ||
|
23965
13cd30de531b
Add the icon theme files, and re-work some things
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23964
diff
changeset
|
549 | /* All non-status sized icons */ |
|
15458
39c79dc7c965
A lot of status icon changes:
Sean Egan <seanegan@pidgin.im>
parents:
15435
diff
changeset
|
550 | for (i = 0; i < G_N_ELEMENTS(sized_stock_icons); i++) |
|
39c79dc7c965
A lot of status icon changes:
Sean Egan <seanegan@pidgin.im>
parents:
15435
diff
changeset
|
551 | { |
|
23965
13cd30de531b
Add the icon theme files, and re-work some things
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23964
diff
changeset
|
552 | GtkIconSet *iconset = gtk_icon_set_new(); |
|
21811
c07bdd3bd67a
I find this less painful to the eyes.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
20834
diff
changeset
|
553 | |
|
27262
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
554 | #define ADD_SIZED_ICON(name, size) \ |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
555 | if (sized_stock_icons[i].name) \ |
|
29705
3ccbf39a7f8e
Revert some changes to pidginstock.[ch] that are no longer necessary now
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29653
diff
changeset
|
556 | add_sized_icon(iconset, name, PIDGIN_ICON_THEME(theme), size, sized_stock_icons[i], FALSE); |
|
21811
c07bdd3bd67a
I find this less painful to the eyes.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
20834
diff
changeset
|
557 | ADD_SIZED_ICON(microscopic, "11"); |
|
c07bdd3bd67a
I find this less painful to the eyes.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
20834
diff
changeset
|
558 | ADD_SIZED_ICON(extra_small, "16"); |
|
c07bdd3bd67a
I find this less painful to the eyes.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
20834
diff
changeset
|
559 | ADD_SIZED_ICON(small, "22"); |
|
c07bdd3bd67a
I find this less painful to the eyes.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
20834
diff
changeset
|
560 | ADD_SIZED_ICON(medium, "32"); |
|
c07bdd3bd67a
I find this less painful to the eyes.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
20834
diff
changeset
|
561 | ADD_SIZED_ICON(large, "48"); |
|
c07bdd3bd67a
I find this less painful to the eyes.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
20834
diff
changeset
|
562 | ADD_SIZED_ICON(huge, "64"); |
|
c07bdd3bd67a
I find this less painful to the eyes.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
20834
diff
changeset
|
563 | #undef ADD_SIZED_ICON |
|
15458
39c79dc7c965
A lot of status icon changes:
Sean Egan <seanegan@pidgin.im>
parents:
15435
diff
changeset
|
564 | |
|
39c79dc7c965
A lot of status icon changes:
Sean Egan <seanegan@pidgin.im>
parents:
15435
diff
changeset
|
565 | gtk_icon_factory_add(icon_factory, sized_stock_icons[i].name, iconset); |
|
39c79dc7c965
A lot of status icon changes:
Sean Egan <seanegan@pidgin.im>
parents:
15435
diff
changeset
|
566 | gtk_icon_set_unref(iconset); |
|
39c79dc7c965
A lot of status icon changes:
Sean Egan <seanegan@pidgin.im>
parents:
15435
diff
changeset
|
567 | } |
|
39c79dc7c965
A lot of status icon changes:
Sean Egan <seanegan@pidgin.im>
parents:
15435
diff
changeset
|
568 | |
|
39c79dc7c965
A lot of status icon changes:
Sean Egan <seanegan@pidgin.im>
parents:
15435
diff
changeset
|
569 | gtk_widget_destroy(win); |
| 10297 | 570 | g_object_unref(G_OBJECT(icon_factory)); |
|
26843
9d7022b30f71
Reload settings after updating icon theme.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
26813
diff
changeset
|
571 | reload_settings(); |
|
26813
c1a058a2466e
Make it possible to load non-status icons using a PidginStockIconTheme.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
26747
diff
changeset
|
572 | } |
|
c1a058a2466e
Make it possible to load non-status icons using a PidginStockIconTheme.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
26747
diff
changeset
|
573 | |
|
c1a058a2466e
Make it possible to load non-status icons using a PidginStockIconTheme.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
26747
diff
changeset
|
574 | void |
|
c1a058a2466e
Make it possible to load non-status icons using a PidginStockIconTheme.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
26747
diff
changeset
|
575 | pidgin_stock_init(void) |
|
c1a058a2466e
Make it possible to load non-status icons using a PidginStockIconTheme.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
26747
diff
changeset
|
576 | { |
|
c1a058a2466e
Make it possible to load non-status icons using a PidginStockIconTheme.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
26747
diff
changeset
|
577 | PidginIconThemeLoader *loader, *stockloader; |
|
c1a058a2466e
Make it possible to load non-status icons using a PidginStockIconTheme.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
26747
diff
changeset
|
578 | const gchar *path = NULL; |
|
c1a058a2466e
Make it possible to load non-status icons using a PidginStockIconTheme.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
26747
diff
changeset
|
579 | |
|
c1a058a2466e
Make it possible to load non-status icons using a PidginStockIconTheme.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
26747
diff
changeset
|
580 | if (stock_initted) |
|
c1a058a2466e
Make it possible to load non-status icons using a PidginStockIconTheme.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
26747
diff
changeset
|
581 | return; |
|
c1a058a2466e
Make it possible to load non-status icons using a PidginStockIconTheme.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
26747
diff
changeset
|
582 | |
|
c1a058a2466e
Make it possible to load non-status icons using a PidginStockIconTheme.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
26747
diff
changeset
|
583 | stock_initted = TRUE; |
|
c1a058a2466e
Make it possible to load non-status icons using a PidginStockIconTheme.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
26747
diff
changeset
|
584 | |
|
c1a058a2466e
Make it possible to load non-status icons using a PidginStockIconTheme.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
26747
diff
changeset
|
585 | /* Setup the status icon theme */ |
|
c1a058a2466e
Make it possible to load non-status icons using a PidginStockIconTheme.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
26747
diff
changeset
|
586 | loader = g_object_new(PIDGIN_TYPE_ICON_THEME_LOADER, "type", "status-icon", NULL); |
|
c1a058a2466e
Make it possible to load non-status icons using a PidginStockIconTheme.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
26747
diff
changeset
|
587 | purple_theme_manager_register_type(PURPLE_THEME_LOADER(loader)); |
|
28476
04e8f641aa37
Call purple_prefs_add_none on the parents for the status and stock icon
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
28449
diff
changeset
|
588 | purple_prefs_add_none(PIDGIN_PREFS_ROOT "/status"); |
|
26813
c1a058a2466e
Make it possible to load non-status icons using a PidginStockIconTheme.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
26747
diff
changeset
|
589 | purple_prefs_add_string(PIDGIN_PREFS_ROOT "/status/icon-theme", ""); |
|
c1a058a2466e
Make it possible to load non-status icons using a PidginStockIconTheme.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
26747
diff
changeset
|
590 | purple_prefs_add_path(PIDGIN_PREFS_ROOT "/status/icon-theme-dir", ""); |
|
c1a058a2466e
Make it possible to load non-status icons using a PidginStockIconTheme.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
26747
diff
changeset
|
591 | |
|
c1a058a2466e
Make it possible to load non-status icons using a PidginStockIconTheme.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
26747
diff
changeset
|
592 | stockloader = g_object_new(PIDGIN_TYPE_ICON_THEME_LOADER, "type", "stock-icon", NULL); |
|
c1a058a2466e
Make it possible to load non-status icons using a PidginStockIconTheme.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
26747
diff
changeset
|
593 | purple_theme_manager_register_type(PURPLE_THEME_LOADER(stockloader)); |
|
28476
04e8f641aa37
Call purple_prefs_add_none on the parents for the status and stock icon
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
28449
diff
changeset
|
594 | purple_prefs_add_none(PIDGIN_PREFS_ROOT "/stock"); |
|
26813
c1a058a2466e
Make it possible to load non-status icons using a PidginStockIconTheme.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
26747
diff
changeset
|
595 | purple_prefs_add_string(PIDGIN_PREFS_ROOT "/stock/icon-theme", ""); |
|
c1a058a2466e
Make it possible to load non-status icons using a PidginStockIconTheme.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
26747
diff
changeset
|
596 | purple_prefs_add_path(PIDGIN_PREFS_ROOT "/stock/icon-theme-dir", ""); |
|
c1a058a2466e
Make it possible to load non-status icons using a PidginStockIconTheme.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
26747
diff
changeset
|
597 | |
|
c1a058a2466e
Make it possible to load non-status icons using a PidginStockIconTheme.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
26747
diff
changeset
|
598 | /* register custom icon sizes */ |
|
c1a058a2466e
Make it possible to load non-status icons using a PidginStockIconTheme.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
26747
diff
changeset
|
599 | microscopic = gtk_icon_size_register(PIDGIN_ICON_SIZE_TANGO_MICROSCOPIC, 11, 11); |
|
c1a058a2466e
Make it possible to load non-status icons using a PidginStockIconTheme.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
26747
diff
changeset
|
600 | extra_small = gtk_icon_size_register(PIDGIN_ICON_SIZE_TANGO_EXTRA_SMALL, 16, 16); |
|
27262
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
601 | small = gtk_icon_size_register(PIDGIN_ICON_SIZE_TANGO_SMALL, 22, 22); |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
602 | medium = gtk_icon_size_register(PIDGIN_ICON_SIZE_TANGO_MEDIUM, 32, 32); |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
603 | large = gtk_icon_size_register(PIDGIN_ICON_SIZE_TANGO_LARGE, 48, 48); |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
604 | huge = gtk_icon_size_register(PIDGIN_ICON_SIZE_TANGO_HUGE, 64, 64); |
|
26813
c1a058a2466e
Make it possible to load non-status icons using a PidginStockIconTheme.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
26747
diff
changeset
|
605 | |
|
c1a058a2466e
Make it possible to load non-status icons using a PidginStockIconTheme.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
26747
diff
changeset
|
606 | pidgin_stock_load_stock_icon_theme(NULL); |
| 10297 | 607 | |
|
23973
189295d2ee8e
clean up formatting, and added render settings for the names/markup on the blist
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23972
diff
changeset
|
608 | /* Pre-load Status icon theme - this avoids a bug with displaying the correct icon in the tray, theme is destroyed after*/ |
|
28449
69dd8af58b41
I guess this pref name was changed but this one line was not. This would
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
27910
diff
changeset
|
609 | if (purple_prefs_get_string(PIDGIN_PREFS_ROOT "/status/icon-theme") && |
|
23970
85dcf9218f63
fixes initialize icon theme bug by pre-loading the theme
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23967
diff
changeset
|
610 | (path = purple_prefs_get_path(PIDGIN_PREFS_ROOT "/status/icon-theme-dir"))) { |
|
25888
d0fdd378a635
Remove trailing whitespace
Mark Doliner <markdoliner@pidgin.im>
parents:
25000
diff
changeset
|
611 | |
|
23972
90e0da03c053
theme loader cleanup, and remove a few warnings
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23970
diff
changeset
|
612 | PidginStatusIconTheme *theme = PIDGIN_STATUS_ICON_THEME(purple_theme_loader_build(PURPLE_THEME_LOADER(loader), path)); |
|
23970
85dcf9218f63
fixes initialize icon theme bug by pre-loading the theme
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23967
diff
changeset
|
613 | pidgin_stock_load_status_icon_theme(theme); |
|
28515
10d8aab24f2e
Fix minor assert so I can run with G_DEBUG=fatal_criticals.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
28476
diff
changeset
|
614 | if (theme) |
|
10d8aab24f2e
Fix minor assert so I can run with G_DEBUG=fatal_criticals.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
28476
diff
changeset
|
615 | g_object_unref(G_OBJECT(theme)); |
|
23970
85dcf9218f63
fixes initialize icon theme bug by pre-loading the theme
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23967
diff
changeset
|
616 | |
|
27262
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
617 | } |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
618 | else |
|
ce9c568ee33c
A few bits of whitespace changes...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26843
diff
changeset
|
619 | pidgin_stock_load_status_icon_theme(NULL); |
|
23964
342e3f5bedd9
partially working status icon theme stuff
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents:
23423
diff
changeset
|
620 | |
| 10297 | 621 | /* Register the stock items. */ |
| 622 | gtk_stock_add_static(stock_items, G_N_ELEMENTS(stock_items)); | |
| 623 | } | |
|
26813
c1a058a2466e
Make it possible to load non-status icons using a PidginStockIconTheme.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
26747
diff
changeset
|
624 | |
|
c1a058a2466e
Make it possible to load non-status icons using a PidginStockIconTheme.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
26747
diff
changeset
|
625 | static void |
|
c1a058a2466e
Make it possible to load non-status icons using a PidginStockIconTheme.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
26747
diff
changeset
|
626 | pidgin_stock_icon_theme_class_init(PidginStockIconThemeClass *klass) |
|
c1a058a2466e
Make it possible to load non-status icons using a PidginStockIconTheme.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
26747
diff
changeset
|
627 | { |
|
c1a058a2466e
Make it possible to load non-status icons using a PidginStockIconTheme.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
26747
diff
changeset
|
628 | } |
|
c1a058a2466e
Make it possible to load non-status icons using a PidginStockIconTheme.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
26747
diff
changeset
|
629 | |
|
c1a058a2466e
Make it possible to load non-status icons using a PidginStockIconTheme.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
26747
diff
changeset
|
630 | GType |
|
c1a058a2466e
Make it possible to load non-status icons using a PidginStockIconTheme.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
26747
diff
changeset
|
631 | pidgin_stock_icon_theme_get_type(void) |
|
c1a058a2466e
Make it possible to load non-status icons using a PidginStockIconTheme.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
26747
diff
changeset
|
632 | { |
|
c1a058a2466e
Make it possible to load non-status icons using a PidginStockIconTheme.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
26747
diff
changeset
|
633 | static GType type = 0; |
|
c1a058a2466e
Make it possible to load non-status icons using a PidginStockIconTheme.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
26747
diff
changeset
|
634 | if (type == 0) { |
|
c1a058a2466e
Make it possible to load non-status icons using a PidginStockIconTheme.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
26747
diff
changeset
|
635 | static const GTypeInfo info = { |
|
c1a058a2466e
Make it possible to load non-status icons using a PidginStockIconTheme.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
26747
diff
changeset
|
636 | sizeof (PidginStockIconThemeClass), |
|
c1a058a2466e
Make it possible to load non-status icons using a PidginStockIconTheme.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
26747
diff
changeset
|
637 | NULL, /* base_init */ |
|
c1a058a2466e
Make it possible to load non-status icons using a PidginStockIconTheme.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
26747
diff
changeset
|
638 | NULL, /* base_finalize */ |
|
c1a058a2466e
Make it possible to load non-status icons using a PidginStockIconTheme.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
26747
diff
changeset
|
639 | (GClassInitFunc)pidgin_stock_icon_theme_class_init, /* class_init */ |
|
c1a058a2466e
Make it possible to load non-status icons using a PidginStockIconTheme.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
26747
diff
changeset
|
640 | NULL, /* class_finalize */ |
|
c1a058a2466e
Make it possible to load non-status icons using a PidginStockIconTheme.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
26747
diff
changeset
|
641 | NULL, /* class_data */ |
|
c1a058a2466e
Make it possible to load non-status icons using a PidginStockIconTheme.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
26747
diff
changeset
|
642 | sizeof (PidginStockIconTheme), |
|
c1a058a2466e
Make it possible to load non-status icons using a PidginStockIconTheme.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
26747
diff
changeset
|
643 | 0, /* n_preallocs */ |
|
c1a058a2466e
Make it possible to load non-status icons using a PidginStockIconTheme.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
26747
diff
changeset
|
644 | NULL, |
|
c1a058a2466e
Make it possible to load non-status icons using a PidginStockIconTheme.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
26747
diff
changeset
|
645 | NULL, /* value table */ |
|
c1a058a2466e
Make it possible to load non-status icons using a PidginStockIconTheme.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
26747
diff
changeset
|
646 | }; |
|
c1a058a2466e
Make it possible to load non-status icons using a PidginStockIconTheme.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
26747
diff
changeset
|
647 | type = g_type_register_static(PIDGIN_TYPE_ICON_THEME, |
|
c1a058a2466e
Make it possible to load non-status icons using a PidginStockIconTheme.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
26747
diff
changeset
|
648 | "PidginStockIconTheme", &info, 0); |
|
c1a058a2466e
Make it possible to load non-status icons using a PidginStockIconTheme.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
26747
diff
changeset
|
649 | } |
|
c1a058a2466e
Make it possible to load non-status icons using a PidginStockIconTheme.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
26747
diff
changeset
|
650 | return type; |
|
c1a058a2466e
Make it possible to load non-status icons using a PidginStockIconTheme.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
26747
diff
changeset
|
651 | } |