Feature/Development Wishlist

This page list and describes a "wish list" for modelGUI; i.e., some ideas (big or small) on particular features which would eventually be nice to include in modelGUI. These ideas (will) include ideas presented and discussed in the Brainstorming Forum, as well as any ideas dreamt up by mgui developers. Feel free to suggest your own!

Item Description
2D Renderers Implement a 2D renderer framework to allow custom rendering of InterfaceShape objects. This should be basically seamless to integrate into the existing DrawingFunctions class.
Plot Panel Implement a subclass of InterfaceGraphic to render 2D plots, including scatterplots, bar plots, line plots, etc. Extension of this to 3D plots will follow.
Coordinate Systems Implement a means of specifying arbitrary coordinate systems and means of transforming between them.
"Undo/Redo" framework Implement a systematic framework for undoing and redoing user actions, for instance Tool actions or Attribute actions. This would involve storing the states of interface objects (probably with temporary disk storage) if they are altered by an action, and destroying this storage on object destruction or system exit.
Layout Panel Implement a subclass of InterfaceGraphic to arrange windows and other graphical objects (legends, colour maps, etc.) in a manner suitable for printing or exporting to PDF, images, etc.
Overlay Volume Set Implement a volume set which sets transparencies for its members and renders as a single volume.
Section 3D Volume Render Mode Implement a 3D render mode volumes which renders them only on the current sections of visible section sets.
Logging Utilize Java's logging capabilities (and possibly log4j) to provide a robust and systematic logging procedure, allowing a more streamlined approach to development, debugging, support, and user interaction
Alternative 3D Renderers Implement a generic 3D renderer interface, such that mgui is made independent of the underlying renderer, but serves "node" objects that can be overridden to supply appropriate objects to the renderer. Currently mgui is built directly on Java3D, but it may be useful to permit the use of other rendering engines such as JMonkeyEngine
Full XML functionality Including read/write, a full Document Type Definition (DTD) for each InterfaceObject defined in the ModelGUI framework. XML framework will allow persistence of any point in a hierarchy; i.e., from specific InterfaceObject instances to entire Sessions. XML framework will also allow full XML encoding or URL references to externally encoded objects
UML specification of entire project See Unified Modeling Language. This will include the object model, user interactions, and action profiles (e.g., event/listener sequences).
Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-ShareAlike 3.0 License