From bb91d6e931013d49ce2a4648a967dc8bc41bca0c Mon Sep 17 00:00:00 2001 From: emilfa Date: Thu, 5 Mar 2026 14:08:31 +0100 Subject: [PATCH] feat: created a HeaderView component and made App work with JavaFX --- src/main/java/edu/group5/app/App.java | 6 +- .../group5/app/control/HeaderController.java | 4 + .../group5/app/view/homepage/HeaderView.java | 76 +++++++++++++++++- .../app/view/homepage/HomePageView.java | 9 ++- src/main/resources/homepage/avatar.png | Bin 0 -> 5237 bytes src/main/resources/homepage/header.css | 19 +++++ src/main/resources/homepage/hmh-logo.png | Bin 0 -> 24384 bytes 7 files changed, 111 insertions(+), 3 deletions(-) create mode 100644 src/main/java/edu/group5/app/control/HeaderController.java create mode 100644 src/main/resources/homepage/avatar.png create mode 100644 src/main/resources/homepage/header.css create mode 100644 src/main/resources/homepage/hmh-logo.png diff --git a/src/main/java/edu/group5/app/App.java b/src/main/java/edu/group5/app/App.java index 0167e18..f37d143 100644 --- a/src/main/java/edu/group5/app/App.java +++ b/src/main/java/edu/group5/app/App.java @@ -24,7 +24,7 @@ public void start(Stage stage) { showHomePage(); - Scene scene = new Scene(root, 400, 300); + Scene scene = new Scene(root, 1280, 720); stage.setScene(scene); stage.show(); } @@ -33,6 +33,10 @@ public void showHomePage() { root.getChildren().setAll(new HomePageView(this)); } + public void showBrowseOrganizationsPage() { + root.getChildren().removeAll(); + } + static void main(String[] args) throws InterruptedException { OrgAPIWrapper orgWrap = new OrgAPIWrapper("https://app.innsamlingskontrollen.no/api/public/v1/all"); System.out.println(); diff --git a/src/main/java/edu/group5/app/control/HeaderController.java b/src/main/java/edu/group5/app/control/HeaderController.java new file mode 100644 index 0000000..3ce7e36 --- /dev/null +++ b/src/main/java/edu/group5/app/control/HeaderController.java @@ -0,0 +1,4 @@ +package edu.group5.app.control; + +public class HomePageController { +} diff --git a/src/main/java/edu/group5/app/view/homepage/HeaderView.java b/src/main/java/edu/group5/app/view/homepage/HeaderView.java index ff387ec..6d312b2 100644 --- a/src/main/java/edu/group5/app/view/homepage/HeaderView.java +++ b/src/main/java/edu/group5/app/view/homepage/HeaderView.java @@ -1,4 +1,78 @@ package edu.group5.app.view.homepage; -public class HeaderView { +import edu.group5.app.App; +import javafx.geometry.Pos; +import javafx.scene.control.Button; +import javafx.scene.image.Image; +import javafx.scene.image.ImageView; +import javafx.scene.layout.*; + +public class HeaderView extends BorderPane { + private final App app; + + public HeaderView(App app) { + this.app = app; + getStylesheets().add(getClass().getResource("/homepage/header.css").toExternalForm()); + setId("header"); + + setLeft(getLogoSection()); + setCenter(getNavBar()); + setRight(getProfileSection()); + } + + private StackPane getLogoSection() { + StackPane logoSection = new StackPane(); + logoSection.setId("logo-section"); + logoSection.setAlignment(Pos.CENTER); + logoSection.setOnMouseClicked(e -> System.out.println("logoSection")); + logoSection.setStyle("-fx-cursor: hand;"); + + ImageView logo = new ImageView( + new Image(getClass().getResource("/homepage/hmh-logo.png").toExternalForm()) + ); + logo.setFitHeight(60); + logo.setPreserveRatio(true); + + logoSection.getChildren().add(logo); + return logoSection; + } + + private HBox getNavBar() { + HBox navbar = new HBox(); + navbar.setId("navbar"); + navbar.setAlignment(Pos.CENTER); + navbar.setSpacing(10); + + Button home = new Button("Home"); + home.setOnAction(e -> System.out.println("Home")); + home.setStyle("-fx-cursor: hand;"); + + Button causes = new Button("Causes"); + causes.setOnAction(e -> System.out.println("Causes")); + causes.setStyle("-fx-cursor: hand;"); + + Button about = new Button("About us"); + about.setOnAction(e -> System.out.println("About us")); + about.setStyle("-fx-cursor: hand;"); + + navbar.getChildren().addAll(home, causes, about); + return navbar; + } + + private StackPane getProfileSection() { + StackPane profileSection = new StackPane(); + profileSection.setId("profile-section"); + profileSection.setAlignment(Pos.CENTER); + profileSection.setOnMouseClicked(e -> System.out.println("profileSection")); + profileSection.setStyle("-fx-cursor: hand;"); + + ImageView avatar = new ImageView( + new Image(getClass().getResource("/homepage/avatar.png").toExternalForm()) + ); + avatar.setFitHeight(60); + avatar.setPreserveRatio(true); + + profileSection.getChildren().add(avatar); + return profileSection; + } } diff --git a/src/main/java/edu/group5/app/view/homepage/HomePageView.java b/src/main/java/edu/group5/app/view/homepage/HomePageView.java index abe7bf7..598afdc 100644 --- a/src/main/java/edu/group5/app/view/homepage/HomePageView.java +++ b/src/main/java/edu/group5/app/view/homepage/HomePageView.java @@ -1,4 +1,11 @@ package edu.group5.app.view.homepage; -public class HomePageView { +import edu.group5.app.App; +import javafx.scene.layout.BorderPane; + +public class HomePageView extends BorderPane { + public HomePageView(App app) { + HeaderView headerView = new HeaderView(app); + setTop(headerView); + } } diff --git a/src/main/resources/homepage/avatar.png b/src/main/resources/homepage/avatar.png new file mode 100644 index 0000000000000000000000000000000000000000..e46b74d0af5dc5365bebb296d7917a8c4eb3abb7 GIT binary patch literal 5237 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/homepage/header.css b/src/main/resources/homepage/header.css new file mode 100644 index 0000000..28fcc59 --- /dev/null +++ b/src/main/resources/homepage/header.css @@ -0,0 +1,19 @@ +#header { + -fx-background-color: #A6CDF2; + -fx-padding: 10px; +} + +#logo-section { + -fx-border-color: black; + -fx-border-width: 2px; +} + +#navbar { + -fx-border-color: black; + -fx-border-width: 2px; +} + +#profile-section { + -fx-border-color: black; + -fx-border-width: 2px; +} \ No newline at end of file diff --git a/src/main/resources/homepage/hmh-logo.png b/src/main/resources/homepage/hmh-logo.png new file mode 100644 index 0000000000000000000000000000000000000000..78be8d9d88a4ca01860c4b3b9b523476261addbe GIT binary patch literal 24384 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 LNkvXXu0mjfAi^vS literal 0 HcmV?d00001