Archive for the ‘Vex’ Category

Vex: Filtered Content Assist

January 8, 2010

Vex was created 2002 at SourceForge but in general you don’t notice Vex’s age and its long inactive development. The intuitive concept of editing XML files with a word processor like interface is still up-to-date and liked by both XML experts and non-engineers. After being hijacked by Eclipse Dave made Vex’s data model compatible with that of the Eclipse XML Editor to build a multi-page editor containing both editors as a page each. The switch from the old Eclipse action to the new command framework was also not noticable for Vex users.

But there has always been something that annoyed me: the dialog to add a new element and its twin, the dialog to convert an existing element into another element (keeping all its content). It just didn’t look Eclipse-like:

However, the dialogs could not be replaced by Eclipse common code completion content assists: The text to filter the content of the dialog must go somewhere but, depending on the DTD in XML documents, text (#PCDATA) is not allowed at every position where elements can be added. Thus, a mixture between Content Assist and Quick View was required.

Furthermore, without the window titles the two dialogs are indistinguishable. In the latest integration build of Vex, the Convert Element dialog now has short descriptions like Convert ‘AAA’ to ‘BBB’ instead of the target element names only.

As a side effect, it is now possible to extend the Change Element dialog to a Quick Fix content assist containing actions like Move column left/right or Move block/list element up/down.

In my view, Content Assist and Quick Fix make Eclipse Eclipse-like, don’t they?