From 0343b0fb7d9d33278af7e408d3a6d7e474335f9f Mon Sep 17 00:00:00 2001 From: Helmi bin Ibrahim Date: Mon, 7 Sep 2015 02:22:27 +0800 Subject: [PATCH 1/3] Updated instructions compile on OSX --- COMPILE.txt | 34 +++++++++++++++++++++++++--------- 1 file changed, 25 insertions(+), 9 deletions(-) diff --git a/COMPILE.txt b/COMPILE.txt index ca92350d8..938e10358 100644 --- a/COMPILE.txt +++ b/COMPILE.txt @@ -134,7 +134,7 @@ WINDOWS - CMake http://www.cmake.org/cmake/resources/software.html Use "Windows (Win32 Installer)", the newest version. - + - >=GTK+ 2.24.18 http://hexchat.github.io/gtk-win32/ @@ -459,14 +459,18 @@ OS X - XCode Development Tools (you only need a subset of these, but it is probably easier to just install all of them) - MacPorts + - Add following line to /opt/local/etc/macports/variants.conf: + +no_gnome +no_x11 +quartz -x11 - To install the dependencies, run: - sudo port install cairo +quartz -x11 pango +quartz -x11 gdk-pixbuf2 -x11 gtk2 +quartz libsigcxx2 gtk-osx-application +no_python - - gtkmm port will fail to install. Use `-s’ option. - sudo port -s install gtkmm + sudo port install cairo pango gdk-pixbuf2 gtk2 libsigcxx2 gtk-osx-application-gtk2 gtkmm - To install other dependencies and tools. - sudo port install gtk-engines2 lcms2 libiptcdata fftw-3-single cmake gcc47 - - If you don't already have Mercurial installed, run: - sudo port install mercurial + sudo port install gtk-engines2 lcms2 libiptcdata fftw-3-single cmake + - Install compiler, either + sudo port install gcc47 + or + Clang with OpenMP by follow instructions at https://clang-omp.github.io/ + - If you don't already have Git installed, run: + sudo port install git COMPILE @@ -474,9 +478,21 @@ OS X - Make build directory. mkdir build cd build - - To enable OpenMP, assuming you have installed gcc47), type: + - To enable OpenMP, for gcc47, type: cmake -D CMAKE_C_COMPILER=gcc-mp-4.7 -D CMAKE_CXX_COMPILER=g++-mp-4.7 \ + - or if using Clang with OpenMP + cmake -v -D CMAKE_BUILD_TYPE=Release \ + -DPROC_TARGET_NUMBER="1" \ + -DBUILD_BUNDLE="ON" \ + -DBINDIR="." \ + -DDATADIR="." \ + -DCACHE_NAME_SUFFIX=4 \ + -DCMAKE_C_COMPILER="/Users/helmi/www/clang/build_llvm/bin/clang" \ + -DCMAKE_CXX_COMPILER="/Users/helmi/www/clang/build_llvm/bin/clang++" \ + -DCMAKE_C_FLAGS="-I/opt/local/include/libomp" \ + -DCMAKE_CXX_FLAGS="-I/opt/local/include/libomp" \ + If you want to upload a build, you should set some additional information about your processor. There are two possibilities: @@ -492,7 +508,7 @@ OS X PROC_LABEL parameter (see point 1 righ above). - Type: - make install + make -j4 install - Type: make macosx_bundle - You will find a disk image in the build directory; this is the From baf6bea1a44eb778077a85db8e5cf0a9a8f44a04 Mon Sep 17 00:00:00 2001 From: Helmi bin Ibrahim Date: Mon, 7 Sep 2015 02:26:05 +0800 Subject: [PATCH 2/3] remove user dir --- COMPILE.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/COMPILE.txt b/COMPILE.txt index 938e10358..9b16c1f79 100644 --- a/COMPILE.txt +++ b/COMPILE.txt @@ -488,8 +488,8 @@ OS X -DBINDIR="." \ -DDATADIR="." \ -DCACHE_NAME_SUFFIX=4 \ - -DCMAKE_C_COMPILER="/Users/helmi/www/clang/build_llvm/bin/clang" \ - -DCMAKE_CXX_COMPILER="/Users/helmi/www/clang/build_llvm/bin/clang++" \ + -DCMAKE_C_COMPILER="/tmp/clang/build_llvm/bin/clang" \ + -DCMAKE_CXX_COMPILER="/tmp/clang/build_llvm/bin/clang++" \ -DCMAKE_C_FLAGS="-I/opt/local/include/libomp" \ -DCMAKE_CXX_FLAGS="-I/opt/local/include/libomp" \ From f7afe06d8b34dd03268db5fb820f816c86c77af6 Mon Sep 17 00:00:00 2001 From: heckflosse Date: Sun, 13 Sep 2015 17:40:02 +0200 Subject: [PATCH 3/3] Changed default delay for adjusters from 0 to 200 ms --- rtgui/adjuster.cc | 3 +-- rtgui/bayerpreprocess.cc | 8 +++--- rtgui/bayerprocess.cc | 12 ++++----- rtgui/bayerrawexposure.cc | 16 ++++++------ rtgui/blackwhite.cc | 44 -------------------------------- rtgui/colorappearance.cc | 52 +++++++++++++++++++------------------- rtgui/flatfield.cc | 8 +++--- rtgui/icmpanel.cc | 8 +++--- rtgui/options.cc | 14 +++++++--- rtgui/options.h | 3 ++- rtgui/preprocess.cc | 4 +-- rtgui/rawcacorrection.cc | 8 +++--- rtgui/rawexposure.cc | 8 +++--- rtgui/rawprocess.cc | 12 ++++----- rtgui/sharpenedge.cc | 8 +++--- rtgui/sharpenmicro.cc | 8 +++--- rtgui/thresholdadjuster.cc | 3 +-- rtgui/vibrance.cc | 3 --- rtgui/xtransprocess.cc | 4 +-- rtgui/xtransrawexposure.cc | 12 ++++----- 20 files changed, 98 insertions(+), 140 deletions(-) diff --git a/rtgui/adjuster.cc b/rtgui/adjuster.cc index c47f27e2e..bbd6e76cf 100644 --- a/rtgui/adjuster.cc +++ b/rtgui/adjuster.cc @@ -50,8 +50,7 @@ Adjuster::Adjuster (Glib::ustring vlabel, double vmin, double vmax, double vstep vStep = vstep; addMode = false; - // TODO: let the user chose the default value of Adjuster::delay, for slow machines - delay = options.adjusterDelay; // delay is no more static, so we can set the delay individually (useful for the RAW editor tab) + delay = options.adjusterMinDelay; set_border_width (0); set_spacing (0); diff --git a/rtgui/bayerpreprocess.cc b/rtgui/bayerpreprocess.cc index 8b84902f9..cce51cca3 100644 --- a/rtgui/bayerpreprocess.cc +++ b/rtgui/bayerpreprocess.cc @@ -29,8 +29,8 @@ BayerPreProcess::BayerPreProcess () : FoldableToolPanel(this, "bayerpreprocess", lineDenoise = Gtk::manage(new Adjuster (M("TP_PREPROCESS_LINEDENOISE"), 0, 1000, 1, 0)); lineDenoise->setAdjusterListener (this); - if (lineDenoise->delay < 1000) { - lineDenoise->delay = 1000; + if (lineDenoise->delay < options.adjusterMaxDelay) { + lineDenoise->delay = options.adjusterMaxDelay; } lineDenoise->show(); @@ -38,8 +38,8 @@ BayerPreProcess::BayerPreProcess () : FoldableToolPanel(this, "bayerpreprocess", greenEqThreshold = Gtk::manage(new Adjuster (M("TP_PREPROCESS_GREENEQUIL"), 0, 100, 1, 0)); greenEqThreshold->setAdjusterListener (this); - if (greenEqThreshold->delay < 1000) { - greenEqThreshold->delay = 1000; + if (greenEqThreshold->delay < options.adjusterMaxDelay) { + greenEqThreshold->delay = options.adjusterMaxDelay; } greenEqThreshold->show(); diff --git a/rtgui/bayerprocess.cc b/rtgui/bayerprocess.cc index 74da927dd..14c542172 100644 --- a/rtgui/bayerprocess.cc +++ b/rtgui/bayerprocess.cc @@ -44,8 +44,8 @@ BayerProcess::BayerProcess () : FoldableToolPanel(this, "bayerprocess", M("TP_RA dcbIterations = Gtk::manage (new Adjuster (M("TP_RAW_DCBITERATIONS"), 0, 5, 1, 2)); dcbIterations->setAdjusterListener (this); - if (dcbIterations->delay < 1000) { - dcbIterations->delay = 1000; + if (dcbIterations->delay < options.adjusterMaxDelay) { + dcbIterations->delay = options.adjusterMaxDelay; } dcbIterations->show(); @@ -61,8 +61,8 @@ BayerProcess::BayerProcess () : FoldableToolPanel(this, "bayerprocess", M("TP_RA lmmseIterations->setAdjusterListener (this); lmmseIterations->set_tooltip_markup (M("TP_RAW_LMMSE_TOOLTIP")); - if (lmmseIterations->delay < 1000) { - lmmseIterations->delay = 1000; + if (lmmseIterations->delay < options.adjusterMaxDelay) { + lmmseIterations->delay = options.adjusterMaxDelay; } lmmseIterations->show(); @@ -73,8 +73,8 @@ BayerProcess::BayerProcess () : FoldableToolPanel(this, "bayerprocess", M("TP_RA ccSteps = Gtk::manage (new Adjuster (M("TP_RAW_FALSECOLOR"), 0, 5, 1, 0 )); ccSteps->setAdjusterListener (this); - if (ccSteps->delay < 1000) { - ccSteps->delay = 1000; + if (ccSteps->delay < options.adjusterMaxDelay) { + ccSteps->delay = options.adjusterMaxDelay; } ccSteps->show(); diff --git a/rtgui/bayerrawexposure.cc b/rtgui/bayerrawexposure.cc index f420057fa..ca376eb64 100644 --- a/rtgui/bayerrawexposure.cc +++ b/rtgui/bayerrawexposure.cc @@ -29,32 +29,32 @@ BayerRAWExposure::BayerRAWExposure () : FoldableToolPanel(this, "bayerrawexposur PexBlack1 = Gtk::manage(new Adjuster (M("TP_RAWEXPOS_BLACK_1"), -2048, 2048, 0.1, 0)); //black level PexBlack1->setAdjusterListener (this); - if (PexBlack1->delay < 1000) { - PexBlack1->delay = 1000; + if (PexBlack1->delay < options.adjusterMaxDelay) { + PexBlack1->delay = options.adjusterMaxDelay; } PexBlack1->show(); PexBlack2 = Gtk::manage(new Adjuster (M("TP_RAWEXPOS_BLACK_2"), -2048, 2048, 0.1, 0)); //black level PexBlack2->setAdjusterListener (this); - if (PexBlack2->delay < 1000) { - PexBlack2->delay = 1000; + if (PexBlack2->delay < options.adjusterMaxDelay) { + PexBlack2->delay = options.adjusterMaxDelay; } PexBlack2->show(); PexBlack3 = Gtk::manage(new Adjuster (M("TP_RAWEXPOS_BLACK_3"), -2048, 2048, 0.1, 0)); //black level PexBlack3->setAdjusterListener (this); - if (PexBlack3->delay < 1000) { - PexBlack3->delay = 1000; + if (PexBlack3->delay < options.adjusterMaxDelay) { + PexBlack3->delay = options.adjusterMaxDelay; } PexBlack3->show(); PexBlack0 = Gtk::manage(new Adjuster (M("TP_RAWEXPOS_BLACK_0"), -2048, 2048, 0.1, 0)); //black level PexBlack0->setAdjusterListener (this); - if (PexBlack0->delay < 1000) { - PexBlack0->delay = 1000; + if (PexBlack0->delay < options.adjusterMaxDelay) { + PexBlack0->delay = options.adjusterMaxDelay; } PexBlack0->show(); diff --git a/rtgui/blackwhite.cc b/rtgui/blackwhite.cc index d9b426fc8..69891b237 100644 --- a/rtgui/blackwhite.cc +++ b/rtgui/blackwhite.cc @@ -205,10 +205,6 @@ BlackWhite::BlackWhite (): FoldableToolPanel(this, "blackwhite", M("TP_BWMIX_LAB mixerRed = Gtk::manage(new Adjuster (/*M("TP_BWMIX_RED")*/"", -100, 200, 1, 33, imgIcon[0])); - if (mixerRed->delay < 50) { - mixerRed->delay = 50; - } - mixerRed->setAdjusterListener (this); mixerRed->set_tooltip_markup (M("TP_BWMIX_RGB_TOOLTIP")); mixerRed->show(); @@ -216,10 +212,6 @@ BlackWhite::BlackWhite (): FoldableToolPanel(this, "blackwhite", M("TP_BWMIX_LAB mixerGreen = Gtk::manage(new Adjuster (/*M("TP_BWMIX_GREEN")*/"", -100, 200, 1, 33, imgIcon[3])); - if (mixerGreen->delay < 50) { - mixerGreen->delay = 50; - } - mixerGreen->setAdjusterListener (this); mixerGreen->set_tooltip_markup (M("TP_BWMIX_RGB_TOOLTIP")); mixerGreen->show(); @@ -227,10 +219,6 @@ BlackWhite::BlackWhite (): FoldableToolPanel(this, "blackwhite", M("TP_BWMIX_LAB mixerBlue = Gtk::manage(new Adjuster (/*M("TP_BWMIX_BLUE")*/"", -100, 200, 1, 33, imgIcon[5])); - if (mixerBlue->delay < 50) { - mixerBlue->delay = 50; - } - mixerBlue->setAdjusterListener (this); mixerBlue->set_tooltip_markup (M("TP_BWMIX_RGB_TOOLTIP")); mixerBlue->show(); @@ -257,10 +245,6 @@ BlackWhite::BlackWhite (): FoldableToolPanel(this, "blackwhite", M("TP_BWMIX_LAB mixerOrange = Gtk::manage(new Adjuster (/*M("TP_BWMIX_ORANGE")*/"", -100, 200, 1, 33, imgIcon[1])); - if (mixerOrange->delay < 50) { - mixerOrange->delay = 50; - } - mixerOrange->setAdjusterListener (this); mixerOrange->set_tooltip_markup (M("TP_BWMIX_RGB_TOOLTIP")); mixerOrange->show(); @@ -268,10 +252,6 @@ BlackWhite::BlackWhite (): FoldableToolPanel(this, "blackwhite", M("TP_BWMIX_LAB mixerYellow = Gtk::manage(new Adjuster (/*M("TP_BWMIX_YELLOW")*/"", -100, 200, 1, 33, imgIcon[2])); - if (mixerYellow->delay < 50) { - mixerYellow->delay = 50; - } - mixerYellow->setAdjusterListener (this); mixerYellow->set_tooltip_markup (M("TP_BWMIX_RGB_TOOLTIP")); mixerYellow->show(); @@ -279,10 +259,6 @@ BlackWhite::BlackWhite (): FoldableToolPanel(this, "blackwhite", M("TP_BWMIX_LAB mixerCyan = Gtk::manage(new Adjuster (/*M("TP_BWMIX_CYAN")*/"", -100, 200, 1, 33, imgIcon[4])); - if (mixerCyan->delay < 50) { - mixerCyan->delay = 50; - } - mixerCyan->setAdjusterListener (this); mixerCyan->set_tooltip_markup (M("TP_BWMIX_RGB_TOOLTIP")); mixerCyan->show(); @@ -290,10 +266,6 @@ BlackWhite::BlackWhite (): FoldableToolPanel(this, "blackwhite", M("TP_BWMIX_LAB mixerPurple = Gtk::manage(new Adjuster (/*M("TP_BWMIX_PURPLE")*/"", -100, 200, 1, 33, imgIcon[6])); - if (mixerPurple->delay < 50) { - mixerPurple->delay = 50; - } - mixerPurple->setAdjusterListener (this); mixerPurple->set_tooltip_markup (M("TP_BWMIX_RGB_TOOLTIP")); mixerPurple->show(); @@ -301,10 +273,6 @@ BlackWhite::BlackWhite (): FoldableToolPanel(this, "blackwhite", M("TP_BWMIX_LAB mixerMagenta = Gtk::manage(new Adjuster (/*M("TP_BWMIX_MAGENTA")*/"", -100, 200, 1, 33, imgIcon[7])); - if (mixerMagenta->delay < 50) { - mixerMagenta->delay = 50; - } - mixerMagenta->setAdjusterListener (this); mixerMagenta->set_tooltip_markup (M("TP_BWMIX_RGB_TOOLTIP")); mixerMagenta->show(); @@ -324,10 +292,6 @@ BlackWhite::BlackWhite (): FoldableToolPanel(this, "blackwhite", M("TP_BWMIX_LAB gammaRed = Gtk::manage(new Adjuster (/*M("TP_BWMIX_GAM_RED")*/"", -100, 100, 1, 0, imgIcon[8])); - if (gammaRed->delay < 50) { - gammaRed->delay = 50; - } - gammaRed->setAdjusterListener (this); gammaRed->set_tooltip_markup (M("TP_BWMIX_GAM_TOOLTIP")); gammaRed->show(); @@ -335,10 +299,6 @@ BlackWhite::BlackWhite (): FoldableToolPanel(this, "blackwhite", M("TP_BWMIX_LAB gammaGreen = Gtk::manage(new Adjuster (/*M("TP_BWMIX_GAM_GREEN")*/"", -100, 100, 1, 0, imgIcon[9])); - if (gammaGreen->delay < 50) { - gammaGreen->delay = 50; - } - gammaGreen->setAdjusterListener (this); gammaGreen->set_tooltip_markup (M("TP_BWMIX_GAM_TOOLTIP")); gammaGreen->show(); @@ -346,10 +306,6 @@ BlackWhite::BlackWhite (): FoldableToolPanel(this, "blackwhite", M("TP_BWMIX_LAB gammaBlue = Gtk::manage(new Adjuster (/*M("TP_BWMIX_GAM_BLUE")*/"", -100, 100, 1, 0, imgIcon[10])); - if (gammaBlue->delay < 50) { - gammaBlue->delay = 50; - } - gammaBlue->setAdjusterListener (this); gammaBlue->set_tooltip_markup (M("TP_BWMIX_GAM_TOOLTIP")); gammaBlue->show(); diff --git a/rtgui/colorappearance.cc b/rtgui/colorappearance.cc index 4c85ca32e..2664c4a16 100644 --- a/rtgui/colorappearance.cc +++ b/rtgui/colorappearance.cc @@ -50,8 +50,8 @@ ColorAppearance::ColorAppearance () : FoldableToolPanel(this, "colorappearance", degree = Gtk::manage (new Adjuster (M("TP_COLORAPP_CIECAT_DEGREE"), 0., 100., 1., 100.)); - if (degree->delay < 1000) { - degree->delay = 1000; + if (degree->delay < options.adjusterMaxDelay) { + degree->delay = options.adjusterMaxDelay; } degree->throwOnButtonRelease(); @@ -78,8 +78,8 @@ ColorAppearance::ColorAppearance () : FoldableToolPanel(this, "colorappearance", adapscen = Gtk::manage (new Adjuster (M("TP_COLORAPP_ADAPTSCENE"), 0.001, 16384., 0.001, 2000.));// EV -7 ==> EV 17 - if (adapscen->delay < 1000) { - adapscen->delay = 1000; + if (adapscen->delay < options.adjusterMaxDelay) { + adapscen->delay = options.adjusterMaxDelay; } adapscen->throwOnButtonRelease(); @@ -126,8 +126,8 @@ ColorAppearance::ColorAppearance () : FoldableToolPanel(this, "colorappearance", jlight = Gtk::manage (new Adjuster (M("TP_COLORAPP_LIGHT"), -100.0, 100.0, 0.1, 0.)); - if (jlight->delay < 1000) { - jlight->delay = 1000; + if (jlight->delay < options.adjusterMaxDelay) { + jlight->delay = options.adjusterMaxDelay; } jlight->throwOnButtonRelease(); @@ -136,8 +136,8 @@ ColorAppearance::ColorAppearance () : FoldableToolPanel(this, "colorappearance", qbright = Gtk::manage (new Adjuster (M("TP_COLORAPP_BRIGHT"), -100.0, 100.0, 0.1, 0.)); - if (qbright->delay < 1000) { - qbright->delay = 1000; + if (qbright->delay < options.adjusterMaxDelay) { + qbright->delay = options.adjusterMaxDelay; } qbright->throwOnButtonRelease(); @@ -146,8 +146,8 @@ ColorAppearance::ColorAppearance () : FoldableToolPanel(this, "colorappearance", chroma = Gtk::manage (new Adjuster (M("TP_COLORAPP_CHROMA"), -100.0, 100.0, 0.1, 0.)); - if (chroma->delay < 1000) { - chroma->delay = 1000; + if (chroma->delay < options.adjusterMaxDelay) { + chroma->delay = options.adjusterMaxDelay; } chroma->throwOnButtonRelease(); @@ -157,8 +157,8 @@ ColorAppearance::ColorAppearance () : FoldableToolPanel(this, "colorappearance", schroma = Gtk::manage (new Adjuster (M("TP_COLORAPP_CHROMA_S"), -100.0, 100.0, 0.1, 0.)); - if (schroma->delay < 1000) { - schroma->delay = 1000; + if (schroma->delay < options.adjusterMaxDelay) { + schroma->delay = options.adjusterMaxDelay; } schroma->throwOnButtonRelease(); @@ -167,8 +167,8 @@ ColorAppearance::ColorAppearance () : FoldableToolPanel(this, "colorappearance", mchroma = Gtk::manage (new Adjuster (M("TP_COLORAPP_CHROMA_M"), -100.0, 100.0, 0.1, 0.)); - if (mchroma->delay < 1000) { - mchroma->delay = 1000; + if (mchroma->delay < options.adjusterMaxDelay) { + mchroma->delay = options.adjusterMaxDelay; } mchroma->throwOnButtonRelease(); @@ -177,8 +177,8 @@ ColorAppearance::ColorAppearance () : FoldableToolPanel(this, "colorappearance", rstprotection = Gtk::manage ( new Adjuster (M("TP_COLORAPP_RSTPRO"), 0., 100., 0.1, 0.) ); - if (rstprotection->delay < 1000) { - rstprotection->delay = 1000; + if (rstprotection->delay < options.adjusterMaxDelay) { + rstprotection->delay = options.adjusterMaxDelay; } rstprotection->throwOnButtonRelease(); @@ -187,8 +187,8 @@ ColorAppearance::ColorAppearance () : FoldableToolPanel(this, "colorappearance", contrast = Gtk::manage (new Adjuster (M("TP_COLORAPP_CONTRAST"), -100.0, 100.0, 0.1, 0.)); - if (contrast->delay < 1000) { - contrast->delay = 1000; + if (contrast->delay < options.adjusterMaxDelay) { + contrast->delay = options.adjusterMaxDelay; } contrast->throwOnButtonRelease(); @@ -197,8 +197,8 @@ ColorAppearance::ColorAppearance () : FoldableToolPanel(this, "colorappearance", qcontrast = Gtk::manage (new Adjuster (M("TP_COLORAPP_CONTRAST_Q"), -100.0, 100.0, 0.1, 0.)); - if (qcontrast->delay < 1000) { - qcontrast->delay = 1000; + if (qcontrast->delay < options.adjusterMaxDelay) { + qcontrast->delay = options.adjusterMaxDelay; } qcontrast->throwOnButtonRelease(); @@ -208,8 +208,8 @@ ColorAppearance::ColorAppearance () : FoldableToolPanel(this, "colorappearance", colorh = Gtk::manage (new Adjuster (M("TP_COLORAPP_HUE"), -100.0, 100.0, 0.1, 0.)); - if (colorh->delay < 1000) { - colorh->delay = 1000; + if (colorh->delay < options.adjusterMaxDelay) { + colorh->delay = options.adjusterMaxDelay; } colorh->throwOnButtonRelease(); @@ -353,8 +353,8 @@ ColorAppearance::ColorAppearance () : FoldableToolPanel(this, "colorappearance", adaplum = Gtk::manage (new Adjuster (M("TP_COLORAPP_ADAPTVIEWING"), 0.1, 1000., 0.1, 16.)); - if (adaplum->delay < 1000) { - adaplum->delay = 1000; + if (adaplum->delay < options.adjusterMaxDelay) { + adaplum->delay = options.adjusterMaxDelay; } adaplum->throwOnButtonRelease(); @@ -398,8 +398,8 @@ ColorAppearance::ColorAppearance () : FoldableToolPanel(this, "colorappearance", */ badpixsl = Gtk::manage (new Adjuster (M("TP_COLORAPP_BADPIXSL"), 0, 2, 1, 0)); - if (badpixsl->delay < 1000) { - badpixsl->delay = 1000; + if (badpixsl->delay < options.adjusterMaxDelay) { + badpixsl->delay = options.adjusterMaxDelay; } badpixsl->throwOnButtonRelease(); diff --git a/rtgui/flatfield.cc b/rtgui/flatfield.cc index 0d346f8c1..cc8035fa8 100644 --- a/rtgui/flatfield.cc +++ b/rtgui/flatfield.cc @@ -44,8 +44,8 @@ FlatField::FlatField () : FoldableToolPanel(this, "flatfield", M("TP_FLATFIELD_L flatFieldBlurRadius = Gtk::manage(new Adjuster (M("TP_FLATFIELD_BLURRADIUS"), 0, 200, 2, 32)); flatFieldBlurRadius->setAdjusterListener (this); - if (flatFieldBlurRadius->delay < 1000) { - flatFieldBlurRadius->delay = 1000; + if (flatFieldBlurRadius->delay < options.adjusterMaxDelay) { + flatFieldBlurRadius->delay = options.adjusterMaxDelay; } flatFieldBlurRadius->show(); @@ -65,8 +65,8 @@ FlatField::FlatField () : FoldableToolPanel(this, "flatfield", M("TP_FLATFIELD_L flatFieldClipControl->setAdjusterListener(this); flatFieldClipControl->addAutoButton(""); - if (flatFieldClipControl->delay < 1000) { - flatFieldClipControl->delay = 1000; + if (flatFieldClipControl->delay < options.adjusterMaxDelay) { + flatFieldClipControl->delay = options.adjusterMaxDelay; } flatFieldClipControl->show(); diff --git a/rtgui/icmpanel.cc b/rtgui/icmpanel.cc index 6e4668ab4..c6f11035b 100644 --- a/rtgui/icmpanel.cc +++ b/rtgui/icmpanel.cc @@ -226,16 +226,16 @@ ICMPanel::ICMPanel () : FoldableToolPanel(this, "icm", M("TP_ICM_LABEL")), iunch gampos = Gtk::manage(new Adjuster (M("TP_GAMMA_CURV"), 1, 3.5, 0.01, 2.22)); gampos->setAdjusterListener (this); - if (gampos->delay < 1000) { - gampos->delay = 1000; + if (gampos->delay < options.adjusterMaxDelay) { + gampos->delay = options.adjusterMaxDelay; } gampos->show(); slpos = Gtk::manage(new Adjuster (M("TP_GAMMA_SLOP"), 0, 15, 0.01, 4.5)); slpos->setAdjusterListener (this); - if (slpos->delay < 1000) { - slpos->delay = 1000; + if (slpos->delay < options.adjusterMaxDelay) { + slpos->delay = options.adjusterMaxDelay; } slpos->show(); diff --git a/rtgui/options.cc b/rtgui/options.cc index efdb98732..1895d91c2 100644 --- a/rtgui/options.cc +++ b/rtgui/options.cc @@ -322,7 +322,8 @@ void Options::setDefaults () defProfRaw = DEFPROFILE_RAW; defProfImg = DEFPROFILE_IMG; dateFormat = "%y-%m-%d"; - adjusterDelay = 0; + adjusterMinDelay = 200; + adjusterMaxDelay = 200; startupDir = STARTUPDIR_LAST; startupPath = ""; useBundledProfiles = true; @@ -750,8 +751,12 @@ int Options::readFromFile (Glib::ustring fname) dateFormat = keyFile.get_string ("General", "DateFormat"); } - if (keyFile.has_key ("General", "AdjusterDelay")) { - adjusterDelay = keyFile.get_integer ("General", "AdjusterDelay"); + if (keyFile.has_key ("General", "AdjusterMinDelay")) { + adjusterMinDelay = keyFile.get_integer ("General", "AdjusterMinDelay"); + } + + if (keyFile.has_key ("General", "AdjusterMaxDelay")) { + adjusterMaxDelay = keyFile.get_integer ("General", "AdjusterMaxDelay"); } if (keyFile.has_key ("General", "StoreLastProfile")) { @@ -1796,7 +1801,8 @@ int Options::saveToFile (Glib::ustring fname) keyFile.set_string ("General", "StartupPath", startupPath); keyFile.set_string ("General", "DateFormat", dateFormat); - keyFile.set_integer ("General", "AdjusterDelay", adjusterDelay); + keyFile.set_integer ("General", "AdjusterMinDelay", adjusterMinDelay); + keyFile.set_integer ("General", "AdjusterMaxDelay", adjusterMaxDelay); keyFile.set_boolean ("General", "MultiUser", multiUser); keyFile.set_string ("General", "Language", language); keyFile.set_boolean ("General", "LanguageAutoDetect", languageAutoDetect); diff --git a/rtgui/options.h b/rtgui/options.h index 753ae01bb..73b22f4a7 100644 --- a/rtgui/options.h +++ b/rtgui/options.h @@ -99,7 +99,8 @@ public: Glib::ustring defProfRaw; Glib::ustring defProfImg; Glib::ustring dateFormat; - int adjusterDelay; + int adjusterMinDelay; + int adjusterMaxDelay; int startupDir; Gtk::SortType dirBrowserSortType; Glib::ustring startupPath; diff --git a/rtgui/preprocess.cc b/rtgui/preprocess.cc index 5ba3c25c1..1bfad7cc3 100644 --- a/rtgui/preprocess.cc +++ b/rtgui/preprocess.cc @@ -42,8 +42,8 @@ PreProcess::PreProcess () : FoldableToolPanel(this, "preprocess", M("TP_PREPROCE hdThreshold->set_tooltip_markup (M("TP_RAW_HD_TOOLTIP")); hdThreshold->setAdjusterListener (this); - if (hdThreshold->delay < 1000) { - hdThreshold->delay = 1000; + if (hdThreshold->delay < options.adjusterMaxDelay) { + hdThreshold->delay = options.adjusterMaxDelay; } hdThreshold->show(); diff --git a/rtgui/rawcacorrection.cc b/rtgui/rawcacorrection.cc index 8060f322f..0e14182cf 100644 --- a/rtgui/rawcacorrection.cc +++ b/rtgui/rawcacorrection.cc @@ -36,16 +36,16 @@ RAWCACorr::RAWCACorr () : FoldableToolPanel(this, "rawcacorrection", M("TP_CHROM caRed = Gtk::manage(new Adjuster (M("TP_RAWCACORR_CARED"), -4.0, 4.0, 0.1, 0, icaredL, icaredR)); caRed->setAdjusterListener (this); - if (caRed->delay < 1000) { - caRed->delay = 1000; + if (caRed->delay < options.adjusterMaxDelay) { + caRed->delay = options.adjusterMaxDelay; } caRed->show(); caBlue = Gtk::manage(new Adjuster (M("TP_RAWCACORR_CABLUE"), -4.0, 4.0, 0.1, 0, icablueL, icablueR)); caBlue->setAdjusterListener (this); - if (caBlue->delay < 1000) { - caBlue->delay = 1000; + if (caBlue->delay < options.adjusterMaxDelay) { + caBlue->delay = options.adjusterMaxDelay; } caBlue->show(); diff --git a/rtgui/rawexposure.cc b/rtgui/rawexposure.cc index ad81b9110..746b453cf 100644 --- a/rtgui/rawexposure.cc +++ b/rtgui/rawexposure.cc @@ -29,16 +29,16 @@ RAWExposure::RAWExposure () : FoldableToolPanel(this, "rawexposure", M("TP_EXPOS PexPos = Gtk::manage(new Adjuster (M("TP_RAWEXPOS_LINEAR"), 0.1, 16.0, 0.01, 1)); PexPos->setAdjusterListener (this); - if (PexPos->delay < 1000) { - PexPos->delay = 1000; + if (PexPos->delay < options.adjusterMaxDelay) { + PexPos->delay = options.adjusterMaxDelay; } PexPos->show(); PexPreser = Gtk::manage(new Adjuster (M("TP_RAWEXPOS_PRESER"), 0, 2.5, 0.1, 0)); PexPreser->setAdjusterListener (this); - if (PexPreser->delay < 1000) { - PexPreser->delay = 1000; + if (PexPreser->delay < options.adjusterMaxDelay) { + PexPreser->delay = options.adjusterMaxDelay; } PexPreser->show(); diff --git a/rtgui/rawprocess.cc b/rtgui/rawprocess.cc index 9a4f527ed..0ca4350cc 100644 --- a/rtgui/rawprocess.cc +++ b/rtgui/rawprocess.cc @@ -44,8 +44,8 @@ RawProcess::RawProcess () : FoldableToolPanel(this) dcbIterations = Gtk::manage (new Adjuster (M("TP_RAW_DCBITERATIONS"), 0, 5, 1, 2)); dcbIterations->setAdjusterListener (this); - if (dcbIterations->delay < 1000) { - dcbIterations->delay = 1000; + if (dcbIterations->delay < options.adjusterMaxDelay) { + dcbIterations->delay = options.adjusterMaxDelay; } dcbIterations->show(); @@ -61,8 +61,8 @@ RawProcess::RawProcess () : FoldableToolPanel(this) lmmseIterations->setAdjusterListener (this); lmmseIterations->set_tooltip_markup (M("TP_RAW_LMMSE_TOOLTIP")); - if (lmmseIterations->delay < 1000) { - lmmseIterations->delay = 1000; + if (lmmseIterations->delay < options.adjusterMaxDelay) { + lmmseIterations->delay = options.adjusterMaxDelay; } lmmseIterations->show(); @@ -73,8 +73,8 @@ RawProcess::RawProcess () : FoldableToolPanel(this) ccSteps = Gtk::manage (new Adjuster (M("TP_RAW_FALSECOLOR"), 0, 5, 1, 0 )); ccSteps->setAdjusterListener (this); - if (ccSteps->delay < 1000) { - ccSteps->delay = 1000; + if (ccSteps->delay < options.adjusterMaxDelay) { + ccSteps->delay = options.adjusterMaxDelay; } ccSteps->show(); diff --git a/rtgui/sharpenedge.cc b/rtgui/sharpenedge.cc index 4f46dfd03..880240f04 100644 --- a/rtgui/sharpenedge.cc +++ b/rtgui/sharpenedge.cc @@ -32,15 +32,15 @@ SharpenEdge::SharpenEdge () : FoldableToolPanel(this, "sharpenedge", M("TP_SHARP passes = Gtk::manage(new Adjuster (M("TP_SHARPENEDGE_PASSES"), 1, 4, 1, 2)); passes->setAdjusterListener (this); - if (passes->delay < 1000) { - passes->delay = 1000; + if (passes->delay < options.adjusterMaxDelay) { + passes->delay = options.adjusterMaxDelay; } amount = Gtk::manage(new Adjuster (M("TP_SHARPENEDGE_AMOUNT"), 0, 100, 1, 50)); amount->setAdjusterListener (this); - if (amount->delay < 1000) { - amount->delay = 1000; + if (amount->delay < options.adjusterMaxDelay) { + amount->delay = options.adjusterMaxDelay; } threechannels = Gtk::manage(new Gtk::CheckButton((M("TP_SHARPENEDGE_THREE"))));// L + a + b diff --git a/rtgui/sharpenmicro.cc b/rtgui/sharpenmicro.cc index 0c562a351..49c36e99f 100644 --- a/rtgui/sharpenmicro.cc +++ b/rtgui/sharpenmicro.cc @@ -34,8 +34,8 @@ SharpenMicro::SharpenMicro () : FoldableToolPanel(this, "sharpenmicro", M("TP_SH amount = Gtk::manage(new Adjuster (M("TP_SHARPENMICRO_AMOUNT"), 0, 100, 1, 20)); amount->setAdjusterListener (this); - if (amount->delay < 1000) { - amount->delay = 1000; + if (amount->delay < options.adjusterMaxDelay) { + amount->delay = options.adjusterMaxDelay; } amount->show(); @@ -43,8 +43,8 @@ SharpenMicro::SharpenMicro () : FoldableToolPanel(this, "sharpenmicro", M("TP_SH uniformity->setAdjusterListener (this); - if (uniformity->delay < 1000) { - uniformity->delay = 1000; + if (uniformity->delay < options.adjusterMaxDelay) { + uniformity->delay = options.adjusterMaxDelay; } uniformity->show(); diff --git a/rtgui/thresholdadjuster.cc b/rtgui/thresholdadjuster.cc index 6f699eed8..a7e21a26d 100644 --- a/rtgui/thresholdadjuster.cc +++ b/rtgui/thresholdadjuster.cc @@ -77,8 +77,7 @@ void ThresholdAdjuster::initObject (Glib::ustring label, bool editedcb) addMode = false; - // TODO: let the user chose the default value of ThresholdAdjuster::delay, for slow machines - delay = options.adjusterDelay; // delay is no more static, so we can set the delay individually (useful for the RAW editor tab) + delay = options.adjusterMinDelay; set_name("ThresholdAdjuster"); diff --git a/rtgui/vibrance.cc b/rtgui/vibrance.cc index 702911edd..9aa58d1c5 100644 --- a/rtgui/vibrance.cc +++ b/rtgui/vibrance.cc @@ -37,19 +37,16 @@ Vibrance::Vibrance () : FoldableToolPanel(this, "vibrance", M("TP_VIBRANCE_LABEL saturated = Gtk::manage(new Adjuster (M("TP_VIBRANCE_SATURATED"), -100., 100., 1., 0.)); saturated->setAdjusterListener (this); saturated->set_sensitive(false); - //if (saturated->delay < 1000) saturated->delay = 1000; pack_start( *saturated, Gtk::PACK_SHRINK, 0); pastels = Gtk::manage(new Adjuster (M("TP_VIBRANCE_PASTELS"), -100., 100., 1., 0.)); pastels->setAdjusterListener (this); - //if (pastels->delay < 1000) pastels->delay = 1000; pack_start( *pastels, Gtk::PACK_SHRINK, 0); psThreshold = Gtk::manage (new ThresholdAdjuster (M("TP_VIBRANCE_PSTHRESHOLD"), -100., 100., 0., M("TP_VIBRANCE_PSTHRESHOLD_WEIGTHING"), 0, 0., 100., 75., M("TP_VIBRANCE_PSTHRESHOLD_SATTHRESH"), 0, this, false)); psThreshold->setAdjusterListener (this); psThreshold->set_tooltip_markup(M("TP_VIBRANCE_PSTHRESHOLD_TOOLTIP")); psThreshold->set_sensitive(false); - //if (psThreshold->delay < 1000) psThreshold->delay = 1000; pack_start( *psThreshold, Gtk::PACK_SHRINK, 0); protectSkins = Gtk::manage (new Gtk::CheckButton (M("TP_VIBRANCE_PROTECTSKINS"))); diff --git a/rtgui/xtransprocess.cc b/rtgui/xtransprocess.cc index f6c82a55a..a2ab260af 100644 --- a/rtgui/xtransprocess.cc +++ b/rtgui/xtransprocess.cc @@ -42,8 +42,8 @@ XTransProcess::XTransProcess () : FoldableToolPanel(this, "xtransprocess", M("TP ccSteps = Gtk::manage (new Adjuster (M("TP_RAW_FALSECOLOR"), 0, 5, 1, 0 )); ccSteps->setAdjusterListener (this); - if (ccSteps->delay < 1000) { - ccSteps->delay = 1000; + if (ccSteps->delay < options.adjusterMaxDelay) { + ccSteps->delay = options.adjusterMaxDelay; } ccSteps->show(); diff --git a/rtgui/xtransrawexposure.cc b/rtgui/xtransrawexposure.cc index 7117b78e3..ccf1e621b 100644 --- a/rtgui/xtransrawexposure.cc +++ b/rtgui/xtransrawexposure.cc @@ -29,24 +29,24 @@ XTransRAWExposure::XTransRAWExposure () : FoldableToolPanel(this, "xtransrawexpo PexBlackRed = Gtk::manage(new Adjuster (M("TP_RAWEXPOS_BLACK_RED"), -2048, 2048, 0.1, 0)); //black level PexBlackRed->setAdjusterListener (this); - if (PexBlackRed->delay < 1000) { - PexBlackRed->delay = 1000; + if (PexBlackRed->delay < options.adjusterMaxDelay) { + PexBlackRed->delay = options.adjusterMaxDelay; } PexBlackRed->show(); PexBlackGreen = Gtk::manage(new Adjuster (M("TP_RAWEXPOS_BLACK_GREEN"), -2048, 2048, 0.1, 0)); //black level PexBlackGreen->setAdjusterListener (this); - if (PexBlackGreen->delay < 1000) { - PexBlackGreen->delay = 1000; + if (PexBlackGreen->delay < options.adjusterMaxDelay) { + PexBlackGreen->delay = options.adjusterMaxDelay; } PexBlackGreen->show(); PexBlackBlue = Gtk::manage(new Adjuster (M("TP_RAWEXPOS_BLACK_BLUE"), -2048, 2048, 0.1, 0)); //black level PexBlackBlue->setAdjusterListener (this); - if (PexBlackBlue->delay < 1000) { - PexBlackBlue->delay = 1000; + if (PexBlackBlue->delay < options.adjusterMaxDelay) { + PexBlackBlue->delay = options.adjusterMaxDelay; } PexBlackBlue->show();