744199a8f7
app: remove gimp_layer_new_from_region() and use from_buffer() instead
2012-05-02 17:45:57 +02:00
b1da84f6fb
app: correctly refcount the pixbuf in gimp_pixbuf_create_buffer()
2012-05-02 17:45:57 +02:00
8bfdf3ce7b
app: GeglBuffer-backend GeglTiles now use GDestroyNotify
2012-05-02 17:45:57 +02:00
553e65e859
app: add gimp_pixbuf_create_buffer() and use it in GimpBuffer
2012-05-02 17:45:57 +02:00
3ce071b89a
app: let Babl handle converting layers to indexed
...
Except of course the initial indexed conversion which needs more logic
than a simple color mapping.
2012-05-02 17:45:57 +02:00
fbf11ba84f
app: don't call gimp_layer_get_edit_mask() when the layer has no mask
2012-05-02 17:45:57 +02:00
e309e009f7
app: let Babl handle color conversion in gimp_drawable_fill()
2012-05-02 17:45:57 +02:00
69b2aa880f
app: add gimp_pattern_create_buffer() and use it in gimp_edit_fill_internal()
2012-05-02 17:45:56 +02:00
733a98d33b
app: let Babl handle all color conversion in gimp_edit_fill_internal()
...
also for indexed, thanks to the new palette format.
2012-05-02 17:45:56 +02:00
d146cc40ea
app: require a Babl for all buffers created on top of tiles
...
Fixes quite some introduced glitches with indexed mode because
the buffers use the right pixel format now.
2012-05-02 17:45:56 +02:00
19fc49a972
app: remove unused variable from last commit
2012-05-02 17:45:56 +02:00
e03dcc074b
app: use the new Babl palette format to implement indexed images
...
- keep babl palette formats around in the image in indexed mode
- create drawables with the right format
- as first test, convert indexed drawabled to rgb/gray by simply
calling gegl_buffer_convert()
2012-05-02 17:45:56 +02:00
88388467cc
app: move the layer mask show, edit, apply API from GimpLayerMask to GimpLayer
...
because it would require really evil hacks to honor these properties
in the gegl projection if they were on the mask, and because they
actually belong to the layer.
2012-05-02 17:45:56 +02:00
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