From dd039744f9f164ac9afeaa39ca13cf5db37f422a Mon Sep 17 00:00:00 2001 From: Christian Persch Date: Tue, 10 Jul 2007 18:45:59 +0000 Subject: Use the new gtk functions to persist and load the print settings and page 2007-07-10 Christian Persch * embed/ephy-embed-shell.c: (ephy_embed_shell_set_page_setup), (ephy_embed_shell_get_page_setup), (ephy_embed_shell_set_print_settings), (ephy_embed_shell_get_print_settings): * lib/ephy-print-utils.c: * lib/ephy-print-utils.h: Use the new gtk functions to persist and load the print settings and page setup. Migrate our old settings, if present. svn path=/trunk/; revision=7143 --- lib/ephy-print-utils.c | 169 ------------------------------------------------- lib/ephy-print-utils.h | 14 ---- 2 files changed, 183 deletions(-) (limited to 'lib') diff --git a/lib/ephy-print-utils.c b/lib/ephy-print-utils.c index d56de4765..1376604c0 100644 --- a/lib/ephy-print-utils.c +++ b/lib/ephy-print-utils.c @@ -36,175 +36,6 @@ #define ERROR_QUARK (g_quark_from_static_string ("ephy-print-utils-error")) -/** - * ephy_print_utils_settings_new_from_file: - * @file_name: the filename to read the settings from - * @error: - * - * Reads the print settings from @filename. Returns a new #GtkPrintSettings - * object with the restored settings, or %NULL if an error occurred. - * - * Return value: the restored #GtkPrintSettings - * - * Since: 2.10 - */ -GtkPrintSettings * -ephy_print_utils_settings_new_from_file (const gchar *file_name, - GError **error) -{ - GtkPrintSettings *settings; - GKeyFile *key_file; - - g_return_val_if_fail (file_name != NULL, NULL); - - key_file = g_key_file_new (); - if (!g_key_file_load_from_file (key_file, file_name, 0, error)) - { - g_key_file_free (key_file); - return NULL; - } - - settings = ephy_print_utils_settings_new_from_key_file (key_file, error); - g_key_file_free (key_file); - - return settings; -} - -/** - * ephy_print_utils_settings_new_from_key_file: - * @key_file: the #GKeyFile to retrieve the settings from - * @error: - * - * Reads the print settings from @key_file. Returns a new #GtkPrintSettings - * object with the restored settings, or %NULL if an error occurred. - * - * Return value: the restored #GtkPrintSettings - * - * Since: 2.10 - */ -GtkPrintSettings * -ephy_print_utils_settings_new_from_key_file (GKeyFile *key_file, - GError **error) -{ - GtkPrintSettings *settings; - gchar **keys; - gsize n_keys, i; - GError *err = NULL; - - g_return_val_if_fail (key_file != NULL, NULL); - - keys = g_key_file_get_keys (key_file, - PRINT_SETTINGS_GROUP, - &n_keys, - &err); - if (err != NULL) - { - g_propagate_error (error, err); - return NULL; - } - - settings = gtk_print_settings_new (); - - for (i = 0 ; i < n_keys; ++i) - { - gchar *value; - - value = g_key_file_get_string (key_file, - PRINT_SETTINGS_GROUP, - keys[i], - NULL); - if (!value) - continue; - - gtk_print_settings_set (settings, keys[i], value); - g_free (value); - } - - g_strfreev (keys); - - return settings; -} - -/** - * ephy_print_utils_settings_to_file: - * @settings: a #GtkPrintSettings - * @file_name: the file to save to - * @error: - * - * This function saves the print settings from @settings to @file_name. - * - * Return value: %TRUE on success - * - * Since: 2.10 - */ -gboolean -ephy_print_utils_settings_to_file (GtkPrintSettings *settings, - const char *file_name, - GError **error) -{ - GKeyFile *keyfile; - gboolean retval; - char *data = NULL; - gsize len; - GError *err = NULL; - - g_return_val_if_fail (GTK_IS_PRINT_SETTINGS (settings), FALSE); - g_return_val_if_fail (file_name != NULL, FALSE); - - keyfile = g_key_file_new (); - retval = ephy_print_utils_settings_to_key_file (settings, keyfile, &err); - if (!retval) goto out; - - data = g_key_file_to_data (keyfile, &len, &err); - if (!data) goto out; - - retval = g_file_set_contents (file_name, data, len, &err); - -out: - if (err != NULL) - g_propagate_error (error, err); - - g_key_file_free (keyfile); - g_free (data); - - return retval; -} - -static void -add_value_to_keyfile (const gchar *key, - const gchar *value, - GKeyFile *keyfile) -{ - g_key_file_set_string (keyfile, PRINT_SETTINGS_GROUP, key, value); -} - -/** - * ephy_print_utils_settings_to_key_file: - * @settings: a #GtkPrintSettings - * @key_file: the #GKeyFile to save the print settings to - * @error: - * - * This function adds the print settings from @settings to @key_file. - * - * Return value: %TRUE on success - * - * Since: 2.10 - */ -gboolean -ephy_print_utils_settings_to_key_file (GtkPrintSettings *settings, - GKeyFile *key_file, - GError **error) -{ - g_return_val_if_fail (GTK_IS_PRINT_SETTINGS (settings), FALSE); - g_return_val_if_fail (key_file != NULL, FALSE); - - gtk_print_settings_foreach (settings, - (GtkPrintSettingsFunc) add_value_to_keyfile, - key_file); - - return TRUE; -} - /** * ephy_print_utils_page_setup_new_from_file: * @file_name: the filename to read the page_setup from diff --git a/lib/ephy-print-utils.h b/lib/ephy-print-utils.h index 3236db537..551a0a968 100644 --- a/lib/ephy-print-utils.h +++ b/lib/ephy-print-utils.h @@ -27,20 +27,6 @@ G_BEGIN_DECLS -GtkPrintSettings *ephy_print_utils_settings_new_from_file (const gchar *file_name, - GError **error); - -GtkPrintSettings *ephy_print_utils_settings_new_from_key_file (GKeyFile *key_file, - GError **error); - -gboolean ephy_print_utils_settings_to_file (GtkPrintSettings *settings, - const char *file_name, - GError **error); - -gboolean ephy_print_utils_settings_to_key_file (GtkPrintSettings *settings, - GKeyFile *key_file, - GError **error); - GtkPageSetup *ephy_print_utils_page_setup_new_from_file (const gchar *file_name, GError **error); -- cgit v1.2.3