SVN commit 540980 by cgilles:
digikam from trunk : new dialog to display a preview of ICC color correction when "Color Management Policy::Behaviour::Ask when open an image in image editor" option is enable in digiKam ICC setup. This dialog remplace the simple KMessageBox (witch one give no feedback to user) . We have now 2 image previews to compare original and target before to process the ICC workspace conversion. This is important when user load a RAW picture on a slow computer where Raw decoding can be long : if the ICC workspace correction isn't correct, no need to close editor and re-load picture to select the right option (:=)))... CCMAIL: [hidden email], [hidden email] CCBUGS: 125733 M +10 -10 Makefile.am M +1 -0 canvas.cpp A colorcorrectiondlg.cpp [License: GPL] A colorcorrectiondlg.h [License: GPL] M +14 -6 dimginterface.cpp M +0 -4 dimginterface.h --- trunk/extragear/graphics/digikam/utilities/imageeditor/canvas/Makefile.am #540979:540980 @@ -2,23 +2,23 @@ noinst_LTLIBRARIES = libdimgcanvas.la -libdimgcanvas_la_SOURCES = dimginterface.cpp \ - canvas.cpp undocache.cpp \ - undoaction.cpp undomanager.cpp \ - imagepluginloader.cpp imageplugin.cpp +libdimgcanvas_la_SOURCES = dimginterface.cpp colorcorrectiondlg.cpp \ + canvas.cpp undocache.cpp \ + undoaction.cpp undomanager.cpp \ + imagepluginloader.cpp imageplugin.cpp libdimgcanvas_la_LIBADD = $(top_builddir)/digikam/libs/dimg/libdimg.la libdimgcanvas_la_LDFLAGS = $(all_libraries) $(KDE_RPATH) $(LIB_TIFF) INCLUDES= -I$(top_srcdir)/digikam/digikam \ - -I$(top_srcdir)/digikam/libs/dimg \ + -I$(top_srcdir)/digikam/libs/dimg \ + -I$(top_srcdir)/digikam/libs/dimg/filters \ -I$(top_srcdir)/digikam/libs/dmetadata \ - -I$(top_srcdir)/digikam/libs/dimg/filters \ - -I$(top_srcdir)/digikam/libs/histogram \ - -I$(top_srcdir)/digikam/libs/threadimageio \ - -I$(top_srcdir)/digikam/utilities/splashscreen \ - $(all_includes) + -I$(top_srcdir)/digikam/libs/histogram \ + -I$(top_srcdir)/digikam/libs/threadimageio \ + -I$(top_srcdir)/digikam/utilities/splashscreen \ + $(all_includes) digikaminclude_HEADERS = imageplugin.h --- trunk/extragear/graphics/digikam/utilities/imageeditor/canvas/canvas.cpp #540979:540980 @@ -49,6 +49,7 @@ #include <kcursor.h> #include <kdebug.h> +#include <klocale.h> // Local includes. --- trunk/extragear/graphics/digikam/utilities/imageeditor/canvas/dimginterface.cpp #540979:540980 @@ -41,13 +41,14 @@ // KDE includes. #include <kdebug.h> -#include <kmessagebox.h> #include <kapplication.h> +#include <klocale.h> // Local includes. #include "bcgmodifier.h" #include "icctransform.h" +#include "colorcorrectiondlg.h" #include "undomanager.h" #include "undoaction.h" #include "iccsettingscontainer.h" @@ -333,10 +334,13 @@ // To repaint image in canvas before to ask about to apply ICC profile. emit signalImageLoaded(d->filename, valRet); - if (KMessageBox::questionYesNo(kapp->activeWindow(), message) == KMessageBox::Yes) + DImg preview = d->image.smoothScale(240, 180, QSize::ScaleMin); + trans.setProfiles(QFile::encodeName(d->cmSettings->inputSetting), + QFile::encodeName(d->cmSettings->workspaceSetting)); + ColorCorrectionDlg dlg(kapp->activeWindow(), &preview, &trans, message); + + if (dlg.exec() == QDialog::Accepted) { - trans.setProfiles( QFile::encodeName(d->cmSettings->inputSetting), - QFile::encodeName(d->cmSettings->workspaceSetting)); trans.apply( d->image ); d->image.getICCProfilFromFile(QFile::encodeName(d->cmSettings->workspaceSetting)); } @@ -374,10 +378,14 @@ // To repaint image in canvas before to ask about to apply ICC profile. emit signalImageLoaded(d->filename, valRet); - if (KMessageBox::questionYesNo(kapp->activeWindow(), message) == KMessageBox::Yes) + DImg preview = d->image.smoothScale(240, 180, QSize::ScaleMin); + trans.setProfiles(QFile::encodeName(d->cmSettings->workspaceSetting)); + ColorCorrectionDlg dlg(kapp->activeWindow(), &preview, &trans, message); + + if (dlg.exec() == QDialog::Accepted) { - trans.setProfiles( QFile::encodeName(d->cmSettings->workspaceSetting)); trans.apply( d->image ); + d->image.getICCProfilFromFile(QFile::encodeName(d->cmSettings->workspaceSetting)); } } } --- trunk/extragear/graphics/digikam/utilities/imageeditor/canvas/dimginterface.h #540979:540980 @@ -28,10 +28,6 @@ #include <qimage.h> #include <qobject.h> -// KDE includes. - -#include <klocale.h> - // Locale includes. #include "dimg.h" _______________________________________________ Digikam-devel mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-devel |
Free forum by Nabble | Edit this page |