static void save_page_setup (GeditApp *app) { GeditAppPrivate *priv; priv = gedit_app_get_instance_private (app); if (priv->page_setup != NULL) { gchar *filename; GError *error = NULL; filename = get_page_setup_file (); gtk_page_setup_to_file (priv->page_setup, filename, &error); if (error) { g_warning ("%s", error->message); g_error_free (error); } g_free (filename); } }
int main (int argc, char **argv) { GtkApplication *app; GError *error = NULL; gtk_init (NULL, NULL); settings = gtk_print_settings_new_from_file ("print-settings.ini", &error); if (error) { g_print ("Failed to load print settings: %s\n", error->message); g_clear_error (&error); settings = gtk_print_settings_new (); } g_assert (settings != NULL); page_setup = gtk_page_setup_new_from_file ("page-setup.ini", &error); if (error) { g_print ("Failed to load page setup: %s\n", error->message); g_clear_error (&error); } app = gtk_application_new ("org.gtk.PrintEditor", 0); g_action_map_add_action_entries (G_ACTION_MAP (app), app_entries, G_N_ELEMENTS (app_entries), app); g_signal_connect (app, "startup", G_CALLBACK (startup), NULL); g_signal_connect (app, "activate", G_CALLBACK (activate), NULL); g_signal_connect (app, "command-line", G_CALLBACK (command_line), NULL); g_application_run (G_APPLICATION (app), argc, argv); if (!gtk_print_settings_to_file (settings, "print-settings.ini", &error)) { g_print ("Failed to save print settings: %s\n", error->message); g_clear_error (&error); } if (page_setup && !gtk_page_setup_to_file (page_setup, "page-setup.ini", &error)) { g_print ("Failed to save page setup: %s\n", error->message); g_clear_error (&error); } return 0; }
int main (int argc, char **argv) { GError *error = NULL; g_set_application_name ("Print editor"); gtk_init (&argc, &argv); settings = gtk_print_settings_new_from_file ("print-settings.ini", &error); if (error) { g_print ("Failed to load print settings: %s\n", error->message); g_clear_error (&error); settings = gtk_print_settings_new (); } g_assert (settings != NULL); page_setup = gtk_page_setup_new_from_file ("page-setup.ini", &error); if (error) { g_print ("Failed to load page setup: %s\n", error->message); g_clear_error (&error); } create_window (); if (argc == 2) load_file (argv[1]); gtk_main (); if (!gtk_print_settings_to_file (settings, "print-settings.ini", &error)) { g_print ("Failed to save print settings: %s\n", error->message); g_clear_error (&error); } if (page_setup && !gtk_page_setup_to_file (page_setup, "page-setup.ini", &error)) { g_print ("Failed to save page setup: %s\n", error->message); g_clear_error (&error); } return 0; }
void ephy_embed_shell_set_page_setup (EphyEmbedShell *shell, GtkPageSetup *page_setup) { EphyEmbedShellPrivate *priv = ephy_embed_shell_get_instance_private (shell); char *path; g_return_if_fail (EPHY_IS_EMBED_SHELL (shell)); if (page_setup != NULL) g_object_ref (page_setup); else page_setup = gtk_page_setup_new (); if (priv->page_setup != NULL) g_object_unref (priv->page_setup); priv->page_setup = page_setup; path = g_build_filename (ephy_dot_dir (), PAGE_SETUP_FILENAME, NULL); gtk_page_setup_to_file (page_setup, path, NULL); g_free (path); }