KDE integrates OpenOffice.org

In this interview, Jan Holesovsky, author and leader of the
KDE.OpenOffice.org project, now employed by SUSE, gives us a glimpse of what to expect in terms of OpenOffice.org integration
on your KDE desktop. The future sure looks bright!



Please give us some background information about yourself.

I am 27 years old, living in Prague, the Czech Republic, graduated from
Charles University,
also in Prague.

When not sitting in front of the computer keyboard, I am usually in hills or
mountains with my friends---trekking, climbing, mountain biking or
cross-country skiing depending on the season.

What's the focus of this project and how did it start?

It began in July 2003 when I read an article
about Ximian's work on
improving OpenOffice.org. There was also a note about a (now unmaintained)
Bonobo OOo integration project, and I was wondering, whether anybody
had started a similar project for KDE.

I had just graduated, and I wanted to travel in October, so instead of
searching for a job I was reading the OOo documentation and programming
cuckooo . The initial version
was available in the middle of August, so I still had some time left before
the travelling. I started the "OpenOffice.org Qt port",
now "KDE vclplug", because I wanted to replace all the OOo GUI toolkit "VCL" with its Qt implementation. I
finished a proof of concept a few days before I left. When I returned, I wanted
to continue my OOo work as an employee.

I started KDE NWF in December when
I saw the big demand
for OOo Native Widget Framework

on [email protected].

How many people are working on this?

Currently, I am the only developer. Lukas Tinkl sent me a patch to NWF that
corrected behavior of combo boxes and introduced tab bars.

Are you paid to work on this project?

The search for work resulted in a contract with SUSE.
I became their employee the last week, and now I am paid to continue the KDE OpenOffice.org
integration. Here I want to thank Holger Schroeder once more. He donated the money that
covered the first part of my Native Widget Framework development.
All the work on cuckooo and KDE vclplug (OOo Qt port) I did as a volunteer.

Is there a website? Is there a CVS repository somewhere?

kde.openoffice.org is the main page of the integration
project. It is an official OOo "Incubator" project,
so it has all the possible support from the OpenOffice.org side.

There is no separate CVS repository for the project. KDE Native Widget
Framework is already in the OOo CVS repository
(branch cws_srx645_nativewidget1);
KDE vclplug (OpenOffice.org Qt port) will hopefully appear in the OOo CVS
repository as well.

When looking at the website it seems that there are 3 subprojects:
Cuckoo,
OpenOffice.org Qt port
and KDE NWF.
Can you describe the technical differences between the three projects
that are part of kde.openoffice.org



The idea of cuckooo is to use the UNO API
of the OpenOffice.org to access its
functionality from Konqueror so that people could
browse to MS Office documents which would
open directly in the browser's
window
. Cuckooo itself is a KPart which controls an instance of OpenOffice.org
running in the background and displaying to the KPart's window.

KDE vclplug, formerly known as OOo Qt port, has the goal to get OOo controlled by Qt events and drawn by Qt
painting methods instead of pure X calls. It is developed for
OOo 2.0 and it is still
quite experimental stuff. It does not support KDE styles, but once the
Qt events are working, it will be possible to use standard KDE dialogs (e.g.
the file dialog).

OOo NWF uses the Native Widget Framework
to provide OOo with the
look
of
the
theme
that the user chose for his KDE desktop. The framework uses the QStyle API to draw its widgets the same way
KDE/Qt would. OOo with NWF does not have a Qt event loop. It is developed for
OOo 1.1, but it will be used in 2.0 as well; then it becomes part of the KDE
vclplug subproject.

Is there any other work being done besides these three subprojects?

You might be interested in
"OpenOffice.org
1.1 toolbar icon themes
",
a script and a set of KDE icons
for OpenOffice.org by Rohit Kaul. There is also "OOo kfile-plugin"
by Pierre Souchay (screenshots 1,
2,
3).

What is the current state of KDE integration?

The current version of cuckooo (0.3) seems to be stable and I am not going to add
new functionality in the near future. KDE NWF is nearing completion. I expect a fully usable version in February.
KDE vclplug is a long term solution, but it will take quite a lot of time to
finish. I would like it to be a part of OOo 2.0 which is estimated in Q4 of
2004 or in the beginning of 2005.

Does it seem feasible to ditch the abstract GUI of OOo and work directly
with Qt?

