Commit Graph

142 Commits

Author SHA1 Message Date
4828970fa8 plug-ins: Restore original preview when disabled
I noticed after porting the last few plug-ins that GimpPreview went
to black when you unchecked the auto-preview option.
These widgets must be added directly to the dialogue rather than via the
new API in order for the unfiltered image drawable to be loaded
properly. They will eventually be removed in favor of on-canvas preview,
but let's get them working correctly for now.
2023-04-09 12:19:24 +00:00
c2b1ce5030 plug-ins: Port blinds to GimpProcedureDialog.
Also, update despeckle to close config when cancelled.
2023-04-07 04:06:59 +00:00
2368add7e7 plug-ins: Port despeckle widgets to use...
...GimpProcedureDialog APIs.
Adaptive and Recursive checkboxes were converted to a combobox since
they affect one property.
2023-04-07 00:18:51 +00:00
df074bfe09 plug-ins: label and documentation of plug-ins localized plug-in side.
This is the consequence of previous commit. Plug-ins' label and
documentation are now localized before sending these data to GIMP core.
In other words, we replace N_() macros with basic gettext calls.
2022-07-05 12:23:51 +02:00
18c37f7084 plug-ins, libgimp: override set_i18n() for all our core plug-ins.
Hence avoiding the stderr messages. These are going to be localized with
centrally installed catalogs "gimp*-std-plugins", "gimp*-script-fu" and
"gimp*-python".

We now handle core plug-in localizations differently and in particular,
with kind of a reverse logic:

- We don't consider "gimp*-std-plugins" to be the default catalog
  anymore. It made sense in the old world where we would consider the
  core plug-ins to be the most important and numerous ones. But we want
  to push a world where people are even more encouraged to develop their
  own plug-ins. These won't use the standard catalog anymore (because
  there are nearly no reasons that the strings are the same, it's only a
  confusing logic). So let's explicitly set the standard catalogs with
  DEFINE_STD_SET_I18N macro (which maps to a different catalog for
  script-fu plug-ins).
- Doing something similar for Python plug-ins which have again their own
  catalog.
- Getting rid of the INIT_I18N macro since now all the locale domain
  binding is done automatically by libgimp when using the set_i18n()
  method infrastructure.
2022-06-05 01:57:02 +02:00
79e608694e plug-ins: fix many GimpImageProcedure to new run() API.
No logics change so far.
2021-04-04 01:40:00 +02:00
2ea5dec56e libgimpwidgets: improved gimp_prop_scale_entry_new(), new function…
… gimp_label_spin_set_digits() and deleted gimp_prop_opacity_entry_new()

- The "digits" argument for the number of decimal places in
  gimp_prop_scale_entry_new() is now mostly useless since GimpLabelSpin
  (hence GimpScaleEntry too) got a nice estimation algorithm of sensible
  values.
- Add gimp_label_spin_set_digits() function to manually set the digits
  property when we don't like the estimated value.
- Also add a new "factor" argument to gimp_prop_scale_entry_new(). Its
  role is to allow a GimpScaleEntry showing a factored range, typically
  a [0, 100] range for some types of [0, 1] properties.
- Remove gimp_prop_opacity_entry_new() which was basically a
  special-case of gimp_prop_scale_entry_new() and which can now be
  easily reproduced by simply set factor=100.0.
- Update all usage of gimp_prop_scale_entry_new() in app/ and plug-ins/
  with updated arguments. It is interesting to note that all existing
  usage were either integers (digits=1) or when double, the estimated
  decimal places are the same as the ones which were manually set (hence
  showing the generic estimation is not too bad). So the new function
  gimp_label_spin_set_digits() was not even needed once in current code.
2020-11-25 02:32:22 +01:00
0f05825a29 app, libgimpwidgets, plug-ins: default increments for GimpScaleEntry.
Instead of setting always manually the step and page increments when
creating a GimpScaleEntry, let's just generate some common cases
automatically. Indeed the increments are rarely something you want to
care about. The algorithm used is:
- For a range under 1.0, use a hundredth and a tenth (typically a [0,
  1.0] range will step-increment of 0.01 and page-increment of 0.1).
- For small ranges (under 40), step-increment by 1, page-increment by 2.
- For bigger ranges, step-increment by 1, page-increment by 10.

For use cases when you absolutely want specific increment values, I add
the gimp_scale_entry_set_increments() function. It is much better to
have a small and understandable constructor call followed by
configuration calls (only when needed) rather than a constructor with a
crazy amount of parameters. Hence gimp_scale_entry_new() went from 17
arguments (absolutely unreadable calls) to now 5.
2020-10-30 12:33:46 +01:00
d81b151e79 app, plug-ins: use the updated gimp_prop_scale_entry_new() API. 2020-10-30 11:02:20 +01:00
9cb62f5f9a libgimp: move "image" and "run_mode" from gimp_procedure_config_end_run()
and remember them internally between begin_run() and end_run().
Simplifies plug-in code even more.

Move the begin_run() before gimp_export_image() block in all export
plug-ins.
2019-09-26 00:44:52 +02:00
58bf1d431d libgimp: add a "status" parameter to gimp_procedure_config_end_run()
and require it to be always called paired with begin_run(), which is
more straightforward and makes the resulting code more future-proof.
2019-09-25 12:09:03 +02:00
243042730e libgimp: add "image" parameters to gimp_procedure_config_begin,end_run()
When non-NULL, the code tries to load/save image-specific last used
values from/to the image using a parasite. This is meant to be used by
file export plug-ins.
2019-09-23 19:28:04 +02:00
df8d5b02ae libgimp, plug-ins: remove the "preview" parameter from gimp_ui_init()
It's dead since a looong time.
2019-09-20 19:56:00 +02:00
f62665ad31 plug-ins: use GimpProcedureDialog in despeckle 2019-09-20 19:26:07 +02:00
df62d08798 plug-ins: as a proof-of-concept, port despeckle to GimpProcedureConfig
Its entire dialog and execution are now based on object properties and
widgets are views on the properties. Also add a "Reset" button.
2019-09-20 12:54:50 +02:00
3f44a21b11 plug-ins: port despeckle to GimpPlugIn 2019-09-02 13:06:57 +02:00
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
08849a584c libgimp: GimpItem now also belong to libgimp. 2019-08-22 15:54:36 +02:00
433fcd4334 plug-ins: ported a few plug-ins to new GimpImage/GimpDrawable classes. 2019-08-22 15:54:36 +02:00
c59feead89 plug-ins: port despeckle to GEGL, stupid 8-bit port only 2019-07-10 15:40:20 +02:00
5f700549e7 Change the license URL from http://www.gnu.org/licenses/ to https:// 2018-07-11 23:29:46 +02:00
7d64cf62c6 libgimpwidgets: rename the _grid()-Variants of gimp_scale_entry_*
Adjust all plugins to follow accordingly.

This concludes the GtkTable'ocide.
2018-05-20 21:06:35 +02:00
bdbec7941c Use the new macros from the last commit in all files
...and gone are the annoying warnings.
2018-05-20 21:06:34 +02:00
def4acc842 common: kill GtkTable in a ton of plugins 2018-05-20 21:06:33 +02:00
d87eddb1c4 libgimpwidgets: move all GimpPreview members to private
and add tons of API so subclasses can still do their thing, probably
subject to change/fix.
2018-05-20 21:06:33 +02:00
24924211f4 plug-ins: lots of trivial GTK+ 3.0 porting
Most of it simply s/GtkObject/GtkAdjustment/
2018-05-20 21:06:27 +02:00
147c09f19e Bug 795161 - Misc. typo fixes in source comments and doxygen
Found via `codespell`
Follow-up to  commit 7fdb963e01
2018-04-18 21:06:57 +02:00
801bd8fb3f plug-ins: get rid of icons in dialog buttons (use labels not stock IDs) 2017-02-12 16:18:54 +01:00
e18aae18c2 plug-ins: use the new drawable_ID-based GimpDrawablePreview API 2015-09-15 00:50:16 +02:00
54b0e41479 despeckle: Rename variables for better clarity 2011-10-08 08:19:57 +05:30
dcb4c6e34a plug-ins: use gtk_box_new() 2011-09-30 12:18:24 +02:00
8c4d99f883 Bug 645456 - Inconsistent window (role) naming scheme
Applied patch from Christoph Kappel which adds a "gimp-" prefix to all
plug-in dialog window roles.
2011-04-08 20:31:34 +02:00
97a73ea83f app: use gtk_box_pack_start() to pack a dialog's toplevel container
instead of gtk_container_add()'s because otherwise the widget will not
expand in GTK+ 3.x
2011-03-04 10:44:58 +01:00
ec5fa2fb26 plug-ins: unify handling of return values
For consistency Use a static GParam array for the return values
in all plug-ins.
2010-09-30 22:46:30 +02:00
ee31bd1c4d plug-ins: whitespace and coding style cleanups
Apply whitespace and coding style cleanups to the new optimized
code. Also sprinkle with const qualifiers.
2010-09-05 19:35:33 +02:00
6a99cf7ed4 Bug 628817 - Optimized Despeckle plug-in
Included optimized version of despeckle plug-in.
2010-09-05 19:35:11 +02:00
e805cb0cf4 Use gtk_dialog_get_content_area() instead of dialog->vbox 2009-07-15 18:57:12 +02:00
9b6c9e1fe4 Bug 155733 – need to check return values of gimp_drawable_mask_bounds()
Finally commit the patch from Luidnel Maignan, but don't spit messages
when the effected region is empty (core functions don't spit messages
either). Also got rid of some x2 and y2 variables that are not needed
any longer.
2009-06-07 23:52:37 +02:00
e2dc72b168 various plug-in parameter cleanups that have piled up on my disk: some
2009-04-11  Michael Natterer  <mitch@gimp.org>

	* plug-ins/common/*.c: various plug-in parameter cleanups that
	have piled up on my disk: some whitespace fixes and other
	formatting, but mostly changes to make plug-in boolean/enum
	parameter desciptions look more like the ones that are generated
	for core procedures.


svn path=/trunk/; revision=28260
2009-04-11 16:57:42 +00:00
4ea1437646 plug-ins/common/*.c plug-ins/color-rotate/color-rotate.c
2009-01-19  Michael Natterer  <mitch@gimp.org>

	* plug-ins/common/*.c
	* plug-ins/color-rotate/color-rotate.c
	* plug-ins/file-bmp/bmp.c
	* plug-ins/file-faxg3/faxg3.c
	* plug-ins/file-fits/fits.c
	* plug-ins/file-fli/fli-gimp.c
	* plug-ins/file-ico/ico.c
	* plug-ins/file-jpeg/jpeg.c
	* plug-ins/file-psd/psd-save.c
	* plug-ins/file-psd/psd.c
	* plug-ins/file-sgi/sgi.c
	* plug-ins/file-uri/uri.c
	* plug-ins/file-xjt/xjt.c
	* plug-ins/flame/flame.c
	* plug-ins/fractal-explorer/fractal-explorer.c
	* plug-ins/gfig/gfig.c
	* plug-ins/gimpressionist/gimp.c
	* plug-ins/gradient-flare/gradient-flare.c
	* plug-ins/help-browser/help-browser.c
	* plug-ins/ifs-compose/ifs-compose.c
	* plug-ins/imagemap/imap_main.c
	* plug-ins/lighting/lighting-main.c
	* plug-ins/map-object/map-object-main.c
	* plug-ins/maze/maze.c
	* plug-ins/metadata/metadata.c
	* plug-ins/pagecurl/pagecurl.c
	* plug-ins/print/print.c
	* plug-ins/pygimp/gimpfu.py
	* plug-ins/script-fu/script-fu-script.c
	* plug-ins/script-fu/script-fu.c
	* plug-ins/selection-to-path/selection-to-path.c
	* plug-ins/twain/twain.c
	* plug-ins/win-snap/winsnap.c: document the "run-mode" parameter
	as we document enums for core procedures.


svn path=/trunk/; revision=27922
2009-01-19 20:11:36 +00:00
d9b5207aa2 Change licence to GPLv3 (and to LGPLv3 for libgimp).
2009-01-17  Michael Natterer  <mitch@gimp.org>

	* all files with a GPL header and all COPYING files:

	Change licence to GPLv3 (and to LGPLv3 for libgimp).

	Cleaned up some copyright headers and regenerated the parsers in
	the ImageMap plugin.


svn path=/trunk/; revision=27913
2009-01-17 22:28:01 +00:00
83e631faf4 untabified
* plug-ins/common/*.c: untabified

svn path=/trunk/; revision=27335
2008-10-20 06:04:39 +00:00
4a7f395eae plug-ins/common/animation-play.c plug-ins/common/cml-explorer.c
2008-06-28  Michael Natterer  <mitch@gimp.org>

	* plug-ins/common/animation-play.c
	* plug-ins/common/cml-explorer.c
	* plug-ins/common/convolution-matrix.c
	* plug-ins/common/curve-bend.c
	* plug-ins/common/despeckle.c
	* plug-ins/common/filter-pack.c
	* plug-ins/common/gee-zoom.c
	* plug-ins/common/gee.c
	* plug-ins/common/lens-flare.c
	* plug-ins/common/newsprint.c
	* plug-ins/common/nova.c
	* plug-ins/common/postscript.c
	* plug-ins/common/sample-colorize.c
	* plug-ins/common/sphere-designer.c
	* plug-ins/common/tile-small.c: use accessors instead of accessing
	members of GTK+ widgets directly.


svn path=/trunk/; revision=26012
2008-06-28 18:40:23 +00:00
8216638667 plug-ins/common/sinus.c plug-ins/common/compose.c
2008-03-28  Mukund Sivaraman  <muks@mukund.org>

        * plug-ins/common/sinus.c
        * plug-ins/common/compose.c
        * plug-ins/common/screenshot.c
        * plug-ins/common/mng.c
        * plug-ins/common/wind.c
        * plug-ins/common/gif-save.c
        * plug-ins/common/video.c
        * plug-ins/common/sphere-designer.c
        * plug-ins/common/hot.c
        * plug-ins/common/red-eye-removal.c
        * plug-ins/common/tile-small.c
        * plug-ins/common/gbr.c
        * plug-ins/common/jigsaw.c
        * plug-ins/common/glob.c
        * plug-ins/common/despeckle.c
        * plug-ins/common/noise-randomize.c
        * plug-ins/common/convolution-matrix.c
        * plug-ins/common/gif-load.c
        * plug-ins/common/psd-save.c
        * plug-ins/common/emboss.c
        * plug-ins/common/csource.c
        * plug-ins/common/cml-explorer.c
        * plug-ins/common/grid.c
        * plug-ins/common/pcx.c
        * plug-ins/common/engrave.c
        * plug-ins/common/curve-bend.c: Cleanups / fixes for issues
        reported by Sparse.


svn path=/trunk/; revision=25295
2008-03-29 02:30:58 +00:00
24c4243f28 General fix for bug #478657:
2007-09-21  Sven Neumann  <sven@gimp.org>

	General fix for bug #478657:

	* libgimp/gimpaspectpreview.c
	* libgimp/gimpdrawablepreview.c
	* libgimp/gimpzoompreview.c: let all preview widgets store the
	state of the Preview toggle. Declared "toggle" parameter as unused.

	* plug-ins/common/*.c: pass NULL for "toggle" to
	gimp_drawable_preview_new() and gimp_aspect_preview_new().

svn path=/trunk/; revision=23603
2007-09-21 13:27:33 +00:00
f364a75f37 applied patch from Geert Jordaens plus some minor cleanups. Fixes bug
2007-05-03  Sven Neumann  <sven@gimp.org>

	* plug-ins/common/despeckle.c: applied patch from Geert Jordaens
	plus some minor cleanups. Fixes bug #433251.


svn path=/trunk/; revision=22391
2007-05-03 20:53:25 +00:00
9e0e86f7bd minor cleanups.
2007-04-25  Sven Neumann  <sven@gimp.org>

	* plug-ins/common/despeckle.c: minor cleanups.

svn path=/trunk/; revision=22320
2007-04-25 10:34:30 +00:00
41237259c9 In all files, changed the standard copyright notice to say "GIMP - The GNU
2006-12-09  Sven Neumann  <sven@gimp.org>

        * In all files, changed the standard copyright notice to say
        "GIMP - The GNU Image Manipulation Program".
2006-12-09 21:33:38 +00:00
6be54f9b20 plug-ins/common/CML_explorer.c plug-ins/common/curve_bend.c
2006-06-27  Sven Neumann  <sven@gimp.org>

	* plug-ins/common/CML_explorer.c
	* plug-ins/common/curve_bend.c
	* plug-ins/common/depthmerge.c
	* plug-ins/common/despeckle.c
	* plug-ins/common/fractaltrace.c
	* plug-ins/common/mapcolor.c
	* plug-ins/common/mblur.c
	* plug-ins/common/png.c
	* plug-ins/common/sample_colorize.c
	* plug-ins/common/tga.c
	* plug-ins/common/threshold_alpha.c
	* plug-ins/common/tiler.c
	* plug-ins/common/unsharp.c
	* plug-ins/gfig/gfig.c
	* plug-ins/gfli/gfli.c
	* plug-ins/gimpressionist/gimp.c
	* plug-ins/imagemap/imap_main.c
	* plug-ins/pagecurl/pagecurl.c
	* plug-ins/script-fu/script-fu.c
	* plug-ins/twain/twain.c
	* plug-ins/winsnap/winsnap.c: use canonical parameter names.
2006-06-27 12:38:45 +00:00
a450ba46bb declared GimpPlugInInfo and GimpParamDef arrays as const.
2006-05-16  Sven Neumann  <sven@gimp.org>

	* plug-ins/*/*.c: declared GimpPlugInInfo and GimpParamDef arrays
	as const.
2006-05-16 12:26:20 +00:00