gboolean save_current_list(pqi inst) { GError *err = NULL; psi iter; char key[16]; MatePanelApplet *const applet = inst->applet; const gchar *fullkey; int maxkey = 0; mate_panel_applet_mateconf_set_int(applet,"mode",inst->mode, &err); if (err) return FALSE; mate_panel_applet_mateconf_set_bool(applet,"show-primary",inst->show_primary,&err); for (iter = inst->items; iter != NULL; iter = iter->next) { err = NULL; sprintf(key,"file%d",iter->id); mate_panel_applet_mateconf_set_string(applet,key,iter->file,&err); sprintf(key,"uses%d",iter->id); mate_panel_applet_mateconf_set_int(applet,key,iter->uses,&err); sprintf(key,"times%d",iter->id); mate_panel_applet_mateconf_set_int(applet,key,iter->lastaccess >> 32, &err); sprintf(key,"timeu%d",iter->id); mate_panel_applet_mateconf_set_int(applet,key,iter->lastaccess & 0xFFFFFFFF, &err); if (iter->id >= maxkey) maxkey = iter->id + 1; } sprintf(key,"file%d",maxkey); fullkey = mate_panel_applet_mateconf_get_full_key(applet,key); mateconf_client_unset(mateconf_client_get_default(),fullkey,NULL); return TRUE; }
static void reset_to_defaults (GtkWidget * button, GtkBuilder * dialog) { MatekbdKeyboardConfig empty_kbd_config; matekbd_keyboard_config_init (&empty_kbd_config, xkb_mateconf_client, engine); matekbd_keyboard_config_save_to_mateconf (&empty_kbd_config); matekbd_keyboard_config_term (&empty_kbd_config); mateconf_client_unset (xkb_mateconf_client, MATEKBD_DESKTOP_CONFIG_KEY_DEFAULT_GROUP, NULL); /* all the rest is g-s-d's business */ }
/* Commit changes to the MateConf database. */ static gboolean config_entry_commit (GtkWidget *entry, GdkEvent *event, gpointer callback_data) { gchar *text; const gchar *key; MateConfClient *client; client = g_object_get_data (G_OBJECT (entry), "client"); text = gtk_editable_get_chars (GTK_EDITABLE (entry), 0, -1); key = g_object_get_data (G_OBJECT (entry), "key"); /* Unset if the string is zero-length, otherwise set */ if (*text != '\0') mateconf_client_set_string (client, key, text, NULL); else mateconf_client_unset (client, key, NULL); g_free (text); return FALSE; }
static void unmount_connected_server (MateVFSVolume *volume, MateVFSVolumeOpCallback callback, gpointer user_data) { MateConfClient *client; gboolean res; char *key; gboolean success; char *detailed_error; GError *error; success = TRUE; detailed_error = NULL; client = mateconf_client_get_default (); key = g_strconcat (CONNECTED_SERVERS_DIR "/", volume->priv->mateconf_id, "/uri", NULL); error = NULL; res = mateconf_client_unset (client, key, &error); g_free (key); if (!res) { if (success) { detailed_error = g_strdup (error->message); } success = FALSE; g_error_free (error); } key = g_strconcat (CONNECTED_SERVERS_DIR "/", volume->priv->mateconf_id, "/icon", NULL); res = mateconf_client_unset (client, key, &error); g_free (key); if (!res) { if (success) { detailed_error = g_strdup (error->message); } success = FALSE; g_error_free (error); } key = g_strconcat (CONNECTED_SERVERS_DIR "/", volume->priv->mateconf_id, "/display_name", NULL); res = mateconf_client_unset (client, key, &error); g_free (key); if (!res) { if (success) { detailed_error = g_strdup (error->message); } success = FALSE; g_error_free (error); } g_object_unref (client); if (success) { (*callback) (success, NULL, NULL, user_data); } else { (*callback) (success, (char *) _("Unable to unmount connected server"), detailed_error, user_data); } g_free (detailed_error); }