1 package cz
.cvut
.promod
.plugin
.notationSpecificPlugIn
.notation
.model
;
4 * ProMod, master thesis project
5 * User: Petr Zverina, petr.zverina@gmail.com
6 * Date: 22:27:56, 31.10.2009
10 * DiagramModel interface is base for all class holding actual diagram. Every diagram is represented by an instance
11 * of ProjectDiagram, which basically represents an item in project tree navigation.
13 * DiagramModel is supposed to be a holder for actual diagram data like vertexes, connections (edges), etc.
15 public interface DiagramModel
{
18 * Adds a listener of any change that has occurred in diagram.
19 * ProjectDiagram registers a listener during initialization time to be informed about all changes
20 * in diagram and then change state of it's 'changed' variable.
22 * @see cz.cvut.promod.services.projectService.treeProjectNode.ProjectDiagram for more info
24 * @param listener is an instance of DiagramModelChangeListener class that will be notified when any change in
25 * an instance of DiagramModel occurs
27 public void addChangeListener(final DiagramModelChangeListener listener
);
30 * This method is invoked on the diagram model when the actual model is being changed and this diagram
31 * is going to be active.
33 * Can be used e.g. for initial settings and initialization of event handling mechanism when
34 * the diagram is opened for the first time - e.g. after load.
39 * This method is invoked on the diagram when the actual model is being changed and this diagram is going