Commit Graph

31138 Commits

Author SHA1 Message Date
c22b6a2884 app: move variable to local scope 2012-05-02 17:45:56 +02:00
684f7f167b app: use GimpOperationSetAlpha in gimp_layer_create_mask()
After transferring the layer's alpha to the mask, the alpha needs to
be set to opaque.
2012-05-02 17:45:56 +02:00
5b644f1037 app: add GimpOperationSetAlpha which sets the alpha channel to a value 2012-05-02 17:45:56 +02:00
53e0671ce0 app: port gimp_palette_import_extract() to GeglBufferIterator 2012-05-02 17:45:55 +02:00
f05de34cd6 app: add GimpPickable::get_babl_format() 2012-05-02 17:45:55 +02:00
b2d8aef239 app: remove obsolete include in gimpchannel.c 2012-05-02 17:45:55 +02:00
dfa7173ee0 app: port gimp_channel_combine_ellipse_rect() to GeglBufferIterator 2012-05-02 17:45:55 +02:00
acad9ac510 app: flush both write and write buffer in gimp_drawable_update()
so tiles and buffers are up-to-date before anyone has a chance to
access the modified pixels.
2012-05-02 17:45:55 +02:00
a9c1392572 app: port gimp_channel_real_bounds() to GeglBufferIterator 2012-05-02 17:45:55 +02:00
7c1a642966 app: minor cleanup and commenting in gimp_scan_convert_render_full() 2012-05-02 17:45:55 +02:00
105aff0296 app: flush the drawable_s write_buffer in gimp_drawable_update()
because it's called after each drawable modification and therefore a
good place to sync buffrs and tiles.
2012-05-02 17:45:55 +02:00
8aabfb1779 app: s/read_buffer/write_buffer/ in GimpTextLayer because we fill the tiles 2012-05-02 17:45:55 +02:00
410d6405d6 app: use GeglBufferIterator in gimp_channel_real_is_empty() 2012-05-02 17:45:55 +02:00
fd579343df app: use GeglBufferIterator in gimp_text_layer_render_layout() 2012-05-02 17:45:54 +02:00
97b41ecbb6 app: remove multiply_alpha_region() and separate_alpha_region() 2012-05-02 17:45:54 +02:00
07ba5b37a0 app: remove shade_region() 2012-05-02 17:45:54 +02:00
299886d20d app: convert drawables between RGB and GRAY using gegl_buffer_copy() 2012-05-02 17:45:54 +02:00
267d17d940 app: simplify gimp_drawable_offset() a lot
by simply GEGL-initializing everything if we are not wrapping around,
GEGL will later optimize that.
2012-05-02 17:45:54 +02:00
57985cd26d app: create a meta-op to apply mask and opacity
and use it to apply the layer mask.
2012-05-02 17:45:53 +02:00
15957cb3c4 app: remove the legacy brightness-contrast code and use GEGL instead
it's reasonably fast now.
2012-05-02 17:45:53 +02:00
4ab4da0e6c app: remove flatten_region() and its helper functions 2012-05-02 17:45:53 +02:00
5c71411502 app: use GEGL to create a layer mask from a grayscale copy of the layer 2012-05-02 17:45:53 +02:00
f15e8a1ea2 app: add gimp_apply_operaion() as generic buffer-to-buffer utility function
and use it from gimpdrawable-operation.c
2012-05-02 17:45:53 +02:00
528e007e03 app: remove copy_color() and its helper functions 2012-05-02 17:45:53 +02:00
119b58b659 app: remove copy_component() and its helper functions 2012-05-02 17:45:53 +02:00
f8c29b2532 app: remove obsolete includes from gimpbrushclipboard.c 2012-05-02 17:45:53 +02:00
8cc2a71b81 app: create GimpBrushClipboard's buffers with GEGL 2012-05-02 17:45:53 +02:00
5d1474c17e app: use GEGL to extract an image's component into a channel
Add gimp_image_get_component_format() for that purpose.
2012-05-02 17:45:53 +02:00
a898491b3f app: allow to "cast" a buffer's pixel format to another one
as long as it has the same number of bytes. Add
gimp_tile_manager_create_buffer_with_format() for that purpose,
register a format that contains's only a u8 alpha byte, and use that
to extract alpha from drawables.
2012-05-02 17:45:52 +02:00
0ae0dfb52e app: add a flatten meta-op and use it for layers and channels 2012-05-02 17:45:52 +02:00
52d033e2c1 app: don't need an attached item for applying an op to tiles/buffers 2012-05-02 17:45:52 +02:00
169221bc51 app: replace some color_region() and pattern_region() by GEGL code 2012-05-02 17:45:52 +02:00
1ff7ecb4aa app: fix segfault in previous commit 2012-05-02 17:45:52 +02:00
b93e166440 app: avoid thrashing GEGL side of tile cache in projection
gimp_projection_initialize was causing the projection code to throw out all
it's tiles continously, causing crawling updates.
2012-05-02 17:45:52 +02:00
3235cfe69e app: default to use GEGL rather than legacy code paths
During development, the GEGL code such have as much exposure to users testing
the development release. There is still the option to switch it off if GEGL is
not adhering to expectations.
2012-05-02 17:45:52 +02:00
5413949851 app: implement gimp_layer_add_alpha() with gegl_buffer_copy() 2012-05-02 17:45:52 +02:00
dc8d6a3977 app: use gimp_image_transform_rgb() instead of transform_color()
instead of fiddling with gimp_rgb_get_uchar() manually.
2012-05-02 17:45:52 +02:00
54108d9413 app: add gimp_drawable_get_babl_format() 2012-05-02 17:45:51 +02:00
2a279f5e40 app: some more gegl_buffer_clear()/set_color() on mask objects 2012-05-02 17:45:51 +02:00
d127e3ad35 app: use gegl_buffer_copy() in gimp_drawable_resize() 2012-05-02 17:45:51 +02:00
8f3f600eb3 app: remove unused #includes 2012-05-02 17:45:51 +02:00
1b1245e4cc app: remove empty functions paint_funcs_setup()/free() 2012-05-02 17:45:51 +02:00
1ee041600f app: replace direct low-level GeglBuffer calls with utility.
gimp_drawable_real_update exists, so use it
2012-05-02 17:45:50 +02:00
ef3cfb48cc app: remove gaussian_blur_region() and its helpers 2012-05-02 17:45:50 +02:00
4455e29303 app: implement gimp_channel_real_feather() with gegl:gaussian-blur
It's not 100% the same but very close, everybody is invited to improve
the magic number in gimp_channel_real_feather() to truly match the old
behavior.
2012-05-02 17:45:50 +02:00
43b39c432c app: remove clear_region(), it's replaced by GEGL everywhere 2012-05-02 17:45:50 +02:00
d4efabeae2 app: clear the projection's background using GEGL
and also remove lots of cruft from that file, like the disabled
optimization that tries to project a single-layer image directly out
of the layer's tiles.
2012-05-02 17:45:50 +02:00
77bbbab5c6 app: make sure TileManagers and the GeglBuffers backed by them are in sync
by adding gegl_buffer_flush() and gegl_tile_source_reinit() in the
drawable's buffer and tiles API, and at some half-ported places that
mix legacy and gegl code.
2012-05-02 17:45:50 +02:00
3975a5e1e7 app: keep the undo mask around as GeglBuffer, not TileManager
which is our first pure GeglBuffer storage, so this code counts
as completely ported \o/
2012-05-02 17:45:50 +02:00
7c3a796dfc app: added GimpPickable::get_buffer()
Add cached buffers to GimpProjection and GimpImageMap, and use
the new API where possible.
2012-05-02 17:45:50 +02:00