mirror of https://github.com/GNOME/gimp.git
app: change GimpImageMapTool::get_settings_ui()'s "default_folder" to GFile
This commit is contained in:
parent
9a90bfa26a
commit
b200345a98
|
@ -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;
|
||||
|
|
|
@ -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,
|
||||
|
|
|
@ -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);
|
||||
|
|
|
@ -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,
|
||||
|
|
|
@ -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);
|
||||
|
|
|
@ -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);
|
||||
|
|
|
@ -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,
|
||||
|
|
Loading…
Reference in New Issue