app: change GimpImageMapTool::get_settings_ui()'s "default_folder" to GFile

This commit is contained in:
Michael Natterer 2014-07-29 11:56:06 +02:00
parent 9a90bfa26a
commit b200345a98
7 changed files with 33 additions and 20 deletions

View File

@ -66,7 +66,7 @@ gimp_image_map_tool_real_get_settings_ui (GimpImageMapTool *image_map_tool,
const gchar *import_dialog_title,
const gchar *export_dialog_title,
const gchar *file_dialog_help_id,
const gchar *default_folder,
GFile *default_folder,
GtkWidget **settings_box)
{
GimpToolInfo *tool_info;

View File

@ -27,7 +27,7 @@ GtkWidget * gimp_image_map_tool_real_get_settings_ui (GimpImageMapTool *tool,
const gchar *import_dialog_title,
const gchar *export_dialog_title,
const gchar *file_dialog_help_id,
const gchar *default_folder,
GFile *default_folder,
GtkWidget **settings_box);
gboolean gimp_image_map_tool_real_settings_import (GimpImageMapTool *tool,
GInputStream *input,

View File

@ -372,13 +372,12 @@ gimp_image_map_tool_initialize (GimpTool *tool,
if (image_map_tool->config && klass->settings_name)
{
GtkWidget *settings_ui;
gchar *default_folder;
GFile *default_folder;
GFile *settings_file;
settings_file = gimp_tool_info_get_options_file (tool_info,
".settings");
default_folder = g_build_filename (gimp_directory (),
klass->settings_name, NULL);
default_folder = gimp_directory_file (klass->settings_name, NULL);
settings_ui = klass->get_settings_ui (image_map_tool,
klass->recent_settings,
@ -389,7 +388,7 @@ gimp_image_map_tool_initialize (GimpTool *tool,
default_folder,
&image_map_tool->settings_box);
g_free (default_folder);
g_object_unref (default_folder);
g_object_unref (settings_file);
gtk_box_pack_start (GTK_BOX (vbox), settings_ui, FALSE, FALSE, 0);

View File

@ -81,7 +81,7 @@ struct _GimpImageMapToolClass
const gchar *import_dialog_title,
const gchar *export_dialog_title,
const gchar *file_dialog_help_id,
const gchar *default_folder,
GFile *default_folder,
GtkWidget **settings_box);
gboolean (* settings_import) (GimpImageMapTool *image_map_tool,

View File

@ -80,7 +80,7 @@ static GtkWidget * gimp_operation_tool_get_settings_ui (GimpImageMapTool *image
const gchar *import_dialog_title,
const gchar *export_dialog_title,
const gchar *file_dialog_help_id,
const gchar *default_folder,
GFile *default_folder,
GtkWidget **settings_box);
static void gimp_operation_tool_color_picked (GimpImageMapTool *im_tool,
gpointer identifier,
@ -316,7 +316,7 @@ gimp_operation_tool_get_settings_ui (GimpImageMapTool *image_map_tool,
const gchar *import_dialog_title,
const gchar *export_dialog_title,
const gchar *file_dialog_help_id,
const gchar *default_folder,
GFile *default_folder,
GtkWidget **settings_box)
{
GimpOperationTool *tool = GIMP_OPERATION_TOOL (image_map_tool);
@ -346,7 +346,7 @@ gimp_operation_tool_get_settings_ui (GimpImageMapTool *image_map_tool,
import_title,
export_title,
"help-foo",
g_get_home_dir (),
NULL, /* sic */
settings_box);
g_free (import_title);

View File

@ -80,7 +80,7 @@ struct _GimpSettingsBoxPrivate
gchar *import_dialog_title;
gchar *export_dialog_title;
gchar *file_dialog_help_id;
gchar *default_folder;
GFile *default_folder;
GFile *last_file;
};
@ -362,10 +362,15 @@ gimp_settings_box_finalize (GObject *object)
private->last_file = NULL;
}
if (private->default_folder)
{
g_object_unref (private->default_folder);
private->default_folder = NULL;
}
g_free (private->import_dialog_title);
g_free (private->export_dialog_title);
g_free (private->file_dialog_help_id);
g_free (private->default_folder);
if (private->editor_dialog)
{
@ -795,14 +800,19 @@ gimp_settings_box_file_dialog (GimpSettingsBox *box,
NULL);
if (private->default_folder &&
g_file_test (private->default_folder, G_FILE_TEST_IS_DIR))
g_file_query_file_type (private->default_folder,
G_FILE_QUERY_INFO_NONE, NULL) ==
G_FILE_TYPE_DIRECTORY)
{
gtk_file_chooser_add_shortcut_folder (GTK_FILE_CHOOSER (dialog),
private->default_folder, NULL);
gchar *uri = g_file_get_uri (private->default_folder);
gtk_file_chooser_add_shortcut_folder_uri (GTK_FILE_CHOOSER (dialog),
uri, NULL);
g_free (uri);
if (! private->last_file)
gtk_file_chooser_set_current_folder (GTK_FILE_CHOOSER (dialog),
private->default_folder);
gtk_file_chooser_set_current_folder_file (GTK_FILE_CHOOSER (dialog),
private->default_folder,
NULL);
}
else if (! private->last_file)
{
@ -943,7 +953,7 @@ gimp_settings_box_new (Gimp *gimp,
const gchar *import_dialog_title,
const gchar *export_dialog_title,
const gchar *file_dialog_help_id,
const gchar *default_folder,
GFile *default_folder,
GFile *last_file)
{
GimpSettingsBox *box;
@ -953,6 +963,8 @@ gimp_settings_box_new (Gimp *gimp,
g_return_val_if_fail (GIMP_IS_CONFIG (config), NULL);
g_return_val_if_fail (GIMP_IS_CONTAINER (container), NULL);
g_return_val_if_fail (G_IS_FILE (file), NULL);
g_return_val_if_fail (default_folder == NULL || G_IS_FILE (default_folder),
NULL);
g_return_val_if_fail (last_file == NULL || G_IS_FILE (last_file), NULL);
box = g_object_new (GIMP_TYPE_SETTINGS_BOX,
@ -967,7 +979,9 @@ gimp_settings_box_new (Gimp *gimp,
private->import_dialog_title = g_strdup (import_dialog_title);
private->export_dialog_title = g_strdup (export_dialog_title);
private->file_dialog_help_id = g_strdup (file_dialog_help_id);
private->default_folder = g_strdup (default_folder);
if (default_folder)
private->default_folder = g_object_ref (default_folder);
if (last_file)
private->last_file = g_object_ref (last_file);

View File

@ -61,7 +61,7 @@ GtkWidget * gimp_settings_box_new (Gimp *gimp,
const gchar *import_dialog_title,
const gchar *export_dialog_title,
const gchar *file_dialog_help_id,
const gchar *default_folder,
GFile *default_folder,
GFile *last_file);
void gimp_settings_box_add_current (GimpSettingsBox *box,