RFC: ideas for a simple OpenDocument API
mail at dipe.org
Fri Jan 12 03:50:12 GMT 2007
Kevin Krammer wrote:
>> So, that's
>> possible already and you don't need to go through Kross since the
>> KWord2+KSpread2 scripting plugins (in trunk (kword|
>> kspread)/plugins/scripting/Module.(h|cpp) - see also e.g.
>> http://wiki.koffice.org/index.php?title=KSpread/Scripting ) offer a nice
>> on Qt's meta* based interface. So, pure calling of slots should do the
>> trick without the need to link against those libs. IMO it should also be
>> quit possible to use also QtScript to access those both libs and there
>> functionality dynamic...
> Hmm, I am afraid I don't understand. Do you mean applications should (try
> to) dlopen the plugins and use them for ODF manipulation when successfull?
> Don't they require a running KWord/KSpread instantance?
No running instance is needed. So, all that would be needed for the case of
KSpread is to have KSpread installed and then you are able to dlopen the
extern QObject* krossmodule()
(located in koffice/kspread/plugins/scripting/ScriptingModule.cpp) within the
module. The returned QObject then provides all we need to
load/save/manipulate ODS files by using Qt's Meta-Object system. Compared to
my prev posting I see even one more way to use it then;
* via Kross
* via KjsEmbed
* via QtScript (I didn't test yet if it's mature enough)
* via pure Qt with some dirty-hacks using QMetaObject::invokeMethod, etc. (ok,
that's very dirty since there are no compiletime-checks, but I expect to have
that API for a long time stable once KO 2.0 is released anyway).
Sebastian Sauer aka dipesh[sebsauer]
Fingerprint: 8F1E 219B 16E6 4EC7 29CC F408 E193 65E2 9134 2221
Coder in http://www.koffice.org && http://www.kmldonkey.org
More information about the kde-core-devel