|
SVN commit 561335 by fjcruz:
Gilles's patch about RAW loading. CCMAIL: [hidden email], [hidden email] M +6 -2 canvas.cpp M +1 -0 canvas.h M +7 -2 dimginterface.cpp M +2 -0 dimginterface.h M +18 -0 imagepluginloader.cpp M +3 -1 imagepluginloader.h --- trunk/extragear/graphics/digikam/utilities/imageeditor/canvas/canvas.cpp #561334:561335 @@ -154,6 +154,7 @@ : QScrollView(parent) { viewport()->setBackgroundMode(Qt::NoBackground); + viewport()->setMouseTracking(false); setFrameStyle( QFrame::NoFrame ); d = new CanvasPrivate; @@ -206,6 +207,11 @@ d->histoChannelType = ImageHistogram::ValueChannel; + // ------------------------------------------------------------ + + connect(d->im, SIGNAL(signalColorManagementTool()), + this, SIGNAL(signalColorManagementTool())); + connect(d->im, SIGNAL(signalModified()), this, SLOT(slotModified())); @@ -232,8 +238,6 @@ connect(this, SIGNAL(contentsMoving(int, int)), this, SLOT(slotContentsMoving(int,int))); - - viewport()->setMouseTracking(false); } void Canvas::customEvent(QCustomEvent *event) --- trunk/extragear/graphics/digikam/utilities/imageeditor/canvas/canvas.h #561334:561335 @@ -166,6 +166,7 @@ signals: + void signalColorManagementTool(); void signalZoomChanged(float zoom); void signalMaxZoom(); void signalMinZoom(); --- trunk/extragear/graphics/digikam/utilities/imageeditor/canvas/dimginterface.cpp #561334:561335 @@ -229,9 +229,14 @@ if (d->cmSettings->enableCMSetting) { - if (QFile::exists(d->cmSettings->workspaceSetting) && - QFile::exists(d->cmSettings->inputSetting)) + if (d->image.attribute("format").toString() == QString("RAW")) { + // With RAW files, we load the Color Management image plugin. + emit signalColorManagementTool(); + } + else if (QFile::exists(d->cmSettings->workspaceSetting) && + QFile::exists(d->cmSettings->inputSetting)) + { IccTransform trans; // First possibility: image has no embedded profile --- trunk/extragear/graphics/digikam/utilities/imageeditor/canvas/dimginterface.h #561334:561335 @@ -151,6 +151,8 @@ signals: + void signalColorManagementTool(); + void signalModified(); void signalUndoStateChanged(bool moreUndo, bool moreRedo, bool canSave); --- trunk/extragear/graphics/digikam/utilities/imageeditor/canvas/imagepluginloader.cpp #561334:561335 @@ -214,6 +214,24 @@ return 0; } +ImagePlugin* ImagePluginLoader::pluginInstance(const QString& libraryName) +{ + KTrader::OfferList offers = KTrader::self()->query("Digikam/ImagePlugin"); + KTrader::OfferList::ConstIterator iter; + + for(iter = offers.begin(); iter != offers.end(); ++iter) + { + KService::Ptr service = *iter; + + if(service->library() == libraryName) + { + return ( pluginIsLoaded(service->name()) ); + } + } + + return 0; +} + bool ImagePluginLoader::pluginLibraryIsLoaded(const QString& libraryName) { KTrader::OfferList offers = KTrader::self()->query("Digikam/ImagePlugin"); --- trunk/extragear/graphics/digikam/utilities/imageeditor/canvas/imagepluginloader.h #561334:561335 @@ -57,6 +57,8 @@ // Return true if plugin library is loaded in memory. // 'libraryName' is internal plugin library name not i18n. bool pluginLibraryIsLoaded(const QString& libraryName); + + ImagePlugin* pluginInstance(const QString& libraryName); private: @@ -64,7 +66,7 @@ private: - static ImagePluginLoader *m_instance; + static ImagePluginLoader *m_instance; ImagePluginLoaderPrivate *d; }; _______________________________________________ Digikam-devel mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-devel |
| Free forum by Nabble | Edit this page |
