use of com.archimatetool.model.IArchimateDiagramModel in project archi by archimatetool.
the class DiagramUtils method createViewer.
/**
* Create a GraphicalViewerImpl to show the model. The Viewer has no Scroll Bars
* @param model
* @return A Graphical Viewer
*/
public static GraphicalViewerImpl createViewer(IDiagramModel model, Composite parent) {
EditPartFactory editPartFactory = null;
if (model instanceof IArchimateDiagramModel) {
editPartFactory = new ArchimateDiagramEditPartFactory();
} else if (model instanceof ISketchModel) {
editPartFactory = new SketchEditPartFactory();
} else {
// Extensions
IDiagramEditorFactory factory = DiagramEditorFactoryExtensionHandler.INSTANCE.getFactory(model);
if (factory != null) {
editPartFactory = factory.createEditPartFactory();
}
}
if (editPartFactory == null) {
// $NON-NLS-1$
throw new RuntimeException("Unsupported model type");
}
GraphicalViewerImpl viewer = new GraphicalViewerImpl();
viewer.createControl(parent);
viewer.setEditPartFactory(editPartFactory);
RootEditPart rootPart = new FreeformGraphicalRootEditPart();
viewer.setRootEditPart(rootPart);
viewer.setContents(model);
viewer.flush();
return viewer;
}
use of com.archimatetool.model.IArchimateDiagramModel in project archi by archimatetool.
the class DiagramUtilsTests method testCreateViewer_ArchimateModel.
@Test
public void testCreateViewer_ArchimateModel() {
IDiagramModel dm = model.getDiagramModels().get(0);
assertTrue(dm instanceof IArchimateDiagramModel);
Shell shell = new Shell();
GraphicalViewerImpl viewer = DiagramUtils.createViewer(dm, shell);
assertNotNull(viewer);
assertTrue(viewer.getEditPartFactory() instanceof ArchimateDiagramEditPartFactory);
assertTrue(viewer.getRootEditPart() instanceof FreeformGraphicalRootEditPart);
assertSame(dm, viewer.getContents().getModel());
assertSame(shell, viewer.getControl().getShell());
shell.dispose();
}
use of com.archimatetool.model.IArchimateDiagramModel in project archi by archimatetool.
the class SelectAllActionTests method testSelectAll.
@Test
public void testSelectAll() throws Exception {
ArchimateTestEditor editor = new ArchimateTestEditor();
ArchimateTestModel tm = new ArchimateTestModel(TestData.TEST_MODEL_FILE_ARCHISURANCE);
IArchimateModel model = tm.loadModelWithCommandStack();
IArchimateDiagramModel dm = (IArchimateDiagramModel) ArchimateModelUtils.getObjectByID(model, "4165");
editor.setDiagramModel(dm);
SelectAllAction action = new SelectAllAction(mock(IWorkbenchPart.class));
Set<GraphicalEditPart> selected = action.getSelectableEditParts(editor.getGraphicalViewer().getContents());
assertEquals(47, selected.size());
editor.dispose();
}
use of com.archimatetool.model.IArchimateDiagramModel in project archi by archimatetool.
the class ArchimateDiagramEditPartFactoryTests method testArchimateDiagramPart.
@Test
public void testArchimateDiagramPart() {
IArchimateDiagramModel dm = IArchimateFactory.eINSTANCE.createArchimateDiagramModel();
EditPart editPart = editPartFactory.createEditPart(null, dm);
assertTrue(editPart instanceof ArchimateDiagramPart);
assertEquals(dm, editPart.getModel());
}
use of com.archimatetool.model.IArchimateDiagramModel in project archi by archimatetool.
the class EmptyViewsChecker method findEmptyViews.
// Empty Views
List<IIssue> findEmptyViews() {
List<IIssue> issues = new ArrayList<IIssue>();
for (IArchimateDiagramModel view : fViews) {
if (view.getChildren().isEmpty()) {
String viewName = ArchiLabelProvider.INSTANCE.getLabel(view);
String description = NLS.bind(fDescription, viewName);
String explanation = NLS.bind(fExplanation, viewName);
IIssue issue = new AdviceType(fName, description, explanation, view);
issues.add(issue);
}
}
return issues;
}
Aggregations