This PR introduces gluon-plugin as a new maven module, containing all the Gluon components (custom controls, hierarchy, metadata, themes and stylesheets), that were previously in Scene Builder Kit.
Scene Builder Kit doesn't have dependency on Gluon Charm-Glisten anymore.
Scene Builder App uses both Kit and Gluon-plugin, and therefore the end result is the same for Scene Builder users as it was before this PR.
This PR supersedes #241, which was a good start. But many things have change since it was created: we have a modular maven project, with JDK 21+, and now we can use JPMS modules and ServiceProviders to easily inject the plugin.
A few interfaces have been defined:
ExternalSectionProvider, to deal with the Library Section for the plugin controls
ExternalMetadataProvider, to deal with metadata required to manage the plugin controls
ExternalDesignHierarchyMaskProvider, to deal with the hierarchy tree view for the plugin controls
ExternalThemeProvider, to deal with the css and themes of the plugin
Developers could use the Gluon-plugin implementation for their own development of similar plugins for their libraries.
Issue
Fixes #241
This PR introduces
gluon-plugin
as a new maven module, containing all the Gluon components (custom controls, hierarchy, metadata, themes and stylesheets), that were previously in Scene Builder Kit.Scene Builder Kit doesn't have dependency on Gluon Charm-Glisten anymore.
Scene Builder App uses both Kit and Gluon-plugin, and therefore the end result is the same for Scene Builder users as it was before this PR.
This PR supersedes #241, which was a good start. But many things have change since it was created: we have a modular maven project, with JDK 21+, and now we can use JPMS modules and ServiceProviders to easily inject the plugin.
A few interfaces have been defined:
Developers could use the Gluon-plugin implementation for their own development of similar plugins for their libraries.
Progress