[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: [digikam/frameworks] /: backport commit #b42606405bf27a5caa36da99d50b1247ed3d21a6 from git/master to
From: Gilles Caulier <caulier.gilles () gmail ! com>
Date: 2015-09-30 19:48:40
Message-ID: E1ZhNMm-00015y-JM () scm ! kde ! org
[Download RAW message or body]
Git commit 22ee235b2b8720e7b750ae36b571e5f9e0914050 by Gilles Caulier.
Committed on 30/09/2015 at 19:47.
Pushed by cgilles into branch 'frameworks'.
backport commit #b42606405bf27a5caa36da99d50b1247ed3d21a6 from git/master to \
frameworks branch
CCBUGS: 237719
M +14 -5 imageplugins/filters/colorfxtool.cpp
M +13 -14 libs/dimg/filters/fx/colorfxsettings.cpp
http://commits.kde.org/digikam/22ee235b2b8720e7b750ae36b571e5f9e0914050
diff --git a/imageplugins/filters/colorfxtool.cpp \
b/imageplugins/filters/colorfxtool.cpp index 5ad779e..4eb9883 100644
--- a/imageplugins/filters/colorfxtool.cpp
+++ b/imageplugins/filters/colorfxtool.cpp
@@ -78,9 +78,9 @@ public:
static const QString configHistogramChannelEntry;
static const QString configHistogramScaleEntry;
- ImageRegionWidget* previewWidget;
- EditorToolSettings* gboxSettings;
- ColorFXSettings* settingsView;
+ ImageRegionWidget* previewWidget;
+ EditorToolSettings* gboxSettings;
+ ColorFXSettings* settingsView;
};
const QString ColorFxTool::Private::configGroupName(QLatin1String("coloreffect \
Tool")); @@ -172,9 +172,18 @@ void ColorFxTool::slotColorSelectedFromTarget(const \
DColor& color) void ColorFxTool::preparePreview()
{
d->settingsView->disable();
- ColorFXContainer prm = d->settingsView->settings();
- DImg preview = d->previewWidget->getOriginalRegionImage(true);
+ ColorFXContainer prm = d->settingsView->settings();
+ bool useDownscaledImage = true;
+
+ // See bug #237719 : we cannot use downscaled image to render preview.
+ if (prm.colorFXType == ColorFXFilter::Neon ||
+ prm.colorFXType == ColorFXFilter::FindEdges)
+ {
+ useDownscaledImage = false;
+ }
+
+ DImg preview = d->previewWidget->getOriginalRegionImage(useDownscaledImage);
setFilter(new ColorFXFilter(&preview, this, prm));
}
diff --git a/libs/dimg/filters/fx/colorfxsettings.cpp \
b/libs/dimg/filters/fx/colorfxsettings.cpp index 759d7bb..e52d368 100644
--- a/libs/dimg/filters/fx/colorfxsettings.cpp
+++ b/libs/dimg/filters/fx/colorfxsettings.cpp
@@ -55,28 +55,27 @@ public:
static const QString configLevelAdjustmentEntry;
static const QString configIterationAdjustmentEntry;
- QLabel* effectTypeLabel;
- QLabel* levelLabel;
- QLabel* iterationLabel;
+ QLabel* effectTypeLabel;
+ QLabel* levelLabel;
+ QLabel* iterationLabel;
- RComboBox* effectType;
+ RComboBox* effectType;
- RIntNumInput* levelInput;
- RIntNumInput* iterationInput;
+ RIntNumInput* levelInput;
+ RIntNumInput* iterationInput;
};
const QString ColorFXSettings::Private::configEffectTypeEntry(QLatin1String("EffectType"));
const QString ColorFXSettings::Private::configLevelAdjustmentEntry(QLatin1String("LevelAdjustment"));
const QString ColorFXSettings::Private::configIterationAdjustmentEntry(QLatin1String("IterationAdjustment"));
-
// --------------------------------------------------------
ColorFXSettings::ColorFXSettings(QWidget* const parent)
: QWidget(parent),
d(new Private)
{
- QGridLayout* grid = new QGridLayout(parent);
+ QGridLayout* const grid = new QGridLayout(parent);
d->effectTypeLabel = new QLabel(i18n("Type:"));
d->effectType = new RComboBox();
@@ -215,9 +214,9 @@ void ColorFXSettings::readSettings(KConfigGroup& group)
ColorFXContainer prm;
ColorFXContainer defaultPrm = defaultSettings();
- d->effectType->setCurrentIndex(group.readEntry(d->configEffectTypeEntry, \
d->effectType->defaultIndex()));
- d->levelInput->setValue(group.readEntry(d->configLevelAdjustmentEntry, \
d->levelInput->defaultValue()));
- d->iterationInput->setValue(group.readEntry(d->configIterationAdjustmentEntry, \
d->iterationInput->defaultValue())); + prm.colorFXType = \
group.readEntry(d->configEffectTypeEntry, defaultPrm.colorFXType); + \
prm.level = group.readEntry(d->configLevelAdjustmentEntry, \
defaultPrm.level); + prm.iterations = \
group.readEntry(d->configIterationAdjustmentEntry, defaultPrm.iterations);
setSettings(prm);
}
@@ -226,9 +225,9 @@ void ColorFXSettings::writeSettings(KConfigGroup& group)
{
ColorFXContainer prm = settings();
- group.writeEntry(d->configEffectTypeEntry, \
d->effectType->currentIndex());
- group.writeEntry(d->configLevelAdjustmentEntry, d->levelInput->value());
- group.writeEntry(d->configIterationAdjustmentEntry, d->iterationInput->value());
+ group.writeEntry(d->configEffectTypeEntry, prm.colorFXType);
+ group.writeEntry(d->configLevelAdjustmentEntry, prm.level);
+ group.writeEntry(d->configIterationAdjustmentEntry, prm.iterations);
}
void ColorFXSettings::enable()
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic