Calligra/Meetings/Begin 2011 meeting/Ideas
Tell here about things you want to discuss, so that we can prepare an agenda.
Please add yourself as an 'owner' of an idea and prepare something if applicable to make optimal use of our time. Indicates what you want to be developed in a general session (on Saturday), or in a BoF (on Sunday)
There are several issues or lacking aspect in Calligra's plugins.
- First of all right now loading an applications tends to drag a lot of other applications stuff, for instance "the spread sheet shape" which is loaded by many application also load kspread. A solution would be to load shape-on-demand, this trigger a problem with shapes that share the same tag in an ODF file and need some way to know which shape to use (solution could be two c++ plugin, one with a factory one with the shape/tool, or if we can define which shape to use using a text description (like it is done by mimetype definitions) or a small js)
- UI for enabling/disabling plugin, shapes should probably allways be available for loading a document, but might be hidden in the UI
Keep a 6 month schedule ? go for a three features release cycle per year + 1 long-term-support ? allways summer in trunk ? IE define a new workflow.
- Id like to see each application provide a scripting API, that is callable from all other applications
- E.g At the click of a button on a form in Kexi, i'd like to use the Tables API to parse, or write out to a spreadsheet, or the Words API to write out a document
- Or, in tables, run a script that gathers data from various sources, including a kexi database
- This would probably be possible by sharing the KexiAdapter Kross class?
- Perhaps..each application could provide a plugin, that exports a single Kross::Object containing the app API/objects??
- All ideas open for discussion!
Going more Qt-only way
i.e. going the smart way, take advantage of our core strengths
- Intended audience: all devs
- I propose to go with Qt-only libs a bit more, to make our offerings more independent each-other and drive potential contributions of new kind (Qt-only devs, non-KDE devs...).
- Filters are good candidates for this group, and especially the lower-level libraries like mso Smart Art, Diagrams.
- KoReports are nearly Qt-only already (as a fork of OpenRPT it has never used kdelibs in fact). The same for KoProperty lib.
- I am investing into Qt-only Predicate a lot too (), as you know it'll be dependency of Kexi, hopefully 2.4.
- Moreover I also believe that every app has some nontrivial bit of code that can be provided on the outside with a simple API, say, using the
Facade pattern. For such APIs, KDE dependencies are not needed.
- At a conceptual level the idea may evolve into slightly different model of composing our building blocks: develop core functionality as Qt-only (but with cmake) and then extend for KDE, to get the integration level and look&feel we all want. A bit like it is in WebKit/QtWebKit tandem.
Abstraction and custom UIs topics
- Intended audience: library devs and Words, Tables, Stage devs
- I'll present possible extensions (recognized as low-hanging fruits) for the koabstraction
- Next steps for the abstraction can be discussed, ans also hopefully with 3rd-party users of the Calligra frameworks
- Think about examples, demo(s) providing reference code for 3rd-parties
- plans for plugins could be discussed in more details by a smaller group of people (Cyrille)