@@ -194,6 +194,62 @@ copy_state(GtkWidget *to, GtkWidget *from, const char *name)
194194 change_state (to , name , state );
195195}
196196
197+ void
198+ set_state_bool (GtkWidget * to , const char * name , gboolean value )
199+ {
200+ GVariant * state = g_variant_new_boolean (value );
201+
202+ change_state (to , name , state );
203+ }
204+
205+ void
206+ set_state_double (GtkWidget * to , const char * name , double value )
207+ {
208+ GVariant * state = g_variant_new_double (value );
209+
210+ change_state (to , name , state );
211+ }
212+
213+ void
214+ set_state_int (GtkWidget * to , const char * name , int value )
215+ {
216+ GVariant * state = g_variant_new_int32 (value );
217+
218+ change_state (to , name , state );
219+ }
220+
221+ void
222+ set_state_enum (GtkWidget * to , const char * name , const char * value )
223+ {
224+ GVariant * state = g_variant_new_string (value );
225+
226+ change_state (to , name , state );
227+ }
228+
229+ gboolean
230+ get_state_bool (GtkWidget * from , const char * name )
231+ {
232+ g_autoptr (GVariant ) state = get_state (from , name );
233+
234+ return g_variant_get_boolean (state );
235+ }
236+
237+ double
238+ get_state_double (GtkWidget * from , const char * name )
239+ {
240+ g_autoptr (GVariant ) state = get_state (from , name );
241+
242+ return g_variant_get_double (state );
243+ }
244+
245+ int
246+ get_state_int (GtkWidget * from , const char * name )
247+ {
248+ g_autoptr (GVariant ) state = get_state (from , name );
249+
250+ return g_variant_get_int32 (state );
251+ }
252+
197253/* A 'safe' way to run a few events.
198254 */
199255void
0 commit comments