Rename gtk_paper_size_get_builtins() to gtk_paper_size_get_paper_sizes()

2007-04-30  Matthias Clasen <mclasen@redhat.com>

        * gtk/gtk.symbols:
        * gtk/gtkpapersize.[hc]: Rename gtk_paper_size_get_builtins()
        to gtk_paper_size_get_paper_sizes() and optionally include
        custom paper sizes.

        * gtk/gtkpagesetupunixdialog.c: Internally export a function
        to load custom paper sizes.

        * modules/printbackends/file/gtkprintbackendfile.c: Implement
        printer_list_papers, returning all paper sizes.  (#434329,
        Christian Persch)


svn path=/trunk/; revision=17728
This commit is contained in:
Matthias Clasen
2007-04-30 06:03:01 +00:00
committed by Matthias Clasen
parent 23263cd43c
commit 7253a5a292
6 changed files with 81 additions and 12 deletions

View File

@ -181,14 +181,15 @@ custom_paper_get_filename (void)
return filename;
}
static void
load_custom_papers (GtkListStore *store)
GList *
_gtk_load_custom_papers (void)
{
GKeyFile *keyfile;
gchar *filename;
gchar **groups;
gsize n_groups, i;
gboolean load_ok;
GList *result = NULL;
filename = custom_paper_get_filename ();
@ -198,7 +199,7 @@ load_custom_papers (GtkListStore *store)
if (!load_ok)
{
g_key_file_free (keyfile);
return;
return NULL;
}
groups = g_key_file_get_groups (keyfile, &n_groups);
@ -211,15 +212,34 @@ load_custom_papers (GtkListStore *store)
if (!page_setup)
continue;
result = g_list_prepend (result, page_setup);
}
g_strfreev (groups);
g_key_file_free (keyfile);
return g_list_reverse (result);
}
static void
load_custom_papers (GtkListStore *store)
{
GtkTreeIter iter;
GList *papers, *p;
GtkPageSetup *page_setup;
papers = _gtk_load_custom_papers ();
for (p = papers; p; p = p->next)
{
page_setup = p->data;
gtk_list_store_append (store, &iter);
gtk_list_store_set (store, &iter,
0, page_setup,
-1);
g_object_unref (page_setup);
}
g_strfreev (groups);
g_key_file_free (keyfile);
g_list_free (papers);
}
static void