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
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
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
1921fa7de3
app: always create a new tool in filters_filter_cmd_callback()
...
Things will get more complicated in GimpOperationTool soon, and we
don't want to mess around with reconfiguring *everything* in the tool.
2012-05-02 17:50:43 +02:00
29e7837441
app: remove gimpdrawable-process.[ch]
2012-05-02 17:50:43 +02:00
28913496bb
app: use a GimpSpinScale instead of a scale entry in the prop_table
2012-05-02 17:50:43 +02:00
8bc6f1ee09
app: add parent_type parameter to gimp_gegl_get_config_proxy()
...
and derive from that type. Use GimpImageMapConfig as base class for
GimpOperationTool's config.
2012-05-02 17:50:42 +02:00
e8cc9d1bf5
app: turn gimp_image_map_tool_add_settings_gui() into a virtual function
...
and change it to return the settings ui, not add it.
2012-05-02 17:50:42 +02:00
8e31fdf363
app: remove paint-funcs/reduce-region.[ch]
2012-05-02 17:50:42 +02:00
23811be3f6
app: remove paint-funcs/scale-region.[ch]
2012-05-02 17:50:42 +02:00
1a34171e68
app: remove the legacy option in gimp_drawable_scale()
2012-05-02 17:50:42 +02:00
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
49de3d5292
app: follow changes in GeglOperation API
2012-05-02 17:50:42 +02:00
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
2a853cd1ee
app: remove GimpPickable::get_bytes()
2012-05-02 17:50:42 +02:00
5e754a9641
app: remove GimpPickable::get_image_type()
2012-05-02 17:50:42 +02:00
5fba7c70c7
app: replace the tile pyramid's GimpImageType by bytes, it needs nothing else
2012-05-02 17:50:41 +02:00
e00598abed
app: remove the legacy gimp-transform-region code
2012-05-02 17:50:41 +02:00
f4a4aa2133
app: use a GEGL graph for perspective clone's transform
...
Horribly slow, but seems to work.
2012-05-02 17:50:41 +02:00
95327090c0
app: remove legacy support from gimpdrawable-transform.c
2012-05-02 17:50:41 +02:00
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
37c895ba68
app: have the display renderer ask for the projection's format not image_type
2012-05-02 17:50:40 +02:00
39cca4aabd
app: more GimpImageType -> Babl
2012-05-02 17:50:40 +02:00
89d525c970
app: remove legacy support from GimpImageMap
2012-05-02 17:50:40 +02:00
98226d0b36
app: remove legayc support from GimpImageMapTool
2012-05-02 17:50:40 +02:00
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
8008b75411
app: forgot the GimpImageType -> Babl change in pick_color() here
2012-05-02 17:50:39 +02:00
23370d9fad
app: remove gimp_image_get_color()
2012-05-02 17:50:39 +02:00
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
932b80f612
app: port gimp_image_contiguous_region_by_color() to GEGL
2012-05-02 17:50:39 +02:00
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
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
b74a2dbf0c
app: use Babl formats, not GimpImageType, in gimp_selection_extract()
2012-05-02 17:50:39 +02:00
36e982e2ed
app: port gimp_image_pick_color() to return a Babl format
...
instead of a GimpImageType.
2012-05-02 17:50:39 +02:00
c8481fd19e
app: increase the tile size for plug-ins to 128x128
2012-05-02 17:50:39 +02:00
25f4769c77
app: formatting cleanup in gimpimage-convert.c
2012-05-02 17:50:38 +02:00
031978c4c3
app: port gimpimage-convert.c to GEGL
2012-05-02 17:50:38 +02:00
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
e540444b56
app: fix registration of babl formats
2012-05-02 17:50:38 +02:00
69cd6d033a
app: fix registration of babl_format("A u8")
2012-05-02 17:50:38 +02:00
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
52e40bce42
pdb: port drawable pixel access API to GEGL
2012-05-02 17:50:38 +02:00
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
2c0fde88f2
app: remove the legacy color-balance cruft
2012-05-02 17:50:38 +02:00
1f7cf2dd6b
pdb: add new group plug-in-compat for compat procedures of removed plug-ins
...
For now contains a pixelize implementation, but it's still called
gimp-plug-in-pixelize, not plug-in-pixelize.
2012-05-02 17:50:37 +02:00
52f92de6e0
plugins/newsprint: remove assumption that tiles are square
2012-05-02 17:50:37 +02:00
2e33fc15b5
app: remove includes from app/plug-in/
2012-05-02 17:50:37 +02:00
acd3ce41b0
app: port the entire plug-in tile communication to using GeglBuffers
...
which means we are now completely independent of TileManager tile
sizes. The "tile" size used to talk to plug-ins is now defined as:
2012-05-02 17:50:37 +02:00
3a48101b9d
app: use below new function for shapeburst blend and cage tool progress
2012-05-02 17:50:37 +02:00
315881065b
app: add gimp_gegl_progress_connect()
...
which connects to notify::progress of the operation inside a node an
updates a GimpProgress accordingly.
2012-05-02 17:50:37 +02:00