TemplateJTree
A tree containing Templates and Schemes.
Changes made through this tree's interface (e.g. adding, removing, copying) are immediately reflected in the currentTemplateList. The originalTemplateList is used only as a reference point to determine what changes have occurred, for example when isModified is called or when the end user requests that changes are (partially) reverted.
If changes are made outside of this tree's interface (i.e. by directly operating on the currentTemplateList instance that was passed in the constructor), this tree's internal model becomes desynchronized, and must be resynchronized by invoking reload. Except for reload, the behaviour of this tree is undefined while desynchronized.
Internally, the currentTemplateList is loaded into a TemplateJTreeModel. The TemplateJTree class is the corresponding user interface class, which additionally provides (1) toolbars and buttons for manipulating the model, (2) node expansion and selection, and (3) handling for tracking and reversing modifications.
Parameters
the (read-only) original templates without modifications
the current templates, including modifications
Properties
The currently selected node, or null
if no node is selected, or null
if the root is selected.
The currently selected scheme (or template), or null
if no scheme is currently selected.
The currently selected template, or the parent of the currently selected non-template scheme, or null
if no scheme is currently selected.
Functions
Returns a panel containing this tree decorated with accessible action buttons.
Returns true
if and only if moveSchemeByOnePosition can be invoked with these parameters.
Removes scheme from the tree, and selects an appropriate other scheme.