Starting from version 16.0 oXygen makes its SDK available as a set of Maven artifacts. One archetype which can be used as a base to develop oXygen frameworks, plugins, and Eclipse plugins integrations is provided. It can be also used to create projects that use the Author Component. For each specific task you can find more details in the sections that follow. In case your build system is not based on Maven, you can find in the oXygen SDK a link to a zip package with all the JAR files.
The latest API changes introduced by the current oXygen version are available here.
The Author frameworks are bundles containing CSS, schema files and Java code allowing powerful customization of the oXygenAuthor mode for your XML document types.
If you want to enhance and tune the default editing capabilities, you will need to develop Author framework Java extensions. For details and step by step tutorials, please read the Author Developer Guide.
The starting point is the oXygen SDK. Once setup, the sample project includes a oxygen-sample-framework Maven module which contains:
Once you setup the oXygen SDK sample project, you can implement your plugin starting from one of the samples provided in the oxygen-sample-plugins module. This module contains the source code of several sample plugins implemented as Maven projects and the API Javadoc of the plugins support in the oXygen standalone distribution;
The following sample plugins are included in the oxygen-sample-plugins module. They can also be installed through the add-ons support, being available as add-ons deployed at http://www.oxygenxml.com/InstData/Addons/optional/updateSite.xml.
|Workspace Access||This plugin provides support for customizing the content of the menus, toolbars and views of the application and for opening and closing documents. You can manage and perform different operations on all the opened editors. Can be used to access the Author and Text mode documents, being a bridge between plugins and the Author API.|
|Components Validator||This plugin allows you to filter-out the editor's menus, toolbars, and some other user interface components.|
|Impose Options||This sample plugin imposes fixed options loaded from an exported XML options file to . It can also impose a fixed layout and a new file templates folder.|
|Custom Protocol||This plugin provides a Java URL stream handler for a custom protocol able to handle URLs of the form: cproto://path/to/file.ext where cproto is the protocol handled by the plugin.|
|Open Redirect||This plugin is useful for opening multiple files with only one open action. For example, when a zip archive, an ODF file or an OOXML file is opened in the Archive Browser view the plugin can decide to open also a file from the archive in a new XML editor panel. This file can be the document.xml main file from an OOXML file archive.|
|Capitalize lines||This is an example of accessing the selection from the Text mode. This plugin capitalizes the first letter found on every new line that is selected. Only the first letter is affected, the rest of the line remains the same. If the first character on the new line is not a letter then no changes are made.|
To build and package the plugins follow the instructions in each of the sample plugins README.html files. To create a zip archive containing all the plugins use the bundle-plugins module.
The oXygen SDK can be used to integrate the visual oXygenAuthor mode in your own Java Swing applications. One common use case is to embed the Author component as a Java Applet in a Web application (as part of a CMS front end).
For an online demo applet click here.
The oXygen SDK project module oxygen-sample-applet contains a sample Author Component integration as a Java Applet. This module depends on several other modules:
To build and package the applet together with all its dependencies follow the steps described in the README.html file from this project.
Starting with version 16, oXygen XML Editor can be deployed server side, allowing a variety of HTML5 enabled client devices to edit and review XML content. The mobile browsers are a primary target for this platform.
Supported mobile operating systems: iOS 6 or later and Android 4.3 or later.
The oXygen WebApp can be used as a CMS frontend and requires customization for accessing the XML documents.
An easier way to test an Author Framework customization for the oXygen WebApp, is to install the oXygen WebApp Add-On. This add-on is designed for testing only and is not meant for a real-world deployment. It is a development tool that simplifies the testing of oXygen customizations (Author Frameworks).
In case you need to change options, supported XML document types or install plugins for accessing resources, read how to customize the oXygen WebApp.
This additional API is provided for easily accessing the files opened in the oXygen XML editor Eclipse plugin from your own Eclipse plugins. You can check which pages are active in the open XML editors, modify them or add listeners to notify custom views which can provide additional context information. For instance, it is possible to access the document model from the Author mode directly from your plugin, using most of the Author API.
The oXygen SDK contains the oxygen-sample-eclipse-plugin module: a complete sample Eclipse plugin that extends the oXygen XML Editor Plugin for Eclipse.
To build and package the Eclipse plugin follow the steps described in the README.html file from the project directory.
oXygen offers a public API that can be used to implement support for an XProc engine that can be used from oXygen to execute and also possibly validate XProc pipelines. The development procedure is described in the user manual, please see the Integration of an external XProc engine - the XProc API section.
The API distributions listed in this page are compatible with the oXygen version 16.1. If you are developing for older oXygen versions you may consider using the corresponding API version: