Daily Archives: March 2, 2008

OOHanzi 0.3 released

Change Log

  • 20080302:

    • Updated for OOHanzi 0.3: the only new functionality is the addition of an “About…” menu item.
  • 200802??:

    • Added some code to make things a bit more user friendly when a JRE is not properly installed.
    • Modified the way web browsers are launched.
    • Changed the nomenclature of menus and some functions.
    • General fixes to improve stability in Windows.


This documentation deals with version 0.3 of OOHanzi. This software is very much at the Alpha stage of its life-cycle. Expect bugs. Expect nonsensical design decisions. Expect quirks.

Imagine a paper even before it is at the draft stage, when it is still just a bunch of thoughts quickly put together. Or notes taken at a conference. At this stage, OOHanzi is very much the programmatic equivalent of that paper or those notes.

Continue reading

The pain of writing OO extensions

I’ve been working on some Chinese extensions for OO but at every step of the way I have to fight with obscure documentation and really strange design decisions. Here’s the latest example. Want to display an image in a dialog? We’re not talking about anything fancy here but just one single image which remains static. There’s nothing dynamic about this. So can you just put in the relative path in the dlg:src parameter which indicates where the image lives (e.g. dlg:src=”../image.jpg”)? No way! That would be way too simple and would violate the spirit of OO which is “why make things simple when you can make them complicated”. Instead you have to create two additional XML files to tell Open Office where to find the image in your extension and then at run time you have to query Open Office to find where the image really lives and load it into your dialog. Yay! The reason for this is that you do not know ahead of time where your extension is going to reside on disk. You’d think a relative path would be rock solid because it is relative to where your extension is located, but no: that does not work. You have to file extra paperwork with Open Office to declare the existence of the images.

(I searched through the dialog files bundled with Open Office to see if I could find something useful in there but what I found were paths like “file://D:/…”. Ooops, I guess even the Open Office developers are having a hard time keeping their paths portable.)

And this is just the latest in a loooooooooooooooooooong series of grievances. Here’s a new motto: “you don’t know the meaning of bondage-and-discipline programing until you’ve tried to write extensions for Open Office.” Open Office is like a bureaucrat: you can’t do anything without filing multiple forms to announce what you want to do and justify it.

References: here, here and here.