Qtquick binding for KIPI plugins implemenation
Needs ReviewPublic

Authored by artemserebriyskiy on May 21 2017, 7:27 PM.

Details

Reviewers
None
Group Reviewers
Digikam
Summary

Hi!

I would like to submit this WIP branch for preliminary(!) review.
The code implements binding around KIPI library for QML. Following classes are wrapped:

  1. ImageInfo
  2. ImageCollection
  3. Interface

Also the following classes are created specifically for QtQuick:

  1. Model that wraps ImageCollection and can be used with Qml Views. Model provides access to thumbnail, preview and normal photo
  2. QtQuick Image providers that could be used to request previews/thumbnails through KIPI::Interface

Test utility is provided. Menu item 'Tools -> View in QmlImageViewer'. Code is in subfolder 'tests/qmlimageviewer'

The code is Work-In-Progress and contains numerous TODO's, some files has inconsistent 'space'/'tab' indentation etc, most of plugins are disabled in CMakeLists.txt to speedup buiding etc. I'll of course fix it all before making a real pull request.
At the moment I'am interested in some early feedback:

  • Will you accept QML bindings to KIPI plugins at all ?
  • Is there any comments/requests to this implementation ? Classes that should be rewriten in different paradigm, or may be I use incorrectly/suboptimally some KIPI interfaces/methods etc. It is easier to rewrite things in early stages of development.

These things I plan to look into and, if possible, implement before actuall pull request:

  1. Moving binding into a standalone Qml extension. That will allow creating plugins in pure Qml and make calls to ugly InitKIPIQuick and InitKIPIQmlEngine unnecessary.
Test Plan

Test utility is provided.

Diff Detail

Repository
R480 Kipi Plugins
Lint
Lint Skipped
Unit
Unit Tests Skipped
artemserebriyskiy added a reviewer: Digikam.
artemserebriyskiy retitled this revision from Qtquick binging for KIPI plugins implemenation to Qtquick binding for KIPI plugins implemenation.May 21 2017, 8:16 PM
sfrei added a subscriber: sfrei.May 30 2017, 12:47 PM

As you may have noted, the digiKam project isn't (yet?) active on Phabricator. To get feedback, open an issue in bugzilla (maybe linking here).
I don't know anything about QML and almost nothing about KIPI, so can't really be of help.