Commit Graph

1737 Commits

Author SHA1 Message Date
Michael Natterer c452f12519 pdb: normalize the compat motion blurs' angles to -180..180 2014-05-18 22:33:11 +02:00
Michael Natterer 2ce79d3b13 plug-ins, pdb: remove the tile-glass plug-in and add a PDB compat procedure 2014-05-16 22:11:28 +02:00
Michael Natterer 6c7fae9e11 app, libgimp*, pdb: move more enums from app/core to libgimpbase 2014-05-14 00:06:01 +02:00
Michael Natterer 9dde82b215 libgimpbase: sort gimpbaseenums.h alphabetically 2014-05-13 23:29:17 +02:00
Michael Natterer f636b4ad34 app, libgimpbase: move lots of enums from app/core to libgimpbase
It makes little sense to keep them in one header and parse them with a
pile of perl, just to generate them in another header. Simply keep
them in a place everybody depends on.
2014-05-13 00:27:29 +02:00
Michael Natterer de08267f06 libgimpbase, *: add enum value GIMP_ICON_TYPE_ICON_NAME
and keep GIMP_ICON_TYPE_STOCK_ID as a deprecated alias. Change all
plug-ins accordingly and increase the pluginrc file version number so
it gets regenerated with "icon-name" instead of "stock-id".
2014-05-11 23:56:30 +02:00
Michael Natterer d9cf36d07d app: remove gimp:cast-format and use gegl:cast-format 2014-05-05 19:30:21 +02:00
Michael Natterer 64290145a2 pdb. plug-ins: remove the noise-rgb plug-in and add PDB compat wrappers 2014-05-04 23:43:02 +02:00
Michael Natterer ff59aebbe8 pdb, plug-ins: remove the blur-gauss plug-in and add compat procedures
Add a utility function to wrap PDB compat nodes in gimp:cast-format
ops, so we can use ops that are now implemented in linear RGB for
plug-in compat procedures, which are all supposed to work on gamma
corrected RGB.
2014-05-04 22:53:29 +02:00
Ed J 7338c0309e Document other layer_group-relevant procedures in gimp_layer_group_new. 2014-05-03 03:38:38 +01:00
Michael Natterer 7f23fbec34 app: add screen and monitor to all display and image window constructors
so they appear on the proper monitor as well.
2014-05-02 20:21:41 +02:00
Mukund Sivaraman e2d72211cf gimp-mkenums: Ignore forward declarations
Based on patch by Dan Winship (see commit f049262a in the glib git
repo).
2014-05-02 22:57:56 +05:30
Michael Natterer b60e1779cd app: pass a GimpGradient to gimp_drawable_blend(), not a GimpBlendMode
The blend mode is now only a PDB compat enum, translate between
GimpBlendMode and the built-in gradients in the gimp-edit-blend PDB
wrapper.
2014-04-30 09:17:42 +02:00
Michael Natterer a4223766f2 all,libgimp*: move GimpConvolveType and GimpInkBlobType to libgimpbase
and make GimpConvolveType's values sane.
2014-04-29 22:44:58 +02:00
Michael Natterer f7d71e2eda pdb: don't scan headers that don't contain PDB-exported enums 2014-04-29 21:08:34 +02:00
Michael Natterer 22c222291d libgimpbase,*: clean up enum values in gimpbaseenums.h
GIMP_ADD_foo_MASK -> GIMP_ADD_MASK_foo
GIMP_foo_MODE -> GIMP_BLEND_foo
GIMP_foo_CLONE -> GIMP_CLONE_foo
GIMP_foo -> GIMP_DODGE_BURN_TYPE_foo
GIMP_foo -> GIMP_TRANSFER_foo

Add compat values for the old names and compat code to script-fu
and pygimp.
2014-04-29 20:58:30 +02:00
Michael Natterer bcce8c95ec Bug 729158 - Internal inconsistent state with gimp_image_get_selection...
+ gimp_channel_copy

Make gimp-channel-copy always return a GimpChannel, and fail the
prodecure if the input channel is not of image size.
2014-04-29 09:16:19 +02:00
Michael Natterer 2ff414d799 app,libgimp,pdb: remove enum GimpConvolutionType from the public API
It was exported accidentially and never used for anything.
2014-04-27 23:05:12 +02:00
Michael Natterer 8ce94d23b9 libgimpbase: move GIMP_REPEAT_TRUNCATE to the end of the enum
New values must go to the end to avoid ABI break.
2014-04-24 23:08:33 +02:00
Michael Natterer 0a9dc8b297 libgimpbase: exclude GIMP_INTERPOLATION_LANCZOS from the PDB again
An unmentioned fix in the previous commit to this file made it visible
to the PDB.
2014-04-24 23:04:52 +02:00
João S. O. Bueno ad4862c60b Adds new blending mode 'Truncate blend'
Bring repeat behavior on par with GEGL and Cairo,
and sane ways of creating square or circular gradient
shapes.
2014-04-24 12:18:26 -03:00
Michael Natterer 36ca865aaa pdb: use boolean not int32 for booleans in the apply lens compat wrapper 2014-04-14 13:05:28 +02:00
Michael Natterer 260a4a51b1 plug-ins, pdb: remove the lens-apply plug-in and add a compat procedure 2014-04-13 21:18:35 +02:00
Michael Natterer 60f23afde2 app: add a small infrastructure to validate known parasites
when they are added to items, images or globally, from the PDF or an
XCF file. None of the validation functions does anything currently,
they simply return TRUE.
2014-03-22 00:18:48 +01:00
Michael Natterer fea22c345c Bug 706361 - Printer queue dosn't show the filename of the printing image
Change the gimp-image-get-name procedure to return the same string
as shown in the image title, and mention in its API docs that this
string is meant for annotating UI elements only.
2014-03-15 17:53:10 +01:00
Michael Natterer e7ff0589cb app: shuffle precision enum values around to make room for U64
and add code to handle the old values from XCF files < version 7.
2014-03-09 01:46:08 +01:00
Michael Natterer 3c918353fb app: add double precision support, for completeness
and because it makes us look utterly cool.
2014-03-09 00:43:55 +01:00
Michael Natterer 4d6640ff79 Bug 721249 - pdb.gimp_context_set_brush_size() dont't work
Port selection/path stroking to using the PDB-controllable
paint options that live in GimpPDBContext.

Change gimp_item_stroke()'s "use_default_values" boolean which was
introduced at a time where we had no better way by a GimpPaintOptions
parameter. If a non-NULL paint_options is passed (when called from the
PDB), use it for stroking; if NULL is passed, use the actual paint
tool options from the GUI (when called from the menus or the stroke
dialog). In the PDB wrappers, get the right paint options object from
the PDB context associated with the calling plug-in.
2014-02-06 23:26:53 +01:00
Michael Natterer 9fe869236b Bug 721249 - pdb.gimp_context_set_brush_size() dont't work
Don't reset the brush size before each PDB paint stroke.
2014-02-03 23:05:56 +01:00
Michael Natterer a96a0d0bed pdb: add translation context to the newly added PDB functions 2014-01-13 01:27:37 +01:00
Michael Natterer b4462e9e19 app,libgimp,pdb: add a "drawable_color" PDB group
Which contains all the API from the "color" group, but with a
gimp_drawable namespace and with support for high bit depths. The
group is actually a copy of "color" with cruft removed and some API
ported to using float instead of integer API.

Deprecated all "color" functions that already have a ported version in
"drawable_color".

This is unfinished WIP, some functions in "drawable_color" still have
the old API.
2014-01-12 23:12:21 +01:00
João S. O. Bueno 9c4995d7b0 Adds a hue-saturation PDB call with the 'overlap' parameter. Fixes #634008 2014-01-06 00:43:07 -02:00
Michael Natterer ef85845372 app: add gimp_paint_options_set_default_brush_size()
and use it globally instead of two different methods, one of which was
forgotten to be ported to the new aspect ratio range where 0.0 means
1:1. Add a FIXME comment in paint_tools.pdb where I think setting the
default size is a bug, see #721249.
2014-01-04 15:48:34 +01:00
Michael Natterer 2ea1c6e9a1 plug-ins, pdb: remove the apply-canvas plug-in and add a compat procedure 2014-01-01 19:21:00 +01:00
Michael Natterer 29d95f4c39 pdb: fix gimp_layer_new_from_drawable() PDB wrapper
We must always call gimp_item_convert() even if the source drawable is
in the same image, or we might end up with a layer of wrong pixel
format. This was probably broken for years.
2013-11-19 21:39:13 +01:00
Téo Mazars c41c2452c5 app,pdb: add a compatibility wrapper for contrast-stretch-hsv
... and remove the old plugin
2013-11-16 16:50:49 +01:00
Téo Mazars 120e9ccf39 app,pdb: add a compatibility wrapper to contrast-stretch
... and remove the old plug-in
2013-11-15 19:12:56 +01:00
Hartmut Kuhse 21bed1e2fb Completely rewrite metadata handling using gexiv2
Based on original patches from Hartmut Kuhse and modified
by Michael Natterer. Changes include:

- remove libexif dependency and add a hard dependency on gexiv2
- typedef GExiv2Metadata to GimpMetadata to avoid having to
  include gexiv2 globally
- add basic GimpMetadata handling functions to libgimpbase
- add image and image file specific metadata functions to libgimp,
  including the exif orientation image rotate dialog
- port plug-ins to use the new APIs
- port file-tiff-save's UI to GtkBuilder
- add new plug-in "metadata" to view the image's metadata
- keep metadata around as GimpImage member in the core
- update the image's metadata on image size, resolution and precision
  changes
- obsolete the old metadata parasites
- migrate the old parasites to new GimpMetadata object on XCF load
2013-10-27 01:02:17 +02:00
Michael Natterer 697572ccc0 app,libgimp*: fix includes to follow our include policy
- don't include <gdk-pixbuf/gdk-pixbuf.h> in headers in app/
- instead, include it in many .c files instead of <glib-object.h>,
  finally acknowledging the fact that app/ depends on gdk-pixbuf almost
  globally
- fix up includes as if libgimpbase depended in GIO, which it soon will
2013-10-15 01:58:39 +02:00
Téo Mazars f3d40dceec plug-ins,pdb: Add a compatibility wrapper for lens-distortion
... and remove the old plug-in
2013-10-11 08:48:09 +02:00
Téo Mazars 786b21ee10 app,pdb: Sort compatibility wrappers in alphabetical order 2013-10-11 08:03:51 +02:00
Jehan 008a40b877 pdbgen: fix trailing whitespaces in generated C doc in empty lines. 2013-10-05 19:48:39 +13:00
Jehan 1351226c80 pdb: gimp-image-new's doc updated.
Add the precision that indexed images must be set a colormap after
creation, otherwise colors won't be right.
2013-10-05 01:47:05 +13:00
Téo Mazars e1fe2e35cb plug-ins,pdb: Add a compatibility wrapper for edge-laplace
... and remove the old plug-in
2013-10-01 17:10:31 +02:00
Jehan cca6772714 Bug 709048 - improvement of gimp-layer-add-mask procedure's doc.
The documentation was missing information about GIMP_ADD_CHANNEL_MASK
mask type, also about possible failure cases, and had an unclosed
bracket typo.
Also make nicer output and list formatting with the new pdb paragraph
feature.
2013-10-01 01:02:49 +13:00
Michael Natterer 4f3d29e95d tools: remove some doc newlines in context.pdb 2013-09-27 18:55:01 +02:00
Jehan 9563a614f2 Bug 708033 - Add paragraph support for the long description in pdbgen
Single newlines in procedure descriptions are still considered normal
spaces. But 2 newlines are transformed into 1 newline. 3 newlines into
2 newlines. And so on.
This allows for a start of nicer output in the procedure browser or C
file comments (and consequently in generated html doc).
2013-09-27 18:39:21 +02:00
Téo Mazars 8e25b5407d plug-ins,pdb: Add a compatibility wrapper for noise-hsv
... and remove the old plugin
2013-09-26 19:31:13 +02:00
Michael Natterer 39bcc5883d pdb: use if defined $proc->{outargs} not if exists $proc->{outargs}
in app.pl and lib.pl because pdbgen copies this stuff round so
generically that it always exists. Fixes a ton of perl warnings.
2013-09-26 14:09:08 +02:00
Téo Mazars 5063aada1d plug-ins,pdb: Add compatibility wrappers for mosaic
and remove the old plug-in
2013-09-23 15:52:08 +02:00
Michael Natterer 125cf2a2a3 app: use the image instead of the projection for accessing a pickable 2013-09-13 23:29:06 +02:00
Jehan 8fe1f65374 pdb: clean out \n from procedure descriptions in previous commit a7f1129.
If we want better output for long description, this will have to be implemented
in the pdbgen.
2013-09-14 02:58:39 +12:00
Jehan a7f11290a4 pdb: update several channel creation function's descriptions.
More informative, detailed description or better wording.
Also adds some newlines for better rendering.
2013-09-14 02:19:46 +12:00
Jehan ee8827d645 pdb: minor glitch in gimp-image-set-active-channel's description.
s/previous active channel or channel/previous active channel or layer/
2013-09-13 22:21:55 +12:00
Michael Natterer 3582625ce0 app: remove the over from the plug_in_plasma() compat wrapper
because gimp_drawable_apply_operation() supports src ops now.
2013-09-13 09:43:19 +02:00
Téo Mazars a481065f2e pdb: Use svg:src in plasma's compatibility wrapper
instead of svg:src-over
2013-09-13 02:12:02 +02:00
Téo Mazars 6fefd5af0c plugins: Add compat wrappers for plasma.c
... and remove the old plugin.
2013-09-13 01:30:29 +02:00
Michael Natterer ac808b8b6b tools: make sure clang is not considered to be visual studio
just because it starts with "cl". Spotted by Joerg Sonnenberger.
2013-09-10 12:06:55 +02:00
Michael Natterer c32c1208b0 app: return a GError when flattening the image failed 2013-08-09 21:35:36 +02:00
Téo Mazars 145c9a86d5 plugins: Add compat wrappers for channel-mixer
And remove the old plugin
2013-08-06 21:45:16 +02:00
Téo Mazars 2b58fb4e69 plugins: Add compat wrappers for antialias
And remove the old plugin
2013-08-04 09:09:41 +02:00
Téo Mazars fc6c605cd5 plugins: Effectively fix wrong names in compatibility wrappers
plugin_compat_cmds.c is a generated file
2013-07-30 07:26:50 +02:00
Téo Mazars b0645cf559 plugins: add pdb compat wrappers for tile-seamless
and remove the old plugin
2013-07-28 19:15:25 +02:00
Téo Mazars 409fa79ec2 plugins: follow alien-map's parameter name change 2013-07-20 01:08:39 +02:00
Téo Mazars 95c235f81f plugins: Add compat wrappers for alien-map
And remove the old plugin
2013-07-19 22:32:10 +02:00
Téo Mazars ec6720c897 plugins: add compatibility wrappers to motion-blur
and remove the old plugin.
2013-07-05 20:09:13 +02:00
Jehan 97d14ebda3 Bug 672100: gimptool returns wrong system plugin dir if libdir has been customized.
On UNIX platforms, use the actual libdir value, which has been set at compile time.
2013-07-05 23:46:54 +09:00
Jehan ba9fbde288 Bug 679083: proper documentation for plug-in-autocrop-layer
The current documentation have users think the argument layer is going
to be cropped, whereas it actually only serves as a base for determining
cropping extents. The active layer is the one to be cropped.
Slightly more complete documentation explaining this.
2013-07-05 23:20:56 +09:00
Michael Natterer f56f6d1255 app: follow the GEGL invert -> invert-linear vs. invert-gamma change
and invert masks using invert-linear and other drawables using
invert-gamma. drawable_invert_cmd_callback() still always uses
invert-gamma even though it can be used on layer masks.
2013-06-24 00:45:04 +02:00
Michael Natterer caf73f5f35 Add support for both gamma-corrected and linear for all bit depths
- Add new enum GimpComponentType which contains u8, u16, u32 etc.
- Change GimpPrecision to be u8-linear, u8-gamma, u16-linear etc.
- Add all the needed formats to gimp-babl.c
- Bump the XCF version to 5 and make sure version 4 with the old
  GimpPrecision enum values is loaded correctly

