static void panel_binding_changed (GConfClient *client, guint cnxn_id, GConfEntry *entry, PanelBinding *binding) { GConfValue *value; if (binding->keyval) panel_binding_clear_entry (binding, NULL); binding->keyval = 0; binding->modifiers = 0; value = gconf_entry_get_value (entry); if (!value || value->type != GCONF_VALUE_STRING) return; panel_binding_set_from_string (binding, gconf_value_get_string (value)); if (!binding->keyval) return; panel_binding_set_entry (binding, NULL); }
void panel_bindings_set_entries (GtkBindingSet *binding_set) { int i; if (!initialised) panel_bindings_initialise (); for (i = 0; i < G_N_ELEMENTS (bindings); i++) { if (!bindings [i].keyval) continue; panel_binding_set_entry (&bindings [i], binding_set); } }
static void panel_binding_changed (GSettings *settings, gchar *key, PanelBinding *binding) { if (binding->keyval) panel_binding_clear_entry (binding, NULL); binding->keyval = 0; binding->modifiers = 0; gchar *value = g_settings_get_string (settings, key); panel_binding_set_from_string (binding, value); g_free (value); if (!binding->keyval) return; panel_binding_set_entry (binding, NULL); }