Commit Graph

31157 Commits

Author SHA1 Message Date
Michael Natterer 92a3187571 app: optimize gimp_brush_core_paint_line_pixmap_mask() a lot
by using one single call to babl_process() for one line if the pixmap.
2012-05-02 17:45:58 +02:00
Michael Natterer e9ecc40f02 app: add GimpPickable::get_babl_format_with_alpha() 2012-05-02 17:45:58 +02:00
Michael Natterer 5933f222c9 app: add gimp_bpp_to_babl_format_with_alpha() 2012-05-02 17:45:58 +02:00
Øyvind Kolås f5839e785e app: sync with babl API change of babl_new_palette 2012-05-02 17:45:58 +02:00
Michael Natterer 57ed75eca4 app: use Babl in gimp_brush_core_paint_line_pixmap_mask()
to convert the brush pixmap's colors. This code still needs some
love...
2012-05-02 17:45:57 +02:00
Michael Natterer 53bfc36bbf app: convert colors with Babl in gimp_text_layer_render_layout() 2012-05-02 17:45:57 +02:00
Michael Natterer 744199a8f7 app: remove gimp_layer_new_from_region() and use from_buffer() instead 2012-05-02 17:45:57 +02:00
Michael Natterer b1da84f6fb app: correctly refcount the pixbuf in gimp_pixbuf_create_buffer() 2012-05-02 17:45:57 +02:00
Øyvind Kolås 8bfdf3ce7b app: GeglBuffer-backend GeglTiles now use GDestroyNotify 2012-05-02 17:45:57 +02:00
Michael Natterer 553e65e859 app: add gimp_pixbuf_create_buffer() and use it in GimpBuffer 2012-05-02 17:45:57 +02:00
Michael Natterer 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
Michael Natterer fbf11ba84f app: don't call gimp_layer_get_edit_mask() when the layer has no mask 2012-05-02 17:45:57 +02:00
Michael Natterer e309e009f7 app: let Babl handle color conversion in gimp_drawable_fill() 2012-05-02 17:45:57 +02:00
Michael Natterer 69b2aa880f app: add gimp_pattern_create_buffer() and use it in gimp_edit_fill_internal() 2012-05-02 17:45:56 +02:00
Michael Natterer 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
Michael Natterer 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
Michael Natterer 19fc49a972 app: remove unused variable from last commit 2012-05-02 17:45:56 +02:00
Michael Natterer 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
Michael Natterer 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
Michael Natterer c22b6a2884 app: move variable to local scope 2012-05-02 17:45:56 +02:00
Michael Natterer 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
Michael Natterer 5b644f1037 app: add GimpOperationSetAlpha which sets the alpha channel to a value 2012-05-02 17:45:56 +02:00
Michael Natterer 53e0671ce0 app: port gimp_palette_import_extract() to GeglBufferIterator 2012-05-02 17:45:55 +02:00
Michael Natterer f05de34cd6 app: add GimpPickable::get_babl_format() 2012-05-02 17:45:55 +02:00
Michael Natterer b2d8aef239 app: remove obsolete include in gimpchannel.c 2012-05-02 17:45:55 +02:00
Michael Natterer dfa7173ee0 app: port gimp_channel_combine_ellipse_rect() to GeglBufferIterator 2012-05-02 17:45:55 +02:00
Michael Natterer 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
Michael Natterer a9c1392572 app: port gimp_channel_real_bounds() to GeglBufferIterator 2012-05-02 17:45:55 +02:00
Michael Natterer 7c1a642966 app: minor cleanup and commenting in gimp_scan_convert_render_full() 2012-05-02 17:45:55 +02:00
Michael Natterer 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
Michael Natterer 8aabfb1779 app: s/read_buffer/write_buffer/ in GimpTextLayer because we fill the tiles 2012-05-02 17:45:55 +02:00
Michael Natterer 410d6405d6 app: use GeglBufferIterator in gimp_channel_real_is_empty() 2012-05-02 17:45:55 +02:00
Michael Natterer fd579343df app: use GeglBufferIterator in gimp_text_layer_render_layout() 2012-05-02 17:45:54 +02:00
Michael Natterer 97b41ecbb6 app: remove multiply_alpha_region() and separate_alpha_region() 2012-05-02 17:45:54 +02:00
Michael Natterer 07ba5b37a0 app: remove shade_region() 2012-05-02 17:45:54 +02:00
Michael Natterer 299886d20d app: convert drawables between RGB and GRAY using gegl_buffer_copy() 2012-05-02 17:45:54 +02:00
Michael Natterer 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
Michael Natterer 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
Michael Natterer 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
Michael Natterer 4ab4da0e6c app: remove flatten_region() and its helper functions 2012-05-02 17:45:53 +02:00
Michael Natterer 5c71411502 app: use GEGL to create a layer mask from a grayscale copy of the layer 2012-05-02 17:45:53 +02:00
Michael Natterer 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
Michael Natterer 528e007e03 app: remove copy_color() and its helper functions 2012-05-02 17:45:53 +02:00
Michael Natterer 119b58b659 app: remove copy_component() and its helper functions 2012-05-02 17:45:53 +02:00
Michael Natterer f8c29b2532 app: remove obsolete includes from gimpbrushclipboard.c 2012-05-02 17:45:53 +02:00
Michael Natterer 8cc2a71b81 app: create GimpBrushClipboard's buffers with GEGL 2012-05-02 17:45:53 +02:00
Michael Natterer 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
Michael Natterer 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
Michael Natterer 0ae0dfb52e app: add a flatten meta-op and use it for layers and channels 2012-05-02 17:45:52 +02:00
Michael Natterer 52d033e2c1 app: don't need an attached item for applying an op to tiles/buffers 2012-05-02 17:45:52 +02:00