Bug 146866

Summary: Add QtScript interface
Product: [Applications] digikam Reporter: Mikolaj Machowski <mikmach>
Component: Plugin-Generic-WishForNewToolsAssignee: Digikam Developers <digikam-bugs-null>
Status: REOPENED ---    
Severity: wishlist CC: caulier.gilles, josvanr, kde_bugs, kunal.t2
Priority: NOR    
Version: 1.3.0   
Target Milestone: ---   
Platform: Compiled Sources   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:

Description Mikolaj Machowski 2007-06-16 15:18:07 UTC
Version:            (using KDE Devel)
Installed from:    Compiled sources
OS:                Linux

KROSS backend for KDE4 version.

Why this and Bug 88932 ?

Not every whim of Digikam user can be implemented due to restricted workforce. With service menus and Kross backend Digikam could be quite easily expanded by people without knowledge of Qt/C++ .

I file it separately because Kross scripts will be in full featured language, while service menus are simple shell utilities.
Comment 1 Mikolaj Machowski 2007-06-16 15:18:50 UTC
I am flagging this wish LATER for KDE4 port.
Comment 2 Arnd Baecker 2007-11-07 12:00:33 UTC
There is a nice overview about KROSS at
http://techbase.kde.org/Development/Tutorials/Kross-Tutorial

I don't know I difficult it would be to make KROSS possible in digikam,
but if it is easy one should maybe give it a try,
together with a simple plug-in.
(E.g one which computes the sunrise/sunset at a given
day and location, as specificied by the image, and displays
the result in the side-bar, if this is possible? 
Or maybe something simpler, like image statistics, obtained
from calls to the database ...)
Comment 3 Arnd Baecker 2007-11-07 12:08:09 UTC
One more link:
http://techbase.kde.org/Development/Tutorials#Kross
which points to a list of concrete examples.
Comment 4 Arnd Baecker 2008-02-29 08:08:50 UTC
Now that the KDE4 branch is under heavy development, I re-open this wish.

I have the strong impression, that with KROSS support, digikam
would allow for many extremely cool things
(Most importantly I am thinking of user contributed scripts...).
Comment 5 caulier.gilles 2008-02-29 08:11:46 UTC
Arnd, 

This is a good candidate for Google Summer of code. Are you seen the message from kde-extragear mailing list about to proposals new subject ?

http://lists.kde.org/?l=kde-extra-gear&m=120403583616241&w=2

Gilles Caulier
Comment 6 caulier.gilles 2010-05-06 09:20:57 UTC
Amarok do not use Kross. this framework is not maintained anymore...

Look there how Amarok handle scripting using QtScript :

http://gitorious.org/amarok/amarok/trees/master/src/scriptengine

http://gitorious.org/amarok/amarok/trees/master/src/scripts

Gilles Caulier
Comment 7 kunal ghosh 2010-05-06 18:03:03 UTC
Hi, since we have decided to add QtScript support in digikam.
I will look into and also interact with relevant Amarok developers. to leverage
their experience.

Will keep all posted.

kunal ghosh
Comment 8 caulier.gilles 2016-07-02 09:19:54 UTC
*** Bug 275241 has been marked as a duplicate of this bug. ***
Comment 9 caulier.gilles 2016-11-26 09:55:11 UTC
*** Bug 179840 has been marked as a duplicate of this bug. ***
Comment 10 caulier.gilles 2018-11-03 11:01:27 UTC
WARNING : with digiKam 6.0.0 and later, we will not support kipi interface anymore. All tools are now located in digiKam core as well for a plan to provide a more power-full integration with Batch Queue Manager and to be able to export a workflow on a web-service.

All export tools are now available everywhere : album view, Image editor, Light table, and Showfoto. Previously, only album view from digiKam core was able to deal with export tools through libkipi.

All export tools are now located here :

https://cgit.kde.org/digikam.git/tree/core/utilities/assistants/webservices

All export tools use now a dedicated interface to communicate with the application : 

- digiKam (database) : 

https://cgit.kde.org/digikam.git/tree/core/libs/database/utils/ifaces/dbinfoiface.h

- Showfoto (files metadata) : 

https://cgit.kde.org/digikam.git/tree/core/utilities/assistants/common/dmetainfoiface.h


There is not direct use of digiKam database for compatibility with Showfoto.

We plan later to provide a dynamic loading of export tools using a plugins mechanism. This will reduce overloading of the internal core libraries. A dedicated devel branch have been created for that, but it's not yet complete:

https://cgit.kde.org/digikam.git/tree/?h=development/dplugins

But take a care, digiKam export tools as plugins will not be shared with another external application. API will still private and only shared between Showfoto and digiKam core. The experience with libkipi was bad and complex to maintain/extend in time.

Gilles Caulier