Skip to content

v3.5.0

Latest
Compare
Choose a tag to compare
@michmech michmech released this 03 Apr 09:01
· 20 commits to master since this release

It's been a while since Xonomy had a new version released, so quite a few new features have accumulated.

Major features

  • Say good-bye to carpal tunnel syndrome and say hello to increased productivity: Xonomy now supports keyboard navigation. You can now set up Xonomy in your application so that your users will be able to navigate around the XML document with the keyboard as well as the mouse. More info on this can be found in section 15.2 in the Xonomy manual. Thanks to @rodoch for helping with the implementation of this much-requested feature.

  • Related to that, it is now possible to assign keyboard shortcuts to menu items. This is documented in section 4.5 of the Xonomy manual.

  • To make it easier for your users to drag and drop elements around the XML document, Xonomy now offers an optional lay-by area which is displayed on the right-hand side of the screen. Users can drag and drop XML fragments into the lay-by, keep them there temporarily, and then drag and drop them to some other location in the XML document. See the properties allowLayby and laybyMessage in section 14.1 of the Xonomy manual.

Minor features

  • Menu items can now have icons, this is documented in section 14.4 of the Xonomy manual.

  • The askRemote asker function has been extended with an additional feature which allows your client-side application to add extra items to the list returned by your server-side hookup. See section 13.4 in the Xonomy manual.

  • You can now allow your users to switch Xonomy's mode (either nerd or laic) by clicking a small icon in the corner of the screen. See the properties allowModeSwitching and onModeSwitch in secion 14.1 of the Xonomy manual.

  • Several new menu action functions have been added: Xonomy.duplicateElement, Xonomy.moveElementUp, Xonomy.moveElementDown, Xonomy.mergeWithPrevious, Xonomy.mergeWithNext. These are documented in section 4.2 of the Xonomy manual.

  • When adding a new sibling element with the fuctions Xonomy.newElementBefore and Xonomy.mewElementBefore, the new element is always moved to its correct position as dictated by the mustBeBefore and mustBeAfter properties of its element specification.

  • Some improvements have been made to the handling of hierarchical menu items in the menus of elements and attributes. One improvement is that menu items which are empty (= contain no subordinate menu items) are now automatically hidden. Another improvement is that you can specificy whether you want a hierarchical menu item to be expanded or contracted with the .expanded property. This is documented in section 4 of the Xonomy manual.

  • A few new methods have been added to surrrogate element objects: getPrecedingSibling(), getFollowingSibling(), setAttribute(name, value), addText(txt). These are documented in section 10 of the Xonomy manual.

  • When inserting inline markup, your users no longer have to point the mouse exactly on the thin grey line underneath the text. They can now click anywhere in the text while holding down the Ctrl key (or the Meta key if on a Mac). This has been documented in section 8.3 of the Xonomy manual.

  • The captions of elements (= the caption property of the element specification) are no longer ignored for elements that don't have text content. The description in section 14.2 of the Xonomy manual has been updated accordingly.

  • The backgroundColour property of an element specification can now be a function (as well as a string). Its description in section 14.2 of the Xonomy manual has been updated accordingly.

  • Some cosmetic adjustments have been made to the positioning of drag handles and plus/minus signs beside XML elements to make to sure they do not appear misaligned in some web browsers (hello Chrome and IE).