Michael Natterer
c173328a9a
app: remove "dest" parameter from temp_buf_copy() and always return a new copy
...
Also remove the color conversion functions in temp-buf.c
2012-05-02 17:50:58 +02:00
Michael Natterer
b521cb4272
app: use GEGL to convert a TempBuf to a GdkPixbuf
2012-05-02 17:50:58 +02:00
Michael Natterer
8202dcb44e
app: don't set mask->x and ->y to bogus and completely unused values
2012-05-02 17:50:58 +02:00
Michael Natterer
ff86f85744
app: remove x, y and color parameters from temp_buf_new()
...
Fix the places that passed the color by either temp_buf_data_clear()
or memset(), and assign x and y manually, they are going to vanish
completely soon.
2012-05-02 17:50:58 +02:00
Michael Natterer
9bac5b8837
app: add gimp_image_get_channel_format() and get_mask_format()
...
which for now return the same thing (Y' u8) and need to be used
in more places before becoming useful.
2012-05-02 17:50:58 +02:00
Michael Natterer
e250c02bc7
app: don't use GimpImageType in gimp_image_new_from_template()
2012-05-02 17:50:58 +02:00
Michael Natterer
3ddfa42c80
app: remove the remaining image_type macro junk from gimpimage.h
2012-05-02 17:50:58 +02:00
Michael Natterer
baa5ceb1e7
app: remove image_type API from GimpBuffer
2012-05-02 17:50:57 +02:00
Michael Natterer
ec2d5647c0
app: remove gimp_drawable_type_with_alpha()
2012-05-02 17:50:57 +02:00
Michael Natterer
3c4f9d55ed
app: use the new functions added with the last commit
2012-05-02 17:50:57 +02:00
Michael Natterer
2b18645fb5
app: use gimp_drawable_get_base_type() instead of GIMP_IMAGE_TYPE_BASE_TYPE()
2012-05-02 17:50:57 +02:00
Michael Natterer
f6f7d53020
app: add gimp_drawable_get_base_type()
2012-05-02 17:50:57 +02:00
Michael Natterer
afe8eaf256
app: remove GimpImageType based API and macro junk
2012-05-02 17:50:57 +02:00
Michael Natterer
c14738806e
app: use gimp_image_get_layer_format() instead of dealing with image_type
2012-05-02 17:50:57 +02:00
Michael Natterer
ef638faf82
app: add gimp_image_get_layer_format()
2012-05-02 17:50:56 +02:00
Michael Natterer
1e7d5e3cb4
app: fix drawable type check in gimp_drawable_convert_indexed()
2012-05-02 17:50:56 +02:00
Michael Natterer
e5ff78b083
app: more consistent format handling in gimpdrawable-convert.c
2012-05-02 17:50:56 +02:00
Michael Natterer
f4d8e5266a
app: gimp_edit_paste(): use more formats inatead of GimpImageType
2012-05-02 17:50:56 +02:00
Michael Natterer
105d2207ef
app: require a non-NULL format in gimp_tile_manager_create_buffer()
2012-05-02 17:50:56 +02:00
Michael Natterer
01a22de26c
app: port gimp_drawable_real_apply_buffer() to GEGL
...
but leave the old code there and use it for FS compositing (when
dest_buffer is != NULL) because we need the legacy projection as
reference.
2012-05-02 17:50:56 +02:00
Michael Natterer
cb3e8f82d4
app: simplify leftover and now useless nested if()
2012-05-02 17:50:55 +02:00
Michael Natterer
368ae01c86
app: don't special case the FS wrt its visibility in the layer stack
...
Its source node produces nothingness anyway, so it can be safely
plugged in. More FS special code gone \o/.
2012-05-02 17:50:54 +02:00
Michael Natterer
8cca4c51ad
app: use gimp_gegl_node_set_layer_mode() to configure the FS' mode node
2012-05-02 17:50:54 +02:00
Michael Natterer
09d4d56521
app: use gimp_gegl_convolve() in gimpbrush-transform.c
2012-05-02 17:50:54 +02:00
Michael Natterer
9b70f4e7fc
app: move some enums from base-enums.h to core-enums.h
2012-05-02 17:50:54 +02:00
Michael Natterer
7ec6c48636
app: use gimp_rgba_set,get_pixel() instead of babl_process() directly
2012-05-02 17:50:53 +02:00
Øyvind Kolås
6efd812d08
app: s/GIMP_GEGL_RECT/GEGL_RECTANGLE/
...
Defining GeglRectangle inline is so useful that it has been added to
GEGL.
2012-05-02 17:50:52 +02:00
Michael Natterer
c5c555c834
app: add "take_ownerspip" param to gimp_temp_buf_create_buffer()
...
and get rid of some more intermediate buffer creation/destruction, and
some redundant temp_buf_free() plus g_object_unref().
2012-05-02 17:50:51 +02:00
Michael Natterer
ab42466282
app: add a "filters" subdir on user install
2012-05-02 17:50:48 +02:00
Michael Natterer
b02e251eab
app: add GIMP_CONFIG_PARAM_SERIALIZE to all duplicated GParamSpecs
2012-05-02 17:50:48 +02:00
Michael Natterer
6e4599806f
app: add gimp_list_get_sort_func()
2012-05-02 17:50:48 +02:00
Michael Natterer
2d81a16bdf
app: remove "bytes" from GimpBuffer and add a format API
...
and change all users accordingly.
2012-05-02 17:50:47 +02:00
Michael Natterer
ca7ee8400e
app: remove gimp_image_transform_temp_buf()
2012-05-02 17:50:46 +02:00
Michael Natterer
3b936fe595
app: GimpImageType -> Babl in GipmBrushClipboard
2012-05-02 17:50:46 +02:00
Michael Natterer
93009ef274
app: use gimp_temp_buf_create_buffer() all over the place
...
instead of creating linear buffers manually.
2012-05-02 17:50:46 +02:00
Michael Natterer
2957795372
app: add gimp_gegl_node_set_matrix() and use it instead of manual fiddling
2012-05-02 17:50:46 +02:00
Øyvind Kolås
b8e340b5bc
app: update paramspec duplication with changes in gegl paramspecs
2012-05-02 17:50:44 +02:00
Øyvind Kolås
1cee8d79bf
app: respect GEGLs ui-range hints for properties
2012-05-02 17:50:44 +02:00
Michael Natterer
50d7242b87
app: remove gimp_image_transform_rgb()
...
and use gimp_rgba_get_pixel() instead.
2012-05-02 17:50:43 +02:00
Michael Natterer
3e119c5af7
libgimpcolor: add gimp_rgb[a]_set,get_pixel()
...
which converts from/to any pixel format using Babl. Added tons of
includes and CFLAGS now that libgimpcolor publically uses Babl.
2012-05-02 17:50:43 +02:00
Michael Natterer
7f437d7d53
app: remove gimp_image_get_foreground,background()
...
and use gimp_context_get_foreground,background_pixel() instead.
2012-05-02 17:50:43 +02:00
Michael Natterer
8dfea70191
app: fix GIMP_TIMER_END() to take an arbitrary string
...
not a string constant that only works in the C preprocessor, and add a
timer to gimp_apply_operation().
2012-05-02 17:50:43 +02:00
Michael Natterer
29e7837441
app: remove gimpdrawable-process.[ch]
2012-05-02 17:50:43 +02:00
Michael Natterer
1a34171e68
app: remove the legacy option in gimp_drawable_scale()
2012-05-02 17:50:42 +02:00
Michael Natterer
87b7af7fa5
app: remove drawable->private->format, its buffer has a format already
...
Also, make group layer type conversion much less hackish by using the
same kind of temporary states that are used for reallocating its
projection on size change.
2012-05-02 17:50:42 +02:00
Michael Natterer
deb9b9caa8
app: replace GimpProjectable::get_image_type() by ::get_format()
...
and change semantics to returning the format it wants to be projected
in, not its actual format.
2012-05-02 17:50:42 +02:00
Michael Natterer
2a853cd1ee
app: remove GimpPickable::get_bytes()
2012-05-02 17:50:42 +02:00
Michael Natterer
5e754a9641
app: remove GimpPickable::get_image_type()
2012-05-02 17:50:42 +02:00
Michael Natterer
5fba7c70c7
app: replace the tile pyramid's GimpImageType by bytes, it needs nothing else
2012-05-02 17:50:41 +02:00
Michael Natterer
e00598abed
app: remove the legacy gimp-transform-region code
2012-05-02 17:50:41 +02:00
Michael Natterer
95327090c0
app: remove legacy support from gimpdrawable-transform.c
2012-05-02 17:50:41 +02:00
Michael Natterer
867da8f293
app: add gimp_context_get_foreground,background_pixel()
...
which takes a Babl format to convert from/to.
Include <gegl.h> in a million places.
2012-05-02 17:50:41 +02:00
Michael Natterer
39cca4aabd
app: more GimpImageType -> Babl
2012-05-02 17:50:40 +02:00
Michael Natterer
89d525c970
app: remove legacy support from GimpImageMap
2012-05-02 17:50:40 +02:00
Michael Natterer
f248324fd3
app: remove the lagacy hue-saturation cruft
...
it's unclear whether the operation is correct, but that can be sorted
out on master and merged.
2012-05-02 17:50:40 +02:00
Michael Natterer
23370d9fad
app: remove gimp_image_get_color()
2012-05-02 17:50:39 +02:00
Michael Natterer
48c796e748
app: port gimp_image_contiguous_region_by_seed() to babl_process()
...
instead of gimp_image_get_color().
2012-05-02 17:50:39 +02:00
Michael Natterer
932b80f612
app: port gimp_image_contiguous_region_by_color() to GEGL
2012-05-02 17:50:39 +02:00
Michael Natterer
5713e6ecfb
app: don't use gimp_image_get_color() in GimpPickable
...
A fish does the job just fine.
2012-05-02 17:50:39 +02:00
Michael Natterer
75b87f1a1d
app: don't use gimp_image_get_color() in gimp_palette_import_extract()
...
GEGL can deliver the image data as RGBA right away.
2012-05-02 17:50:39 +02:00
Michael Natterer
b74a2dbf0c
app: use Babl formats, not GimpImageType, in gimp_selection_extract()
2012-05-02 17:50:39 +02:00
Michael Natterer
36e982e2ed
app: port gimp_image_pick_color() to return a Babl format
...
instead of a GimpImageType.
2012-05-02 17:50:39 +02:00
Michael Natterer
25f4769c77
app: formatting cleanup in gimpimage-convert.c
2012-05-02 17:50:38 +02:00
Michael Natterer
031978c4c3
app: port gimpimage-convert.c to GEGL
2012-05-02 17:50:38 +02:00
Michael Natterer
1098eabc70
app: use the same indexed Babl formats during an image's lifetime
...
And only reconfigure them when the colormap changes. This way
undo/redo of layer adding/removing works across type conversions,
because the layers need to be in the same format as the image's
indexed format.
2012-05-02 17:50:38 +02:00
Øyvind Kolås
76546f7e7c
rename lanczos to lohalo
...
GEGL had a broken lanczos implementation, the lohalo implementation is better
anyways (at least when passed a proper scale matrix).
2012-05-02 17:50:38 +02:00
Øyvind Kolås
ee97c1f4ff
app: correct usage of babl formats
...
GIMP was doing evil hacks lying to GEGL about it's pixels being in a linear
color space when they are not. This causes incorrect rendering, makes gaussian
blur misbehave etc.
The legacy projection modes should be implemented using the same 2.2 gamma
formats that are correct to specify for sRGB data. (for proper color
management in higher bitdepths; icc backend babl formats should be used.)
For the old image modes correct babl formats are:
R'G'B'A u8 - 8 bit RGB with 2.2 gamma (sRGB) with linear alpha component
R'G'B' u8 - 8 bit RGB with 2.2 gamma (sRGB)
Y'A u8 - 8 bit Grayscale with 2.2 gamma with linear alpha component
Y' u8 - 8 bit Grayscale with 2.2 gamma
Y u8 - 8 bit linear data, used for masks/channels
A u8 - 8 bit linear alpha
-----------------------------------------------
RGBA float - 32bit floating point linear light RGB
RaGaBaA float - 32bit floating point linear light RGB, premultiplied alpha
to be used for processing that needs to scale by the alpha,
(blurs, resampling etc)
R'G'B'A float - 32bit floating point sRGB with gamma, to be used where
the result depends on being closer to perceptual when
processing, can be used a cheaper alternative to CIE Lab
based modes.
-----------------------------------------------
The legacy layer modes should use the formats with gamma 2.2 only for loading
and rendering legacy XCF files correctly, in the brave new world compositing
should most likely be done in linear light with "RGBA float" and even better
"RaGaBaA float" like GEGL does for porter duff and other compositing modes.
The ability to chose the legacy layer modes should probably be hidden from the
user unless an old .xcf has been opened.
2012-05-02 17:50:38 +02:00
Michael Natterer
2c0fde88f2
app: remove the legacy color-balance cruft
2012-05-02 17:50:38 +02:00
Michael Natterer
3a48101b9d
app: use below new function for shapeburst blend and cage tool progress
2012-05-02 17:50:37 +02:00
Michael Natterer
42e2f5ebfe
app: remove legacy includes from blend
2012-05-02 17:50:37 +02:00
Michael Natterer
70f501da93
app: remove the global dist_buffer variable and pass it around locally
2012-05-02 17:50:37 +02:00
Michael Natterer
ea86461586
app: port the rest of the shapeburst blend logic to GEGL
2012-05-02 17:50:37 +02:00
Michael Natterer
865b925598
app: add GimpOperationShapeburst to calculate the distance map for blend
2012-05-02 17:50:36 +02:00
Michael Natterer
97f6061a91
app: remove some obsolete legacy includes from gimpdrawable.c
2012-05-02 17:46:16 +02:00
Michael Natterer
eea149d8e5
app: better GEGL code in gimp_layer_create_mask()
2012-05-02 17:46:16 +02:00
Øyvind Kolås
bfb3cd60d1
app: adapt to API changes in gegl_buffer_iterator
2012-05-02 17:46:15 +02:00
Michael Natterer
efbc4e61b0
app: more gegl_buffer_iterator_new() updates
2012-05-02 17:46:15 +02:00
Øyvind Kolås
9a22e2202f
app: update with GEGL iterator API changes
2012-05-02 17:46:15 +02:00
Michael Natterer
c3a818f8f8
app: properly sync the projection's tiles and their buffer
...
Esp. don't keep two buffer "views" on the tiles around,
2012-05-02 17:46:15 +02:00
Michael Natterer
ebcf22ba82
app: use gegl_buffer_set_format() to "cast" a dest buffers format
...
in order to extract a src buffer's components
2012-05-02 17:46:15 +02:00
Øyvind Kolås
f68c3c7051
app: adapt to API changes in GEGL
2012-05-02 17:46:15 +02:00
Michael Natterer
2b6b5a8ada
app: remove unused base/ includes
2012-05-02 17:46:15 +02:00
Michael Natterer
9a1fbe9418
app: remove obsolete include from gimpchannel.c
2012-05-02 17:46:14 +02:00
Michael Natterer
dab97df012
app: remove the TileValidateProc from gimp_channel_new_mask()
...
and simply gegl_buffer_clear() the thing instead.
2012-05-02 17:46:14 +02:00
Michael Natterer
b08ba684cf
app: replace border_region() by GimpOperationBorder
2012-05-02 17:46:14 +02:00
Michael Natterer
8fc7c17d39
app: replace fatten_region() by GimpOperationGrow
2012-05-02 17:46:14 +02:00
Michael Natterer
fa072f0cd4
app: remove thin_region(), turns out that gimp:shrink was not slow after all
2012-05-02 17:46:14 +02:00
Michael Natterer
03b15ea668
app: remove "dont-cache" from gimp_apply_opeation()
...
it slows down all ops which wan to process the entire buffer in one
go, like the new gimp:shrink.
2012-05-02 17:46:13 +02:00
Michael Natterer
be853cd239
app: remove "gboolean linear" from all apply_operation APIs
...
thes were all unused and we want to get rid of that anyway.
2012-05-02 17:46:13 +02:00
Michael Natterer
cbb2766f07
app: add GimpOperationShrink which does "shrink selection"
...
but it's horribly slow, so keep the old code around for now and make
the new one depend on use_gegl.
2012-05-02 17:46:13 +02:00
Michael Natterer
a0ce43dc93
app: don't pass 1.0 as boolean value, not that it would change anything...
2012-05-02 17:46:13 +02:00
Michael Natterer
f036b77f9a
app: fix typo that caused wrong paint apply offset in bucket fill
2012-05-02 17:46:13 +02:00
Øyvind Kolås
c872a9368e
app: sprinkle level argument over process functions
2012-05-02 17:46:13 +02:00
Michael Natterer
942ed2316b
app: remove gimp_drawable_process_lut()
2012-05-02 17:46:13 +02:00
Michael Natterer
cf86aeceb3
app: add GimpOperationEqualize and port equalize to it
2012-05-02 17:46:13 +02:00
Michael Natterer
8d5471502e
app: move GimpHistogram from base/ to core/
2012-05-02 17:46:13 +02:00
Michael Natterer
de0321a82e
app: add gimp_gegl_node_set_layer_mode()
...
and remove all other code that does layer_mode -> node.
2012-05-02 17:46:13 +02:00
Michael Natterer
fb74b9e822
app: chnage gimp_gegl_create_apply_opacity_node()'s mask offset
...
to be the offset *of* the mask, not the offset *into* the mask, also
reorder parameters.
2012-05-02 17:46:12 +02:00
Michael Natterer
7223af17a2
app: completely port GimpDrawable::apply_region()'s API to GeglBuffer
...
and pass lots of coords that were hidden inside PixelRegions
explicitly.
2012-05-02 17:46:12 +02:00
Michael Natterer
bfd54a69b7
app: implement "disable layer mask" in the GEGL graph
2012-05-02 17:46:12 +02:00
Michael Natterer
061e044e0a
app: change GimpDrawable::replace_region() by ::replace_buffer()
2012-05-02 17:46:12 +02:00
Michael Natterer
cde58408fa
app: remove the legacy levels cruft
2012-05-02 17:46:12 +02:00
Michael Natterer
a34b19774b
app: remove the legacy curves cruft
...
and move PDB parameter collection into GimpCurvesConfig convenience
constructors.
2012-05-02 17:46:11 +02:00
Michael Natterer
5bc683f6bc
app: make gimpdrawable-combine.c more readable before proceeding
2012-05-02 17:46:11 +02:00
Michael Natterer
4bcddb04a2
app: turn gimp_drawable_apply_buffer()'s src1_tiles argument into base_buffer
2012-05-02 17:46:11 +02:00
Michael Natterer
579d894778
app: turn GimpDrawable::apply_region() into ::apply_buffer()
...
and GimpDrawableUndo.src2_tiles into applied_buffer.
2012-05-02 17:46:11 +02:00
Michael Natterer
ea8eebcd47
app: support TempBuf backed buffer in gimp_drawable_apply_buffer()
2012-05-02 17:46:11 +02:00
Michael Natterer
d9825e0aea
app: use gimp_drawable_apply_buffer() for legacy FS composition
2012-05-02 17:46:11 +02:00
Michael Natterer
fe1f140e1a
app: port blend to gimp_drawable_apply_buffer()
2012-05-02 17:46:11 +02:00
Michael Natterer
6dfaf8ae50
app: more gimp_drawable_apply_region() -> apply_buffer()
2012-05-02 17:46:10 +02:00
Michael Natterer
d2506e43bc
app: flush and refetch the shadow buffer before handing it out
2012-05-02 17:46:10 +02:00
Michael Natterer
99ae46b4ed
app: turn the drawable's shadow tiles into a shadow buffer
2012-05-02 17:46:10 +02:00
Michael Natterer
dbc881376e
app: add gimp_drawable_apply_buffer() and port edit, bucket fill, stroke
2012-05-02 17:46:10 +02:00
Michael Natterer
6534ebb866
app: more copy_region() -> gegl_buffer_copy()
2012-05-02 17:46:10 +02:00
Michael Natterer
c401cf4cba
app: tile_manager_read_pixel_data_1() -> gegl_buffer_sample()
2012-05-02 17:46:10 +02:00
Michael Natterer
0f38966664
app: store GimpImageMap's undo pixels as GeglBuffer, not TileManager
2012-05-02 17:46:10 +02:00
Michael Natterer
904a35d722
app: remove width, height from GimpDrawableUndo and GimpDrawable::swap_tiles()
...
because we always store/swap a buffer of the actual size now.
2012-05-02 17:46:09 +02:00
Michael Natterer
a0c1007b66
app: port GimpDrawableUndo, GimpDrawable::push_undo() and ::swap_tiles()
...
which gets rid of the manual implementation of sparse undo buffers,
but GEGL will take care of proper COW here soo enough.
2012-05-02 17:46:08 +02:00
Michael Natterer
153f56655a
app: rename the buffer's tile_source_node to buffer_source_node
2012-05-02 17:46:08 +02:00
Michael Natterer
a982a5ea3a
app: change GimpDrawable::get_tiles() to ::get_buffer()
...
and shuffle code around because the other API is now virtual.
2012-05-02 17:46:07 +02:00
Michael Natterer
f8f4455459
app: change GimpDrawable::set_tiles() to ::set_buffer()
...
and remove the "type" argument, GeglBuffers have a format.
2012-05-02 17:46:07 +02:00
Michael Natterer
767e472fe8
app: port gimpimage-convert.c to gimp_drawable_set_buffer()
2012-05-02 17:46:07 +02:00
Michael Natterer
938c686daf
app: minor cleanup and include removal
2012-05-02 17:46:07 +02:00
Michael Natterer
9d260c380b
app: completely port gimpdrawable-convert.c to GeglBuffer
2012-05-02 17:46:07 +02:00
Michael Natterer
be4dcb16d0
app: port GimpGroupLayer to gimp_buffer_set_tiles_full()
2012-05-02 17:46:07 +02:00
Michael Natterer
5a7b7d9a4b
app: add gimp_gegl_buffer_get_tile_manager()
...
and ust it in some get_memsize() functions instead of having a
FIXME. So many files changed because they need to inlcude <gegl.h>
now.
2012-05-02 17:46:07 +02:00
Michael Natterer
c4f88e5166
app: port gimp_drawable_scale() to gimp_drawable_set_buffer_full()
2012-05-02 17:46:07 +02:00
Michael Natterer
715bd7cfbb
app: port GimpDrawableModUndo to storing pixels as GeglBuffers
2012-05-02 17:46:07 +02:00
Michael Natterer
9774bb62e7
app: use hard-edges = TRUE when GEGL-scaling drawables
2012-05-02 17:46:07 +02:00
Michael Natterer
d5795c0081
app: use a GeglBuffer instead of TileManager as storage in drawables \o/
2012-05-02 17:46:06 +02:00
Michael Natterer
3a8248ccfe
app: pass the right filter when GEGL-transfomring
2012-05-02 17:46:06 +02:00
Michael Natterer
765c2cfea2
app: replace GimpDraable's type by a Babl format
...
and change gimp_drawable_new() and all gimp_layer_new() variants to
take formats instead of types.
2012-05-02 17:46:06 +02:00
Michael Natterer
9b0634bbd4
app: remove gimp_layer_new_from_tiles(), it's now unused
2012-05-02 17:46:06 +02:00
Michael Natterer
07be967b45
app: remove gimp_selection_extract_buffer() again
2012-05-02 17:46:06 +02:00
Michael Natterer
c6daba8b5d
app: port everything to gimp_selection_extract_buffer()
2012-05-02 17:46:06 +02:00
Michael Natterer
525a405270
app: port the entire transform API from TileManager to GeglBuffer
2012-05-02 17:46:06 +02:00
Michael Natterer
7b88ab6a46
app: add gimp_selection_extract_buffer ()
2012-05-02 17:46:06 +02:00
Michael Natterer
b89a912cc7
app: use gimp_drawable_set_buffer() in a few places
2012-05-02 17:46:05 +02:00
Øyvind Kolås
f8b1372038
app: make use of GIMP_GEGL_RECT in more places
2012-05-02 17:46:05 +02:00
Øyvind Kolås
84b914ce63
app: fix initialization of variable in gimp_layer_get_opacity_at
2012-05-02 17:46:05 +02:00
Øyvind Kolås
390d48d436
app: add a GIMP_GEGL_RECT utility macro
...
It is evil, but it is possible to take the address of an inline defined struct
as an argument in C. =)
2012-05-02 17:46:05 +02:00
Michael Natterer
6274b269ca
app: add gimp_drawable_set_buffer() and set_buffer_full()
2012-05-02 17:46:05 +02:00
Øyvind Kolås
fe3220ae6f
app: remove write property of GeglBuffer backend
2012-05-02 17:46:05 +02:00
Michael Natterer
0bcae125b5
app: merge gimp_drawable_get_read_buffer() and get_write_buffer()
...
into get_buffer(). The loss of zero copy will be compensated soon.
2012-05-02 17:46:04 +02:00
Michael Natterer
5e176d3cd7
app: port gimp_image_crop_auto_shrink() to GEGL
2012-05-02 17:46:04 +02:00
Michael Natterer
f67bcfa82b
app: port the entire GimpScanConvert API to GeglBuffer
2012-05-02 17:46:04 +02:00
Michael Natterer
113f01feb2
app: port gimp_scan_convert_render_full() to GeglBufferIterator
2012-05-02 17:46:04 +02:00
Michael Natterer
0053494c18
app: apply patch from Villa Sokk that implements GimpOperationDissolveMode
2012-05-02 17:46:03 +02:00
Michael Natterer
dcfcfcf433
app: port GimpBoundary to GEGL, including its API
2012-05-02 17:46:03 +02:00
Michael Natterer
f45df7fe35
app: port gimp_selection_extract() to GEGL
2012-05-02 17:46:03 +02:00
Michael Natterer
69c52173fb
app: change gimp_gegl_color_set_rgba() to gimp_gegl_color_new()
...
which saves one line of code in every single use case.
2012-05-02 17:46:03 +02:00
Michael Natterer
8a7ea1c25a
app: add a use_gegl case in gimp_drawable_transform_tiles_affine()
...
which essentially implements the GEGL-based transform tool.
2012-05-02 17:46:03 +02:00
Michael Natterer
254ad23b28
app: be smarter about progress in gimp_apply_operation()
...
so an already started progress can be passed in.
2012-05-02 17:46:03 +02:00
Michael Natterer
e613af7b46
app: implement "show layer mask" in the GEGL graph
2012-05-02 17:46:02 +02:00
Michael Natterer
34ef32ff78
app: replace some region operations in blend by GEGL
2012-05-02 17:46:02 +02:00
Michael Natterer
58dfa962a1
app: port simple rotating and flipping to GEGL
...
Which requires making the entire copy/paste apparatus aware of the
Babl format of the passed around tile managers.
2012-05-02 17:46:02 +02:00
Michael Natterer
2c62644f94
app: BoundSeg -> GimpBoundSeg, boundary_foo() -> gimp_boundary_foo()
2012-05-02 17:46:02 +02:00
Michael Natterer
9323c2f28c
app: move base/boundary.[ch] to core/gimpboundary.[ch]
...
No other changes yet, just make the move build.
2012-05-02 17:46:02 +02:00
Michael Natterer
62a23f8a89
app: port drawable'e and projection's get_pixel_at() to gegl_buffer_sample()
2012-05-02 17:46:02 +02:00
Michael Natterer
6f6c42a9c3
app: port gimp_channel_combine_mask() to GeglBufferIterator
2012-05-02 17:46:01 +02:00
Michael Natterer
47453eb36b
app: remove unused include from gimp-edit.c
2012-05-02 17:46:01 +02:00
Michael Natterer
1b44953352
app: port bucket fill to GEGL
...
Add mask offset parameters to gimp_gegl_create_apply_opacity_node()
so it's possible to use a part of the mask only, bucket fill
uses that to avoid uneccessary work where the mask is empty.
Should use the same in gimp_drawable_stroke_scan_convert().
2012-05-02 17:46:01 +02:00
Michael Natterer
1780cfc1e7
app: remove the !seed_fill case from gimp_drawable_bucket_fill()
...
We use gimp_edit_fill() for that now. Also remove bucket fill's
_full() variant because it's unused now.
2012-05-02 17:46:01 +02:00
Michael Natterer
3ec245a991
app: add opacity and paint_mode to gimp_edit_fill[_full]()
...
and use it instead of bucket-fill in the non-seed-fill case.
2012-05-02 17:46:01 +02:00
Michael Natterer
ffeb3515db
app: add gimp_edit_fill_full() which takes color and pattern
...
and use it for dropping colors and patterns on the display
and on the layers dialog, instead of using the overkill
gimp_drawable_bucket_fill_full().
2012-05-02 17:46:01 +02:00
Michael Natterer
9d333190d6
app: simplify gimp_edit_fill_internal() by adding color and pattern arguments
...
instead of context and fill mode. Collect the actual parameters in
gimp_edit_fill() instead, which makes much more sense.
2012-05-02 17:46:01 +02:00
Michael Natterer
5b1eeab718
app: port coloring/patterning a stroked GimpScanConvert to GEGL
2012-05-02 17:46:00 +02:00
Michael Natterer
0250e549b4
app: remove unused include
2012-05-02 17:46:00 +02:00
Michael Natterer
066d5d84c9
app: port all implementations of GimpProjectable::get_opacity_at() to Gegl
2012-05-02 17:46:00 +02:00
Michael Natterer
0810bd2e44
app: make gimp_image_transform_rgb() transform the alpha too
...
and remove explicit alpha setting in the returned array in most places.
2012-05-02 17:46:00 +02:00
Øyvind Kolås
7250085d1c
app: all Babls used by GIMP are now const
2012-05-02 17:46:00 +02:00
Michael Natterer
b68a05f240
app: remove gimpimage-colorhash.[ch]
...
All indexed mapping is done with Babl now \o/
2012-05-02 17:46:00 +02:00
Michael Natterer
4ba37eacd8
app: remove gimp_image_transform_color()
...
and port to gimp_image_transform_rgb() to babl_process()
2012-05-02 17:46:00 +02:00
Michael Natterer
cdcad83493
app: port gimp_image_transform_temp_buf() to one single babl_process()
2012-05-02 17:46:00 +02:00
Michael Natterer
906176831d
app: add image API to get Babl formats based on GimpImageType
...
because we often have only a type and an image, but no drawable
(yet) to ask for its types.
2012-05-02 17:46:00 +02:00
Michael Natterer
b05e213d6d
app: stop using gegl_color_set_pixel() with hand-transformed pixels
...
instead, simply use rgb values and rely on the subsequent
gegl_buffer_set_color() to do the right thing because the buffer know
their indexed format now.
2012-05-02 17:45:59 +02:00
Michael Natterer
14c259cc3e
app: remove gimp_drawable_apply_operation_to_tiles()
2012-05-02 17:45:59 +02:00
Michael Natterer
cfd94be627
app: also port gimp_channel_convert() to apply_operation_to_buffer()
2012-05-02 17:45:58 +02:00
Michael Natterer
75467664be
app: enable GEGL scaling of indexed drawables in gimp_drawable_scale()
...
by simply using gimp_drawable_apply_operation_to_buffer() and the
right Babl format on the buffer.
2012-05-02 17:45:58 +02:00
Michael Natterer
e2afb75292
app: use gimp_drawable_apply_operation_to_buffer() in gimp_layer_flatten()
...
and not gimp_drawable_apply_operation_to_tiles() because that would
guess the wrong Babl format for the new tiles if the image is indexed.
2012-05-02 17:45:58 +02:00
Michael Natterer
9ecdea30b8
app: add gimp_drawable_get_format_without_alpha()
2012-05-02 17:45:58 +02:00
Michael Natterer
9a09d3a762
app: drop "babl" from gimp_foo_get_babl_format[_with_alpha]()
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
Øyvind Kolås
f5839e785e
app: sync with babl API change of babl_new_palette
2012-05-02 17:45:58 +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
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
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
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