[Digikam-devel] branches/extragear/kde3/graphics/digikam/imageplugins/inpainting
Gilles Caulier
caulier.gilles at gmail.com
Thu Aug 28 17:01:35 BST 2008
SVN commit 853994 by cgilles:
digiKam from KDE3 : Inpainting image plugin is now ported to Editor Tool API
CCMAIL: digikam-devel at kde.org
M +2 -3 Makefile.am
D imageeffect_inpainting.cpp
D imageeffect_inpainting.h
M +38 -13 imageplugin_inpainting.cpp
M +8 -8 imageplugin_inpainting.h
A inpaintingtool.cpp imageeffect_inpainting.cpp#853945 [License: GPL (v2+)]
A inpaintingtool.h imageeffect_inpainting.h#853945 [License: GPL (v2+)]
--- branches/extragear/kde3/graphics/digikam/imageplugins/inpainting/Makefile.am #853993:853994
@@ -19,7 +19,7 @@
$(all_includes)
digikamimageplugin_inpainting_la_SOURCES = imageplugin_inpainting.cpp \
- imageeffect_inpainting.cpp
+ inpaintingtool.cpp
digikamimageplugin_inpainting_la_LIBADD = $(LIB_KPARTS) \
$(top_builddir)/digikam/digikam/libdigikam.la
@@ -31,5 +31,4 @@
kde_module_LTLIBRARIES = digikamimageplugin_inpainting.la
rcdir = $(kde_datadir)/digikam
-rc_DATA = digikamimageplugin_inpainting_ui.rc
-
+rc_DATA = digikamimageplugin_inpainting_ui.rc
--- branches/extragear/kde3/graphics/digikam/imageplugins/inpainting/imageplugin_inpainting.cpp #853993:853994
@@ -6,20 +6,20 @@
* Date : 2005-03-30
* Description : a digiKam image editor plugin to inpaint
* a photograph
- *
- * Copyright (C) 2005-2007 by Gilles Caulier <caulier dot gilles at gmail dot com>
- *
+ *
+ * Copyright (C) 2005-2008 by Gilles Caulier <caulier dot gilles at gmail dot com>
+ *
* This program is free software; you can redistribute it
* and/or modify it under the terms of the GNU General
* Public License as published by the Free Software Foundation;
* either version 2, or (at your option)
* any later version.
- *
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
- *
+ *
* ============================================================ */
// KDE includes.
@@ -29,14 +29,19 @@
#include <klibloader.h>
#include <kaction.h>
#include <kcursor.h>
+#include <kapplication.h>
// Local includes.
#include "ddebug.h"
-#include "imageeffect_inpainting.h"
+#include "imageiface.h"
+#include "inpaintingtool.h"
#include "imageplugin_inpainting.h"
#include "imageplugin_inpainting.moc"
+using namespace DigikamInPaintingImagesPlugin;
+using namespace Digikam;
+
K_EXPORT_COMPONENT_FACTORY(digikamimageplugin_inpainting,
KGenericFactory<ImagePlugin_InPainting>("digikamimageplugin_inpainting"));
@@ -47,12 +52,12 @@
CTRL+Key_E,
this, SLOT(slotInPainting()),
actionCollection(), "imageplugin_inpainting");
-
+
m_inPaintingAction->setWhatsThis( i18n( "This filter can be used to inpaint a part in a photo. "
- "Select a region to inpaint to use this option.") );
-
- setXMLFile( "digikamimageplugin_inpainting_ui.rc" );
-
+ "Select a region to inpaint to use this option.") );
+
+ setXMLFile( "digikamimageplugin_inpainting_ui.rc" );
+
DDebug() << "ImagePlugin_InPainting plugin loaded" << endl;
}
@@ -67,6 +72,26 @@
void ImagePlugin_InPainting::slotInPainting()
{
- DigikamInPaintingImagesPlugin::ImageEffect_InPainting::inPainting(parentWidget());
+
+ ImageIface iface(0, 0);
+
+ int w = iface.selectedWidth();
+ int h = iface.selectedHeight();
+
+ if (!w || !h)
+ {
+ InPaintingPassivePopup* popup = new InPaintingPassivePopup(kapp->activeWindow());
+ popup->setView(i18n("Inpainting Photograph Tool"),
+ i18n("You need to select a region to inpaint to use "
+ "this tool"));
+ popup->setAutoDelete(true);
+ popup->setTimeout(2500);
+ popup->show();
+ return;
+ }
+
+ // -- run the dlg ----------------------------------------------
+
+ InPaintingTool *tool = new InPaintingTool(this);
+ loadTool(tool);
}
-
--- branches/extragear/kde3/graphics/digikam/imageplugins/inpainting/imageplugin_inpainting.h #853993:853994
@@ -6,20 +6,20 @@
* Date : 2005-03-30
* Description : a digiKam image editor plugin to inpaint
* a photograph
- *
- * Copyright (C) 2005-2007 by Gilles Caulier <caulier dot gilles at gmail dot com>
- *
+ *
+ * Copyright (C) 2005-2008 by Gilles Caulier <caulier dot gilles at gmail dot com>
+ *
* This program is free software; you can redistribute it
* and/or modify it under the terms of the GNU General
* Public License as published by the Free Software Foundation;
* either version 2, or (at your option)
* any later version.
- *
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
- *
+ *
* ============================================================ */
#ifndef IMAGEPLUGIN_INPAINTING_H
@@ -35,7 +35,7 @@
class DIGIKAMIMAGEPLUGINS_EXPORT ImagePlugin_InPainting : public Digikam::ImagePlugin
{
Q_OBJECT
-
+
public:
ImagePlugin_InPainting(QObject *parent, const char* name,
@@ -47,10 +47,10 @@
private slots:
void slotInPainting();
-
+
private:
KAction *m_inPaintingAction;
};
-
+
#endif /* IMAGEPLUGIN_INPAINTING_H */
More information about the Digikam-devel
mailing list