Commit Graph

3675 Commits

Author SHA1 Message Date
Thomas Manni 769bc933d4 plug-ins, pdb: remove the wind plug-in and add a PDB compat proc 2015-06-11 11:31:36 +02:00
Michael Natterer f279fd02da plug-ins: use gimp_image_convert_color_profile() in lcms.c 2015-06-10 02:05:14 +02:00
Michael Natterer d1102d2be9 pdb, plug-ins: remove two procedures from lcms.c and add PDB compat procs
The lcms plug-in is on its way out: add compat procedures implementing
plug-in-icc-profile-info and plug-in-icc-profile-file-info and remove
that code from lcms.c.
2015-06-07 12:52:37 +02:00
Michael Natterer 0d01cfd56b plug-ins: use gimp_image_get_effective_color_profile() in the lcms plug-in 2015-06-07 01:58:10 +02:00
Michael Natterer 87cfbd8d21 plug-ins: use gimp_image_set_color_profile() in the lcms plug-in 2015-06-06 17:05:00 +02:00
Michael Natterer 5efab4c99b plug-ins: use gimp_image_get_color_profile() in the lcms plug-in 2015-06-05 13:21:56 +02:00
Michael Natterer 3565b33019 libgimpconfig: rename the new GimpColorConfig profile accessor functions
gimp_color_config_get_foo_profile() -> get_foo_color_profile()

because the old names clash with possible future accessors for the raw
filename properties.
2015-06-03 09:57:34 +02:00
Michael Natterer 4910c28957 libgimpcolor: rename the gimp_lcms_*() functions to gimp_color_profile_*()
because it doesn't make sense to call the typedef GimpColorProfile
but the function namespace gimp_lcms_*().
2015-06-03 09:41:23 +02:00
Michael Natterer 08b19a9bbc plug-ins: minor simplifications because GimpColorConfig has an API now 2015-05-26 08:09:29 +02:00
Øyvind Kolås 7e6320497e follow gegl api changes from commit af5361ca8d, with an abyss policy argument
to gegl_buffer_copy.
2015-05-25 01:27:31 +02:00
Michael Natterer f939818c4d plug-ins: use gimp_lcms_get_format() in the lcms plug-in 2015-05-08 12:53:43 +02:00
Michael Natterer 6c800db1cc Use the newly added profile utility functions all over the place 2015-05-06 16:38:57 +02:00
Michael Natterer b52c0657ae plug-ins: use the image's name for the metadata dialog's title
not its URI's basename. The name is the same string that is shown in
the image window title.
2015-05-02 16:31:36 -04:00
Michael Natterer e6703aa6b8 plug-ins, pdb: remove the papertile plug-in and add a PDB compat proc 2015-04-30 17:18:01 -04:00
Michael Natterer bc4cf9918f Bug 673501 - Issue with Overlay
GIMP's OVERLAY mode was identical to SOFTLIGHT. This commit fixes the
issue and introduces a NEW_OVERLAY mode and enum value.

- change gimp:overlay-mode to be a real (svg-ish) overlay mode
- when compositing, map OVERLAY to gimp:softlight-mode
- when compisiting, map NEW_OVERLAY to gimp:overlay-mode
- bump the XCF version when NEW_OVERLAY is used
- map OVERLAY to SOFTLIGHT when loading and saving XCF
- map OVERLAY to softlight in all PDB setters
- map OVERLAY to softlight when deserializing a GimpContext
- change all paint mode menus to show an entry for NEW_OVERLAY
  instead of OVERLAY
- change PSP, PSD and OpenRaster to use NEW_OVERLAY

