diff --git a/app/core/gimpitem.c b/app/core/gimpitem.c index 6453dbd408..281b9ddb73 100644 --- a/app/core/gimpitem.c +++ b/app/core/gimpitem.c @@ -668,6 +668,21 @@ gimp_item_get_container (GimpItem *item) return NULL; } +GList * +gimp_item_get_container_iter (GimpItem *item) +{ + GimpContainer *container; + + g_return_val_if_fail (GIMP_IS_ITEM (item), NULL); + + container = gimp_item_get_container (container); + + if (container) + return GIMP_LIST (container)->list; + + return NULL; +} + gint gimp_item_get_index (GimpItem *item) { diff --git a/app/core/gimpitem.h b/app/core/gimpitem.h index 8a692d669e..3f429a1182 100644 --- a/app/core/gimpitem.h +++ b/app/core/gimpitem.h @@ -133,145 +133,146 @@ struct _GimpItemClass }; -GType gimp_item_get_type (void) G_GNUC_CONST; +GType gimp_item_get_type (void) G_GNUC_CONST; -void gimp_item_removed (GimpItem *item); -gboolean gimp_item_is_removed (const GimpItem *item); +void gimp_item_removed (GimpItem *item); +gboolean gimp_item_is_removed (const GimpItem *item); -gboolean gimp_item_is_attached (GimpItem *item); +gboolean gimp_item_is_attached (GimpItem *item); -GimpContainer * gimp_item_get_container (GimpItem *item); -gint gimp_item_get_index (GimpItem *item); +GimpContainer * gimp_item_get_container (GimpItem *item); +GList * gimp_item_get_container_iter (GimpItem *item); +gint gimp_item_get_index (GimpItem *item); -void gimp_item_configure (GimpItem *item, - GimpImage *image, - gint offset_x, - gint offset_y, - gint width, - gint height, - const gchar *name); -GimpItem * gimp_item_duplicate (GimpItem *item, - GType new_type); -GimpItem * gimp_item_convert (GimpItem *item, - GimpImage *dest_image, - GType new_type); +void gimp_item_configure (GimpItem *item, + GimpImage *image, + gint offset_x, + gint offset_y, + gint width, + gint height, + const gchar *name); +GimpItem * gimp_item_duplicate (GimpItem *item, + GType new_type); +GimpItem * gimp_item_convert (GimpItem *item, + GimpImage *dest_image, + GType new_type); -gboolean gimp_item_rename (GimpItem *item, - const gchar *new_name, - GError **error); +gboolean gimp_item_rename (GimpItem *item, + const gchar *new_name, + GError **error); -gint gimp_item_get_width (const GimpItem *item); -gint gimp_item_get_height (const GimpItem *item); +gint gimp_item_get_width (const GimpItem *item); +gint gimp_item_get_height (const GimpItem *item); -void gimp_item_get_offset (const GimpItem *item, - gint *offset_x, - gint *offset_y); -void gimp_item_set_offset (GimpItem *item, - gint offset_x, - gint offset_y); -gint gimp_item_get_offset_x (GimpItem *item); -gint gimp_item_get_offset_y (GimpItem *item); +void gimp_item_get_offset (const GimpItem *item, + gint *offset_x, + gint *offset_y); +void gimp_item_set_offset (GimpItem *item, + gint offset_x, + gint offset_y); +gint gimp_item_get_offset_x (GimpItem *item); +gint gimp_item_get_offset_y (GimpItem *item); -void gimp_item_translate (GimpItem *item, - gint offset_x, - gint offset_y, - gboolean push_undo); +void gimp_item_translate (GimpItem *item, + gint offset_x, + gint offset_y, + gboolean push_undo); -gboolean gimp_item_check_scaling (const GimpItem *item, - gint new_width, - gint new_height); -void gimp_item_scale (GimpItem *item, - gint new_width, - gint new_height, - gint new_offset_x, - gint new_offset_y, - GimpInterpolationType interpolation, - GimpProgress *progress); -gboolean gimp_item_scale_by_factors (GimpItem *item, - gdouble w_factor, - gdouble h_factor, - GimpInterpolationType interpolation, - GimpProgress *progress); -void gimp_item_scale_by_origin (GimpItem *item, - gint new_width, - gint new_height, - GimpInterpolationType interpolation, - GimpProgress *progress, - gboolean local_origin); -void gimp_item_resize (GimpItem *item, - GimpContext *context, - gint new_width, - gint new_height, - gint offset_x, - gint offset_y); -void gimp_item_resize_to_image (GimpItem *item); +gboolean gimp_item_check_scaling (const GimpItem *item, + gint new_width, + gint new_height); +void gimp_item_scale (GimpItem *item, + gint new_width, + gint new_height, + gint new_offset_x, + gint new_offset_y, + GimpInterpolationType interpolation, + GimpProgress *progress); +gboolean gimp_item_scale_by_factors (GimpItem *item, + gdouble w_factor, + gdouble h_factor, + GimpInterpolationType interpolation, + GimpProgress *progress); +void gimp_item_scale_by_origin (GimpItem *item, + gint new_width, + gint new_height, + GimpInterpolationType interpolation, + GimpProgress *progress, + gboolean local_origin); +void gimp_item_resize (GimpItem *item, + GimpContext *context, + gint new_width, + gint new_height, + gint offset_x, + gint offset_y); +void gimp_item_resize_to_image (GimpItem *item); -void gimp_item_flip (GimpItem *item, - GimpContext *context, - GimpOrientationType flip_type, - gdouble axis, - gboolean flip_result); -void gimp_item_rotate (GimpItem *item, - GimpContext *context, - GimpRotationType rotate_type, - gdouble center_x, - gdouble center_y, - gboolean flip_result); -void gimp_item_transform (GimpItem *item, - GimpContext *context, - const GimpMatrix3 *matrix, - GimpTransformDirection direction, - GimpInterpolationType interpolation_type, - gint recursion_level, - GimpTransformResize clip_result, - GimpProgress *progress); +void gimp_item_flip (GimpItem *item, + GimpContext *context, + GimpOrientationType flip_type, + gdouble axis, + gboolean flip_result); +void gimp_item_rotate (GimpItem *item, + GimpContext *context, + GimpRotationType rotate_type, + gdouble center_x, + gdouble center_y, + gboolean flip_result); +void gimp_item_transform (GimpItem *item, + GimpContext *context, + const GimpMatrix3 *matrix, + GimpTransformDirection direction, + GimpInterpolationType interpolation_type, + gint recursion_level, + GimpTransformResize clip_result, + GimpProgress *progress); -gboolean gimp_item_stroke (GimpItem *item, - GimpDrawable *drawable, - GimpContext *context, - GimpStrokeOptions *stroke_options, - gboolean use_default_values, - gboolean push_undo, - GimpProgress *progress, - GError **error); +gboolean gimp_item_stroke (GimpItem *item, + GimpDrawable *drawable, + GimpContext *context, + GimpStrokeOptions *stroke_options, + gboolean use_default_values, + gboolean push_undo, + GimpProgress *progress, + GError **error); -GeglNode * gimp_item_get_node (GimpItem *item); -GeglNode * gimp_item_get_offset_node (GimpItem *item); +GeglNode * gimp_item_get_node (GimpItem *item); +GeglNode * gimp_item_get_offset_node (GimpItem *item); -gint gimp_item_get_ID (GimpItem *item); -GimpItem * gimp_item_get_by_ID (Gimp *gimp, - gint id); +gint gimp_item_get_ID (GimpItem *item); +GimpItem * gimp_item_get_by_ID (Gimp *gimp, + gint id); -GimpTattoo gimp_item_get_tattoo (const GimpItem *item); -void gimp_item_set_tattoo (GimpItem *item, - GimpTattoo tattoo); +GimpTattoo gimp_item_get_tattoo (const GimpItem *item); +void gimp_item_set_tattoo (GimpItem *item, + GimpTattoo tattoo); -GimpImage * gimp_item_get_image (const GimpItem *item); -void gimp_item_set_image (GimpItem *item, - GimpImage *image); +GimpImage * gimp_item_get_image (const GimpItem *item); +void gimp_item_set_image (GimpItem *item, + GimpImage *image); -void gimp_item_parasite_attach (GimpItem *item, - const GimpParasite *parasite); -void gimp_item_parasite_detach (GimpItem *item, - const gchar *name); -const GimpParasite *gimp_item_parasite_find(const GimpItem *item, - const gchar *name); -gchar ** gimp_item_parasite_list (const GimpItem *item, - gint *count); +void gimp_item_parasite_attach (GimpItem *item, + const GimpParasite *parasite); +void gimp_item_parasite_detach (GimpItem *item, + const gchar *name); +const GimpParasite * gimp_item_parasite_find (const GimpItem *item, + const gchar *name); +gchar ** gimp_item_parasite_list (const GimpItem *item, + gint *count); -gboolean gimp_item_get_visible (const GimpItem *item); -void gimp_item_set_visible (GimpItem *item, - gboolean visible, - gboolean push_undo); +gboolean gimp_item_get_visible (const GimpItem *item); +void gimp_item_set_visible (GimpItem *item, + gboolean visible, + gboolean push_undo); -void gimp_item_set_linked (GimpItem *item, - gboolean linked, - gboolean push_undo); -gboolean gimp_item_get_linked (const GimpItem *item); +void gimp_item_set_linked (GimpItem *item, + gboolean linked, + gboolean push_undo); +gboolean gimp_item_get_linked (const GimpItem *item); -gboolean gimp_item_is_in_set (GimpItem *item, - GimpItemSet set); +gboolean gimp_item_is_in_set (GimpItem *item, + GimpItemSet set); #endif /* __GIMP_ITEM_H__ */