app: add gimp_drawable_filter_get_{drawable,operation,format}()

... which return the filter's drawable, operation, and output
format, respectively.
This commit is contained in:
Ell
2020-04-06 22:41:49 +03:00
parent 58e5b57492
commit 9906efd28a
2 changed files with 39 additions and 1 deletions

View File

@ -299,6 +299,22 @@ gimp_drawable_filter_new (GimpDrawable *drawable,
return filter;
}
GimpDrawable *
gimp_drawable_filter_get_drawable (GimpDrawableFilter *filter)
{
g_return_val_if_fail (GIMP_IS_DRAWABLE_FILTER (filter), NULL);
return filter->drawable;
}
GeglNode *
gimp_drawable_filter_get_operation (GimpDrawableFilter *filter)
{
g_return_val_if_fail (GIMP_IS_DRAWABLE_FILTER (filter), NULL);
return filter->operation;
}
void
gimp_drawable_filter_set_clip (GimpDrawableFilter *filter,
gboolean clip)
@ -534,6 +550,21 @@ gimp_drawable_filter_set_override_constraints (GimpDrawableFilter *filter,
}
}
const Babl *
gimp_drawable_filter_get_format (GimpDrawableFilter *filter)
{
const Babl *format;
g_return_val_if_fail (GIMP_IS_DRAWABLE_FILTER (filter), NULL);
format = gimp_applicator_get_output_format (filter->applicator);
if (! format)
format = gimp_drawable_get_format (filter->drawable);
return format;
}
void
gimp_drawable_filter_apply (GimpDrawableFilter *filter,
const GeglRectangle *area)
@ -569,7 +600,7 @@ gimp_drawable_filter_commit (GimpDrawableFilter *filter,
{
const Babl *format;
format = gimp_applicator_get_output_format (filter->applicator);
format = gimp_drawable_filter_get_format (filter);
gimp_drawable_filter_set_preview_split (filter, FALSE,
filter->preview_split_alignment,

View File

@ -55,6 +55,10 @@ GimpDrawableFilter *
GeglNode *operation,
const gchar *icon_name);
GimpDrawable *
gimp_drawable_filter_get_drawable (GimpDrawableFilter *filter);
GeglNode * gimp_drawable_filter_get_operation (GimpDrawableFilter *filter);
void gimp_drawable_filter_set_clip (GimpDrawableFilter *filter,
gboolean clip);
void gimp_drawable_filter_set_region (GimpDrawableFilter *filter,
@ -89,6 +93,9 @@ void gimp_drawable_filter_set_override_constraints
(GimpDrawableFilter *filter,
gboolean override_constraints);
const Babl *
gimp_drawable_filter_get_format (GimpDrawableFilter *filter);
void gimp_drawable_filter_apply (GimpDrawableFilter *filter,
const GeglRectangle *area);