New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Copy/paste of model elements in graphical editor #1167

Closed
philip-alldredge opened this Issue Apr 25, 2018 · 1 comment

Comments

Projects
None yet
1 participant
@philip-alldredge
Collaborator

philip-alldredge commented Apr 25, 2018

Issue by reteprelief
Saturday Aug 02, 2014 at 21:06 GMT
Originally opened as osate/osate-ge#15


Sometimes it is desirable to make a copy of a classifier with all its parts, e.g., a device type with all its ports.

@philip-alldredge philip-alldredge added this to the 2.3.4 milestone Apr 25, 2018

@philip-alldredge philip-alldredge removed this from the 2.3.4 milestone Jun 5, 2018

@philip-alldredge philip-alldredge added this to the 2.3.5 milestone Jul 5, 2018

@philip-alldredge

This comment has been minimized.

Show comment
Hide comment
@philip-alldredge

philip-alldredge Jul 10, 2018

Collaborator

copying and pasting diagram elements.

Copy

The editor needs to support copy and pasting of model elements.
There will be separate menu items for copying the model elements vs copying just the diagram element.

Copy (Model)

This will be the default copy. It will make a copy the diagram elements while making a copy of the underlying model elements.

Requirements

  • All objects must be EMF objects which are owned by a containing feature which may contain many values. This will results in not supporting copying generalizations and other objects.
  • None of the selected diagram elements are descendants of any others.

Copy Diagram Elements

This will be a separate menu item. It will copy just the diagram element and configuration.

Requirements:

  • Supports any diagram element.
  • All elements must have the same parent.

Paste

There will be a single paste menu item. The menu item will paste based on what was previously copied.

Paste Model

  • Validate that the copied objects can be created in the desired context. Containing feature must match and be changeable.
  • Generate unique names for pasted elements if they conflict with exist elements in the pasted context. If object is nameable, must pass validation and have a new name created.
  • Ensure packages are imported.
  • Ensure renames exist when pasting implementations.
  • Note: for this initial version, copying and pasting an implementation will result in a new implementation which is associated with the original type.

Paste Diagram Elements

  • Check that model elements exist with the matching relative reference.
  • If conflicting diagram elements exist, replace them with the pasted elements.
Collaborator

philip-alldredge commented Jul 10, 2018

copying and pasting diagram elements.

Copy

The editor needs to support copy and pasting of model elements.
There will be separate menu items for copying the model elements vs copying just the diagram element.

Copy (Model)

This will be the default copy. It will make a copy the diagram elements while making a copy of the underlying model elements.

Requirements

  • All objects must be EMF objects which are owned by a containing feature which may contain many values. This will results in not supporting copying generalizations and other objects.
  • None of the selected diagram elements are descendants of any others.

Copy Diagram Elements

This will be a separate menu item. It will copy just the diagram element and configuration.

Requirements:

  • Supports any diagram element.
  • All elements must have the same parent.

Paste

There will be a single paste menu item. The menu item will paste based on what was previously copied.

Paste Model

  • Validate that the copied objects can be created in the desired context. Containing feature must match and be changeable.
  • Generate unique names for pasted elements if they conflict with exist elements in the pasted context. If object is nameable, must pass validation and have a new name created.
  • Ensure packages are imported.
  • Ensure renames exist when pasting implementations.
  • Note: for this initial version, copying and pasting an implementation will result in a new implementation which is associated with the original type.

Paste Diagram Elements

  • Check that model elements exist with the matching relative reference.
  • If conflicting diagram elements exist, replace them with the pasted elements.

@wafflebot wafflebot bot added in progress and removed next labels Jul 27, 2018

philip-alldredge added a commit that referenced this issue Aug 2, 2018

Implemented copying and pasting in the graphical editor. (#1407)
Implemented copying and pasting in the graphical editor.Closes issue #1167.

@wafflebot wafflebot bot removed the in progress label Aug 2, 2018

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment