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). |
page revision: 20, last edited: 24 Sep 2012 15:25