Toolbar

The contents of the toolbar can be customized (Section 5.4) and not all components described here appear by default. The toolbar components are described in a set of tables:

Animation control
Table 1.
Animation modification
Table 2. All these commands can be undone by selecting undo.
Structure modification
Table 3. If no structure is selected, these buttons will be disabled (unless otherwise noted).
Miscellaneous
Table 4.
Developer features
Table 5.
Some structures can have operations that can be added as buttons to the toolbar. There is a special toolbar component for these components called ContextualPanel. The components for the operations appear in this toolbar component.

Some toolbar components appear or are enabled if they are relevant to the structures appearing in the structure panel; however, the toolbar is not updated until after moving the mouse outside a structure.


Table 1: Animation control
Component Explanation Picture
Animator Begin undoes all the operations. Backward undoes one operation (one enclosed animation step). If the data structure is modified while there are undone operations, these operations can no longer be redone. Holding Shift when pressing Backward undoes one atomic step at a time. Play executes the animation from the current state to the last one. Play changes to Stop for stopping the animation. Forward redoes one operation, or one atomic operation if Shift is held. End redoes all. \includegraphics[scale=0.9]{pics/Animator.eps}
Animation Speed The speed of the animation can be controlled: right for faster and left for slower. \includegraphics[scale=1]{pics/AnimationSpeed.eps}
Step View The current step and the number of steps in the animation are shown. Enter a step number and press Enter or click Go to jump to the desired step in the animation. \includegraphics[scale=1]{pics/StepView.eps}
Microstep backward Move one atomic operation backward \includegraphics{pics/MicroBackComponent.eps}
Microstep forward Move one atomic operation forward \includegraphics{pics/MicroForwardComponent.eps}


Table 2: Animation modification
Component Explanation Picture
Set begin Sets the current state to be the beginning of the animation. The previous states can no longer be reached. \includegraphics[scale=1]{pics/SetBegin.eps}
Set End Sets the current state to be the end of the animation. The following states can no longer be reached. \includegraphics[scale=1]{pics/SetEnd.eps}
Insert break Add a new break in the animation: the animation will promote the given step to a top level step and make the animator stop at this position when moving Backward or Forward. \includegraphics[scale=1]{pics/InsertBreak.eps}
Remove break Remove a break in the animation so that Backward and Forward no longer stop at this step. \includegraphics[scale=1]{pics/RemoveBreak.eps}
Join steps Join several steps in the animation into one step: (1) Go to the step you want to start the join at; (2) Press Join steps; (3) Go to the step you want to end the join at; (4) Press Join steps again. It does not matter which of the selected steps comes first in the animation. \includegraphics[scale=1]{pics/JoinSteps.eps}
Disjoin steps Break up several steps in the animation into distinct steps: (1) Go to the step you want to start the disjoin at; (2) Press Disjoin steps; (3) Go to the step you want to end the disjoin at; (4) Press Disjoin steps again. It does not matter which of the selected steps comes first in the animation. (This command might have no visible effect on the animation.) \includegraphics[scale=1]{pics/DisjoinSteps.eps}


Table 3: Structure modification
Component Explanation Picture
New visualization Creates a new visualization of the selected data structure in the current animation window. Changes in the new visualization affect the original and vice versa. \includegraphics[scale=1]{pics/NewVisualization.eps}
Open in new window Opens a new visualization of the selected data structure in a new animation window. Changes in the new visualization affect the original and vice versa. \includegraphics[scale=1]{pics/OpenInNewWindow.eps}
Delete Invokes the delete method for the selected object. By default this removes the selected structure or component from the underlying data structure. \includegraphics[scale=1]{pics/Delete.eps}
Insert edge Adds edges to graphs. First select the source node, then click Insert edge and finally click on the destination node. If something else than a node of a graph is selected, this button is disabled. \includegraphics[scale=1]{pics/InsertEdge.eps}
Rename Renames a data structure. This affects only keys, data structures with a header and labeled nodes. \includegraphics{pics/RenameComponent.eps}
Layout Changes the layout for the selected data structure; select a layout from the drop-down list.  
Set Edge    
Length Enter a new edge length and press Enter or Set edge length. Enabled only for graphs using either the Kamada-Kawai or the Fruchterman-Reingold layout.  
Label Nodes Automatically label the nodes in a structure with unique numbers beside every node. For an example, see Figure 5. For arrays this feature is available but it does nothing. \includegraphics{pics/NodeLabelingComponent.eps}

Figure 5: Example of the automatic node labeling.
\includegraphics{pics/NodeLabeling.eps}


Table 4: Miscellaneous components
Component Explanation Picture
Edit Quick access to Copy, Cut, Paste, Delete, Undo and Redo operations. \includegraphics{pics/EditComponent.eps}
File Quick access to New, Open, Save animation, Export, Page Setup and Print. \includegraphics{pics/FileComponent.eps}
Save Saves the current structures. \includegraphics{pics/SaveComponent.eps}


Table 5: Developer's components
Component Explanation Picture
Animator dump Shows debug information for the animator. \includegraphics{pics/AnimatorDumpComponent.eps}
Debug Switches debug output on or off. \includegraphics{pics/DebugComponent.eps}
Dump Shows debug information for a selected structure or for all objects if no structure is selected. \includegraphics{pics/DumpComponent.eps}