Please refer to astah* API JavaDoc for each interface and method.
Creating/Deleting presentation are supported in astah* UML and professional. (ER Diagram is supported in astah* professional only.)
Class Diagram/Object Diagram | ClassDiagramEditor |
UseCase Diagram | UseCaseDiagramEditor |
Statemachine Diagram | StateMachineDiagramEditor |
ER Diagram | ERDiagramEditor |
Mind Map | MindmapEditor |
public INodePresentation createNotePresentation(IDiagram dgm, String note, Point2D location) throws ClassNotFoundException, InvalidEditingException, InvalidUsingException { INodePresentation ps = null; ClassDiagramEditor cde = ProjectAccessorFactory.getProjectAccessor().getDiagramEditorFactory().getClassDiagramEditor(); try { TransactionManager.beginTransaction(); //set diagram cde.setDiagram(dgm); //create presentation ps = cde.createNote(note, location); TransactionManager.endTransaction(); } catch (InvalidEditingException e) { e.printStackTrace(); TransactionManager.abortTransaction(); } return ps; } |
public ILinkPresentation createNoteAnchorPresentation(IDiagram dgm, INodePresentation note, IPresentation annotatedElement) throws ClassNotFoundException, InvalidEditingException, InvalidUsingException { ILinkPresentation ps = null; ClassDiagramEditor cde = ProjectAccessorFactory.getProjectAccessor().getDiagramEditorFactory().getClassDiagramEditor(); try { TransactionManager.beginTransaction(); //set diagram cde.setDiagram(dgm); //create presentation ps = cde.createNoteAnchor(note, annotatedElement); TransactionManager.endTransaction(); } catch (InvalidEditingException e) { e.printStackTrace(); TransactionManager.abortTransaction(); } return ps; } |
public INodePresentation createClassPresentation(IDiagram dgm, IClass iClass, Point2D location) throws ClassNotFoundException, InvalidEditingException, InvalidUsingException { INodePresentation ps = null; ClassDiagramEditor cde = ProjectAccessorFactory.getProjectAccessor().getDiagramEditorFactory().getClassDiagramEditor(); try { TransactionManager.beginTransaction(); //set diagram cde.setDiagram(dgm); //create presentation ps = cde.createNodePresentation(iClass, location); TransactionManager.endTransaction(); } catch (InvalidEditingException e) { e.printStackTrace(); TransactionManager.abortTransaction(); } return ps; } |
public INodePresentation createClassModelAndPresentation(IDiagram dgm, String className, Point2D location) throws ClassNotFoundException, InvalidEditingException, InvalidUsingException { INodePresentation ps = null; BasicModelEditor bme = ProjectAccessorFactory.getProjectAccessor().getModelEditorFactory().getBasicModelEditor(); ClassDiagramEditor cde = ProjectAccessorFactory.getProjectAccessor().getDiagramEditorFactory().getClassDiagramEditor(); try { TransactionManager.beginTransaction(); //create model IClass iClass = bme.createClass(project, className); //set diagram cde.setDiagram(dgm); //create presentation ps = cde.createNodePresentation(iClass, location); TransactionManager.endTransaction(); } catch (InvalidEditingException e) { e.printStackTrace(); TransactionManager.abortTransaction(); } return ps; } |
public ILinkPresentation createAssociationPresentation(IDiagram dgm, IAssociation iAssociation, INodePresentation sourcePs, INodePresentation targetPs) throws ClassNotFoundException, InvalidEditingException, InvalidUsingException { ILinkPresentation ps = null; ClassDiagramEditor cde = ProjectAccessorFactory.getProjectAccessor().getDiagramEditorFactory().getClassDiagramEditor(); try { TransactionManager.beginTransaction(); //set diagram cde.setDiagram(dgm); //create presentation ps = cde.createLinkPresentation(iAssociation, sourcePs, targetPs); TransactionManager.endTransaction(); } catch (InvalidEditingException e) { e.printStackTrace(); TransactionManager.abortTransaction(); } return ps; } |
public INodePresentation createUseCasePresentation(IDiagram dgm, IUseCase iUseCase, Point2D location) throws ClassNotFoundException, InvalidEditingException, InvalidUsingException { INodePresentation ps = null; UseCaseDiagramEditor cde = ProjectAccessorFactory.getProjectAccessor().getDiagramEditorFactory().getUseCaseDiagramEditor(); try { TransactionManager.beginTransaction(); //set diagram cde.setDiagram(dgm); //create presentation ps = cde.createNodePresentation(iUseCase, location); TransactionManager.endTransaction(); } catch (InvalidEditingException e) { e.printStackTrace(); TransactionManager.abortTransaction(); } return ps; } |
public ILinkPresentation createExtendPresentation(IDiagram dgm, IExtend iExtend, INodePresentation sourcePs, INodePresentation targetPs) throws ClassNotFoundException, InvalidEditingException, InvalidUsingException { ILinkPresentation ps = null; UseCaseDiagramEditor cde = ProjectAccessorFactory.getProjectAccessor().getDiagramEditorFactory().getUseCaseDiagramEditor(); try { TransactionManager.beginTransaction(); //set diagram cde.setDiagram(dgm); //create presentation ps = cde.createLinkPresentation(iExtend, sourcePs, targetPs); TransactionManager.endTransaction(); } catch (InvalidEditingException e) { e.printStackTrace(); TransactionManager.abortTransaction(); } return ps; } |
public INodePresentation createStatePresentation(IDiagram dgm, String stateName, INodePresentation parent, Point2D location) throws ClassNotFoundException, InvalidEditingException, InvalidUsingException { INodePresentation ps = null; StateMachineDiagramEditor ste = ProjectAccessorFactory.getProjectAccessor().getDiagramEditorFactory().getStateMachineDiagramEditor(); try { TransactionManager.beginTransaction(); //set diagram ste.setDiagram(dgm); //create presentation ps = ste.createState(stateName, parent, location); TransactionManager.endTransaction(); } catch (InvalidEditingException e) { e.printStackTrace(); TransactionManager.abortTransaction(); } return ps; } |
public ILinkPresentation createTransitionPresentation(IDiagram dgm, INodePresentation sourcePs, INodePresentation targetPs) throws ClassNotFoundException, InvalidEditingException, InvalidUsingException { ILinkPresentation ps = null; StateMachineDiagramEditor ste = ProjectAccessorFactory.getProjectAccessor().getDiagramEditorFactory().getStateMachineDiagramEditor(); try { TransactionManager.beginTransaction(); //set diagram ste.setDiagram(dgm); //create presentation ps = ste.createTransition(sourcePs, targetPs); TransactionManager.endTransaction(); } catch (InvalidEditingException e) { e.printStackTrace(); TransactionManager.abortTransaction(); } return ps; } |
public INodePresentation createEREntityPresentation(IDiagram dgm, IEREntity iEREntity, Point2D location) throws ClassNotFoundException, InvalidEditingException, InvalidUsingException { INodePresentation ps = null; ERDiagramEditor ede = ProjectAccessorFactory.getProjectAccessor().getDiagramEditorFactory().getERDiagramEditor(); try { TransactionManager.beginTransaction(); //set diagram ede.setDiagram(dgm); //create presentation ps = ede.createNodePresentation(iEREntity, location); TransactionManager.endTransaction(); } catch (InvalidEditingException e) { e.printStackTrace(); TransactionManager.abortTransaction(); } return ps; } |
public ILinkPresentation createERRelationshipPresentation(IDiagram dgm, IERRelationship iERRelationship, INodePresentation sourcePs, INodePresentation targetPs) throws ClassNotFoundException, InvalidEditingException, InvalidUsingException { ILinkPresentation ps = null; ERDiagramEditor ede = ProjectAccessorFactory.getProjectAccessor().getDiagramEditorFactory().getERDiagramEditor(); try { TransactionManager.beginTransaction(); //set diagram ede.setDiagram(dgm); //create presentation ps = ede.createLinkPresentation(iERRelationship, sourcePs, targetPs); TransactionManager.endTransaction(); } catch (InvalidEditingException e) { e.printStackTrace(); TransactionManager.abortTransaction(); } return ps; } |
public INodePresentation createTopicPresentation(IMindMapDiagram dgm, String topicName) throws InvalidUsingException, ClassNotFoundException { INodePresentation ps = null; MindmapEditor mme = ProjectAccessorFactory.getProjectAccessor().getDiagramEditorFactory().getMindmapEditor(); try { TransactionManager.beginTransaction(); //set diagram mme.setDiagram(dgm); INodePresentation iRootTopic = dgm.getRoot(); //create presentation ps = mme.addChild(iRootTopic, topicName); TransactionManager.endTransaction(); } catch (InvalidEditingException e) { e.printStackTrace(); TransactionManager.abortTransaction(); } return ps; } |
public ILinkPresentation createMMLinkPresentation(IDiagram dgm, INodePresentation sourcePs, INodePresentation targetPs) throws ClassNotFoundException, InvalidUsingException { ILinkPresentation ps = null; MindmapEditor mme = ProjectAccessorFactory.getProjectAccessor().getDiagramEditorFactory().getMindmapEditor(); try { TransactionManager.beginTransaction(); //set diagram mme.setDiagram(dgm); //create presentation ps = mme.createMMLinkPresentation(sourcePs, targetPs); TransactionManager.endTransaction(); } catch (InvalidEditingException e) { e.printStackTrace(); TransactionManager.abortTransaction(); } return ps; } |
private void deletePresentation(IDiagram diagram, IPresentation ps) throws ClassNotFoundException, InvalidEditingException, InvalidUsingException { ERDiagramEditor editor = DiagramEditorFactory.getERDiagramEditor(); try { TransactionManager.beginTransaction(); editor.setDiagram(diagram); editor.deletePresentation(ps); TransactionManager.endTransaction(); } catch (InvalidEditingException e) { e.printStackTrace(); TransactionManager.abortTransaction(); } } |