aboutsummaryrefslogtreecommitdiff
path: root/src/main/ui/BrowserWindow.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/ui/BrowserWindow.java')
-rw-r--r--src/main/ui/BrowserWindow.java23
1 files changed, 5 insertions, 18 deletions
diff --git a/src/main/ui/BrowserWindow.java b/src/main/ui/BrowserWindow.java
index bd1cf7f..94bd2d8 100644
--- a/src/main/ui/BrowserWindow.java
+++ b/src/main/ui/BrowserWindow.java
@@ -5,11 +5,8 @@ import model.html.HtmlParser;
import javax.swing.*;
import java.awt.*;
-import java.nio.file.Files;
-import java.nio.file.Path;
-import java.nio.file.Paths;
-import java.util.ArrayDeque;
-import java.util.ArrayList;
+import java.nio.file.*;
+import java.util.*;
// Broad JFrame usage taken from here: https://docs.oracle.com/javase/tutorial/uiswing/components/frame.html
public class BrowserWindow extends JFrame {
@@ -17,43 +14,33 @@ public class BrowserWindow extends JFrame {
public static final int HEIGHT = 800;
private BrowserCanvas canvas;
- private BrowserBar browserBar;
+ private final BrowserBar browserBar;
+ private final BrowserState state;
- private BrowserState state;
-
- // MODIFIES: this
- // EFFECTS: creates a new BrowserWindow program for rendering pages
public BrowserWindow() {
super("apus");
state = new BrowserState(new ArrayDeque<>(), "");
canvas = new BrowserCanvas(new ArrayList<>());
-// render("data/example.html");
browserBar = new BrowserBar(this);
getContentPane().add(browserBar, BorderLayout.SOUTH);
-// pack();
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setSize(WIDTH, HEIGHT);
render("/home/apropos/Projects/website/j-james/index.html");
-// render("data/example.hctml");
// browserBar.addTab("/home/apropos/Projects/website/j-james/index.html");
setVisible(true);
}
- // MODIFIES: this
- // EFFECTS: Renders an arbitrary page
public void render(String uri) {
state.setCurrentTab(uri);
remove(canvas);
// System.out.println(state.getCurrentTab());
try {
- Path path = Paths.get(state.getCurrentTab());
- String file = new String(Files.readAllBytes(path));
+ String file = Files.readString(Path.of(state.getCurrentTab()));
HtmlParser parser = new HtmlParser();
canvas = new BrowserCanvas(parser.parseHtml(file));
} catch (Exception e) {
System.out.println("Could not read file, rendering empty page: " + e.getMessage());
-
canvas = new BrowserCanvas(new ArrayList<>());
}
add(canvas);