Mercurial > geeqie
comparison src/compat.c @ 457:5e9c24d3b3a8
Add a replacement for gtk_radio_action_set_current_value() which
require GTK+ >= 2.10.
Two new files were added, compat.h and compat.c.
author | zas_ |
---|---|
date | Sun, 20 Apr 2008 23:17:35 +0000 |
parents | |
children | 48c8e49b571c |
comparison
equal
deleted
inserted
replaced
456:12ba8fce8976 | 457:5e9c24d3b3a8 |
---|---|
1 /* | |
2 * Geeqie | |
3 * | |
4 * Authors: Vladimir Nadvornik / Laurent Monin | |
5 * | |
6 * This software is released under the GNU General Public License (GNU GPL). | |
7 * Please read the included file COPYING for more information. | |
8 * This software comes with no warranty of any kind, use at your own risk! | |
9 */ | |
10 | |
11 #include "main.h" | |
12 #include "compat.h" | |
13 | |
14 /* gtk_radio_action_set_current_value() replacement for GTK+ < 2.10 */ | |
15 void radio_action_set_current_value(GtkRadioAction *action, gint current_value) | |
16 { | |
17 #if GTK_CHECK_VERSION(2, 10, 0) | |
18 gtk_radio_action_set_current_value(action, current_value); | |
19 #else | |
20 GSList *group; | |
21 gint value; | |
22 | |
23 group = gtk_radio_action_get_group(action); | |
24 while (group) | |
25 { | |
26 action = GTK_RADIO_ACTION(group->data); | |
27 g_object_get(G_OBJECT(action), "value", &value, NULL); | |
28 if (value == current_value) | |
29 { | |
30 gtk_toggle_action_set_active(GTK_TOGGLE_ACTION(action), TRUE); | |
31 return; | |
32 } | |
33 group = g_slist_next(group); | |
34 } | |
35 #endif | |
36 } |