Commit 353283b8 authored by Michael Natterer's avatar Michael Natterer 😴 Committed by Michael Natterer

app/tools/Makefile.am new files containing all the recent settings and

2008-05-20  Michael Natterer  <mitch@gimp.org>

	* app/tools/Makefile.am
	* app/tools/gimpimagemaptool-settings.[ch]: new files containing
	all the recent settings and settings load/save GUI and code.  Got
	rid of shortcut loading/saving using shift+click. Added default
	implementations of ::settings_load() and ::settings_save().
	The GUI is currently horrible, work in progress!

	* app/tools/gimpimagemaptool.c: removed the settings code here.

	* app/tools/gimpcurvestool.c * app/tools/gimplevelstool.c: don't
	pack the load and save buttons, this is done generically for all
	tools now.

	* app/tools/gimpbrightnesscontrasttool.c
	* app/tools/gimpcolorbalancetool.c
	* app/tools/gimpcolorizetool.c
	* app/tools/gimphuesaturationtool.c
	* app/tools/gimpposterizetool.c
	* app/tools/gimpthresholdtool.c: set the load/save related members
	of GimpImageMapToolClass.


svn path=/trunk/; revision=25718
parent 9a63a435
2008-05-20 Michael Natterer <mitch@gimp.org>
* app/tools/Makefile.am
* app/tools/gimpimagemaptool-settings.[ch]: new files containing
all the recent settings and settings load/save GUI and code. Got
rid of shortcut loading/saving using shift+click. Added default
implementations of ::settings_load() and ::settings_save().
The GUI is currently horrible, work in progress!
* app/tools/gimpimagemaptool.c: removed the settings code here.
* app/tools/gimpcurvestool.c * app/tools/gimplevelstool.c: don't
pack the load and save buttons, this is done generically for all
tools now.
* app/tools/gimpbrightnesscontrasttool.c
* app/tools/gimpcolorbalancetool.c
* app/tools/gimpcolorizetool.c
* app/tools/gimphuesaturationtool.c
* app/tools/gimpposterizetool.c
* app/tools/gimpthresholdtool.c: set the load/save related members
of GimpImageMapToolClass.
2008-05-20 Sven Neumann <sven@gimp.org>
* app/widgets/Makefile.am
......
......@@ -90,6 +90,8 @@ libapptools_a_sources = \
gimpimagemapoptions.h \
gimpimagemaptool.c \
gimpimagemaptool.h \
gimpimagemaptool-settings.c \
gimpimagemaptool-settings.h \
gimpinkoptions-gui.c \
gimpinkoptions-gui.h \
gimpinktool.c \
......
......@@ -122,18 +122,23 @@ gimp_brightness_contrast_tool_class_init (GimpBrightnessContrastToolClass *klass
GimpToolClass *tool_class = GIMP_TOOL_CLASS (klass);
GimpImageMapToolClass *im_tool_class = GIMP_IMAGE_MAP_TOOL_CLASS (klass);
object_class->finalize = gimp_brightness_contrast_tool_finalize;
tool_class->initialize = gimp_brightness_contrast_tool_initialize;
tool_class->button_press = gimp_brightness_contrast_tool_button_press;
tool_class->button_release = gimp_brightness_contrast_tool_button_release;
tool_class->motion = gimp_brightness_contrast_tool_motion;
im_tool_class->shell_desc = _("Adjust Brightness and Contrast");
im_tool_class->get_operation = gimp_brightness_contrast_tool_get_operation;
im_tool_class->map = gimp_brightness_contrast_tool_map;
im_tool_class->dialog = gimp_brightness_contrast_tool_dialog;
object_class->finalize = gimp_brightness_contrast_tool_finalize;
tool_class->initialize = gimp_brightness_contrast_tool_initialize;
tool_class->button_press = gimp_brightness_contrast_tool_button_press;
tool_class->button_release = gimp_brightness_contrast_tool_button_release;
tool_class->motion = gimp_brightness_contrast_tool_motion;
im_tool_class->shell_desc = _("Adjust Brightness and Contrast");
im_tool_class->settings_name = "brightness-contrast";
im_tool_class->load_dialog_title = _("Load Brightness-Contrast settings");
im_tool_class->load_button_tip = _("Load brightness-contrast settings from file");
im_tool_class->save_dialog_title = _("Save Brightness-Contrast settings");
im_tool_class->save_button_tip = _("Save brightness-contrast settings to file");
im_tool_class->get_operation = gimp_brightness_contrast_tool_get_operation;
im_tool_class->map = gimp_brightness_contrast_tool_map;
im_tool_class->dialog = gimp_brightness_contrast_tool_dialog;
}
static void
......
......@@ -106,16 +106,21 @@ gimp_color_balance_tool_class_init (GimpColorBalanceToolClass *klass)
GimpToolClass *tool_class = GIMP_TOOL_CLASS (klass);
GimpImageMapToolClass *im_tool_class = GIMP_IMAGE_MAP_TOOL_CLASS (klass);
object_class->finalize = gimp_color_balance_tool_finalize;
object_class->finalize = gimp_color_balance_tool_finalize;
tool_class->initialize = gimp_color_balance_tool_initialize;
tool_class->initialize = gimp_color_balance_tool_initialize;
im_tool_class->shell_desc = _("Adjust Color Balance");
im_tool_class->shell_desc = _("Adjust Color Balance");
im_tool_class->settings_name = "color-balance";
im_tool_class->load_dialog_title = _("Load Color Balance Settings");
im_tool_class->load_button_tip = _("Load color balance settings from file");
im_tool_class->save_dialog_title = _("Save Color Balance Settings");
im_tool_class->save_button_tip = _("Save color balance settings to file");
im_tool_class->get_operation = gimp_color_balance_tool_get_operation;
im_tool_class->map = gimp_color_balance_tool_map;
im_tool_class->dialog = gimp_color_balance_tool_dialog;
im_tool_class->reset = gimp_color_balance_tool_reset;
im_tool_class->get_operation = gimp_color_balance_tool_get_operation;
im_tool_class->map = gimp_color_balance_tool_map;
im_tool_class->dialog = gimp_color_balance_tool_dialog;
im_tool_class->reset = gimp_color_balance_tool_reset;
}
static void
......
......@@ -101,15 +101,20 @@ gimp_colorize_tool_class_init (GimpColorizeToolClass *klass)
GimpToolClass *tool_class = GIMP_TOOL_CLASS (klass);
GimpImageMapToolClass *im_tool_class = GIMP_IMAGE_MAP_TOOL_CLASS (klass);
object_class->finalize = gimp_colorize_tool_finalize;
object_class->finalize = gimp_colorize_tool_finalize;
tool_class->initialize = gimp_colorize_tool_initialize;
tool_class->initialize = gimp_colorize_tool_initialize;
im_tool_class->shell_desc = _("Colorize the Image");
im_tool_class->shell_desc = _("Colorize the Image");
im_tool_class->settings_name = "colorize";
im_tool_class->load_dialog_title = _("Load Colorize Settings");
im_tool_class->load_button_tip = _("Load colorize settings from file");
im_tool_class->save_dialog_title = _("Save Colorsize Settings");
im_tool_class->save_button_tip = _("Save colorize settings to file");
im_tool_class->get_operation = gimp_colorize_tool_get_operation;
im_tool_class->map = gimp_colorize_tool_map;
im_tool_class->dialog = gimp_colorize_tool_dialog;
im_tool_class->get_operation = gimp_colorize_tool_get_operation;
im_tool_class->map = gimp_colorize_tool_map;
im_tool_class->dialog = gimp_colorize_tool_dialog;
}
static void
......
......@@ -422,7 +422,6 @@ gimp_curves_tool_dialog (GimpImageMapTool *image_map_tool)
GtkWidget *table;
GtkWidget *button;
GtkWidget *bar;
gint padding;
vbox = image_map_tool->main_vbox;
......@@ -546,24 +545,6 @@ gimp_curves_tool_dialog (GimpImageMapTool *image_map_tool)
gtk_box_pack_end (GTK_BOX (vbox), hbox, FALSE, FALSE, 0);
gtk_widget_show (hbox);
/* Horizontal button box for load / save */
frame = gimp_frame_new (_("All Channels"));
gtk_box_pack_start (GTK_BOX (hbox), frame, FALSE, FALSE, 0);
gtk_widget_show (frame);
bbox = gtk_hbutton_box_new ();
gtk_box_set_spacing (GTK_BOX (bbox), 4);
gtk_container_add (GTK_CONTAINER (frame), bbox);
gtk_widget_show (bbox);
gtk_box_pack_start (GTK_BOX (bbox), image_map_tool->load_button,
FALSE, FALSE, 0);
gtk_widget_show (image_map_tool->load_button);
gtk_box_pack_start (GTK_BOX (bbox), image_map_tool->save_button,
FALSE, FALSE, 0);
gtk_widget_show (image_map_tool->save_button);
/* The radio box for selecting the curve type */
frame = gimp_frame_new (_("Curve Type"));
gtk_box_pack_end (GTK_BOX (hbox), frame, FALSE, FALSE, 0);
......@@ -574,13 +555,6 @@ gimp_curves_tool_dialog (GimpImageMapTool *image_map_tool)
G_CALLBACK (curves_curve_type_callback),
tool,
&tool->curve_type);
gtk_widget_style_get (bbox, "child-internal-pad-x", &padding, NULL);
gimp_enum_stock_box_set_child_padding (hbox, padding, -1);
gtk_container_set_border_width (GTK_CONTAINER (hbox), 2);
gtk_container_add (GTK_CONTAINER (frame), hbox);
gtk_widget_show (hbox);
}
......
......@@ -114,16 +114,21 @@ gimp_hue_saturation_tool_class_init (GimpHueSaturationToolClass *klass)
GimpToolClass *tool_class = GIMP_TOOL_CLASS (klass);
GimpImageMapToolClass *im_tool_class = GIMP_IMAGE_MAP_TOOL_CLASS (klass);
object_class->finalize = gimp_hue_saturation_tool_finalize;
object_class->finalize = gimp_hue_saturation_tool_finalize;
tool_class->initialize = gimp_hue_saturation_tool_initialize;
tool_class->initialize = gimp_hue_saturation_tool_initialize;
im_tool_class->shell_desc = _("Adjust Hue / Lightness / Saturation");
im_tool_class->shell_desc = _("Adjust Hue / Lightness / Saturation");
im_tool_class->settings_name = "hue-saturation";
im_tool_class->load_dialog_title = _("Load Hue-Saturation Settings");
im_tool_class->load_button_tip = _("Load hue-saturation settings from file");
im_tool_class->save_dialog_title = _("Save Hue-Saturation Settings");
im_tool_class->save_button_tip = _("Save hue-saturation settings to file");
im_tool_class->get_operation = gimp_hue_saturation_tool_get_operation;
im_tool_class->map = gimp_hue_saturation_tool_map;
im_tool_class->dialog = gimp_hue_saturation_tool_dialog;
im_tool_class->reset = gimp_hue_saturation_tool_reset;
im_tool_class->get_operation = gimp_hue_saturation_tool_get_operation;
im_tool_class->map = gimp_hue_saturation_tool_map;
im_tool_class->dialog = gimp_hue_saturation_tool_dialog;
im_tool_class->reset = gimp_hue_saturation_tool_reset;
}
static void
......
/* GIMP - The GNU Image Manipulation Program
* Copyright (C) 1995 Spencer Kimball and Peter Mattis
*
* gimpimagemaptool-settings.c
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*/
#include "config.h"
#include <errno.h>
#include <glib/gstdio.h>
#include <gegl.h>
#include <gtk/gtk.h>
#include "libgimpbase/gimpbase.h"
#include "libgimpconfig/gimpconfig.h"
#include "libgimpwidgets/gimpwidgets.h"
#include "tools-types.h"
#include "core/gimp.h"
#include "core/gimpcontext.h"
#include "core/gimplist.h"
#include "core/gimptoolinfo.h"
#include "widgets/gimpcontainercombobox.h"
#include "widgets/gimpcontainerview.h"
#include "gimpimagemapoptions.h"
#include "gimpimagemaptool.h"
#include "gimpimagemaptool-settings.h"
#include "gimp-intl.h"
/* local function prototypes */
static void gimp_image_map_tool_recent_selected (GimpContainerView *view,
GimpViewable *object,
gpointer insert_data,
GimpImageMapTool *tool);
static void gimp_image_map_tool_load_clicked (GtkWidget *widget,
GimpImageMapTool *tool);
static void gimp_image_map_tool_save_clicked (GtkWidget *widget,
GimpImageMapTool *tool);
static void gimp_image_map_tool_settings_dialog (GimpImageMapTool *im_tool,
const gchar *title,
gboolean save);
static gboolean gimp_image_map_tool_settings_load (GimpImageMapTool *tool,
const gchar *filename);
static gboolean gimp_image_map_tool_settings_save (GimpImageMapTool *tool,
const gchar *filename);
/* public functions */
gboolean
gimp_image_map_tool_dialog_add_settings (GimpImageMapTool *image_map_tool)
{
GimpImageMapToolClass *klass;
GimpToolInfo *tool_info;
GtkWidget *hbox;
GtkWidget *label;
GtkWidget *combo;
klass = GIMP_IMAGE_MAP_TOOL_GET_CLASS (image_map_tool);
tool_info = GIMP_TOOL (image_map_tool)->tool_info;
if (gimp_container_num_children (klass->recent_settings) == 0)
{
gchar *filename;
GError *error = NULL;
filename = gimp_tool_info_build_options_filename (tool_info,
".settings");
if (tool_info->gimp->be_verbose)
g_print ("Parsing '%s'\n", gimp_filename_to_utf8 (filename));
if (! gimp_config_deserialize_file (GIMP_CONFIG (klass->recent_settings),
filename,
NULL, &error))
{
if (error->code != GIMP_CONFIG_ERROR_OPEN_ENOENT)
gimp_message (tool_info->gimp, NULL, GIMP_MESSAGE_ERROR,
"%s", error->message);
g_clear_error (&error);
}
gimp_list_reverse (GIMP_LIST (klass->recent_settings));
g_free (filename);
}
hbox = gtk_hbox_new (FALSE, 4);
gtk_box_pack_start (GTK_BOX (image_map_tool->main_vbox), hbox,
FALSE, FALSE, 0);
gtk_widget_show (hbox);
label = gtk_label_new (_("Recent Settings:"));
gtk_box_pack_start (GTK_BOX (hbox), label, FALSE, FALSE, 0);
gtk_widget_show (label);
combo = gimp_container_combo_box_new (klass->recent_settings,
GIMP_CONTEXT (tool_info->tool_options),
16, 0);
gtk_box_pack_start (GTK_BOX (hbox), combo, TRUE, TRUE, 0);
gtk_widget_show (combo);
gimp_help_set_help_data (combo, _("Pick a setting from the list"),
NULL);
g_signal_connect_after (combo, "select-item",
G_CALLBACK (gimp_image_map_tool_recent_selected),
image_map_tool);
/* The load/save hbox */
hbox = gtk_hbox_new (FALSE, 4);
gtk_box_pack_start (GTK_BOX (image_map_tool->main_vbox), hbox,
FALSE, FALSE, 0);
gtk_widget_show (hbox);
image_map_tool->load_button = g_object_new (GIMP_TYPE_BUTTON,
"label", GTK_STOCK_OPEN,
"use-stock", TRUE,
"use-underline", TRUE,
NULL);
gtk_box_pack_start (GTK_BOX (hbox), image_map_tool->load_button,
FALSE, FALSE, 0);
gtk_widget_show (image_map_tool->load_button);
g_signal_connect (image_map_tool->load_button, "clicked",
G_CALLBACK (gimp_image_map_tool_load_clicked),
image_map_tool);
if (klass->load_button_tip)
gimp_help_set_help_data (image_map_tool->load_button,
klass->load_button_tip, NULL);
image_map_tool->save_button = g_object_new (GIMP_TYPE_BUTTON,
"label", GTK_STOCK_SAVE,
"use-stock", TRUE,
"use-underline", TRUE,
NULL);
gtk_box_pack_start (GTK_BOX (hbox), image_map_tool->save_button,
FALSE, FALSE, 0);
gtk_widget_show (image_map_tool->save_button);
g_signal_connect (image_map_tool->save_button, "clicked",
G_CALLBACK (gimp_image_map_tool_save_clicked),
image_map_tool);
if (klass->save_button_tip)
gimp_help_set_help_data (image_map_tool->save_button,
klass->save_button_tip, NULL);
return TRUE;
}
gboolean
gimp_image_map_tool_real_settings_load (GimpImageMapTool *tool,
const gchar *filename,
GError **error)
{
gboolean success;
if (GIMP_TOOL (tool)->tool_info->gimp->be_verbose)
g_print ("Parsing '%s'\n", gimp_filename_to_utf8 (filename));
success = gimp_config_deserialize_file (GIMP_CONFIG (tool->config),
filename,
NULL, error);
return success;
}
gboolean
gimp_image_map_tool_real_settings_save (GimpImageMapTool *tool,
const gchar *filename,
GError **error)
{
GimpImageMapToolClass *klass = GIMP_IMAGE_MAP_TOOL_GET_CLASS (tool);
gchar *header;
gchar *footer;
gboolean success;
header = g_strdup_printf ("GIMP %s tool settings", klass->settings_name);
footer = g_strdup_printf ("end of %s tool settings", klass->settings_name);
if (GIMP_TOOL (tool)->tool_info->gimp->be_verbose)
g_print ("Writing '%s'\n", gimp_filename_to_utf8 (filename));
success = gimp_config_serialize_to_file (GIMP_CONFIG (tool->config),
filename,
header, footer,
NULL, error);
g_free (header);
g_free (footer);
return success;
}
/* private functions */
static void
gimp_image_map_tool_recent_selected (GimpContainerView *view,
GimpViewable *object,
gpointer insert_data,
GimpImageMapTool *tool)
{
if (object)
{
gimp_config_copy (GIMP_CONFIG (object),
GIMP_CONFIG (tool->config), 0);
gimp_container_view_select_item (view, NULL);
}
}
static void
gimp_image_map_tool_load_clicked (GtkWidget *widget,
GimpImageMapTool *tool)
{
GimpImageMapToolClass *klass = GIMP_IMAGE_MAP_TOOL_GET_CLASS (tool);
gimp_image_map_tool_settings_dialog (tool, klass->load_dialog_title, FALSE);
}
static void
gimp_image_map_tool_save_clicked (GtkWidget *widget,
GimpImageMapTool *tool)
{
GimpImageMapToolClass *klass = GIMP_IMAGE_MAP_TOOL_GET_CLASS (tool);
gimp_image_map_tool_settings_dialog (tool, klass->save_dialog_title, TRUE);
}
static void
settings_dialog_response (GtkWidget *dialog,
gint response_id,
GimpImageMapTool *tool)
{
gboolean save;
save = GPOINTER_TO_INT (g_object_get_data (G_OBJECT (dialog), "save"));
if (response_id == GTK_RESPONSE_OK)
{
gchar *filename;
filename = gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (dialog));
if (save)
gimp_image_map_tool_settings_save (tool, filename);
else
gimp_image_map_tool_settings_load (tool, filename);
g_free (filename);
}
if (save)
gtk_widget_set_sensitive (tool->load_button, TRUE);
else
gtk_widget_set_sensitive (tool->save_button, TRUE);
gtk_widget_destroy (dialog);
}
static void
gimp_image_map_tool_settings_dialog (GimpImageMapTool *tool,
const gchar *title,
gboolean save)
{
GimpImageMapOptions *options = GIMP_IMAGE_MAP_TOOL_GET_OPTIONS (tool);
GtkFileChooser *chooser;
const gchar *settings_name;
gchar *folder;
settings_name = GIMP_IMAGE_MAP_TOOL_GET_CLASS (tool)->settings_name;
g_return_if_fail (settings_name != NULL);
if (tool->settings_dialog)
{
gtk_window_present (GTK_WINDOW (tool->settings_dialog));
return;
}
if (save)
gtk_widget_set_sensitive (tool->load_button, FALSE);
else
gtk_widget_set_sensitive (tool->save_button, FALSE);
tool->settings_dialog =
gtk_file_chooser_dialog_new (title, GTK_WINDOW (tool->shell),
save ?
GTK_FILE_CHOOSER_ACTION_SAVE :
GTK_FILE_CHOOSER_ACTION_OPEN,
GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
save ? GTK_STOCK_SAVE : GTK_STOCK_OPEN,
GTK_RESPONSE_OK,
NULL);
chooser = GTK_FILE_CHOOSER (tool->settings_dialog);
g_object_set_data (G_OBJECT (chooser), "save", GINT_TO_POINTER (save));
gtk_window_set_role (GTK_WINDOW (chooser), "gimp-load-save-settings");
gtk_window_set_position (GTK_WINDOW (chooser), GTK_WIN_POS_MOUSE);
g_object_add_weak_pointer (G_OBJECT (chooser),
(gpointer) &tool->settings_dialog);
gtk_window_set_destroy_with_parent (GTK_WINDOW (chooser), TRUE);
gtk_dialog_set_default_response (GTK_DIALOG (chooser), GTK_RESPONSE_OK);
if (save)
gtk_file_chooser_set_do_overwrite_confirmation (chooser, TRUE);
g_signal_connect (chooser, "response",
G_CALLBACK (settings_dialog_response),
tool);
g_signal_connect (chooser, "delete-event",
G_CALLBACK (gtk_true),
NULL);
folder = g_build_filename (gimp_directory (), settings_name, NULL);
if (g_file_test (folder, G_FILE_TEST_IS_DIR))
{
gtk_file_chooser_add_shortcut_folder (chooser, folder, NULL);
}
else
{
g_free (folder);
folder = g_strdup (g_get_home_dir ());
}
if (options->settings)
gtk_file_chooser_set_filename (chooser, options->settings);
else
gtk_file_chooser_set_current_folder (chooser, folder);
g_free (folder);
gimp_help_connect (tool->settings_dialog, gimp_standard_help_func,
GIMP_TOOL (tool)->tool_info->help_id, NULL);
gtk_widget_show (tool->settings_dialog);
}
static gboolean
gimp_image_map_tool_settings_load (GimpImageMapTool *tool,
const gchar *filename)
{
GimpImageMapToolClass *tool_class = GIMP_IMAGE_MAP_TOOL_GET_CLASS (tool);
GError *error = NULL;
g_return_val_if_fail (tool_class->settings_load != NULL, FALSE);
if (! tool_class->settings_load (tool, filename, &error))
{
gimp_message (GIMP_TOOL (tool)->tool_info->gimp, G_OBJECT (tool->shell),
GIMP_MESSAGE_ERROR, error->message);
g_clear_error (&error);
return FALSE;
}
gimp_image_map_tool_preview (tool);
g_object_set (GIMP_TOOL_GET_OPTIONS (tool),
"settings", filename,
NULL);
return TRUE;
}
static gboolean
gimp_image_map_tool_settings_save (GimpImageMapTool *tool,
const gchar *filename)
{
GimpImageMapToolClass *tool_class = GIMP_IMAGE_MAP_TOOL_GET_CLASS (tool);
GError *error = NULL;
gchar *display_name;
g_return_val_if_fail (tool_class->settings_save != NULL, FALSE);
if (! tool_class->settings_save (tool, filename, &error))
{
gimp_message (GIMP_TOOL (tool)->tool_info->gimp, G_OBJECT (tool->shell),
GIMP_MESSAGE_ERROR, error->message);
g_clear_error (&error);
return FALSE;
}
display_name = g_filename_display_name (filename);
gimp_message (GIMP_TOOL (tool)->tool_info->gimp,
G_OBJECT (GIMP_TOOL (tool)->display),
GIMP_MESSAGE_INFO,
_("Settings saved to '%s'"),
display_name);
g_free (display_name);
g_object_set (GIMP_TOOL_GET_OPTIONS (tool),
"settings", filename,
NULL);
return TRUE;
}
/* GIMP - The GNU Image Manipulation Program
* Copyright (C) 1995 Spencer Kimball and Peter Mattis
*
* gimpimagemaptool-settings.h
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*/
#ifndef __GIMP_IMAGE_MAP_TOOL_SETTINGS_H__
#define __GIMP_IMAGE_MAP_TOOL_SETTINGS_H__
gboolean gimp_image_map_tool_dialog_add_settings (GimpImageMapTool *image_map_tool);
gboolean gimp_image_map_tool_real_settings_load (GimpImageMapTool *tool,
const gchar *filename,
GError **error);
gboolean gimp_image_map_tool_real_settings_save (GimpImageMapTool *tool,
const gchar *filename,
GError **error);
#endif /* __GIMP_IMAGE_MAP_TOOL_SETTINGS_H__ */
......@@ -18,9 +18,6 @@
#include "config.h"
#include <errno.h>
#include <glib/gstdio.h>
#include <gegl.h>
#include <gtk/gtk.h>
#include <gdk/gdkkeysyms.h>
......@@ -41,8 +38,6 @@
#include "core/gimpprojection.h"
#include "core/gimptoolinfo.h"
#include "widgets/gimpcontainercombobox.h"
#include "widgets/gimpcontainerview.h"
#include "widgets/gimpdialogfactory.h"
#include "widgets/gimptooldialog.h"
#include "widgets/gimpwidgets-utils.h"
......@@ -53,6 +48,7 @@
#include "gimpcoloroptions.h"
#include "gimpimagemaptool.h"
#include "gimpimagemaptool-settings.h"
#include "gimptoolcontrol.h"
#include "tool_manager.h"
......@@ -98,31 +94,12 @@ static void gimp_image_map_tool_response (GtkWidget *widget,
gint response_id,
GimpImageMapTool *im_tool);
static void gimp_image_map_tool_recent_selected (GimpContainerView *view,
GimpViewable *object,
gpointer insert_data,
GimpImageMapTool *tool);
static void gimp_image_map_tool_load_clicked (GtkWidget *widget,
GimpImageMapTool *tool);
static void gimp_image_map_tool_load_ext_clicked (GtkWidget *widget,
GdkModifierType state,
GimpImageMapTool *tool);
static void gimp_image_map_tool_save_clicked (GtkWidget *widget,
GimpImageMapTool *tool);
static void gimp_image_map_tool_save_ext_clicked (GtkWidget *widget,
GdkModifierType state,
GimpImageMapTool *tool);
static void gimp_image_map_tool_settings_dialog (GimpImageMapTool *im_tool,