Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions CHANGELOG.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -78,6 +78,7 @@ This issue was not visible in SysON but could appear in downstream applications
`SysONUpdateLibraryExecutor` was introduced to fix this issue.
Now it has been fixed in Sirius Web 2025.8.4, `SysONUpdateLibraryExecutor` has been deleted and `UpdateLibraryExecutor` is used again.
- https://github.com/eclipse-syson/syson/issues/1522[#1522] [diagrams] To avoid edge blinking when refreshing the diagram, we need to set the properties `measured.height` and `measured.width` with the value of the node layout data when converting a custom node accordingly to the xyflow https://reactflow.dev/learn/advanced-use/ssr-ssg-configuration#node-dimensions[documentation].
- https://github.com/eclipse-syson/syson/issues/1545[#1545] [diagrams] Add _interconnection_ compartment to `PartDefinition` nodes in the standard diagrams.

=== Improvements

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@
import java.util.List;

import org.eclipse.emf.ecore.EClass;
import org.eclipse.sirius.components.collaborative.diagrams.api.IDiagramContext;
import org.eclipse.sirius.components.collaborative.diagrams.DiagramContext;
import org.eclipse.sirius.components.core.api.IEditingContext;
import org.eclipse.sirius.components.view.builder.IViewDiagramElementFinder;
import org.eclipse.sirius.components.view.builder.providers.IColorProvider;
Expand Down Expand Up @@ -68,7 +68,7 @@ public NodeDescription create() {
.preconditionExpression(
AQLUtils.getSelfServiceCallExpression("isView",
List.of("'StandardViewDefinitions::InterconnectionView'", org.eclipse.sirius.components.diagrams.description.NodeDescription.ANCESTORS, IEditingContext.EDITING_CONTEXT,
IDiagramContext.DIAGRAM_CONTEXT)))
DiagramContext.DIAGRAM_CONTEXT)))
.semanticCandidatesExpression(AQLConstants.AQL_SELF)
.style(this.createCompartmentNodeStyle())
.userResizable(UserResizableDirection.NONE)
Expand Down Expand Up @@ -126,7 +126,7 @@ protected InsideLabelStyle createInsideLabelStyle() {
.fontSize(12)
.italic(true)
.labelColor(this.colorProvider.getColor(ViewConstants.DEFAULT_LABEL_COLOR))
.showIconExpression("aql:false")
.showIconExpression(AQLConstants.AQL_FALSE)
.withHeader(true)
.build();
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -42,10 +42,6 @@
* compartments.
* </p>
* <p>
* In Interconnection View, the nested Nodes should not be displayed. They are handled by other NodeDescriptions, inside
* compartments.
* </p>
* <p>
* Root elements return true for this switch because the NodeDescriptions calling ViewNodeService#getExposedElements are
* the same for root and nested Nodes.
* </p>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -413,7 +413,7 @@ private List<IDiagramElementDescriptionProvider<?>> createAllCompartmentNodeDesc
compartmentNodeDescriptionProviders.addAll(this.createCompartmentsForNestedAction(colorProvider));

// Compartment "interconnection" (many usages and defintions) is defined for:
// PartUsage
// PartUsage, PartDefinition
compartmentNodeDescriptionProviders.addAll(this.createInterconnectionCompartment(colorProvider));

// Compartment "state transition" (OwnedState) is defined for:
Expand Down Expand Up @@ -514,6 +514,7 @@ private List<IDiagramElementDescriptionProvider<?>> createInterconnectionCompart
final List<IDiagramElementDescriptionProvider<?>> compartmentNodeDescriptionProviders = new ArrayList<>();

compartmentNodeDescriptionProviders.add(new InterconnectionCompartmentNodeDescriptionProvider(SysmlPackage.eINSTANCE.getPartUsage(), colorProvider, this.getDescriptionNameGenerator()));
compartmentNodeDescriptionProviders.add(new InterconnectionCompartmentNodeDescriptionProvider(SysmlPackage.eINSTANCE.getPartDefinition(), colorProvider, this.getDescriptionNameGenerator()));

return compartmentNodeDescriptionProviders;
}
Expand Down Expand Up @@ -1058,6 +1059,9 @@ private void linkInterconnectionCompartment(IViewDiagramElementFinder cache) {
cache.getNodeDescription(this.getDescriptionNameGenerator().getNodeName(SysmlPackage.eINSTANCE.getPartUsage()))
.ifPresent(nd -> cache.getNodeDescription(this.descriptionNameGenerator.getFreeFormCompartmentName(InterconnectionCompartmentNodeDescriptionProvider.COMPARTMENT_NAME))
.ifPresent(nd.getReusedChildNodeDescriptions()::add));
cache.getNodeDescription(this.getDescriptionNameGenerator().getNodeName(SysmlPackage.eINSTANCE.getPartDefinition()))
.ifPresent(nd -> cache.getNodeDescription(this.descriptionNameGenerator.getFreeFormCompartmentName(InterconnectionCompartmentNodeDescriptionProvider.COMPARTMENT_NAME))
.ifPresent(nd.getReusedChildNodeDescriptions()::add));
}

private void addCompartmentNodeDescriptionInNodeDescription(IViewDiagramElementFinder cache, NodeDescription compartmentNodeDescription, EClass eClass) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -73,6 +73,7 @@ This issue was not visible in SysON but could appear in downstream applications
Now it is only available on SysML model elements.
- Fix library update performance and ensure it does not impact standard libraries.
- Fix an issue where diagrams' edges were blinking when refreshing a diagram.
- Add _interconnection_ compartment to `PartDefinition` nodes in the standard diagrams.

== Improvements

Expand Down