No, OOo will still have to have its own GUI layer. However there are plans to
define a more abstract OOo GUI toolkit "Toolkit2"
based on UNO calls. Services of "Toolkit2" would be implemented in toolkit which is native
for given platform (e.g. Qt for KDE). Unfortunately, due to the complexity of
the rewrite it is planned as an "after 2.0" work.
See these two
messages for more information.

Will "integration" include support for important low level KDE features like
the Kiosk framework sometime?

First of all, the KDE NWF and KDE vclplug have to be stabilized. Then I can
integrate KIO and KDE dialogs to OOo and continue with further efforts, be it
KParts, Kiosk or other KDE features. I am afraid it won't happen before 2005.

Will there be a KDE "version" of OOo in such that it looks and ACTS like a
KDE app?

That is my intention. :) But it will take a lot of time. NWF is the first
iteration, and vclplug will help; Toolkit2 is hopefully the definitive
solution.

A lot of people that have looked into developing OpenOffice.org found it very complicated,
what is your experience?

It is really a huge amount of code. Luckily it is quite well modulized, so
once you get used to it, you do not encounter big problems. And if you do, you
still have OpenOffice.org Cross-Reference handy.
If you want to know more about OOo development, try
CPH's excellent CVS digest,
mainly the first one with the introduction.

How is it to work with OpenOffice.org people? Does Sun have a big influence
over the development?

I like the way the OOo people cooperate very much. They are very supportive
and every volunteer is welcome. KDE.OpenOffice.org couldn't have happened without
the support from the OOo side. I can't really say anything about Sun's influence over the development,
as my only contact with Sun on an official level was when I signed the
JCA
(a copyright assignment system).

Where do you see KDE.OpenOffice.org going and what are your plans for it?

The mission statement of KDE.OpenOffice.org says "The goal is to provide tight
(but optional) integration of the OpenOffice.org to the KDE environment
beginning with KDE look and feel and ending with KDE data sources." I believe it can be achieved.

What is the project most in need of now?

Time. It is the only limiting factor at the moment. :)

Dot Categories: 

Comments

by ac (not verified)

OOo Qt won't have to load the VCL toolkit, which is a pig. So yes it will have to load Qt but it won't have to load VCL.

by Mathieu (not verified)

VCL ??? Borland VCL ??
i did not know...

well, yeah, if they just add Qt, that won't be faster, but if don't use anything else than Qt anymore... that will me darn faster ;)

by Gr8teful (not verified)

> But it surely won't start up faster.
> More certain is the other way round, because it now needs to load itself and Qt as well.

Call me ignorant (well, I am, it's been years since I programmed anything...), but couldn't Qt be made to load upon KDE start? (Honestly, I thought it already worked this way, since it's, duh, common to all KDE apps)

Just my curiosity.

Again.

Thx.

PS: BTW, great work, Jan Dewd, you got a really nice idea! And one of those screenshots has the menu option "Fail". Almost killed me! :-)

by djamé (not verified)

OOO too slow at launch:
I had the same problem and i've found that deleting the file
OOinstall/share/psprint/pspfontcache was THE solution.
Note that this problem was with the 1.0.1 version...
after 2 ou 3 launches this files was 3 ou 4 megs........
so i made a little script which erases this files after quitting
OO

Djamé
ps : I should have fill a bug report but I hate those bugzilla apps.....

by anon cwrd (not verified)

Not that much faster. Bit less memory taken, better response times hopefully.

10 minute startup delays suggest a hardware or sware screwup. No memory, Old/Bad/overworked HDD, hea-vy background load?

For reference, I get startup times of well less than 20 seconds when starting Openoffice 1.1 and adaquate response, under Fedora under VMware under Win2K on an 800 Mhz laptop with a low load, 512 Mb ram and a new hdd.

As for a QT only version, if it ever comes up, my vote is against. I like QT but I like having Lgpl'ed Openoffice on multiple OS's more. There's no GPL'ed QT dev library under windows, which might hinder debugging and it's acceptance.

(flamebait, Gtk maybe :-)

by mathi (not verified)

is there similar effort with respect to mozilla? That will be awsome too....

by dood (not verified)

Someone would need to resurrect the Qt branch of Mozilla again..

see http://bugzilla.mozilla.org/show_bug.cgi?id=178987 if you're interested.

But I think 2004 will be the year that khtml gains massive ground with gecko, with webcore 1.2 and khtml 3.3 coming out later this year. http://weblogs.mozillazine.org/hyatt/ is a good place to find info on stuff Apple is doing wrt. khtml.

by KaiRo (not verified)

Well, see for my comment a bit above that already covers that issue (Mozilla integration) from my view as active Mozilla contributor.

I hope to see two open source engines being able to share ideas and force each other to get better and better in the future ;-)
On the other hand, I don't think all those people want to use KHTML/Konqueror over Gecko/Mozilla (like many don't use KDE Multimedia apps but XMMS), as they like Mozilla in some way (or are contributors like me), or don't like their file manager being their browser, and still want nice integration with their favourite Desktop environment.
Good competition is always a nice thing to have, usually that helps both competitors (and remeber that e.g. Dave Hyatt, senior Mozilla hacker, now working at Apple on KHTML, is still listed as co-maintainer of Mozilla Firebird). Two open project with similar goals, exchanging ideas (and perhaps even some code), do make the OSS world better and even more free - it's about being able to choose, right?
And, well, Mplayer and xine seem to work together to a certain extent as well ;-)

by Roberto Alsina (not verified)

here's nothing preventing anyone from creating a KHTML-based web-only application.

My personal guess is it's a two-week project for a usable app, since all the network and display code is done already. All that would have to be written (or ripped off Konquy ;-) is the shell, bookmark handling and small chunks of code.

A 5KLOC project, if that.

by Boudewijn Rempt (not verified)

What I would like to have instead of a bookmark menu something like the kcontrol ioslave. Icons and folders for bookmarks and bookmark folders. Shouldn't be hard to do... Um -- perhaps it already exists?

by Roberto Alsina (not verified)

I personally just use the toolbar thing in the universal sidebar. Saves me from having to open konqueror, *then* open bookmarks :-)

by Boudewijn Rempt (not verified)

I'm afraid that it takes longer to display the root bookmarks menu than it does to open konqueror on /opt/kde3/bin for me... And the bookmarks sidebar thingy doesn't support drag and drop of bookmarks to folders. Oh, well -- I guess it's just a matter of personal preference: I like having a file-browser interface for a lot of things, and I would love it for bookmarks.

I am looking at the settings:/ protocol to see whether I could marry it with the bookmarks code, but I haven't high hopes of actually doing something, since I wasn't planning on hacking anything but Krita tonight.

by testerus (not verified)

"And the bookmarks sidebar thingy doesn't support drag and drop of bookmarks to folders."
There would be a simple solution: make keditbookmarks into a kpart
http://bugs.kde.org/show_bug.cgi?id=53191

by Anonymous Custard (not verified)

You could try to rip out the code from

http://www.boddie.org.uk/david/Projects/Python/KDE/Docs/IOSlaves.html

and rewrite it in C++ for improved performance.

by Boudewijn Rempt (not verified)

Cool! Thanks for the link.

by fault (not verified)

> My personal guess is it's a two-week project for a usable app

more like 2 day project.. I made a khtmlpart-based browser ( http://dot.kde.org/1010344585/1010399909/1010406855/1010409031/1010470469/ ) circa kde 2.2 that supported tabs (before konq did in kde 3.1) and manual session handling, etc... unfortunatly, I lost the source forever in a hd reformat since i never released it.

I might still make another khtmlpart-based browser though.. I have a a lot of UI ideas from safari and the new omniweb :)

by gerd (not verified)

There is an Crystal icon set.

by Víctor Fernández (not verified)

You may use Keramikzilla, a Mozilla skin that matches the Keramik style:

http://www.kde-look.org/content/show.php?content=8685

Plastikzilla will also be the next project when I finish Keramikzilla.

by aleXXX (not verified)

Hi,

this sounds very interesting, please contact me directly via email:
neundorf at kde.org

Bye
Alex

by Fabrice Mous (not verified)

Plastikzilla would be cool

Fab

by KaiRo (not verified)

Wow... Now this looks very nice - er, you want to visit us at the Mozilla dev room at FOSDEM in Brussels this year? ;-)

Now this would be (less cross-platform but) easier to do in an ideal world where the Qt port of Mozilla lives happily and even has nsITheme implemented so that Mozilla could use widget styling directly from Qt/KDE :)

by anonymous (not verified)

yep...

and kde xmms and kde gimp would be nice too...

by gerd (not verified)

How can we get rid of the vertical icon bar in the OOWriter window and get dockable icon bars?

by Rob (not verified)

Come on Apple....about time you guys did the same thing!