Page 1 of 1

Implementing listeners & custom breadcrumbs.

Posted: Thu Jul 16, 2015 8:32 pm
by showkatramanigirish
I'm looking to customize oxygen by adding custom breadcrumbs for tag names and implement listeners for various purposes (e.g for date stamping)
Using Oxygen SDK with Java how do i achieve these functionalities.

Do we need to create a workspace access plugin or is there any other procedure to get both these functionalities.
It would be really helpful if anyone can point me to the developer guide which has the steps or a working example.

Re: Implementing listeners & custom breadcrumbs.

Posted: Fri Jul 17, 2015 9:38 am
by alex_jitianu
Hello,

There are two major customization concepts in Oxygen: the framework and the plugin. If you are customizing the Eclipse distribution, then the plugins are actually the Eclipse plugins and you can look at the Eclipse IDE Integration Sample Project to see how an Eclipse plugin can interact with the Oxygen XML Editor APIs. We have a sample SDK project (it's Maven based) that contains a lot of sample code for a multitude of use cases. It covers Author Framework Development, writing Plugins for the Standalone Distribution as well as the Eclipse IDE Integration.

You are talking about "breadcrumb". Are you referring to the names presented inside the Author Breadcrumb view? If that's the case then yes, you can customize them as described in Configuring an XML Node Renderer Customizer.

An Workspace Access plugin is very flexible and you can add all sorts of listeners on the editors. There is such a sample plugin inside the sample SDK project (the module is called oxygen-sample-plugin-workspace-access). On the other had if you only intended to customize the author page then maybe a framework level customization might be enough. You can add some listeners from the ExtensionsBudle API too. In the sample SDK project the module that presents framework level customizations is called oxygen-sample-framework.

If you tell me about a more specific event you want to listen for (for example I want to listen for changes in the author document, like inserted text or structure), I can tell you more precisely which listener you need and how to get to it.

Best regards,
Alex