These changes should (redundantly) make sure that no OVERLAY enum
value is used in the core any longer because it gets mapped to
SOFTLIGHT at all entry points, with the downside of introducing a
setter/getter asymmetry when OVERLAY was set in a PDB api.
2015-04-29 13:32:58 -04:00
David Gowers 97bbd6330d Bug 747389 - Adjust maximum zoom for animation-play plugin up slightly
Change maximum zoom from 300% to 400%, improves usability for sprite
or tile animations.
2015-04-27 23:28:59 -04:00
Michael Natterer e1baaa0677 Bug 742821 - Grayscale-mode image malformed when exported as planar raw image data
Fix saving of planar data by taking the actual number of components of
the drawable into account, instead of always assuming 3 (RGB).
2015-03-04 22:32:07 +01:00
Michael Natterer 573f0f69bb plug-ins, pdb: remove the edge plug-in and add a PDB compat procedure 2015-03-03 23:18:53 +01:00
Elle Stone 783bbab8a8 plug-ins: fix lcms.c plug-in half conversion 2015-02-27 19:14:11 +01:00
Michael Natterer a0398e5028 configure.ac, plug-ins: require lcms >= 2.6 and remove #ifdef from lcms.c 2015-02-21 00:33:37 +01:00
Mukund Sivaraman a51ead0aa5 file-gegl: Fix typo 2015-02-18 13:46:22 +05:30
Mukund Sivaraman 09f64866c2 file-gegl: Add OpenEXR saving through file-gegl 2015-02-18 13:40:34 +05:30
Michael Natterer 6a079b980b plug-ins: format prototypes in file-gif-save 2015-02-15 22:52:37 +01:00
Michael Natterer b856a8ba76 plug-ins, pdb: remove the value-propagate plug-in and add PDB compat procedures 2015-02-08 23:09:06 +01:00
Michael Natterer c2371a2de9 app: implement Dilate and Erode as wrappers around gegl:value-propagate
Add them to the "drawable" actions. Remove menu registration for
the value-propagate plug-in's dilate and erode procedures.
2015-02-08 19:56:45 +01:00
Massimo Valentini a215fbda56 Bug 681895: PDF export does not save fonts properly
Set the resolution of the PangoFontMap from which the
PangoContext is created, set cairo font options only
on the PangoContext, explicitely set wrap mode and
do not force a layout height.
2015-01-28 19:31:32 +01:00
Mukund Sivaraman 9ef4d6c061 file-compressor: Fix xz's mime magic 2015-01-22 20:50:06 +05:30
Michael Natterer 9be37aaa91 plug-ins, pdb: remove the diffraction plug-in and add a PDB compat procedure 2015-01-21 22:51:49 +01:00
Mukund Sivaraman 932401e051 file-pnm: Don't write comments into PFM files 2015-01-21 15:24:22 +05:30
Mukund Sivaraman 2b4152037d file-tiff-load: Fix rowstride for edge tiles (#743034 comment #3)
The following images demonstrate the issue:

tiger-75-gray-jpg.tiff
tiger-75-rgb-jpg.tiff
2015-01-21 09:36:36 +05:30
Mukund Sivaraman 51e4491fbf file-pnm: Add support for saving PFM (portable floatmap) files in color and gray 2015-01-20 21:44:06 +05:30
Mukund Sivaraman b6095b6fa5 file-pnm: Fix direction of progressbar during load ;) 2015-01-20 21:07:59 +05:30
Mukund Sivaraman 19f4843c66 file-pnm: Bump rate of progress update when saving 2015-01-20 21:03:24 +05:30
Mukund Sivaraman c05853885a file-pnm: Pass format to gegl_buffer_get() to fix saving from other formats 2015-01-20 21:00:08 +05:30
Mukund Sivaraman 013e943b6c file-pnm: Wrap to 80 columns 2015-01-18 06:55:56 +05:30
Tobias Ellinghaus 1c283737e5 plug-ins: add PFM reading support to file-pnm
Thanks muks for cleaning this up
2015-01-16 15:37:24 +01:00
Michael Natterer b87d97ae68 plug-ins, pdb: remove the lens-flare plug-in and add a PDB compat procedure 2015-01-08 23:39:03 +01:00
Mukund Sivaraman ddda6a15c3 file-tga: Use the colormap origin / first entry index field 2014-12-20 23:24:20 +05:30
Michael Natterer 4d5e42ac1a plug-ins, pdb: remove the engrave plug-in and add a PDB compat procedure 2014-12-15 23:54:35 +01:00
Michael Natterer ed15ea8775 plug-ins: common/Makefile.am is generated, changed plugin-defs.pl 2014-12-11 11:40:36 +01:00
Thomas Manni f8073e6946 plug-ins: port crop-zealous to GEGL 2014-12-11 10:10:35 +01:00
Massimo Valentini 068745dc5c Bug 741179: Export does not remember compression of input...
for Deflated TIFF

similar to commit 91738c3b9
2014-12-09 18:13:35 +01:00
Michael Natterer 7313cb559e plug-ins, pdb: remove the illusion plug-in and add a PDB compat procedure 2014-12-04 20:42:15 +01:00
Michael Natterer 212b44cf2f plug-ins, pdb: remove the Solid Noise plug-in and add a PDB compat procedure 2014-11-22 21:04:31 +01:00
Michael Natterer b49e8098d4 plug-ins, pdb: remove the sinus plug-in and add a PDB compat procedure 2014-11-21 22:11:15 +01:00
Michael Natterer b94ba871ac plug-ins, pdb: remove the nova plug-in and add a PDB compat procedure 2014-11-18 21:05:32 +01:00
Michael Natterer e78540e581 plug-ins, pdb: remove the video plug-in and add a PDB compat procedure 2014-11-16 22:08:51 +01:00
Michael Natterer effeefb84a plug-ins, pdb: remove the color-exchange plug-in
and add a PDB compat procedure.
2014-11-10 22:40:58 +01:00
Michael Natterer efd8fee58c plug-ins: remove the IWarp plug-in 2014-11-08 00:53:17 +01:00
Michael Natterer 84182125cf Bug 739488 - Set default brush, brush pipe, pattern name to the file's basename
If there is no gimp-[brush|pattern|brush-pipe]-name parasite,
default to the file's basename without extension, instead of
always "GIMP Brush" etc.

Also clean up the code, and make the plug-ins do the same things the
same way.
2014-11-05 02:38:04 +01:00
Michael Natterer 51c35d4c78 Bug 739486 - Enter doesn't confirm "export image as brush"
Set the "activates-default" property on the spinbutton and entry in
the file-gbr-save dialog.
2014-11-01 15:00:08 +01:00
Michael Natterer fab87871a7 plug-ins: port file-cel-save to GIO 2014-10-27 23:08:41 +01:00
Michael Natterer 591b2d356b plug-ins: port file-ps' saving code to GIO 2014-10-26 19:02:49 +01:00
Michael Natterer e4171c5bff plug-ins, PDB: remove edge-sobel and add a PDB compat procedure 2014-10-11 19:41:49 +02:00
Michael Natterer fe8cb9788b Bug 738037 - Wrong order of parameters in the Sobel plugin
Get the parameters from the right PDB arguments (parameter index was
off-by-one).
2014-10-07 13:22:19 +02:00
Michael Natterer 2e79dfc8da plug-ins: port file-xbm-save to GIO 2014-10-05 18:06:03 +02:00
Michael Natterer aed2742bdb plug-ins: remove obsolete includes from file-html-table 2014-10-05 17:04:44 +02:00
Michael Natterer 86345dc0aa plug-ins: port file-html-table to GIO 2014-10-05 16:59:16 +02:00
Michael Natterer b831ab72c4 plug-ins: merge 4 entry callbacks into one in file-html-table
And some general cleanup.
2014-10-05 16:42:31 +02:00
Michael Natterer 849481a861 Clean up code around calls to g_file_replace()
- use G_FILE_CREATE_NONE instead of 0
- don't put "Could not open <file> for writing: <error>" around the
  returned error, the returned message is already verbose
