Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 281320

Summary: [Composite Structure Diagram] Papyrus shall support composite structure diagrams.
Product: [Modeling] Papyrus Reporter: Thibault Landré <thibault.landre>
Component: CoreAssignee: Project Inbox <mdt-papyrus-inbox>
Status: RESOLVED FIXED QA Contact:
Severity: enhancement    
Priority: P3 CC: Kenn.Hussey, thibault.landre
Version: unspecifiedKeywords: plan
Target Milestone: 0.7.0   
Hardware: PC   
OS: Linux   
Whiteboard: UML 2.x Diagrams
Bug Depends on: 285994, 288443, 288445, 290000, 290001, 290283, 293165, 293167, 293168, 296840, 296843, 304790, 328003, 336203    
Bug Blocks:    

Description Thibault Landré CLA 2009-06-24 04:14:22 EDT
A first version of the composite structure diagram based should be available. 

This version should handle at least : 
- properties (part / reference)
- port
- connector
- collaboration
- collaboration use
- interface
- class


and general elements (comment, comment link...)
Comment 1 Yann Tanguy CLA 2009-08-07 06:28:23 EDT
Work in progress version of Composite committed (r453) :
- Class (and other Composite structure)
- Property (as Composite Part)
- Port (on Class and Property)
- Connector (between ConnectableElements)

The element creation mainly works, but semantic deletion of element causes issues (Port deletion is not correct)
Comment 2 Yann Tanguy CLA 2009-08-07 09:08:33 EDT
Other known issues:

When creating a Connector between Port elements, the ConnectorEnd::partWithPort property is not correctly filled in. 
This is a side effect from the following EditPolicyProvider declared in ClassDiagram plug-in and remaining active even when the active diagram is not a ClassDiagram (this results in the custom GRAPH_NODE_ROLE edit policy being ignored on Port).

The preference initializer is not correctly generated for child node (Port, Property appears completely black - regenerate editor with current custom templates to reproduce).  

The code generated to use specific parsers / embedded editors is not correct. As an example the embedded editor used to parse Property is not found (unless it is manually selected in preferences), providing an usable parsing dialog. This custom parser should be initialized as the default Parser in preferences.



Comment 3 Yann Tanguy CLA 2009-09-17 12:16:55 EDT
Implementation for creation of Collaboration, CollaborationUse, CollaborationRole and RoleBinding added.
Property appearance react to semantic change of aggregation property.

Done in r515.
Comment 4 Yann Tanguy CLA 2009-11-05 10:16:53 EST
Implementation of smart parser and label display for:
- Property (Part) = same implementation as in Class Diagram
- Port (same as Property)
- CollaborationUse (visibility name: collaboration)

Done in r685.
Comment 5 Yann Tanguy CLA 2009-12-21 09:08:37 EST
Preliminary (without direct support on Association and Connectors) support added for InformationItem.

In r917.
Comment 6 Yann Tanguy CLA 2009-12-22 09:36:14 EST
Contributed by Vincent Lorenzo (vincent.lorenzo@cea.fr) :
- Preliminary support for InformationItem, InformationFlow and Representation link.
- InformationFlow integrated as binary link only, n-ary like still have issues (ex: delete, stereotype and labels displayed on each branch...) in current implementation. It should be fixed on an example (Dependency in Class Diagram) before integration in other diagrams.

Tag added on Abstraction, Usage... edges.
Fix in Generalization (ends were incorrect)
Following labels removed : Connector name and multiplicity... to be added later when fully implemented.

Done in r920.
Comment 7 Yann Tanguy CLA 2010-01-31 14:54:35 EST
Several improvements in Port management:
- Link-like label (free positioning and feedback with a link between label and Port)
- Possibility to create a Port when clicking anywhere on figure (including in its compartment)
- Correct position of Port after creation or drop (taking the mouse position into account)

Done in r1077.
Comment 8 Yann Tanguy CLA 2010-05-19 09:02:32 EDT
Migration (mainly regeneration and minor fixes) for new GMF generation templates (Helios M7).

Done in r1646.
Comment 9 Yann Tanguy CLA 2010-05-19 10:51:21 EDT
Palette id(s) refactored to a more understandable form ("composite.tool.element").

Done in r1651.
Comment 10 Yann Tanguy CLA 2010-05-19 11:11:56 EDT
Warning removed (in custom code).

Done in r1652.
Comment 11 Yann Tanguy CLA 2010-07-21 03:11:56 EDT
Diagram edit part renamed (r2437).

Should integrate fix described here https://bugs.eclipse.org/bugs/show_bug.cgi?id=320299 as the code has been regenerated.
Comment 12 Yann Tanguy CLA 2010-10-27 12:02:06 EDT
In r3037 : 
- LabelEditPolicy modify to avoid the use of getUMLElement() which possibly returns null during element deletion.
Comment 13 Yann Tanguy CLA 2010-11-06 11:19:11 EDT
In r3136:
- Fix for Feature type link preferences.

Note that these preference pages are not generated, as a workaround, these expected pages are currently added in custom source code.
Comment 14 Yann Tanguy CLA 2010-11-21 15:19:22 EST
In r3279:
- Support for Collaboration and CollaborationUse improved by using element edit service
- Role deletion results in role being removed from diagrams and related bindings deleted
Comment 15 Yann Tanguy CLA 2010-12-21 11:25:13 EST
In r3594:
- Plug-in version n° modified (0.8.0) in gmfgen model
- Regeneration tested on v0.8.0.
Comment 16 Yann Tanguy CLA 2011-04-28 12:57:36 EDT
In r4543 : 
- Connector re-orient implemented.
- Name and Multiplicity label support added on connector.
Comment 17 Sébastien Gérard CLA 2013-06-21 04:27:21 EDT
Composite Structure are now part of Papyrus. I close the task.