#include <vuUtilityWindow.h>
Inheritance diagram for vuUtilityWindow:
Public Member Functions | |
virtual | ~vuUtilityWindow () |
A virtual destructor. | |
virtual bool | init (vuMainWindow *main, const char *DataFile)=0 |
The initialization method for the utility window. | |
virtual void | close ()=0 |
Closes the utility window, doing any necessary clean up. | |
virtual void | notifyDataChanged ()=0 |
Notifies the utility that the volume data has been changed and that it should update its view. |
This class defines the interface that all the utility windows in the GUI Tool must implement. At this level, this is just the architecture of the GUI Tool program. The utility windows must have a common way to be initialized and to have general windowing control. By making this a general interface, it keeps windows modular and makes it easy to add new windows to the GUI Tool.
The utility windows are implemented differently depending on the windowing system. In most systems, the utility windows are implemented as wxMDIChildWindows. This is because the main window is an MDI parent window, and it is important to ensure that all the utility windows can be created within it. In gtk, the wxWindow's implementation of the MDI architecture is not suitable to the gui tool, and so the main window and the utility windows are all implemented as separate windows, deriving from the wxFrame class. Again, this ensures common behaviour among the utility windows.
The utility window interface also defines the architecture for sharing the volume data within the GUI Tool. The volume data is the primary resource of the program, and the concept the program is built around. Because of this centrality, the volume data is owned by the main window, and the utility windows are given access to it. This interface defines how the volume data is shared between the two classes.
Definition at line 53 of file vuUtilityWindow.h.
|
A virtual destructor. Declare a virtual destructor for all utility windows to assure correct code for all windows. Definition at line 60 of file vuUtilityWindow.h. |
|
Closes the utility window, doing any necessary clean up. This method is called when the vuMasterWindow parent has to close the utility window. The UtilityWindow should do any clean up it wants to do here, such as saving any of its data. Implemented in vuBasicUtility. Referenced by vuMainWindow::close(). |
|
The initialization method for the utility window. It sets up all the user controls, sets their starting values and shows the window. The controls define the interface that the user will have to the utility and it's APIs. The method is called by the vuMainWindow main window after the windowing API and main window have already been initialized, so the method can access windowing functions. A pointer to the opened instance of volume data is given. This is the volume data that the utility will operate on.
Implemented in vuBasicUtility. Referenced by vuMainWindow::addUtility(). |
|
Notifies the utility that the volume data has been changed and that it should update its view. This is done when the volume data has been changed by another utility, and so any views of the data should be updated. The volume data can be changed by another utility so that other views of it will become outdated. This method allows the whole program to be synchronized to the change. Implemented in vuBasicUtility, vuCellProjector, vuFVR, vuSpecFVR, vuSpecSplat, vuSpectral, and vuSplat. |