Skip to content

Make all diagrams work for the DiagramExtensionPoint #114

@Danymoin

Description

@Danymoin

While working on PR#108 Add plugin support for diagram manipulation a new plugin extension poin has been created. This allows plugins to alter the diagram elements characteristics without having access to the inner structure to make direct modifications.

Since this extension point is designed for all diagrams (descendents of org/tzi/use/gui/views/diagrams/DiagramView.java), they need to provide certain functionality to be addressable by this extension point. Until now, only ClassDiagram provide

  • A relation between the inner structure and what the plugin has access to
  • The style container for its diagram elements for a plugin to address changes
  • An interpretation of how to modify the diagrams inner structure based on style containers

For example, the class diagram displays elements defined in the model such as ClassNode, GeneralizationEdge and more. They got an equivalent style container, although abstracted and implement for instance, how the ClassNode gets modified for a StyleInfoClassNode. The Plugin creating the style container has access to the model elements. The class diagram provides the relation between model elements and their corresponding diagram element.

Technical task for all diagrams

  • implement getNodeIdentifier() and getEdgeIdentifier()
  • create style container based on StyleInfoBase
  • implement recolorPlaceableNode() and recolorEdgeBase()

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions