Plugins are one of the supported ways to enable customization and extend the standalone version of oXygen XML functionality using a series of application-provided extension points. The resulting plugin can be installed and activated individually and it can only work within the oXygen XML application (it cannot operate on its own).
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 Javadoc API of the plugins support in the oXygen standalone distribution.
The subsequent sample plugins are included in the oxygen-sample-plugins module. They can also be installed through the add-ons support, 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 various operations on all the opened editors. It can be used to access Author and Text mode documents, being a bridge between plugins and the Author API.|
|Components Validator||This plugin allows you to filter the menus, toolbars, and 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 also decide to open 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 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 plugin README.html files. To create a zip archive containing all the plugins, use the bundle-plugins module.
The development of plugins using the SDK is free of charge, subject to registration and in accordance with the SDK agreement. Testing the plugin during development phase can be done using a licensed oXygen XML product.
There is no royalty fee for plugin deployments, plugins are your own applications, and you are responsible for them. You can license them under your own licensing terms (including commercial), the only exception is that you can't use GPL, as oXygen XML is not GPL.
Many plugins have been written by community members. We're working on a central plugin repository platform that lists all plugins and offers functionality to install plugins and frameworks in an automated fashion. As a plugin developer, you will be able to publish your plugin on that platform.