2014-10-04 02:44:54 +02:00
Michael Natterer 98c184f0ad plug-ins: rename output_printf() to simply print() in file header 2014-10-04 02:30:37 +02:00
Michael Natterer b971b5b316 plug-ins: port file-header to GIO 2014-10-03 23:40:13 +02:00
Mukund Sivaraman be45ec02dc Revert "file-gif-save: Export images in non-interactive run mode (Bug #698450)"
This reverts commit 197280311a.
2014-09-26 16:39:49 +05:30
Mukund Sivaraman 197280311a file-gif-save: Export images in non-interactive run mode (Bug #698450) 2014-09-26 13:36:32 +05:30
Mukund Sivaraman 2821d77e0c file-gif-load: Fix proto (Bug #737375) 2014-09-26 09:01:47 +05:30
Mukund Sivaraman 68cb57d97e file-gif-load: Try to use as much as possible of broken GIF file (Bug #737375) 2014-09-26 08:49:59 +05:30
Mukund Sivaraman 7d3aafe323 file-pdf-save: Fix param index (Bug #736281) 2014-09-26 00:20:01 +05:30
Mukund Sivaraman 2377c8c2a9 file-gif-load: Fail early in several other places if GetDataBlocks() fails (Bug #737375) 2014-09-25 23:51:35 +05:30
Mukund Sivaraman 55150487ff file-gif-load: Fail early if GetCode() fails (Bug #737375) 2014-09-25 22:48:42 +05:30
Michael Natterer b19a18f80e plug-ins: code cleanup in file-tiff-load.c 2014-09-13 21:59:30 +02:00
Roman Lebedev 1533cf6f0f Bug 736555 - file-tiff-load: support loading of 32-bit (float and int) data
Implement loading of 32-bit (float and int) data
2014-09-13 21:38:25 +02:00
Michael Natterer 250223453f plug-ins: some code cleanup in file-tiff-save.c 2014-09-13 21:24:04 +02:00
Roman Lebedev f717fe17ec Bug 736561 - file-tiff-save: support saving of 32-bit (float and int) data
Implement saving of 32-bit (float and int) data.
2014-09-13 21:09:51 +02:00
Michael Natterer aa0912fcd6 Bug 735904 - Zealous crop of an image with a selection duplicates image data
Clear the selection before calling gimp_drawable_merge_shadow(), because
the selection affects the merge, which is unwanted here.
2014-09-10 00:09:28 +02:00
Michael Natterer 14978bfe5d Simplify calls to g_output_stream_write_all()
It returns TRUE only if all bytes were written, so there is no need to
get and check the bytes_written return value.
2014-09-07 20:30:14 +02:00
Simon Budig 7928be2255 fix a few potential use-before-check errors
Spotted by Andrey Karpov using static code analysis:
   http://www.viva64.com/en/b/0273/
2014-08-16 00:59:19 +02:00
Simon Budig 99abc566d4 fix some precedence errors
Spotted by Andrey Karpov using static code analysis:
   http://www.viva64.com/en/b/0273/
2014-08-16 00:37:13 +02:00
Simon Budig 9a245989c0 fix bogus checks against unsigned variables.
Spotted by Andrey Karpov using static code analysis:
   http://www.viva64.com/en/b/0273/
2014-08-16 00:37:13 +02:00
Michael Natterer 498ccd33ee plug-ins: move file-compressor to plug-ins/common/, it's only one .c file 2014-08-14 01:35:06 +02:00
Michael Natterer dae366bb6e configure.ac, *: require GLib 2.40.0
Remove gimp_output_stream_[v]printf() and use the new functions from
GLib instead. Use memmove() instead of the deprecated g_memmove().
2014-08-12 15:30:19 +02:00
Jehan 4ae597c586 plug-ins: use standard error on failed file descriptor in file-pdf-save.
The standard message used all over our code is:
"Could not open '%s' for writing: %s".
2014-07-29 16:59:49 +00:00
Jehan eaa4bf2270 Bug 733824 - PDF export fails without warning if open in other application.
This happens on the Windows platforms in particular where applications
can lock files, preventing GIMP to obtain a file descriptor for writing.
2014-07-29 15:41:34 +00:00
Michael Natterer f28878b6d3 plug-ins: start the progress before opening files for loading/saving
so the user gets feedback as early as possible.
2014-07-23 21:37:13 +02:00
Michael Natterer 1859633018 plug-ins: #include <gdk/gdk.h> instead of <gdkconfig.h> 2014-07-21 02:19:51 +02:00
Massimo Valentini 35466d6dd0 Bug 732163 - Flipped pixel columns in TGA
do not flip the central columns twice
2014-07-20 16:16:50 +02:00
Michael Natterer b7863269f0 libgimpcolor: change gimp_lcms_profile_open_from_file() from filename to GFile
and change most of the lcms plug-in to using GFile too.
2014-07-04 23:57:27 +02:00
Michael Natterer b5530e9e3d Use the new GeglAccessMode enum instead of the old values 2014-07-02 02:00:35 +02:00
Michael Natterer 6914bbc65f plug-ins: more gimp_spin_button_new() -> gtk_spin_button_new() 2014-06-22 23:01:31 +02:00
Massimo Valentini 3b746e9a68 plug-ins: tiff-load call gimp_ui_init when run interactively 2014-06-16 19:33:23 +02:00
Michael Natterer ac9101691c plug-ins: various small cleanups in the plug-ins that use metadata 2014-06-05 21:33:40 +02:00
Michael Natterer 3a4fedea7c libgimp: make gimp_image_metadata_save_prepare() suggest GimpMetadataSaveFlags
Return flags based on what metadata is actually present in the image.
Returning of a suggested value for GIMP_METADATA_SAVE_THUMBNAIL needs
support from gimp_image_metadata_load_prepare() and is still missing.

Port all plug-ins to use the new API, the suggested values are however
overridden by parasites and whatever special code was devised for the
individual plug-ins. This needs to be fixed.
2014-06-05 02:07:13 +02:00
Michael Natterer 425748dab0 libgimpbase, *: rename GimpFillType values: GIMP_FOO_FILL -> GIMP_FILL_FOO
Change all users accordingly and add compat enum values and compat
constants to script-fu and pygimp.
2014-06-03 01:11:32 +02:00
Michael Natterer f15b48b3c8 plug-ins, pdb: remove convolution-matrix and add a PDB compat procedure 2014-05-29 16:27:35 +02:00
Michael Natterer 3e6a7f4012 pdb, plug-ins: remove the rotate plug-in and add a PDB compat procedure 2014-05-24 22:46:11 +02:00
Michael Natterer 40030e084b plug-ins, pdb: remove the deinterlace plug-in and add a PDB compat proc 2014-05-20 21:30:42 +02:00
Michael Natterer 4712701415 app, plug-ins: move everything from Render->Clouds to the new Render->Noise
because that's what they are and what most menu labels in there says.
Keep the "Clouds" menu around for 3rd party plug-ins, not sure if it's
right to auto-map it to "Noise" automatically.
2014-05-18 22:46:05 +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
Ed J b42cedd383 No tabs please, we're British. 2014-05-16 17:46:18 +01:00
Ed J a3be308aea file-gif-save2 takes 3 more params. 2014-05-16 17:37:06 +01:00
Michael Natterer 102a236265 plug-ins: some more stock-id -> icon-name porting 2014-05-12 00:37:42 +02:00
Michael Natterer 4bd5c185cc plug-ins: gtk_image_new_from_stock() -> from_icon_name() 2014-05-12 00:20:48 +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
Massimo Valentini 7e80e2e3bc Bug 707239 - Gimp destroys image file when exporting...
as .tif with jpeg compression

make unsensitive the JPEG radio button when the image
is indexed, similarly to Fax Group 3/4 compression
enabled only for monochrome images

move the file creation/truncation after checking for
invalid requests and return a GError in case of error
2014-05-07 18:10:26 +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
Michael Natterer d0c67f84c8 plug-ins: file-pdf-save needs two return values now for the error message 2014-05-01 20:27:10 +02:00
Piotr Drąg cdd78c9b16 Fix typo 2014-05-01 14:59:28 +02:00
Hartmut Kuhse f6328244a2 Bug 725577 - file-pdf-save fails to export images larger than 32768 pixels
Due to a restriction in libcairo, creating surfaces larger than 32768 pixels
fails, so saving a larger file in gimp  as PDF, is rejected.
2014-04-29 17:37:25 +02:00
Michael Natterer b883aec224 plug-ins: pass "RAW" to gimp_export_image() in file-raw-data.c
So the export logic GUI becomes debuggable.
2014-04-27 19:15:17 +02:00
Michael Natterer 740d83c70a plug-ins: fix the build in file-raw-data.c 2014-04-22 22:59:07 +02:00
Björn Kautler c3f2a5a116 Bug 728633 - Improvements to the file-raw plugin
Export the image before saving as raw image data.
2014-04-22 22:10:09 +02:00
Björn Kautler 3e96b96640 Bug 728633 - Improvements to the file-raw plugin
Register 'data' as save extension.
2014-04-22 22:02:29 +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 a5b92424b3 Bug 726761 - Alias PIX image encoding broken
save_image(): remove bogus "- 1" from the calculation of the height of
the row of tiles to save. Fixes garbage saved to the last line of all
PIX files.
2014-04-11 15:25:22 +02:00
Michael Natterer b9d587c7d2 Bug 726761 - Alias PIX image encoding broken
save_image(): use the chosen export format's bpp, not the drawable's.
Fixed exporting of > 8 bit images.

Also make the plug-in export indexed images directly (without
requiring export conversion).
2014-04-11 15:08:49 +02:00
Michael Natterer 614c61a3dd Don't #include <glib.h> before <lcms.h>
The include claimed to be because of "inline" in the lcms header, but
that was probably lcms1, since there is no trace of inline in the
lcms2 header.
2014-04-10 20:48:22 +02:00
Michael Natterer 661317f74c libgimpwidgets: make using GimpColorProfileComboBox easier
If the passed dialog is a GimpColorProfileChooserDialog, handle its
"response" signal automatically and also destroy it when the combo box
is destroyed (before we leaked all dialogs). Remove the same callback
from all places using GimpColorProfileComboBox.
2014-04-04 17:09:54 +02:00
Michael Natterer 3f826d02fa libgimpwidgets: make GimpColorProfileComboBox use lcms
and improve gimp_color_profile_combo_box_set_active() to get the
profile's label from the ICC file if no label was provided. Simplifies
all its callers and removes code duplication.
2014-04-02 13:03:52 +02:00
Michael Natterer 59f59726e3 plug-ins: simplify the lcms format fallback code
Instead of adding multiple #else ... #endif branches for missing lcms
types, do the fallback at the end if no lcms type could be determined
for the layer's pixel format.
2014-04-02 00:14:24 +02:00
Michael Natterer eb5bf3c2ba plug-ins: add fallbacks for all pixel formats not supported my lcms
- fall back to float for missing half float
- implement double and fallback to RGBA float for missing RGBA double
- fall back to float for everything else potentially missing
2014-03-31 17:40:15 +02:00
Michael Natterer d7037650df libgimpcolor: add gimp_lcms_profile_get_label()
which returns a string meant to label the profile in the GUI, it's
either the profile's description, its model, or "(unnamed profile)" as
a fallback. Use the function instead of duplicating that logic
inconsistently and imcompletely all over the place.
2014-03-30 03:12:42 +02:00
Michael Natterer 67391f6d9e plug-ins: don't create bogus combo entries in lcms_icc_combo_box_new()
- verify that GimpColorConfig.rgb_profile actually is an RGB profile.
- on failure, don't assoociate the rgb_profile filename with the
  built-in sRGB profile.
2014-03-30 01:34:34 +01:00
Michael Natterer 18c0ab0a19 plug-ins: remove undo_group parameter from lcms_image_set_profile()
and simply always push an undo group, there is no harm or overhead in
nested undo groups.
2014-03-29 14:54:41 +01:00
Michael Natterer 32e47cf70d libgimpcolor: add gimp_lcms_profile_is_equal()
and remove all of our own MD5 digest code and API. is_equal() uses
lcms' own MD5 API which I missed before. Thanks Elle for pointing that
out :)
2014-03-29 10:40:47 +01:00
Michael Natterer b3395d989e libgimpcolor: return an optional MD5 digest from gimp_lcms_create_srgb_profile()
pass NULL in most places, use the feature in the lcms.c plu-gin.
2014-03-23 23:34:47 +01:00
Michael Natterer a0e8913a43 plug-ins: verify that GimpColorConfig.rgb_profile is actually for RGB
and remove the RGB check from all callers of lcms_image_get_profile(),
the function now returns an RGB profile or NULL. This implicitly stop
checking that 'icc-profile' actually contains an RGB profile.
2014-03-23 21:24:08 +01:00
Michael Natterer 0bdc6fbe3c plug-ins: use gimp_lcms_profile_open_*() in the lcms plug-in
And clean up stuff to pass error messages further up.
2014-03-16 15:57:14 +01:00
Michael Natterer ebc53672cb libgimpcolor: add gimp_lcms_profile_is_rgb() and _is_cmyk()
And change all lcms code to use it.
2014-03-15 21:47:13 +01:00
Michael Natterer 4321cda30c plug-ins: simply ask the built-in sRGB profile for its strings
instead of special casing it. And some minor code cleanup.
2014-03-15 00:09:35 +01:00
Michael Natterer 89b489b9bb modules, plug-ins: use GimpColorProfileChooserDialog
instead of selfmade file choosers for picking color profiles from
disk.
2014-03-14 23:02:14 +01:00
Michael Natterer d576ee8a6d plug-ins: use gimp_lcms_profile_get_summary() in the lcms plug-in 2014-03-14 20:26:15 +01:00
Michael Natterer eee6fa1e4b libgimpcolor: start adding profile utility functions to gimplcms.[ch]
Add functions to get a profile's description, manufacturer, model and
copyright, and use them instead of implementing the same 10 times.

Also add a GimpColorProfile typedef which avoids both having to
include lcms globally or using a gpointer instead (which looks bad and
non-descriptive in an API).
2014-03-14 01:48:39 +01:00
Elle Stone cd65cc57b2 Bug 725169 - Add ICC profile copyright information to Image...
...Properties/Color Profile window

And improve the info of the bultin sRGB profile.
2014-02-26 00:12:22 +01:00
Michael Natterer ee772d398f Bug 694340 - EPS resolution capped @ 1440 on import
Increase to 8192 which is just as arbitrary but more reasonable.
2014-02-22 09:40:49 +01:00
Michael Henning d296a2c08a plug-ins: Fix build with libpng versions < 1.4.
This was broken in 7c493f76f8.
2014-02-16 10:41:12 -05:00
Michael Natterer 17cadd3c38 configure, plug-ins: really make libz a hard dependency
Don't check for it as if it were optional, and error out further down
in configure.ac. Instead error out immediately and remove all other
checks and Makefile hacks.
2014-02-16 16:24:34 +01:00
Michael Henning 7c493f76f8 Bug 721135 - Unable to export to .png - error: known incorrect sRGB profile
Some libpng errors can safely be marked as nonfatal, which is much
better than simply failing in those cases.

Thanks to John Bowler for pointing out this solution.
2014-02-15 22:55:18 -05:00
Elle Stone 05c5ca3216 Bug 723787 - Neutral sRGB profile matching Argyllcms sRGB.icm
Add gimp_lcms_create_srgb_profile() to libgimpcolor and use it where
we used to call cmsCreate_sRGBProfile().
2014-02-09 23:10:56 +01:00
Massimo Valentini bfd8d00282 Bug 701189: Opening fuzzed .gif-file leads to crash of...
graphic interface of Linux
2014-02-08 17:10:00 +01:00
Michael Natterer 0475868147 plug-ins: port file-xmc to GEGL 2014-01-01 23:59:48 +01:00
Michael Natterer 938d8921e8 plug-ins: port file-sunras to GEGL, and globally apply some coding style 2014-01-01 22:28:08 +01:00
Michael Natterer 09c8e0cd78 plug-ins: add G_GNUC_PRINTF() to the tiff warning/error functions 2014-01-01 19:54:20 +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
Téo Mazars 1a8848be87 plug-ins: fix segfault in apply-canvas 2013-12-21 15:52:09 +01:00
Nils Philippsen 23f685931e file-xwd: sanity check # of colors and map entries (CVE-2013-1978)
The number of colors in an image shouldn't be higher than the number of
colormap entries. Additionally, consolidate post error cleanup in
load_image().
2013-12-04 10:59:46 +01:00
Nils Philippsen 32ae0f83e5 file-xwd: sanity check colormap size (CVE-2013-1913) 2013-12-04 10:59:46 +01:00
Michael Natterer 56cdf642fc Bug 719662 - plug-in-borderaverage returns a garbage alpha value
Return a fully opaque color instead of a random-memory alpha value.
2013-12-01 23:00:24 +01:00
Michael Natterer 297ff1ea0f plug-ins: port file-csource to GIO 2013-11-29 00:05:38 +01:00
Michael Natterer 4a121c9872 plug-ins: save the metadata of the original image in file-png-save
not the one of the export duplicate.
2013-11-21 21:46:34 +01:00
Michael Natterer a57636b874 plug-ins: use gimp_unit_is_metric() in file-tiff-save 2013-11-17 21:12:24 +01:00
Michael Natterer d86f98c18a plug-ins: port file-pix to GIO 2013-11-17 18:18:18 +01:00
Michael Natterer cecd3fb057 plug-ins: use the same compat loading code in file-gih and file-gbr
It was the same before, but now it's even more consistent.
2013-11-17 14:52:27 +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
Michael Natterer ea81787250 plug-ins: load very old files again in file-gih
By porting the compat loading code from 2.8, it somehow got lost
during the GEGL or GIO porting.
2013-11-16 09:43:54 +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
Michael Natterer 03df8c6af4 plug-ins: pass the format's name again in calls to gimp_export_image()
and clean up the formatting of the call and the lines around it. Now
we can check the various (disabled) export options for regressions
again by changing a single line in gimp_export_image().
2013-11-10 00:18:48 +01:00
Nils Philippsen d0f7e713bb lcms: avoid dereferencing null pointers 2013-11-07 12:20:33 +01:00
Michael Natterer 961d03d795 Bug 709857 - Lcms plugin crashes if RGB profile does not exist
Always check the return value of lcms_load_profile(config->rgb_profile)
and use the builtin sRGB profile if it returns NULL.
2013-11-04 23:17:41 +01:00
Michael Natterer 7bd4d2678a configure, plug-ins, modules: make lcms a hard dependency 2013-11-03 21:19:51 +01:00
Michael Natterer a76460f497 configure, plug-ins: make libpng a hard dependency 2013-11-02 17:11:21 +01:00
Michael Natterer 3508079dcf plug-ins: add loading and saving of the image's resolution in file-pcx 2013-11-01 13:51:31 +01:00
Michael Natterer ba7acdb901 plug-ins: port colormap-remap to GEGL 2013-10-31 12:24:40 +01:00
Michael Schumacher 8db3b4312d Global EXIF -> Exif string change (official spelling) 2013-10-29 22:48:46 +01:00
Michael Natterer 424129cc60 Bug 710974 - Convert to Color profile fails on images with layer groups
Handle layer groups recursively, and don't convert the group layer
itself.
2013-10-29 19:35:26 +01:00
Michael Natterer b60cfac840 plug-ins: move the metadata plug-in from File to Image 2013-10-29 17:37:49 +01:00
Michael Natterer c8fae1957f plug-ins: trust the TIFF's resolution over its metadata's resolution 2013-10-27 18:40:09 +01:00
Michael Natterer 658d950c6b plug-ins: trust the PNG's resolution over its metadata's resolution 2013-10-27 18:36:06 +01:00
Michael Natterer a44e06d059 plug-ins: reverse the logic for setting GimpMetadataSaveFlags
start with flags = ALL (which now includes all possible current and
future flags), and optionally *remove* individual flags instead of
adding them. This way the plug-ins default to TRUE for future flags.
2013-10-27 15:38:42 +01:00
Michael Natterer 7cbe83d911 libgimp,plug-ins: split metadata loading into prepare() and finish()
So the plug-in has the chance to decide whether it wants to trust the
metadata information (e.g. resolution). Also reorder parameters in
gimp_image_metadata_save_finish(). Change all plug-ins accordingly.
2013-10-27 15:22:35 +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 30a389866a plug-ins: use image/jp2 for JPEG 2000, procedures can only have one mime-type 2013-10-22 20:36:12 +02:00
Michael Natterer a6a07dd29e plug-ins: allow non-optional extra libs in plug-ins/common
Don't make adding extra libs defined in 'libs => foo' depend
on 'optional => 1'.
2013-10-19 18:30:29 +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
Michael Natterer 7de6bb8173 plug-ins: fix progress fractions in file-pat-save 2013-10-04 18:36:27 +02:00
Jehan e78c3bf3da plug-ins: the frame image in animation-play is always in RGB.
We don't care what the original image type is, because non-RGB images
(in particular indexed ones) render very badly.
gimp_layer_new_from_drawable() will automatically convert the original
layer's type to the destination image's type (RGB) while copying.
2013-10-04 23:53:03 +13:00
Jehan 7b638d72f6 plug-ins: animation-play gets the image palette for no reason. 2013-10-04 21:33:18 +13:00
Michael Natterer 01db58f6d0 plug-ins: cleanup in file-pnm 2013-10-03 22:06:24 +02:00
Michael Natterer aa7e9edc36 plug-ins: port file-p*m-save to GIO 2013-10-03 21:44:24 +02:00
Michael Natterer ec82d075b8 plug-ins: port file-pnm-load to GIO 2013-10-03 19:59:54 +02: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
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
Marco Ciampa f3b7d23494 fix typo in message 2013-09-26 13:25:37 +02:00
Marco Ciampa af3c2f820d Revert "fix typo in message" that pushes too much - sorry
This reverts commit 0b4b8da05f.
2013-09-26 13:09:50 +02:00
Marco Ciampa 0b4b8da05f fix typo in message 2013-09-26 12:09:34 +02:00
Marco Ciampa 7f93fbc19a app: only one mnemonic letter per filter 2013-09-26 11:31:43 +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
Téo Mazars 4caa5a113f Bug 677275 - Mosaic Filter produces ugly artifacts
Fix this by using a real point-segment distance.
Some artifacts remains though, they must come from somewhere else.
2013-09-22 16:27:57 +02:00
Michael Henning cd4d5e6d32 plug-ins: Use the standardized value for deflate compression in tiff-save.
Ironically, the standardized value is called COMPRESSION_ADOBE_DEFLATE,
while the vendor-specific value is called COMPRESSION_DEFLATE.
2013-09-20 19:12:44 -04:00
Daniel Sabo 34c50b0fea app, plug-ins: Don't modify iter->length
The new by-row iteration doesn't re-write the length
value for each row. In general it is not safe to modify
the iterator data because the internal logic depends
on the public data, but this specific case is new.
2013-09-12 17:43:54 -07: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
Jehan d38f209e2f plug-ins - compress the PNG comment when over a given size. 2013-09-12 12:54:22 +12:00
Jehan d69b748692 Bug 707755 - reviewing PNG comment saving algorithm
Currently PNG "comment" is saved in iTXt (UTF-8) if supported, tEXt
(ISO-8859-1) otherwise. The problem is that some software out there like
ImageMagick would apparently only read tEXt comments.
Therefore the replacing algorithm is:
1/ if we would not lose any character in a conversion from UTF-8 to
ISO-8859-1, we save in tEXt, whether or not the platform supports iTXt.
2/ if we would lose comment data in the conversion while iTXt is
supported, we save in iTXt.
3/ if iTXt is not supported, we save in tEXt anyway and discard any
non-convertible character, unless the finale result is an empty string
(in which case, we don't save any comment).
2013-09-12 12:54:13 +12:00
Michael Natterer af0cfacfb3 Bug 707354 - Bump Map offsets only go to 1000 regardless of image size
Allow ranges from -10000 to 10000, still arbitrary but more
real-world. The scales still go -1000 to 1000, but the spinbuttons
allow for the full range.
2013-09-03 16:03:16 +02:00
Michael Natterer 14ab0da020 plug-ins: rename file-raw to file-raw-data
to remove confusion with raw digital camera files.
2013-09-01 20:02:56 +02:00
Michael Natterer 3b0bb94162 plug-ins: port file-raw to GEGL 2013-09-01 13:18:17 +02:00
Jehan 1bd183c54c plug-ins: any GIMP image must be deleted when animation-play exits.
Other allocated data is allright because it is freed when the process
exits, but not GEGL buffers created with gimp_image_new(), because they
are managed by the main GIMP process. Otherwise the plugin would leak
GeglBuffers each time it is closed.
2013-08-31 16:12:16 +12:00
Michael Natterer 63608cd145 plug-ins: port file-xwd to GEGL 2013-08-31 02:57:02 +02:00
Michael Natterer c4764a5090 plug-ins: port file-wmf to GEGL 2013-08-30 23:11:48 +02:00
Michael Natterer d8d99e9ede plug-ins: fix unused variable warnings in tiff load and save 2013-08-30 23:04:40 +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