libgimpwidgets: return the formats from gimp_widget_get_color_transform()
Turn the src_format and dest_formats into "const Babl **" and make them return the actually used formats. Change the lcms display module accordingly.
This commit is contained in:
@ -502,8 +502,8 @@ GimpColorTransform
|
|||||||
gimp_widget_get_color_transform (GtkWidget *widget,
|
gimp_widget_get_color_transform (GtkWidget *widget,
|
||||||
GimpColorManaged *managed,
|
GimpColorManaged *managed,
|
||||||
GimpColorConfig *config,
|
GimpColorConfig *config,
|
||||||
const Babl *src_format,
|
const Babl **src_format,
|
||||||
const Babl *dest_format)
|
const Babl **dest_format)
|
||||||
{
|
{
|
||||||
GimpColorTransform transform = NULL;
|
GimpColorTransform transform = NULL;
|
||||||
GimpColorProfile src_profile = NULL;
|
GimpColorProfile src_profile = NULL;
|
||||||
@ -534,8 +534,8 @@ gimp_widget_get_color_transform (GtkWidget *widget,
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
src_format = gimp_lcms_get_format (src_format, &lcms_src_format);
|
*src_format = gimp_lcms_get_format (*src_format, &lcms_src_format);
|
||||||
dest_format = gimp_lcms_get_format (dest_format, &lcms_dest_format);
|
*dest_format = gimp_lcms_get_format (*dest_format, &lcms_dest_format);
|
||||||
|
|
||||||
if (proof_profile)
|
if (proof_profile)
|
||||||
{
|
{
|
||||||
|
@ -51,8 +51,8 @@ GimpColorProfile gimp_widget_get_color_profile (GtkWidget *widget);
|
|||||||
GimpColorTransform gimp_widget_get_color_transform (GtkWidget *widget,
|
GimpColorTransform gimp_widget_get_color_transform (GtkWidget *widget,
|
||||||
GimpColorManaged *managed,
|
GimpColorManaged *managed,
|
||||||
GimpColorConfig *config,
|
GimpColorConfig *config,
|
||||||
const Babl *src_format,
|
const Babl **src_format,
|
||||||
const Babl *dest_format);
|
const Babl **dest_format);
|
||||||
|
|
||||||
|
|
||||||
G_END_DECLS
|
G_END_DECLS
|
||||||
|
@ -63,6 +63,8 @@ struct _CdisplayLcms
|
|||||||
GimpColorDisplay parent_instance;
|
GimpColorDisplay parent_instance;
|
||||||
|
|
||||||
GimpColorTransform transform;
|
GimpColorTransform transform;
|
||||||
|
const Babl *src_format;
|
||||||
|
const Babl *dest_format;
|
||||||
};
|
};
|
||||||
|
|
||||||
struct _CdisplayLcmsClass
|
struct _CdisplayLcmsClass
|
||||||
@ -240,7 +242,7 @@ cdisplay_lcms_convert_buffer (GimpColorDisplay *display,
|
|||||||
return;
|
return;
|
||||||
|
|
||||||
iter = gegl_buffer_iterator_new (buffer, area, 0,
|
iter = gegl_buffer_iterator_new (buffer, area, 0,
|
||||||
babl_format ("R'G'B'A float"),
|
lcms->src_format,
|
||||||
GEGL_ACCESS_READWRITE, GEGL_ABYSS_NONE);
|
GEGL_ACCESS_READWRITE, GEGL_ABYSS_NONE);
|
||||||
|
|
||||||
while (gegl_buffer_iterator_next (iter))
|
while (gegl_buffer_iterator_next (iter))
|
||||||
@ -274,11 +276,14 @@ cdisplay_lcms_changed (GimpColorDisplay *display)
|
|||||||
if (GTK_IS_WIDGET (managed))
|
if (GTK_IS_WIDGET (managed))
|
||||||
widget = gtk_widget_get_toplevel (GTK_WIDGET (managed));
|
widget = gtk_widget_get_toplevel (GTK_WIDGET (managed));
|
||||||
|
|
||||||
|
lcms->src_format = babl_format ("R'G'B'A float");
|
||||||
|
lcms->dest_format = babl_format ("R'G'B'A float");
|
||||||
|
|
||||||
lcms->transform =
|
lcms->transform =
|
||||||
gimp_widget_get_color_transform (widget,
|
gimp_widget_get_color_transform (widget,
|
||||||
managed, config,
|
managed, config,
|
||||||
babl_format ("R'G'B'A float"),
|
&lcms->src_format,
|
||||||
babl_format ("R'G'B'A float"));
|
&lcms->dest_format);
|
||||||
}
|
}
|
||||||
|
|
||||||
static GimpColorProfile
|
static GimpColorProfile
|
||||||
|
Reference in New Issue
Block a user