Add optional ability to load/save image rank property from/to xmp
sidecar "xmp.Rating" and color property from xmp "xmp.Label" ignoring
the ones provided in the processing params file.
This behavior is disabled by default and an option under settings ->
file browser has been added to enable it.
When enabled:
* On load:
* rank and color are not read from processing params.
* rank is mapped from xmp sidecar file rating entry.
* color is mapped from xmp sidecar file label entry.
* On save:
* rank and color are saved to the xmp sidecar
* rank and color are also saved to the processing param (pp3) files to
keep them in sync
Rating mapping:
Since rating can be also -1 but rank only goes from 0 to 5, the -1 value
is ignored like already done when importing from embedded xmp data.
Color mapping:
XMP has no color concept, usually programs like digikam uses the label
field to write a color name ("Red", "Orange"). The problem is that this
isn't standardized and label can be any string. Additionally Rawtherapee
has 5 specific colors while other programs can have different colors
with different name so they won't be shown if they don't map to the 5
color names supported by rawtherapee. On save only the 5 color supported
by rawtherapee wil be saved.
Trash is kept only in the profile files for multiple reasons:
* There's no trash concept in xmp, there's the rejected concept assigned
to a rating == -1.
* We could map rejected to trash but in rawtherapee rank and trash are two different values and
an image can have both rank >= 0 and trashed set to true.
Using an unique value like rating for rank and trash (when -1) will
require changing the current rawtherapee logic.
* Also digikam only handles ratings from 0 to 5 (no -1) and handles
trash in its own internal way without reflecting it in the xmp
sidecar.
Add a Properties type that contains values for rank, color and trashed
Each value will also contain an edited flag.
The properties variable is used to store rank, color and trashed. They
are fetched from the proc params and will update the proc params when
needed.
This is the base for future implementations where some properties (like
rank) will be also retrieved from other sources like xmp sidecar files.
If a png has a transparency chunk (tRNS), after converting the
transparency to alpha we should also strip alpha (color_type is not
updated with PNG_COLOR_MASK_ALPHA flag set) or the row parsing will
return also the alpha channel causing a memory overflow.
PR #6769 added the boolean BrowseRecursiveFollowLinks options, but while
it's saved as a boolean, it's read as an integer causing this error:
```
Options::readFromFile / Error code 5 while reading values from "/home/sgotti/.config/RawTherapee/options":
Key file contains key “BrowseRecursiveFollowLinks” in group “File Browser” which has a value that cannot be interpreted.
```
Read the correct tag for the as-shot multipliers (index 0x69). The port
from LibRaw incorrectly used the tag at index 0x69 + 0x64, which is the
daylight WB multipliers. This fix affects Canon cameras with color data
versions 34 (EOS R3) and 48 (EOS R6m2, EOS R7, and EOS R10).
* Avoidgamumethod set to Munsell-only
* Set appimage.yml and windows.yml to la_gamutmunsell
* Remove procparams conversion XYZ absolute tu Munsell only
* Neutralize appimage.yml and windows.yml
The rtgui denoise luminance detail adjuster widget default value is
set to 50, but the procparams default is 0 causing some confusing
behavior: when enabling the denoise tool in the gui the luminance detail
value is set to the proc params default value (0), when resetting the
adjuster the values is set to 50.
This patch sets the adjuster default value to the procparams default
value like the other adjusters.
bf988ad2744865f151611a2761a91c9d90f7ba83 removes the default font in favor of the OS default. `tools/win/InnoSetup/WindowsInnoSetup.iss.in` Line 122 causes the win build fail trying to load the deleted font.
raw files, usually dng files, can provide a dcp profile by providing the
related tags.
This patch will make the "Use embedded" options in the color management
panel selectable if the source raw file embeds a dcp profile.
In this case the DCP panel will be enabled like when reading an external
dcp profile.
Additional changes:
* Rename "Use embedded, if possible" to just "Use embedded" since the
option is already disabled when no embedded profile is found.
* Update the "Use embedded" options tooltip as it's now not related to
only non raw images.