app: make the rotation import dialog more similar to profile import

and some general cleanup in both dialogs.
This commit is contained in:
Michael Natterer 2023-05-25 16:55:08 +02:00
parent 652fbe47fa
commit 41894be71a
5 changed files with 70 additions and 56 deletions

View File

@ -147,7 +147,8 @@ color_profile_import_dialog_run (GimpImage *image,
gtk_widget_show (stack);
frame = gimp_frame_new (frame_title);
gtk_stack_add_titled (GTK_STACK (stack), frame, "builtin", "Built-in Profile");
gtk_stack_add_titled (GTK_STACK (stack), frame, "builtin",
_("Built-in Profile"));
gtk_widget_show (frame);
label = gimp_color_profile_label_new (*dest_profile);
@ -162,7 +163,8 @@ color_profile_import_dialog_run (GimpImage *image,
frame_title = _("Convert the image to the preferred RGB color profile?");
frame = gimp_frame_new (frame_title);
gtk_stack_add_titled (GTK_STACK (stack), frame, "preferred", "Preferred Profile");
gtk_stack_add_titled (GTK_STACK (stack), frame, "preferred",
_("Preferred Profile"));
gtk_widget_show (frame);
label = gimp_color_profile_label_new (pref_profile);

View File

@ -23,13 +23,13 @@
GimpColorProfilePolicy
color_profile_import_dialog_run (GimpImage *image,
GimpContext *context,
GtkWidget *parent,
GimpColorProfile **dest_profile,
GimpColorRenderingIntent *intent,
gboolean *bpc,
gboolean *dont_ask);
color_profile_import_dialog_run (GimpImage *image,
GimpContext *context,
GtkWidget *parent,
GimpColorProfile **dest_profile,
GimpColorRenderingIntent *intent,
gboolean *bpc,
gboolean *dont_ask);
#endif /* __COLOR_PROFILE_IMPORT_DIALOG_H__ */

View File

@ -37,7 +37,6 @@
#include "widgets/gimphelp-ids.h"
#include "widgets/gimpviewabledialog.h"
#include "widgets/gimpwidgets-constructors.h"
#include "metadata-rotation-import-dialog.h"
@ -46,6 +45,7 @@
static GimpMetadataRotationPolicy gimp_image_metadata_rotate_dialog (GimpImage *image,
GimpContext *context,
GtkWidget *parent,
GExiv2Orientation orientation,
gboolean *dont_ask);
static GdkPixbuf * gimp_image_metadata_rotate_pixbuf (GdkPixbuf *pixbuf,
@ -70,45 +70,48 @@ metadata_rotation_import_dialog_run (GimpImage *image,
orientation > GEXIV2_ORIENTATION_MAX)
return GIMP_METADATA_ROTATION_POLICY_KEEP;
return gimp_image_metadata_rotate_dialog (image, context, orientation, dont_ask);
return gimp_image_metadata_rotate_dialog (image, context, parent,
orientation, dont_ask);
}
static GimpMetadataRotationPolicy
gimp_image_metadata_rotate_dialog (GimpImage *image,
GimpContext *context,
GtkWidget *parent,
GExiv2Orientation orientation,
gboolean *dont_ask)
{
GtkWidget *dialog;
GtkWidget *main_vbox;
GtkWidget *vbox;
GtkWidget *label;
GtkWidget *toggle;
const gchar *name;
gchar *title;
GdkPixbuf *pixbuf;
gint width;
gint scale_factor;
gint height;
gint response;
GtkWidget *dialog;
GtkWidget *main_vbox;
GtkWidget *vbox;
GtkWidget *label;
GtkWidget *toggle;
gchar *text;
GdkPixbuf *pixbuf;
gint width;
gint scale_factor;
gint height;
gint response;
name = gimp_image_get_display_name (image);
title = g_strdup_printf (_("Rotate %s?"), name);
dialog =
gimp_viewable_dialog_new (g_list_prepend (NULL, image), context,
_("Rotate Image?"),
"gimp-metadata-rotate-dialog",
GIMP_ICON_OBJECT_ROTATE_180,
_("Apply metadata rotation"),
parent,
gimp_standard_help_func,
GIMP_HELP_IMAGE_METADATA_ROTATION_IMPORT,
dialog = gimp_dialog_new (title, "gimp-metadata-rotate-dialog",
NULL, 0, NULL, NULL,
_("_Keep Original"), GTK_RESPONSE_CANCEL,
_("_Rotate"), GTK_RESPONSE_OK,
_("_Keep Original"), GTK_RESPONSE_CANCEL,
_("_Rotate"), GTK_RESPONSE_OK,
NULL);
g_free (title);
NULL);
gimp_dialog_set_alternative_button_order (GTK_DIALOG (dialog),
GTK_RESPONSE_OK,
GTK_RESPONSE_CANCEL,
-1);
GTK_RESPONSE_OK,
GTK_RESPONSE_CANCEL,
-1);
gtk_window_set_resizable (GTK_WINDOW (dialog), FALSE);
@ -118,6 +121,24 @@ gimp_image_metadata_rotate_dialog (GimpImage *image,
main_vbox, FALSE, FALSE, 0);
gtk_widget_show (main_vbox);
text = g_strdup_printf (_("The image '%s' contains Exif orientation "
"metadata"),
gimp_image_get_display_name (image));
label = g_object_new (GTK_TYPE_LABEL,
"label", text,
"wrap", TRUE,
"justify", GTK_JUSTIFY_LEFT,
"xalign", 0.0,
"yalign", 0.5,
NULL);
g_free (text);
gimp_label_set_attributes (GTK_LABEL (label),
PANGO_ATTR_WEIGHT, PANGO_WEIGHT_BOLD,
-1);
gtk_box_pack_start (GTK_BOX (main_vbox), label, FALSE, FALSE, 0);
gtk_widget_show (label);
scale_factor = gtk_widget_get_scale_factor (main_vbox);
width = gimp_image_get_width (image);
height = gimp_image_get_height (image);
@ -190,21 +211,6 @@ gimp_image_metadata_rotate_dialog (GimpImage *image,
gtk_widget_show (image);
}
label = g_object_new (GTK_TYPE_LABEL,
"label", _("This image contains Exif orientation "
"metadata."),
"wrap", TRUE,
"justify", GTK_JUSTIFY_LEFT,
"xalign", 0.0,
"yalign", 0.5,
NULL);
gimp_label_set_attributes (GTK_LABEL (label),
PANGO_ATTR_SCALE, PANGO_SCALE_LARGE,
PANGO_ATTR_WEIGHT, PANGO_WEIGHT_BOLD,
-1);
gtk_box_pack_start (GTK_BOX (main_vbox), label, FALSE, FALSE, 0);
gtk_widget_show (label);
label = g_object_new (GTK_TYPE_LABEL,
"label", _("Would you like to rotate the image?"),
"wrap", TRUE,
@ -212,6 +218,9 @@ gimp_image_metadata_rotate_dialog (GimpImage *image,
"xalign", 0.0,
"yalign", 0.5,
NULL);
gimp_label_set_attributes (GTK_LABEL (label),
PANGO_ATTR_WEIGHT, PANGO_WEIGHT_BOLD,
-1);
gtk_box_pack_start (GTK_BOX (main_vbox), label, FALSE, FALSE, 0);
gtk_widget_show (label);
@ -225,7 +234,8 @@ gimp_image_metadata_rotate_dialog (GimpImage *image,
gtk_widget_destroy (dialog);
return (response == GTK_RESPONSE_OK) ? GIMP_METADATA_ROTATION_POLICY_ROTATE : GIMP_COLOR_PROFILE_POLICY_KEEP;
return (response == GTK_RESPONSE_OK) ?
GIMP_METADATA_ROTATION_POLICY_ROTATE : GIMP_COLOR_PROFILE_POLICY_KEEP;
}
static GdkPixbuf *

View File

@ -22,10 +22,11 @@
#define __METADATA_ROTATION_IMPORT_DIALOG_H__
GimpMetadataRotationPolicy metadata_rotation_import_dialog_run (GimpImage *image,
GimpContext *context,
GtkWidget *parent,
gboolean *dont_ask);
GimpMetadataRotationPolicy
metadata_rotation_import_dialog_run (GimpImage *image,
GimpContext *context,
GtkWidget *parent,
gboolean *dont_ask);
#endif /* __METADATA_ROTATION_IMPORT_DIALOG_H__*/

View File

@ -165,6 +165,7 @@
#define GIMP_HELP_IMAGE_COLOR_PROFILE_USE_SRGB "gimp-image-color-profile-use-srgb"
#define GIMP_HELP_IMAGE_COLOR_PROFILE_SAVE "gimp-image-color-profile-save"
#define GIMP_HELP_IMAGE_COLOR_PROFILE_IMPORT "gimp-image-color-profile-import"
#define GIMP_HELP_IMAGE_METADATA_ROTATION_IMPORT "gimp-image-metdata-rotation-import"
#define GIMP_HELP_IMAGE_GRID "gimp-image-grid"
#define GIMP_HELP_IMAGE_PROPERTIES "gimp-image-properties"