[maemo-commits] [maemo-commits] r12917 - projects/haf/trunk/hildon-fm/hildon-fm

From: subversion at stage.maemo.org subversion at stage.maemo.org
Date: Mon Jul 30 17:38:39 EEST 2007
Author: marivoll
Date: 2007-07-30 17:38:33 +0300 (Mon, 30 Jul 2007)
New Revision: 12917

Modified:
   projects/haf/trunk/hildon-fm/hildon-fm/hildon-file-system-settings.c
   projects/haf/trunk/hildon-fm/hildon-fm/hildon-file-system-settings.h
Log:
	* hildon-fm/hildon-file-system-settings.c
	(hildon_file_system_write_user_settings,
	hildon_file_system_open_user_settings): New.


Modified: projects/haf/trunk/hildon-fm/hildon-fm/hildon-file-system-settings.c
===================================================================
--- projects/haf/trunk/hildon-fm/hildon-fm/hildon-file-system-settings.c	2007-07-30 14:31:12 UTC (rev 12916)
+++ projects/haf/trunk/hildon-fm/hildon-fm/hildon-file-system-settings.c	2007-07-30 14:38:33 UTC (rev 12917)
@@ -849,3 +849,47 @@
          self->priv->gconf_ready &&
          self->priv->flightmode_ready;
 }
+
+GKeyFile *
+hildon_file_system_open_user_settings ()
+{
+  GError *error = NULL;
+  gchar *file = g_strdup_printf ("%s/.osso/hildon-fm", g_get_home_dir ());
+  GKeyFile *keys = g_key_file_new ();
+
+  if (!g_key_file_load_from_file (keys, file, 0, &error))
+    {
+      if (!g_error_matches (error, G_FILE_ERROR, 
+			    G_FILE_ERROR_NOENT))
+	fprintf (stderr, "%s: %s\n", file, error->message);
+      g_error_free (error);
+    }
+  g_free (file);
+  return keys;
+}
+
+void
+hildon_file_system_write_user_settings (GKeyFile *keys)
+{
+  GError *error = NULL;
+  gssize len;
+  gchar *data = g_key_file_to_data (keys, &len, &error);
+
+  if (error)
+    {
+      fprintf (stderr, "%s\n", error->message);
+      g_error_free (error);
+    }
+  else
+    {
+      gchar *file = g_strdup_printf ("%s/.osso/hildon-fm", g_get_home_dir ());
+      g_file_set_contents (file, data, len, &error);
+      if (error)
+	{
+	  fprintf (stderr, "%s: %s\n", file, error->message);
+	  g_error_free (error);
+	}
+      g_free (file);
+    }
+  g_free (data);
+}

Modified: projects/haf/trunk/hildon-fm/hildon-fm/hildon-file-system-settings.h
===================================================================
--- projects/haf/trunk/hildon-fm/hildon-fm/hildon-file-system-settings.h	2007-07-30 14:31:12 UTC (rev 12916)
+++ projects/haf/trunk/hildon-fm/hildon-fm/hildon-file-system-settings.h	2007-07-30 14:38:33 UTC (rev 12917)
@@ -75,6 +75,9 @@
 /* Returns TRUE, if async queries have finished */
 gboolean _hildon_file_system_settings_ready(HildonFileSystemSettings *self);
 
+GKeyFile *hildon_file_system_open_user_settings ();
+void hildon_file_system_write_user_settings ();
+
 G_END_DECLS
 
 #endif


More information about the maemo-commits mailing list