aboutsummaryrefslogtreecommitdiff
path: root/src/main/model/layout/DocumentLayout.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/model/layout/DocumentLayout.java')
-rw-r--r--src/main/model/layout/DocumentLayout.java25
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());
+ }
+ }
+}