fix group padding
This commit is contained in:
parent
fff6637a03
commit
d7a2e1ac45
5 changed files with 24 additions and 32 deletions
|
|
@ -189,10 +189,10 @@ func (sd *sequenceDiagram) placeGroup(group *d2graph.Object) {
|
||||||
for _, m := range sd.messages {
|
for _, m := range sd.messages {
|
||||||
if m.ContainedBy(group) {
|
if m.ContainedBy(group) {
|
||||||
for _, p := range m.Route {
|
for _, p := range m.Route {
|
||||||
minX = math.Min(minX, p.X)
|
minX = math.Min(minX, p.X-HORIZONTAL_PAD)
|
||||||
minY = math.Min(minY, p.Y)
|
minY = math.Min(minY, p.Y-MIN_MESSAGE_DISTANCE/2.)
|
||||||
maxX = math.Max(maxX, p.X)
|
maxX = math.Max(maxX, p.X+HORIZONTAL_PAD)
|
||||||
maxY = math.Max(maxY, p.Y)
|
maxY = math.Max(maxY, p.Y+MIN_MESSAGE_DISTANCE/2.)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -213,18 +213,16 @@ func (sd *sequenceDiagram) placeGroup(group *d2graph.Object) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if inGroup {
|
if inGroup {
|
||||||
minY = math.Min(minY, n.TopLeft.Y)
|
minX = math.Min(minX, n.TopLeft.X-HORIZONTAL_PAD)
|
||||||
maxY = math.Max(maxY, n.TopLeft.Y+n.Height)
|
minY = math.Min(minY, n.TopLeft.Y-MIN_MESSAGE_DISTANCE/2.)
|
||||||
minX = math.Min(minX, n.TopLeft.X)
|
maxY = math.Max(maxY, n.TopLeft.Y+n.Height+HORIZONTAL_PAD)
|
||||||
maxX = math.Max(maxX, n.TopLeft.X+n.Width)
|
maxX = math.Max(maxX, n.TopLeft.X+n.Width+MIN_MESSAGE_DISTANCE/2.)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
hasNested := false
|
|
||||||
for _, ch := range group.ChildrenArray {
|
for _, ch := range group.ChildrenArray {
|
||||||
for _, g := range sd.groups {
|
for _, g := range sd.groups {
|
||||||
if ch == g {
|
if ch == g {
|
||||||
hasNested = true
|
|
||||||
minX = math.Min(minX, ch.TopLeft.X-GROUP_CONTAINER_PADDING)
|
minX = math.Min(minX, ch.TopLeft.X-GROUP_CONTAINER_PADDING)
|
||||||
minY = math.Min(minY, ch.TopLeft.Y-GROUP_CONTAINER_PADDING)
|
minY = math.Min(minY, ch.TopLeft.Y-GROUP_CONTAINER_PADDING)
|
||||||
maxX = math.Max(maxX, ch.TopLeft.X+ch.Width+GROUP_CONTAINER_PADDING)
|
maxX = math.Max(maxX, ch.TopLeft.X+ch.Width+GROUP_CONTAINER_PADDING)
|
||||||
|
|
@ -233,12 +231,6 @@ func (sd *sequenceDiagram) placeGroup(group *d2graph.Object) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if !hasNested {
|
|
||||||
minX -= HORIZONTAL_PAD
|
|
||||||
minY -= MIN_MESSAGE_DISTANCE / 2.
|
|
||||||
maxX += HORIZONTAL_PAD
|
|
||||||
maxY += MIN_MESSAGE_DISTANCE / 2.
|
|
||||||
}
|
|
||||||
|
|
||||||
group.Box = geo.NewBox(
|
group.Box = geo.NewBox(
|
||||||
geo.NewPoint(
|
geo.NewPoint(
|
||||||
|
|
|
||||||
10
e2etests/testdata/stable/sequence_diagram_groups/dagre/board.exp.json
generated
vendored
10
e2etests/testdata/stable/sequence_diagram_groups/dagre/board.exp.json
generated
vendored
|
|
@ -200,10 +200,10 @@
|
||||||
"type": "",
|
"type": "",
|
||||||
"pos": {
|
"pos": {
|
||||||
"x": 221,
|
"x": 221,
|
||||||
"y": 566
|
"y": 526
|
||||||
},
|
},
|
||||||
"width": 368,
|
"width": 368,
|
||||||
"height": 650,
|
"height": 730,
|
||||||
"opacity": 1,
|
"opacity": 1,
|
||||||
"strokeDash": 0,
|
"strokeDash": 0,
|
||||||
"strokeWidth": 2,
|
"strokeWidth": 2,
|
||||||
|
|
@ -278,7 +278,7 @@
|
||||||
"x": 245,
|
"x": 245,
|
||||||
"y": 1306
|
"y": 1306
|
||||||
},
|
},
|
||||||
"width": 453,
|
"width": 443,
|
||||||
"height": 466,
|
"height": 466,
|
||||||
"opacity": 1,
|
"opacity": 1,
|
||||||
"strokeDash": 0,
|
"strokeDash": 0,
|
||||||
|
|
@ -355,8 +355,8 @@
|
||||||
"x": 601,
|
"x": 601,
|
||||||
"y": 1822
|
"y": 1822
|
||||||
},
|
},
|
||||||
"width": 268,
|
"width": 258,
|
||||||
"height": 206,
|
"height": 216,
|
||||||
"opacity": 1,
|
"opacity": 1,
|
||||||
"strokeDash": 0,
|
"strokeDash": 0,
|
||||||
"strokeWidth": 2,
|
"strokeWidth": 2,
|
||||||
|
|
|
||||||
File diff suppressed because one or more lines are too long
|
Before Width: | Height: | Size: 474 KiB After Width: | Height: | Size: 474 KiB |
10
e2etests/testdata/stable/sequence_diagram_groups/elk/board.exp.json
generated
vendored
10
e2etests/testdata/stable/sequence_diagram_groups/elk/board.exp.json
generated
vendored
|
|
@ -200,10 +200,10 @@
|
||||||
"type": "",
|
"type": "",
|
||||||
"pos": {
|
"pos": {
|
||||||
"x": 221,
|
"x": 221,
|
||||||
"y": 566
|
"y": 526
|
||||||
},
|
},
|
||||||
"width": 368,
|
"width": 368,
|
||||||
"height": 650,
|
"height": 730,
|
||||||
"opacity": 1,
|
"opacity": 1,
|
||||||
"strokeDash": 0,
|
"strokeDash": 0,
|
||||||
"strokeWidth": 2,
|
"strokeWidth": 2,
|
||||||
|
|
@ -278,7 +278,7 @@
|
||||||
"x": 245,
|
"x": 245,
|
||||||
"y": 1306
|
"y": 1306
|
||||||
},
|
},
|
||||||
"width": 453,
|
"width": 443,
|
||||||
"height": 466,
|
"height": 466,
|
||||||
"opacity": 1,
|
"opacity": 1,
|
||||||
"strokeDash": 0,
|
"strokeDash": 0,
|
||||||
|
|
@ -355,8 +355,8 @@
|
||||||
"x": 601,
|
"x": 601,
|
||||||
"y": 1822
|
"y": 1822
|
||||||
},
|
},
|
||||||
"width": 268,
|
"width": 258,
|
||||||
"height": 206,
|
"height": 216,
|
||||||
"opacity": 1,
|
"opacity": 1,
|
||||||
"strokeDash": 0,
|
"strokeDash": 0,
|
||||||
"strokeWidth": 2,
|
"strokeWidth": 2,
|
||||||
|
|
|
||||||
File diff suppressed because one or more lines are too long
|
Before Width: | Height: | Size: 474 KiB After Width: | Height: | Size: 474 KiB |
Loading…
Reference in a new issue