Don't ask me why, but modification of a try/catch block in my code fixed the null pointer errors that I was getting in my pluggable rendering code. I've now got the pluggable system working.
Over the course of the next two or three weeks I will do some more testing of the system. I will also prepare documentation that explains: [1] What I've learned about OpenJUMP's rendering system while working on the code. [2] What I changed in the core to get the system to work. [3] How plug-in programmers can use the system to add custom rendering support. I will also prepare an example plug-in that shows how the system can be used. I know there is still some skepticism about my system and whether it is really necessary, but I hope that these questions will be answered after you guys have read through my documentation and have looked at the operational code. I'm sure there are some things in the code that can be polished or improved, so I would really appreciate any feedback. I will make the source code available on the SurveyOS website as soon as I can. (Maybe early next week?) In the meantime, if you would like to try a build of OpenJUMP that uses the system, or would like me to send you the source code, I can make arrangments to send it to you personally. The Sunburned Surveyor P.S. - The pluggable rendering system simply adds support for custom rendering of Layerable implementations or other classes via a plug-in mechanism, instead of with changes to the core, as was required before. It also allows you to easily "swap out" the default renderers for things like Layer objects or images, so experimenting with alternative rendering techniques can now be done with a plug-in. The pluggable rendering system also eliminates the need for any special "magic" to add a Renderer for objects that are painted above or below Layerables. These Renderers will be added in the same way as Renderers for Layerables. To users of the Pluggable Rendering System API there will be no difference between adding a pluggable renderer for Layerable objects and for objects that co above and below layerable objects. This logic will now be handled in the methods of the InstallIRendererFactoryToolPlugIn class. My modifications to the rendering system in OpenJUMP will also allow you to easily control the display order or "stack" order of objects painted above and below the Layerable objects. ------------------------------------------------------------------------- This SF.net email is sponsored by: Splunk Inc. Still grepping through log files to find problems? Stop. Now Search log events and configuration files using AJAX and a browser. Download your FREE copy of Splunk now >> http://get.splunk.com/ _______________________________________________ Jump-pilot-devel mailing list Jump-pilot-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel