a record holding the data structure
a default title to be used if the current view does not support one.
handles any CommandExecutionException thrown while executing any command.
handles any CommandExecutionException thrown while executing any command.
CommandExecutionException the exception to handle
Initialise the toolbar
executes a MutationCommand
executes a MutationCommand
the MutationCommand to execute.
MutationCommandExecutionException
if any exceptional case occurs while executing the command.
NullPointerException
if the implementation chooses to disallow null
commands.
The implementation may decide whether or not null
commands should be allowed. If null
commands are
not allowed by the implementation, any invocation
with a null
command should result in a
NullPointerException. If however an implementation
decides to allow null
commands, such commands
should be ignored. It is recommended to ensure
consistent null
handling over all methods.
executes a ManagerCommand
executes a ManagerCommand
the ManagerCommand to execute.
ManagerCommandExecutionException
if any exceptional case occurs while executing the command.
NullPointerException
if the implementation chooses to disallow null
commands.
The implementation may decide whether or not null
commands should be allowed. If null
commands are
not allowed by the implementation, any invocation
with a null
command should result in a
NullPointerException. If however an implementation
decides to allow null
commands, such commands
should be ignored. It is recommended to ensure
consistent null
handling over all methods.
executes a ReadCommand
executes a ReadCommand
the ReadCommand to execute.
NullPointerException
if the implementation chooses to disallow null
commands.
ReadCommandExecutionException
if any exceptional case occurs while executing the command.
The implementation may decide whether or not null
commands should be allowed. If null
commands are
not allowed by the implementation, any invocation
with a null
command should result in a
NullPointerException. If however an implementation
decides to allow null
commands, such commands
should be ignored. It is recommended to ensure
consistent null
handling over all methods.
updates the window when the universe updates.
updates the window when the universe updates. The default implementation handles updating the
When overriding this method, a call to *super* must be included to ensure correct behaviour.
Initialise the window with an arbitrary number of views
the Record the instance should operate on
the Record the instance should operate on
register a view.
register a view.
views may not be duplicates of already registered ones.
the view to register. may not be null
, may not be bound, must
be packed and may not be a duplicate of an already registered view
IllegalArgumentException
if view
is bound, unpacked or a duplicate
NullPointerException
if view
is null
Register a new view.
Register a new view.
After registering frame will be packed.
requests the window to display the view identified
by the given uuid
requests the window to display the view identified
by the given uuid
the id of the requested view
update the views from the data structure
update the views from the data structure
a list with all assigned views in the order of the view stack
IllegalStateException
if no view was found to be used for the top-level view stack entry
NullPointerException
if u
is null
View for full documentation
A card-based ViewWindow with integrated command execution and view management designed for single-frame applications.
The window title is taken from the ViewData instance on top of the view stack. If it does not provide a title itself (i.e. if it does not implement TitledViewData), a default title is used instead.
The window is based off the swing CardLayout and is packed to the largest registered view. Therefore the window will always have the minimal size required for fully accommodating the largest view in its packed size.
The window also provides support for a toolbar and a menu bar with full OS layout rule handling. (TODO)
1.1 (0.3.1), 2016-04-06
MCDDPUI 0.3.1