[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kplato
Subject:    Re: KOffice questions
From:       Boudewijn Rempt <boud () valdyas ! org>
Date:       2009-05-21 6:59:30
Message-ID: 200905210859.31065.boud () valdyas ! org
[Download RAW message or body]

On Thursday 21 May 2009, Richard Georg Bayer wrote:
> Hi.
>
> I know you're busy working on KOffice 2.0 and I am looking forward to it!
> Yet, I have some questions regarding KOffice extensibility. So here they
> come:
>
>
> 1) The most general: What are the ways of driving KOffice's actions
> from the outside? 1.1) I mean can KOffice be used as a tool through
> it's API to build up documents? 1.2) And other ways?
>
> Example:
> MS Word for example (please don't kill me for these lines) exposes
> classes, like the MSWord.Application, .Document, .Selection, .Range
> etc. etc., with which you can edit a document via API. It has stupid
> limitations, can not be debugged well and Word often shows up asking
> if you really want to overwrite that bloody file marked as readonly.
>
> This applies to Word, Excel and PowerPoint. Is there a similar
> possibility in KOffice?

Well, that was the intention. I'm not sure how big our dbus api is, compared 
to the dcop api we had in 1.x. At one point in time the kword scripting module 
was in a good state, but it got unfortunately broken again during development.

But basically, the idea is to make koffice applications externally scriptable 
through dbus and internally scriptable/extensible through kross, and through 
plugins written in C++.

> 2) Was (Is) Kross available in versions previous to KOffice 2.0? I
> guess not but please tell me.

Yes, but only for a few applications, like Krita.

>
> 3) Are these scripts you can write thanks to Kross able to drive the
> application from the outside (is the same as 1.2)), or are they just
> for use from within the suite (like for macros, filters etc)?

Kross is for use from within the application; dbus for use without. However, 
there has been talk of automatically exposing the api defined for kross 
through dbus.


> So that would be it.
> Well, there is one more more KDE general: 4) How is OpenParts related
> to KPart? Both are component architectures, right?

I think, but I'm not too sure, that OpenParts was actually the original name 
for KParts. So both would be the same thing, actually. KOffice 2.0 doesn't use 
KParts anymore to create compound documents: we use flake for that now, which 
provides a much finer-grained object model. KOffice application still provide 
parts for embedding in other applications and certain KOffice plugins are 
actually implemented as parts. (Whether that actually is necessary, I'm not 
sure, I'm mainly thinking of the Krita extensions.)
>
>
> I appreciate your time with this. I would not ask these if I would
> have found answers elsewhere. So thanks in advance.

Thanks for your interest!

-- 
Boudewijn Rempt | http://www.valdyas.org
____________________________________
koffice mailing list
koffice@kde.org
To unsubscribe please visit:
https://mail.kde.org/mailman/listinfo/koffice
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic