diff options
author | JJ | 2022-12-27 16:36:56 +0000 |
---|---|---|
committer | JJ | 2022-12-27 16:36:56 +0000 |
commit | 69c8bcbda55c4eb8e79b89736568781440484319 (patch) | |
tree | b1db42212037747ff7109b65816839a2047be512 /src/main/ui/BrowserWindow.java | |
parent | c14e53775591cb4d75b486d21f4849552d5c7c8c (diff) |
Convert project to Java 19 (at long last)
Diffstat (limited to 'src/main/ui/BrowserWindow.java')
-rw-r--r-- | src/main/ui/BrowserWindow.java | 23 |
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); |