[Digikam-devel] extragear/graphics/digikam/imageplugins/adjustcurves
Gilles Caulier
caulier.gilles at gmail.com
Wed Jul 4 20:24:33 BST 2007
SVN commit 683479 by cgilles:
digikam from trunk : complete KDE4 port of AdjustCurves image plugin.
CCMAIL: digikam-devel at kde.org
M +45 -46 adjustcurves.cpp
M +3 -0 adjustcurves.h
--- trunk/extragear/graphics/digikam/imageplugins/adjustcurves/adjustcurves.cpp #683478:683479
@@ -131,7 +131,7 @@
m_channelCB->addItem( i18n("Green") );
m_channelCB->addItem( i18n("Blue") );
m_channelCB->addItem( i18n("Alpha") );
- m_channelCB->setCurrentItem(0);
+ m_channelCB->setCurrentIndex(0);
m_channelCB->setWhatsThis( i18n("<p>Select here the histogram channel to display:<p>"
"<b>Luminosity</b>: display the image's luminosity values.<p>"
"<b>Red</b>: display the red image-channel values.<p>"
@@ -211,7 +211,7 @@
gl->addMultiCellWidget(m_curvesWidget, 2, 2, 2, 2);
gl->addMultiCellWidget(spaceh, 3, 3, 2, 2);
gl->addMultiCellWidget(m_hGradient, 4, 4, 2, 2);
- gl->setRowSpacing(1, spacingHint());
+ gl->setRowMinimumHeight(1, spacingHint());
gl->setMargin(0);
gl->setSpacing(0);
@@ -222,7 +222,7 @@
m_curveType = new QButtonGroup(typeBox);
m_curveFree = new QPushButton(typeBox);
- m_curveFree->setPixmap(QPixmap(KStandardDirs::locate("data", "digikam/data/curvefree.png")));
+ m_curveFree->setIcon(QPixmap(KStandardDirs::locate("data", "digikam/data/curvefree.png")));
m_curveFree->setCheckable(true);
m_curveFree->setToolTip( i18n( "Curve free mode" ) );
m_curveFree->setWhatsThis( i18n("<p>With this button, you can draw your curve free-hand "
@@ -230,7 +230,7 @@
m_curveType->addButton(m_curveFree, FreeDrawing);
m_curveSmooth = new QPushButton(typeBox);
- m_curveSmooth->setPixmap(QPixmap(KStandardDirs::locate("data", "digikam/data/curvemooth.png")));
+ m_curveSmooth->setIcon(QPixmap(KStandardDirs::locate("data", "digikam/data/curvemooth.png")));
m_curveSmooth->setCheckable(true);
m_curveSmooth->setToolTip( i18n( "Curve smooth mode" ) );
m_curveSmooth->setWhatsThis( i18n("<p>With this button, you constrains the curve type "
@@ -247,31 +247,31 @@
// -------------------------------------------------------------
- QWidget *pickerBox = new QWidget(gboxSettings);
- QHBoxLayout *hlay3 = new QHBoxLayout(pickerBox);
- m_pickerColorButtonGroup = new QButtonGroup(pickerBox);
+ m_pickerBox = new QWidget(gboxSettings);
+ QHBoxLayout *hlay3 = new QHBoxLayout(m_pickerBox);
+ m_pickerColorButtonGroup = new QButtonGroup(m_pickerBox);
- m_pickBlack = new QPushButton(pickerBox);
+ m_pickBlack = new QPushButton(m_pickerBox);
m_pickerColorButtonGroup->addButton(m_pickBlack, BlackTonal);
- m_pickBlack->setPixmap(QPixmap(KStandardDirs::locate("data", "digikam/data/color-picker-black.png")));
+ m_pickBlack->setIcon(QPixmap(KStandardDirs::locate("data", "digikam/data/color-picker-black.png")));
m_pickBlack->setCheckable(true);
m_pickBlack->setToolTip( i18n( "All channels shadow tone color picker" ) );
m_pickBlack->setWhatsThis( i18n("<p>With this button, you can pick the color from original "
"image used to set <b>Shadow Tone</b> "
"smooth curves point on Red, Green, Blue, and Luminosity channels."));
- m_pickGray = new QPushButton(pickerBox);
+ m_pickGray = new QPushButton(m_pickerBox);
m_pickerColorButtonGroup->addButton(m_pickGray, GrayTonal);
- m_pickGray->setPixmap(QPixmap(KStandardDirs::locate("data", "digikam/data/color-picker-grey.png")));
+ m_pickGray->setIcon(QPixmap(KStandardDirs::locate("data", "digikam/data/color-picker-grey.png")));
m_pickGray->setCheckable(true);
m_pickGray->setToolTip( i18n( "All channels middle tone color picker" ) );
m_pickGray->setWhatsThis( i18n("<p>With this button, you can pick the color from original "
"image used to set <b>Middle Tone</b> "
"smooth curves point on Red, Green, Blue, and Luminosity channels."));
- m_pickWhite = new QPushButton(pickerBox);
+ m_pickWhite = new QPushButton(m_pickerBox);
m_pickerColorButtonGroup->addButton(m_pickWhite, WhiteTonal);
- m_pickWhite->setPixmap(QPixmap(KStandardDirs::locate("data", "digikam/data/color-picker-white.png")));
+ m_pickWhite->setIcon(QPixmap(KStandardDirs::locate("data", "digikam/data/color-picker-white.png")));
m_pickWhite->setCheckable(true);
m_pickWhite->setToolTip( i18n( "All channels highlight tone color picker" ) );
m_pickWhite->setWhatsThis( i18n("<p>With this button, you can pick the color from original "
@@ -289,7 +289,7 @@
// -------------------------------------------------------------
m_resetButton = new QPushButton(i18n("&Reset"), gboxSettings);
- m_resetButton->setPixmap( SmallIcon("document-revert", 18) );
+ m_resetButton->setIcon( SmallIcon("document-revert", 18) );
m_resetButton->setToolTip( i18n( "Reset current channel curves' values." ) );
m_resetButton->setWhatsThis( i18n("<p>If you press this button, all curves' values "
"from the current selected channel "
@@ -297,7 +297,7 @@
QHBoxLayout* l3 = new QHBoxLayout();
l3->addWidget(typeBox);
- l3->addWidget(pickerBox);
+ l3->addWidget(m_pickerBox);
l3->addWidget(m_resetButton);
l3->addStretch(10);
@@ -308,7 +308,7 @@
grid->addMultiCellWidget(label1, 0, 0, 1, 1);
grid->addMultiCellWidget(m_channelCB, 0, 0, 2, 2);
grid->addMultiCellLayout(l1, 0, 0, 4, 5);
- grid->addMultiCellWidget(curveBox, 2, 3, 0, 5);
+ grid->addMultiCellWidget(curveBox, 1, 3, 0, 5);
grid->addMultiCellLayout(l3, 4, 4, 1, 5);
grid->setRowStretch(5, 10);
@@ -374,7 +374,7 @@
{
Digikam::DColor sc = color;
- if ( m_pickBlack->isOn() )
+ if ( m_pickBlack->isChecked() )
{
// Black tonal curves point.
m_curves->setCurvePoint(Digikam::ImageHistogram::ValueChannel, 1,
@@ -382,9 +382,9 @@
m_curves->setCurvePoint(Digikam::ImageHistogram::RedChannel, 1, QPoint(sc.red(), 42*m_histoSegments/256));
m_curves->setCurvePoint(Digikam::ImageHistogram::GreenChannel, 1, QPoint(sc.green(), 42*m_histoSegments/256));
m_curves->setCurvePoint(Digikam::ImageHistogram::BlueChannel, 1, QPoint(sc.blue(), 42*m_histoSegments/256));
- m_pickBlack->setOn(false);
+ m_pickBlack->setChecked(false);
}
- else if ( m_pickGray->isOn() )
+ else if ( m_pickGray->isChecked() )
{
// Gray tonal curves point.
m_curves->setCurvePoint(Digikam::ImageHistogram::ValueChannel, 8,
@@ -392,9 +392,9 @@
m_curves->setCurvePoint(Digikam::ImageHistogram::RedChannel, 8, QPoint(sc.red(), 128*m_histoSegments/256));
m_curves->setCurvePoint(Digikam::ImageHistogram::GreenChannel, 8, QPoint(sc.green(), 128*m_histoSegments/256));
m_curves->setCurvePoint(Digikam::ImageHistogram::BlueChannel, 8, QPoint(sc.blue(), 128*m_histoSegments/256));
- m_pickGray->setOn(false);
+ m_pickGray->setChecked(false);
}
- else if ( m_pickWhite->isOn() )
+ else if ( m_pickWhite->isChecked() )
{
// White tonal curves point.
m_curves->setCurvePoint(Digikam::ImageHistogram::ValueChannel, 15,
@@ -402,7 +402,7 @@
m_curves->setCurvePoint(Digikam::ImageHistogram::RedChannel, 15, QPoint(sc.red(), 213*m_histoSegments/256));
m_curves->setCurvePoint(Digikam::ImageHistogram::GreenChannel, 15, QPoint(sc.green(), 213*m_histoSegments/256));
m_curves->setCurvePoint(Digikam::ImageHistogram::BlueChannel, 15, QPoint(sc.blue(), 213*m_histoSegments/256));
- m_pickWhite->setOn(false);
+ m_pickWhite->setChecked(false);
}
else
{
@@ -415,7 +415,7 @@
for (int i = Digikam::ImageHistogram::ValueChannel ; i <= Digikam::ImageHistogram::BlueChannel ; i++)
m_curves->curvesCalculateCurve(i);
- m_curvesWidget->repaint(false);
+ m_curvesWidget->repaint();
// restore previous rendering mode.
m_previewWidget->setRenderingPreviewMode(m_currentPreviewMode);
@@ -430,7 +430,7 @@
void AdjustCurveDialog::slotResetCurrentChannel()
{
- m_curves->curvesChannelReset(m_channelCB->currentItem());
+ m_curves->curvesChannelReset(m_channelCB->currentIndex());
m_curvesWidget->reset();
slotEffect();
@@ -532,21 +532,19 @@
m_vGradient->setColors( QColor( "white" ), QColor( "black" ) );
break;
}
-
-
- //TODO m_curveType->setButton(m_curves->getCurveType(channel));
+ m_curveType->button(m_curves->getCurveType(channel))->setChecked(true);
- m_curvesWidget->repaint(false);
- m_histogramWidget->repaint(false);
+ m_curvesWidget->repaint();
+ m_histogramWidget->repaint();
}
void AdjustCurveDialog::slotScaleChanged(int scale)
{
m_curvesWidget->m_scaleType = scale;
m_histogramWidget->m_scaleType = scale;
- m_histogramWidget->repaint(false);
- m_curvesWidget->repaint(false);
+ m_histogramWidget->repaint();
+ m_curvesWidget->repaint();
}
void AdjustCurveDialog::slotCurveTypeChanged(int type)
@@ -555,15 +553,15 @@
{
case SmoothDrawing:
{
- // TODO m_curves->setCurveType(m_curvesWidget->m_channelType, Digikam::ImageCurves::CURVE_SMOOTH);
- // TODO m_pickerColorButtonGroup->setEnabled(true);
+ m_curves->setCurveType(m_curvesWidget->m_channelType, Digikam::ImageCurves::CURVE_SMOOTH);
+ m_pickerBox->setEnabled(true);
break;
}
case FreeDrawing:
{
- // TODO m_curves->setCurveType(m_curvesWidget->m_channelType, Digikam::ImageCurves::CURVE_FREE);
- // TODO m_pickerColorButtonGroup->setEnabled(false);
+ m_curves->setCurveType(m_curvesWidget->m_channelType, Digikam::ImageCurves::CURVE_FREE);
+ m_pickerBox->setEnabled(false);
break;
}
}
@@ -576,16 +574,18 @@
KSharedConfig::Ptr config = KGlobal::config();
KConfigGroup group = config->group("adjustcurves Tool Dialog");
- m_channelCB->setCurrentItem(group.readEntry("Histogram Channel", 0)); // Luminosity.
-//TODO m_scaleBG->setButton(group.readEntry("Histogram Scale", (int)Digikam::HistogramWidget::LogScaleHistogram));
+ m_channelCB->setCurrentIndex(group.readEntry("Histogram Channel", 0)); // Luminosity.
+ m_scaleBG->button(group.readEntry("Histogram Scale",
+ (int)Digikam::HistogramWidget::LogScaleHistogram))->setChecked(true);
m_curvesWidget->reset();
for (int i = 0 ; i < 5 ; i++)
{
m_curves->curvesChannelReset(i);
- m_curves->setCurveType(i, (Digikam::ImageCurves::CurveType)group.readEntry(QString("CurveTypeChannel%1").arg(i),
- (int)Digikam::ImageCurves::CURVE_SMOOTH));
+ m_curves->setCurveType(i,
+ (Digikam::ImageCurves::CurveType)group.readEntry(QString("CurveTypeChannel%1").arg(i),
+ (int)Digikam::ImageCurves::CURVE_SMOOTH));
for (int j = 0 ; j < 17 ; j++)
{
@@ -604,16 +604,16 @@
m_curves->curvesCalculateCurve(i);
}
- slotChannelChanged(m_channelCB->currentItem());
-//TODO slotScaleChanged(m_scaleBG->selectedId());
+ slotChannelChanged(m_channelCB->currentIndex());
+ slotScaleChanged(m_scaleBG->checkedId());
}
void AdjustCurveDialog::writeUserSettings()
{
KSharedConfig::Ptr config = KGlobal::config();
KConfigGroup group = config->group("adjustcurves Tool Dialog");
- group.writeEntry("Histogram Channel", m_channelCB->currentItem());
-//TODO group.writeEntry("Histogram Scale", m_scaleBG->selectedId());
+ group.writeEntry("Histogram Channel", m_channelCB->currentIndex());
+ group.writeEntry("Histogram Scale", m_scaleBG->checkedId());
for (int i = 0 ; i < 5 ; i++)
{
@@ -663,7 +663,7 @@
}
// Refresh the current curves config.
- slotChannelChanged(m_channelCB->currentItem());
+ slotChannelChanged(m_channelCB->currentIndex());
slotEffect();
}
@@ -685,8 +685,7 @@
}
// Refresh the current curves config.
- slotChannelChanged(m_channelCB->currentItem());
+ slotChannelChanged(m_channelCB->currentIndex());
}
} // NameSpace DigikamAdjustCurvesImagesPlugin
-
--- trunk/extragear/graphics/digikam/imageplugins/adjustcurves/adjustcurves.h #683478:683479
@@ -31,6 +31,7 @@
// Local includes.
+class QWidget;
class QComboBox;
class QPushButton;
class QButtonGroup;
@@ -111,6 +112,8 @@
int m_histoSegments;
int m_currentPreviewMode;
+ QWidget *m_pickerBox;
+
QComboBox *m_channelCB;
QPushButton *m_resetButton;
More information about the Digikam-devel
mailing list