[Digikam-devel] extragear/graphics/digikam/imageplugins
Francisco J. Cruz
fj.cruz at supercable.es
Fri Jan 20 23:16:51 GMT 2006
SVN commit 500698 by fjcruz:
ImageEffect_ICCProof::slotTestIt() method has been implemented (90%), so the plugin begins to be operative. Test and report, please.
TODO:
- "Check gamut" option isn't implemented.
- "Embed profile" options isn't implemented.
- "Display" tab is not take into account, so any setting you make here wil work.
- ImageEffect_ICCProof::finalRendering() method isn't implemented, so no change will be saved.
For Gilles: maybe it's time to talk about how to save profiles into images :-).
CCMAIL:digikam-devel at kde.org
M +43 -1 imageeffect_iccproof.cpp
--- trunk/extragear/graphics/digikam/imageplugins/imageeffect_iccproof.cpp #500697:500698
@@ -537,7 +537,7 @@
void ImageEffect_ICCProof::slotTestIt()
{
/// @todo implement me
- /// FIXME embed profile is not implemented -- Paco Cruz
+ /// FIXME "embed profile" option is not implemented -- Paco Cruz
/// FIXME use of Display profile is not implemented -- Paco Cruz
kapp->setOverrideCursor(KCursor::waitCursor());
@@ -604,8 +604,50 @@
transform.getTransformType(m_doSoftProofBox->isChecked());
+ if (m_doSoftProofBox->isChecked())
+ {
+ if (m_useEmbeddedProfile->isChecked())
+ {
+ transform.setProfiles( spacePath, proofPath, true );
+ }
+ else
+ {
+ transform.setProfiles( inPath, spacePath, proofPath);
+ }
+ }
+ else
+ {
+ if (m_useEmbeddedProfile->isChecked())
+ {
+ transform.setProfiles( spacePath );
+ }
+ else
+ {
+ transform.setProfiles( inPath, spacePath );
+ }
+ }
+
+ if (m_useEmbeddedProfile->isChecked())
+ {
+ transform.apply(preview, m_embeddedICC, useBPC(), m_checkGamutBox->isChecked(), useBuiltinProfile());
+ }
+ else
+ {
+ QByteArray fakeProfile = QByteArray();
+ transform.apply(preview, fakeProfile, useBPC(), m_checkGamutBox->isChecked(), useBuiltinProfile());
+ }
+ iface->putPreviewImage(preview.bits());
+
+ m_previewWidget->updatePreview();
+
+ // Update histogram.
+
+ memcpy(m_destinationPreviewData, preview.bits(), preview.numBytes());
+ kdDebug() << "Doing updateData" << endl;
+ m_histogramWidget->updateData(m_destinationPreviewData, w, h, sb, 0, 0, 0, false);
+
kapp->restoreOverrideCursor();
}
More information about the Digikam-devel
mailing list