mirror of https://github.com/GNOME/gimp.git
Bug 599573 - Remember dialog defaults between Gimp sessions
Add resize and fill options for the "Layer Boundary Size" and "Canvas Size" dialogs to GimpDialogConfig.
This commit is contained in:
parent
6dd12d680d
commit
34eff7322e
|
@ -133,12 +133,12 @@ static void image_profile_convert_callback (GtkWidget *dialog
|
||||||
static void image_resize_callback (GtkWidget *dialog,
|
static void image_resize_callback (GtkWidget *dialog,
|
||||||
GimpViewable *viewable,
|
GimpViewable *viewable,
|
||||||
GimpContext *context,
|
GimpContext *context,
|
||||||
GimpFillType fill_type,
|
|
||||||
gint width,
|
gint width,
|
||||||
gint height,
|
gint height,
|
||||||
GimpUnit unit,
|
GimpUnit unit,
|
||||||
gint offset_x,
|
gint offset_x,
|
||||||
gint offset_y,
|
gint offset_y,
|
||||||
|
GimpFillType fill_type,
|
||||||
GimpItemSet layer_set,
|
GimpItemSet layer_set,
|
||||||
gboolean resize_text_layers,
|
gboolean resize_text_layers,
|
||||||
gpointer user_data);
|
gpointer user_data);
|
||||||
|
@ -629,15 +629,22 @@ image_resize_cmd_callback (GtkAction *action,
|
||||||
|
|
||||||
if (! dialog)
|
if (! dialog)
|
||||||
{
|
{
|
||||||
|
GimpDialogConfig *config = GIMP_DIALOG_CONFIG (image->gimp->config);
|
||||||
|
|
||||||
if (image_resize_unit != GIMP_UNIT_PERCENT)
|
if (image_resize_unit != GIMP_UNIT_PERCENT)
|
||||||
image_resize_unit = gimp_display_get_shell (display)->unit;
|
image_resize_unit = gimp_display_get_shell (display)->unit;
|
||||||
|
|
||||||
dialog = resize_dialog_new (GIMP_VIEWABLE (image),
|
dialog = resize_dialog_new (GIMP_VIEWABLE (image),
|
||||||
action_data_get_context (data),
|
action_data_get_context (data),
|
||||||
_("Set Image Canvas Size"), "gimp-image-resize",
|
_("Set Image Canvas Size"),
|
||||||
|
"gimp-image-resize",
|
||||||
widget,
|
widget,
|
||||||
gimp_standard_help_func, GIMP_HELP_IMAGE_RESIZE,
|
gimp_standard_help_func,
|
||||||
|
GIMP_HELP_IMAGE_RESIZE,
|
||||||
image_resize_unit,
|
image_resize_unit,
|
||||||
|
config->image_resize_fill_type,
|
||||||
|
config->image_resize_layer_set,
|
||||||
|
config->image_resize_resize_text_layers,
|
||||||
image_resize_callback,
|
image_resize_callback,
|
||||||
display);
|
display);
|
||||||
|
|
||||||
|
@ -1277,12 +1284,12 @@ static void
|
||||||
image_resize_callback (GtkWidget *dialog,
|
image_resize_callback (GtkWidget *dialog,
|
||||||
GimpViewable *viewable,
|
GimpViewable *viewable,
|
||||||
GimpContext *context,
|
GimpContext *context,
|
||||||
GimpFillType fill_type,
|
|
||||||
gint width,
|
gint width,
|
||||||
gint height,
|
gint height,
|
||||||
GimpUnit unit,
|
GimpUnit unit,
|
||||||
gint offset_x,
|
gint offset_x,
|
||||||
gint offset_y,
|
gint offset_y,
|
||||||
|
GimpFillType fill_type,
|
||||||
GimpItemSet layer_set,
|
GimpItemSet layer_set,
|
||||||
gboolean resize_text_layers,
|
gboolean resize_text_layers,
|
||||||
gpointer user_data)
|
gpointer user_data)
|
||||||
|
@ -1293,8 +1300,15 @@ image_resize_callback (GtkWidget *dialog,
|
||||||
|
|
||||||
if (width > 0 && height > 0)
|
if (width > 0 && height > 0)
|
||||||
{
|
{
|
||||||
GimpImage *image = GIMP_IMAGE (viewable);
|
GimpImage *image = GIMP_IMAGE (viewable);
|
||||||
GimpProgress *progress;
|
GimpDialogConfig *config = GIMP_DIALOG_CONFIG (image->gimp->config);
|
||||||
|
GimpProgress *progress;
|
||||||
|
|
||||||
|
g_object_set (config,
|
||||||
|
"image-resize-fill-type", fill_type,
|
||||||
|
"image-resize-layer-set", layer_set,
|
||||||
|
"image-resize-resize-text-layers", resize_text_layers,
|
||||||
|
NULL);
|
||||||
|
|
||||||
gtk_widget_destroy (dialog);
|
gtk_widget_destroy (dialog);
|
||||||
|
|
||||||
|
|
|
@ -151,12 +151,12 @@ static void layers_scale_callback (GtkWidget *dialog,
|
||||||
static void layers_resize_callback (GtkWidget *dialog,
|
static void layers_resize_callback (GtkWidget *dialog,
|
||||||
GimpViewable *viewable,
|
GimpViewable *viewable,
|
||||||
GimpContext *context,
|
GimpContext *context,
|
||||||
GimpFillType fill_type,
|
|
||||||
gint width,
|
gint width,
|
||||||
gint height,
|
gint height,
|
||||||
GimpUnit unit,
|
GimpUnit unit,
|
||||||
gint offset_x,
|
gint offset_x,
|
||||||
gint offset_y,
|
gint offset_y,
|
||||||
|
GimpFillType fill_type,
|
||||||
GimpItemSet unused,
|
GimpItemSet unused,
|
||||||
gboolean unused2,
|
gboolean unused2,
|
||||||
gpointer data);
|
gpointer data);
|
||||||
|
@ -645,7 +645,8 @@ layers_resize_cmd_callback (GtkAction *action,
|
||||||
|
|
||||||
if (! dialog)
|
if (! dialog)
|
||||||
{
|
{
|
||||||
GimpDisplay *display = NULL;
|
GimpDialogConfig *config = GIMP_DIALOG_CONFIG (image->gimp->config);
|
||||||
|
GimpDisplay *display = NULL;
|
||||||
|
|
||||||
if (GIMP_IS_IMAGE_WINDOW (data))
|
if (GIMP_IS_IMAGE_WINDOW (data))
|
||||||
display = action_data_get_display (data);
|
display = action_data_get_display (data);
|
||||||
|
@ -661,6 +662,9 @@ layers_resize_cmd_callback (GtkAction *action,
|
||||||
gimp_standard_help_func,
|
gimp_standard_help_func,
|
||||||
GIMP_HELP_LAYER_RESIZE,
|
GIMP_HELP_LAYER_RESIZE,
|
||||||
layer_resize_unit,
|
layer_resize_unit,
|
||||||
|
config->layer_resize_fill_type,
|
||||||
|
GIMP_ITEM_SET_NONE,
|
||||||
|
FALSE,
|
||||||
layers_resize_callback,
|
layers_resize_callback,
|
||||||
NULL);
|
NULL);
|
||||||
|
|
||||||
|
@ -1305,21 +1309,28 @@ static void
|
||||||
layers_resize_callback (GtkWidget *dialog,
|
layers_resize_callback (GtkWidget *dialog,
|
||||||
GimpViewable *viewable,
|
GimpViewable *viewable,
|
||||||
GimpContext *context,
|
GimpContext *context,
|
||||||
GimpFillType fill_type,
|
|
||||||
gint width,
|
gint width,
|
||||||
gint height,
|
gint height,
|
||||||
GimpUnit unit,
|
GimpUnit unit,
|
||||||
gint offset_x,
|
gint offset_x,
|
||||||
gint offset_y,
|
gint offset_y,
|
||||||
|
GimpFillType fill_type,
|
||||||
GimpItemSet unused,
|
GimpItemSet unused,
|
||||||
gboolean unused2,
|
gboolean unused2,
|
||||||
gpointer user_data)
|
gpointer user_data)
|
||||||
{
|
{
|
||||||
|
|
||||||
layer_resize_unit = unit;
|
layer_resize_unit = unit;
|
||||||
|
|
||||||
if (width > 0 && height > 0)
|
if (width > 0 && height > 0)
|
||||||
{
|
{
|
||||||
GimpItem *item = GIMP_ITEM (viewable);
|
GimpItem *item = GIMP_ITEM (viewable);
|
||||||
|
GimpImage *image = gimp_item_get_image (item);
|
||||||
|
GimpDialogConfig *config = GIMP_DIALOG_CONFIG (image->gimp->config);
|
||||||
|
|
||||||
|
g_object_set (config,
|
||||||
|
"layer-resize-fill-type", fill_type,
|
||||||
|
NULL);
|
||||||
|
|
||||||
gtk_widget_destroy (dialog);
|
gtk_widget_destroy (dialog);
|
||||||
|
|
||||||
|
|
|
@ -62,9 +62,15 @@ enum
|
||||||
PROP_IMAGE_CONVERT_INDEXED_DITHER_ALPHA,
|
PROP_IMAGE_CONVERT_INDEXED_DITHER_ALPHA,
|
||||||
PROP_IMAGE_CONVERT_INDEXED_DITHER_TEXT_LAYERS,
|
PROP_IMAGE_CONVERT_INDEXED_DITHER_TEXT_LAYERS,
|
||||||
|
|
||||||
|
PROP_IMAGE_RESIZE_FILL_TYPE,
|
||||||
|
PROP_IMAGE_RESIZE_LAYER_SET,
|
||||||
|
PROP_IMAGE_RESIZE_RESIZE_TEXT_LAYERS,
|
||||||
|
|
||||||
PROP_LAYER_NEW_NAME,
|
PROP_LAYER_NEW_NAME,
|
||||||
PROP_LAYER_NEW_FILL_TYPE,
|
PROP_LAYER_NEW_FILL_TYPE,
|
||||||
|
|
||||||
|
PROP_LAYER_RESIZE_FILL_TYPE,
|
||||||
|
|
||||||
PROP_LAYER_ADD_MASK_TYPE,
|
PROP_LAYER_ADD_MASK_TYPE,
|
||||||
PROP_LAYER_ADD_MASK_INVERT,
|
PROP_LAYER_ADD_MASK_INVERT,
|
||||||
|
|
||||||
|
@ -256,6 +262,29 @@ gimp_dialog_config_class_init (GimpDialogConfigClass *klass)
|
||||||
FALSE,
|
FALSE,
|
||||||
GIMP_PARAM_STATIC_STRINGS);
|
GIMP_PARAM_STATIC_STRINGS);
|
||||||
|
|
||||||
|
GIMP_CONFIG_PROP_ENUM (object_class, PROP_IMAGE_RESIZE_FILL_TYPE,
|
||||||
|
"image-resize-fill-type",
|
||||||
|
"Default image resize fill type",
|
||||||
|
IMAGE_RESIZE_FILL_TYPE_BLURB,
|
||||||
|
GIMP_TYPE_FILL_TYPE,
|
||||||
|
GIMP_FILL_TRANSPARENT,
|
||||||
|
GIMP_PARAM_STATIC_STRINGS);
|
||||||
|
|
||||||
|
GIMP_CONFIG_PROP_ENUM (object_class, PROP_IMAGE_RESIZE_LAYER_SET,
|
||||||
|
"image-resize-layer-set",
|
||||||
|
"Default image resize layer set",
|
||||||
|
IMAGE_RESIZE_LAYER_SET_BLURB,
|
||||||
|
GIMP_TYPE_ITEM_SET,
|
||||||
|
GIMP_ITEM_SET_NONE,
|
||||||
|
GIMP_PARAM_STATIC_STRINGS);
|
||||||
|
|
||||||
|
GIMP_CONFIG_PROP_BOOLEAN (object_class, PROP_IMAGE_RESIZE_RESIZE_TEXT_LAYERS,
|
||||||
|
"image-resize-resize-text-layers",
|
||||||
|
"Default image resize text layers",
|
||||||
|
IMAGE_RESIZE_RESIZE_TEXT_LAYERS_BLURB,
|
||||||
|
FALSE,
|
||||||
|
GIMP_PARAM_STATIC_STRINGS);
|
||||||
|
|
||||||
GIMP_CONFIG_PROP_STRING (object_class, PROP_LAYER_NEW_NAME,
|
GIMP_CONFIG_PROP_STRING (object_class, PROP_LAYER_NEW_NAME,
|
||||||
"layer-new-name",
|
"layer-new-name",
|
||||||
"Default new layer name",
|
"Default new layer name",
|
||||||
|
@ -271,6 +300,14 @@ gimp_dialog_config_class_init (GimpDialogConfigClass *klass)
|
||||||
GIMP_FILL_TRANSPARENT,
|
GIMP_FILL_TRANSPARENT,
|
||||||
GIMP_PARAM_STATIC_STRINGS);
|
GIMP_PARAM_STATIC_STRINGS);
|
||||||
|
|
||||||
|
GIMP_CONFIG_PROP_ENUM (object_class, PROP_LAYER_RESIZE_FILL_TYPE,
|
||||||
|
"layer-resize-fill-type",
|
||||||
|
"Default layer resize fill type",
|
||||||
|
LAYER_RESIZE_FILL_TYPE_BLURB,
|
||||||
|
GIMP_TYPE_FILL_TYPE,
|
||||||
|
GIMP_FILL_TRANSPARENT,
|
||||||
|
GIMP_PARAM_STATIC_STRINGS);
|
||||||
|
|
||||||
GIMP_CONFIG_PROP_ENUM (object_class, PROP_LAYER_ADD_MASK_TYPE,
|
GIMP_CONFIG_PROP_ENUM (object_class, PROP_LAYER_ADD_MASK_TYPE,
|
||||||
"layer-add-mask-type",
|
"layer-add-mask-type",
|
||||||
"Default layer mask type",
|
"Default layer mask type",
|
||||||
|
@ -567,6 +604,16 @@ gimp_dialog_config_set_property (GObject *object,
|
||||||
config->image_convert_indexed_dither_text_layers = g_value_get_boolean (value);
|
config->image_convert_indexed_dither_text_layers = g_value_get_boolean (value);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
case PROP_IMAGE_RESIZE_FILL_TYPE:
|
||||||
|
config->image_resize_fill_type = g_value_get_enum (value);
|
||||||
|
break;
|
||||||
|
case PROP_IMAGE_RESIZE_LAYER_SET:
|
||||||
|
config->image_resize_layer_set = g_value_get_enum (value);
|
||||||
|
break;
|
||||||
|
case PROP_IMAGE_RESIZE_RESIZE_TEXT_LAYERS:
|
||||||
|
config->image_resize_resize_text_layers = g_value_get_boolean (value);
|
||||||
|
break;
|
||||||
|
|
||||||
case PROP_LAYER_NEW_NAME:
|
case PROP_LAYER_NEW_NAME:
|
||||||
if (config->layer_new_name)
|
if (config->layer_new_name)
|
||||||
g_free (config->layer_new_name);
|
g_free (config->layer_new_name);
|
||||||
|
@ -576,6 +623,10 @@ gimp_dialog_config_set_property (GObject *object,
|
||||||
config->layer_new_fill_type = g_value_get_enum (value);
|
config->layer_new_fill_type = g_value_get_enum (value);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
case PROP_LAYER_RESIZE_FILL_TYPE:
|
||||||
|
config->layer_resize_fill_type = g_value_get_enum (value);
|
||||||
|
break;
|
||||||
|
|
||||||
case PROP_LAYER_ADD_MASK_TYPE:
|
case PROP_LAYER_ADD_MASK_TYPE:
|
||||||
config->layer_add_mask_type = g_value_get_enum (value);
|
config->layer_add_mask_type = g_value_get_enum (value);
|
||||||
break;
|
break;
|
||||||
|
@ -729,6 +780,16 @@ gimp_dialog_config_get_property (GObject *object,
|
||||||
g_value_set_boolean (value, config->image_convert_indexed_dither_text_layers);
|
g_value_set_boolean (value, config->image_convert_indexed_dither_text_layers);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
case PROP_IMAGE_RESIZE_FILL_TYPE:
|
||||||
|
g_value_set_enum (value, config->image_resize_fill_type);
|
||||||
|
break;
|
||||||
|
case PROP_IMAGE_RESIZE_LAYER_SET:
|
||||||
|
g_value_set_enum (value, config->image_resize_layer_set);
|
||||||
|
break;
|
||||||
|
case PROP_IMAGE_RESIZE_RESIZE_TEXT_LAYERS:
|
||||||
|
g_value_set_boolean (value, config->image_resize_resize_text_layers);
|
||||||
|
break;
|
||||||
|
|
||||||
case PROP_LAYER_NEW_NAME:
|
case PROP_LAYER_NEW_NAME:
|
||||||
g_value_set_string (value, config->layer_new_name);
|
g_value_set_string (value, config->layer_new_name);
|
||||||
break;
|
break;
|
||||||
|
@ -736,6 +797,10 @@ gimp_dialog_config_get_property (GObject *object,
|
||||||
g_value_set_enum (value, config->layer_new_fill_type);
|
g_value_set_enum (value, config->layer_new_fill_type);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
case PROP_LAYER_RESIZE_FILL_TYPE:
|
||||||
|
g_value_set_enum (value, config->layer_resize_fill_type);
|
||||||
|
break;
|
||||||
|
|
||||||
case PROP_LAYER_ADD_MASK_TYPE:
|
case PROP_LAYER_ADD_MASK_TYPE:
|
||||||
g_value_set_enum (value, config->layer_add_mask_type);
|
g_value_set_enum (value, config->layer_add_mask_type);
|
||||||
break;
|
break;
|
||||||
|
|
|
@ -60,9 +60,15 @@ struct _GimpDialogConfig
|
||||||
gboolean image_convert_indexed_dither_alpha;
|
gboolean image_convert_indexed_dither_alpha;
|
||||||
gboolean image_convert_indexed_dither_text_layers;
|
gboolean image_convert_indexed_dither_text_layers;
|
||||||
|
|
||||||
|
GimpFillType image_resize_fill_type;
|
||||||
|
GimpItemSet image_resize_layer_set;
|
||||||
|
gboolean image_resize_resize_text_layers;
|
||||||
|
|
||||||
gchar *layer_new_name;
|
gchar *layer_new_name;
|
||||||
GimpFillType layer_new_fill_type;
|
GimpFillType layer_new_fill_type;
|
||||||
|
|
||||||
|
GimpFillType layer_resize_fill_type;
|
||||||
|
|
||||||
GimpAddMaskType layer_add_mask_type;
|
GimpAddMaskType layer_add_mask_type;
|
||||||
gboolean layer_add_mask_invert;
|
gboolean layer_add_mask_invert;
|
||||||
|
|
||||||
|
|
|
@ -450,7 +450,7 @@ _("Sets the default maximum number of colors for the 'Convert to Indexed' dialog
|
||||||
#define IMAGE_CONVERT_INDEXED_REMOVE_DUPLICATES_BLURB \
|
#define IMAGE_CONVERT_INDEXED_REMOVE_DUPLICATES_BLURB \
|
||||||
_("Sets the default 'Remove duplicate colors' state for the 'Convert to Indexed' dialog.")
|
_("Sets the default 'Remove duplicate colors' state for the 'Convert to Indexed' dialog.")
|
||||||
|
|
||||||
#define IMAGE_CONVERT_INDEXED_DITHER_TYPE_BLURB \
|
#define IMAGE_CONVERT_INDEXED_DITHER_TYPE_BLURB \
|
||||||
_("Sets the default dithering type for the 'Convert to Indexed' dialog.")
|
_("Sets the default dithering type for the 'Convert to Indexed' dialog.")
|
||||||
|
|
||||||
#define IMAGE_CONVERT_INDEXED_DITHER_ALPHA_BLURB \
|
#define IMAGE_CONVERT_INDEXED_DITHER_ALPHA_BLURB \
|
||||||
|
@ -459,12 +459,24 @@ _("Sets the default 'Dither alpha' state for the 'Convert to Indexed' dialog.")
|
||||||
#define IMAGE_CONVERT_INDEXED_DITHER_TEXT_LAYERS_BLURB \
|
#define IMAGE_CONVERT_INDEXED_DITHER_TEXT_LAYERS_BLURB \
|
||||||
_("Sets the default 'Dither text layers' state for the 'Convert to Indexed' dialog.")
|
_("Sets the default 'Dither text layers' state for the 'Convert to Indexed' dialog.")
|
||||||
|
|
||||||
#define LAYER_NEW_NAME_BLURB \
|
#define IMAGE_RESIZE_FILL_TYPE_BLURB \
|
||||||
|
_("Sets the default fill type for the 'Canvas Size' dialog.")
|
||||||
|
|
||||||
|
#define IMAGE_RESIZE_LAYER_SET_BLURB \
|
||||||
|
_("Sets the default set of layers to resize for the 'Canvas Size' dialog.")
|
||||||
|
|
||||||
|
#define IMAGE_RESIZE_RESIZE_TEXT_LAYERS_BLURB \
|
||||||
|
_("Sets the default 'Resize text layers' state for the 'Canvas Size' dialog.")
|
||||||
|
|
||||||
|
#define LAYER_NEW_NAME_BLURB \
|
||||||
_("Sets the default layer name for the 'New Layer' dialog.")
|
_("Sets the default layer name for the 'New Layer' dialog.")
|
||||||
|
|
||||||
#define LAYER_NEW_FILL_TYPE_BLURB \
|
#define LAYER_NEW_FILL_TYPE_BLURB \
|
||||||
_("Sets the default fill type for the 'New Layer' dialog.")
|
_("Sets the default fill type for the 'New Layer' dialog.")
|
||||||
|
|
||||||
|
#define LAYER_RESIZE_FILL_TYPE_BLURB \
|
||||||
|
_("Sets the default fill type for the 'Layer Boundary Size' dialog.")
|
||||||
|
|
||||||
#define LAYER_ADD_MASK_TYPE_BLURB \
|
#define LAYER_ADD_MASK_TYPE_BLURB \
|
||||||
_("Sets the default mask for the 'Add Layer Mask' dialog.")
|
_("Sets the default mask for the 'Add Layer Mask' dialog.")
|
||||||
|
|
||||||
|
@ -607,4 +619,5 @@ _("When enabled, uses OpenCL for some operations.")
|
||||||
#define ACTION_HISTORY_SIZE_BLURB \
|
#define ACTION_HISTORY_SIZE_BLURB \
|
||||||
"The maximum number of actions saved in history."
|
"The maximum number of actions saved in history."
|
||||||
|
|
||||||
|
|
||||||
#endif /* __GIMP_RC_BLURBS_H__ */
|
#endif /* __GIMP_RC_BLURBS_H__ */
|
||||||
|
|
|
@ -1888,6 +1888,21 @@ prefs_dialog_new (Gimp *gimp,
|
||||||
_("Enable dithering of text layers"),
|
_("Enable dithering of text layers"),
|
||||||
GTK_BOX (vbox2));
|
GTK_BOX (vbox2));
|
||||||
|
|
||||||
|
/* Canvas Size Dialog */
|
||||||
|
vbox2 = prefs_frame_new (_("Canvas Size Dialog"),
|
||||||
|
GTK_CONTAINER (vbox), FALSE);
|
||||||
|
table = prefs_table_new (2, GTK_CONTAINER (vbox2));
|
||||||
|
|
||||||
|
prefs_enum_combo_box_add (object, "image-resize-fill-type", 0, 0,
|
||||||
|
_("Fill with:"),
|
||||||
|
GTK_TABLE (table), 0, size_group);
|
||||||
|
prefs_enum_combo_box_add (object, "image-resize-layer-set", 0, 0,
|
||||||
|
_("Resize layers:"),
|
||||||
|
GTK_TABLE (table), 1, size_group);
|
||||||
|
|
||||||
|
prefs_check_button_add (object, "image-resize-resize-text-layers",
|
||||||
|
_("Resize text layers"),
|
||||||
|
GTK_BOX (vbox2));
|
||||||
|
|
||||||
/* New Layer Dialog */
|
/* New Layer Dialog */
|
||||||
vbox2 = prefs_frame_new (_("New Layer Dialog"),
|
vbox2 = prefs_frame_new (_("New Layer Dialog"),
|
||||||
|
@ -1902,6 +1917,15 @@ prefs_dialog_new (Gimp *gimp,
|
||||||
_("Fill type:"),
|
_("Fill type:"),
|
||||||
GTK_TABLE (table), 1, size_group);
|
GTK_TABLE (table), 1, size_group);
|
||||||
|
|
||||||
|
/* Layer Boundary Size Dialog */
|
||||||
|
vbox2 = prefs_frame_new (_("Layer Boundary Size Dialog"),
|
||||||
|
GTK_CONTAINER (vbox), FALSE);
|
||||||
|
table = prefs_table_new (1, GTK_CONTAINER (vbox2));
|
||||||
|
|
||||||
|
prefs_enum_combo_box_add (object, "layer-resize-fill-type", 0, 0,
|
||||||
|
_("Fill with:"),
|
||||||
|
GTK_TABLE (table), 0, size_group);
|
||||||
|
|
||||||
/* Add Layer Mask Dialog */
|
/* Add Layer Mask Dialog */
|
||||||
vbox2 = prefs_frame_new (_("Add Layer Mask Dialog"),
|
vbox2 = prefs_frame_new (_("Add Layer Mask Dialog"),
|
||||||
GTK_CONTAINER (vbox), FALSE);
|
GTK_CONTAINER (vbox), FALSE);
|
||||||
|
|
|
@ -48,7 +48,6 @@ typedef struct
|
||||||
GimpViewable *viewable;
|
GimpViewable *viewable;
|
||||||
GimpContext *context;
|
GimpContext *context;
|
||||||
GimpFillType fill_type;
|
GimpFillType fill_type;
|
||||||
GimpUnit old_unit;
|
|
||||||
GimpItemSet layer_set;
|
GimpItemSet layer_set;
|
||||||
gboolean resize_text_layers;
|
gboolean resize_text_layers;
|
||||||
GimpResizeCallback callback;
|
GimpResizeCallback callback;
|
||||||
|
@ -56,9 +55,17 @@ typedef struct
|
||||||
|
|
||||||
gint old_width;
|
gint old_width;
|
||||||
gint old_height;
|
gint old_height;
|
||||||
|
GimpUnit old_unit;
|
||||||
|
GimpFillType old_fill_type;
|
||||||
|
GimpItemSet old_layer_set;
|
||||||
|
gboolean old_resize_text_layers;
|
||||||
|
|
||||||
GtkWidget *box;
|
GtkWidget *box;
|
||||||
GtkWidget *offset;
|
GtkWidget *offset;
|
||||||
GtkWidget *area;
|
GtkWidget *area;
|
||||||
|
GtkWidget *layer_set_combo;
|
||||||
|
GtkWidget *fill_type_combo;
|
||||||
|
GtkWidget *text_layers_button;
|
||||||
} ResizeDialog;
|
} ResizeDialog;
|
||||||
|
|
||||||
|
|
||||||
|
@ -90,6 +97,9 @@ resize_dialog_new (GimpViewable *viewable,
|
||||||
GimpHelpFunc help_func,
|
GimpHelpFunc help_func,
|
||||||
const gchar *help_id,
|
const gchar *help_id,
|
||||||
GimpUnit unit,
|
GimpUnit unit,
|
||||||
|
GimpFillType fill_type,
|
||||||
|
GimpItemSet layer_set,
|
||||||
|
gboolean resize_text_layers,
|
||||||
GimpResizeCallback callback,
|
GimpResizeCallback callback,
|
||||||
gpointer user_data)
|
gpointer user_data)
|
||||||
{
|
{
|
||||||
|
@ -148,14 +158,18 @@ resize_dialog_new (GimpViewable *viewable,
|
||||||
|
|
||||||
private->viewable = viewable;
|
private->viewable = viewable;
|
||||||
private->context = context;
|
private->context = context;
|
||||||
private->fill_type = GIMP_FILL_TRANSPARENT;
|
private->fill_type = fill_type;
|
||||||
private->old_unit = unit;
|
private->layer_set = layer_set;
|
||||||
private->layer_set = GIMP_ITEM_SET_NONE;
|
private->resize_text_layers = resize_text_layers;
|
||||||
private->resize_text_layers = FALSE;
|
|
||||||
private->callback = callback;
|
private->callback = callback;
|
||||||
private->user_data = user_data;
|
private->user_data = user_data;
|
||||||
private->old_width = width;
|
|
||||||
private->old_height = height;
|
private->old_width = width;
|
||||||
|
private->old_height = height;
|
||||||
|
private->old_unit = unit;
|
||||||
|
private->old_fill_type = private->fill_type;
|
||||||
|
private->old_layer_set = private->layer_set;
|
||||||
|
private->old_resize_text_layers = private->resize_text_layers;
|
||||||
|
|
||||||
dialog = gimp_viewable_dialog_new (viewable, context,
|
dialog = gimp_viewable_dialog_new (viewable, context,
|
||||||
title, role, GIMP_STOCK_RESIZE, title,
|
title, role, GIMP_STOCK_RESIZE, title,
|
||||||
|
@ -315,7 +329,8 @@ resize_dialog_new (GimpViewable *viewable,
|
||||||
|
|
||||||
gtk_size_group_add_widget (size_group, label);
|
gtk_size_group_add_widget (size_group, label);
|
||||||
|
|
||||||
combo = gimp_enum_combo_box_new (GIMP_TYPE_ITEM_SET);
|
private->layer_set_combo = combo =
|
||||||
|
gimp_enum_combo_box_new (GIMP_TYPE_ITEM_SET);
|
||||||
gtk_box_pack_start (GTK_BOX (hbox), combo, TRUE, TRUE, 0);
|
gtk_box_pack_start (GTK_BOX (hbox), combo, TRUE, TRUE, 0);
|
||||||
gtk_widget_show (combo);
|
gtk_widget_show (combo);
|
||||||
|
|
||||||
|
@ -331,7 +346,8 @@ resize_dialog_new (GimpViewable *viewable,
|
||||||
gtk_box_pack_start (GTK_BOX (vbox), hbox, FALSE, FALSE, 0);
|
gtk_box_pack_start (GTK_BOX (vbox), hbox, FALSE, FALSE, 0);
|
||||||
gtk_widget_show (hbox);
|
gtk_widget_show (hbox);
|
||||||
|
|
||||||
combo = gimp_enum_combo_box_new (GIMP_TYPE_FILL_TYPE);
|
private->fill_type_combo = combo =
|
||||||
|
gimp_enum_combo_box_new (GIMP_TYPE_FILL_TYPE);
|
||||||
gtk_box_pack_end (GTK_BOX (hbox), combo, TRUE, TRUE, 0);
|
gtk_box_pack_end (GTK_BOX (hbox), combo, TRUE, TRUE, 0);
|
||||||
gtk_widget_show (combo);
|
gtk_widget_show (combo);
|
||||||
|
|
||||||
|
@ -353,7 +369,8 @@ resize_dialog_new (GimpViewable *viewable,
|
||||||
|
|
||||||
gtk_size_group_add_widget (size_group, label);
|
gtk_size_group_add_widget (size_group, label);
|
||||||
|
|
||||||
button = gtk_check_button_new_with_mnemonic (_("Resize _text layers"));
|
private->text_layers_button = button =
|
||||||
|
gtk_check_button_new_with_mnemonic (_("Resize _text layers"));
|
||||||
gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (button),
|
gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (button),
|
||||||
private->resize_text_layers);
|
private->resize_text_layers);
|
||||||
gtk_box_pack_start (GTK_BOX (vbox), button, FALSE, FALSE, 0);
|
gtk_box_pack_start (GTK_BOX (vbox), button, FALSE, FALSE, 0);
|
||||||
|
@ -399,12 +416,12 @@ resize_dialog_response (GtkWidget *dialog,
|
||||||
private->callback (dialog,
|
private->callback (dialog,
|
||||||
private->viewable,
|
private->viewable,
|
||||||
private->context,
|
private->context,
|
||||||
private->fill_type,
|
|
||||||
width,
|
width,
|
||||||
height,
|
height,
|
||||||
unit,
|
unit,
|
||||||
gimp_size_entry_get_refval (entry, 0),
|
gimp_size_entry_get_refval (entry, 0),
|
||||||
gimp_size_entry_get_refval (entry, 1),
|
gimp_size_entry_get_refval (entry, 1),
|
||||||
|
private->fill_type,
|
||||||
private->layer_set,
|
private->layer_set,
|
||||||
private->resize_text_layers,
|
private->resize_text_layers,
|
||||||
private->user_data);
|
private->user_data);
|
||||||
|
@ -428,6 +445,17 @@ resize_dialog_reset (ResizeDialog *private)
|
||||||
"height", private->old_height,
|
"height", private->old_height,
|
||||||
"unit", private->old_unit,
|
"unit", private->old_unit,
|
||||||
NULL);
|
NULL);
|
||||||
|
|
||||||
|
if (private->layer_set_combo)
|
||||||
|
gimp_int_combo_box_set_active (GIMP_INT_COMBO_BOX (private->layer_set_combo),
|
||||||
|
private->old_layer_set);
|
||||||
|
|
||||||
|
gimp_int_combo_box_set_active (GIMP_INT_COMBO_BOX (private->fill_type_combo),
|
||||||
|
private->old_fill_type);
|
||||||
|
|
||||||
|
if (private->text_layers_button)
|
||||||
|
gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (private->text_layers_button),
|
||||||
|
private->old_resize_text_layers);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
|
|
|
@ -22,12 +22,12 @@
|
||||||
typedef void (* GimpResizeCallback) (GtkWidget *dialog,
|
typedef void (* GimpResizeCallback) (GtkWidget *dialog,
|
||||||
GimpViewable *viewable,
|
GimpViewable *viewable,
|
||||||
GimpContext *context,
|
GimpContext *context,
|
||||||
GimpFillType fill_type,
|
|
||||||
gint width,
|
gint width,
|
||||||
gint height,
|
gint height,
|
||||||
GimpUnit unit,
|
GimpUnit unit,
|
||||||
gint offset_x,
|
gint offset_x,
|
||||||
gint offset_y,
|
gint offset_y,
|
||||||
|
GimpFillType fill_type,
|
||||||
GimpItemSet layer_set,
|
GimpItemSet layer_set,
|
||||||
gboolean resize_text_layers,
|
gboolean resize_text_layers,
|
||||||
gpointer user_data);
|
gpointer user_data);
|
||||||
|
@ -41,6 +41,9 @@ GtkWidget * resize_dialog_new (GimpViewable *viewable,
|
||||||
GimpHelpFunc help_func,
|
GimpHelpFunc help_func,
|
||||||
const gchar *help_id,
|
const gchar *help_id,
|
||||||
GimpUnit unit,
|
GimpUnit unit,
|
||||||
|
GimpFillType fill_type,
|
||||||
|
GimpItemSet layer_set,
|
||||||
|
gboolean resize_text_layers,
|
||||||
GimpResizeCallback callback,
|
GimpResizeCallback callback,
|
||||||
gpointer user_data);
|
gpointer user_data);
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue