diff options
Diffstat (limited to 'src/main/model/layout/DocumentLayout.java')
-rw-r--r-- | src/main/model/layout/DocumentLayout.java | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/src/main/model/layout/DocumentLayout.java b/src/main/model/layout/DocumentLayout.java new file mode 100644 index 0000000..84f58f2 --- /dev/null +++ b/src/main/model/layout/DocumentLayout.java @@ -0,0 +1,25 @@ +package model.layout; + +import java.awt.*; + +public class DocumentLayout extends Layout { + + /* + * INCREDIBLY UNSAFE - but this is actually fine with our code design + * We only reference the node / parent layout from the child layout, + * and so as we aren't referencing them here it (should) be fine + */ + public DocumentLayout() { + super(null, null); + } + + public void layout() { + this.setLocation(new Point(0, 0)); + this.setDimension(new Dimension(DEFAULT_WIDTH, DEFAULT_HEIGHT)); + + for (Layout child : this.getChildren()) { + child.layout(); + this.setHeight(this.getHeight() + child.getHeight()); + } + } +} |