Finish the plug-in architecture in Weave
|Assignee:||Andy Dufilie||% Done:|
|Category:||Internal Code Refactoring|
The plug-in architecture will allow loading new tools at runtime without re-compiling the existing code. It also allows faster start-up times if it is known ahead of time that only a few .swc files are needed.
There is now code (currently disabled) that loads a list of plug-ins at startup.
The code that reads the FlashVars and loads a session state file at startup needs to be separated from VisApplication and put into WeaveAPI or WeaveCore. All the Weave libraries except WeaveAPI and WeaveCore should be loaded as plug-ins. When loading an old session state, it would have to load a default set of plug-ins for backwards compatibility.
#14 Updated by Mike Smyser about 4 years ago
Would be great to have this fully operational and have documentation which gives an example as to how load and make the plug-in work. For example, perhaps something could be chosen from something like the D3 gallery on GitHub (https://github.com/mbostock/d3/wiki/Gallery). One example, we'd be interested in would be how to add the treemaps in the gallery (http://bl.ocks.org/mbostock/4063582) and the zoomable treemap (http://mbostock.github.io/d3/talk/20111018/treemap.html)