Jeff Mesnil
Weblog · Dev · Photos · Books

An Outliner application based on Eclipse RCP

July 31, 2006

While cleaning up my workpace, I (re) discovered a small application I wrote to familiarize myself with Eclipse editors development.

It is a simple outliner which reads and writes OPML files. Each OPML file is opened in an Eclipse Editor. You can navigate the outliner, indent/outdent the outlines, create new outlines and edit them.
To toggle between the edition and the navigation modes, you can use the ESC key (like in vi).

Eclipse Outliner Screenshot

The code is pre-pre alpha (hence the 0.1.1 version) and a lot of essential features are missing:

  • no copy/paste
  • The OPML parser is home-made and parses only a subset of OPML 2.0 (but at least, I can read some OPML 2.0 examples such as states.opml)
  • I pretty sure that the generated OPML is not valid

The fun part of the application is the OutlinerEditor. Each OutlinerEditor is composed of a TreeViewer which displays the outline. The TreeViewer is not editable but each cell of the tree can be edited in place (a la SWT snippet #111).

I released this project on Google Code's project hosting under the Apache License 2.0 and created a corresponding web site to complement the project home. You can check it out using Subversion but to make it simpler to check out, you can import in your workspace the Outliner Team Project Set (provided you have a Subversion plug-in like Subclipse). I don't plan to work extensively on this application but I thought it could be of some interest for new Eclipse RCP developers.

I developped the application on Mac OS X and had the bad surprise to see that the application is not working properly on Linux because I can't navigate the tree with the arrow keys (see issue #3). It seems to be a "bug" in SWT since I can't navigate with the arrow keys in SWT snippet #111 either. Though I'm not sure this is a SWT bug or a platform specific behavior...