diff --git a/AUTHORS.txt b/AUTHORS.txt
index 61874c1f3..133bc4a10 100644
--- a/AUTHORS.txt
+++ b/AUTHORS.txt
@@ -8,6 +8,7 @@ Developement contributors, in last name alphabetical order:
Jean-Christophe Frisch
Steve Herrell
Emil Martinec
+ Wyatt Olson
Jacek Poplawski
Ilia Popov
Philip Rinn
@@ -18,11 +19,11 @@ Developement contributors, in last name alphabetical order:
Other contributors (ideas, mockups, testing, forum activity, translations, etc.), in last name alphabetical order:
Patrik Brunner
+ Fernando Carello
Maciek Dworak
Michael Ezra
David M. Gyurko
Arturs Jekabsons
Karl Loncarek
Paul Matthijsse
- Wyatt Olson
Alberto Righetto
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 8ec5aefe4..9c795812e 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -138,6 +138,8 @@ endif (UNIX)
install (FILES AUTHORS.txt LICENSE.txt DESTINATION ${BINDIR})
+install (FILES AUTHORS.txt LICENSE.txt DESTINATION ${BINDIR})
+
add_subdirectory (rtexif)
add_subdirectory (rtengine)
add_subdirectory (rtgui)
diff --git a/COMPILE.txt b/COMPILE.txt
index 2276c628e..cc40b784a 100644
--- a/COMPILE.txt
+++ b/COMPILE.txt
@@ -193,7 +193,7 @@ Linux
Compile:
- Enter the root directory of the RawTherapee source tree
- - Type: cmake -DCMAKE_INSTALL_PREFIX=./release -DBINDIR=. -DDATADIR=. -DLIBDIR=.
+ - Type: cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=./release -DBINDIR=. -DDATADIR=. -DLIBDIR=.
- Type: make install
- You find the compiled program in the release directory (you can copy it anywhere you want)
diff --git a/rtdata/languages/Catala b/rtdata/languages/Catala
index ed0794f95..e5f1a316b 100644
--- a/rtdata/languages/Catala
+++ b/rtdata/languages/Catala
@@ -764,7 +764,7 @@ ZOOMBAR_SMALL;Petit
!TP_HSVEQUALIZER_VAL;Value
!TP_ICM_INPUTNONE;No profile
!TP_IMPULSEDENOISE_LABEL;Impulse Noise Reduction
-!TP_IMPULSEDENOISE_THRESH;Threshold
+!TP_IMPULSEDENOISE_THRESH;Impulse NR Threshold
!TP_LABCURVE_BRIGHTNESS;Brightness
!TP_LABCURVE_CONTRAST;Contrast
!TP_LABCURVE_CURVEEDITOR;Luminance Curve
diff --git a/rtdata/languages/Chinese (Simplified) b/rtdata/languages/Chinese (Simplified)
index df81bf2c4..5af87a00b 100644
--- a/rtdata/languages/Chinese (Simplified)
+++ b/rtdata/languages/Chinese (Simplified)
@@ -768,7 +768,7 @@ ZOOMBAR_SMALL;小
!TP_HSVEQUALIZER_VAL;Value
!TP_ICM_INPUTNONE;No profile
!TP_IMPULSEDENOISE_LABEL;Impulse Noise Reduction
-!TP_IMPULSEDENOISE_THRESH;Threshold
+!TP_IMPULSEDENOISE_THRESH;Impulse NR Threshold
!TP_LABCURVE_BRIGHTNESS;Brightness
!TP_LABCURVE_CONTRAST;Contrast
!TP_LABCURVE_CURVEEDITOR;Luminance Curve
diff --git a/rtdata/languages/Chinese (Traditional) b/rtdata/languages/Chinese (Traditional)
index c7d1d04c9..ac4c46fe3 100644
--- a/rtdata/languages/Chinese (Traditional)
+++ b/rtdata/languages/Chinese (Traditional)
@@ -769,7 +769,7 @@ ZOOMBAR_SMALL;小
!TP_HSVEQUALIZER_VAL;Value
!TP_ICM_INPUTNONE;No profile
!TP_IMPULSEDENOISE_LABEL;Impulse Noise Reduction
-!TP_IMPULSEDENOISE_THRESH;Threshold
+!TP_IMPULSEDENOISE_THRESH;Impulse NR Threshold
!TP_LABCURVE_BRIGHTNESS;Brightness
!TP_LABCURVE_CONTRAST;Contrast
!TP_LABCURVE_CURVEEDITOR;Luminance Curve
diff --git a/rtdata/languages/Czech b/rtdata/languages/Czech
index 7880e71a2..5938311bc 100644
--- a/rtdata/languages/Czech
+++ b/rtdata/languages/Czech
@@ -30,6 +30,7 @@ EDITWINDOW_TITLE;Editace obrázku
EXIFFILTER_APERTURE;Clona
EXIFFILTER_CAMERA;Aparát
EXIFFILTER_DIALOGLABEL;Filtruj dle Exif
+EXIFFILTER_FILETYPE;Typ souboru
EXIFFILTER_FOCALLEN;Ohnisková vzdálenost
EXIFFILTER_ISO;ISO
EXIFFILTER_LENS;Objektiv
@@ -146,6 +147,9 @@ HISTORY_MSG_101;HSV korekce -- Odstín
HISTORY_MSG_102;HSV korekce -- Sytost
HISTORY_MSG_103;HSV korekce -- Hodnota
HISTORY_MSG_104;HSV korekce
+HISTORY_MSG_105;Odstranění lemu
+HISTORY_MSG_106;Odstranění lemu poloměr
+HISTORY_MSG_107;Odstranění lemu práh
HISTORY_MSG_10;Komprese stínů
HISTORY_MSG_11;Tónová křivka
HISTORY_MSG_12;Automatická expozice
@@ -230,8 +234,8 @@ HISTORY_MSG_83;Vysoká kvalita světel/stínů
HISTORY_MSG_84;Korekce perspektivy
HISTORY_MSG_85;Vlnkové koeficienty
HISTORY_MSG_86;Vlnková korekce
-HISTORY_MSG_87;Sůl a pepř redukce šumu
-HISTORY_MSG_88;Sůl a pepř redukce šumu - práh
+HISTORY_MSG_87;Redukce impulzního šumu
+HISTORY_MSG_88;Redukce impulzního šumu - práh
HISTORY_MSG_89;Redukce šumu
HISTORY_MSG_8;Expoziční korekce
HISTORY_MSG_90;Redukce šumu - jas
@@ -435,6 +439,7 @@ PREFERENCES_CLEARDLG_LINE2;může trvat několik sekund.
PREFERENCES_CLEARDLG_TITLE;Prosím počkejte.
PREFERENCES_CLIPPINGIND;Zvýraznění oříznutých jasů či stínů
PREFERENCES_CMETRICINTENT;Kolorimetrická metoda
+PREFERENCES_CUTOVERLAYBRUSH;Štětec přesahu
PREFERENCES_DARKFRAME;Tmavé snímky
PREFERENCES_DATEFORMAT;Formát data
PREFERENCES_DATEFORMATHINT;Lze použít následující formátovací řetězce:\n%y : rok (year)\n%m : měsíc (month)\n%d : den (day)\n\nNapříklad český formát data:\n%d. %m. %y
@@ -506,6 +511,7 @@ PREFERENCES_SHOWDATETIME;Zobrazovat datum a čas
PREFERENCES_SHOWONLYRAW;Zobrazovat pouze soubory RAW
PREFERENCES_SHTHRESHOLD;Práh pro oříznuté stíny
PREFERENCES_SINGLETAB;Mód jedné karty
+PREFERENCES_SINGLETABVERTAB;Mód jedné karty, svislé karty
PREFERENCES_STARTUPIMDIR;Složka s obrázky při spuštění
PREFERENCES_TAB_BROWSER;Prohlížeč souborů
PREFERENCES_TAB_COLORMGR;Správa barev
@@ -678,7 +684,7 @@ TP_ICM_OUTPUTDLGLABEL;Vyber výstupní ICC profil...
TP_ICM_OUTPUTPROFILE;Výstupní barevný prostor
TP_ICM_SAVEREFERENCE;Uložit referenční obrázek pro profilování
TP_ICM_WORKINGPROFILE;Pracovní barevný prostor
-TP_IMPULSEDENOISE_LABEL;Redukce bodového šumu
+TP_IMPULSEDENOISE_LABEL;Redukce impulzního šumu
TP_IMPULSEDENOISE_THRESH;Práh
TP_LABCURVE_BRIGHTNESS;Jasnost
TP_LABCURVE_CONTRAST;Kontrast
@@ -785,14 +791,13 @@ ZOOMPANEL_ZOOMOUT;Oddálit -
!!!!!!!!!!!!!!!!!!!!!!!!!
-!EXIFFILTER_FILETYPE;File Type
+!MAIN_FRAME_EDITOR;Editor
!HISTORY_MSG_105;Defringing
!HISTORY_MSG_106;Defringing Radius
!HISTORY_MSG_107;Defringing Threshold
!HISTORY_MSG_108;Resize bounding box
!HISTORY_MSG_109;Resizing applies to
!MAIN_FRAME_EDITOR;Editor
-!PREFERENCES_CUTOVERLAYBRUSH;Cut overlay brush
!PREFERENCES_SINGLETABVERTAB;Single tab mode, vertical tabs
!PREFERENCES_SND_BATCHQUEUEDONE;Batch queue done
!PREFERENCES_SND_HELP;Either enter filepath or nothing (for no sound). On Windows use "SystemDefault", "SystemAsterisk" etc. for system sounds.
diff --git a/rtdata/languages/Dansk b/rtdata/languages/Dansk
index 1a03d012a..854a77a13 100644
--- a/rtdata/languages/Dansk
+++ b/rtdata/languages/Dansk
@@ -766,7 +766,7 @@ ZOOMBAR_SMALL;Lille
!TP_HSVEQUALIZER_VAL;Value
!TP_ICM_INPUTNONE;No profile
!TP_IMPULSEDENOISE_LABEL;Impulse Noise Reduction
-!TP_IMPULSEDENOISE_THRESH;Threshold
+!TP_IMPULSEDENOISE_THRESH;Impulse NR Threshold
!TP_LABCURVE_BRIGHTNESS;Brightness
!TP_LABCURVE_CONTRAST;Contrast
!TP_LABCURVE_CURVEEDITOR;Luminance Curve
diff --git a/rtdata/languages/English b/rtdata/languages/English
index 73a850a76..d1a9630eb 100644
--- a/rtdata/languages/English
+++ b/rtdata/languages/English
@@ -692,7 +692,7 @@
!TP_ICM_SAVEREFERENCE;Save reference image for profiling
!TP_ICM_WORKINGPROFILE;Working Profile
!TP_IMPULSEDENOISE_LABEL;Impulse Noise Reduction
-!TP_IMPULSEDENOISE_THRESH;Threshold
+!TP_IMPULSEDENOISE_THRESH;Impulse NR Threshold
!TP_LABCURVE_BRIGHTNESS;Brightness
!TP_LABCURVE_CONTRAST;Contrast
!TP_LABCURVE_CURVEEDITOR;Luminance Curve
diff --git a/rtdata/languages/English (UK) b/rtdata/languages/English (UK)
index 94c3a456a..f6a171849 100644
--- a/rtdata/languages/English (UK)
+++ b/rtdata/languages/English (UK)
@@ -1,4 +1,4 @@
-
+
#00 English (UK)
#01 08.12.2010: Richard Regal
@@ -35,751 +35,751 @@ TP_COLORBOOST_LABEL;Colour Boost
TP_COLORDENOISE_LABEL;Colour Noise Reduction
TP_COLORSHIFT_LABEL;Colour Shift
TP_HLREC_COLOR;Colour Propagation
-
-
-!!!!!!!!!!!!!!!!!!!!!!!!!
-! Untranslated keys follow; remove the ! prefix after an entry is translated.
-!!!!!!!!!!!!!!!!!!!!!!!!!
-
-
-!ADJUSTER_RESET_TO_DEFAULT;Reset to default
-!BATCHQUEUE_AUTOSTART;Auto start
-!BATCH_PROCESSING;Batch processing
-!CURVEEDITOR_CURVE;Curve
-!CURVEEDITOR_CURVES;Curves
-!CURVEEDITOR_CUSTOM;Custom
-!CURVEEDITOR_DARKS;Darks
-!CURVEEDITOR_FILEDLGFILTERANY;Any files
-!CURVEEDITOR_FILEDLGFILTERCURVE;Curve files
-!CURVEEDITOR_HIGHLIGHTS;Highlights
-!CURVEEDITOR_LIGHTS;Lights
-!CURVEEDITOR_LINEAR;Linear
-!CURVEEDITOR_LOADDLGLABEL;Load Curve...
-!CURVEEDITOR_NURBS;Control cage
-!CURVEEDITOR_PARAMETRIC;Parametric
-!CURVEEDITOR_SAVEDLGLABEL;Save Curve...
-!CURVEEDITOR_SHADOWS;Shadows
-!CURVEEDITOR_TOOLTIPLINEAR;Reset curve to linear
-!CURVEEDITOR_TOOLTIPLOAD;Load a curve from file
-!CURVEEDITOR_TOOLTIPSAVE;Save current curve
-!CURVEEDITOR_TYPE;Type:
-!EDITWINDOW_TITLE;Image Edit
-!EXIFFILTER_APERTURE;Aperture
-!EXIFFILTER_CAMERA;Camera
-!EXIFFILTER_DIALOGLABEL;Exif Filter
-!EXIFFILTER_FILETYPE;File Type
-!EXIFFILTER_FOCALLEN;Focal Length
-!EXIFFILTER_ISO;ISO
-!EXIFFILTER_LENS;Lens
-!EXIFFILTER_METADATAFILTER;Enable Metadata Filters
-!EXIFFILTER_SHUTTER;Shutter
-!EXIFPANEL_ADDEDIT;Add/Edit
-!EXIFPANEL_ADDEDITHINT;Add new tag or edit tag
-!EXIFPANEL_ADDTAGDLG_ENTERVALUE;Enter value
-!EXIFPANEL_ADDTAGDLG_SELECTTAG;Select tag
-!EXIFPANEL_ADDTAGDLG_TITLE;Add/Edit Tag
-!EXIFPANEL_KEEP;Keep
-!EXIFPANEL_KEEPHINT;Keep the selected tags when writing output file
-!EXIFPANEL_REMOVE;Remove
-!EXIFPANEL_REMOVEHINT;Remove the selected tags when writing output file
-!EXIFPANEL_RESET;Reset
-!EXIFPANEL_RESETALL;Reset All
-!EXIFPANEL_RESETALLHINT;Reset all tags to their original values
-!EXIFPANEL_RESETHINT;Reset the selected tags to their original values
-!EXIFPANEL_SUBDIRECTORY;Subdirectory
-!FILEBROWSER_ADDDELTEMPLATE;Add/Del templates...
-!FILEBROWSER_APPLYPROFILE;Apply profile
-!FILEBROWSER_ARRANGEMENTHINT;Change between vertical/horizontal alignment of thumbnails
-!FILEBROWSER_AUTODARKFRAME;Auto dark frame
-!FILEBROWSER_CLEARPROFILE;Clear profile
-!FILEBROWSER_COPYPROFILE;Copy profile
-!FILEBROWSER_CURRENT_NAME;Current name:
-!FILEBROWSER_DELETEDLGLABEL;File delete confirmation
-!FILEBROWSER_DELETEDLGMSG;Are you sure you want to delete the selected %1 files?
-!FILEBROWSER_EMPTYTRASH;Empty Trash
-!FILEBROWSER_EMPTYTRASHHINT;Permanently delete the files of the trash
-!FILEBROWSER_EXIFFILTERAPPLY;Apply
-!FILEBROWSER_EXIFFILTERAPPLYHINT;Switch on/off exif filter of the file browser
-!FILEBROWSER_EXIFFILTERLABEL;Exif Filter
-!FILEBROWSER_EXIFFILTERSETTINGS;Setup
-!FILEBROWSER_EXIFFILTERSETTINGSHINT;Change settings of the exif filter
-!FILEBROWSER_MOVETODARKFDIR;Move to dark frames directory
-!FILEBROWSER_NEW_NAME;New name:
-!FILEBROWSER_PARTIALPASTEPROFILE;Partial paste
-!FILEBROWSER_PASTEPROFILE;Paste profile
-!FILEBROWSER_POPUPCANCELJOB;Cancel job
-!FILEBROWSER_POPUPMOVEEND;Move to end of queue
-!FILEBROWSER_POPUPMOVEHEAD;Move to head of queue
-!FILEBROWSER_POPUPOPEN;Open
-!FILEBROWSER_POPUPPROCESS;Put to processing queue
-!FILEBROWSER_POPUPRANK1;Rank 1
-!FILEBROWSER_POPUPRANK2;Rank 2
-!FILEBROWSER_POPUPRANK3;Rank 3
-!FILEBROWSER_POPUPRANK4;Rank 4
-!FILEBROWSER_POPUPRANK5;Rank 5
-!FILEBROWSER_POPUPREMOVE;Remove from filesystem
-!FILEBROWSER_POPUPRENAME;Rename
-!FILEBROWSER_POPUPSELECTALL;Select all
-!FILEBROWSER_POPUPTRASH;Move to trash
-!FILEBROWSER_POPUPUNRANK;Unrank
-!FILEBROWSER_POPUPUNTRASH;Remove from trash
-!FILEBROWSER_PROCESSINGSETTINGS;Settings
-!FILEBROWSER_PROCESSINGSETTINGSHINT;Set the file format and output directory
-!FILEBROWSER_RENAMEDLGLABEL;Rename file
-!FILEBROWSER_RENAMEDLGMSG;Rename file "%1" to:
-!FILEBROWSER_SELECTDARKFRAME;Select dark frame...
-!FILEBROWSER_SHOWDIRHINT;Show all images of the directory D
-!FILEBROWSER_SHOWEXIFINFO;Show EXIF info i
-!FILEBROWSER_SHOWQUEUEHINT;Show content of the processing queue
-!FILEBROWSER_SHOWRANK1HINT;Show images ranked as 1 star 1
-!FILEBROWSER_SHOWRANK2HINT;Show images ranked as 2 star 2
-!FILEBROWSER_SHOWRANK3HINT;Show images ranked as 3 star 3
-!FILEBROWSER_SHOWRANK4HINT;Show images ranked as 4 star 4
-!FILEBROWSER_SHOWRANK5HINT;Show images ranked as 5 star 5
-!FILEBROWSER_SHOWTRASHHINT;Show content of the trash T
-!FILEBROWSER_SHOWUNRANKHINT;Show unranked images `
-!FILEBROWSER_STARTPROCESSING;Start processing
-!FILEBROWSER_STARTPROCESSINGHINT;Start processing/saving of images in the queue
-!FILEBROWSER_STOPPROCESSING;Stop processing
-!FILEBROWSER_STOPPROCESSINGHINT;Stop processing of images
-!FILEBROWSER_THUMBSIZE;Thumb. size
-!FILEBROWSER_TOOLTIP_STOPPROCESSING;Start processing automatically when a new job arrives
-!FILEBROWSER_USETEMPLATE;Use template:
-!FILEBROWSER_ZOOMINHINT;Increase thumbnail size +
-!FILEBROWSER_ZOOMOUTHINT;Decrease thumbnail size -
-!GENERAL_ABOUT;About
-!GENERAL_AFTER;After
-!GENERAL_BEFORE;Before
-!GENERAL_CANCEL;Cancel
-!GENERAL_DISABLE;Disable
-!GENERAL_DISABLED;Disabled
-!GENERAL_ENABLE;Enable
-!GENERAL_ENABLED;Enabled
-!GENERAL_HIGH_QUALITY;High Quality
-!GENERAL_LANDSCAPE;Landscape
-!GENERAL_LOAD;Load
-!GENERAL_NA;n/a
-!GENERAL_NO;No
-!GENERAL_OK;OK
-!GENERAL_PORTRAIT;Portrait
-!GENERAL_SAVE;Save
-!GENERAL_UNCHANGED;(Unchanged)
-!GENERAL_YES;Yes
-!HISTOGRAM_BUTTON_B;B
-!HISTOGRAM_BUTTON_G;G
-!HISTOGRAM_BUTTON_L;L
-!HISTOGRAM_BUTTON_R;R
-!HISTOGRAM_LABEL;Histogram
-!HISTOGRAM_TOOLTIP_B;Show/Hide BLUE histogram
-!HISTOGRAM_TOOLTIP_G;Show/Hide GREEN histogram
-!HISTOGRAM_TOOLTIP_L;Show/Hide CIELAB Luminance histogram
-!HISTOGRAM_TOOLTIP_R;Show/Hide RED histogram
-!HISTORY_CHANGED;Changed
-!HISTORY_CUSTOMCURVE;Custom Curve
-!HISTORY_DELSNAPSHOT;Del
-!HISTORY_FROMCLIPBOARD;From clipboard
-!HISTORY_LABEL;History
-!HISTORY_MSG_100;RGB saturation
-!HISTORY_MSG_101;HSV EQ -- Hue
-!HISTORY_MSG_102;HSV EQ -- Saturation
-!HISTORY_MSG_103;HSV EQ -- Value
-!HISTORY_MSG_104;HSV Equalizer
-!HISTORY_MSG_105;Defringing
-!HISTORY_MSG_106;Defringing Radius
-!HISTORY_MSG_107;Defringing Threshold
-!HISTORY_MSG_108;Resize bounding box
-!HISTORY_MSG_109;Resizing applies to
-!HISTORY_MSG_10;Shadow Compression
-!HISTORY_MSG_11;Tone Curve
-!HISTORY_MSG_12;Auto Exposure
-!HISTORY_MSG_13;Exposure Clipping
-!HISTORY_MSG_14;Luminance Brightness
-!HISTORY_MSG_15;Luminance Contrast
-!HISTORY_MSG_16;Luminance Black
-!HISTORY_MSG_17;Luminance Highlight Compr.
-!HISTORY_MSG_18;Luminance Shadow Compr.
-!HISTORY_MSG_19;'L' Curve
-!HISTORY_MSG_1;Photo Loaded
-!HISTORY_MSG_20;Sharpening
-!HISTORY_MSG_21;Sharpening Radius
-!HISTORY_MSG_22;Sharpening Amount
-!HISTORY_MSG_23;Sharpening Threshold
-!HISTORY_MSG_24;Sharpen Only Edges
-!HISTORY_MSG_25;Sharpening Edge Detection Radius
-!HISTORY_MSG_26;Sharpening Edge Tolerance
-!HISTORY_MSG_27;Sharpening Halo Control
-!HISTORY_MSG_28;Halo Control Amount
-!HISTORY_MSG_29;Sharpening Method
-!HISTORY_MSG_2;Profile Loaded
-!HISTORY_MSG_30;Deconvolution Radius
-!HISTORY_MSG_31;Deconvolution Amount
-!HISTORY_MSG_32;Deconvolution Damping
-!HISTORY_MSG_33;Deconvolution Iterations
-!HISTORY_MSG_35;Saturation Limiter
-!HISTORY_MSG_36;Saturation Limit
-!HISTORY_MSG_38;White Balance Method
-!HISTORY_MSG_40;White Balance Tint
-!HISTORY_MSG_43;Luminance Denoising
-!HISTORY_MSG_44;Lum. Denoising Radius
-!HISTORY_MSG_45;Lum. Denoising Edge Tolerance
-!HISTORY_MSG_50;Shadow/Highlight tool
-!HISTORY_MSG_51;Highlight boost
-!HISTORY_MSG_52;Shadow Boost
-!HISTORY_MSG_53;Highlight Tonal Width
-!HISTORY_MSG_54;Shadow Tonal Width
-!HISTORY_MSG_55;Local Contrast
-!HISTORY_MSG_56;Shadow/Highlight Radius
-!HISTORY_MSG_57;Coarse Rotation
-!HISTORY_MSG_58;Horizontal Flipping
-!HISTORY_MSG_59;Vertical Flipping
-!HISTORY_MSG_5;Brightness
-!HISTORY_MSG_60;Rotation
-!HISTORY_MSG_61;Auto Fill
-!HISTORY_MSG_62;Lens Distortion Correction
-!HISTORY_MSG_63;Snapshot Selected
-!HISTORY_MSG_64;Crop Photo
-!HISTORY_MSG_65;C/A Correction
-!HISTORY_MSG_66;Highlight Recovery
-!HISTORY_MSG_67;Highlight Recovery Amount
-!HISTORY_MSG_68;Highlight Recovery Method
-!HISTORY_MSG_72;Vignetting Correction
-!HISTORY_MSG_73;Channel Mixer
-!HISTORY_MSG_74;Resize Scale
-!HISTORY_MSG_75;Resize Method
-!HISTORY_MSG_76;Exif Metadata
-!HISTORY_MSG_77;IPTC Metadata
-!HISTORY_MSG_78;Data specified for resize
-!HISTORY_MSG_79;Resize width
-!HISTORY_MSG_80;Resize height
-!HISTORY_MSG_81;Resize enabled
-!HISTORY_MSG_82;Profile Changed
-!HISTORY_MSG_83;High quality shadows/highlights
-!HISTORY_MSG_84;Perspective correction
-!HISTORY_MSG_85;Wavelet coefficients
-!HISTORY_MSG_86;Wavelet equalizer
-!HISTORY_MSG_87;Impulse noise reduction
-!HISTORY_MSG_88;Impulse NR threshold
-!HISTORY_MSG_89;Noise reduction
-!HISTORY_MSG_8;Exposure Compensation
-!HISTORY_MSG_90;NR - luminance
-!HISTORY_MSG_91;NR - chrominance
-!HISTORY_MSG_92;NR - gamma
-!HISTORY_MSG_93;Contrast by detail levels value
-!HISTORY_MSG_94;Contrast by detail levels
-!HISTORY_MSG_95;Saturation
-!HISTORY_MSG_96;'a' curve
-!HISTORY_MSG_97;'b' curve
-!HISTORY_MSG_99;Preprocessing
-!HISTORY_NEWSNAPSHOT;Add
-!HISTORY_NEWSNAPSHOTAS;As...
-!HISTORY_NEWSSDIALOGLABEL;Label of the snapshot:
-!HISTORY_NEWSSDIALOGTITLE;Add new snapshot
-!HISTORY_SETTO;Set to
-!HISTORY_SNAPSHOT;Snapshot
-!HISTORY_SNAPSHOTS;Snapshots
-!ICMPANEL_FILEDLGFILTERANY;Any files
-!ICMPANEL_FILEDLGFILTERICM;ICC Profile Files
-!ICMPANEL_GAMMABEFOREINPUT;Profile applies Gamma
-!ICMPANEL_INPUTCAMERA;Camera default
-!ICMPANEL_INPUTCUSTOM;Custom
-!ICMPANEL_INPUTDLGLABEL;Select Input ICC Profile...
-!ICMPANEL_INPUTEMBEDDED;Use Embedded, if possible
-!ICMPANEL_INPUTPROFILE;Input Profile
-!ICMPANEL_NOICM;No ICM: sRGB output
-!ICMPANEL_OUTPUTDLGLABEL;Select Output ICC Profile...
-!ICMPANEL_OUTPUTPROFILE;Output Profile
-!ICMPANEL_SAVEREFERENCE;Save reference image for profiling
-!ICMPANEL_WORKINGPROFILE;Working Profile
-!IMAGEAREA_DETAILVIEW;Detail view
-!IPTCPANEL_AUTHOR;Author
-!IPTCPANEL_AUTHORHINT;Name of the creator of the object, e.g. writer, photographer or graphic artist (By-line).
-!IPTCPANEL_AUTHORSPOSITION;Author's position
-!IPTCPANEL_AUTHORSPOSITIONHINT;Title of the creator or creators of the object (By-line Title).
-!IPTCPANEL_CAPTION;Caption
-!IPTCPANEL_CAPTIONHINT;A textual description of the data (Caption - Abstract).
-!IPTCPANEL_CAPTIONWRITER;Caption Writer
-!IPTCPANEL_CAPTIONWRITERHINT;The name of the person involved in the writing, editing or correcting the image or caption/abstract (Writer - Editor).
-!IPTCPANEL_CATEGORY;Category
-!IPTCPANEL_CATEGORYHINT;Identifies the subject of the image in the opinion of the provider (Category).
-!IPTCPANEL_CITY;City
-!IPTCPANEL_CITYHINT;City of image origin (City).
-!IPTCPANEL_COPYHINT;Copy IPTC settings to clipboard
-!IPTCPANEL_COPYRIGHT;Copyright
-!IPTCPANEL_COPYRIGHTHINT;Any necessary copyright notice (Copyright Notice).
-!IPTCPANEL_COUNTRY;Country
-!IPTCPANEL_COUNTRYHINT;The name of the country/primary location where the image was created (Country - Primary Location Name).
-!IPTCPANEL_CREDIT;Credit
-!IPTCPANEL_CREDITHINT;Identifies the provider of the image, not necessarily the owner/creator (Credit).
-!IPTCPANEL_EMBEDDED;Embedded
-!IPTCPANEL_EMBEDDEDHINT;Reset to IPTC data embedded in the image file
-!IPTCPANEL_HEADLINE;Headline
-!IPTCPANEL_HEADLINEHINT;A publishable entry providing a synopsis of the contents of the image (Headline).
-!IPTCPANEL_INSTRUCTIONS;Instructions
-!IPTCPANEL_INSTRUCTIONSHINT;Other editorial instructions concerning the use of the image (Special Instructions).
-!IPTCPANEL_KEYWORDS;Keywords
-!IPTCPANEL_KEYWORDSHINT;Used to indicate specific information retrieval words (Keywords).
-!IPTCPANEL_PASTEHINT;Paste IPTC settings from clipboard
-!IPTCPANEL_RESET;Reset
-!IPTCPANEL_RESETHINT;Reset to profile default
-!IPTCPANEL_SOURCE;Source
-!IPTCPANEL_SOURCEHINT;The original owner of the intellectual content of the image (Source).
-!IPTCPANEL_SUPPCATEGORIES;Suppl. Categories
-!IPTCPANEL_SUPPCATEGORIESHINT;Further refines the subject of the image (Supplemental Categories).
-!IPTCPANEL_TITLE;Title
-!IPTCPANEL_TITLEHINT;A shorthand reference for the image (Object Name).
-!IPTCPANEL_TRANSREFERENCE;Trans. Reference
-!IPTCPANEL_TRANSREFERENCEHINT;A code representing the location of original transmission (Original Transmission Reference).
-!MAIN_BUTTON_EXIT;Exit
-!MAIN_BUTTON_FULLSCREEN;Fullscreen
-!MAIN_BUTTON_PREFERENCES;Preferences
-!MAIN_BUTTON_PUTTOQUEUE;Put to queue
-!MAIN_BUTTON_PUTTOQUEUE_TOOLTIP;Add current image to processing queue Ctrl+Q
-!MAIN_BUTTON_QUEUE;Put to queue
-!MAIN_BUTTON_SAVE;Save Image
-!MAIN_BUTTON_SAVEAS;As...
-!MAIN_BUTTON_SAVE_TOOLTIP;Save current image Ctrl+S
-!MAIN_BUTTON_SENDTOEDITOR;Send to editor
-!MAIN_BUTTON_SENDTOEDITOR_TOOLTIP;Edit current image in external editor Ctrl+E
-!MAIN_BUTTON_UNFULLSCREEN;Exit fullscreen
-!MAIN_FRAME_BATCHQUEUE;Batch Queue
-!MAIN_FRAME_EDITOR;Editor
-!MAIN_FRAME_FILEBROWSER;File Browser
-!MAIN_FRAME_PLACES;Places
-!MAIN_FRAME_PLACES_ADD;Add
-!MAIN_FRAME_PLACES_DEL;Del
-!MAIN_FRAME_RECENT;Recent Folders
-!MAIN_MSG_ALREADYEXISTS;File already exists.
-!MAIN_MSG_CANNOTLOAD;Cannot load image
-!MAIN_MSG_CANNOTSAVE;File saving error
-!MAIN_MSG_CANNOTSTARTEDITOR;Can not start editor.
-!MAIN_MSG_CANNOTSTARTEDITOR_SECONDARY;Please set the correct path in the "Preferences" dialog.
-!MAIN_MSG_ERRORDURINGIMAGESAVING;Error during image saving
-!MAIN_MSG_EXITJOBSINQUEUEINFO;Unprocessed images in the queue will be lost on exit.
-!MAIN_MSG_EXITJOBSINQUEUEQUEST;Are you sure you want to exit? There are unprocessed images waiting in the queue.
-!MAIN_MSG_JOBSINQUEUE;job(s) in the queue
-!MAIN_MSG_NAVIGATOR;Navigator
-!MAIN_MSG_PLACES;Places
-!MAIN_MSG_QOVERWRITE;Do you want to overwrite it?
-!MAIN_TAB_BASIC;Basic
-!MAIN_TAB_DETAIL;Detail
-!MAIN_TAB_DEVELOP;Develop
-!MAIN_TAB_EXIF;Exif
-!MAIN_TAB_EXPOSURE;Exposure
-!MAIN_TAB_FILTER;Filter
-!MAIN_TAB_ICM;ICM
-!MAIN_TAB_IPTC;IPTC
-!MAIN_TAB_METADATA;Metadata
-!MAIN_TAB_RAW;RAW
-!MAIN_TAB_TAGGING;Tagging
-!MAIN_TAB_TRANSFORM;Transform
-!MAIN_TOGGLE_BEFORE_AFTER;B|A
-!MAIN_TOOLTIP_HIDEFP;Show/hide the bottom panel (directory and file browser) F
-!MAIN_TOOLTIP_HIDEHP;Show/hide the left panel (including the history) H
-!MAIN_TOOLTIP_INDCLIPPEDH;Clipped highlight indication (Key <)
-!MAIN_TOOLTIP_INDCLIPPEDS;Clipped shadow indication (Key >)
-!MAIN_TOOLTIP_PREFERENCES;Set preferences
-!MAIN_TOOLTIP_QINFO;Quick info on the image I
-!MAIN_TOOLTIP_SAVE;Save image to the default folder
-!MAIN_TOOLTIP_SAVEAS;Save image to a selected folder
-!MAIN_TOOLTIP_TOGGLE;Toggle before/after view B
-!NAVIGATOR_B_NA;B = n/a
-!NAVIGATOR_B_VALUE;B = %1
-!NAVIGATOR_G_NA;G = n/a
-!NAVIGATOR_G_VALUE;G = %1
-!NAVIGATOR_H_NA;H = n/a
-!NAVIGATOR_H_VALUE;H = %1
-!NAVIGATOR_LAB_A_NA;A = n/a
-!NAVIGATOR_LAB_A_VALUE;A = %1
-!NAVIGATOR_LAB_B_NA;B = n/a
-!NAVIGATOR_LAB_B_VALUE;B = %1
-!NAVIGATOR_LAB_L_NA;L = n/a
-!NAVIGATOR_LAB_L_VALUE;L = %1
-!NAVIGATOR_R_NA;R = n/a
-!NAVIGATOR_R_VALUE;R = %1
-!NAVIGATOR_S_NA;S = n/a
-!NAVIGATOR_S_VALUE;S = %1
-!NAVIGATOR_V_NA;V = n/a
-!NAVIGATOR_V_VALUE;V = %1
-!NAVIGATOR_XY_NA;x = n/a, y = n/a
-!PARTIALPASTE_BASICGROUP;Basic settings
-!PARTIALPASTE_CACORRECTION;C/A correction
-!PARTIALPASTE_COARSETRANS;90 deg rotation / flipping
-!PARTIALPASTE_COMPOSITIONGROUP;Composition settings
-!PARTIALPASTE_CROP;Crop
-!PARTIALPASTE_DIALOGLABEL;Partial paste processing profile
-!PARTIALPASTE_DISTORTION;Distortion correction
-!PARTIALPASTE_EXIFCHANGES;Changes to exif data
-!PARTIALPASTE_EXPOSURE;Exposure
-!PARTIALPASTE_HLRECOVERY;Highlight recovery
-!PARTIALPASTE_ICMSETTINGS;ICM settings
-!PARTIALPASTE_IPTCINFO;IPTC info
-!PARTIALPASTE_LABCURVE;Lab curve
-!PARTIALPASTE_LENSGROUP;Lens related settings
-!PARTIALPASTE_LUMADENOISE;Luminance noise reduction
-!PARTIALPASTE_LUMINANCEGROUP;Luminance related settings
-!PARTIALPASTE_METAICMGROUP;Metadata/ICM settings
-!PARTIALPASTE_RESIZE;Resize
-!PARTIALPASTE_ROTATION;Rotation
-!PARTIALPASTE_SHADOWSHIGHLIGHTS;Shadows/Highlights
-!PARTIALPASTE_SHARPENING;Sharpening
-!PARTIALPASTE_VIGNETTING;Vignetting correction
-!PARTIALPASTE_WHITEBALANCE;White balance
-!POPUPBUTTON_SELECTOPTIONHINT;RMB to change option
-!PREFERENCES_ADD;ADD
-!PREFERENCES_APPLNEXTSTARTUP;restart required
-!PREFERENCES_BATCH_PROCESSING;Batch Processing
-!PREFERENCES_BLINKCLIPPED;Blink clipped areas
-!PREFERENCES_CABLUE;CA Blue manual correction
-!PREFERENCES_CACHECLEARALL;Clear All
-!PREFERENCES_CACHECLEARPROFILES;Clear Profiles
-!PREFERENCES_CACHECLEARTHUMBS;Clear Thumbnails
-!PREFERENCES_CACHEFORMAT1;Proprietary (faster and better quality)
-!PREFERENCES_CACHEFORMAT2;JPEG (smaller disk footprint)
-!PREFERENCES_CACHEOPTS;Cache Options
-!PREFERENCES_CACHESTRAT1;Prefer Speed to Low Memory Consumption
-!PREFERENCES_CACHESTRAT2;Prefer Low Memory Consumption to Speed
-!PREFERENCES_CACHESTRAT;Cache Strategy
-!PREFERENCES_CACHETHUMBFORM;Cache Thumbnail Format
-!PREFERENCES_CACORRECTION;Apply CA auto correction
-!PREFERENCES_CARED;CA Red manual correction
-!PREFERENCES_CLIPPINGIND;Clipping indication
-!PREFERENCES_CMETRICINTENT;Colorimetric Intent
-!PREFERENCES_CUTOVERLAYBRUSH;Cut overlay brush
-!PREFERENCES_DARKFRAME;Dark frame
-!PREFERENCES_DATEFORMAT;Date Format
-!PREFERENCES_DATEFORMATHINT;You can use the following formatting strings:n%y : yearn%m : monthn%d : daynnFor example, the hungarian date format is:n%y/%m/%d
-!PREFERENCES_DCBENHANCE;Apply DCB enhancement step
-!PREFERENCES_DCBITERATIONS;Number of DCB iterations
-!PREFERENCES_DEFAULTLANG;Default language
-!PREFERENCES_DEFAULTTHEME;Default theme
-!PREFERENCES_DEMOSAICINGALGO;Demosaicing Algorithm
-!PREFERENCES_DIRDARKFRAMES;Dark frames directory
-!PREFERENCES_DIRHOME;Home directory
-!PREFERENCES_DIRLAST;Last visited directory
-!PREFERENCES_DIROTHER;Other
-!PREFERENCES_DIRSELECTDLG;Select Image Directory at Startup...
-!PREFERENCES_DIRSOFTWARE;Installation directory
-!PREFERENCES_DMETHOD;Method
-!PREFERENCES_EDITORCMDLINE;Other command line
-!PREFERENCES_EDITORLAYOUT;Editor Layout
-!PREFERENCES_EXTERNALEDITOR;External editor
-!PREFERENCES_FBROWSEROPTS;File Browser Options
-!PREFERENCES_FILEFORMAT;File format
-!PREFERENCES_FORIMAGE;For image files
-!PREFERENCES_FORRAW;For RAW files
-!PREFERENCES_GIMPPATH;GIMP installation directory
-!PREFERENCES_GREENEQUIL;Green equilibration
-!PREFERENCES_GTKTHEME;GTK default
-!PREFERENCES_HINT;Hint
-!PREFERENCES_HLTHRESHOLD;Threshold for clipped highlights
-!PREFERENCES_HOTDEADPIXFILT;Apply hot/dead pixel filter
-!PREFERENCES_ICCDIR;Directory of ICC profiles
-!PREFERENCES_IMPROCPARAMS;Default image processing parameters
-!PREFERENCES_INTENT_ABSOLUTE;Absolute Colorimetric
-!PREFERENCES_INTENT_PERCEPTUAL;Perceptual
-!PREFERENCES_INTENT_RELATIVE;Relative Colorimetric
-!PREFERENCES_INTENT_SATURATION;Saturation
-!PREFERENCES_LINEDENOISE;Line noise filter
-!PREFERENCES_LIVETHUMBNAILS;Live Thumbnails (slower)
-!PREFERENCES_MONITORICC;Monitor Profile
-!PREFERENCES_MULTITAB;Multiple tabs mode
-!PREFERENCES_MULTITABDUALMON;Multiple tabs mode, if available on second monitor
-!PREFERENCES_OUTDIR;Output Directory
-!PREFERENCES_OUTDIRFOLDER;Save to folder
-!PREFERENCES_OUTDIRFOLDERHINT;Put the saved images to the selected folder
-!PREFERENCES_OUTDIRHINT;You can use the following formatting strings:n%f, %d1, %d2, ..., %p1, %p2, ...nnThese formatting strings refer to the different parts of the photo's pathname.nnFor example, if the photo being processed has the following pathname:n/home/tom/photos/2010-10-31/dsc0042.nefnthe meaning of the formatting strings are:n%d4 = homen%d3 = tomn%d2 = photosn%d1 = 2010-10-31n%f = dsc0042n%p1 = /home/tom/photos/2010-10-31/n%p2 = /home/tom/photos/n%p3 = /home/tom/n%p4 = /home/nnIf you want to save the output image where the original is, write:n%p1/%fnnIf you want to save the output image in a directory named "converted" located in the directory of the opened image, write:n%p1/converted/%fnnIf you want to save the output image in a directory named "/home/tom/photos/converted/2010-10-31", write:n%p2/converted/%d1/%f
-!PREFERENCES_OUTDIRTEMPLATE;Use Template
-!PREFERENCES_OUTDIRTEMPLATEHINT;You can use the following formatting strings:n%f, %d1, %d2, ..., %p1, %p2, ...nnThese formatting strings refer to the different parts of the photo's pathname.nnFor example, if the photo being processed has the following pathname:n/home/tom/photos/2010-10-31/dsc0042.nefnthe meaning of the formatting strings are:n%d4 = homen%d3 = tomn%d2 = photosn%d1 = 2010-10-31n%f = dsc0042n%p1 = /home/tom/photos/2010-10-31/n%p2 = /home/tom/photos/n%p3 = /home/tom/n%p4 = /home/nnIf you want to save the output image where the original is, write:n%p1/%fnnIf you want to save the output image in a directory named "converted" located in the directory of the opened image, write:n%p1/converted/%fnnIf you want to save the output image in a directory named "/home/tom/photos/converted/2010-10-31", write:n%p2/converted/%d1/%f
-!PREFERENCES_OVERLAY_FILENAMES;Overlay filenames on thumbnails
-!PREFERENCES_OVERWRITEOUTPUTFILE;Overwrite existing output files
-!PREFERENCES_PARSEDEXT;Parsed Extensions
-!PREFERENCES_PARSEDEXTADD;Add Extension
-!PREFERENCES_PARSEDEXTADDHINT;Type an extension and press this button to append list
-!PREFERENCES_PARSEDEXTDELHINT;Delete selected extension from the list
-!PREFERENCES_PROFILEHANDLING;Processing Profile Handling
-!PREFERENCES_PROFILELOADPR;Profile Loading Priority
-!PREFERENCES_PROFILEPRCACHE;Profile in Cache
-!PREFERENCES_PROFILEPRFILE;Profile Next to the Input File
-!PREFERENCES_PROFILESAVECACHE;Save Processing Parameters to the Cache
-!PREFERENCES_PROFILESAVEINPUT;Save Processing Parameters Next to the Input File
-!PREFERENCES_PROPERTY;Property
-!PREFERENCES_PSPATH;Adobe Photoshop installation directory
-!PREFERENCES_SELECTFONT;Select font
-!PREFERENCES_SELECTICCDIRDLG;Select ICC Profile Directory...
-!PREFERENCES_SELECTLANG;Select language
-!PREFERENCES_SELECTMONITORPROFDLG;Select ICC Profile of the Display...
-!PREFERENCES_SELECTTHEME;Select theme
-!PREFERENCES_SET;SET
-!PREFERENCES_SHOWBASICEXIF;Show basic Exif info
-!PREFERENCES_SHOWDATETIME;Show date and time
-!PREFERENCES_SHOWONLYRAW;Show only RAW files
-!PREFERENCES_SHTHRESHOLD;Threshold for clipped shadows
-!PREFERENCES_SINGLETAB;Single tab mode
-!PREFERENCES_SINGLETABVERTAB;Single tab mode, vertical tabs
-!PREFERENCES_SND_BATCHQUEUEDONE;Batch queue done
-!PREFERENCES_SND_HELP;Either enter filepath or nothing (for no sound). On Windows use "SystemDefault", "SystemAsterisk" etc. for system sounds.
-!PREFERENCES_SND_LNGEDITPROCDONE;Editor processing done
-!PREFERENCES_SND_TRESHOLDSECS;after secs
-!PREFERENCES_STARTUPIMDIR;Image directory at startup
-!PREFERENCES_TAB_BROWSER;File Browser
-!PREFERENCES_TAB_GENERAL;General
-!PREFERENCES_TAB_IMPROC;Image Processing
-!PREFERENCES_TAB_OUTPUT;Output Options
-!PREFERENCES_TAB_SOUND;Sounds
-!PREFERENCES_THUMBSIZE;Thumbnail Size
-!PREFERENCES_USESYSTEMTHEME; Use System Theme
-!PREFERENCES_WORKFLOW;Workflow
-!PROFILEPANEL_FILEDLGFILTERANY;Any files
-!PROFILEPANEL_FILEDLGFILTERPP;Postprocessing profiles
-!PROFILEPANEL_LABEL;Postprocessing Profiles
-!PROFILEPANEL_LOADDLGLABEL;Load Postprocessing Parameters...
-!PROFILEPANEL_PCUSTOM;Custom
-!PROFILEPANEL_PFILE;From file
-!PROFILEPANEL_PLASTPHOTO;Last Photo
-!PROFILEPANEL_PLASTSAVED;Last Saved
-!PROFILEPANEL_PROFILE;Profile
-!PROFILEPANEL_SAVEDLGLABEL;Save Postprocessing Parameters...
-!PROFILEPANEL_TOOLTIPCOPY;Copy current profile to clipboard
-!PROFILEPANEL_TOOLTIPLOAD;Load a profile from file
-!PROFILEPANEL_TOOLTIPPASTE; Paste profile from clipboard
-!PROFILEPANEL_TOOLTIPSAVE;Save current profile
-!PROGRESSBAR_DECODING;Decoding raw file...
-!PROGRESSBAR_DEMOSAICING;Demosaicing...
-!PROGRESSBAR_LOADING;Loading Image...
-!PROGRESSBAR_LOADJPEG;Loading JPEG file...
-!PROGRESSBAR_LOADPNG;Loading PNG file...
-!PROGRESSBAR_LOADTIFF;Loading TIFF file...
-!PROGRESSBAR_PROCESSING;Processing Image...
-!PROGRESSBAR_READY;Ready.
-!PROGRESSBAR_SAVEJPEG;Saving JPEG file...
-!PROGRESSBAR_SAVEPNG;Saving PNG file...
-!PROGRESSBAR_SAVETIFF;Saving TIFF file...
-!PROGRESSDLG_LOADING;Loading file...
-!PROGRESSDLG_PROCESSING;Processing image...
-!PROGRESSDLG_PROFILECHANGEDINBROWSER;Profile changed in browser
-!PROGRESSDLG_SAVING;Saving file...
-!QINFO_FOCALLENGTH;Focal length
-!QINFO_ISO;ISO
-!QINFO_LENS;Lens
-!QINFO_NOEXIF;Exif data not available.
-!SAVEDLG_AUTOSUFFIX;Automatically add a suffix if the file already exists
-!SAVEDLG_FILEFORMAT;File format
-!SAVEDLG_JPEGQUAL;JPEG Quality
-!SAVEDLG_JPGFILTER;JPEG files
-!SAVEDLG_PNGCOMPR;PNG Compression
-!SAVEDLG_PNGFILTER;PNG files
-!SAVEDLG_PUTTOQUEUE;Put into processing queue
-!SAVEDLG_PUTTOQUEUEHEAD;Put to the head of the processing queue
-!SAVEDLG_PUTTOQUEUETAIL;Put to the end of the processing queue
-!SAVEDLG_SAVEIMMEDIATELY;Save immediately
-!SAVEDLG_SAVESPP;Save processing parameters with image
-!SAVEDLG_TIFFFILTER;TIFF files
-!SAVEDLG_TIFFUNCOMPRESSED;Uncompressed TIFF
-!TOOLBAR_TOOLTIP_CROP;Crop selection C
-!TOOLBAR_TOOLTIP_HAND;Hand tool N
-!TOOLBAR_TOOLTIP_STRAIGHTEN;Straight line selection S
-!TOOLBAR_TOOLTIP_WB;Spot white balance W
-!TP_CACORRECTION_BLUE;Blue
-!TP_CACORRECTION_LABEL;C/A Correction
-!TP_CACORRECTION_RED;Red
-!TP_CHMIXER_BLUE;Blue
-!TP_CHMIXER_GREEN;Green
-!TP_CHMIXER_LABEL;Channel Mixer
-!TP_CHMIXER_RED;Red
-!TP_COARSETRAF_DEGREE;degree:
-!TP_COARSETRAF_TOOLTIP_HFLIP;Flip horizontally
-!TP_COARSETRAF_TOOLTIP_ROTLEFT;Rotate left
-!TP_COARSETRAF_TOOLTIP_ROTRIGHT;Rotate right
-!TP_COARSETRAF_TOOLTIP_VFLIP;Flip vertically
-!TP_COLORBOOST_ACHANNEL;Channel "a"
-!TP_COLORBOOST_AMOUNT;Amount
-!TP_COLORBOOST_BCHANNEL;Channel "b"
-!TP_COLORBOOST_CHAB;a & b
-!TP_COLORBOOST_CHANNEL;Channel
-!TP_COLORBOOST_CHSEPARATE;separate
-!TP_COLORBOOST_ENABLESATLIMITER;Enable saturation limiter
-!TP_COLORBOOST_SATLIMIT;Saturation limit
-!TP_COLORDENOISE_EDGESENSITIVE;Edge Sensitive
-!TP_COLORDENOISE_EDGETOLERANCE;Edge Tolerance
-!TP_COLORDENOISE_RADIUS;Radius
-!TP_COLORSHIFT_BLUEYELLOW;Blue-Yellow
-!TP_COLORSHIFT_GREENMAGENTA;Green-Magenta
-!TP_CROP_DPI;DPI=
-!TP_CROP_FIXRATIO;Fix Ratio:
-!TP_CROP_GTDIAGONALS;Rule of diagonals
-!TP_CROP_GTGRID;Grid
-!TP_CROP_GTHARMMEANS1;Harmonic means 1
-!TP_CROP_GTHARMMEANS2;Harmonic means 2
-!TP_CROP_GTHARMMEANS3;Harmonic means 3
-!TP_CROP_GTHARMMEANS4;Harmonic means 4
-!TP_CROP_GTNONE;None
-!TP_CROP_GTRULETHIRDS;Rule of thirds
-!TP_CROP_GUIDETYPE;Guide Type:
-!TP_CROP_H;H
-!TP_CROP_LABEL;Crop
-!TP_CROP_SELECTCROP; Select Crop
-!TP_CROP_W;W
-!TP_CROP_X;x
-!TP_CROP_Y;y
-!TP_DEFRINGE_LABEL;Defringe
-!TP_DEFRINGE_RADIUS;Radius
-!TP_DEFRINGE_THRESHOLD;Threshold
-!TP_DETAIL_AMOUNT;Amount
-!TP_DIRPYRDENOISE_CHROMA;Chrominance
-!TP_DIRPYRDENOISE_GAMMA;Gamma
-!TP_DIRPYRDENOISE_LABEL;Noise reduction
-!TP_DIRPYRDENOISE_LUMA;Luminance
-!TP_DIRPYREQUALIZER_LABEL;Contrast by detail levels
-!TP_DIRPYREQUALIZER_LUMACOARSEST;Coarsest
-!TP_DIRPYREQUALIZER_LUMACONTRAST_MINUS;Contrast-
-!TP_DIRPYREQUALIZER_LUMACONTRAST_PLUS;Contrast+
-!TP_DIRPYREQUALIZER_LUMAFINEST;Finest
-!TP_DIRPYREQUALIZER_LUMANEUTRAL;Neutral
-!TP_DIRPYREQUALIZER_THRESHOLD;Threshold
-!TP_DISTORTION_AMOUNT;Amount
-!TP_DISTORTION_LABEL;Distortion
-!TP_EQUALIZER_CONTRAST_MINUS;Contrast-
-!TP_EQUALIZER_CONTRAST_PLUS;Contrast+
-!TP_EQUALIZER_FINEST;finest
-!TP_EQUALIZER_LABEL;Wavelet equalizer
-!TP_EQUALIZER_LARGEST;coarsest
-!TP_EQUALIZER_NEUTRAL;Neutral
-!TP_EXPOSURE_AUTOLEVELS;Auto Levels
-!TP_EXPOSURE_BLACKLEVEL;Black
-!TP_EXPOSURE_BRIGHTNESS;Brightness
-!TP_EXPOSURE_CLIP;Clip
-!TP_EXPOSURE_COMPRHIGHLIGHTS;Highlight recovery
-!TP_EXPOSURE_COMPRSHADOWS;Shadow recovery
-!TP_EXPOSURE_CONTRAST;Contrast
-!TP_EXPOSURE_CURVEEDITOR;Tone Curve
-!TP_EXPOSURE_EXPCOMP;Exp. Comp.
-!TP_EXPOSURE_LABEL;Exposure
-!TP_EXPOSURE_SATURATION;Saturation
-!TP_HLREC_CIELAB;CIELab Blending
-!TP_HLREC_LABEL;Highlight Reconstruction
-!TP_HLREC_LUMINANCE;Luminance Recovery
-!TP_HLREC_METHOD;Method:
-!TP_HSVEQUALIZER1;Red
-!TP_HSVEQUALIZER2;Yellow
-!TP_HSVEQUALIZER3;Lime
-!TP_HSVEQUALIZER4;Green
-!TP_HSVEQUALIZER5;Aqua
-!TP_HSVEQUALIZER6;Blue
-!TP_HSVEQUALIZER7;Purple
-!TP_HSVEQUALIZER8;Magenta
-!TP_HSVEQUALIZER_CHANNEL;HSV Channel
-!TP_HSVEQUALIZER_HUE;Hue
-!TP_HSVEQUALIZER_LABEL;HSV Equalizer
-!TP_HSVEQUALIZER_NEUTRAL;Neutral
-!TP_HSVEQUALIZER_SAT;Saturation
-!TP_HSVEQUALIZER_VAL;Value
-!TP_ICM_FILEDLGFILTERANY;Any files
-!TP_ICM_FILEDLGFILTERICM;ICC Profile Files
-!TP_ICM_GAMMABEFOREINPUT;Profile applies Gamma
-!TP_ICM_INPUTCAMERA;Camera default
-!TP_ICM_INPUTCUSTOM;Custom
-!TP_ICM_INPUTDLGLABEL;Select Input ICC Profile...
-!TP_ICM_INPUTEMBEDDED;Use Embedded, if possible
-!TP_ICM_INPUTNONE;No profile
-!TP_ICM_INPUTPROFILE;Input Profile
-!TP_ICM_LABEL;ICM
-!TP_ICM_NOICM;No ICM: sRGB output
-!TP_ICM_OUTPUTDLGLABEL;Select Output ICC Profile...
-!TP_ICM_OUTPUTPROFILE;Output Profile
-!TP_ICM_SAVEREFERENCE;Save reference image for profiling
-!TP_ICM_WORKINGPROFILE;Working Profile
-!TP_IMPULSEDENOISE_LABEL;Impulse Noise Reduction
-!TP_IMPULSEDENOISE_THRESH;Threshold
-!TP_LABCURVE_BRIGHTNESS;Brightness
-!TP_LABCURVE_CONTRAST;Contrast
-!TP_LABCURVE_CURVEEDITOR;Luminance Curve
-!TP_LABCURVE_LABEL;Lab Curves
-!TP_LABCURVE_SATURATION;Saturation
-!TP_LENSGEOM_AUTOCROP;Auto Crop
-!TP_LENSGEOM_FILL;Auto Fill
-!TP_LENSGEOM_LABEL;Lens / Geometry
-!TP_LUMADENOISE_EDGETOLERANCE;Edge Tolerance
-!TP_LUMADENOISE_LABEL;Luminance Noise Reduction
-!TP_LUMADENOISE_RADIUS;Radius
-!TP_PERSPECTIVE_HORIZONTAL;Horizontal
-!TP_PERSPECTIVE_LABEL;Perspective
-!TP_PERSPECTIVE_VERTICAL;Vertical
-!TP_PREPROCESS_DARKFRAME;Dark frame
-!TP_PREPROCESS_DFAUTOSELECT;Auto selection
-!TP_RAWPANEL_DEMOSAICING;Demosaicing
-!TP_RAWPANEL_PREPROCESSING;Preprocessing
-!TP_RESIZE_APPLIESTO;Applies to:
-!TP_RESIZE_BICUBIC;Bicubic
-!TP_RESIZE_BICUBICSF;Bicubic (Softer)
-!TP_RESIZE_BICUBICSH;Bicubic (Sharper)
-!TP_RESIZE_BILINEAR;Bilinear
-!TP_RESIZE_CROPPEDAREA;Cropped area
-!TP_RESIZE_DOWNSCALEB;Downscale (Better)
-!TP_RESIZE_DOWNSCALEF;Downscale (Faster)
-!TP_RESIZE_FITBOX;Bounding box
-!TP_RESIZE_FULLIMAGE;Full image
-!TP_RESIZE_FULLSIZE;Full Image Size:
-!TP_RESIZE_H;H:
-!TP_RESIZE_HEIGHT;Height
-!TP_RESIZE_LABEL;Resize
-!TP_RESIZE_LANCZOS;Lanczos
-!TP_RESIZE_METHOD;Method:
-!TP_RESIZE_NEAREST;Nearest
-!TP_RESIZE_SCALE;Scale
-!TP_RESIZE_SPECIFY;Specify:
-!TP_RESIZE_W;W:
-!TP_RESIZE_WIDTH;Width
-!TP_ROTATE_DEGREE;Degree
-!TP_ROTATE_LABEL;Rotate
-!TP_ROTATE_SELECTLINE; Select Straight Line
-!TP_SHADOWSHLIGHTS_HIGHLIGHTS;Highlights
-!TP_SHADOWSHLIGHTS_HLTONALW;Tonal Width for Highlights
-!TP_SHADOWSHLIGHTS_LABEL;Shadows/Highlights
-!TP_SHADOWSHLIGHTS_LOCALCONTR;Local Contrast
-!TP_SHADOWSHLIGHTS_RADIUS;Radius
-!TP_SHADOWSHLIGHTS_SHADOWS;Shadows
-!TP_SHADOWSHLIGHTS_SHTONALW;Tonal Width for Shadows
-!TP_SHARPENING_AMOUNT;Amount
-!TP_SHARPENING_EDRADIUS;Radius
-!TP_SHARPENING_EDTOLERANCE;Edge tolerance
-!TP_SHARPENING_HALOCONTROL;Halo control
-!TP_SHARPENING_HCAMOUNT;Amount
-!TP_SHARPENING_LABEL;Sharpening
-!TP_SHARPENING_METHOD;Method
-!TP_SHARPENING_ONLYEDGES;Sharpen only edges
-!TP_SHARPENING_RADIUS;Radius
-!TP_SHARPENING_RLD;RL Deconvolution
-!TP_SHARPENING_RLD_AMOUNT;Amount
-!TP_SHARPENING_RLD_DAMPING;Damping
-!TP_SHARPENING_RLD_ITERATIONS;Iterations
-!TP_SHARPENING_THRESHOLD;Threshold
-!TP_SHARPENING_USM;Unsharp Mask
-!TP_VIGNETTING_AMOUNT;Amount
-!TP_VIGNETTING_CENTER;Center
-!TP_VIGNETTING_CENTER_X;Center X
-!TP_VIGNETTING_CENTER_Y;Center Y
-!TP_VIGNETTING_LABEL;Vignetting Correction
-!TP_VIGNETTING_RADIUS;Radius
-!TP_VIGNETTING_STRENGTH;Strength
-!TP_WBALANCE_AUTO;Auto
-!TP_WBALANCE_CAMERA;Camera
-!TP_WBALANCE_CUSTOM;Custom
-!TP_WBALANCE_GREEN;Tint
-!TP_WBALANCE_LABEL;White Balance
-!TP_WBALANCE_METHOD;Method
-!TP_WBALANCE_SIZE;Size:
-!TP_WBALANCE_SPOTWB;Spot WB
-!TP_WBALANCE_TEMPERATURE;Temperature
-!ZOOMBAR_DETAIL;Detail
-!ZOOMBAR_HUGE;Huge
-!ZOOMBAR_LARGE;Large
-!ZOOMBAR_NORMAL;Normal
-!ZOOMBAR_PREVIEW;Preview
-!ZOOMBAR_SCALE;Scale
-!ZOOMBAR_SMALL;Small
-!ZOOMPANEL_100;(100%)
-!ZOOMPANEL_NEWCROPWINDOW;Open (new) detail window
-!ZOOMPANEL_ZOOM100;Zoom to 100% 1
-!ZOOMPANEL_ZOOMFITSCREEN;Fit to screen F
-!ZOOMPANEL_ZOOMIN;Zoom In +
-!ZOOMPANEL_ZOOMOUT;Zoom Out -
+
+
+!!!!!!!!!!!!!!!!!!!!!!!!!
+! Untranslated keys follow; remove the ! prefix after an entry is translated.
+!!!!!!!!!!!!!!!!!!!!!!!!!
+
+
+!ADJUSTER_RESET_TO_DEFAULT;Reset to default
+!BATCHQUEUE_AUTOSTART;Auto start
+!BATCH_PROCESSING;Batch processing
+!CURVEEDITOR_CURVE;Curve
+!CURVEEDITOR_CURVES;Curves
+!CURVEEDITOR_CUSTOM;Custom
+!CURVEEDITOR_DARKS;Darks
+!CURVEEDITOR_FILEDLGFILTERANY;Any files
+!CURVEEDITOR_FILEDLGFILTERCURVE;Curve files
+!CURVEEDITOR_HIGHLIGHTS;Highlights
+!CURVEEDITOR_LIGHTS;Lights
+!CURVEEDITOR_LINEAR;Linear
+!CURVEEDITOR_LOADDLGLABEL;Load Curve...
+!CURVEEDITOR_NURBS;Control cage
+!CURVEEDITOR_PARAMETRIC;Parametric
+!CURVEEDITOR_SAVEDLGLABEL;Save Curve...
+!CURVEEDITOR_SHADOWS;Shadows
+!CURVEEDITOR_TOOLTIPLINEAR;Reset curve to linear
+!CURVEEDITOR_TOOLTIPLOAD;Load a curve from file
+!CURVEEDITOR_TOOLTIPSAVE;Save current curve
+!CURVEEDITOR_TYPE;Type:
+!EDITWINDOW_TITLE;Image Edit
+!EXIFFILTER_APERTURE;Aperture
+!EXIFFILTER_CAMERA;Camera
+!EXIFFILTER_DIALOGLABEL;Exif Filter
+!EXIFFILTER_FILETYPE;File Type
+!EXIFFILTER_FOCALLEN;Focal Length
+!EXIFFILTER_ISO;ISO
+!EXIFFILTER_LENS;Lens
+!EXIFFILTER_METADATAFILTER;Enable Metadata Filters
+!EXIFFILTER_SHUTTER;Shutter
+!EXIFPANEL_ADDEDIT;Add/Edit
+!EXIFPANEL_ADDEDITHINT;Add new tag or edit tag
+!EXIFPANEL_ADDTAGDLG_ENTERVALUE;Enter value
+!EXIFPANEL_ADDTAGDLG_SELECTTAG;Select tag
+!EXIFPANEL_ADDTAGDLG_TITLE;Add/Edit Tag
+!EXIFPANEL_KEEP;Keep
+!EXIFPANEL_KEEPHINT;Keep the selected tags when writing output file
+!EXIFPANEL_REMOVE;Remove
+!EXIFPANEL_REMOVEHINT;Remove the selected tags when writing output file
+!EXIFPANEL_RESET;Reset
+!EXIFPANEL_RESETALL;Reset All
+!EXIFPANEL_RESETALLHINT;Reset all tags to their original values
+!EXIFPANEL_RESETHINT;Reset the selected tags to their original values
+!EXIFPANEL_SUBDIRECTORY;Subdirectory
+!FILEBROWSER_ADDDELTEMPLATE;Add/Del templates...
+!FILEBROWSER_APPLYPROFILE;Apply profile
+!FILEBROWSER_ARRANGEMENTHINT;Change between vertical/horizontal alignment of thumbnails
+!FILEBROWSER_AUTODARKFRAME;Auto dark frame
+!FILEBROWSER_CLEARPROFILE;Clear profile
+!FILEBROWSER_COPYPROFILE;Copy profile
+!FILEBROWSER_CURRENT_NAME;Current name:
+!FILEBROWSER_DELETEDLGLABEL;File delete confirmation
+!FILEBROWSER_DELETEDLGMSG;Are you sure you want to delete the selected %1 files?
+!FILEBROWSER_EMPTYTRASH;Empty Trash
+!FILEBROWSER_EMPTYTRASHHINT;Permanently delete the files of the trash
+!FILEBROWSER_EXIFFILTERAPPLY;Apply
+!FILEBROWSER_EXIFFILTERAPPLYHINT;Switch on/off exif filter of the file browser
+!FILEBROWSER_EXIFFILTERLABEL;Exif Filter
+!FILEBROWSER_EXIFFILTERSETTINGS;Setup
+!FILEBROWSER_EXIFFILTERSETTINGSHINT;Change settings of the exif filter
+!FILEBROWSER_MOVETODARKFDIR;Move to dark frames directory
+!FILEBROWSER_NEW_NAME;New name:
+!FILEBROWSER_PARTIALPASTEPROFILE;Partial paste
+!FILEBROWSER_PASTEPROFILE;Paste profile
+!FILEBROWSER_POPUPCANCELJOB;Cancel job
+!FILEBROWSER_POPUPMOVEEND;Move to end of queue
+!FILEBROWSER_POPUPMOVEHEAD;Move to head of queue
+!FILEBROWSER_POPUPOPEN;Open
+!FILEBROWSER_POPUPPROCESS;Put to processing queue
+!FILEBROWSER_POPUPRANK1;Rank 1
+!FILEBROWSER_POPUPRANK2;Rank 2
+!FILEBROWSER_POPUPRANK3;Rank 3
+!FILEBROWSER_POPUPRANK4;Rank 4
+!FILEBROWSER_POPUPRANK5;Rank 5
+!FILEBROWSER_POPUPREMOVE;Remove from filesystem
+!FILEBROWSER_POPUPRENAME;Rename
+!FILEBROWSER_POPUPSELECTALL;Select all
+!FILEBROWSER_POPUPTRASH;Move to trash
+!FILEBROWSER_POPUPUNRANK;Unrank
+!FILEBROWSER_POPUPUNTRASH;Remove from trash
+!FILEBROWSER_PROCESSINGSETTINGS;Settings
+!FILEBROWSER_PROCESSINGSETTINGSHINT;Set the file format and output directory
+!FILEBROWSER_RENAMEDLGLABEL;Rename file
+!FILEBROWSER_RENAMEDLGMSG;Rename file "%1" to:
+!FILEBROWSER_SELECTDARKFRAME;Select dark frame...
+!FILEBROWSER_SHOWDIRHINT;Show all images of the directory D
+!FILEBROWSER_SHOWEXIFINFO;Show EXIF info i
+!FILEBROWSER_SHOWQUEUEHINT;Show content of the processing queue
+!FILEBROWSER_SHOWRANK1HINT;Show images ranked as 1 star 1
+!FILEBROWSER_SHOWRANK2HINT;Show images ranked as 2 star 2
+!FILEBROWSER_SHOWRANK3HINT;Show images ranked as 3 star 3
+!FILEBROWSER_SHOWRANK4HINT;Show images ranked as 4 star 4
+!FILEBROWSER_SHOWRANK5HINT;Show images ranked as 5 star 5
+!FILEBROWSER_SHOWTRASHHINT;Show content of the trash T
+!FILEBROWSER_SHOWUNRANKHINT;Show unranked images `
+!FILEBROWSER_STARTPROCESSING;Start processing
+!FILEBROWSER_STARTPROCESSINGHINT;Start processing/saving of images in the queue
+!FILEBROWSER_STOPPROCESSING;Stop processing
+!FILEBROWSER_STOPPROCESSINGHINT;Stop processing of images
+!FILEBROWSER_THUMBSIZE;Thumb. size
+!FILEBROWSER_TOOLTIP_STOPPROCESSING;Start processing automatically when a new job arrives
+!FILEBROWSER_USETEMPLATE;Use template:
+!FILEBROWSER_ZOOMINHINT;Increase thumbnail size +
+!FILEBROWSER_ZOOMOUTHINT;Decrease thumbnail size -
+!GENERAL_ABOUT;About
+!GENERAL_AFTER;After
+!GENERAL_BEFORE;Before
+!GENERAL_CANCEL;Cancel
+!GENERAL_DISABLE;Disable
+!GENERAL_DISABLED;Disabled
+!GENERAL_ENABLE;Enable
+!GENERAL_ENABLED;Enabled
+!GENERAL_HIGH_QUALITY;High Quality
+!GENERAL_LANDSCAPE;Landscape
+!GENERAL_LOAD;Load
+!GENERAL_NA;n/a
+!GENERAL_NO;No
+!GENERAL_OK;OK
+!GENERAL_PORTRAIT;Portrait
+!GENERAL_SAVE;Save
+!GENERAL_UNCHANGED;(Unchanged)
+!GENERAL_YES;Yes
+!HISTOGRAM_BUTTON_B;B
+!HISTOGRAM_BUTTON_G;G
+!HISTOGRAM_BUTTON_L;L
+!HISTOGRAM_BUTTON_R;R
+!HISTOGRAM_LABEL;Histogram
+!HISTOGRAM_TOOLTIP_B;Show/Hide BLUE histogram
+!HISTOGRAM_TOOLTIP_G;Show/Hide GREEN histogram
+!HISTOGRAM_TOOLTIP_L;Show/Hide CIELAB Luminance histogram
+!HISTOGRAM_TOOLTIP_R;Show/Hide RED histogram
+!HISTORY_CHANGED;Changed
+!HISTORY_CUSTOMCURVE;Custom Curve
+!HISTORY_DELSNAPSHOT;Del
+!HISTORY_FROMCLIPBOARD;From clipboard
+!HISTORY_LABEL;History
+!HISTORY_MSG_100;RGB saturation
+!HISTORY_MSG_101;HSV EQ -- Hue
+!HISTORY_MSG_102;HSV EQ -- Saturation
+!HISTORY_MSG_103;HSV EQ -- Value
+!HISTORY_MSG_104;HSV Equalizer
+!HISTORY_MSG_105;Defringing
+!HISTORY_MSG_106;Defringing Radius
+!HISTORY_MSG_107;Defringing Threshold
+!HISTORY_MSG_108;Resize bounding box
+!HISTORY_MSG_109;Resizing applies to
+!HISTORY_MSG_10;Shadow Compression
+!HISTORY_MSG_11;Tone Curve
+!HISTORY_MSG_12;Auto Exposure
+!HISTORY_MSG_13;Exposure Clipping
+!HISTORY_MSG_14;Luminance Brightness
+!HISTORY_MSG_15;Luminance Contrast
+!HISTORY_MSG_16;Luminance Black
+!HISTORY_MSG_17;Luminance Highlight Compr.
+!HISTORY_MSG_18;Luminance Shadow Compr.
+!HISTORY_MSG_19;'L' Curve
+!HISTORY_MSG_1;Photo Loaded
+!HISTORY_MSG_20;Sharpening
+!HISTORY_MSG_21;Sharpening Radius
+!HISTORY_MSG_22;Sharpening Amount
+!HISTORY_MSG_23;Sharpening Threshold
+!HISTORY_MSG_24;Sharpen Only Edges
+!HISTORY_MSG_25;Sharpening Edge Detection Radius
+!HISTORY_MSG_26;Sharpening Edge Tolerance
+!HISTORY_MSG_27;Sharpening Halo Control
+!HISTORY_MSG_28;Halo Control Amount
+!HISTORY_MSG_29;Sharpening Method
+!HISTORY_MSG_2;Profile Loaded
+!HISTORY_MSG_30;Deconvolution Radius
+!HISTORY_MSG_31;Deconvolution Amount
+!HISTORY_MSG_32;Deconvolution Damping
+!HISTORY_MSG_33;Deconvolution Iterations
+!HISTORY_MSG_35;Saturation Limiter
+!HISTORY_MSG_36;Saturation Limit
+!HISTORY_MSG_38;White Balance Method
+!HISTORY_MSG_40;White Balance Tint
+!HISTORY_MSG_43;Luminance Denoising
+!HISTORY_MSG_44;Lum. Denoising Radius
+!HISTORY_MSG_45;Lum. Denoising Edge Tolerance
+!HISTORY_MSG_50;Shadow/Highlight tool
+!HISTORY_MSG_51;Highlight boost
+!HISTORY_MSG_52;Shadow Boost
+!HISTORY_MSG_53;Highlight Tonal Width
+!HISTORY_MSG_54;Shadow Tonal Width
+!HISTORY_MSG_55;Local Contrast
+!HISTORY_MSG_56;Shadow/Highlight Radius
+!HISTORY_MSG_57;Coarse Rotation
+!HISTORY_MSG_58;Horizontal Flipping
+!HISTORY_MSG_59;Vertical Flipping
+!HISTORY_MSG_5;Brightness
+!HISTORY_MSG_60;Rotation
+!HISTORY_MSG_61;Auto Fill
+!HISTORY_MSG_62;Lens Distortion Correction
+!HISTORY_MSG_63;Snapshot Selected
+!HISTORY_MSG_64;Crop Photo
+!HISTORY_MSG_65;C/A Correction
+!HISTORY_MSG_66;Highlight Recovery
+!HISTORY_MSG_67;Highlight Recovery Amount
+!HISTORY_MSG_68;Highlight Recovery Method
+!HISTORY_MSG_72;Vignetting Correction
+!HISTORY_MSG_73;Channel Mixer
+!HISTORY_MSG_74;Resize Scale
+!HISTORY_MSG_75;Resize Method
+!HISTORY_MSG_76;Exif Metadata
+!HISTORY_MSG_77;IPTC Metadata
+!HISTORY_MSG_78;Data specified for resize
+!HISTORY_MSG_79;Resize width
+!HISTORY_MSG_80;Resize height
+!HISTORY_MSG_81;Resize enabled
+!HISTORY_MSG_82;Profile Changed
+!HISTORY_MSG_83;High quality shadows/highlights
+!HISTORY_MSG_84;Perspective correction
+!HISTORY_MSG_85;Wavelet coefficients
+!HISTORY_MSG_86;Wavelet equalizer
+!HISTORY_MSG_87;Impulse noise reduction
+!HISTORY_MSG_88;Impulse NR threshold
+!HISTORY_MSG_89;Noise reduction
+!HISTORY_MSG_8;Exposure Compensation
+!HISTORY_MSG_90;NR - luminance
+!HISTORY_MSG_91;NR - chrominance
+!HISTORY_MSG_92;NR - gamma
+!HISTORY_MSG_93;Contrast by detail levels value
+!HISTORY_MSG_94;Contrast by detail levels
+!HISTORY_MSG_95;Saturation
+!HISTORY_MSG_96;'a' curve
+!HISTORY_MSG_97;'b' curve
+!HISTORY_MSG_99;Preprocessing
+!HISTORY_NEWSNAPSHOT;Add
+!HISTORY_NEWSNAPSHOTAS;As...
+!HISTORY_NEWSSDIALOGLABEL;Label of the snapshot:
+!HISTORY_NEWSSDIALOGTITLE;Add new snapshot
+!HISTORY_SETTO;Set to
+!HISTORY_SNAPSHOT;Snapshot
+!HISTORY_SNAPSHOTS;Snapshots
+!ICMPANEL_FILEDLGFILTERANY;Any files
+!ICMPANEL_FILEDLGFILTERICM;ICC Profile Files
+!ICMPANEL_GAMMABEFOREINPUT;Profile applies Gamma
+!ICMPANEL_INPUTCAMERA;Camera default
+!ICMPANEL_INPUTCUSTOM;Custom
+!ICMPANEL_INPUTDLGLABEL;Select Input ICC Profile...
+!ICMPANEL_INPUTEMBEDDED;Use Embedded, if possible
+!ICMPANEL_INPUTPROFILE;Input Profile
+!ICMPANEL_NOICM;No ICM: sRGB output
+!ICMPANEL_OUTPUTDLGLABEL;Select Output ICC Profile...
+!ICMPANEL_OUTPUTPROFILE;Output Profile
+!ICMPANEL_SAVEREFERENCE;Save reference image for profiling
+!ICMPANEL_WORKINGPROFILE;Working Profile
+!IMAGEAREA_DETAILVIEW;Detail view
+!IPTCPANEL_AUTHOR;Author
+!IPTCPANEL_AUTHORHINT;Name of the creator of the object, e.g. writer, photographer or graphic artist (By-line).
+!IPTCPANEL_AUTHORSPOSITION;Author's position
+!IPTCPANEL_AUTHORSPOSITIONHINT;Title of the creator or creators of the object (By-line Title).
+!IPTCPANEL_CAPTION;Caption
+!IPTCPANEL_CAPTIONHINT;A textual description of the data (Caption - Abstract).
+!IPTCPANEL_CAPTIONWRITER;Caption Writer
+!IPTCPANEL_CAPTIONWRITERHINT;The name of the person involved in the writing, editing or correcting the image or caption/abstract (Writer - Editor).
+!IPTCPANEL_CATEGORY;Category
+!IPTCPANEL_CATEGORYHINT;Identifies the subject of the image in the opinion of the provider (Category).
+!IPTCPANEL_CITY;City
+!IPTCPANEL_CITYHINT;City of image origin (City).
+!IPTCPANEL_COPYHINT;Copy IPTC settings to clipboard
+!IPTCPANEL_COPYRIGHT;Copyright
+!IPTCPANEL_COPYRIGHTHINT;Any necessary copyright notice (Copyright Notice).
+!IPTCPANEL_COUNTRY;Country
+!IPTCPANEL_COUNTRYHINT;The name of the country/primary location where the image was created (Country - Primary Location Name).
+!IPTCPANEL_CREDIT;Credit
+!IPTCPANEL_CREDITHINT;Identifies the provider of the image, not necessarily the owner/creator (Credit).
+!IPTCPANEL_EMBEDDED;Embedded
+!IPTCPANEL_EMBEDDEDHINT;Reset to IPTC data embedded in the image file
+!IPTCPANEL_HEADLINE;Headline
+!IPTCPANEL_HEADLINEHINT;A publishable entry providing a synopsis of the contents of the image (Headline).
+!IPTCPANEL_INSTRUCTIONS;Instructions
+!IPTCPANEL_INSTRUCTIONSHINT;Other editorial instructions concerning the use of the image (Special Instructions).
+!IPTCPANEL_KEYWORDS;Keywords
+!IPTCPANEL_KEYWORDSHINT;Used to indicate specific information retrieval words (Keywords).
+!IPTCPANEL_PASTEHINT;Paste IPTC settings from clipboard
+!IPTCPANEL_RESET;Reset
+!IPTCPANEL_RESETHINT;Reset to profile default
+!IPTCPANEL_SOURCE;Source
+!IPTCPANEL_SOURCEHINT;The original owner of the intellectual content of the image (Source).
+!IPTCPANEL_SUPPCATEGORIES;Suppl. Categories
+!IPTCPANEL_SUPPCATEGORIESHINT;Further refines the subject of the image (Supplemental Categories).
+!IPTCPANEL_TITLE;Title
+!IPTCPANEL_TITLEHINT;A shorthand reference for the image (Object Name).
+!IPTCPANEL_TRANSREFERENCE;Trans. Reference
+!IPTCPANEL_TRANSREFERENCEHINT;A code representing the location of original transmission (Original Transmission Reference).
+!MAIN_BUTTON_EXIT;Exit
+!MAIN_BUTTON_FULLSCREEN;Fullscreen
+!MAIN_BUTTON_PREFERENCES;Preferences
+!MAIN_BUTTON_PUTTOQUEUE;Put to queue
+!MAIN_BUTTON_PUTTOQUEUE_TOOLTIP;Add current image to processing queue Ctrl+Q
+!MAIN_BUTTON_QUEUE;Put to queue
+!MAIN_BUTTON_SAVE;Save Image
+!MAIN_BUTTON_SAVEAS;As...
+!MAIN_BUTTON_SAVE_TOOLTIP;Save current image Ctrl+S
+!MAIN_BUTTON_SENDTOEDITOR;Send to editor
+!MAIN_BUTTON_SENDTOEDITOR_TOOLTIP;Edit current image in external editor Ctrl+E
+!MAIN_BUTTON_UNFULLSCREEN;Exit fullscreen
+!MAIN_FRAME_BATCHQUEUE;Batch Queue
+!MAIN_FRAME_EDITOR;Editor
+!MAIN_FRAME_FILEBROWSER;File Browser
+!MAIN_FRAME_PLACES;Places
+!MAIN_FRAME_PLACES_ADD;Add
+!MAIN_FRAME_PLACES_DEL;Del
+!MAIN_FRAME_RECENT;Recent Folders
+!MAIN_MSG_ALREADYEXISTS;File already exists.
+!MAIN_MSG_CANNOTLOAD;Cannot load image
+!MAIN_MSG_CANNOTSAVE;File saving error
+!MAIN_MSG_CANNOTSTARTEDITOR;Can not start editor.
+!MAIN_MSG_CANNOTSTARTEDITOR_SECONDARY;Please set the correct path in the "Preferences" dialog.
+!MAIN_MSG_ERRORDURINGIMAGESAVING;Error during image saving
+!MAIN_MSG_EXITJOBSINQUEUEINFO;Unprocessed images in the queue will be lost on exit.
+!MAIN_MSG_EXITJOBSINQUEUEQUEST;Are you sure you want to exit? There are unprocessed images waiting in the queue.
+!MAIN_MSG_JOBSINQUEUE;job(s) in the queue
+!MAIN_MSG_NAVIGATOR;Navigator
+!MAIN_MSG_PLACES;Places
+!MAIN_MSG_QOVERWRITE;Do you want to overwrite it?
+!MAIN_TAB_BASIC;Basic
+!MAIN_TAB_DETAIL;Detail
+!MAIN_TAB_DEVELOP;Develop
+!MAIN_TAB_EXIF;Exif
+!MAIN_TAB_EXPOSURE;Exposure
+!MAIN_TAB_FILTER;Filter
+!MAIN_TAB_ICM;ICM
+!MAIN_TAB_IPTC;IPTC
+!MAIN_TAB_METADATA;Metadata
+!MAIN_TAB_RAW;RAW
+!MAIN_TAB_TAGGING;Tagging
+!MAIN_TAB_TRANSFORM;Transform
+!MAIN_TOGGLE_BEFORE_AFTER;B|A
+!MAIN_TOOLTIP_HIDEFP;Show/hide the bottom panel (directory and file browser) F
+!MAIN_TOOLTIP_HIDEHP;Show/hide the left panel (including the history) H
+!MAIN_TOOLTIP_INDCLIPPEDH;Clipped highlight indication (Key <)
+!MAIN_TOOLTIP_INDCLIPPEDS;Clipped shadow indication (Key >)
+!MAIN_TOOLTIP_PREFERENCES;Set preferences
+!MAIN_TOOLTIP_QINFO;Quick info on the image I
+!MAIN_TOOLTIP_SAVE;Save image to the default folder
+!MAIN_TOOLTIP_SAVEAS;Save image to a selected folder
+!MAIN_TOOLTIP_TOGGLE;Toggle before/after view B
+!NAVIGATOR_B_NA;B = n/a
+!NAVIGATOR_B_VALUE;B = %1
+!NAVIGATOR_G_NA;G = n/a
+!NAVIGATOR_G_VALUE;G = %1
+!NAVIGATOR_H_NA;H = n/a
+!NAVIGATOR_H_VALUE;H = %1
+!NAVIGATOR_LAB_A_NA;A = n/a
+!NAVIGATOR_LAB_A_VALUE;A = %1
+!NAVIGATOR_LAB_B_NA;B = n/a
+!NAVIGATOR_LAB_B_VALUE;B = %1
+!NAVIGATOR_LAB_L_NA;L = n/a
+!NAVIGATOR_LAB_L_VALUE;L = %1
+!NAVIGATOR_R_NA;R = n/a
+!NAVIGATOR_R_VALUE;R = %1
+!NAVIGATOR_S_NA;S = n/a
+!NAVIGATOR_S_VALUE;S = %1
+!NAVIGATOR_V_NA;V = n/a
+!NAVIGATOR_V_VALUE;V = %1
+!NAVIGATOR_XY_NA;x = n/a, y = n/a
+!PARTIALPASTE_BASICGROUP;Basic settings
+!PARTIALPASTE_CACORRECTION;C/A correction
+!PARTIALPASTE_COARSETRANS;90 deg rotation / flipping
+!PARTIALPASTE_COMPOSITIONGROUP;Composition settings
+!PARTIALPASTE_CROP;Crop
+!PARTIALPASTE_DIALOGLABEL;Partial paste processing profile
+!PARTIALPASTE_DISTORTION;Distortion correction
+!PARTIALPASTE_EXIFCHANGES;Changes to exif data
+!PARTIALPASTE_EXPOSURE;Exposure
+!PARTIALPASTE_HLRECOVERY;Highlight recovery
+!PARTIALPASTE_ICMSETTINGS;ICM settings
+!PARTIALPASTE_IPTCINFO;IPTC info
+!PARTIALPASTE_LABCURVE;Lab curve
+!PARTIALPASTE_LENSGROUP;Lens related settings
+!PARTIALPASTE_LUMADENOISE;Luminance noise reduction
+!PARTIALPASTE_LUMINANCEGROUP;Luminance related settings
+!PARTIALPASTE_METAICMGROUP;Metadata/ICM settings
+!PARTIALPASTE_RESIZE;Resize
+!PARTIALPASTE_ROTATION;Rotation
+!PARTIALPASTE_SHADOWSHIGHLIGHTS;Shadows/Highlights
+!PARTIALPASTE_SHARPENING;Sharpening
+!PARTIALPASTE_VIGNETTING;Vignetting correction
+!PARTIALPASTE_WHITEBALANCE;White balance
+!POPUPBUTTON_SELECTOPTIONHINT;RMB to change option
+!PREFERENCES_ADD;ADD
+!PREFERENCES_APPLNEXTSTARTUP;restart required
+!PREFERENCES_BATCH_PROCESSING;Batch Processing
+!PREFERENCES_BLINKCLIPPED;Blink clipped areas
+!PREFERENCES_CABLUE;CA Blue manual correction
+!PREFERENCES_CACHECLEARALL;Clear All
+!PREFERENCES_CACHECLEARPROFILES;Clear Profiles
+!PREFERENCES_CACHECLEARTHUMBS;Clear Thumbnails
+!PREFERENCES_CACHEFORMAT1;Proprietary (faster and better quality)
+!PREFERENCES_CACHEFORMAT2;JPEG (smaller disk footprint)
+!PREFERENCES_CACHEOPTS;Cache Options
+!PREFERENCES_CACHESTRAT1;Prefer Speed to Low Memory Consumption
+!PREFERENCES_CACHESTRAT2;Prefer Low Memory Consumption to Speed
+!PREFERENCES_CACHESTRAT;Cache Strategy
+!PREFERENCES_CACHETHUMBFORM;Cache Thumbnail Format
+!PREFERENCES_CACORRECTION;Apply CA auto correction
+!PREFERENCES_CARED;CA Red manual correction
+!PREFERENCES_CLIPPINGIND;Clipping indication
+!PREFERENCES_CMETRICINTENT;Colorimetric Intent
+!PREFERENCES_CUTOVERLAYBRUSH;Cut overlay brush
+!PREFERENCES_DARKFRAME;Dark frame
+!PREFERENCES_DATEFORMAT;Date Format
+!PREFERENCES_DATEFORMATHINT;You can use the following formatting strings:n%y : yearn%m : monthn%d : daynnFor example, the hungarian date format is:n%y/%m/%d
+!PREFERENCES_DCBENHANCE;Apply DCB enhancement step
+!PREFERENCES_DCBITERATIONS;Number of DCB iterations
+!PREFERENCES_DEFAULTLANG;Default language
+!PREFERENCES_DEFAULTTHEME;Default theme
+!PREFERENCES_DEMOSAICINGALGO;Demosaicing Algorithm
+!PREFERENCES_DIRDARKFRAMES;Dark frames directory
+!PREFERENCES_DIRHOME;Home directory
+!PREFERENCES_DIRLAST;Last visited directory
+!PREFERENCES_DIROTHER;Other
+!PREFERENCES_DIRSELECTDLG;Select Image Directory at Startup...
+!PREFERENCES_DIRSOFTWARE;Installation directory
+!PREFERENCES_DMETHOD;Method
+!PREFERENCES_EDITORCMDLINE;Other command line
+!PREFERENCES_EDITORLAYOUT;Editor Layout
+!PREFERENCES_EXTERNALEDITOR;External editor
+!PREFERENCES_FBROWSEROPTS;File Browser Options
+!PREFERENCES_FILEFORMAT;File format
+!PREFERENCES_FORIMAGE;For image files
+!PREFERENCES_FORRAW;For RAW files
+!PREFERENCES_GIMPPATH;GIMP installation directory
+!PREFERENCES_GREENEQUIL;Green equilibration
+!PREFERENCES_GTKTHEME;GTK default
+!PREFERENCES_HINT;Hint
+!PREFERENCES_HLTHRESHOLD;Threshold for clipped highlights
+!PREFERENCES_HOTDEADPIXFILT;Apply hot/dead pixel filter
+!PREFERENCES_ICCDIR;Directory of ICC profiles
+!PREFERENCES_IMPROCPARAMS;Default image processing parameters
+!PREFERENCES_INTENT_ABSOLUTE;Absolute Colorimetric
+!PREFERENCES_INTENT_PERCEPTUAL;Perceptual
+!PREFERENCES_INTENT_RELATIVE;Relative Colorimetric
+!PREFERENCES_INTENT_SATURATION;Saturation
+!PREFERENCES_LINEDENOISE;Line noise filter
+!PREFERENCES_LIVETHUMBNAILS;Live Thumbnails (slower)
+!PREFERENCES_MONITORICC;Monitor Profile
+!PREFERENCES_MULTITAB;Multiple tabs mode
+!PREFERENCES_MULTITABDUALMON;Multiple tabs mode, if available on second monitor
+!PREFERENCES_OUTDIR;Output Directory
+!PREFERENCES_OUTDIRFOLDER;Save to folder
+!PREFERENCES_OUTDIRFOLDERHINT;Put the saved images to the selected folder
+!PREFERENCES_OUTDIRHINT;You can use the following formatting strings:n%f, %d1, %d2, ..., %p1, %p2, ...nnThese formatting strings refer to the different parts of the photo's pathname.nnFor example, if the photo being processed has the following pathname:n/home/tom/photos/2010-10-31/dsc0042.nefnthe meaning of the formatting strings are:n%d4 = homen%d3 = tomn%d2 = photosn%d1 = 2010-10-31n%f = dsc0042n%p1 = /home/tom/photos/2010-10-31/n%p2 = /home/tom/photos/n%p3 = /home/tom/n%p4 = /home/nnIf you want to save the output image where the original is, write:n%p1/%fnnIf you want to save the output image in a directory named "converted" located in the directory of the opened image, write:n%p1/converted/%fnnIf you want to save the output image in a directory named "/home/tom/photos/converted/2010-10-31", write:n%p2/converted/%d1/%f
+!PREFERENCES_OUTDIRTEMPLATE;Use Template
+!PREFERENCES_OUTDIRTEMPLATEHINT;You can use the following formatting strings:n%f, %d1, %d2, ..., %p1, %p2, ...nnThese formatting strings refer to the different parts of the photo's pathname.nnFor example, if the photo being processed has the following pathname:n/home/tom/photos/2010-10-31/dsc0042.nefnthe meaning of the formatting strings are:n%d4 = homen%d3 = tomn%d2 = photosn%d1 = 2010-10-31n%f = dsc0042n%p1 = /home/tom/photos/2010-10-31/n%p2 = /home/tom/photos/n%p3 = /home/tom/n%p4 = /home/nnIf you want to save the output image where the original is, write:n%p1/%fnnIf you want to save the output image in a directory named "converted" located in the directory of the opened image, write:n%p1/converted/%fnnIf you want to save the output image in a directory named "/home/tom/photos/converted/2010-10-31", write:n%p2/converted/%d1/%f
+!PREFERENCES_OVERLAY_FILENAMES;Overlay filenames on thumbnails
+!PREFERENCES_OVERWRITEOUTPUTFILE;Overwrite existing output files
+!PREFERENCES_PARSEDEXT;Parsed Extensions
+!PREFERENCES_PARSEDEXTADD;Add Extension
+!PREFERENCES_PARSEDEXTADDHINT;Type an extension and press this button to append list
+!PREFERENCES_PARSEDEXTDELHINT;Delete selected extension from the list
+!PREFERENCES_PROFILEHANDLING;Processing Profile Handling
+!PREFERENCES_PROFILELOADPR;Profile Loading Priority
+!PREFERENCES_PROFILEPRCACHE;Profile in Cache
+!PREFERENCES_PROFILEPRFILE;Profile Next to the Input File
+!PREFERENCES_PROFILESAVECACHE;Save Processing Parameters to the Cache
+!PREFERENCES_PROFILESAVEINPUT;Save Processing Parameters Next to the Input File
+!PREFERENCES_PROPERTY;Property
+!PREFERENCES_PSPATH;Adobe Photoshop installation directory
+!PREFERENCES_SELECTFONT;Select font
+!PREFERENCES_SELECTICCDIRDLG;Select ICC Profile Directory...
+!PREFERENCES_SELECTLANG;Select language
+!PREFERENCES_SELECTMONITORPROFDLG;Select ICC Profile of the Display...
+!PREFERENCES_SELECTTHEME;Select theme
+!PREFERENCES_SET;SET
+!PREFERENCES_SHOWBASICEXIF;Show basic Exif info
+!PREFERENCES_SHOWDATETIME;Show date and time
+!PREFERENCES_SHOWONLYRAW;Show only RAW files
+!PREFERENCES_SHTHRESHOLD;Threshold for clipped shadows
+!PREFERENCES_SINGLETAB;Single tab mode
+!PREFERENCES_SINGLETABVERTAB;Single tab mode, vertical tabs
+!PREFERENCES_SND_BATCHQUEUEDONE;Batch queue done
+!PREFERENCES_SND_HELP;Either enter filepath or nothing (for no sound). On Windows use "SystemDefault", "SystemAsterisk" etc. for system sounds.
+!PREFERENCES_SND_LNGEDITPROCDONE;Editor processing done
+!PREFERENCES_SND_TRESHOLDSECS;after secs
+!PREFERENCES_STARTUPIMDIR;Image directory at startup
+!PREFERENCES_TAB_BROWSER;File Browser
+!PREFERENCES_TAB_GENERAL;General
+!PREFERENCES_TAB_IMPROC;Image Processing
+!PREFERENCES_TAB_OUTPUT;Output Options
+!PREFERENCES_TAB_SOUND;Sounds
+!PREFERENCES_THUMBSIZE;Thumbnail Size
+!PREFERENCES_USESYSTEMTHEME; Use System Theme
+!PREFERENCES_WORKFLOW;Workflow
+!PROFILEPANEL_FILEDLGFILTERANY;Any files
+!PROFILEPANEL_FILEDLGFILTERPP;Postprocessing profiles
+!PROFILEPANEL_LABEL;Postprocessing Profiles
+!PROFILEPANEL_LOADDLGLABEL;Load Postprocessing Parameters...
+!PROFILEPANEL_PCUSTOM;Custom
+!PROFILEPANEL_PFILE;From file
+!PROFILEPANEL_PLASTPHOTO;Last Photo
+!PROFILEPANEL_PLASTSAVED;Last Saved
+!PROFILEPANEL_PROFILE;Profile
+!PROFILEPANEL_SAVEDLGLABEL;Save Postprocessing Parameters...
+!PROFILEPANEL_TOOLTIPCOPY;Copy current profile to clipboard
+!PROFILEPANEL_TOOLTIPLOAD;Load a profile from file
+!PROFILEPANEL_TOOLTIPPASTE; Paste profile from clipboard
+!PROFILEPANEL_TOOLTIPSAVE;Save current profile
+!PROGRESSBAR_DECODING;Decoding raw file...
+!PROGRESSBAR_DEMOSAICING;Demosaicing...
+!PROGRESSBAR_LOADING;Loading Image...
+!PROGRESSBAR_LOADJPEG;Loading JPEG file...
+!PROGRESSBAR_LOADPNG;Loading PNG file...
+!PROGRESSBAR_LOADTIFF;Loading TIFF file...
+!PROGRESSBAR_PROCESSING;Processing Image...
+!PROGRESSBAR_READY;Ready.
+!PROGRESSBAR_SAVEJPEG;Saving JPEG file...
+!PROGRESSBAR_SAVEPNG;Saving PNG file...
+!PROGRESSBAR_SAVETIFF;Saving TIFF file...
+!PROGRESSDLG_LOADING;Loading file...
+!PROGRESSDLG_PROCESSING;Processing image...
+!PROGRESSDLG_PROFILECHANGEDINBROWSER;Profile changed in browser
+!PROGRESSDLG_SAVING;Saving file...
+!QINFO_FOCALLENGTH;Focal length
+!QINFO_ISO;ISO
+!QINFO_LENS;Lens
+!QINFO_NOEXIF;Exif data not available.
+!SAVEDLG_AUTOSUFFIX;Automatically add a suffix if the file already exists
+!SAVEDLG_FILEFORMAT;File format
+!SAVEDLG_JPEGQUAL;JPEG Quality
+!SAVEDLG_JPGFILTER;JPEG files
+!SAVEDLG_PNGCOMPR;PNG Compression
+!SAVEDLG_PNGFILTER;PNG files
+!SAVEDLG_PUTTOQUEUE;Put into processing queue
+!SAVEDLG_PUTTOQUEUEHEAD;Put to the head of the processing queue
+!SAVEDLG_PUTTOQUEUETAIL;Put to the end of the processing queue
+!SAVEDLG_SAVEIMMEDIATELY;Save immediately
+!SAVEDLG_SAVESPP;Save processing parameters with image
+!SAVEDLG_TIFFFILTER;TIFF files
+!SAVEDLG_TIFFUNCOMPRESSED;Uncompressed TIFF
+!TOOLBAR_TOOLTIP_CROP;Crop selection C
+!TOOLBAR_TOOLTIP_HAND;Hand tool N
+!TOOLBAR_TOOLTIP_STRAIGHTEN;Straight line selection S
+!TOOLBAR_TOOLTIP_WB;Spot white balance W
+!TP_CACORRECTION_BLUE;Blue
+!TP_CACORRECTION_LABEL;C/A Correction
+!TP_CACORRECTION_RED;Red
+!TP_CHMIXER_BLUE;Blue
+!TP_CHMIXER_GREEN;Green
+!TP_CHMIXER_LABEL;Channel Mixer
+!TP_CHMIXER_RED;Red
+!TP_COARSETRAF_DEGREE;degree:
+!TP_COARSETRAF_TOOLTIP_HFLIP;Flip horizontally
+!TP_COARSETRAF_TOOLTIP_ROTLEFT;Rotate left
+!TP_COARSETRAF_TOOLTIP_ROTRIGHT;Rotate right
+!TP_COARSETRAF_TOOLTIP_VFLIP;Flip vertically
+!TP_COLORBOOST_ACHANNEL;Channel "a"
+!TP_COLORBOOST_AMOUNT;Amount
+!TP_COLORBOOST_BCHANNEL;Channel "b"
+!TP_COLORBOOST_CHAB;a & b
+!TP_COLORBOOST_CHANNEL;Channel
+!TP_COLORBOOST_CHSEPARATE;separate
+!TP_COLORBOOST_ENABLESATLIMITER;Enable saturation limiter
+!TP_COLORBOOST_SATLIMIT;Saturation limit
+!TP_COLORDENOISE_EDGESENSITIVE;Edge Sensitive
+!TP_COLORDENOISE_EDGETOLERANCE;Edge Tolerance
+!TP_COLORDENOISE_RADIUS;Radius
+!TP_COLORSHIFT_BLUEYELLOW;Blue-Yellow
+!TP_COLORSHIFT_GREENMAGENTA;Green-Magenta
+!TP_CROP_DPI;DPI=
+!TP_CROP_FIXRATIO;Fix Ratio:
+!TP_CROP_GTDIAGONALS;Rule of diagonals
+!TP_CROP_GTGRID;Grid
+!TP_CROP_GTHARMMEANS1;Harmonic means 1
+!TP_CROP_GTHARMMEANS2;Harmonic means 2
+!TP_CROP_GTHARMMEANS3;Harmonic means 3
+!TP_CROP_GTHARMMEANS4;Harmonic means 4
+!TP_CROP_GTNONE;None
+!TP_CROP_GTRULETHIRDS;Rule of thirds
+!TP_CROP_GUIDETYPE;Guide Type:
+!TP_CROP_H;H
+!TP_CROP_LABEL;Crop
+!TP_CROP_SELECTCROP; Select Crop
+!TP_CROP_W;W
+!TP_CROP_X;x
+!TP_CROP_Y;y
+!TP_DEFRINGE_LABEL;Defringe
+!TP_DEFRINGE_RADIUS;Radius
+!TP_DEFRINGE_THRESHOLD;Threshold
+!TP_DETAIL_AMOUNT;Amount
+!TP_DIRPYRDENOISE_CHROMA;Chrominance
+!TP_DIRPYRDENOISE_GAMMA;Gamma
+!TP_DIRPYRDENOISE_LABEL;Noise reduction
+!TP_DIRPYRDENOISE_LUMA;Luminance
+!TP_DIRPYREQUALIZER_LABEL;Contrast by detail levels
+!TP_DIRPYREQUALIZER_LUMACOARSEST;Coarsest
+!TP_DIRPYREQUALIZER_LUMACONTRAST_MINUS;Contrast-
+!TP_DIRPYREQUALIZER_LUMACONTRAST_PLUS;Contrast+
+!TP_DIRPYREQUALIZER_LUMAFINEST;Finest
+!TP_DIRPYREQUALIZER_LUMANEUTRAL;Neutral
+!TP_DIRPYREQUALIZER_THRESHOLD;Threshold
+!TP_DISTORTION_AMOUNT;Amount
+!TP_DISTORTION_LABEL;Distortion
+!TP_EQUALIZER_CONTRAST_MINUS;Contrast-
+!TP_EQUALIZER_CONTRAST_PLUS;Contrast+
+!TP_EQUALIZER_FINEST;finest
+!TP_EQUALIZER_LABEL;Wavelet equalizer
+!TP_EQUALIZER_LARGEST;coarsest
+!TP_EQUALIZER_NEUTRAL;Neutral
+!TP_EXPOSURE_AUTOLEVELS;Auto Levels
+!TP_EXPOSURE_BLACKLEVEL;Black
+!TP_EXPOSURE_BRIGHTNESS;Brightness
+!TP_EXPOSURE_CLIP;Clip
+!TP_EXPOSURE_COMPRHIGHLIGHTS;Highlight recovery
+!TP_EXPOSURE_COMPRSHADOWS;Shadow recovery
+!TP_EXPOSURE_CONTRAST;Contrast
+!TP_EXPOSURE_CURVEEDITOR;Tone Curve
+!TP_EXPOSURE_EXPCOMP;Exp. Comp.
+!TP_EXPOSURE_LABEL;Exposure
+!TP_EXPOSURE_SATURATION;Saturation
+!TP_HLREC_CIELAB;CIELab Blending
+!TP_HLREC_LABEL;Highlight Reconstruction
+!TP_HLREC_LUMINANCE;Luminance Recovery
+!TP_HLREC_METHOD;Method:
+!TP_HSVEQUALIZER1;Red
+!TP_HSVEQUALIZER2;Yellow
+!TP_HSVEQUALIZER3;Lime
+!TP_HSVEQUALIZER4;Green
+!TP_HSVEQUALIZER5;Aqua
+!TP_HSVEQUALIZER6;Blue
+!TP_HSVEQUALIZER7;Purple
+!TP_HSVEQUALIZER8;Magenta
+!TP_HSVEQUALIZER_CHANNEL;HSV Channel
+!TP_HSVEQUALIZER_HUE;Hue
+!TP_HSVEQUALIZER_LABEL;HSV Equalizer
+!TP_HSVEQUALIZER_NEUTRAL;Neutral
+!TP_HSVEQUALIZER_SAT;Saturation
+!TP_HSVEQUALIZER_VAL;Value
+!TP_ICM_FILEDLGFILTERANY;Any files
+!TP_ICM_FILEDLGFILTERICM;ICC Profile Files
+!TP_ICM_GAMMABEFOREINPUT;Profile applies Gamma
+!TP_ICM_INPUTCAMERA;Camera default
+!TP_ICM_INPUTCUSTOM;Custom
+!TP_ICM_INPUTDLGLABEL;Select Input ICC Profile...
+!TP_ICM_INPUTEMBEDDED;Use Embedded, if possible
+!TP_ICM_INPUTNONE;No profile
+!TP_ICM_INPUTPROFILE;Input Profile
+!TP_ICM_LABEL;ICM
+!TP_ICM_NOICM;No ICM: sRGB output
+!TP_ICM_OUTPUTDLGLABEL;Select Output ICC Profile...
+!TP_ICM_OUTPUTPROFILE;Output Profile
+!TP_ICM_SAVEREFERENCE;Save reference image for profiling
+!TP_ICM_WORKINGPROFILE;Working Profile
+!TP_IMPULSEDENOISE_LABEL;Impulse Noise Reduction
+!TP_IMPULSEDENOISE_THRESH;Threshold
+!TP_LABCURVE_BRIGHTNESS;Brightness
+!TP_LABCURVE_CONTRAST;Contrast
+!TP_LABCURVE_CURVEEDITOR;Luminance Curve
+!TP_LABCURVE_LABEL;Lab Curves
+!TP_LABCURVE_SATURATION;Saturation
+!TP_LENSGEOM_AUTOCROP;Auto Crop
+!TP_LENSGEOM_FILL;Auto Fill
+!TP_LENSGEOM_LABEL;Lens / Geometry
+!TP_LUMADENOISE_EDGETOLERANCE;Edge Tolerance
+!TP_LUMADENOISE_LABEL;Luminance Noise Reduction
+!TP_LUMADENOISE_RADIUS;Radius
+!TP_PERSPECTIVE_HORIZONTAL;Horizontal
+!TP_PERSPECTIVE_LABEL;Perspective
+!TP_PERSPECTIVE_VERTICAL;Vertical
+!TP_PREPROCESS_DARKFRAME;Dark frame
+!TP_PREPROCESS_DFAUTOSELECT;Auto selection
+!TP_RAWPANEL_DEMOSAICING;Demosaicing
+!TP_RAWPANEL_PREPROCESSING;Preprocessing
+!TP_RESIZE_APPLIESTO;Applies to:
+!TP_RESIZE_BICUBIC;Bicubic
+!TP_RESIZE_BICUBICSF;Bicubic (Softer)
+!TP_RESIZE_BICUBICSH;Bicubic (Sharper)
+!TP_RESIZE_BILINEAR;Bilinear
+!TP_RESIZE_CROPPEDAREA;Cropped area
+!TP_RESIZE_DOWNSCALEB;Downscale (Better)
+!TP_RESIZE_DOWNSCALEF;Downscale (Faster)
+!TP_RESIZE_FITBOX;Bounding box
+!TP_RESIZE_FULLIMAGE;Full image
+!TP_RESIZE_FULLSIZE;Full Image Size:
+!TP_RESIZE_H;H:
+!TP_RESIZE_HEIGHT;Height
+!TP_RESIZE_LABEL;Resize
+!TP_RESIZE_LANCZOS;Lanczos
+!TP_RESIZE_METHOD;Method:
+!TP_RESIZE_NEAREST;Nearest
+!TP_RESIZE_SCALE;Scale
+!TP_RESIZE_SPECIFY;Specify:
+!TP_RESIZE_W;W:
+!TP_RESIZE_WIDTH;Width
+!TP_ROTATE_DEGREE;Degree
+!TP_ROTATE_LABEL;Rotate
+!TP_ROTATE_SELECTLINE; Select Straight Line
+!TP_SHADOWSHLIGHTS_HIGHLIGHTS;Highlights
+!TP_SHADOWSHLIGHTS_HLTONALW;Tonal Width for Highlights
+!TP_SHADOWSHLIGHTS_LABEL;Shadows/Highlights
+!TP_SHADOWSHLIGHTS_LOCALCONTR;Local Contrast
+!TP_SHADOWSHLIGHTS_RADIUS;Radius
+!TP_SHADOWSHLIGHTS_SHADOWS;Shadows
+!TP_SHADOWSHLIGHTS_SHTONALW;Tonal Width for Shadows
+!TP_SHARPENING_AMOUNT;Amount
+!TP_SHARPENING_EDRADIUS;Radius
+!TP_SHARPENING_EDTOLERANCE;Edge tolerance
+!TP_SHARPENING_HALOCONTROL;Halo control
+!TP_SHARPENING_HCAMOUNT;Amount
+!TP_SHARPENING_LABEL;Sharpening
+!TP_SHARPENING_METHOD;Method
+!TP_SHARPENING_ONLYEDGES;Sharpen only edges
+!TP_SHARPENING_RADIUS;Radius
+!TP_SHARPENING_RLD;RL Deconvolution
+!TP_SHARPENING_RLD_AMOUNT;Amount
+!TP_SHARPENING_RLD_DAMPING;Damping
+!TP_SHARPENING_RLD_ITERATIONS;Iterations
+!TP_SHARPENING_THRESHOLD;Threshold
+!TP_SHARPENING_USM;Unsharp Mask
+!TP_VIGNETTING_AMOUNT;Amount
+!TP_VIGNETTING_CENTER;Center
+!TP_VIGNETTING_CENTER_X;Center X
+!TP_VIGNETTING_CENTER_Y;Center Y
+!TP_VIGNETTING_LABEL;Vignetting Correction
+!TP_VIGNETTING_RADIUS;Radius
+!TP_VIGNETTING_STRENGTH;Strength
+!TP_WBALANCE_AUTO;Auto
+!TP_WBALANCE_CAMERA;Camera
+!TP_WBALANCE_CUSTOM;Custom
+!TP_WBALANCE_GREEN;Tint
+!TP_WBALANCE_LABEL;White Balance
+!TP_WBALANCE_METHOD;Method
+!TP_WBALANCE_SIZE;Size:
+!TP_WBALANCE_SPOTWB;Spot WB
+!TP_WBALANCE_TEMPERATURE;Temperature
+!ZOOMBAR_DETAIL;Detail
+!ZOOMBAR_HUGE;Huge
+!ZOOMBAR_LARGE;Large
+!ZOOMBAR_NORMAL;Normal
+!ZOOMBAR_PREVIEW;Preview
+!ZOOMBAR_SCALE;Scale
+!ZOOMBAR_SMALL;Small
+!ZOOMPANEL_100;(100%)
+!ZOOMPANEL_NEWCROPWINDOW;Open (new) detail window
+!ZOOMPANEL_ZOOM100;Zoom to 100% 1
+!ZOOMPANEL_ZOOMFITSCREEN;Fit to screen F
+!ZOOMPANEL_ZOOMIN;Zoom In +
+!ZOOMPANEL_ZOOMOUT;Zoom Out -
diff --git a/rtdata/languages/English (US) b/rtdata/languages/English (US)
index 6cd613d7e..d49b23f8d 100644
--- a/rtdata/languages/English (US)
+++ b/rtdata/languages/English (US)
@@ -692,7 +692,7 @@
!TP_ICM_SAVEREFERENCE;Save reference image for profiling
!TP_ICM_WORKINGPROFILE;Working Profile
!TP_IMPULSEDENOISE_LABEL;Impulse Noise Reduction
-!TP_IMPULSEDENOISE_THRESH;Threshold
+!TP_IMPULSEDENOISE_THRESH;Impulse NR Threshold
!TP_LABCURVE_BRIGHTNESS;Brightness
!TP_LABCURVE_CONTRAST;Contrast
!TP_LABCURVE_CURVEEDITOR;Luminance Curve
diff --git a/rtdata/languages/Euskara b/rtdata/languages/Euskara
index 83673a5cb..ff255ae8c 100644
--- a/rtdata/languages/Euskara
+++ b/rtdata/languages/Euskara
@@ -766,7 +766,7 @@ ZOOMBAR_SMALL;Txikia
!TP_HSVEQUALIZER_VAL;Value
!TP_ICM_INPUTNONE;No profile
!TP_IMPULSEDENOISE_LABEL;Impulse Noise Reduction
-!TP_IMPULSEDENOISE_THRESH;Threshold
+!TP_IMPULSEDENOISE_THRESH;Impulse NR Threshold
!TP_LABCURVE_BRIGHTNESS;Brightness
!TP_LABCURVE_CONTRAST;Contrast
!TP_LABCURVE_CURVEEDITOR;Luminance Curve
diff --git a/rtdata/languages/Greek b/rtdata/languages/Greek
index 92abd4cf5..4859558be 100644
--- a/rtdata/languages/Greek
+++ b/rtdata/languages/Greek
@@ -764,7 +764,7 @@ ZOOMBAR_SMALL;Μικρό
!TP_HSVEQUALIZER_VAL;Value
!TP_ICM_INPUTNONE;No profile
!TP_IMPULSEDENOISE_LABEL;Impulse Noise Reduction
-!TP_IMPULSEDENOISE_THRESH;Threshold
+!TP_IMPULSEDENOISE_THRESH;Impulse NR Threshold
!TP_LABCURVE_BRIGHTNESS;Brightness
!TP_LABCURVE_CONTRAST;Contrast
!TP_LABCURVE_CURVEEDITOR;Luminance Curve
diff --git a/rtdata/languages/Hebrew b/rtdata/languages/Hebrew
index b25825ba6..a22bc7786 100644
--- a/rtdata/languages/Hebrew
+++ b/rtdata/languages/Hebrew
@@ -765,7 +765,7 @@ ZOOMBAR_SMALL;קטן
!TP_HSVEQUALIZER_VAL;Value
!TP_ICM_INPUTNONE;No profile
!TP_IMPULSEDENOISE_LABEL;Impulse Noise Reduction
-!TP_IMPULSEDENOISE_THRESH;Threshold
+!TP_IMPULSEDENOISE_THRESH;Impulse NR Threshold
!TP_LABCURVE_BRIGHTNESS;Brightness
!TP_LABCURVE_CONTRAST;Contrast
!TP_LABCURVE_CURVEEDITOR;Luminance Curve
diff --git a/rtdata/languages/Italian b/rtdata/languages/Italian
index 15f8a3d81..341be7719 100644
--- a/rtdata/languages/Italian
+++ b/rtdata/languages/Italian
@@ -297,7 +297,7 @@ IPTCPANEL_HEADLINE;Intestazione
IPTCPANEL_HEADLINEHINT;Una didascalia pubblicabile che esprime una sinossi del contenuto dell'immagine (Headline).
IPTCPANEL_INSTRUCTIONS;Istruzioni
IPTCPANEL_INSTRUCTIONSHINT;Altre istruzioni editoriali riguardanti l'uso dell'immagine (Special Instructions).
-IPTCPANEL_KEYWORDS;Parole Chiave
+IPTCPANEL_KEYWORDS;Parole ChiaveSchwellwert
IPTCPANEL_KEYWORDSHINT;Usate per indicare parole emblematiche per il recupero di informazioni specifiche (Keywords).
IPTCPANEL_PASTEHINT;Incolla le impostazioni IPTC dagli appunti
IPTCPANEL_PROVINCE;Provincia
diff --git a/rtdata/languages/Japanese b/rtdata/languages/Japanese
index 4e5c15cbb..8da8b1b32 100644
--- a/rtdata/languages/Japanese
+++ b/rtdata/languages/Japanese
@@ -793,3 +793,5 @@ ZOOMPANEL_ZOOMOUT;ズームアウト
!PREFERENCES_SND_LNGEDITPROCDONE;Editor processing done
!PREFERENCES_SND_TRESHOLDSECS;after secs
!PREFERENCES_TAB_SOUND;Sounds
+!PREFERENCES_SINGLETABVERTAB;Single tab mode, vertical tabs
+!TP_CROP_GTGRID;Grid
diff --git a/rtdata/languages/Latvian b/rtdata/languages/Latvian
index 63fe431bc..a6ea0ec9f 100644
--- a/rtdata/languages/Latvian
+++ b/rtdata/languages/Latvian
@@ -764,7 +764,7 @@ ZOOMBAR_SMALL;Mazs
!TP_HSVEQUALIZER_VAL;Value
!TP_ICM_INPUTNONE;No profile
!TP_IMPULSEDENOISE_LABEL;Impulse Noise Reduction
-!TP_IMPULSEDENOISE_THRESH;Threshold
+!TP_IMPULSEDENOISE_THRESH;Impulse NR Threshold
!TP_LABCURVE_BRIGHTNESS;Brightness
!TP_LABCURVE_CONTRAST;Contrast
!TP_LABCURVE_CURVEEDITOR;Luminance Curve
diff --git a/rtdata/languages/Norsk BM b/rtdata/languages/Norsk BM
index 1e68ffe71..d8fdd9893 100644
--- a/rtdata/languages/Norsk BM
+++ b/rtdata/languages/Norsk BM
@@ -765,7 +765,7 @@ ZOOMBAR_SMALL;Liten
!TP_HSVEQUALIZER_VAL;Value
!TP_ICM_INPUTNONE;No profile
!TP_IMPULSEDENOISE_LABEL;Impulse Noise Reduction
-!TP_IMPULSEDENOISE_THRESH;Threshold
+!TP_IMPULSEDENOISE_THRESH;Impulse NR Threshold
!TP_LABCURVE_BRIGHTNESS;Brightness
!TP_LABCURVE_CONTRAST;Contrast
!TP_LABCURVE_CURVEEDITOR;Luminance Curve
diff --git a/rtdata/languages/Polish b/rtdata/languages/Polish
index 184b5f6e0..f2e86c051 100644
--- a/rtdata/languages/Polish
+++ b/rtdata/languages/Polish
@@ -769,7 +769,7 @@ ZOOMBAR_SMALL;Mała
!TP_HSVEQUALIZER_VAL;Value
!TP_ICM_INPUTNONE;No profile
!TP_IMPULSEDENOISE_LABEL;Impulse Noise Reduction
-!TP_IMPULSEDENOISE_THRESH;Threshold
+!TP_IMPULSEDENOISE_THRESH;Impulse NR Threshold
!TP_LABCURVE_BRIGHTNESS;Brightness
!TP_LABCURVE_CONTRAST;Contrast
!TP_LABCURVE_CURVEEDITOR;Luminance Curve
diff --git a/rtdata/languages/Polish (Latin Characters) b/rtdata/languages/Polish (Latin Characters)
index 7eb988f81..35eeb1afd 100644
--- a/rtdata/languages/Polish (Latin Characters)
+++ b/rtdata/languages/Polish (Latin Characters)
@@ -768,7 +768,7 @@ ZOOMBAR_SMALL;Mala
!TP_HSVEQUALIZER_VAL;Value
!TP_ICM_INPUTNONE;No profile
!TP_IMPULSEDENOISE_LABEL;Impulse Noise Reduction
-!TP_IMPULSEDENOISE_THRESH;Threshold
+!TP_IMPULSEDENOISE_THRESH;Impulse NR Threshold
!TP_LABCURVE_BRIGHTNESS;Brightness
!TP_LABCURVE_CONTRAST;Contrast
!TP_LABCURVE_CURVEEDITOR;Luminance Curve
diff --git a/rtdata/languages/Portugues (Brasil) b/rtdata/languages/Portugues (Brasil)
index 20d7233a2..1e99bc3bc 100644
--- a/rtdata/languages/Portugues (Brasil)
+++ b/rtdata/languages/Portugues (Brasil)
@@ -765,7 +765,7 @@ ZOOMBAR_SMALL;Pequeno
!TP_HSVEQUALIZER_VAL;Value
!TP_ICM_INPUTNONE;No profile
!TP_IMPULSEDENOISE_LABEL;Impulse Noise Reduction
-!TP_IMPULSEDENOISE_THRESH;Threshold
+!TP_IMPULSEDENOISE_THRESH;Impulse NR Threshold
!TP_LABCURVE_BRIGHTNESS;Brightness
!TP_LABCURVE_CONTRAST;Contrast
!TP_LABCURVE_CURVEEDITOR;Luminance Curve
diff --git a/rtdata/languages/Russian b/rtdata/languages/Russian
index 8f07cab56..78c878b59 100644
--- a/rtdata/languages/Russian
+++ b/rtdata/languages/Russian
@@ -772,6 +772,7 @@ ZOOMPANEL_ZOOMOUT;Удалить -
!HISTORY_MSG_104;HSV Equalizer
!HISTORY_MSG_108;Resize bounding box
!HISTORY_MSG_109;Resizing applies to
+!MAIN_FRAME_EDITOR;Editor
!NAVIGATOR_B_NA;B = n/a
!NAVIGATOR_B_VALUE;B = %1
!NAVIGATOR_G_NA;G = n/a
@@ -796,6 +797,8 @@ ZOOMPANEL_ZOOMOUT;Удалить -
!PREFERENCES_SND_LNGEDITPROCDONE;Editor processing done
!PREFERENCES_SND_TRESHOLDSECS;after secs
!PREFERENCES_TAB_SOUND;Sounds
+!PREFERENCES_SINGLETABVERTAB;Single tab mode, vertical tabs
+!TP_CROP_GTGRID;Grid
!TP_HSVEQUALIZER_CHANNEL;HSV Channel
!TP_HSVEQUALIZER_HUE;Hue
!TP_HSVEQUALIZER_LABEL;HSV Equalizer
diff --git a/rtdata/languages/Suomi b/rtdata/languages/Suomi
index 24f2d6a62..d837e3b83 100644
--- a/rtdata/languages/Suomi
+++ b/rtdata/languages/Suomi
@@ -765,7 +765,7 @@ ZOOMBAR_SMALL;Pieni
!TP_HSVEQUALIZER_VAL;Value
!TP_ICM_INPUTNONE;No profile
!TP_IMPULSEDENOISE_LABEL;Impulse Noise Reduction
-!TP_IMPULSEDENOISE_THRESH;Threshold
+!TP_IMPULSEDENOISE_THRESH;Impulse NR Threshold
!TP_LABCURVE_BRIGHTNESS;Brightness
!TP_LABCURVE_CONTRAST;Contrast
!TP_LABCURVE_CURVEEDITOR;Luminance Curve
diff --git a/rtdata/languages/Swedish b/rtdata/languages/Swedish
index 9f63bf4dc..77f468992 100644
--- a/rtdata/languages/Swedish
+++ b/rtdata/languages/Swedish
@@ -802,3 +802,6 @@ ZOOMPANEL_ZOOMOUT;Förminska. Kortkommando: -
!!!!!!!!!!!!!!!!!!!!!!!!!
+!MAIN_FRAME_EDITOR;Editor
+!PREFERENCES_SINGLETABVERTAB;Single tab mode, vertical tabs
+!TP_CROP_GTGRID;Grid
diff --git a/rtdata/languages/Turkish b/rtdata/languages/Turkish
index 088b265d5..91f5e38b2 100644
--- a/rtdata/languages/Turkish
+++ b/rtdata/languages/Turkish
@@ -765,7 +765,7 @@ ZOOMBAR_SMALL;Küçük
!TP_HSVEQUALIZER_VAL;Value
!TP_ICM_INPUTNONE;No profile
!TP_IMPULSEDENOISE_LABEL;Impulse Noise Reduction
-!TP_IMPULSEDENOISE_THRESH;Threshold
+!TP_IMPULSEDENOISE_THRESH;Impulse NR Threshold
!TP_LABCURVE_BRIGHTNESS;Brightness
!TP_LABCURVE_CONTRAST;Contrast
!TP_LABCURVE_CURVEEDITOR;Luminance Curve
diff --git a/rtdata/languages/default b/rtdata/languages/default
index d591ab16f..1680c21a2 100644
--- a/rtdata/languages/default
+++ b/rtdata/languages/default
@@ -685,7 +685,7 @@ TP_ICM_OUTPUTPROFILE;Output Profile
TP_ICM_SAVEREFERENCE;Save reference image for profiling
TP_ICM_WORKINGPROFILE;Working Profile
TP_IMPULSEDENOISE_LABEL;Impulse Noise Reduction
-TP_IMPULSEDENOISE_THRESH;Threshold
+TP_IMPULSEDENOISE_THRESH;Impulse NR Threshold
TP_LABCURVE_BRIGHTNESS;Brightness
TP_LABCURVE_CONTRAST;Contrast
TP_LABCURVE_CURVEEDITOR;Luminance Curve
diff --git a/rtdata/options/options.win b/rtdata/options/options.win
index e66fe81c9..9fa08b938 100644
--- a/rtdata/options/options.win
+++ b/rtdata/options/options.win
@@ -107,7 +107,7 @@ FixRatio=true
DPI=600
[Color Management]
-ICCDirectory=
+ICCDirectory=C:\\WINDOWS\\System32\\spool\\drivers\\color
MonitorProfile=
Intent=1
diff --git a/rtengine/CA_correct_RT.cc b/rtengine/CA_correct_RT.cc
index cef4e5171..f9b6a6daa 100644
--- a/rtengine/CA_correct_RT.cc
+++ b/rtengine/CA_correct_RT.cc
@@ -153,9 +153,9 @@ void RawImageSource::CA_correct_RT(double cared, double cablue) {
//temporary parameters for tile CA evaluation
float gdiff, deltgrb;
//interpolated G at edge of plaquette
- float Ginthfloor, Ginthceil, Gint, RBint, gradwt;
+ float Ginthfloor, Ginthceil, Gint, gradwt;
//interpolated color difference at edge of plaquette
- float grbdiffinthfloor, grbdiffinthceil, grbdiffint, grbdiffold;
+ float grbdiffint, grbdiffold;
//data for evaluation of block CA shift variance
float blockave[2][3]={{0,0,0},{0,0,0}}, blocksqave[2][3]={{0,0,0},{0,0,0}}, blockdenom[2][3]={{0,0,0},{0,0,0}}, blockvar[2][3];
//low and high pass 1D filters of G in vertical/horizontal directions
@@ -790,36 +790,21 @@ void RawImageSource::CA_correct_RT(double cared, double cablue) {
grbdiffold = rgb[indx][1]-rgb[indx][c];
- //interpolate color difference from optical R/B locations to grid locations
- grbdiffinthfloor=(1-shifthfrac[c]/2)*grbdiff[indx]+(shifthfrac[c]/2)*grbdiff[indx-2*GRBdir[1][c]];
- grbdiffinthceil=(1-shifthfrac[c]/2)*grbdiff[(rr-2*GRBdir[0][c])*TS+cc]+(shifthfrac[c]/2)*grbdiff[(rr-2*GRBdir[0][c])*TS+cc-2*GRBdir[1][c]];
- //grbdiffint is bilinear interpolation of G-R/G-B at grid point
- grbdiffint=(1-shiftvfrac[c]/2)*grbdiffinthfloor+(shiftvfrac[c]/2)*grbdiffinthceil;
+ //gradient weights using difference from G at CA shift points and G at grid points
+ p[0]=1/(eps+fabs(rgb[indx][1]-gshift[indx]));
+ p[1]=1/(eps+fabs(rgb[indx][1]-gshift[indx-2*GRBdir[1][c]]));
+ p[2]=1/(eps+fabs(rgb[indx][1]-gshift[(rr-2*GRBdir[0][c])*TS+cc]));
+ p[3]=1/(eps+fabs(rgb[indx][1]-gshift[(rr-2*GRBdir[0][c])*TS+cc-2*GRBdir[1][c]]));
+
+ grbdiffint = (p[0]*grbdiff[indx]+p[1]*grbdiff[indx-2*GRBdir[1][c]]+ \
+ p[2]*grbdiff[(rr-2*GRBdir[0][c])*TS+cc]+p[3]*grbdiff[(rr-2*GRBdir[0][c])*TS+cc-2*GRBdir[1][c]])/(p[0]+p[1]+p[2]+p[3]);
//now determine R/B at grid points using interpolated color differences and interpolated G value at grid point
- RBint=rgb[indx][1]-grbdiffint;
-
- if (fabs(RBint-rgb[indx][c])<0.25*(RBint+rgb[indx][c])) {
- if (fabs(grbdiffold)>fabs(grbdiffint) ) {
- rgb[indx][c]=RBint;
- }
- } else {
-
- //gradient weights using difference from G at CA shift points and G at grid points
- p[0]=1/(eps+fabs(rgb[indx][1]-gshift[indx]));
- p[1]=1/(eps+fabs(rgb[indx][1]-gshift[indx-2*GRBdir[1][c]]));
- p[2]=1/(eps+fabs(rgb[indx][1]-gshift[(rr-2*GRBdir[0][c])*TS+cc]));
- p[3]=1/(eps+fabs(rgb[indx][1]-gshift[(rr-2*GRBdir[0][c])*TS+cc-2*GRBdir[1][c]]));
-
- grbdiffint = (p[0]*grbdiff[indx]+p[1]*grbdiff[indx-2*GRBdir[1][c]]+ \
- p[2]*grbdiff[(rr-2*GRBdir[0][c])*TS+cc]+p[3]*grbdiff[(rr-2*GRBdir[0][c])*TS+cc-2*GRBdir[1][c]])/(p[0]+p[1]+p[2]+p[3]);
-
- //now determine R/B at grid points using interpolated color differences and interpolated G value at grid point
- if (fabs(grbdiffold)>fabs(grbdiffint) ) {
- rgb[indx][c]=rgb[indx][1]-grbdiffint;
- }
+ if (fabs(grbdiffold)>fabs(grbdiffint) ) {
+ rgb[indx][c]=rgb[indx][1]-grbdiffint;
}
+
//if color difference interpolation overshot the correction, just desaturate
if (grbdiffold*grbdiffint<0) {
rgb[indx][c]=rgb[indx][1]-0.5*(grbdiffold+grbdiffint);
diff --git a/rtengine/dcraw.patch b/rtengine/dcraw.patch
index d803744d7..277749066 100644
--- a/rtengine/dcraw.patch
+++ b/rtengine/dcraw.patch
@@ -1,6 +1,6 @@
---- dcraw.c 2010-11-11 08:44:21.000000000 -0700
-+++ dcraw.cc 2010-12-29 12:57:16.000000000 -0700
-@@ -1,3 +1,12 @@
+--- dcraw.c Sun Dec 12 19:32:29 2010
++++ dcraw.cc Fri Dec 31 12:10:25 2010
+@@ -1,5 +1,14 @@
+/*RT*/#include
+/*RT*/#include
+/*RT*/#undef MAX
@@ -13,7 +13,11 @@
/*
dcraw.c -- Dave Coffin's raw photo decoder
Copyright 1997-2010 by Dave Coffin, dcoffin a cybercom o net
-@@ -96,11 +105,12 @@
+
+ This is a command-line ANSI C program to convert raw photos from
+@@ -94,15 +103,16 @@
+
+ #define ushort UshORt
typedef unsigned char uchar;
typedef unsigned short ushort;
@@ -27,7 +31,11 @@
FILE *ifp, *ofp;
short order;
const char *ifname;
-@@ -128,13 +138,13 @@
+ char *meta_data;
+ char cdesc[5], desc[512], make[64], model[64], model2[64], artist[64];
+@@ -126,17 +136,17 @@
+ int half_size=0, four_color_rgb=0, document_mode=0, highlight=0;
+ int verbose=0, use_auto_wb=0, use_camera_wb=0, use_camera_matrix=-1;
int output_color=1, output_bps=8, output_tiff=0, med_passes=0;
int no_auto_bright=0;
unsigned greybox[4] = { 0, 0, UINT_MAX, UINT_MAX };
@@ -44,7 +52,11 @@
void (*write_thumb)(), (*write_fun)();
void (*load_raw)(), (*thumb_load_raw)();
jmp_buf failure;
-@@ -152,8 +162,8 @@
+
+ struct decode {
+@@ -150,12 +160,12 @@
+
+ struct ph1 {
int format, key_off, black, black_off, split_col, tag_21a;
float tag_210;
} ph1;
@@ -55,7 +67,11 @@
#define FORC(cnt) for (c=0; c < cnt; c++)
#define FORC3 FORC(3)
-@@ -271,6 +281,7 @@
+ #define FORC4 FORC(4)
+ #define FORCC FORC(colors)
+@@ -269,10 +279,11 @@
+ fprintf (stderr,_("Unexpected end of file\n"));
+ else
fprintf (stderr,_("Corrupt data near 0x%llx\n"), (INT64) ftello(ifp));
}
data_error++;
@@ -63,7 +79,11 @@
}
ushort CLASS sget2 (uchar *s)
-@@ -344,7 +355,7 @@
+ {
+ if (order == 0x4949) /* "II" means little-endian */
+@@ -342,11 +353,11 @@
+
+ void CLASS read_shorts (ushort *pixel, int count)
{
if (fread (pixel, 2, count, ifp) < count) derror();
if ((order == 0x4949) == (ntohs(0x1234) == 0x1234))
@@ -72,7 +92,11 @@
}
void CLASS canon_600_fixed_wb (int temp)
-@@ -536,10 +547,10 @@
+ {
+ static const short mul[4][5] = {
+@@ -534,14 +545,14 @@
+
+ /*
getbits(-1) initializes the buffer
getbits(n) where 0 <= n <= 25 returns an n-bit integer
*/
@@ -86,7 +110,11 @@
unsigned c;
if (nbits == -1)
-@@ -1286,7 +1297,7 @@
+ return bitbuf = vbits = reset = 0;
+ if (nbits == 0 || vbits < 0) return 0;
+@@ -1284,11 +1295,11 @@
+ }
+ }
free (pixel);
}
@@ -95,7 +123,11 @@
void CLASS ppm_thumb()
{
-@@ -1561,10 +1572,10 @@
+ char *thumb;
+ thumb_length = thumb_width*thumb_height*3;
+@@ -1559,14 +1570,14 @@
+ }
+ free (pixel);
phase_one_correct();
}
@@ -109,7 +141,11 @@
unsigned c;
if (nbits == -1)
-@@ -1690,7 +1701,7 @@
+ return bitbuf = vbits = 0;
+ if (nbits == 0) return 0;
+@@ -1688,11 +1699,11 @@
+ maximum = 0xffff;
+ raw_color = 1;
}
}
@@ -118,7 +154,11 @@
void CLASS sinar_4shot_load_raw()
{
-@@ -1826,10 +1837,10 @@
+ ushort *pixel;
+ unsigned shot, row, col, r, c;
+@@ -1824,14 +1835,14 @@
+ free (data);
+ if (top_margin) black /= top_margin * width;
maximum = 0x3ff;
}
@@ -132,7 +172,11 @@
int byte;
if (!nbits) return vbits=0;
-@@ -2118,11 +2129,11 @@
+ if (!vbits) {
+ fread (buf+load_flags, 1, 0x4000-load_flags, ifp);
+@@ -2116,15 +2127,15 @@
+ #else
+
METHODDEF(boolean)
fill_input_buffer (j_decompress_ptr cinfo)
{
@@ -146,7 +190,11 @@
cinfo->src->next_input_byte = jpeg_buffer;
cinfo->src->bytes_in_buffer = nbytes;
return TRUE;
-@@ -2394,9 +2405,9 @@
+ }
+
+@@ -2392,13 +2403,13 @@
+ for (col=0; col < width; col++)
+ read_shorts (image[row*width+col], colors);
maximum = (1 << (thumb_misc & 31)) - 1;
}
@@ -158,7 +206,11 @@
if (start) {
for (p=0; p < 4; p++)
-@@ -2643,7 +2654,7 @@
+ pad[p] = key = key * 48828125 + 1;
+ pad[3] = pad[3] << 1 | (pad[0]^pad[2]) >> 31;
+@@ -2641,11 +2652,11 @@
+
+ /* RESTRICTED code starts here */
void CLASS foveon_decoder (unsigned size, unsigned code)
{
@@ -167,7 +219,11 @@
struct decode *cur;
int i, len;
-@@ -4327,7 +4338,7 @@
+ if (!code) {
+ for (i=0; i < size; i++)
+@@ -4325,11 +4336,11 @@
+ if (tag == tlen) thumb_length = get4();
+ fseek (ifp, save, SEEK_SET);
}
}
@@ -176,7 +232,11 @@
void CLASS parse_makernote (int base, int uptag)
{
-@@ -4452,7 +4463,7 @@
+ static const uchar xlat[2][256] = {
+ { 0xc1,0xbf,0x6d,0x0d,0x59,0xc5,0x13,0x9d,0x83,0x61,0x6b,0x4f,0xc7,0x7f,0x3d,0x3d,
+@@ -4450,11 +4461,11 @@
+ cam_mul[0] = getreal(type);
+ cam_mul[2] = getreal(type);
}
if (tag == 0xd && type == 7 && get2() == 0xaaaa) {
fread (buf97, 1, sizeof buf97, ifp);
@@ -185,7 +245,11 @@
if (i < 70 && buf97[i] < 3)
flip = "065"[buf97[i]]-'0';
}
-@@ -4821,8 +4832,8 @@
+ if (tag == 0x10 && type == 4)
+ unique_id = get4();
+@@ -4819,12 +4830,12 @@
+ if (tag == 64020) height = (getint(type)+1) & -2;
+ fseek (ifp, save, SEEK_SET);
}
}
@@ -196,7 +260,11 @@
int CLASS parse_tiff_ifd (int base)
{
-@@ -4836,7 +4847,7 @@
+ unsigned entries, tag, type, len, plen=16, save;
+ int ifd, use_cm=0, cfa, i, j, c, ima_len=0;
+@@ -4834,11 +4845,11 @@
+ double cc[4][4], cm[4][3], cam_xyz[4][3], num;
+ double ab[]={ 1,1,1,1 }, asn[] = { 0,0,0,0 }, xyz[] = { 1,1,1 };
unsigned sony_curve[] = { 0,0,0,0,0,4095 };
unsigned *buf, sony_offset=0, sony_length=0, sony_key=0;
struct jhead jh;
@@ -205,7 +273,11 @@
if (tiff_nifds >= sizeof tiff_ifd / sizeof tiff_ifd[0])
return 1;
-@@ -5254,12 +5265,13 @@
+ ifd = tiff_nifds++;
+ for (j=0; j < 4; j++)
+@@ -5252,16 +5263,17 @@
+ if (sony_length && (buf = (unsigned *) malloc(sony_length))) {
+ fseek (ifp, sony_offset, SEEK_SET);
fread (buf, sony_length, 1, ifp);
sony_decrypt (buf, sony_length/4, 1, sony_key);
sfp = ifp;
@@ -224,7 +296,11 @@
ifp = sfp;
free (buf);
}
-@@ -5284,6 +5296,8 @@
+ for (i=0; i < colors; i++)
+ FORCC cc[i][c] *= ab[i];
+@@ -5282,10 +5294,12 @@
+
+ int CLASS parse_tiff (int base)
{
int doff;
@@ -233,7 +309,11 @@
fseek (ifp, base, SEEK_SET);
order = get2();
if (order != 0x4949 && order != 0x4d4d) return 0;
-@@ -5458,7 +5472,7 @@
+ get2();
+ while ((doff = get4())) {
+@@ -5456,11 +5470,11 @@
+ */
+ void CLASS parse_external_jpeg()
{
const char *file, *ext;
char *jname, *jfile, *jext;
@@ -242,7 +322,11 @@
ext = strrchr (ifname, '.');
file = strrchr (ifname, '/');
-@@ -5486,7 +5500,8 @@
+ if (!file) file = strrchr (ifname, '\\');
+ if (!file) file = ifname-1;
+@@ -5484,11 +5498,12 @@
+ break;
+ }
*jext = '0';
}
if (strcmp (jname, ifname)) {
@@ -252,7 +336,11 @@
if (verbose)
fprintf (stderr,_("Reading metadata from %s ...\n"), jname);
parse_tiff (12);
-@@ -5824,7 +5839,11 @@
+ thumb_offset = 0;
+ is_raw = 1;
+@@ -5822,11 +5837,15 @@
+ raw_width = get2();
+ }
order = get2();
hlen = get4();
if (get4() == 0x48454150) /* "HEAP" */
@@ -265,7 +353,11 @@
if (parse_tiff (save+6)) apply_tiff();
fseek (ifp, save+len, SEEK_SET);
}
-@@ -6845,6 +6864,12 @@
+ return 1;
+ }
+@@ -6843,17 +6862,25 @@
+ hlen = get4();
+ fseek (ifp, 0, SEEK_SET);
fread (head, 1, 32, ifp);
fseek (ifp, 0, SEEK_END);
flen = fsize = ftell(ifp);
@@ -278,7 +370,7 @@
if ((cp = (char *) memmem (head, 32, "MMMM", 4)) ||
(cp = (char *) memmem (head, 32, "IIII", 4))) {
parse_phase_one (cp-head);
-@@ -6852,6 +6877,8 @@
+ if (cp-head && parse_tiff(0)) apply_tiff();
} else if (order == 0x4949 || order == 0x4d4d) {
if (!memcmp (head+6,"HEAPCCDR",8)) {
data_offset = hlen;
@@ -287,7 +379,11 @@
parse_ciff (hlen, flen - hlen);
} else if (parse_tiff(0)) apply_tiff();
} else if (!memcmp (head,"\xff\xd8\xff\xe1",4) &&
-@@ -6893,6 +6920,7 @@
+ !memcmp (head+6,"Exif",4)) {
+ fseek (ifp, 4, SEEK_SET);
+@@ -6891,10 +6918,11 @@
+ parse_fuji (i);
+ }
fseek (ifp, 100, SEEK_SET);
parse_tiff (data_offset = get4());
parse_tiff (thumb_offset+12);
@@ -295,7 +391,11 @@
apply_tiff();
} else if (!memcmp (head,"RIFF",4)) {
fseek (ifp, 0, SEEK_SET);
-@@ -7331,6 +7359,9 @@
+ parse_riff();
+ } else if (!memcmp (head,"\0\001\0\001\0@",6)) {
+@@ -7329,10 +7357,13 @@
+ cam_mul[0] *= 256/527.0;
+ cam_mul[2] *= 256/317.0;
} else if (!strcmp(model,"D1X")) {
width -= 4;
pixel_aspect = 0.5;
@@ -305,7 +405,11 @@
} else if (!strcmp(model,"D40X") ||
!strcmp(model,"D60") ||
!strcmp(model,"D80") ||
-@@ -7548,7 +7579,7 @@
+ !strcmp(model,"D3000")) {
+ height -= 3;
+@@ -7546,11 +7577,11 @@
+ } else if (!strcmp(model,"*ist D")) {
+ data_error = -1;
} else if (!strcmp(model,"*ist DS")) {
height -= 2;
} else if (!strcmp(model,"K-x")) {
@@ -314,7 +418,11 @@
filters = 0x16161616;
} else if (!strcmp(model,"Optio S")) {
if (fsize == 3178560) {
-@@ -8560,13 +8591,13 @@
+ height = 1540;
+ width = 2064;
+@@ -8558,17 +8589,17 @@
+ for (col=0; col < width; col++, soff += cstep)
+ if (output_bps == 8)
FORCC ppm [col*colors+c] = curve[image[soff][c]] >> 8;
else FORCC ppm2[col*colors+c] = curve[image[soff][c]];
if (output_bps == 16 && !output_tiff && htons(0x55aa) != 0x55aa)
@@ -330,7 +438,11 @@
{
int arg, status=0;
int timestamp_only=0, thumbnail_only=0, identify_only=0;
-@@ -8679,7 +8710,7 @@
+ int user_qual=-1, user_black=-1, user_sat=-1, user_flip=-1;
+ int use_fuji_rotate=1, write_to_stdout=0, quality, i, c;
+@@ -8677,11 +8708,11 @@
+ case 'z': timestamp_only = 1; break;
+ case 'e': thumbnail_only = 1; break;
case 'i': identify_only = 1; break;
case 'c': write_to_stdout = 1; break;
case 'v': verbose = 1; break;
@@ -339,7 +451,11 @@
case 'f': four_color_rgb = 1; break;
case 'A': FORC4 greybox[c] = atoi(argv[arg++]);
case 'a': use_auto_wb = 1; break;
-@@ -8943,3 +8974,4 @@
+ case 'w': use_camera_wb = 1; break;
+ case 'M': use_camera_matrix = (opm == '+'); break;
+@@ -8941,5 +8972,6 @@
+ else shot_select = 0;
+ }
}
return status;
}
diff --git a/rtengine/dfmanager.cc b/rtengine/dfmanager.cc
index 9db8cdec9..60e8bce84 100644
--- a/rtengine/dfmanager.cc
+++ b/rtengine/dfmanager.cc
@@ -23,6 +23,7 @@
#include
#include
#include
+#include
#include
namespace rtengine{
@@ -194,7 +195,7 @@ void dfInfo::updateBadPixelList( RawImage *df )
}
}
if( settings->verbose ){
- printf( "Extracted %zu pixels from darkframe %s\n", badPixels.size(),df->get_filename().c_str() );
+ std::cout << "Extracted " << badPixels.size() << " pixels from darkframe:" << df->get_filename().c_str() << std::endl;
}
}
diff --git a/rtengine/rawimagesource.cc b/rtengine/rawimagesource.cc
index c54691dd1..3a3b725be 100644
--- a/rtengine/rawimagesource.cc
+++ b/rtengine/rawimagesource.cc
@@ -28,7 +28,7 @@
#include
#include
#include
-
+#include
#ifdef _OPENMP
#include
@@ -860,7 +860,7 @@ void RawImageSource::preprocess (const RAWParams &raw)
for(std::list::iterator iter = bp->begin(); iter != bp->end(); iter++,totBP++)
bitmapBads[ widthBitmap * (iter->y) + (iter->x)/8] |= 1<<(iter->x%8);
if( settings->verbose ){
- printf( "Correcting %zu pixels from .badpixels\n",bp->size());
+ std::cout << "Correcting " << bp->size() << " pixels from .badpixels" << std::endl;
}
}
bp = 0;
@@ -872,7 +872,7 @@ void RawImageSource::preprocess (const RAWParams &raw)
for(std::list::iterator iter = bp->begin(); iter != bp->end(); iter++,totBP++)
bitmapBads[ widthBitmap *iter->y + iter->x/8] |= 1<<(iter->x%8);
if( settings->verbose && bp->size()>0){
- printf( "Correcting %zu hotpixels from darkframe\n",bp->size());
+ std::cout << "Correcting " << bp->size() << " hotpixels from darkframe" << std::endl;
}
}
diff --git a/rtengine/rawimagesource.h b/rtengine/rawimagesource.h
index 7f1668795..faffd3b5c 100644
--- a/rtengine/rawimagesource.h
+++ b/rtengine/rawimagesource.h
@@ -148,39 +148,39 @@ class RawImageSource : public ImageSource {
inline void interpolate_row_rb (unsigned short* ar, unsigned short* ab, unsigned short* pg, unsigned short* cg, unsigned short* ng, int i);
inline void interpolate_row_rb_mul_pp (unsigned short* ar, unsigned short* ab, unsigned short* pg, unsigned short* cg, unsigned short* ng, int i, double r_mul, double g_mul, double b_mul, int x1, int width, int skip);
- int LinEqSolve( int nDim, float* pfMatr, float* pfVect, float* pfSolution);//Emil's CA auto correction
- void CA_correct_RT (double cared, double cablue);
- int cfaCleanFromMap( BYTE* bitmapBads );
- int findHotDeadPixel( BYTE *bpMap, float thresh);
- void ddct8x8s(int isgn, float **a);
+ int LinEqSolve( int nDim, float* pfMatr, float* pfVect, float* pfSolution);//Emil's CA auto correction
+ void CA_correct_RT (double cared, double cablue);
+ int cfaCleanFromMap( BYTE* bitmapBads );
+ int findHotDeadPixel( BYTE *bpMap, float thresh);
+ void ddct8x8s(int isgn, float **a);
- void cfa_linedn (float linenoiselevel);//Emil's line denoise
+ void cfa_linedn (float linenoiselevel);//Emil's line denoise
- void green_equilibrate (float greenthresh);//Emil's green equilibration
+ void green_equilibrate (float greenthresh);//Emil's green equilibration
void nodemosaic();
void eahd_demosaic();
void hphd_demosaic();
void vng4_demosaic();
- void amaze_demosaic_RT(int winx, int winy, int winw, int winh);//Emil's code for AMaZE
- void fast_demo(int winx, int winy, int winw, int winh);//Emil's code for fast demosaicing
+ void amaze_demosaic_RT(int winx, int winy, int winw, int winh);//Emil's code for AMaZE
+ void fast_demo(int winx, int winy, int winw, int winh);//Emil's code for fast demosaicing
void dcb_demosaic(int iterations, int dcb_enhance);
void ahd_demosaic(int winx, int winy, int winw, int winh);
void border_interpolate(int border, ushort (*image)[4], int start = 0, int end = 0);
- void dcb_initTileLimits(int &colMin, int &rowMin, int &colMax, int &rowMax, int x0, int y0, int border);
- void fill_raw( ushort (*cache )[4], int x0, int y0, ushort** rawData);
- void fill_border( ushort (*cache )[4], int border, int x0, int y0);
- void copy_to_buffer(ushort (*image2)[3], ushort (*image)[4]);
- void dcb_hid(ushort (*image)[4], ushort (*bufferH)[3], ushort (*bufferV)[3], int x0, int y0);
- void dcb_color(ushort (*image)[4], int x0, int y0);
- void dcb_hid2(ushort (*image)[4], int x0, int y0);
- void dcb_map(ushort (*image)[4], int x0, int y0);
- void dcb_correction(ushort (*image)[4], int x0, int y0);
- void dcb_pp(ushort (*image)[4], int x0, int y0);
- void dcb_correction2(ushort (*image)[4], int x0, int y0);
- void restore_from_buffer(ushort (*image)[4], ushort (*image2)[3]);
- void dcb_refinement(ushort (*image)[4], int x0, int y0);
- void dcb_color_full(ushort (*image)[4], int x0, int y0, float (*chroma)[2]);
+ void dcb_initTileLimits(int &colMin, int &rowMin, int &colMax, int &rowMax, int x0, int y0, int border);
+ void fill_raw( ushort (*cache )[4], int x0, int y0, ushort** rawData);
+ void fill_border( ushort (*cache )[4], int border, int x0, int y0);
+ void copy_to_buffer(ushort (*image2)[3], ushort (*image)[4]);
+ void dcb_hid(ushort (*image)[4], ushort (*bufferH)[3], ushort (*bufferV)[3], int x0, int y0);
+ void dcb_color(ushort (*image)[4], int x0, int y0);
+ void dcb_hid2(ushort (*image)[4], int x0, int y0);
+ void dcb_map(ushort (*image)[4], int x0, int y0);
+ void dcb_correction(ushort (*image)[4], int x0, int y0);
+ void dcb_pp(ushort (*image)[4], int x0, int y0);
+ void dcb_correction2(ushort (*image)[4], int x0, int y0);
+ void restore_from_buffer(ushort (*image)[4], ushort (*image2)[3]);
+ void dcb_refinement(ushort (*image)[4], int x0, int y0);
+ void dcb_color_full(ushort (*image)[4], int x0, int y0, float (*chroma)[2]);
void transLine (unsigned short* red, unsigned short* green, unsigned short* blue, int i, Image16* image, int tran, int imw, int imh, int fw);
void hflip (Image16* im);
diff --git a/rtengine/rtthumbnail.cc b/rtengine/rtthumbnail.cc
index c096782b3..aefb6e2e5 100644
--- a/rtengine/rtthumbnail.cc
+++ b/rtengine/rtthumbnail.cc
@@ -282,10 +282,10 @@ Thumbnail* Thumbnail::loadFromRaw (const Glib::ustring& fname, RawMetaDataLocati
else
skip = (ri->get_FujiWidth()/sqrt(0.5) - firstgreen - 1) / w;
}else{
- if (fixwh == 1) // fix height, scale width
- skip = (ri->get_height() - firstgreen - 1) / h;
- else
- skip = (ri->get_width() - firstgreen - 1) / w;
+ if (fixwh == 1) // fix height, scale width
+ skip = (ri->get_height() - firstgreen - 1) / h;
+ else
+ skip = (ri->get_width() - firstgreen - 1) / w;
}
if (skip % 2)
skip--;
diff --git a/rtgui/options.cc b/rtgui/options.cc
index d491cba38..afb6a3796 100644
--- a/rtgui/options.cc
+++ b/rtgui/options.cc
@@ -134,8 +134,11 @@ void Options::setDefaults () {
rtSettings.dualThreadEnabled = true;
rtSettings.darkFramesPath = "";
-
+#ifdef WIN32
+ rtSettings.iccDirectory = "C:/WINDOWS/System32/spool/drivers/color";
+#else
rtSettings.iccDirectory = "/usr/share/color/icc";
+#endif
rtSettings.colorimetricIntent = 1;
rtSettings.monitorProfile = "";
rtSettings.verbose = false;
diff --git a/rtgui/popupcommon.cc b/rtgui/popupcommon.cc
index ce85f7c75..b2a110f1c 100644
--- a/rtgui/popupcommon.cc
+++ b/rtgui/popupcommon.cc
@@ -116,7 +116,7 @@ void PopUpCommon::entrySelected (int i) {
}
/*
- * Set the button image with the selected item
+ * Set the button image with the selected item
*/
bool PopUpCommon::setSelected (int entryNum) {
if (entryNum < 0 || entryNum > (int)images.size()-1 || (int)entryNum == selected)
diff --git a/rtgui/profilestore.cc b/rtgui/profilestore.cc
index ade8aee01..7cefa4ca1 100644
--- a/rtgui/profilestore.cc
+++ b/rtgui/profilestore.cc
@@ -65,7 +65,8 @@ void ProfileStore::parseDir (const Glib::ustring& pdir) {
if (!safe_file_test (fname, Glib::FILE_TEST_IS_DIR)) {
int lastdot = sname.find_last_of ('.');
if (lastdot!=Glib::ustring::npos && lastdot<=sname.size()-4 && !sname.casefold().compare (lastdot, 4, paramFileExtension)) {
- printf ("Processing file %s...\n", fname.c_str());
+ if( options.rtSettings.verbose )
+ printf ("Processing file %s...\n", fname.c_str());
Glib::ustring name = sname.substr(0,lastdot);
if (pparams.find(name)!=pparams.end()) {
delete pparams[name];
diff --git a/rtgui/safegtk.cc b/rtgui/safegtk.cc
new file mode 100644
index 000000000..bc54ddde2
--- /dev/null
+++ b/rtgui/safegtk.cc
@@ -0,0 +1,213 @@
+/*
+ * This file is part of RawTherapee.
+ *
+ * Copyright (c) 2004-2010 Gabor Horvath
+ * Copyright (c) 2010 Sasha Vasko
+ *
+ * RawTherapee is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * RawTherapee is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with RawTherapee. If not, see .
+ */
+
+#include
+#include
+
+Glib::RefPtr safe_create_from_file(const std::string& filename)
+{
+ Glib::RefPtr res;
+#ifdef GLIBMM_EXCEPTIONS_ENABLED
+ try {
+ res = Gdk::Pixbuf::create_from_file (filename);
+ }
+ catch (Glib::Exception& ex) {
+ printf ("%s\n", ex.what().c_str());
+ }
+#else
+ std::auto_ptr error;
+ res = Gdk::Pixbuf::create_from_file (filename, error);
+ if (error.get())
+ printf ("%s\n", error->what().c_str());
+#endif
+
+ return res;
+}
+
+Cairo::RefPtr safe_create_from_png(const std::string& filename)
+{
+ Cairo::RefPtr res;
+
+ if (!Glib::file_test (filename, Glib::FILE_TEST_EXISTS)) {
+ printf ("ERROR: File \"%s\" not found.\n", filename.c_str());
+ } else {
+ try {
+ res = Cairo::ImageSurface::create_from_png (filename);
+ } catch (...) {}
+ }
+
+ return res;
+}
+
+Glib::RefPtr safe_query_file_info (Glib::RefPtr &file)
+{
+ Glib::RefPtr info;
+#ifdef GLIBMM_EXCEPTIONS_ENABLED
+ try { info = file->query_info(); }catch (...) { }
+#else
+ std::auto_ptr error;
+ info = file->query_info("*", Gio::FILE_QUERY_INFO_NONE, error);
+#endif
+ return info;
+}
+
+#ifdef GLIBMM_EXCEPTIONS_ENABLED
+# define SAFE_ENUMERATOR_CODE_START \
+ do{try { if ((dirList = dir->enumerate_children ())) \
+ for (Glib::RefPtr info = dirList->next_file(); info; info = dirList->next_file()) {
+
+# define SAFE_ENUMERATOR_CODE_END \
+ }} catch (Glib::Exception& ex) { printf ("%s\n", ex.what().c_str()); }}while(0)
+#else
+# define SAFE_ENUMERATOR_CODE_START \
+ do{std::auto_ptr error; Glib::RefPtr cancellable; \
+ if ((dirList = dir->enumerate_children (cancellable, "*", Gio::FILE_QUERY_INFO_NONE, error))) \
+ for (Glib::RefPtr info = dirList->next_file(cancellable, error); !error.get() && info; info = dirList->next_file(cancellable, error)) {
+
+# define SAFE_ENUMERATOR_CODE_END } if (error.get()) printf ("%s\n", error->what().c_str());}while (0)
+#endif
+
+void safe_build_file_list (Glib::RefPtr &dir, std::vector &flist)
+{
+ Glib::RefPtr dirList;
+ if (dir) {
+ SAFE_ENUMERATOR_CODE_START
+ flist.push_back (FileMTimeInfo (removeExtension(info->get_name()), info->modification_time()));
+ SAFE_ENUMERATOR_CODE_END;
+ }
+}
+
+void safe_build_file_list (Glib::RefPtr &dir, std::vector &names, const Glib::ustring &directory)
+{
+ Glib::RefPtr dirList;
+ if (dir) {
+ SAFE_ENUMERATOR_CODE_START
+ names.push_back (Glib::build_filename (directory, info->get_name()));
+ SAFE_ENUMERATOR_CODE_END;
+ }
+}
+
+
+void safe_build_subdir_list (Glib::RefPtr &dir, std::vector &subDirs, bool add_hidden)
+{
+ Glib::RefPtr dirList;
+ if (dir)
+ {
+ // CD-ROMs with no drive inserted are reported, but do not exist, causing RT to crash
+ if (!Glib::file_test(dir->get_path(),Glib::FILE_TEST_EXISTS)) return;
+
+ SAFE_ENUMERATOR_CODE_START
+ if (info->get_file_type() == Gio::FILE_TYPE_DIRECTORY && (!info->is_hidden() || add_hidden))
+ subDirs.push_back (info->get_name());
+ SAFE_ENUMERATOR_CODE_END;
+ }
+}
+
+Glib::ustring safe_locale_to_utf8 (const std::string& src)
+{
+ Glib::ustring utf8_str;
+#ifdef GLIBMM_EXCEPTIONS_ENABLED
+ try {
+ utf8_str = Glib::locale_to_utf8(src);
+ }
+ catch (const Glib::ConvertError& e) {
+ utf8_str = Glib::convert_with_fallback(src, "UTF8", "LATIN1","?");
+ }
+#else
+ {
+ std::auto_ptr error;
+ utf8_str = locale_to_utf8(src, error);
+ if (error.get())
+ utf8_str = Glib::convert_with_fallback(src, "UTF8", "LATIN1","?", error);
+ }
+#endif //GLIBMM_EXCEPTIONS_ENABLED
+ return utf8_str;
+}
+
+std::string safe_locale_from_utf8 (const Glib::ustring& utf8_str)
+{
+ std::string str;
+#ifdef GLIBMM_EXCEPTIONS_ENABLED
+ try {
+ str = Glib::locale_from_utf8(utf8_str);
+ }
+ catch (const Glib::ConvertError& e) {
+ //str = Glib::convert_with_fallback(utf8_str, "LATIN1", "UTF8", "?");
+ }
+#else
+ {
+ std::auto_ptr error;
+ str = Glib::locale_from_utf8(utf8_str, error);
+ /*if (error.get())
+ {str = Glib::convert_with_fallback(utf8_str, "LATIN1", "UTF8", "?", error);}*/
+ }
+#endif //GLIBMM_EXCEPTIONS_ENABLED
+ return str;
+}
+
+
+bool safe_spawn_command_line_async (const Glib::ustring& cmd_utf8)
+{
+ std::string cmd;
+ bool success = false;
+#ifdef GLIBMM_EXCEPTIONS_ENABLED
+ try {
+ cmd = Glib::filename_from_utf8(cmd_utf8);
+ printf ("command line: |%s|\n", cmd.c_str());
+ Glib::spawn_command_line_async (cmd);
+ success = true;
+ } catch (Glib::Exception& ex) {
+ printf ("%s\n", ex.what().c_str());
+ }
+#else
+ std::auto_ptr error;
+ cmd = Glib::filename_from_utf8(cmd_utf8, error);
+ if (!error.get()) {
+ printf ("command line: |%s|\n", cmd.c_str());
+ Glib::spawn_command_line_async (cmd, error);
+ }
+ if (error.get())
+ printf ("%s\n", error->what().c_str());
+ else
+ success = true;
+#endif
+ return success;
+}
+
+bool safe_spawn_command_line_sync (const Glib::ustring& cmd_utf8)
+{
+ std::string cmd;
+ std::string stdOut;
+ std::string stdErr;
+
+ bool success = false;
+
+ int exitStatus=-1;
+ try {
+ cmd = Glib::filename_from_utf8(cmd_utf8);
+ printf ("command line: |%s|\n", cmd.c_str());
+
+ // if it crashes here on windows, make sure you have the GTK runtime files gspawn-win32-helper*.exe files in RT directory
+ Glib::spawn_command_line_sync (cmd,NULL,NULL, &exitStatus);
+ } catch (Glib::Exception& ex) {
+ printf ("%s\n", ex.what().c_str());
+ }
+ return (exitStatus==0);
+}
diff --git a/rtgui/thumbbrowserentrybase.cc b/rtgui/thumbbrowserentrybase.cc
index b98932deb..b48e75293 100644
--- a/rtgui/thumbbrowserentrybase.cc
+++ b/rtgui/thumbbrowserentrybase.cc
@@ -286,8 +286,8 @@ void ThumbBrowserEntryBase::resize (int h) {
if (width