Attached is an archive file with my "rough draft" source code for pluggable renderer support in OpenJUMP and JUMP.
You'll also find Javadoc in the archive file. I modified the following classes in OpenJUMP's/JUMP's core: JUMPWorkbench (Added a private member variable to store the RendererFactory. This allows plug-ins to access the RendererFactory to add there own RendererFactoryTool implementations. This is the "pluggable" part of the system. I needed to store the RendererFactory here so plug-ins would have access to it when there initialization() method was called. I also added public getRenderer() and setRenderer methods to this class to allow developers access to the RendererFactory.) WorkbenchContext (Added public getRenderer() and setRenderer() methods to this class to allow developers access to the RendererFactory.) JUMPWorkbenchContext (Added public getRenderer() and setRenderer() methods to this class to allow developers access to the RendererFactory.) PlugInContext (Added public getRenderer() and setRenderer() methods to this class to allow developers access to the RendererFactory.) I also added 2 new interfaces to the org.openjump.ui.renderer package: IRendererFactory IRendererFactoryTool I added 3 new classes to the org.openjump.ui.renderer package: RendererFactory RegularLayerRendererFactoryTool WMSLayerRendererFactoryTool As I mentioned before, I implemented the pluggable renderer support using the State design pattern. If these changes are accepted and implemented developers will be able to add custom rendering to OpenJUMP by adding an implementation of the IRendererFactoryTool interface to the default RendererFactory, or even by providing their own implementation of the IRendererFactory interface. If the other developers don't have any objections or suggestions for improvement I will proceed with unit testing and live tests using OpenJUMP, and then JUMP. The Sunburned Surveyor
pluggable_renderers.tar.gz
Description: GNU Zip compressed data
------------------------------------------------------------------------- Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys - and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________ Jump-pilot-devel mailing list Jump-pilot-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel