Commit Graph

4221 Commits

Author SHA1 Message Date
xiota
320859bf92 Remove unnecessary thumbnail loading code 2024-04-10 11:47:28 +00:00
xiota
dd01cc110b Add error code to returns
Fix conditional libjxl compilation
2024-04-10 11:32:42 +00:00
xiota
dfc82c403c Add ability to import JXL images 2024-04-10 10:17:42 +00:00
Simone Gotti
1098966a8b Add optional image rank/color load/save from/to xmp sidecar
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.
2024-04-03 20:06:14 +02:00
Alexander Brock
ebb0f8ebdd Merge branch 'dev' of https://github.com/Beep6581/RawTherapee into defish 2024-03-30 17:07:31 +01:00
Simone Gotti
68fd35d881 thumbnail: decouple proc params rank/color/trash
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.
2024-03-30 09:46:02 +01:00
Simone Gotti
dcc983331d thumbnail: rename get/setStage to get/setTrashed
Also return a bool in getTrashed since it's already used as a bool in
setTrash and in all the checks.
2024-03-30 09:46:02 +01:00
Simone Gotti
c2a57359fe options: fix BrowseRecursiveFollowLinks reading
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.
```
2024-03-25 11:02:03 +01:00
Lawrence37
3bab4657d7 Merge pull request #6962 from sgotti/read_raw_embedded_dcp
Read embedded dcp profile from raw files
2024-03-24 12:19:04 -07:00
Lawrence37
bf8f385eb5 Merge pull request #6769 from Lawrence37/browse-subfolder
Recursive image browsing
2024-03-24 12:02:21 -07:00
Alexander Brock
28a5d36e9a Merge branch 'dev' of https://github.com/Beep6581/RawTherapee into defish 2024-03-10 17:22:19 +01:00
Lawrence Lee
82dce5fd47 Adapt to real hi-DPI update
Change recursive folder browsing button icon color and size.
2024-03-09 12:47:52 -08:00
Lawrence Lee
3e8ebfef2c Merge branch 'dev' into browse-subfolder 2024-03-09 12:19:30 -08:00
Lawrence37
fb74a9fb11 Merge pull request #6977 from sgotti/denoise_gui_set_luminance_detail_adjuster_default_as_procparams_default
denoise gui: set luminance detail adjuster default as procparams default
2024-03-09 11:23:41 -08:00
Desmis
96a48c6334 Local adjustments - set method Avoid Gamut to Munsell - better processing of highlights and gamut (#6965)
* 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
2024-03-09 07:36:46 +01:00
Simone Gotti
8de0519204 denoise gui: set luminance detail adjuster default as procparams default
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.
2024-03-08 10:46:26 +01:00
Simone Gotti
3e26976403 Read embedded dcp profile from raw files
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.
2024-03-07 10:37:54 +01:00
Pandagrapher
7e63892628 Merge with 'Beep6581/dev' 2024-03-06 19:10:49 +01:00
Alexander Brock
041472e39b Merge branch 'dev' of https://github.com/Beep6581/RawTherapee into defish 2024-03-03 20:06:08 +01:00
Lawrence Lee
51e52d9aba Merge branch 'dev' into libraw-copylib 2024-03-02 21:01:34 -08:00
Lawrence37
f687bda276 Merge pull request #6872 from 0v3rt1r3d/0v3rt1r3d/max-zoom-preference
Implement maximal zoom feature
2024-03-02 16:40:15 -08:00
Lawrence37
8495ba7502 Merge pull request #6837 from Lawrence37/lensfun-match-saved-name
Fix for some Lensfun corrections not available
2024-03-02 15:45:59 -08:00
Lawrence37
c3402b18d5 Merge pull request #6951 from sgilbertson/issue-4765-queue-template-time-and-date
Issue 4765 queue template time and date
2024-03-01 21:46:29 -08:00
Scott Gilbertson
cd64ced60f Address comments in pull request:
- use "const" where possible
 - add spaces after commas
 - use dateTimeFormatExamples by reference (don't copy)
 - fix incorrect cast to unsigned int (declare variable as gunichar)
2024-02-28 13:22:57 -05:00
Scott Gilbertson
1db8b0d643 Indent example path the same amount as other indented items in the queue template help 2024-02-25 17:49:00 -05:00
Scott Gilbertson
50f27c099c Make indentation consistent in queue template help 2024-02-25 17:38:42 -05:00
Scott Gilbertson
fbeaace607 Change literal to G_FILE_ATTRIBUTE_TIME_MODIFIED, change line spacing in template help 2024-02-25 10:14:10 -05:00
Scott Gilbertson
7c67739b9d Eliminated dateTimeIsValid, instead null-checking dateTime -- non-null means it's valid. 2024-02-19 11:43:04 -05:00
Scott Gilbertson
b39ab15659 Eliminated use of stat() instead using Gio::FileInfo to get file modification date 2024-02-19 11:35:46 -05:00
Alexander Brock
5b2d290805 Merge branch 'dev' of https://github.com/Beep6581/RawTherapee into defish 2024-02-18 23:39:48 +01:00
Scott Gilbertson
547ac41ad4 Make brace placement consistent 2024-02-18 12:28:00 -05:00
Scott Gilbertson
703a81ae0c Removed FIXME comment 2024-02-18 12:22:36 -05:00
Scott Gilbertson
94cd3d4626 Apply time/date format for %t output template specifier 2024-02-18 11:30:43 -05:00
Lawrence Lee
7945f93e8f Merge branch 'releases' into dev 2024-02-15 23:15:50 -08:00
Scott Gilbertson
dbd0829e61 Obtain the export, shooting or save time, per letter after %t output template specifier
Print the result (not yet processing a time formatting string)
2024-02-12 18:35:01 -05:00
Scott Gilbertson
79134ecc9f Instead of time now, in help examples use 2001-02-03T04:05:06.123456 local time 2024-02-12 17:06:08 -05:00
Scott Gilbertson
5d7586bab4 Simplify path help, add '%f' to generated examples 2024-02-11 15:28:39 -05:00
Scott Gilbertson
ccc667e390 Added specific tooltip for the location template "?" help toggle button 2024-02-11 15:10:02 -05:00
Scott Gilbertson
bc054ea506 Added help for time/date template specifiers 2024-02-11 15:07:50 -05:00
Scott Gilbertson
353a4d472a Added help sections for %r and %s tags, and for common examples 2024-02-11 14:28:03 -05:00
Scott Gilbertson
2690e27dea Generate help examples (Windows or Linux, as appropriate) for %d, %p and %P specifiers.
Also make the help pane half the overall width when first shown (and it's resizeable).
2024-02-11 14:03:58 -05:00
Scott Gilbertson
ed5792bb9f Make populateTemplateHelpBuffer a private member of class BatchQueuePanel 2024-02-10 13:49:19 -05:00
Scott Gilbertson
3fb7296cd1 Create template help Pango markdown programmatically (partial).
Do that the first time the text is shown, rather than at startup.
2024-02-10 13:44:12 -05:00
Desmis
8ad4ebf482 Change default behavior Local Adjustments settings Avoid Color Shift to XYZ Absolute (#6948)
* Change default settings avoidcolorshift to XYZ absolute

* Same change in controlspotpanel.cc
2024-02-08 21:53:07 -08:00
Lawrence37
e438e0e604 Some more cherry-picking for 5.10 (#6937)
* Local adjustments - Show additional settings - link with complexity  (#6899)

* Change hishow -additional seeting - with complexity

* Modify windows.yml and appimage.yml

* Fixed bug in duplicate spot

* Remove pre-dev builds

* Update camconst.json white levels for 1DxII

* Fix warnings: conversion to double/float, unused variables, register keyword

* Fix crash when opening image in editor

Do not access uninitialized raw image data. The raw data is requested
when the demosaic mode is set to None and the cursor is moved over the
image in the editor. It can occur before the raw data is loaded.

* Fix sRGB working profile crash

The sRGB working profile cannot be found under some conditions because
the profile name is stored as a Glib::ustring and the same strings may
not be equal when using different locales. Use std::string whenever
comparing profile names.

---------

Co-authored-by: Desmis <jdesmis@gmail.com>
Co-authored-by: CarVac <airplaniac2002@gmail.com>
Co-authored-by: Alexander Gruzintsev <0v3rt1r3d@gmail.com>
2024-02-04 15:43:33 -08:00
Lawrence37
0d0834cbe7 Dynamic Range Compression Improvement (5.10) (#6943)
* Improve Dynamic Range Compression - for some images with very high DR

* Clean code

* Improve TM fattal with saturation control in LA

* Saturation control fattal in LA

* Re-order paramsedit

* Change history_msg_tmo_satur with saturation

---------

Co-authored-by: U-PCSPECIALIST01\jdesm <jdesmis@gmail.com>
2024-02-04 15:38:04 -08:00
Alexander Brock
e9bdda8727 Merge branch 'dev' of https://github.com/Beep6581/RawTherapee into defish 2024-02-04 18:01:33 +01:00
Scott Gilbertson
c7500becb8 Make template help initially hidden 2024-02-03 19:24:07 -05:00
Scott Gilbertson
e332446627 Added "?" toggle button to show/hide template help.
I haven't figured out how to make it initially hidden.
2024-02-03 15:28:46 -05:00
Scott Gilbertson
7632d0df7c Got template help show/hide working (I had been hiding the wrong widget) 2024-02-03 13:13:25 -05:00