Commit graph

44383 commits

Author SHA1 Message Date
Michael Natterer
e4c0e9cf4c plug-ins: port animation-optimize to GimpPlugIn 2019-08-31 11:29:47 +02:00
Michael Natterer
0228d4c079 plug-ins: change the port of depth-merge slightly 2019-08-31 02:56:16 +02:00
Michael Natterer
4cb23666db plug-ins: port warp to libgimp objects 2019-08-31 02:43:48 +02:00
Michael Natterer
9e5f802ab9 plug-ins: port depth-merge to libgimp objects 2019-08-31 01:10:44 +02:00
Michael Natterer
4ce5728d3a plug-ins: port gradient-map to libgimp objects 2019-08-31 00:24:02 +02:00
Michael Natterer
2395776215 plug-ins: port gimpressionist to libgimp objects 2019-08-31 00:19:20 +02:00
Zander Brown
499e57d5f6 Update British English translation
(cherry picked from commit 69dc32da80)
2019-08-30 19:19:38 +00:00
Michael Natterer
9afc7cad3d plug-ins: port tile to libgimp objects 2019-08-30 19:45:34 +02:00
Michael Natterer
7b099b0568 plug-ins: port tile-small to libgimp objects 2019-08-30 19:33:09 +02:00
Michael Natterer
dfe73bf4ba plug-ins: port some simple plug-ins to libgimp objects
(where simple == doesn't use much API)
2019-08-30 19:27:19 +02:00
Michael Natterer
a66945342d libgimp: remove some old API that is no longer needed 2019-08-30 18:58:16 +02:00
Michael Natterer
2fd35e77b5 Revert "libgimp: API with new object classes are since 3.0."
This reverts commit e24375e64a.

The API is semantically the same, and there is no danger of confusion,
no need to update the Since: tags.
2019-08-30 18:44:56 +02:00
Michael Natterer
cecd7e3aae plug-ins: port sample-colorize to libgimp objects 2019-08-30 18:42:45 +02:00
Michael Natterer
b407d33259 plug-ins: port flame to libgimp objects 2019-08-30 18:00:44 +02:00
Michael Natterer
02e27bdbc3 libgimp: fix gimp_item_combo_box_changed()
only checking positive IDs for validity had a purpose, put it back.
2019-08-30 17:58:18 +02:00
Jehan
e24375e64a libgimp: API with new object classes are since 3.0.
Even when the function names may have stayed the same in most cases, the
API has changed. The "Since:" tag must therefore be bumped.

Also adding docs for gimp_drawable_get_sub_thumbnail_data() which had
none.
2019-08-30 16:42:08 +02:00
Michael Natterer
f4b97e740c plug-ins: port nl-filter to GimpPlugIn 2019-08-30 16:38:18 +02:00
Michael Natterer
c5745ad922 plug-ins: port jigsaw to GimpPlugIn 2019-08-30 16:21:42 +02:00
Michael Natterer
26ab882223 plug-ins: port grid to GimpPlugIn 2019-08-30 15:26:06 +02:00
Michael Natterer
138b99032e plug-ins: port destripe to GimpPlugIn 2019-08-30 15:01:56 +02:00
Michael Natterer
f4d0c8834a plug-ins: port contrast-retinex to GimpPlugIn 2019-08-30 14:27:33 +02:00
Michael Natterer
cf6b65b71b plug-ins: port checkerboard to GimpPlugIn 2019-08-30 14:12:41 +02:00
Michael Natterer
749ad22c05 plug-ins: port blinds to GimpPlugIn 2019-08-30 13:24:10 +02:00
Michael Natterer
4364b78446 libgimp: remove the GIMP_DISABLE_COMPAT_CRUFT define
there is no legacy API left a ported plug-in could accidentially use.
2019-08-30 13:00:00 +02:00
Michael Natterer
5567a89347 plug-ins: add missing GIMP_ITEM() cast in curve-bend 2019-08-30 12:59:30 +02:00
Michael Natterer
8a78203aed Properly prefix the values of enum GimpPDBProcType
to be GIMP_PDB_PROC_TYPE_PLUGIN, _EXTENSION etc.
2019-08-30 12:52:28 +02:00
Michael Natterer
967cbb4fad app: use the GParamSpec's name in gimp_pdb_dump()
and remove gimp_pdb_compat_arg_type_from_gtype(). The core is now free
of PDB legacy code.
2019-08-30 11:43:53 +02:00
Michael Natterer
f8b8d99aca po-python: update POTFILES.in 2019-08-30 11:40:33 +02:00
Michael Natterer
e095af2ee4 plug-ins: port gradient-map 2019-08-30 11:11:16 +02:00
Michael Natterer
73298481f1 plug-ins: oops, file-glob is not an image procedure 2019-08-30 10:49:04 +02:00
Michael Natterer
ca1ef132c3 plug-ins: port file-glob 2019-08-30 02:15:30 +02:00
Jehan
2524e9685e plug-ins: port guillotine.
Maybe should we have IMAGE_ARRAY types as we still have to pass image
IDs when we pass more than one image between core and plug-in. And even
maybe have alternate LIST types to ARRAY ones, so that we can pass GList
through rather than one array parameter + one length parameter.

Anyway this port still return just old style array of image IDs + array
length as int32.
2019-08-30 00:45:08 +02:00
Jehan
2a640713e7 libgimp: fix GIMP_VALUES_(SET|TAKE)_*_ARRAY() macros.
A length argument is required by corresponding gimp_value_set_*_array()
functions.
2019-08-30 00:45:08 +02:00
Michael Natterer
1ee7cc867a plug-ins: port wavelet-decompose 2019-08-30 00:23:14 +02:00
Jehan
bb0321fe5d libgimp: allow GObject plug-in parameters for known libgimp classes.
Basically creating a GParamSpecObject with type GimpImage would be
synonym to creating a GimpParamSpecImage (and similarly for items,
drawables, layers, and so on).
The only missing feature is therefore none_ok when using
GParamSpecObject (or to be more accurate: it implies none_ok=TRUE).

This is particularly needed for the Python API where a bug prevents to
manipulate GParamSpec types and pass them back to libgimp. Hence we want
to manipulate object specs using the binding specific API instead.

It used to work fine but this specific piece of code got removed by
commit 392f00baf5. This now works again fine.
2019-08-29 23:48:10 +02:00
Jehan
21a87d2b78 libgimp: too many arguments to g_error_new(). 2019-08-29 22:05:13 +02:00
Michael Natterer
6e43d793ae plug-ins: port decompose 2019-08-29 20:01:30 +02:00
Michael Natterer
c765fb2b6a plug-ins: port compose 2019-08-29 19:22:50 +02:00
Michael Natterer
37897b13fe libgimp: fix legacy plug-ins, which I broke with the big ID removal
- hand out and leak proxy object objects to legacy API like candy,
  bypassing the factory in GimpPlugIn, because there is no plug-in
  singleton.

- gimpgpcompat.c: image, item etc. are now objects, simply forgot this
  file.
2019-08-29 18:36:59 +02:00
Michael Natterer
33601f7a87 libgimp: argh, broke most plug-ins...
Need to push the current procedure around the entire body of
gimp_plug_in_proc_run_internal() because
_gimp_gp_params_to_value_array() needs access to proxy objects now.
2019-08-29 13:48:16 +02:00
Michael Natterer
e9b4b7fa0d libgimp: update .gitignore 2019-08-29 12:08:24 +02:00
Michael Natterer
a47772bd93 devel-docs: update libgimp docs 2019-08-29 12:05:36 +02:00
Michael Natterer
392f00baf5 app, libgimp: get rid of all ID GTypes and ID param specs
Turn all ID param specs into object param specs (e.g. GimpParamImageID
becomes GimpParamImage) and convert between IDs and objects in
gimpgpparams.c directly above the the wire protocol, so all of app/,
libgimp/ and plug-ins/ can deal directly with objects down to the
lowest level and not care about IDs.

Use the actual object param specs for procedure arguments and return
values again instead of a plain g_param_spec_object() and bring back
the none_ok parameter.

This implies changing the PDB type checking functions to work on pure
integers instead of IDs (one can't check whether object creation is
possible if performing that check requires the object to already
exist).

For example gimp_foo_is_valid() becomes gimp_foo_id_is_valid() and is
not involved in automatic object creation magic at the protocol
level. Added wrappers which still say gimp_foo_is_valid() and take the
respective objects.

Adapted all code, and it all becomes nicer and less convoluted, even
the generated PDB wrappers in app/ and libgimp/.
2019-08-29 11:39:34 +02:00
Piotr Drąg
d68ef36974 Update POTFILES.in 2019-08-28 18:26:01 +02:00
Jehan
02d06bb354 plug-ins: help and help-browser don't need libgimp class porting. 2019-08-28 15:08:10 +02:00
Jehan
22857b5408 plug-ins: port busy-dialog. 2019-08-28 14:44:53 +02:00
Jehan
34c6e8744c plug-ins: port py-slice to new API.
No GUI done yet on this one either. For now it will just slice the image
and export them, as well as a HTML table in the current directory.
2019-08-28 13:19:52 +02:00
Jehan
1b992e98d3 plug-ins: port border-average to new API. 2019-08-28 12:23:16 +02:00
Jehan
f75b63fa80 plug-ins: port align-layers to new API + libgimp objects.
Note: there were 2 additional arguments which were totally unused in the
existing implementation. So I commented them out. Anyone is welcome to
actually implement their usage.
2019-08-28 11:54:29 +02:00
Michael Natterer
8d7d2e5f1d plug-ins: port imagemap to foo and bar, why do I bother... 2019-08-28 10:14:28 +02:00