33 lines
809 B
Java
Executable File
33 lines
809 B
Java
Executable File
package pyUML.listeners;
|
|
|
|
import org.eclipse.core.resources.IProject;
|
|
import org.eclipse.gmf.runtime.diagram.ui.parts.DiagramEditor;
|
|
import org.eclipse.ui.IPropertyListener;
|
|
|
|
import pyUML.backend.UMLToolsHelperMethods;
|
|
|
|
|
|
/**
|
|
* This class is to update all pyUML.views (model and diagram)
|
|
* On every model change
|
|
*/
|
|
public class ModelChangeListener implements IPropertyListener {
|
|
private IProject project;
|
|
|
|
public ModelChangeListener(IProject project) {
|
|
super();
|
|
this.project = project;
|
|
}
|
|
|
|
public void propertyChanged(Object source, int propId) {
|
|
// on model save, update all pyUML.views
|
|
if (source instanceof DiagramEditor) {
|
|
DiagramEditor umlEditor = (DiagramEditor) source;
|
|
|
|
if (! umlEditor.isDirty()) {
|
|
UMLToolsHelperMethods.updateModelAndViewPages(this.project);
|
|
}
|
|
}
|
|
}
|
|
}
|