From b8ee1a1a0f2c5ec48e4c6942fb2d239c6d1ada76 Mon Sep 17 00:00:00 2001 From: Robert Vokac Date: Sat, 3 Feb 2024 04:20:21 +0000 Subject: [PATCH] Added new improvements --- .../gui/common/ComponentRegistry.java | 31 +++++++++++++++++++ .../utils/timecalc/main/TimeCalcManager.java | 31 ++++++++++++------- 2 files changed, 50 insertions(+), 12 deletions(-) create mode 100644 src/main/java/org/nanoboot/utils/timecalc/gui/common/ComponentRegistry.java diff --git a/src/main/java/org/nanoboot/utils/timecalc/gui/common/ComponentRegistry.java b/src/main/java/org/nanoboot/utils/timecalc/gui/common/ComponentRegistry.java new file mode 100644 index 0000000..04766b6 --- /dev/null +++ b/src/main/java/org/nanoboot/utils/timecalc/gui/common/ComponentRegistry.java @@ -0,0 +1,31 @@ +package org.nanoboot.utils.timecalc.gui.common; + +import javax.swing.JComponent; +import java.awt.Component; +import java.util.HashSet; +import java.util.Set; + +/** + * @author Robert + * @since 21.02.2024 + */ +public class ComponentRegistry { + private final Set set = new HashSet<>(); + public ComponentRegistry() { + + } + public void add(JComponent component) { + this.set.add(component); + } + public void addAll(JComponent... component) { + for(JComponent c:component) { + add(c); + } + } + + public void setVisible(boolean b) { + for(Component c:set) { + c.setVisible(b); + } + } +} diff --git a/src/main/java/org/nanoboot/utils/timecalc/main/TimeCalcManager.java b/src/main/java/org/nanoboot/utils/timecalc/main/TimeCalcManager.java index 49cce50..80c0bb6 100644 --- a/src/main/java/org/nanoboot/utils/timecalc/main/TimeCalcManager.java +++ b/src/main/java/org/nanoboot/utils/timecalc/main/TimeCalcManager.java @@ -1,5 +1,6 @@ package org.nanoboot.utils.timecalc.main; +import org.nanoboot.utils.timecalc.gui.common.ComponentRegistry; import org.nanoboot.utils.timecalc.gui.common.TimeCalcButton; import org.nanoboot.utils.timecalc.gui.common.TimeCalcWindow; import org.nanoboot.utils.timecalc.gui.common.Toaster; @@ -348,6 +349,22 @@ public class TimeCalcManager { StringBuilder sb = null; + ComponentRegistry componentRegistry = new ComponentRegistry(); + componentRegistry.addAll( + text, + progressSquare, + progressCircle, + analogClock, + batteryForDay, + batteryForWeek, + batteryForMonth, + batteryForHour, + jokeButton, + focusButton, + commandButton, + restartButton, + exitButton + ); while (true) { if (stopBeforeEnd) { window.setVisible(false); @@ -365,22 +382,12 @@ public class TimeCalcManager { Utils.ultraLight.set(false); } - text.setVisible(!Utils.everythingHidden.get()); - progressSquare.setVisible(!Utils.everythingHidden.get()); - progressCircle.setVisible(!Utils.everythingHidden.get()); - analogClock.setVisible(!Utils.everythingHidden.get()); - batteryForDay.setVisible(!Utils.everythingHidden.get()); - batteryForWeek.setVisible(!Utils.everythingHidden.get()); - batteryForMonth.setVisible(!Utils.everythingHidden.get()); - batteryForHour.setVisible(!Utils.everythingHidden.get()); + componentRegistry.setVisible(!Utils.everythingHidden.get()); + jokeButton.setVisible( TimeCalcConf.getInstance().isJokeVisible() && !Utils.everythingHidden.get()); - focusButton.setVisible(!Utils.everythingHidden.get()); - commandButton.setVisible(!Utils.everythingHidden.get()); - restartButton.setVisible(!Utils.everythingHidden.get()); - exitButton.setVisible(!Utils.everythingHidden.get()); window.setTitle(Utils.everythingHidden.get() ? "" : windowTitle); sb = new StringBuilder(); LocalDateTime now = LocalDateTime.now();