From 0b6687864942dfb826f3be39984b602e712a3c92 Mon Sep 17 00:00:00 2001 From: mudabbir-ahmad Date: Wed, 2 Apr 2025 13:18:13 +0100 Subject: [PATCH] Created a proper UserGroup class with attributes to get all users from array list so that the populate panel function can go through all users and populate the panels based on the total number of users --- src/main/java/cvbuilder/model/User.java | 2 +- src/main/java/cvbuilder/model/UserGroup.java | 24 ++++++++++++++++---- src/main/java/cvbuilder/view/MainViewer.java | 2 +- 3 files changed, 21 insertions(+), 7 deletions(-) diff --git a/src/main/java/cvbuilder/model/User.java b/src/main/java/cvbuilder/model/User.java index 1fab439..31bccda 100644 --- a/src/main/java/cvbuilder/model/User.java +++ b/src/main/java/cvbuilder/model/User.java @@ -9,7 +9,7 @@ public class User { private String address; - private String getUserAttribute(User user, String panelName) { + public String getUserAttribute(String panelName) { return switch (panelName.toLowerCase()) { case "title" -> user.getTitle(); case "name" -> user.getName(); diff --git a/src/main/java/cvbuilder/model/UserGroup.java b/src/main/java/cvbuilder/model/UserGroup.java index 88b6816..7e2024e 100644 --- a/src/main/java/cvbuilder/model/UserGroup.java +++ b/src/main/java/cvbuilder/model/UserGroup.java @@ -4,11 +4,25 @@ import java.util.ArrayList; public class UserGroup { - private ArrayList users; + private static ArrayList users; - public UserGroup() - { - new ArrayList(); + private UserGroup() { + users = new ArrayList<>(); } -} + + public static ArrayList getUsers() { + return users; + } + + public void addUser(User user) { + users.add(user); + } + + public User getUser(int index) { + if (index >= 0 && index < users.size()) { + return users.get(index); + } + return null; + } +} \ No newline at end of file diff --git a/src/main/java/cvbuilder/view/MainViewer.java b/src/main/java/cvbuilder/view/MainViewer.java index 4ad2aff..dc0ee14 100644 --- a/src/main/java/cvbuilder/view/MainViewer.java +++ b/src/main/java/cvbuilder/view/MainViewer.java @@ -66,7 +66,7 @@ public class MainViewer { String panelName = panel.getName(); for (User user : UserGroup.getUsers()) { - JRadioButton radioButton = new JRadioButton(getUserAttribute(user, panelName)); + JRadioButton radioButton = new JRadioButton(user.getUserAttribute(panelName)); group.add(radioButton); panel.add(radioButton); }