static void gtk_switch_update (GtkActivatable *activatable, GtkAction *action, const gchar *property_name) { G_GNUC_BEGIN_IGNORE_DEPRECATIONS; if (strcmp (property_name, "visible") == 0) { if (gtk_action_is_visible (action)) gtk_widget_show (GTK_WIDGET (activatable)); else gtk_widget_hide (GTK_WIDGET (activatable)); } else if (strcmp (property_name, "sensitive") == 0) { gtk_widget_set_sensitive (GTK_WIDGET (activatable), gtk_action_is_sensitive (action)); } else if (strcmp (property_name, "active") == 0) { gtk_action_block_activate (action); gtk_switch_set_active (GTK_SWITCH (activatable), gtk_toggle_action_get_active (GTK_TOGGLE_ACTION (action))); gtk_action_unblock_activate (action); } G_GNUC_END_IGNORE_DEPRECATIONS; }
static void gtk_check_menu_item_update (GtkActivatable *activatable, GtkAction *action, const gchar *property_name) { GtkCheckMenuItem *check_menu_item; check_menu_item = GTK_CHECK_MENU_ITEM (activatable); parent_activatable_iface->update (activatable, action, property_name); if (strcmp (property_name, "active") == 0) { gtk_action_block_activate (action); gtk_check_menu_item_set_active (check_menu_item, gtk_toggle_action_get_active (GTK_TOGGLE_ACTION (action))); gtk_action_unblock_activate (action); } if (!gtk_activatable_get_use_action_appearance (activatable)) return; if (strcmp (property_name, "draw-as-radio") == 0) gtk_check_menu_item_set_draw_as_radio (check_menu_item, gtk_toggle_action_get_draw_as_radio (GTK_TOGGLE_ACTION (action))); }
static void gtk_check_menu_item_sync_action_properties (GtkActivatable *activatable, GtkAction *action) { GtkCheckMenuItem *check_menu_item; gboolean use_action_appearance; gboolean is_toggle_action; check_menu_item = GTK_CHECK_MENU_ITEM (activatable); parent_activatable_iface->sync_action_properties (activatable, action); G_GNUC_BEGIN_IGNORE_DEPRECATIONS; is_toggle_action = GTK_IS_TOGGLE_ACTION (action); G_GNUC_END_IGNORE_DEPRECATIONS; if (!is_toggle_action) return; G_GNUC_BEGIN_IGNORE_DEPRECATIONS; gtk_action_block_activate (action); gtk_check_menu_item_set_active (check_menu_item, gtk_toggle_action_get_active (GTK_TOGGLE_ACTION (action))); gtk_action_unblock_activate (action); use_action_appearance = gtk_activatable_get_use_action_appearance (activatable); G_GNUC_END_IGNORE_DEPRECATIONS; if (!use_action_appearance) return; G_GNUC_BEGIN_IGNORE_DEPRECATIONS; gtk_check_menu_item_set_draw_as_radio (check_menu_item, gtk_toggle_action_get_draw_as_radio (GTK_TOGGLE_ACTION (action))); G_GNUC_END_IGNORE_DEPRECATIONS; }
static void gtk_check_menu_item_update (GtkActivatable *activatable, GtkAction *action, const gchar *property_name) { GtkCheckMenuItem *check_menu_item; gboolean use_action_appearance; check_menu_item = GTK_CHECK_MENU_ITEM (activatable); parent_activatable_iface->update (activatable, action, property_name); G_GNUC_BEGIN_IGNORE_DEPRECATIONS; if (strcmp (property_name, "active") == 0) { gtk_action_block_activate (action); gtk_check_menu_item_set_active (check_menu_item, gtk_toggle_action_get_active (GTK_TOGGLE_ACTION (action))); gtk_action_unblock_activate (action); } use_action_appearance = gtk_activatable_get_use_action_appearance (activatable); G_GNUC_END_IGNORE_DEPRECATIONS; if (!use_action_appearance) return; if (strcmp (property_name, "draw-as-radio") == 0) { G_GNUC_BEGIN_IGNORE_DEPRECATIONS; gtk_check_menu_item_set_draw_as_radio (check_menu_item, gtk_toggle_action_get_draw_as_radio (GTK_TOGGLE_ACTION (action))); G_GNUC_END_IGNORE_DEPRECATIONS; } }
static VALUE rg_block_activate(VALUE self) { gtk_action_block_activate(_SELF(self)); if (rb_block_given_p()) rb_ensure(rb_yield, self, rg_unblock_activate, self); return self; }
static void gtk_toggle_tool_button_sync_action_properties (GtkActivatable *activatable, GtkAction *action) { GtkToggleToolButton *button; parent_activatable_iface->sync_action_properties (activatable, action); if (!GTK_IS_TOGGLE_ACTION (action)) return; button = GTK_TOGGLE_TOOL_BUTTON (activatable); gtk_action_block_activate (action); gtk_toggle_tool_button_set_active (button, gtk_toggle_action_get_active (GTK_TOGGLE_ACTION (action))); gtk_action_unblock_activate (action); }
static void gtk_toggle_tool_button_update (GtkActivatable *activatable, GtkAction *action, const gchar *property_name) { GtkToggleToolButton *button; parent_activatable_iface->update (activatable, action, property_name); button = GTK_TOGGLE_TOOL_BUTTON (activatable); if (strcmp (property_name, "active") == 0) { gtk_action_block_activate (action); gtk_toggle_tool_button_set_active (button, gtk_toggle_action_get_active (GTK_TOGGLE_ACTION (action))); gtk_action_unblock_activate (action); } }
static void gtk_switch_sync_action_properties (GtkActivatable *activatable, GtkAction *action) { if (!action) return; if (gtk_action_is_visible (action)) gtk_widget_show (GTK_WIDGET (activatable)); else gtk_widget_hide (GTK_WIDGET (activatable)); gtk_widget_set_sensitive (GTK_WIDGET (activatable), gtk_action_is_sensitive (action)); gtk_action_block_activate (action); gtk_switch_set_active (GTK_SWITCH (activatable), gtk_toggle_action_get_active (GTK_TOGGLE_ACTION (action))); gtk_action_unblock_activate (action); }
static void gtk_check_menu_item_sync_action_properties (GtkActivatable *activatable, GtkAction *action) { GtkCheckMenuItem *check_menu_item; check_menu_item = GTK_CHECK_MENU_ITEM (activatable); parent_activatable_iface->sync_action_properties (activatable, action); if (!GTK_IS_TOGGLE_ACTION (action)) return; gtk_action_block_activate (action); gtk_check_menu_item_set_active (check_menu_item, gtk_toggle_action_get_active (GTK_TOGGLE_ACTION (action))); gtk_action_unblock_activate (action); if (!gtk_activatable_get_use_action_appearance (activatable)) return; gtk_check_menu_item_set_draw_as_radio (check_menu_item, gtk_toggle_action_get_draw_as_radio (GTK_TOGGLE_ACTION (action))); }
static void gtk_toggle_tool_button_sync_action_properties (GtkActivatable *activatable, GtkAction *action) { GtkToggleToolButton *button; gboolean is_toggle_action; parent_activatable_iface->sync_action_properties (activatable, action); G_GNUC_BEGIN_IGNORE_DEPRECATIONS; is_toggle_action = GTK_IS_TOGGLE_ACTION (action); G_GNUC_END_IGNORE_DEPRECATIONS; if (!is_toggle_action) return; button = GTK_TOGGLE_TOOL_BUTTON (activatable); G_GNUC_BEGIN_IGNORE_DEPRECATIONS; gtk_action_block_activate (action); gtk_toggle_tool_button_set_active (button, gtk_toggle_action_get_active (GTK_TOGGLE_ACTION (action))); gtk_action_unblock_activate (action); G_GNUC_END_IGNORE_DEPRECATIONS; }