This change blows up the precision enums in "New Image" and
Image->Precision so we can test all this stuff. It is undecided what
format will be user-visible options in 2.10.
2013-06-23 16:51:24 +02:00
Alexandre Prokoudine 5290963912 Really fix the incorect blurb in PDB.
It still said "specified specified".
2013-06-22 11:18:47 +04:00
Michael Natterer 571350270b app: return 0.0..1.0 from gimp_histogram_get_mean(), median(), std_dev()
Display the float values in the histogram dockable and add a compat
hack to the gimp_histogram() PDB wrapper.
2013-06-12 02:01:24 +02:00
Michael Natterer a7f42de4c0 app: turn GimpHistorgram into a GimpObject, no other changes 2013-06-11 21:23:32 +02:00
Michael Natterer 0ced7458cc Revert "pdb: Mark unused args as dead"
This reverts commit d2cac94a49
and commit 7241a35b93.

gimp-drawable-foreground-extract will be revived before 2.10, the
warnings are a nice reminder :)
2013-06-10 11:25:16 +02:00
Mukund Sivaraman d2cac94a49 pdb: Mark unused args as dead 2013-06-10 14:41:21 +05:30
Michael Natterer ec786816bb */Makefile.am: merge INCLUDES into AM_CPPFLAGS
automake-1.13 finally warns about this anachronism.
2013-06-05 20:48:37 +02:00
Michael Natterer 64887fe06c Bug 701594 - gimp-image-select-item does not recognize path transformations
pdb: Need to gimp_vectors_freeze()/thaw() around stroke modifications
so the vector's preview and the cached GimpBezierDesc are invalidated.
2013-06-04 16:48:41 +02:00
Michael Natterer 7d544e25fe plug-ins, pdb: remove plugin waves and add a PDB compat procedure 2013-06-01 16:04:43 +02:00
Michael Natterer 3b68ae0f3c app, pdb, libgimp: Remove all traces of the supersampling recursion level
from all transform APIs. This is no longer used since we use GEGL to
transform, the value was only passed around and never used.
2013-05-31 01:15:32 +02:00
Michael Natterer 52dc7fb800 plug-ins, pdb: remove plug-in whirl-pinch and add a PDB compat procedure 2013-05-30 17:52:11 +02:00
Michael Natterer 894d7568ac plug-ins, pdb: remove plug-in noise-spread and add a PDB compat procedure 2013-05-29 19:54:42 +02:00
Michael Natterer a77d9223df plug-ins, pdb: remove shift plug-in and add a PDB compat procedure for it 2013-05-27 02:34:04 +02:00
Michael Natterer fc38bc300e plug-ins: remove plug-in cubism and add a PDB compat proc for it 2013-05-19 22:38:03 +02:00
Michael Natterer b8dace7a75 plug-ins: remove plug-in red-eye-removal and add a PDB compat proc for it 2013-05-19 21:11:03 +02:00
Michael Natterer cf3d234f88 Bug 672487 - Impeove API docs of gimp_image_get_channels()
Point out that the image's components are not "channels".
2013-05-10 22:11:14 +02:00
Miroslav Talasek 02505451b1 libgimpbase: enum GimpForegroundExtractMode: add GIMP_FOREGROUND_EXTRACT_MATTING 2013-05-07 23:00:57 +02:00
Michael Natterer fd34fee7f5 tools: increase buffer size in gimptool from 1000 to 4096 2013-03-27 22:56:01 +01:00
Michael Natterer e21e3bce5c plug-ins, pdb: remove plug-in noise-randomize
and implement its procedures as compat wrappers around GEGL ops.
2013-03-08 17:06:53 +01:00
Michael Natterer 37d4f656d4 Bug 678925 - Debugging plugins with windows
Apply patch from Hartmut Kuhse that enables plug-in debugging on
Windows by stopping the process using Windows API, and providing a
small executable "gimp-plugin-resume.exe" to resume the stopped
plug-in.
2013-02-23 16:25:58 +01:00
Jehan 0f75ea4127 Bug 694201 - gimptool: update to follow new user directory scheme. 2013-02-20 04:01:02 +09:00
Ville Skyttä 6b0d1038cc Bug 692641 - Various spelling fixes 2013-01-27 18:59:02 +01:00
Nicolas Robidoux dc19ead94f Add the Nohalo sampler (previously called Lohalo, which now does something different 2012-12-31 15:27:07 -05:00
Mukund Sivaraman 914f04dcac pdbgen: Word-wrap return description
Also add punctuation where missing.
2012-12-05 08:46:25 +05:30
Sven Neumann 9b2e301c87 pdbgen: programmatically add hint about using g_strfreev()
Add the note about the need to free the returned string array
to the generated libgimp code. This way it will show up in the
libgimp documentation but not in the general PDB API.
2012-12-04 21:07:34 +01:00
Sven Neumann c8209ddb4c Revert "pdb: update documentation for all pdb functions whose return can be freed with g_strfreev()."
Such comment should not be included in the general PDB
documentation as it is specific to the C bindings and can
be easily added by the pdbgen infrastructure.

This reverts commit c9888f2222.
2012-12-04 21:07:34 +01:00
Jehan c9888f2222 pdb: update documentation for all pdb functions whose return can be freed with g_strfreev(). 2012-12-04 00:16:08 +09:00
Michael Natterer e61b1f7603 pdb: return NULL terminated stringarrays from libgimp PDB wrappers
so they can be freed with g_strfreev().
2012-11-27 20:50:21 +01:00
Jehan d8456b5d47 pdb - update documentation comments the right way.
PDB functions must be updated from *.pdb files as *_pdb.c files are
generated by make.
2012-11-28 00:57:23 +09:00
Michael Natterer 07f77e5ec8 pdb: allow file procedures to register themselves for handling URIs
and store the flag in pluginrc. There are no URIs passed to procedures
yet and no procedure registers as such, this is just preparation.
2012-11-17 16:01:52 +01:00
Michael Natterer fe19ad9706 Bug 683694 - Spelling errors
Reworded all places that used to say "allows to".
2012-11-11 15:50:25 +01:00