Skip to content

Commit

Permalink
[doc] Add shape for border node initial position
Browse files Browse the repository at this point in the history
Signed-off-by: Laurent Fasani <[email protected]>
  • Loading branch information
lfasani committed Jan 31, 2025
1 parent fe6c46a commit 018a076
Show file tree
Hide file tree
Showing 2 changed files with 45 additions and 0 deletions.
1 change: 1 addition & 0 deletions CHANGELOG.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@
- Improve image export
- Add the current selection to the URL of the project workbench
- Improve the customization of the navigation bar
- Add support for border node initial positioning


=== Architectural decision records
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
= Add Support For Border Node Initial Positioning

== Problem

In a diagram, a `Border Node` is always created on the left of the `Node`(WEST position).

== Key Result

As a specifier, I can define, in the `View` model the side of the `Node` where the `Border Node` will be created.

As an end-user, I can see that the border node is created on the right side of the node accordingly to the view model.

== Solution

Currently, there is only the `NodeDescription` concept used for container, node and border node.
A `NodeDescription` is considered as the description of a border node if it is contained by the feature `NodeDescription.borderNodeDescriptions`

We need to define the information on which side of the parent node will the border node be created.
The information will be hold by the parent layout strategy `NodeDescription.childrenLayoutStrategy`


```
class LayoutStrategyDescription {
onRightAtCreationBorderNodes: List<NodeDescription>
onLeftAtCreationBorderNodes: List<NodeDescription>
onTopAtCreationBorderNodes: List<NodeDescription>
onBottomAtCreationBorderNodes: List<NodeDescription>
}
```

For those four features, we will make sure that the specifier is capable of selecting only the border nodes of the current NodeDescription.

== Cutting Backs

No

== Rabbit Holes

Not identified.
With this proposal, we avoid putting the information on border node itself because it would lower the reusability of this border node.

== No-Gos

No

0 comments on commit 018a076

Please sign in to comment.