Commit Graph

31301 Commits

Author SHA1 Message Date
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