The Road to KDE 4: New KOffice Technologies

In this week's edition of the Road to KDE 4, we'll take a look at
the up and coming KWord 2.0 as part of the KOffice project. KWord 1.6.1 is
already a powerful KDE-integrated word processor, but with KDE 4
technologies, KWord 2.0 promises to be among the most powerful free word
processors available. Read on for more details.

KWord is part of the KOffice suite of applications which, with a few exceptions such as Kexi, has been visible thus far as a KDE-only application living under the shadow of the much larger OpenOffice.org suite. But this won't always be so, as the new KDE 4 technologies allow KOffice to exist as a native application on other platforms such as Windows and Mac OSX. Look out for more details on KDE support for these platforms in a future article.

One of the biggest assets of KOffice and KWord is its native support for the OASIS OpenDocument standard, which is shared by many office applications these days (including OpenOffice.org, Google Docs and others). Expect improved ODF document compatibility for KWord in the future as the developers strive for complete specification support.

Lets take a look at some screenshots from the development version of KWord. Notice the nice anti-aliasing of every element of the UI. On my system, it doesn't appear noticeably slower than KOffice 1.6.1. One of the most improved areas in KWord 2 is the text formatting and layouting, which definitely deserves some more exposure. It's not yet complete, but as you can see below, it's definitely much improved from previous versions. You really have to experience it yourself to appreciate how smooth moving, resizing and rotating Flake shapes is in this new version.

All manner of objects are being converted to the new Flake library, for instance KFormula elements, so you can insert nicely rendered math into your documents without any trouble. This support could make KWord as exciting to use for page layouts as KPresenter, as you are no longer restricted to dull, square document shapes. These changes should enable KWord 2 to behave as a respectable basic desktop publishing application.

Also noticeable in this early preview version is the lack of spell checking support, as this is being reworked for the upcoming Sonnet architecture for spelling and grammar corrections. (Which word did I misspell in my screenshot?)

But this is not the only improvement new to KOffice 2. Also in the works is scripting support for applications through the new and extensible scripting framework dubbed Kross. It has received a lot of work and looks to be one of the killer features of KOffice 2.

The following screenshot shows the new scripts menus in KWord:

Also notice how I moved the tear-off toolbars from the previous screenshot. I placed them by drag-and-drop, and they automatically tabbed up. This is all done very smoothly by Qt with no noticeable interface flickering.

Of course, the same scripting and rendering features have made their way into other KOffice apps as well. KSpread and scripting are a perfect fit, and there is a lot of power exposed to the advanced user.

For people interested in more details about Kross, check out this article on the development and usage of Kross in KSpread.

These are just some of the many improvements in the works for KWord and KOffice when the KDE 4 platform rolls out. Of course, these screenshots are of the development versions, which are quite unstable at the moment, but jugding by the level of activity today in the developer channels (like #koffice on irc.freenode.org) there is a large amount of momentum behind this release.

KOffice has a separate release schedule from KDE 4, so they may or may not release concurrently.

Comments

by otherAC (not verified)

gnome has icons & text as default mode.
AFAIK there is no easy way to turn it into icon mode (e.g. no right clicking on the toolbare, like in kde or windows)

there is a control panel for those menu toolbar and icon settings, which works for most Gnome applictions. unfortunately not all GTK apps are quite so good at supporting. it would also be better if it were built directly into the toolbar widget as standard.

Perhaps a little late but I just wanted to add that I think thats really amazing stuff going on below the toolbar line! :) I just hope you can find a magic third way for above.

I had a look at "selective text on right" and while its nice that frequently used buttons have larger click area, it also means that the ones that aren't selected to have text and also have an unintuitive icon are still hard to understand for newer users.

How about the text on right becomes available for all buttons when highlighted by the mouse, like a tooltip, but inside the button producing the larger click area and a nice description. The toolbar might dynamically go onto a new line to make space for the text but only while the user is exploring buttons.

How about the description just appear in the status bar as the user rolls their cursor over the toolbar icons? ...

by Mircea Bardac (not verified)

If the icons are unintuitive, they need to be fixed :) The Oxygen team already did a great job with the KMail Icons - http://oxygen-icons.org/users/david/?p=31

Text on the right when highlighted would produce great flicker IMO. I don't think it's a feasible solution. I've seen no applications doing this.

by Cerulean (not verified)

I don't find all those new KMail icons particularly intuitive. Sure, they look good (fairly crystal-esque? Is that just me?) but I mean, the reply/forward buttons -- no idea what they did when I first scanned the interface. There are another couple of buttons with arrows next to them. I wouldn't have guessed by the colour or way they were facing that one signified reply and the other forward.

As for "great flicker" -- all Qt4 widgets are double buffered by default. Flicker should be a non issue in KDE4, so that's not a constraint.

I tried such an interface where the buttons would become larger when you hover over them. It's a nice feature when you move from low to high. But when you move your mouse over them, it is almost impossible to select all buttons, because there position is constantly changing.

If you are on a button to the left, and you want to go to the next button you would move there, at the moment you leave the first button it would become smaller, automatically maybe putting you on the third button.

It think the selective text on the right like outlook 2003 is doing it, is not bad....

I see what you mean, but if they slowly returned to their original size without the text then you could mitigate some of the clumsiness of it, especially if the new button grew at the same rate as the last highlighted button shrank.

I tend to dislike horizontal stuff like that anyway, I have widescreen and like to make use of the width rather than the height. You could have these buttons working nice low to high as you said if the toolbars were down the side rather than across the top. Why waste the height with toolbars when height is almost always the shortest screen dimension?

Maybe a better idea would be to have a column of icons on the side and have a delay before all buttons in the column showed their text by growing the buttons sideways over the document. That would give big click area and very rapid visual scan of all icon descriptions.

by winter (not verified)

Some of the comments expressed are real concern - I suppose. Others of them I wonder if they are Gnome users or MSword users or someone just having a bad day.

In short, if you think you want to use something else, then use it. When something or someone tries to please everyone, it becomes useless. You can spread yourself out too thin.

I am very thankful for Koffice and I like it much more than OpenOffice. It's fast and handles what I need to do fine. I hope Koffice2 fixes the concerns of most users.

Thanks for the good work guys!

by xpol (not verified)

Will kword 2 be able to correctly import, display and export ms-word docs containing pictures?
Currently kword seems unable to display and manage pictures in ms-word documents.

by Abe (not verified)

As the old saying goes "You give them an inch, they want the whole 9 yard"
I am sure some of you are sincere but others are just devious. Either way, you guys should be thankful and happy about all this great work that is being done. The developers are pretty excited about their accomplishments, instead of congratulating them, you guys chose to steal their thunder. Shame on you. I really mean it. SHAME ON YOU.
I for one think what is being done now is astonishingly amazing. Great work guys and congratulation on a well done great job.

by ac guy (not verified)

+++

by Sebastian Sauer (not verified)

> instead of congratulating them, you guys chose to steal their thunder
Nah, it's not that easy to steal their/our thunder :)

Also it's quit human to don't note what works fine but to complain about things that don't work or do not work as expected. To strive for perfection is a useful characteristic and it does help them/us to note where things need to be improved to be one step closer to deliver a perfect product (what is in reality never possible since humans themself arn't perfect what is good cause perfect humans would be sooooo boring).

> I for one think what is being done now is astonishingly amazing. Great work guys and congratulation on a well done great job.
I absolutly agree there and also like to say thanks to all their/our users, contributors, artists, translators, developers, bugreporters, helpers, friends, ...

by Abe (not verified)

I understand that constructive criticism is part of the process of reaching high quality and I am glad you are taking it this way. But here, we are talking about a product that is still in its early development process and nothing has been release yet.

The developers are pretty excited to let us know about their progress and accomplishment so far and for us to join them in their excitement. Why not wait until they have enough done to give them all the feedback they need?

At this stage, all they deserve is praise and encouragement to boost their self esteem and make them feel good about their great work. They are humans too and they only can do so much at a time. Besides, some might be sensitive about issues where too much criticism could hinder their fast progress.

My post was not only to criticize the posters but to make sure that the developers feel that their accomplishments are well appreciated.

by Sebastian Sauer (not verified)

> Why not wait until they have enough done to give them all the feedback they need?

In my eyes even "bad" feedback is better then no feedback since it shows that ppl actualy care.

> where too much criticism could hinder their fast progress.

I guess to have that happen someone really needs to be blind since it is enough to take a look at the sourcecode to see what great work was done already and that (what is at least most important for me) it was done right even if it did took much more time then to hack quickly something together. IM(HO) the quality of the sourcecode speaks for itself and it makes just fun to read it.
I would even go so far that it's evil to have such nice sourcecode since it's not easy to take away the "book of code" to continue reading other non coding related books. KOffice2 even hinder me to finish the latest fantasy-book I got around xmas cause the story the sourcecode tells is much more interessting :)

> My post was not only to criticize the posters but to make sure that the developers feel that their accomplishments are well appreciated.

Thanks for that and the intention of my post was only to outline that it's not needed to shame cause of beeing human. It's much easier to just ignore postings that are "to much human" and just concentrate on those postings and ppl that provide constructive feedback, where it spends a nice feeling to deal with and where the positive karma is visible :)

by Abe (not verified)

OK, I understand your are a saint, but many others aren't.
As the saying goes "you will catch more flies with honey than vinegar". So feedbacks in more pleasant fashion will get more attention.

by Thomas Zander (not verified)

I will certainly agree to that :)

by martin (not verified)

thank you for these interesting articles!

by Felix (not verified)

What I really love in kword is that there are some technics taken from the DTP world into the "normal" word processor. It is not a MS Office clone, it is an individual application trying to go new ways (not always, maybe not enought, but the developers do)

Thanks for you series again !

Greetings
Felix

by ZEM (not verified)

I clicked on the link in the article about Sonnet architecture http://jrideout.blogspot.com/2006/12/how-is-sonnet-stacking-up.html
and my Konqueror crashed (sic!). I did it three times and every time it crashed :D

KDE 3.5.4

by kollum (not verified)

Yes, so do my beloved konqui, one of the few pages that make me use firefox.
It seems you can't go on any of the page of this blog whith Konqueror.

by -hector- (not verified)

Working fine with kde 3.5.5

by Madman (not verified)

The incorrectly spelled word was, "definately".
I know because I always get that word wrong: it's, "definitely". :P

I would very much like to use Koffice above anything else (due to desktop integration), but I found that, when I save a file in ODF format, I loose all the actual formating (such as different sized headings), and that .kwd format actually doesn't work (Complaints about a parsing error every time).

If these problems are fixed, then I'll take Koffice as it is - I still find myself depending on Openoffice.org, which is a shame.