Skip to content

Commit 4067055

Browse files
committed
extracted Rectangle.getInterval
1 parent d2030e1 commit 4067055

File tree

2 files changed

+17
-5
lines changed

2 files changed

+17
-5
lines changed

src/main/java/net/itarray/automotion/internal/ResponsiveUIChunkValidatorBase.java

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
package net.itarray.automotion.internal;
22

33
import net.itarray.automotion.internal.geometry.ConnectedIntervals;
4-
import net.itarray.automotion.internal.geometry.Direction;
54
import net.itarray.automotion.internal.geometry.Interval;
65
import net.itarray.automotion.internal.geometry.Scalar;
76
import net.itarray.automotion.validation.ChunkUIElementValidator;
@@ -94,12 +93,12 @@ public ChunkUIElementValidator areAlignedAsGridCells() {
9493
}
9594

9695
public void validateAlignedAsGridCells(List<UIElement> rootElements) {
97-
ConnectedIntervals columns = new ConnectedIntervals(rootElements.stream().map(e -> interval(e.getX(), e.getX().plus(e.getWidth()))).collect(Collectors.toList()));
98-
ConnectedIntervals rows = new ConnectedIntervals(rootElements.stream().map(e -> interval(e.getY(), e.getY().plus(e.getHeight()))).collect(Collectors.toList()));
96+
ConnectedIntervals columns = new ConnectedIntervals(rootElements.stream().map(e -> e.getXInterval()).collect(Collectors.toList()));
97+
ConnectedIntervals rows = new ConnectedIntervals(rootElements.stream().map(e -> e.getYInterval()).collect(Collectors.toList()));
9998
for (UIElement element : rootElements) {
100-
Interval xInterval = interval(element.getX(), element.getX().plus(element.getWidth()));
99+
Interval xInterval = element.getXInterval();
101100
Interval xCell = columns.get(columns.indexOf(xInterval));
102-
Interval yInterval = interval(element.getY(), element.getY().plus(element.getHeight()));
101+
Interval yInterval = element.getYInterval();
103102
Interval yCell = rows.get(rows.indexOf(yInterval));
104103
if (!(xInterval.equals(xCell) && yInterval.equals(yCell))) {
105104
errors.add(String.format("banane"));

src/main/java/net/itarray/automotion/internal/UIElement.java

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
import net.itarray.automotion.internal.geometry.Direction;
44
import net.itarray.automotion.internal.geometry.ExtendGiving;
55
import net.itarray.automotion.internal.geometry.GroupElement;
6+
import net.itarray.automotion.internal.geometry.Interval;
67
import net.itarray.automotion.internal.geometry.Rectangle;
78
import net.itarray.automotion.internal.geometry.Scalar;
89
import net.itarray.automotion.internal.geometry.Vector;
@@ -535,4 +536,16 @@ public void validateInsideOfContainer(UIElement element, Errors errors, Scalar t
535536
element);
536537
}
537538
}
539+
540+
public Interval getYInterval() {
541+
return getInterval(Direction.DOWN);
542+
}
543+
544+
public Interval getXInterval() {
545+
return getInterval(Direction.RIGHT);
546+
}
547+
548+
private Interval getInterval(Direction direction) {
549+
return Interval.interval(getBegin(direction), getEnd(direction));
550+
}
538551
}

0 commit comments

Comments
 (0)