Added new improvements

This commit is contained in:
Robert Vokac 2024-01-28 17:31:24 +00:00
parent b32595d58f
commit 9634f28da5
No known key found for this signature in database
GPG Key ID: 693D30BEE3329055
5 changed files with 47 additions and 18 deletions

View File

@ -7,6 +7,14 @@ package rvc.timecalc;
public class BooleanHolder {
private boolean b;
public BooleanHolder(boolean b) {
this.b = b;
}
public BooleanHolder() {
this(false);
}
public void set(boolean b) {
this.b = b;
}

View File

@ -14,6 +14,7 @@ public class TimeCalcConf {
private static final String JOKE_VISIBLE = "jokes.visible";
private static final String BATTERY_WAVES_ENABLED = "battery.waves.enabled";
private static final String EVERYTHING_HIDDEN = "everything-hidden";
private static final String TOASTS_ENABLED = "toasts.enabled";
private static TimeCalcConf INSTANCE;
private Properties properties = new Properties();
@ -59,5 +60,11 @@ public class TimeCalcConf {
}
return properties.get(EVERYTHING_HIDDEN).equals("true");
}
public boolean areToastsEnabled() {
if(!properties.containsKey(TOASTS_ENABLED)) {
return true;
}
return properties.get(EVERYTHING_HIDDEN).equals("true");
}
}

View File

@ -51,10 +51,10 @@ public class TimeCalcWindow {
private int endMinute;
private boolean stopBeforeEnd = false;
private boolean vtipyShown = false;
private boolean everythingHidden = false;
public TimeCalcWindow(String startTimeIn, String overTimeIn) {
everythingHidden = TimeCalcConf.getInstance().isEverythingHidden();
Utils.everythingHidden.set(TimeCalcConf.getInstance().isEverythingHidden());
Utils.toastsAreEnabled.set(TimeCalcConf.getInstance().areToastsEnabled());
this.startTime = startTimeIn;
this.overTime = (overTimeIn == null || overTimeIn.isEmpty()) ?
DEFAULT_OVERTIME : overTimeIn;
@ -100,10 +100,10 @@ public class TimeCalcWindow {
// Key Pressed method
public void keyPressed(KeyEvent e) {
if(e.getKeyCode() == KeyEvent.VK_UP){
everythingHidden = false;
Utils.everythingHidden.set(false);
}
if(e.getKeyCode() == KeyEvent.VK_DOWN){
everythingHidden = true;
Utils.everythingHidden.set(true);
}
if(e.getKeyCode() == KeyEvent.VK_G){
@ -114,11 +114,14 @@ public class TimeCalcWindow {
Utils.highlighted.flip();
}
if(e.getKeyCode() == KeyEvent.VK_V){
everythingHidden = !everythingHidden;
Utils.everythingHidden.flip();
}
if(e.getKeyCode() == KeyEvent.VK_R){
commandButton.doClick();
}
if(e.getKeyCode() == KeyEvent.VK_T){
Utils.toastsAreEnabled.flip();
}
window.repaint();
}
@ -200,6 +203,15 @@ public class TimeCalcWindow {
case "gray": Utils.ultraLight.set(commandsAsArray[1].equals("1"));break;
case "waves": Battery.wavesOff = commandsAsArray[1].equals("0");break;
case "uptime": JOptionPane.showMessageDialog(null, ((int)((System.nanoTime() -Main.startNanoTime)) / 1000000000 / 60) + " minutes");break;
case "toast":
Toaster t = new Toaster();
t.setToasterWidth(800);
t.setToasterHeight(800);
t.setDisplayTime(60000 * 5);
t.setToasterColor(Color.GRAY);
Font font = new Font("sans", Font.PLAIN, 12);
t.setToasterMessageFont(font);t.setDisplayTime(5000); t.showToaster(commands.substring(6));break;
case "toasts": Utils.toastsAreEnabled.set(commandsAsArray[1].equals("1"));break;
default: JOptionPane.showMessageDialog(null, "Unknown command: " + commandsAsArray[0]);
}
});
@ -285,18 +297,18 @@ public class TimeCalcWindow {
break;
}
text.setVisible(!everythingHidden);
progressSquare.setVisible(!everythingHidden);
progressCircle.setVisible(!everythingHidden);
analogClock.setVisible(!everythingHidden);
battery.setVisible(!everythingHidden);
batteryForWeek.setVisible(!everythingHidden);
batteryForMonth.setVisible(!everythingHidden);
jokeButton.setVisible(!TimeCalcConf.getInstance().isJokeVisible()? false : !everythingHidden);
commandButton.setVisible(!everythingHidden);
restartButton.setVisible(!everythingHidden);
exitButton.setVisible(!everythingHidden);
window.setTitle(everythingHidden ? "" : "Time Calc");
text.setVisible(!Utils.everythingHidden.get());
progressSquare.setVisible(!Utils.everythingHidden.get());
progressCircle.setVisible(!Utils.everythingHidden.get());
analogClock.setVisible(!Utils.everythingHidden.get());
battery.setVisible(!Utils.everythingHidden.get());
batteryForWeek.setVisible(!Utils.everythingHidden.get());
batteryForMonth.setVisible(!Utils.everythingHidden.get());
jokeButton.setVisible(!TimeCalcConf.getInstance().isJokeVisible()? false : !Utils.everythingHidden.get());
commandButton.setVisible(!Utils.everythingHidden.get());
restartButton.setVisible(!Utils.everythingHidden.get());
exitButton.setVisible(!Utils.everythingHidden.get());
window.setTitle(Utils.everythingHidden.get() ? "" : "Time Calc");
sb = new StringBuilder();
LocalDateTime now = LocalDateTime.now();
String nowString = DATE_TIME_FORMATTER.format(now);

View File

@ -111,7 +111,7 @@ public class Toaster {
* Show a toaster with the specified message and the associated icon.
*/
public void showToaster(Icon icon, String msg) {
if(TimeCalcConf.getInstance().isEverythingHidden()) {
if(Utils.everythingHidden.get() || !Utils.toastsAreEnabled.get()) {
//nothing to do
return;
}

View File

@ -14,6 +14,8 @@ import java.nio.file.Files;
public class Utils {
public static final BooleanHolder highlighted = new BooleanHolder();
public static final BooleanHolder ultraLight = new BooleanHolder();
public static final BooleanHolder everythingHidden = new BooleanHolder();
public static final BooleanHolder toastsAreEnabled = new BooleanHolder(true);
public static final Color ULTRA_LIGHT_GRAY = new Color(216,216,216);
/**
* Count of bytes per one kilobyte.