Compare commits

..

No commits in common. "rvc" and "develop" have entirely different histories.
rvc ... develop

115 changed files with 884 additions and 567 deletions

View File

@ -8,7 +8,7 @@ _Time Calc is written in Java programming language and uses the Swing framework.
![Screenshot of application "Time Calc"](images/screenshot.jpg)
Time Calc is inspired by this document: [report.ods](https://github.com/robertvokac/time-calc/raw/branch/rvc/report.ods)
Time Calc is inspired by this document: [report.ods](https://code.nanoboot.org/nanoboot/time-calc/raw/branch/rvc/report.ods)
![report.ods.working_day.jpg](images/report.ods.working_day.jpg)

View File

@ -13,7 +13,7 @@
<exec.vmArgs></exec.vmArgs>
<exec.args>${exec.vmArgs} -classpath %classpath ${exec.mainClass} ${exec.appArgs}</exec.args>
<exec.appArgs></exec.appArgs>
<exec.mainClass>com.robertvokac.utils.timecalc.app.Main</exec.mainClass>
<exec.mainClass>org.nanoboot.utils.timecalc.app.Main</exec.mainClass>
<exec.executable>java</exec.executable>
</properties>
</action>
@ -30,7 +30,7 @@
<exec.vmArgs>-agentlib:jdwp=transport=dt_socket,server=n,address=${jpda.address}</exec.vmArgs>
<exec.args>${exec.vmArgs} -classpath %classpath ${exec.mainClass} ${exec.appArgs}</exec.args>
<exec.appArgs></exec.appArgs>
<exec.mainClass>com.robertvokac.utils.timecalc.app.Main</exec.mainClass>
<exec.mainClass>org.nanoboot.utils.timecalc.app.Main</exec.mainClass>
<exec.executable>java</exec.executable>
<jpda.listen>true</jpda.listen>
</properties>

View File

@ -6,7 +6,7 @@
<parent>
<relativePath>./../../pom.xml</relativePath>
<groupId>com.robertvokac.utils</groupId>
<groupId>org.nanoboot.utils</groupId>
<artifactId>time-calc</artifactId>
<version>0.1.0-SNAPSHOT</version>
</parent>
@ -24,7 +24,7 @@
<configuration>
<archive>
<manifest>
<mainClass>com.robertvokac.utils.timecalc.app.Main</mainClass>
<mainClass>org.nanoboot.utils.timecalc.app.Main</mainClass>
<addDefaultImplementationEntries>true</addDefaultImplementationEntries>
</manifest>
<manifestEntries>

View File

@ -0,0 +1,86 @@
package org.nanoboot.utils.timecalc.app;
import org.nanoboot.utils.timecalc.entity.Visibility;
import org.nanoboot.utils.timecalc.swing.common.Toaster;
import javax.swing.JOptionPane;
import java.awt.Color;
import java.awt.Font;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
/**
* @author Robert Vokac
* @since 26.02.2024
*/
public class CommandActionListener
implements ActionListener {
private final TimeCalcApp timeCalcApp;
private final TimeCalcConfiguration timeCalcConfiguration;
public CommandActionListener(TimeCalcApp timeCalcApp,
TimeCalcConfiguration timeCalcConfiguration) {
this.timeCalcApp = timeCalcApp;
this.timeCalcConfiguration = timeCalcConfiguration;
}
@Override
public void actionPerformed(ActionEvent e) {
String commands = (String) JOptionPane.showInputDialog(
null,
"Run a command:",
"Command launching",
JOptionPane.PLAIN_MESSAGE,
null,
null,
"test"
);
String[] commandsAsArray = commands.split(" ");
switch (commandsAsArray[0]) {
case "test":
JOptionPane.showMessageDialog(null, "Test");
break;
case "color":
timeCalcApp.visibilityProperty.setValue(
commandsAsArray[1].equals("1")
? Visibility.STRONGLY_COLORED.name()
: Visibility.WEAKLY_COLORED.name());
break;
case "gray":
timeCalcApp.visibilityProperty.setValue(
commandsAsArray[1].equals("1")
? Visibility.GRAY.name()
: Visibility.WEAKLY_COLORED.name());
break;
case "waves":
timeCalcConfiguration.batteryWavesVisibleProperty
.setValue(commandsAsArray[1].equals("1"));
break;
case "uptime":
JOptionPane.showMessageDialog(null,
timeCalcApp
.getCountOfMinutesSinceAppStarted()
+ " 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":
timeCalcConfiguration.notificationsVisibleProperty
.setValue(commandsAsArray[1].equals("1"));
break;
default:
JOptionPane.showMessageDialog(null,
"Unknown command: " + commandsAsArray[0]);
}
}
}

View File

@ -1,6 +1,6 @@
package com.robertvokac.utils.timecalc.app;
package org.nanoboot.utils.timecalc.app;
import com.robertvokac.utils.timecalc.utils.property.Property;
import org.nanoboot.utils.timecalc.utils.property.Property;
/**
* @author Robert Vokac

View File

@ -1,4 +1,4 @@
package com.robertvokac.utils.timecalc.app;
package org.nanoboot.utils.timecalc.app;
import com.formdev.flatlaf.FlatLightLaf;

View File

@ -1,14 +1,14 @@
package com.robertvokac.utils.timecalc.app;
package org.nanoboot.utils.timecalc.app;
import java.io.File;
import com.robertvokac.utils.timecalc.entity.Visibility;
import com.robertvokac.utils.timecalc.swing.windows.MainWindow;
import com.robertvokac.utils.timecalc.utils.common.DateFormats;
import com.robertvokac.utils.timecalc.utils.common.FileConstants;
import com.robertvokac.utils.timecalc.utils.common.Utils;
import com.robertvokac.utils.timecalc.utils.property.Property;
import com.robertvokac.utils.timecalc.utils.property.ReadOnlyProperty;
import com.robertvokac.utils.timecalc.utils.property.StringProperty;
import org.nanoboot.utils.timecalc.entity.Visibility;
import org.nanoboot.utils.timecalc.swing.windows.MainWindow;
import org.nanoboot.utils.timecalc.utils.common.DateFormats;
import org.nanoboot.utils.timecalc.utils.common.FileConstants;
import org.nanoboot.utils.timecalc.utils.common.Utils;
import org.nanoboot.utils.timecalc.utils.property.Property;
import org.nanoboot.utils.timecalc.utils.property.ReadOnlyProperty;
import org.nanoboot.utils.timecalc.utils.property.StringProperty;
import javax.swing.JOptionPane;
import java.io.IOException;
@ -21,10 +21,11 @@ import java.util.List;
import java.util.logging.Level;
import java.util.logging.Logger;
import lombok.Getter;
import com.robertvokac.utils.timecalc.persistence.api.VersionRepositoryApi;
import com.robertvokac.utils.timecalc.persistence.impl.sqlite.SqliteConnectionFactory;
import com.robertvokac.utils.timecalc.persistence.impl.sqlite.VersionRepositorySQLiteImpl;
import static com.robertvokac.utils.timecalc.app.Main.ONLY_ACTIVITIES_WINDOW_IS_ALLOWED;
import org.nanoboot.utils.timecalc.persistence.api.VersionRepositoryApi;
import org.nanoboot.utils.timecalc.persistence.impl.sqlite.SqliteConnectionFactory;
import org.nanoboot.utils.timecalc.persistence.impl.sqlite.VersionRepositorySQLiteImpl;
import static org.nanoboot.utils.timecalc.app.Main.ONLY_ACTIVITIES_WINDOW_IS_ALLOWED;
/**
* @author Robert Vokac

View File

@ -1,9 +1,9 @@
package com.robertvokac.utils.timecalc.app;
package org.nanoboot.utils.timecalc.app;
import com.robertvokac.utils.timecalc.utils.property.BooleanProperty;
import com.robertvokac.utils.timecalc.utils.property.IntegerProperty;
import com.robertvokac.utils.timecalc.utils.property.Property;
import com.robertvokac.utils.timecalc.utils.property.StringProperty;
import org.nanoboot.utils.timecalc.utils.property.BooleanProperty;
import org.nanoboot.utils.timecalc.utils.property.IntegerProperty;
import org.nanoboot.utils.timecalc.utils.property.Property;
import org.nanoboot.utils.timecalc.utils.property.StringProperty;
import java.util.ArrayList;
import java.util.HashMap;
@ -199,6 +199,12 @@ public class TimeCalcConfiguration {
= new StringProperty(TimeCalcProperty.FUEL_TYPE.getKey());
public final BooleanProperty fuelIconVisibleProperty
= new BooleanProperty(TimeCalcProperty.FUEL_ICON_VISIBLE.getKey());
public final BooleanProperty rotationVisibleProperty
= new BooleanProperty(TimeCalcProperty.ROTATION_VISIBLE.getKey());
public final BooleanProperty rotationHiddenProperty
= new BooleanProperty(TimeCalcProperty.ROTATION_HIDDEN.getKey());
public final StringProperty rotationTypeProperty
= new StringProperty(TimeCalcProperty.ROTATION_TYPE.getKey());
public final BooleanProperty circleVisibleProperty
= new BooleanProperty(TimeCalcProperty.CIRCLE_VISIBLE.getKey());
public final BooleanProperty circleHiddenProperty
@ -359,6 +365,7 @@ public class TimeCalcConfiguration {
dotVisibleProperty,dotTypeProperty,
fuelVisibleProperty, fuelTypeProperty, fuelHiddenProperty,
fuelIconVisibleProperty,
rotationVisibleProperty, rotationTypeProperty, rotationHiddenProperty,
swingVisibleProperty,
swingTypeProperty,
swingQuarterIconVisibleProperty,

View File

@ -1,6 +1,6 @@
package com.robertvokac.utils.timecalc.app;
package org.nanoboot.utils.timecalc.app;
import com.robertvokac.utils.timecalc.utils.common.Utils;
import org.nanoboot.utils.timecalc.utils.common.Utils;
/**
* @author Robert Vokac

View File

@ -1,8 +1,8 @@
package com.robertvokac.utils.timecalc.app;
package org.nanoboot.utils.timecalc.app;
import com.robertvokac.utils.timecalc.entity.Visibility;
import com.robertvokac.utils.timecalc.utils.common.FileConstants;
import com.robertvokac.utils.timecalc.utils.common.Utils;
import org.nanoboot.utils.timecalc.entity.Visibility;
import org.nanoboot.utils.timecalc.utils.common.FileConstants;
import org.nanoboot.utils.timecalc.utils.common.Utils;
import java.io.File;
import java.io.FileInputStream;

View File

@ -1,4 +1,4 @@
package com.robertvokac.utils.timecalc.app;
package org.nanoboot.utils.timecalc.app;
import lombok.Getter;
@ -95,6 +95,9 @@ public enum TimeCalcProperty {
FUEL_VISIBLE("fuel.visible", "Fuel"),
FUEL_TYPE("fuel.type", "Fuel : Type"),
FUEL_HIDDEN("fuel.hidden", "Fuel : Hidden"),
ROTATION_VISIBLE("rotation.visible", "Rotation"),
ROTATION_TYPE("rotation.type", "Rotation : Type"),
ROTATION_HIDDEN("rotation.hidden", "Rotation : Hidden"),
FUEL_ICON_VISIBLE("fuel.icon.visible", "Fuel : Icon"),
CIRCLE_VISIBLE("circle.visible", "Circle"),
CIRCLE_TYPE("circle.type", "Circle : Type"),

View File

@ -1,4 +1,4 @@
package com.robertvokac.utils.timecalc.entity;
package org.nanoboot.utils.timecalc.entity;
import java.util.HashSet;
import java.util.Set;
@ -8,7 +8,7 @@ import lombok.AllArgsConstructor;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;
import com.robertvokac.utils.timecalc.utils.common.NumberFormats;
import org.nanoboot.utils.timecalc.utils.common.NumberFormats;
/**
* @author Robert Vokac

View File

@ -1,4 +1,4 @@
package com.robertvokac.utils.timecalc.entity;
package org.nanoboot.utils.timecalc.entity;
import lombok.Getter;
import lombok.Setter;

View File

@ -1,9 +1,9 @@
package com.robertvokac.utils.timecalc.entity;
package org.nanoboot.utils.timecalc.entity;
import lombok.Getter;
import lombok.Setter;
import com.robertvokac.utils.timecalc.swing.progress.AnalogClock;
import com.robertvokac.utils.timecalc.utils.common.TTime;
import org.nanoboot.utils.timecalc.swing.progress.AnalogClock;
import org.nanoboot.utils.timecalc.utils.common.TTime;
import java.util.Calendar;
import java.util.Date;
@ -64,7 +64,7 @@ public class Progress {
}
public static double getMinuteProgress(int secondNow, int millisecondNow) {
return ((double)millisecondNow) / 60d / 1000d + secondNow / 60d;
return millisecondNow / 60d / 1000d + secondNow / 60d;
}
public static double getHourProgress(TTime timeRemains, int secondsRemains,

View File

@ -1,6 +1,6 @@
package com.robertvokac.utils.timecalc.entity;
package org.nanoboot.utils.timecalc.entity;
import com.robertvokac.utils.timecalc.utils.property.StringProperty;
import org.nanoboot.utils.timecalc.utils.property.StringProperty;
/**
* @author Robert Vokac

View File

@ -1,6 +1,6 @@
package com.robertvokac.utils.timecalc.entity;
package org.nanoboot.utils.timecalc.entity;
import com.robertvokac.utils.timecalc.app.TimeCalcException;
import org.nanoboot.utils.timecalc.app.TimeCalcException;
/**
* @author pc00289

View File

@ -1,4 +1,4 @@
package com.robertvokac.utils.timecalc.entity;
package org.nanoboot.utils.timecalc.entity;
import lombok.AllArgsConstructor;
import lombok.Getter;

View File

@ -1,10 +1,10 @@
package com.robertvokac.utils.timecalc.entity;
package org.nanoboot.utils.timecalc.entity;
import lombok.Getter;
import lombok.Setter;
import com.robertvokac.utils.timecalc.app.TimeCalcException;
import com.robertvokac.utils.timecalc.swing.common.ArrivalChartData;
import com.robertvokac.utils.timecalc.utils.common.TTime;
import org.nanoboot.utils.timecalc.app.TimeCalcException;
import org.nanoboot.utils.timecalc.swing.common.ArrivalChartData;
import org.nanoboot.utils.timecalc.utils.common.TTime;
import java.time.LocalDate;
import java.util.ArrayList;
@ -112,7 +112,6 @@ public class WorkingDayForStats extends WorkingDay {
l.add(wd);
});
}
System.out.println("list7.size()=" + list7.size());
wd.setArrivalTimeMovingAverage7Days(list7.stream()
.map(WorkingDay::getArrivalAsDouble)
.mapToDouble(Double::doubleValue)
@ -133,10 +132,6 @@ public class WorkingDayForStats extends WorkingDay {
.mapToDouble(Double::doubleValue)
.average()
.orElse(0.0));
if(list7.isEmpty()) wd.setArrivalTimeMovingAverage7Days(wd.getArrivalTimeMovingAverage56Days());
if(list14.isEmpty()) wd.setArrivalTimeMovingAverage14Days(wd.getArrivalTimeMovingAverage56Days());
if(list28.isEmpty()) wd.setArrivalTimeMovingAverage28Days(wd.getArrivalTimeMovingAverage56Days());
// System.out.println(
// WorkingDay.createId(cal) + " 1 :: " + list7.size());
// System.out.println(
@ -162,13 +157,14 @@ public class WorkingDayForStats extends WorkingDay {
public static ArrivalChartData toArrivalChartData(
List<WorkingDayForStats> list, double target, String startDate, String endDate) {
for(int i = 0; i < 7; i++) {
if(list.isEmpty()) {
break;
}
list.remove(0);
}
while(!list.isEmpty() && list.get(list.size() - 1).isThisDayTimeOff()) {
list.remove(0);
list.remove(0);
list.remove(0);
list.remove(0);
list.remove(0);
list.remove(0);
list.remove(0);
while(list.get(list.size() - 1).isThisDayTimeOff()) {
list.remove(list.size() - 1);
}
String[] days = new String[list.size()];

View File

@ -1,7 +1,7 @@
package com.robertvokac.utils.timecalc.persistence.api;
package org.nanoboot.utils.timecalc.persistence.api;
import com.robertvokac.utils.timecalc.app.TimeCalcConfiguration;
import com.robertvokac.utils.timecalc.entity.Activity;
import org.nanoboot.utils.timecalc.app.TimeCalcConfiguration;
import org.nanoboot.utils.timecalc.entity.Activity;
import java.util.Arrays;
import java.util.List;

View File

@ -16,13 +16,13 @@
// along with this program; if not, write to the Free Software
// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
///////////////////////////////////////////////////////////////////////////////////////////////
package com.robertvokac.utils.timecalc.persistence.api;
package org.nanoboot.utils.timecalc.persistence.api;
import java.sql.Connection;
/**
*
* @author <a href="mailto:robertvokac@robertvokac.com">Robert Vokac</a>
* @author <a href="mailto:robertvokac@nanoboot.org">Robert Vokac</a>
*/
public interface ConnectionFactory {

View File

@ -1,4 +1,4 @@
package com.robertvokac.utils.timecalc.persistence.api;
package org.nanoboot.utils.timecalc.persistence.api;
/**
* @author Robert Vokac

View File

@ -1,10 +1,10 @@
package com.robertvokac.utils.timecalc.persistence.api;
package org.nanoboot.utils.timecalc.persistence.api;
import java.util.Calendar;
import com.robertvokac.utils.timecalc.app.TimeCalcException;
import com.robertvokac.utils.timecalc.entity.WorkingDay;
import com.robertvokac.utils.timecalc.utils.common.Utils;
import org.nanoboot.utils.timecalc.app.TimeCalcException;
import org.nanoboot.utils.timecalc.entity.WorkingDay;
import org.nanoboot.utils.timecalc.utils.common.Utils;
import java.util.List;

View File

@ -1,9 +1,9 @@
package com.robertvokac.utils.timecalc.persistence.impl.sqlite;
package org.nanoboot.utils.timecalc.persistence.impl.sqlite;
import com.robertvokac.utils.timecalc.app.TimeCalcException;
import com.robertvokac.utils.timecalc.entity.Activity;
import com.robertvokac.utils.timecalc.persistence.api.ActivityRepositoryApi;
import com.robertvokac.utils.timecalc.utils.common.Utils;
import org.nanoboot.utils.timecalc.app.TimeCalcException;
import org.nanoboot.utils.timecalc.entity.Activity;
import org.nanoboot.utils.timecalc.persistence.api.ActivityRepositoryApi;
import org.nanoboot.utils.timecalc.utils.common.Utils;
import java.sql.Connection;
import java.sql.PreparedStatement;

View File

@ -16,11 +16,11 @@
// along with this program; if not, write to the Free Software
// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
///////////////////////////////////////////////////////////////////////////////////////////////
package com.robertvokac.utils.timecalc.persistence.impl.sqlite;
package org.nanoboot.utils.timecalc.persistence.impl.sqlite;
/**
*
* @author <a href="mailto:robertvokac@robertvokac.com">Robert Vokac</a>
* @author <a href="mailto:robertvokac@nanoboot.org">Robert Vokac</a>
*/
class ActivityTable {

View File

@ -16,20 +16,20 @@
// along with this program; if not, write to the Free Software
// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
///////////////////////////////////////////////////////////////////////////////////////////////
package com.robertvokac.utils.timecalc.persistence.impl.sqlite;
package org.nanoboot.utils.timecalc.persistence.impl.sqlite;
import com.robertvokac.utils.timecalc.persistence.api.ConnectionFactory;
import com.robertvokac.utils.timecalc.utils.common.FileConstants;
import org.nanoboot.utils.timecalc.persistence.api.ConnectionFactory;
import org.nanoboot.utils.timecalc.utils.common.FileConstants;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.SQLException;
import com.robertvokac.utils.timecalc.app.TimeCalcException;
import org.nanoboot.utils.timecalc.app.TimeCalcException;
/**
*
* @author <a href="mailto:robertvokac@robertvokac.com">Robert Vokac</a>
* @author <a href="mailto:robertvokac@nanoboot.org">Robert Vokac</a>
*/
public class SqliteConnectionFactory implements ConnectionFactory {

View File

@ -1,11 +1,11 @@
package com.robertvokac.utils.timecalc.persistence.impl.sqlite;
package org.nanoboot.utils.timecalc.persistence.impl.sqlite;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import com.robertvokac.utils.timecalc.app.TimeCalcException;
import com.robertvokac.utils.timecalc.persistence.api.VersionRepositoryApi;
import org.nanoboot.utils.timecalc.app.TimeCalcException;
import org.nanoboot.utils.timecalc.persistence.api.VersionRepositoryApi;
/**
* @author Robert Vokac

View File

@ -16,11 +16,11 @@
// along with this program; if not, write to the Free Software
// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
///////////////////////////////////////////////////////////////////////////////////////////////
package com.robertvokac.utils.timecalc.persistence.impl.sqlite;
package org.nanoboot.utils.timecalc.persistence.impl.sqlite;
/**
*
* @author <a href="mailto:robertvokac@robertvokac.com">Robert Vokac</a>
* @author <a href="mailto:robertvokac@nanoboot.org">Robert Vokac</a>
*/
public class VersionTable {

View File

@ -1,10 +1,10 @@
package com.robertvokac.utils.timecalc.persistence.impl.sqlite;
package org.nanoboot.utils.timecalc.persistence.impl.sqlite;
import com.robertvokac.utils.timecalc.app.Main;
import com.robertvokac.utils.timecalc.app.TimeCalcException;
import com.robertvokac.utils.timecalc.entity.WorkingDay;
import com.robertvokac.utils.timecalc.persistence.api.WorkingDayRepositoryApi;
import com.robertvokac.utils.timecalc.utils.common.Utils;
import org.nanoboot.utils.timecalc.app.Main;
import org.nanoboot.utils.timecalc.app.TimeCalcException;
import org.nanoboot.utils.timecalc.entity.WorkingDay;
import org.nanoboot.utils.timecalc.persistence.api.WorkingDayRepositoryApi;
import org.nanoboot.utils.timecalc.utils.common.Utils;
import java.sql.Connection;
import java.sql.PreparedStatement;
@ -53,14 +53,14 @@ public class WorkingDayRepositorySQLiteImpl implements WorkingDayRepositoryApi {
stmt.setInt(++i, workingDay.getArrivalMinute());
stmt.setInt(++i, workingDay.getOvertimeHour());
stmt.setInt(++i, workingDay.getOvertimeMinute());
stmt.setInt(++i, workingDay.getPauseStartHour());
stmt.setInt(++i, workingDay.getPauseStartMinute());
//
stmt.setInt(++i, workingDay.getWorkingTimeInMinutes());
stmt.setInt(++i, workingDay.getPauseTimeInMinutes());
stmt.setString(++i, workingDay.getNote());
stmt.setInt(++i, workingDay.isTimeOff() ? 1 : 0);
stmt.setInt(++i, workingDay.getForgetOvertime());
stmt.setInt(++i, workingDay.getPauseStartHour());
stmt.setInt(++i, workingDay.getPauseStartMinute());
//
stmt.execute();

View File

@ -16,11 +16,11 @@
// along with this program; if not, write to the Free Software
// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
///////////////////////////////////////////////////////////////////////////////////////////////
package com.robertvokac.utils.timecalc.persistence.impl.sqlite;
package org.nanoboot.utils.timecalc.persistence.impl.sqlite;
/**
*
* @author <a href="mailto:robertvokac@robertvokac.com">Robert Vokac</a>
* @author <a href="mailto:robertvokac@nanoboot.org">Robert Vokac</a>
*/
public class WorkingDayTable {

View File

@ -1,7 +1,7 @@
package com.robertvokac.utils.timecalc.swing.common;
package org.nanoboot.utils.timecalc.swing.common;
import com.robertvokac.utils.timecalc.swing.controls.TButton;
import com.robertvokac.utils.timecalc.utils.common.Utils;
import org.nanoboot.utils.timecalc.swing.controls.TButton;
import org.nanoboot.utils.timecalc.utils.common.Utils;
import javax.swing.JOptionPane;

View File

@ -1,7 +1,7 @@
package com.robertvokac.utils.timecalc.swing.common;
package org.nanoboot.utils.timecalc.swing.common;
import com.robertvokac.utils.timecalc.app.Main;
import com.robertvokac.utils.timecalc.swing.controls.TTextField;
import org.nanoboot.utils.timecalc.app.Main;
import org.nanoboot.utils.timecalc.swing.controls.TTextField;
import javax.swing.BorderFactory;
import javax.swing.JPanel;
import java.awt.Color;

View File

@ -1,14 +1,14 @@
package com.robertvokac.utils.timecalc.swing.common;
package org.nanoboot.utils.timecalc.swing.common;
import com.robertvokac.utils.timecalc.app.Main;
import com.robertvokac.utils.timecalc.swing.controls.MouseClickedListener;
import com.robertvokac.utils.timecalc.swing.controls.SmallTButton;
import com.robertvokac.utils.timecalc.swing.controls.TTextField;
import org.nanoboot.utils.timecalc.app.Main;
import org.nanoboot.utils.timecalc.swing.controls.MouseClickedListener;
import org.nanoboot.utils.timecalc.swing.controls.SmallTButton;
import org.nanoboot.utils.timecalc.swing.controls.TTextField;
import lombok.AccessLevel;
import lombok.Getter;
import com.robertvokac.utils.timecalc.entity.Activity;
import com.robertvokac.utils.timecalc.persistence.api.ActivityRepositoryApi;
import com.robertvokac.utils.timecalc.utils.common.TTime;
import org.nanoboot.utils.timecalc.entity.Activity;
import org.nanoboot.utils.timecalc.persistence.api.ActivityRepositoryApi;
import org.nanoboot.utils.timecalc.utils.common.TTime;
import javax.swing.BorderFactory;
import javax.swing.JButton;

View File

@ -1,4 +1,4 @@
package com.robertvokac.utils.timecalc.swing.common;
package org.nanoboot.utils.timecalc.swing.common;
import org.jfree.chart.ChartFactory;
import org.jfree.chart.ChartPanel;
@ -11,8 +11,8 @@ import org.jfree.chart.title.TextTitle;
import org.jfree.data.time.Day;
import org.jfree.data.time.TimeSeries;
import org.jfree.data.time.TimeSeriesCollection;
import com.robertvokac.utils.timecalc.utils.common.NumberFormats;
import com.robertvokac.utils.timecalc.utils.property.IntegerProperty;
import org.nanoboot.utils.timecalc.utils.common.NumberFormats;
import org.nanoboot.utils.timecalc.utils.property.IntegerProperty;
import javax.swing.BorderFactory;
import javax.swing.JPanel;
@ -248,11 +248,7 @@ public class ArrivalChart extends JPanel {
seriesTarget.add(day3, new Double(0d));
seriesTargetMinus30Minutes.add(day3, new Double(-0.5d));
seriesTargetMinus60Minutes.add(day3, new Double(-1.0d));
double ma7i = ma7[i];
if(ma7i < (ma28[i] - 2)) {
ma7i = ma28[i] - 2;
}
seriesMa7.add(day3, new Double(ma7i));
seriesMa7.add(day3, new Double(ma7[i]));
seriesMa14.add(day3, new Double(ma14[i]));
seriesMa28.add(day3, new Double(ma28[i]));
seriesMa56.add(day3, new Double(ma56[i]));

View File

@ -1,4 +1,4 @@
package com.robertvokac.utils.timecalc.swing.common;
package org.nanoboot.utils.timecalc.swing.common;
import lombok.AllArgsConstructor;
import lombok.Getter;

View File

@ -1,6 +1,6 @@
package com.robertvokac.utils.timecalc.swing.common;
package org.nanoboot.utils.timecalc.swing.common;
import com.robertvokac.utils.timecalc.entity.Visibility;
import org.nanoboot.utils.timecalc.entity.Visibility;
import java.awt.BasicStroke;
import java.awt.Color;

View File

@ -1,13 +1,13 @@
package com.robertvokac.utils.timecalc.swing.common;
package org.nanoboot.utils.timecalc.swing.common;
import lombok.Getter;
import com.robertvokac.utils.timecalc.app.Main;
import com.robertvokac.utils.timecalc.app.TimeCalcConfiguration;
import com.robertvokac.utils.timecalc.entity.Activity;
import com.robertvokac.utils.timecalc.persistence.api.ActivityRepositoryApi;
import com.robertvokac.utils.timecalc.utils.common.NumberFormats;
import com.robertvokac.utils.timecalc.utils.common.TTime;
import com.robertvokac.utils.timecalc.utils.common.Utils;
import org.nanoboot.utils.timecalc.app.Main;
import org.nanoboot.utils.timecalc.app.TimeCalcConfiguration;
import org.nanoboot.utils.timecalc.entity.Activity;
import org.nanoboot.utils.timecalc.persistence.api.ActivityRepositoryApi;
import org.nanoboot.utils.timecalc.utils.common.NumberFormats;
import org.nanoboot.utils.timecalc.utils.common.TTime;
import org.nanoboot.utils.timecalc.utils.common.Utils;
import javax.swing.BoxLayout;
import javax.swing.JButton;

View File

@ -1,8 +1,8 @@
package com.robertvokac.utils.timecalc.swing.common;
package org.nanoboot.utils.timecalc.swing.common;
import com.robertvokac.utils.timecalc.app.TimeCalcConfiguration;
import com.robertvokac.utils.timecalc.swing.controls.TTabbedPane;
import com.robertvokac.utils.timecalc.persistence.api.ActivityRepositoryApi;
import org.nanoboot.utils.timecalc.app.TimeCalcConfiguration;
import org.nanoboot.utils.timecalc.swing.controls.TTabbedPane;
import org.nanoboot.utils.timecalc.persistence.api.ActivityRepositoryApi;
import java.util.Calendar;
import java.util.HashMap;

View File

@ -1,4 +1,4 @@
package com.robertvokac.utils.timecalc.swing.common;
package org.nanoboot.utils.timecalc.swing.common;
import java.awt.Color;
import java.awt.Font;

View File

@ -1,17 +1,17 @@
package com.robertvokac.utils.timecalc.swing.common;
package org.nanoboot.utils.timecalc.swing.common;
import com.robertvokac.utils.timecalc.app.TimeCalcApp;
import com.robertvokac.utils.timecalc.app.TimeCalcConfiguration;
import com.robertvokac.utils.timecalc.app.TimeCalcException;
import com.robertvokac.utils.timecalc.app.TimeCalcProperties;
import com.robertvokac.utils.timecalc.entity.Visibility;
import com.robertvokac.utils.timecalc.swing.windows.MainWindow;
import com.robertvokac.utils.timecalc.swing.progress.Time;
import com.robertvokac.utils.timecalc.utils.common.FileConstants;
import com.robertvokac.utils.timecalc.utils.common.Jokes;
import com.robertvokac.utils.timecalc.utils.common.TTime;
import com.robertvokac.utils.timecalc.utils.common.Utils;
import com.robertvokac.utils.timecalc.utils.property.IntegerProperty;
import org.nanoboot.utils.timecalc.app.TimeCalcApp;
import org.nanoboot.utils.timecalc.app.TimeCalcConfiguration;
import org.nanoboot.utils.timecalc.app.TimeCalcException;
import org.nanoboot.utils.timecalc.app.TimeCalcProperties;
import org.nanoboot.utils.timecalc.entity.Visibility;
import org.nanoboot.utils.timecalc.swing.windows.MainWindow;
import org.nanoboot.utils.timecalc.swing.progress.Time;
import org.nanoboot.utils.timecalc.utils.common.FileConstants;
import org.nanoboot.utils.timecalc.utils.common.Jokes;
import org.nanoboot.utils.timecalc.utils.common.TTime;
import org.nanoboot.utils.timecalc.utils.common.Utils;
import org.nanoboot.utils.timecalc.utils.property.IntegerProperty;
import javax.swing.JOptionPane;
import java.awt.event.KeyAdapter;
@ -22,7 +22,7 @@ import java.util.Arrays;
import java.util.Calendar;
import java.util.Properties;
import lombok.Setter;
import com.robertvokac.utils.timecalc.utils.common.NumberFormats;
import org.nanoboot.utils.timecalc.utils.common.NumberFormats;
/**
* @author Robert Vokac
@ -548,6 +548,10 @@ public class TimeCalcKeyAdapter extends KeyAdapter {
}
break;
}
case KeyEvent.VK_F2: {
mainWindow.doCommand();
break;
}
case KeyEvent.VK_R: {
mainWindow.doRestart();
break;

View File

@ -1,7 +1,7 @@
/**
* This Java class named Toaster is licence under this licence: Apache License V2.0
*/
package com.robertvokac.utils.timecalc.swing.common;
package org.nanoboot.utils.timecalc.swing.common;
/**
* Java Toaster is a java utility class for your swing applications that show an
@ -40,8 +40,8 @@ import java.awt.GraphicsEnvironment;
import java.awt.Image;
import java.awt.Insets;
import java.awt.Rectangle;
import com.robertvokac.utils.timecalc.app.TimeCalcProperty;
import com.robertvokac.utils.timecalc.utils.property.BooleanProperty;
import org.nanoboot.utils.timecalc.app.TimeCalcProperty;
import org.nanoboot.utils.timecalc.utils.property.BooleanProperty;
/**
* Class to show tosters in multiplatform

View File

@ -1,8 +1,8 @@
package com.robertvokac.utils.timecalc.swing.common;
package org.nanoboot.utils.timecalc.swing.common;
import lombok.Getter;
import com.robertvokac.utils.timecalc.swing.progress.AnalogClock;
import com.robertvokac.utils.timecalc.swing.progress.Time;
import org.nanoboot.utils.timecalc.swing.progress.AnalogClock;
import org.nanoboot.utils.timecalc.swing.progress.Time;
import java.time.DateTimeException;
import java.time.DayOfWeek;

View File

@ -1,18 +1,18 @@
package com.robertvokac.utils.timecalc.swing.common;
package org.nanoboot.utils.timecalc.swing.common;
import com.robertvokac.utils.timecalc.app.GetProperty;
import com.robertvokac.utils.timecalc.app.TimeCalcProperty;
import com.robertvokac.utils.timecalc.entity.Progress;
import com.robertvokac.utils.timecalc.entity.Visibility;
import com.robertvokac.utils.timecalc.entity.WidgetType;
import com.robertvokac.utils.timecalc.swing.progress.ProgressFuelGauge;
import com.robertvokac.utils.timecalc.swing.progress.battery.Battery;
import com.robertvokac.utils.timecalc.swing.progress.ProgressSmileyIcon;
import com.robertvokac.utils.timecalc.swing.progress.ProgressSwing;
import com.robertvokac.utils.timecalc.utils.common.ProgressSmiley;
import com.robertvokac.utils.timecalc.utils.property.BooleanProperty;
import com.robertvokac.utils.timecalc.utils.property.Property;
import com.robertvokac.utils.timecalc.utils.property.StringProperty;
import org.nanoboot.utils.timecalc.app.GetProperty;
import org.nanoboot.utils.timecalc.app.TimeCalcProperty;
import org.nanoboot.utils.timecalc.entity.Progress;
import org.nanoboot.utils.timecalc.entity.Visibility;
import org.nanoboot.utils.timecalc.entity.WidgetType;
import org.nanoboot.utils.timecalc.swing.progress.ProgressFuelGauge;
import org.nanoboot.utils.timecalc.swing.progress.battery.Battery;
import org.nanoboot.utils.timecalc.swing.progress.ProgressSmileyIcon;
import org.nanoboot.utils.timecalc.swing.progress.ProgressSwing;
import org.nanoboot.utils.timecalc.utils.common.ProgressSmiley;
import org.nanoboot.utils.timecalc.utils.property.BooleanProperty;
import org.nanoboot.utils.timecalc.utils.property.Property;
import org.nanoboot.utils.timecalc.utils.property.StringProperty;
import javax.swing.ImageIcon;
import javax.swing.JLabel;
@ -34,11 +34,11 @@ import java.util.Locale;
import java.util.function.Consumer;
import java.util.function.Supplier;
import javax.swing.JMenuItem;
import com.robertvokac.utils.timecalc.app.TimeCalcApp;
import static com.robertvokac.utils.timecalc.swing.progress.battery.Battery.HIGH_STRONGLY_COLORED;
import static com.robertvokac.utils.timecalc.swing.progress.battery.Battery.HIGH_WEAKLY_COLORED;
import static com.robertvokac.utils.timecalc.swing.progress.battery.Battery.LIGHT_RED;
import static com.robertvokac.utils.timecalc.swing.progress.battery.Battery.ULTRA_LIGHT_RED;
import org.nanoboot.utils.timecalc.app.TimeCalcApp;
import static org.nanoboot.utils.timecalc.swing.progress.battery.Battery.HIGH_STRONGLY_COLORED;
import static org.nanoboot.utils.timecalc.swing.progress.battery.Battery.HIGH_WEAKLY_COLORED;
import static org.nanoboot.utils.timecalc.swing.progress.battery.Battery.LIGHT_RED;
import static org.nanoboot.utils.timecalc.swing.progress.battery.Battery.ULTRA_LIGHT_RED;
/**
* @author Robert Vokac
@ -65,7 +65,6 @@ public class Widget extends JPanel implements
private static final Color VERY_LIGHT_GRAY = new Color(220, 220, 220);
private static final Font FONT = new Font("sans", Font.PLAIN, 12);
public static final Color WIDGET_BACKGROUND_COLOR = ((Supplier<Color>) () ->{int i = 232;return new Color(i,i,i);}).get();
public final BooleanProperty visibilitySupportedColoredProperty
= new BooleanProperty("visibilitySupportedColoredProperty", true);
public final BooleanProperty visibleProperty

View File

@ -1,10 +1,10 @@
package com.robertvokac.utils.timecalc.swing.common;
package org.nanoboot.utils.timecalc.swing.common;
import com.robertvokac.utils.timecalc.app.TimeCalcException;
import com.robertvokac.utils.timecalc.entity.WidgetType;
import com.robertvokac.utils.timecalc.swing.progress.AnalogClock;
import com.robertvokac.utils.timecalc.swing.progress.battery.Battery;
import com.robertvokac.utils.timecalc.swing.progress.weather.ProgressWeather;
import org.nanoboot.utils.timecalc.app.TimeCalcException;
import org.nanoboot.utils.timecalc.entity.WidgetType;
import org.nanoboot.utils.timecalc.swing.progress.AnalogClock;
import org.nanoboot.utils.timecalc.swing.progress.battery.Battery;
import org.nanoboot.utils.timecalc.swing.progress.weather.ProgressWeather;
import javax.swing.JMenu;
import javax.swing.JMenuItem;

View File

@ -1,8 +1,8 @@
package com.robertvokac.utils.timecalc.swing.common;
package org.nanoboot.utils.timecalc.swing.common;
import com.robertvokac.utils.timecalc.app.TimeCalcConfiguration;
import com.robertvokac.utils.timecalc.swing.controls.TTabbedPane;
import com.robertvokac.utils.timecalc.persistence.api.ActivityRepositoryApi;
import org.nanoboot.utils.timecalc.app.TimeCalcConfiguration;
import org.nanoboot.utils.timecalc.swing.controls.TTabbedPane;
import org.nanoboot.utils.timecalc.persistence.api.ActivityRepositoryApi;
import java.util.HashMap;
import java.util.Map;

View File

@ -1,4 +1,4 @@
package com.robertvokac.utils.timecalc.swing.controls;
package org.nanoboot.utils.timecalc.swing.controls;
import lombok.Getter;
@ -6,7 +6,7 @@ import java.awt.Component;
import java.util.HashSet;
import java.util.Set;
import java.util.function.Predicate;
import com.robertvokac.utils.timecalc.swing.windows.MainWindow;
import org.nanoboot.utils.timecalc.swing.windows.MainWindow;
/**
* @author Robert Vokac

View File

@ -1,4 +1,4 @@
package com.robertvokac.utils.timecalc.swing.controls;
package org.nanoboot.utils.timecalc.swing.controls;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;

View File

@ -1,4 +1,4 @@
package com.robertvokac.utils.timecalc.swing.controls;
package org.nanoboot.utils.timecalc.swing.controls;
import java.awt.Insets;

View File

@ -1,18 +1,19 @@
package com.robertvokac.utils.timecalc.swing.controls;
package org.nanoboot.utils.timecalc.swing.controls;
import com.robertvokac.utils.timecalc.app.GetProperty;
import com.robertvokac.utils.timecalc.entity.Visibility;
import com.robertvokac.utils.timecalc.utils.property.BooleanProperty;
import com.robertvokac.utils.timecalc.utils.property.Property;
import com.robertvokac.utils.timecalc.utils.property.StringProperty;
import org.nanoboot.utils.timecalc.app.GetProperty;
import org.nanoboot.utils.timecalc.entity.Visibility;
import org.nanoboot.utils.timecalc.utils.property.BooleanProperty;
import org.nanoboot.utils.timecalc.utils.property.Property;
import org.nanoboot.utils.timecalc.utils.property.StringProperty;
import javax.swing.JButton;
import javax.swing.JComponent;
import javax.swing.Timer;
import java.awt.Color;
import com.robertvokac.utils.timecalc.swing.windows.MainWindow;
import com.robertvokac.utils.timecalc.swing.common.SwingUtils;
import static com.robertvokac.utils.timecalc.swing.common.SwingUtils.INSETS;
import org.nanoboot.utils.timecalc.swing.windows.MainWindow;
import org.nanoboot.utils.timecalc.swing.common.SwingUtils;
import static org.nanoboot.utils.timecalc.swing.common.SwingUtils.INSETS;
/**
* @author Robert Vokac

View File

@ -1,17 +1,17 @@
package com.robertvokac.utils.timecalc.swing.controls;
package org.nanoboot.utils.timecalc.swing.controls;
import com.robertvokac.utils.timecalc.app.GetProperty;
import com.robertvokac.utils.timecalc.entity.Visibility;
import com.robertvokac.utils.timecalc.utils.property.BooleanProperty;
import com.robertvokac.utils.timecalc.utils.property.Property;
import com.robertvokac.utils.timecalc.utils.property.StringProperty;
import org.nanoboot.utils.timecalc.app.GetProperty;
import org.nanoboot.utils.timecalc.entity.Visibility;
import org.nanoboot.utils.timecalc.utils.property.BooleanProperty;
import org.nanoboot.utils.timecalc.utils.property.Property;
import org.nanoboot.utils.timecalc.utils.property.StringProperty;
import javax.swing.JCheckBox;
import javax.swing.JComponent;
import javax.swing.Timer;
import java.awt.Color;
import com.robertvokac.utils.timecalc.swing.windows.MainWindow;
import com.robertvokac.utils.timecalc.swing.common.SwingUtils;
import org.nanoboot.utils.timecalc.swing.windows.MainWindow;
import org.nanoboot.utils.timecalc.swing.common.SwingUtils;
/**
* @author Robert Vokac

View File

@ -1,18 +1,18 @@
package com.robertvokac.utils.timecalc.swing.controls;
package org.nanoboot.utils.timecalc.swing.controls;
import com.robertvokac.utils.timecalc.app.GetProperty;
import com.robertvokac.utils.timecalc.entity.Visibility;
import com.robertvokac.utils.timecalc.utils.property.BooleanProperty;
import com.robertvokac.utils.timecalc.utils.property.Property;
import com.robertvokac.utils.timecalc.utils.property.StringProperty;
import org.nanoboot.utils.timecalc.app.GetProperty;
import org.nanoboot.utils.timecalc.entity.Visibility;
import org.nanoboot.utils.timecalc.utils.property.BooleanProperty;
import org.nanoboot.utils.timecalc.utils.property.Property;
import org.nanoboot.utils.timecalc.utils.property.StringProperty;
import javax.swing.JComponent;
import javax.swing.JLabel;
import javax.swing.Timer;
import java.awt.Color;
import com.robertvokac.utils.timecalc.app.TimeCalcApp;
import com.robertvokac.utils.timecalc.swing.windows.MainWindow;
import com.robertvokac.utils.timecalc.swing.common.SwingUtils;
import org.nanoboot.utils.timecalc.app.TimeCalcApp;
import org.nanoboot.utils.timecalc.swing.windows.MainWindow;
import org.nanoboot.utils.timecalc.swing.common.SwingUtils;
/**
* @author Robert Vokac

View File

@ -1,4 +1,4 @@
package com.robertvokac.utils.timecalc.swing.controls;
package org.nanoboot.utils.timecalc.swing.controls;
import javax.swing.JMenuItem;

View File

@ -2,7 +2,7 @@
* Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
* Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template
*/
package com.robertvokac.utils.timecalc.swing.controls;
package org.nanoboot.utils.timecalc.swing.controls;
import javax.swing.JTabbedPane;

View File

@ -1,16 +1,16 @@
package com.robertvokac.utils.timecalc.swing.controls;
package org.nanoboot.utils.timecalc.swing.controls;
import lombok.Getter;
import lombok.Setter;
import com.robertvokac.utils.timecalc.app.GetProperty;
import com.robertvokac.utils.timecalc.entity.Visibility;
import com.robertvokac.utils.timecalc.swing.common.SwingUtils;
import com.robertvokac.utils.timecalc.swing.windows.MainWindow;
import com.robertvokac.utils.timecalc.utils.common.TTime;
import com.robertvokac.utils.timecalc.utils.property.BooleanProperty;
import com.robertvokac.utils.timecalc.utils.property.ChangeListener;
import com.robertvokac.utils.timecalc.utils.property.Property;
import com.robertvokac.utils.timecalc.utils.property.StringProperty;
import org.nanoboot.utils.timecalc.app.GetProperty;
import org.nanoboot.utils.timecalc.entity.Visibility;
import org.nanoboot.utils.timecalc.swing.common.SwingUtils;
import org.nanoboot.utils.timecalc.swing.windows.MainWindow;
import org.nanoboot.utils.timecalc.utils.common.TTime;
import org.nanoboot.utils.timecalc.utils.property.BooleanProperty;
import org.nanoboot.utils.timecalc.utils.property.ChangeListener;
import org.nanoboot.utils.timecalc.utils.property.Property;
import org.nanoboot.utils.timecalc.utils.property.StringProperty;
import javax.swing.JComponent;
import javax.swing.JOptionPane;
@ -20,8 +20,9 @@ import javax.swing.event.DocumentEvent;
import javax.swing.event.DocumentListener;
import java.awt.Color;
import java.awt.Font;
import com.robertvokac.utils.timecalc.app.TimeCalcApp;
import static com.robertvokac.utils.timecalc.swing.common.SwingUtils.INSETS;
import org.nanoboot.utils.timecalc.app.TimeCalcApp;
import static org.nanoboot.utils.timecalc.swing.common.SwingUtils.INSETS;
/**
* @author Robert Vokac

View File

@ -1,6 +1,6 @@
package com.robertvokac.utils.timecalc.swing.controls;
package org.nanoboot.utils.timecalc.swing.controls;
import com.robertvokac.utils.timecalc.utils.property.IntegerProperty;
import org.nanoboot.utils.timecalc.utils.property.IntegerProperty;
import javax.swing.ImageIcon;
import javax.swing.JFrame;

View File

@ -1,17 +1,17 @@
package com.robertvokac.utils.timecalc.swing.progress;
package org.nanoboot.utils.timecalc.swing.progress;
import com.robertvokac.utils.timecalc.app.TimeCalcProperty;
import com.robertvokac.utils.timecalc.entity.Visibility;
import com.robertvokac.utils.timecalc.entity.WidgetType;
import com.robertvokac.utils.timecalc.swing.common.SwingUtils;
import com.robertvokac.utils.timecalc.swing.common.Widget;
import com.robertvokac.utils.timecalc.swing.controls.TMenuItem;
import com.robertvokac.utils.timecalc.swing.progress.battery.Battery;
import com.robertvokac.utils.timecalc.utils.common.DateFormats;
import com.robertvokac.utils.timecalc.utils.common.TTime;
import com.robertvokac.utils.timecalc.utils.property.BooleanProperty;
import com.robertvokac.utils.timecalc.utils.property.IntegerProperty;
import com.robertvokac.utils.timecalc.utils.property.StringProperty;
import org.nanoboot.utils.timecalc.app.TimeCalcProperty;
import org.nanoboot.utils.timecalc.entity.Visibility;
import org.nanoboot.utils.timecalc.entity.WidgetType;
import org.nanoboot.utils.timecalc.swing.common.SwingUtils;
import org.nanoboot.utils.timecalc.swing.common.Widget;
import org.nanoboot.utils.timecalc.swing.controls.TMenuItem;
import org.nanoboot.utils.timecalc.swing.progress.battery.Battery;
import org.nanoboot.utils.timecalc.utils.common.DateFormats;
import org.nanoboot.utils.timecalc.utils.common.TTime;
import org.nanoboot.utils.timecalc.utils.property.BooleanProperty;
import org.nanoboot.utils.timecalc.utils.property.IntegerProperty;
import org.nanoboot.utils.timecalc.utils.property.StringProperty;
import javax.swing.JFrame;
import javax.swing.JMenu;
@ -29,7 +29,7 @@ import java.util.List;
import java.util.Locale;
import java.util.function.Consumer;
import javax.swing.JMenuItem;
import com.robertvokac.utils.timecalc.entity.Progress;
import org.nanoboot.utils.timecalc.entity.Progress;
//https://kodejava.org/how-do-i-write-a-simple-analog-clock-using-java-2d/
public class AnalogClock extends Widget {

View File

@ -1,7 +1,7 @@
package com.robertvokac.utils.timecalc.swing.progress;
package org.nanoboot.utils.timecalc.swing.progress;
import lombok.Getter;
import com.robertvokac.utils.timecalc.app.TimeCalcException;
import org.nanoboot.utils.timecalc.app.TimeCalcException;
import java.util.Arrays;
import java.util.Optional;

View File

@ -1,7 +1,7 @@
package com.robertvokac.utils.timecalc.swing.progress;
package org.nanoboot.utils.timecalc.swing.progress;
import com.robertvokac.utils.timecalc.entity.Visibility;
import com.robertvokac.utils.timecalc.swing.common.Widget;
import org.nanoboot.utils.timecalc.entity.Visibility;
import org.nanoboot.utils.timecalc.swing.common.Widget;
import java.awt.Color;
import java.awt.Dimension;

View File

@ -1,10 +1,10 @@
package com.robertvokac.utils.timecalc.swing.progress;
package org.nanoboot.utils.timecalc.swing.progress;
import com.robertvokac.utils.timecalc.entity.Visibility;
import com.robertvokac.utils.timecalc.swing.common.Widget;
import com.robertvokac.utils.timecalc.swing.progress.battery.Battery;
import com.robertvokac.utils.timecalc.utils.common.NumberFormats;
import com.robertvokac.utils.timecalc.utils.property.IntegerProperty;
import org.nanoboot.utils.timecalc.entity.Visibility;
import org.nanoboot.utils.timecalc.swing.common.Widget;
import org.nanoboot.utils.timecalc.swing.progress.battery.Battery;
import org.nanoboot.utils.timecalc.utils.common.NumberFormats;
import org.nanoboot.utils.timecalc.utils.property.IntegerProperty;
import java.awt.Color;
import java.awt.Dimension;

View File

@ -1,10 +1,10 @@
package com.robertvokac.utils.timecalc.swing.progress;
package org.nanoboot.utils.timecalc.swing.progress;
import com.robertvokac.utils.timecalc.entity.Visibility;
import com.robertvokac.utils.timecalc.swing.common.Widget;
import com.robertvokac.utils.timecalc.swing.progress.battery.Battery;
import com.robertvokac.utils.timecalc.utils.common.NumberFormats;
import com.robertvokac.utils.timecalc.utils.property.BooleanProperty;
import org.nanoboot.utils.timecalc.entity.Visibility;
import org.nanoboot.utils.timecalc.swing.common.Widget;
import org.nanoboot.utils.timecalc.swing.progress.battery.Battery;
import org.nanoboot.utils.timecalc.utils.common.NumberFormats;
import org.nanoboot.utils.timecalc.utils.property.BooleanProperty;
import java.awt.BasicStroke;
import java.awt.Color;

View File

@ -1,9 +1,9 @@
package com.robertvokac.utils.timecalc.swing.progress;
package org.nanoboot.utils.timecalc.swing.progress;
import com.robertvokac.utils.timecalc.entity.Visibility;
import com.robertvokac.utils.timecalc.swing.common.Widget;
import com.robertvokac.utils.timecalc.swing.progress.battery.Battery;
import com.robertvokac.utils.timecalc.utils.common.NumberFormats;
import org.nanoboot.utils.timecalc.entity.Visibility;
import org.nanoboot.utils.timecalc.swing.common.Widget;
import org.nanoboot.utils.timecalc.swing.progress.battery.Battery;
import org.nanoboot.utils.timecalc.utils.common.NumberFormats;
import java.awt.Color;
import java.awt.Dimension;

View File

@ -1,18 +1,18 @@
package com.robertvokac.utils.timecalc.swing.progress;
package org.nanoboot.utils.timecalc.swing.progress;
import com.robertvokac.utils.timecalc.app.GetProperty;
import com.robertvokac.utils.timecalc.app.TimeCalcProperty;
import com.robertvokac.utils.timecalc.entity.Visibility;
import com.robertvokac.utils.timecalc.entity.WidgetType;
import com.robertvokac.utils.timecalc.swing.common.Brush;
import com.robertvokac.utils.timecalc.swing.common.SwingUtils;
import com.robertvokac.utils.timecalc.swing.common.Widget;
import com.robertvokac.utils.timecalc.swing.progress.battery.Battery;
import com.robertvokac.utils.timecalc.swing.windows.MainWindow;
import com.robertvokac.utils.timecalc.utils.common.NumberFormats;
import com.robertvokac.utils.timecalc.utils.common.ProgressSmiley;
import com.robertvokac.utils.timecalc.utils.property.BooleanProperty;
import com.robertvokac.utils.timecalc.utils.property.Property;
import org.nanoboot.utils.timecalc.app.GetProperty;
import org.nanoboot.utils.timecalc.app.TimeCalcProperty;
import org.nanoboot.utils.timecalc.entity.Visibility;
import org.nanoboot.utils.timecalc.entity.WidgetType;
import org.nanoboot.utils.timecalc.swing.common.Brush;
import org.nanoboot.utils.timecalc.swing.common.SwingUtils;
import org.nanoboot.utils.timecalc.swing.common.Widget;
import org.nanoboot.utils.timecalc.swing.progress.battery.Battery;
import org.nanoboot.utils.timecalc.swing.windows.MainWindow;
import org.nanoboot.utils.timecalc.utils.common.NumberFormats;
import org.nanoboot.utils.timecalc.utils.common.ProgressSmiley;
import org.nanoboot.utils.timecalc.utils.property.BooleanProperty;
import org.nanoboot.utils.timecalc.utils.property.Property;
import javax.imageio.ImageIO;
import javax.swing.JLabel;

View File

@ -1,17 +1,17 @@
package com.robertvokac.utils.timecalc.swing.progress;
package org.nanoboot.utils.timecalc.swing.progress;
import com.robertvokac.utils.timecalc.app.GetProperty;
import com.robertvokac.utils.timecalc.entity.Visibility;
import com.robertvokac.utils.timecalc.swing.common.SwingUtils;
import com.robertvokac.utils.timecalc.swing.common.Toaster;
import com.robertvokac.utils.timecalc.swing.common.Widget;
import com.robertvokac.utils.timecalc.swing.windows.MainWindow;
import com.robertvokac.utils.timecalc.utils.common.Constants;
import com.robertvokac.utils.timecalc.utils.common.DateFormats;
import com.robertvokac.utils.timecalc.utils.common.NumberFormats;
import com.robertvokac.utils.timecalc.utils.common.Utils;
import com.robertvokac.utils.timecalc.utils.property.Property;
import com.robertvokac.utils.timecalc.utils.property.StringProperty;
import org.nanoboot.utils.timecalc.app.GetProperty;
import org.nanoboot.utils.timecalc.entity.Visibility;
import org.nanoboot.utils.timecalc.swing.common.SwingUtils;
import org.nanoboot.utils.timecalc.swing.common.Toaster;
import org.nanoboot.utils.timecalc.swing.common.Widget;
import org.nanoboot.utils.timecalc.swing.windows.MainWindow;
import org.nanoboot.utils.timecalc.utils.common.Constants;
import org.nanoboot.utils.timecalc.utils.common.DateFormats;
import org.nanoboot.utils.timecalc.utils.common.NumberFormats;
import org.nanoboot.utils.timecalc.utils.common.Utils;
import org.nanoboot.utils.timecalc.utils.property.Property;
import org.nanoboot.utils.timecalc.utils.property.StringProperty;
import javax.imageio.ImageIO;
import javax.swing.ImageIcon;

View File

@ -1,16 +1,16 @@
package com.robertvokac.utils.timecalc.swing.progress;
package org.nanoboot.utils.timecalc.swing.progress;
import com.robertvokac.utils.timecalc.app.GetProperty;
import com.robertvokac.utils.timecalc.entity.Progress;
import com.robertvokac.utils.timecalc.entity.Visibility;
import com.robertvokac.utils.timecalc.entity.WidgetType;
import com.robertvokac.utils.timecalc.swing.common.SwingUtils;
import com.robertvokac.utils.timecalc.swing.common.Widget;
import com.robertvokac.utils.timecalc.swing.windows.MainWindow;
import com.robertvokac.utils.timecalc.utils.common.NumberFormats;
import com.robertvokac.utils.timecalc.utils.property.IntegerProperty;
import com.robertvokac.utils.timecalc.utils.property.Property;
import com.robertvokac.utils.timecalc.utils.property.StringProperty;
import org.nanoboot.utils.timecalc.app.GetProperty;
import org.nanoboot.utils.timecalc.entity.Progress;
import org.nanoboot.utils.timecalc.entity.Visibility;
import org.nanoboot.utils.timecalc.entity.WidgetType;
import org.nanoboot.utils.timecalc.swing.common.SwingUtils;
import org.nanoboot.utils.timecalc.swing.common.Widget;
import org.nanoboot.utils.timecalc.swing.windows.MainWindow;
import org.nanoboot.utils.timecalc.utils.common.NumberFormats;
import org.nanoboot.utils.timecalc.utils.property.IntegerProperty;
import org.nanoboot.utils.timecalc.utils.property.Property;
import org.nanoboot.utils.timecalc.utils.property.StringProperty;
import javax.swing.Timer;
import java.awt.Color;

View File

@ -0,0 +1,180 @@
package org.nanoboot.utils.timecalc.swing.progress;
import org.nanoboot.utils.timecalc.app.TimeCalcProperty;
import org.nanoboot.utils.timecalc.entity.Progress;
import org.nanoboot.utils.timecalc.entity.Visibility;
import org.nanoboot.utils.timecalc.entity.WidgetType;
import org.nanoboot.utils.timecalc.swing.common.SwingUtils;
import org.nanoboot.utils.timecalc.swing.common.Widget;
import org.nanoboot.utils.timecalc.swing.controls.TMenuItem;
import org.nanoboot.utils.timecalc.swing.progress.battery.Battery;
import org.nanoboot.utils.timecalc.utils.common.DateFormats;
import org.nanoboot.utils.timecalc.utils.common.NumberFormats;
import org.nanoboot.utils.timecalc.utils.common.TTime;
import org.nanoboot.utils.timecalc.utils.property.BooleanProperty;
import org.nanoboot.utils.timecalc.utils.property.IntegerProperty;
import org.nanoboot.utils.timecalc.utils.property.StringProperty;
import javax.swing.JFrame;
import javax.swing.JMenu;
import javax.swing.JMenuItem;
import java.awt.BasicStroke;
import java.awt.Color;
import java.awt.Dimension;
import java.awt.Font;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.RenderingHints;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.Date;
import java.util.List;
import java.util.Locale;
import java.util.function.Consumer;
//https://kodejava.org/how-do-i-write-a-simple-analog-clock-using-java-2d/
public class ProgressRotation extends Widget {
public static final Color COLOR_FOR_MILLISECOND_HAND_STRONGLY_COLORED
= new Color(226,
126, 19);
public final BooleanProperty borderVisibleProperty
= new BooleanProperty(TimeCalcProperty.CLOCK_BORDER_VISIBLE
.getKey());
public final BooleanProperty borderOnlyHoursProperty
= new BooleanProperty(TimeCalcProperty.CLOCK_BORDER_ONLY_HOURS
.getKey());
public final BooleanProperty circleVisibleProperty
= new BooleanProperty(TimeCalcProperty.CLOCK_CIRCLE_VISIBLE
.getKey());
public final BooleanProperty circleStrongBorderProperty
= new BooleanProperty(TimeCalcProperty.CLOCK_CIRCLE_STRONG_BORDER
.getKey());
public final BooleanProperty centreCircleVisibleProperty
= new BooleanProperty(TimeCalcProperty.CLOCK_CENTRE_CIRCLE_VISIBLE
.getKey());
public final StringProperty centreCircleBorderColorProperty
= new StringProperty(TimeCalcProperty.CLOCK_CIRCLE_BORDER_COLOR
.getKey());
public final BooleanProperty centreCircleColoredProperty
= new BooleanProperty(TimeCalcProperty.CLOCK_CENTRE_CIRCLE_COLORED
.getKey());
public BooleanProperty circleProgressVisibleProperty
= new BooleanProperty(TimeCalcProperty.BATTERY_CIRCLE_PROGRESS_VISIBLE
.getKey(), true);
private Color customCircleColor = null;
private List<JMenuItem> menuItems = null;
public ProgressRotation() {
typeProperty.setValue(WidgetType.DAY.name().toLowerCase(Locale.ROOT));
setPreferredSize(new Dimension(100, 100));
centreCircleBorderColorProperty.addListener(property
-> customCircleColor = SwingUtils.getColorFromString(
centreCircleBorderColorProperty.getValue()));
}
public static void main(String[] args) {
JFrame window = new JFrame("Analog Clock");
window.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
ProgressRotation rotation
= new ProgressRotation();
window.add(rotation);
window.pack();
rotation.visibilityProperty.setValue(Visibility.GRAY.name());
window.setVisible(true);
}
private double angle = 0d;
@Override
public void paintWidget(Graphics g) {
Visibility visibility
= Visibility.valueOf(visibilityProperty.getValue());
Graphics2D brush = (Graphics2D) g;
brush.setRenderingHint(RenderingHints.KEY_ANTIALIASING,
RenderingHints.VALUE_ANTIALIAS_ON);
this.side = Math.min(getWidth(), getHeight());
int centerX = getWidth() / 2;
int centerY = getHeight() / 2;
if (customCircleColor == null) {
customCircleColor = SwingUtils.getColorFromString(
centreCircleBorderColorProperty.getValue());
}
//
angle = angle + 0.001d * donePercent() * 50d;
if(angle > 1.0d) {
angle = angle - 1.0d;
}
drawHand(brush, side / 2 - 10, angle, 1.0f,
COLOR_FOR_MILLISECOND_HAND_STRONGLY_COLORED, visibility);
//brush.drawString(NumberFormats.FORMATTER_FIVE_DECIMAL_PLACES.format(angle), 15, 15);
if (centreCircleVisibleProperty.isEnabled()) {
drawCentreCircle(brush, centerX, centerY);
}
if (progress == null) {
progress = new Progress();
}
if (circleProgressVisibleProperty.isEnabled()) {
paintCircleProgress(brush, visibility, getWidth(), getHeight());
}
}
private void drawCentreCircle(Graphics2D brush, int centerX, int centerY) {
Color currentColor = brush.getColor();
Visibility visibility
= Visibility.valueOf(visibilityProperty.getValue());
brush.setColor(visibility.isStronglyColored() || mouseOver
? (centreCircleColoredProperty.isEnabled() ? Color.RED : Color.BLACK)
: FOREGROUND_COLOR);
brush.fillOval(centerX - 3, centerY - 3, 8, 8);
brush.setColor(currentColor);
}
private void drawHand(Graphics2D brush, int length, double value,
float stroke, Color color, Visibility visibility) {
length = length - 4;
double angle = Math.PI * 2 * (value - 0.25);
int endX = (int) (getWidth() / 2 + length * Math.cos(angle));
int endY = (int) (getHeight() / 2 + length * Math.sin(angle));
brush.setColor((visibility.isStronglyColored() || mouseOver)
? Color.BLACK : FOREGROUND_COLOR);
brush.setStroke(new BasicStroke(stroke));
brush.drawLine(getWidth() / 2, getHeight() / 2, endX, endY);
}
public int getTimerDelay() {
return 1;
}
@Override
public List<JMenuItem> createAdditionalMenus() {
if (menuItems == null) {
menuItems = new ArrayList<>();
}
return this.menuItems;
}
protected Consumer<Object> createRefreshConsumer() {
return (o) -> {
};
}
}

View File

@ -1,7 +1,7 @@
package com.robertvokac.utils.timecalc.swing.progress;
package org.nanoboot.utils.timecalc.swing.progress;
import lombok.Getter;
import com.robertvokac.utils.timecalc.utils.common.ProgressSmiley;
import org.nanoboot.utils.timecalc.utils.common.ProgressSmiley;
import javax.swing.ImageIcon;
import java.awt.Image;

View File

@ -1,8 +1,8 @@
package com.robertvokac.utils.timecalc.swing.progress;
package org.nanoboot.utils.timecalc.swing.progress;
import com.robertvokac.utils.timecalc.entity.Visibility;
import com.robertvokac.utils.timecalc.swing.common.Widget;
import com.robertvokac.utils.timecalc.utils.common.NumberFormats;
import org.nanoboot.utils.timecalc.entity.Visibility;
import org.nanoboot.utils.timecalc.swing.common.Widget;
import org.nanoboot.utils.timecalc.utils.common.NumberFormats;
import java.awt.Color;
import java.awt.Dimension;

View File

@ -1,10 +1,10 @@
package com.robertvokac.utils.timecalc.swing.progress;
package org.nanoboot.utils.timecalc.swing.progress;
import com.robertvokac.utils.timecalc.app.TimeCalcProperty;
import com.robertvokac.utils.timecalc.entity.Visibility;
import com.robertvokac.utils.timecalc.swing.common.Widget;
import com.robertvokac.utils.timecalc.utils.common.NumberFormats;
import com.robertvokac.utils.timecalc.utils.property.BooleanProperty;
import org.nanoboot.utils.timecalc.app.TimeCalcProperty;
import org.nanoboot.utils.timecalc.entity.Visibility;
import org.nanoboot.utils.timecalc.swing.common.Widget;
import org.nanoboot.utils.timecalc.utils.common.NumberFormats;
import org.nanoboot.utils.timecalc.utils.property.BooleanProperty;
import java.awt.BasicStroke;
import java.awt.Color;

View File

@ -1,9 +1,10 @@
package com.robertvokac.utils.timecalc.swing.progress;
package org.nanoboot.utils.timecalc.swing.progress;
import com.robertvokac.utils.timecalc.entity.Visibility;
import com.robertvokac.utils.timecalc.swing.common.Widget;
import com.robertvokac.utils.timecalc.swing.progress.battery.Battery;
import com.robertvokac.utils.timecalc.utils.property.BooleanProperty;
import org.nanoboot.utils.timecalc.entity.Progress;
import org.nanoboot.utils.timecalc.entity.Visibility;
import org.nanoboot.utils.timecalc.swing.common.Widget;
import org.nanoboot.utils.timecalc.swing.progress.battery.Battery;
import org.nanoboot.utils.timecalc.utils.property.BooleanProperty;
import java.awt.Color;
import java.awt.Dimension;
@ -36,7 +37,7 @@ public class ProgressWater extends Widget {
int tankHeight = (int) (getHeight() * 0.48);
int doneWaterHeight = (int) (((double)tankHeight) * (donePercent()));
int doneWaterHeight = (int) (tankHeight * (donePercent()));
int h = getHeight() - 1;
int w = getWidth() - 1;

View File

@ -1,8 +1,8 @@
package com.robertvokac.utils.timecalc.swing.progress;
package org.nanoboot.utils.timecalc.swing.progress;
import com.robertvokac.utils.timecalc.utils.property.BooleanProperty;
import com.robertvokac.utils.timecalc.utils.property.IntegerProperty;
import com.robertvokac.utils.timecalc.utils.property.ReadOnlyProperty;
import org.nanoboot.utils.timecalc.utils.property.BooleanProperty;
import org.nanoboot.utils.timecalc.utils.property.IntegerProperty;
import org.nanoboot.utils.timecalc.utils.property.ReadOnlyProperty;
import java.util.Calendar;
import java.util.Date;

View File

@ -1,15 +1,15 @@
package com.robertvokac.utils.timecalc.swing.progress;
package org.nanoboot.utils.timecalc.swing.progress;
import com.robertvokac.utils.timecalc.app.GetProperty;
import com.robertvokac.utils.timecalc.entity.Visibility;
import com.robertvokac.utils.timecalc.swing.windows.MainWindow;
import com.robertvokac.utils.timecalc.swing.common.SwingUtils;
import com.robertvokac.utils.timecalc.swing.common.Toaster;
import com.robertvokac.utils.timecalc.swing.common.Widget;
import com.robertvokac.utils.timecalc.utils.common.Constants;
import com.robertvokac.utils.timecalc.utils.common.NumberFormats;
import com.robertvokac.utils.timecalc.utils.common.Utils;
import com.robertvokac.utils.timecalc.utils.property.Property;
import org.nanoboot.utils.timecalc.app.GetProperty;
import org.nanoboot.utils.timecalc.entity.Visibility;
import org.nanoboot.utils.timecalc.swing.windows.MainWindow;
import org.nanoboot.utils.timecalc.swing.common.SwingUtils;
import org.nanoboot.utils.timecalc.swing.common.Toaster;
import org.nanoboot.utils.timecalc.swing.common.Widget;
import org.nanoboot.utils.timecalc.utils.common.Constants;
import org.nanoboot.utils.timecalc.utils.common.NumberFormats;
import org.nanoboot.utils.timecalc.utils.common.Utils;
import org.nanoboot.utils.timecalc.utils.property.Property;
import javax.imageio.ImageIO;
import javax.swing.ImageIcon;

View File

@ -1,12 +1,12 @@
package com.robertvokac.utils.timecalc.swing.progress.battery;
package org.nanoboot.utils.timecalc.swing.progress.battery;
import lombok.Getter;
import com.robertvokac.utils.timecalc.app.TimeCalcProperty;
import com.robertvokac.utils.timecalc.entity.Visibility;
import com.robertvokac.utils.timecalc.swing.common.Widget;
import com.robertvokac.utils.timecalc.utils.common.NumberFormats;
import com.robertvokac.utils.timecalc.utils.common.Utils;
import com.robertvokac.utils.timecalc.utils.property.BooleanProperty;
import org.nanoboot.utils.timecalc.app.TimeCalcProperty;
import org.nanoboot.utils.timecalc.entity.Visibility;
import org.nanoboot.utils.timecalc.swing.common.Widget;
import org.nanoboot.utils.timecalc.utils.common.NumberFormats;
import org.nanoboot.utils.timecalc.utils.common.Utils;
import org.nanoboot.utils.timecalc.utils.property.BooleanProperty;
import java.awt.Color;
import java.awt.Dimension;
@ -184,7 +184,7 @@ public class Battery extends Widget {
@Override
public void paintWidget(Graphics g) {
if (totalHeight == 0) {
this.totalHeight = (int) (this.getHeight() / 10d * 8d);
this.totalHeight = (int) (this.getHeight() / 10d * 7d);
this.totalWidth = this.getWidth();
}
double donePercent = donePercent();

View File

@ -1,4 +1,4 @@
package com.robertvokac.utils.timecalc.swing.progress.battery;
package org.nanoboot.utils.timecalc.swing.progress.battery;
/**
* @author Robert Vokac

View File

@ -1,4 +1,4 @@
package com.robertvokac.utils.timecalc.swing.progress.battery;
package org.nanoboot.utils.timecalc.swing.progress.battery;
/**
* @author Robert Vokac

View File

@ -1,4 +1,4 @@
package com.robertvokac.utils.timecalc.swing.progress.battery;
package org.nanoboot.utils.timecalc.swing.progress.battery;
/**
* @author Robert Vokac

View File

@ -1,4 +1,4 @@
package com.robertvokac.utils.timecalc.swing.progress.battery;
package org.nanoboot.utils.timecalc.swing.progress.battery;
/**
* @author Robert Vokac

View File

@ -1,4 +1,4 @@
package com.robertvokac.utils.timecalc.swing.progress.battery;
package org.nanoboot.utils.timecalc.swing.progress.battery;
/**
* @author Robert Vokac

View File

@ -1,4 +1,4 @@
package com.robertvokac.utils.timecalc.swing.progress.battery;
package org.nanoboot.utils.timecalc.swing.progress.battery;
/**
* @author Robert Vokac

View File

@ -2,10 +2,10 @@
* Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
* Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template
*/
package com.robertvokac.utils.timecalc.swing.progress.weather;
package org.nanoboot.utils.timecalc.swing.progress.weather;
import lombok.Getter;
import com.robertvokac.utils.timecalc.utils.common.NumberFormats;
import org.nanoboot.utils.timecalc.utils.common.NumberFormats;
/**
*

View File

@ -1,16 +1,16 @@
package com.robertvokac.utils.timecalc.swing.progress.weather;
package org.nanoboot.utils.timecalc.swing.progress.weather;
import com.robertvokac.utils.timecalc.app.GetProperty;
import com.robertvokac.utils.timecalc.entity.Visibility;
import com.robertvokac.utils.timecalc.entity.WidgetType;
import com.robertvokac.utils.timecalc.swing.common.SwingUtils;
import com.robertvokac.utils.timecalc.swing.common.Widget;
import com.robertvokac.utils.timecalc.swing.windows.MainWindow;
import com.robertvokac.utils.timecalc.utils.common.DateFormats;
import com.robertvokac.utils.timecalc.utils.common.FileConstants;
import com.robertvokac.utils.timecalc.utils.common.TTime;
import com.robertvokac.utils.timecalc.utils.common.Utils;
import com.robertvokac.utils.timecalc.utils.property.Property;
import org.nanoboot.utils.timecalc.app.GetProperty;
import org.nanoboot.utils.timecalc.entity.Visibility;
import org.nanoboot.utils.timecalc.entity.WidgetType;
import org.nanoboot.utils.timecalc.swing.common.SwingUtils;
import org.nanoboot.utils.timecalc.swing.common.Widget;
import org.nanoboot.utils.timecalc.swing.windows.MainWindow;
import org.nanoboot.utils.timecalc.utils.common.DateFormats;
import org.nanoboot.utils.timecalc.utils.common.FileConstants;
import org.nanoboot.utils.timecalc.utils.common.TTime;
import org.nanoboot.utils.timecalc.utils.common.Utils;
import org.nanoboot.utils.timecalc.utils.property.Property;
import javax.swing.Timer;
import java.awt.Color;
@ -27,8 +27,8 @@ import java.util.Locale;
import java.util.Map;
import java.util.stream.Collectors;
import javax.swing.JMenuItem;
import com.robertvokac.utils.timecalc.swing.progress.Time;
import com.robertvokac.utils.timecalc.utils.common.NumberFormats;
import org.nanoboot.utils.timecalc.swing.progress.Time;
import org.nanoboot.utils.timecalc.utils.common.NumberFormats;
/**
* @author Robert Vokac

View File

@ -1,4 +1,4 @@
package com.robertvokac.utils.timecalc.swing.progress.weather;
package org.nanoboot.utils.timecalc.swing.progress.weather;
import java.util.Arrays;

View File

@ -1,9 +1,9 @@
package com.robertvokac.utils.timecalc.swing.progress.weather;
package org.nanoboot.utils.timecalc.swing.progress.weather;
import lombok.Getter;
import lombok.Setter;
import com.robertvokac.utils.timecalc.utils.common.FileConstants;
import com.robertvokac.utils.timecalc.utils.common.NumberFormats;
import org.nanoboot.utils.timecalc.utils.common.FileConstants;
import org.nanoboot.utils.timecalc.utils.common.NumberFormats;
import java.io.FileInputStream;
import java.io.IOException;
@ -17,7 +17,7 @@ import java.util.List;
import java.util.Map;
import java.util.Properties;
import lombok.ToString;
import com.robertvokac.utils.timecalc.utils.common.DateFormats;
import org.nanoboot.utils.timecalc.utils.common.DateFormats;
/**
* @author pc00289

View File

@ -1,9 +1,9 @@
package com.robertvokac.utils.timecalc.swing.windows;
package org.nanoboot.utils.timecalc.swing.windows;
import com.robertvokac.utils.timecalc.app.Main;
import com.robertvokac.utils.timecalc.app.TimeCalcConfiguration;
import com.robertvokac.utils.timecalc.swing.controls.TWindow;
import com.robertvokac.utils.timecalc.swing.controls.TTabbedPane;
import org.nanoboot.utils.timecalc.app.Main;
import org.nanoboot.utils.timecalc.app.TimeCalcConfiguration;
import org.nanoboot.utils.timecalc.swing.controls.TWindow;
import org.nanoboot.utils.timecalc.swing.controls.TTabbedPane;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@ -13,13 +13,14 @@ import javax.swing.JTabbedPane;
import javax.swing.event.ChangeEvent;
import javax.swing.event.ChangeListener;
import com.robertvokac.utils.timecalc.app.TimeCalcException;
import com.robertvokac.utils.timecalc.persistence.api.ActivityRepositoryApi;
import com.robertvokac.utils.timecalc.swing.common.MonthPanel;
import com.robertvokac.utils.timecalc.swing.common.SwingUtils;
import com.robertvokac.utils.timecalc.swing.common.YearPanel;
import com.robertvokac.utils.timecalc.swing.progress.Time;
import static com.robertvokac.utils.timecalc.app.Main.ONLY_ACTIVITIES_WINDOW_IS_ALLOWED;
import org.nanoboot.utils.timecalc.app.TimeCalcException;
import org.nanoboot.utils.timecalc.persistence.api.ActivityRepositoryApi;
import org.nanoboot.utils.timecalc.swing.common.MonthPanel;
import org.nanoboot.utils.timecalc.swing.common.SwingUtils;
import org.nanoboot.utils.timecalc.swing.common.YearPanel;
import org.nanoboot.utils.timecalc.swing.progress.Time;
import static org.nanoboot.utils.timecalc.app.Main.ONLY_ACTIVITIES_WINDOW_IS_ALLOWED;
/**
* @author Robert Vokac

View File

@ -1,17 +1,17 @@
package com.robertvokac.utils.timecalc.swing.windows;
package org.nanoboot.utils.timecalc.swing.windows;
import com.robertvokac.utils.timecalc.app.TimeCalcConfiguration;
import com.robertvokac.utils.timecalc.app.TimeCalcException;
import com.robertvokac.utils.timecalc.app.TimeCalcProperty;
import com.robertvokac.utils.timecalc.entity.Visibility;
import com.robertvokac.utils.timecalc.entity.WidgetType;
import com.robertvokac.utils.timecalc.swing.common.SwingUtils;
import com.robertvokac.utils.timecalc.swing.controls.MouseClickedListener;
import com.robertvokac.utils.timecalc.swing.controls.TButton;
import com.robertvokac.utils.timecalc.swing.controls.TTabbedPane;
import com.robertvokac.utils.timecalc.swing.controls.TWindow;
import com.robertvokac.utils.timecalc.utils.property.BooleanProperty;
import com.robertvokac.utils.timecalc.utils.property.StringProperty;
import org.nanoboot.utils.timecalc.app.TimeCalcConfiguration;
import org.nanoboot.utils.timecalc.app.TimeCalcException;
import org.nanoboot.utils.timecalc.app.TimeCalcProperty;
import org.nanoboot.utils.timecalc.entity.Visibility;
import org.nanoboot.utils.timecalc.entity.WidgetType;
import org.nanoboot.utils.timecalc.swing.common.SwingUtils;
import org.nanoboot.utils.timecalc.swing.controls.MouseClickedListener;
import org.nanoboot.utils.timecalc.swing.controls.TButton;
import org.nanoboot.utils.timecalc.swing.controls.TTabbedPane;
import org.nanoboot.utils.timecalc.swing.controls.TWindow;
import org.nanoboot.utils.timecalc.utils.property.BooleanProperty;
import org.nanoboot.utils.timecalc.utils.property.StringProperty;
import javax.swing.Box;
import javax.swing.BoxLayout;
@ -267,6 +267,13 @@ public class ConfigWindow extends TWindow {
private final JCheckBox fuelIconVisibleProperty
= new JCheckBox(TimeCalcProperty.FUEL_ICON_VISIBLE.getKey());
//
private final JCheckBox rotationVisibleProperty
= new JCheckBox(TimeCalcProperty.ROTATION_VISIBLE.getKey());
private final JTextField rotationTypeProperty =
new JTextField(TimeCalcProperty.ROTATION_TYPE.getKey());
private final JCheckBox rotationHiddenProperty
= new JCheckBox(TimeCalcProperty.ROTATION_HIDDEN.getKey());
//
public final JCheckBox clockHiddenProperty
= new JCheckBox(TimeCalcProperty.CLOCK_HIDDEN.getKey());
public final JCheckBox batteryMinuteHiddenProperty
@ -497,7 +504,8 @@ public class ConfigWindow extends TWindow {
walkingHumanVisibleProperty.setSelected(enable);
fuelVisibleProperty.setSelected(enable);
fuelIconVisibleProperty.setSelected(enable);
// typeVisibleProperty.setSelected(false);
rotationVisibleProperty.setSelected(enable);
typeVisibleProperty.setSelected(false);
// clockHiddenProperty.setSelected(!enable);
// batteryMinuteHiddenProperty.setSelected(!enable);
// batteryHourHiddenProperty.setSelected(!enable);
@ -586,6 +594,7 @@ public class ConfigWindow extends TWindow {
waterVisibleProperty, waterHiddenProperty, waterTypeProperty,waterColoredProperty,
dotVisibleProperty,dotHiddenProperty,dotTypeProperty,
fuelVisibleProperty,fuelTypeProperty,fuelHiddenProperty,fuelIconVisibleProperty,
rotationVisibleProperty, rotationTypeProperty, rotationHiddenProperty,
swingVisibleProperty,swingHiddenProperty,swingTypeProperty,swingQuarterIconVisibleProperty,
walkingHumanVisibleProperty,walkingHumanHiddenProperty,walkingHumanTypeProperty,
lifeVisibleProperty,lifeHiddenProperty,lifeTypeProperty,lifeBirthDateProperty,
@ -1009,7 +1018,9 @@ public class ConfigWindow extends TWindow {
key.startsWith("swing.") ||
key.startsWith("walking-human.") ||
key.startsWith("fuel.") ||
key.startsWith("rotation.") ||
key.startsWith("bar.") ||
key.startsWith("color.") ||
key.startsWith("water.")
) {
index = 6;

View File

@ -1,13 +1,13 @@
package com.robertvokac.utils.timecalc.swing.windows;
package org.nanoboot.utils.timecalc.swing.windows;
import com.robertvokac.utils.timecalc.swing.controls.TWindow;
import com.robertvokac.utils.timecalc.utils.common.Utils;
import org.nanoboot.utils.timecalc.swing.controls.TWindow;
import org.nanoboot.utils.timecalc.utils.common.Utils;
import javax.swing.JEditorPane;
import javax.swing.JOptionPane;
import javax.swing.JScrollPane;
import java.io.IOException;
import com.robertvokac.utils.timecalc.swing.common.SwingUtils;
import org.nanoboot.utils.timecalc.swing.common.SwingUtils;
/**
* @author Robert Vokac

View File

@ -1,59 +1,61 @@
package com.robertvokac.utils.timecalc.swing.windows;
package org.nanoboot.utils.timecalc.swing.windows;
import com.robertvokac.utils.timecalc.app.GetProperty;
import com.robertvokac.utils.timecalc.app.TimeCalcApp;
import com.robertvokac.utils.timecalc.app.TimeCalcConfiguration;
import com.robertvokac.utils.timecalc.app.TimeCalcProperties;
import com.robertvokac.utils.timecalc.app.TimeCalcProperty;
import com.robertvokac.utils.timecalc.entity.Progress;
import com.robertvokac.utils.timecalc.entity.Visibility;
import com.robertvokac.utils.timecalc.entity.WidgetType;
import com.robertvokac.utils.timecalc.entity.WorkingDay;
import com.robertvokac.utils.timecalc.persistence.api.ActivityRepositoryApi;
import com.robertvokac.utils.timecalc.persistence.impl.sqlite.ActivityRepositorySQLiteImpl;
import com.robertvokac.utils.timecalc.persistence.impl.sqlite.WorkingDayRepositorySQLiteImpl;
import com.robertvokac.utils.timecalc.swing.common.AboutButton;
import com.robertvokac.utils.timecalc.swing.common.SwingUtils;
import com.robertvokac.utils.timecalc.swing.common.TimeCalcKeyAdapter;
import com.robertvokac.utils.timecalc.swing.common.Toaster;
import com.robertvokac.utils.timecalc.swing.common.WeekStatistics;
import com.robertvokac.utils.timecalc.swing.common.Widget;
import com.robertvokac.utils.timecalc.swing.controls.ComponentRegistry;
import com.robertvokac.utils.timecalc.swing.controls.SmallTButton;
import com.robertvokac.utils.timecalc.swing.controls.TButton;
import com.robertvokac.utils.timecalc.swing.controls.TCheckBox;
import com.robertvokac.utils.timecalc.swing.controls.TLabel;
import com.robertvokac.utils.timecalc.swing.controls.TTextField;
import com.robertvokac.utils.timecalc.swing.controls.TWindow;
import com.robertvokac.utils.timecalc.swing.progress.AnalogClock;
import com.robertvokac.utils.timecalc.swing.progress.ProgressBar;
import com.robertvokac.utils.timecalc.swing.progress.ProgressCircle;
import com.robertvokac.utils.timecalc.swing.progress.ProgressDot;
import com.robertvokac.utils.timecalc.swing.progress.ProgressFuelGauge;
import com.robertvokac.utils.timecalc.swing.progress.ProgressLife;
import com.robertvokac.utils.timecalc.swing.progress.ProgressMoney;
import com.robertvokac.utils.timecalc.swing.progress.ProgressSquare;
import com.robertvokac.utils.timecalc.swing.progress.ProgressSwing;
import com.robertvokac.utils.timecalc.swing.progress.ProgressWater;
import com.robertvokac.utils.timecalc.swing.progress.Time;
import com.robertvokac.utils.timecalc.swing.progress.WalkingHumanProgress;
import com.robertvokac.utils.timecalc.swing.progress.battery.Battery;
import com.robertvokac.utils.timecalc.swing.progress.battery.DayBattery;
import com.robertvokac.utils.timecalc.swing.progress.battery.HourBattery;
import com.robertvokac.utils.timecalc.swing.progress.battery.MinuteBattery;
import com.robertvokac.utils.timecalc.swing.progress.battery.MonthBattery;
import com.robertvokac.utils.timecalc.swing.progress.battery.WeekBattery;
import com.robertvokac.utils.timecalc.swing.progress.battery.YearBattery;
import com.robertvokac.utils.timecalc.swing.progress.weather.ProgressWeather;
import com.robertvokac.utils.timecalc.utils.common.Constants;
import com.robertvokac.utils.timecalc.utils.common.DateFormats;
import com.robertvokac.utils.timecalc.utils.common.FileConstants;
import com.robertvokac.utils.timecalc.utils.common.Jokes;
import com.robertvokac.utils.timecalc.utils.common.TTime;
import com.robertvokac.utils.timecalc.utils.common.Utils;
import com.robertvokac.utils.timecalc.utils.property.ChangeListener;
import com.robertvokac.utils.timecalc.utils.property.IntegerProperty;
import com.robertvokac.utils.timecalc.utils.property.ReadOnlyProperty;
import org.nanoboot.utils.timecalc.app.CommandActionListener;
import org.nanoboot.utils.timecalc.app.GetProperty;
import org.nanoboot.utils.timecalc.app.TimeCalcApp;
import org.nanoboot.utils.timecalc.app.TimeCalcConfiguration;
import org.nanoboot.utils.timecalc.app.TimeCalcProperties;
import org.nanoboot.utils.timecalc.app.TimeCalcProperty;
import org.nanoboot.utils.timecalc.entity.Progress;
import org.nanoboot.utils.timecalc.entity.Visibility;
import org.nanoboot.utils.timecalc.entity.WidgetType;
import org.nanoboot.utils.timecalc.entity.WorkingDay;
import org.nanoboot.utils.timecalc.persistence.api.ActivityRepositoryApi;
import org.nanoboot.utils.timecalc.persistence.impl.sqlite.ActivityRepositorySQLiteImpl;
import org.nanoboot.utils.timecalc.persistence.impl.sqlite.WorkingDayRepositorySQLiteImpl;
import org.nanoboot.utils.timecalc.swing.common.AboutButton;
import org.nanoboot.utils.timecalc.swing.common.SwingUtils;
import org.nanoboot.utils.timecalc.swing.common.TimeCalcKeyAdapter;
import org.nanoboot.utils.timecalc.swing.common.Toaster;
import org.nanoboot.utils.timecalc.swing.common.WeekStatistics;
import org.nanoboot.utils.timecalc.swing.common.Widget;
import org.nanoboot.utils.timecalc.swing.controls.ComponentRegistry;
import org.nanoboot.utils.timecalc.swing.controls.SmallTButton;
import org.nanoboot.utils.timecalc.swing.controls.TButton;
import org.nanoboot.utils.timecalc.swing.controls.TCheckBox;
import org.nanoboot.utils.timecalc.swing.controls.TLabel;
import org.nanoboot.utils.timecalc.swing.controls.TTextField;
import org.nanoboot.utils.timecalc.swing.controls.TWindow;
import org.nanoboot.utils.timecalc.swing.progress.AnalogClock;
import org.nanoboot.utils.timecalc.swing.progress.ProgressBar;
import org.nanoboot.utils.timecalc.swing.progress.ProgressCircle;
import org.nanoboot.utils.timecalc.swing.progress.ProgressDot;
import org.nanoboot.utils.timecalc.swing.progress.ProgressFuelGauge;
import org.nanoboot.utils.timecalc.swing.progress.ProgressLife;
import org.nanoboot.utils.timecalc.swing.progress.ProgressMoney;
import org.nanoboot.utils.timecalc.swing.progress.ProgressRotation;
import org.nanoboot.utils.timecalc.swing.progress.ProgressSquare;
import org.nanoboot.utils.timecalc.swing.progress.ProgressSwing;
import org.nanoboot.utils.timecalc.swing.progress.ProgressWater;
import org.nanoboot.utils.timecalc.swing.progress.Time;
import org.nanoboot.utils.timecalc.swing.progress.WalkingHumanProgress;
import org.nanoboot.utils.timecalc.swing.progress.battery.Battery;
import org.nanoboot.utils.timecalc.swing.progress.battery.DayBattery;
import org.nanoboot.utils.timecalc.swing.progress.battery.HourBattery;
import org.nanoboot.utils.timecalc.swing.progress.battery.MinuteBattery;
import org.nanoboot.utils.timecalc.swing.progress.battery.MonthBattery;
import org.nanoboot.utils.timecalc.swing.progress.battery.WeekBattery;
import org.nanoboot.utils.timecalc.swing.progress.battery.YearBattery;
import org.nanoboot.utils.timecalc.swing.progress.weather.ProgressWeather;
import org.nanoboot.utils.timecalc.utils.common.Constants;
import org.nanoboot.utils.timecalc.utils.common.DateFormats;
import org.nanoboot.utils.timecalc.utils.common.FileConstants;
import org.nanoboot.utils.timecalc.utils.common.Jokes;
import org.nanoboot.utils.timecalc.utils.common.TTime;
import org.nanoboot.utils.timecalc.utils.common.Utils;
import org.nanoboot.utils.timecalc.utils.property.ChangeListener;
import org.nanoboot.utils.timecalc.utils.property.IntegerProperty;
import org.nanoboot.utils.timecalc.utils.property.ReadOnlyProperty;
import javax.imageio.ImageIO;
import javax.swing.ImageIcon;
@ -87,7 +89,7 @@ import java.util.function.Function;
import java.util.function.Supplier;
import java.util.stream.Collectors;
import static com.robertvokac.utils.timecalc.app.Main.ONLY_ACTIVITIES_WINDOW_IS_ALLOWED;
import static org.nanoboot.utils.timecalc.app.Main.ONLY_ACTIVITIES_WINDOW_IS_ALLOWED;
/**
* @author Robert Vokac
@ -112,6 +114,8 @@ public class MainWindow extends TWindow {
private final TButton focusButton;
private final TButton helpButton;
private final TButton weatherButton;
private final TButton commandButton;
private final TButton jokeButton;
private final AboutButton aboutButton;
private final TimeCalcConfiguration timeCalcConfiguration
= new TimeCalcConfiguration();
@ -135,6 +139,7 @@ public class MainWindow extends TWindow {
private final ProgressMoney progressMoney;
private final ProgressWeather progressWeather;
private final ProgressFuelGauge progressFuelGauge;
private final ProgressRotation progressRotation;
private final ProgressBar progressBar;
private final ProgressWater progressWater;
private final JLabel hourGlassElapsedDayIcon;
@ -240,7 +245,7 @@ public class MainWindow extends TWindow {
throw new PropertyVetoException("Overtime must not be empty.", new PropertyChangeEvent(e.getSource(), e.getPropertyName(), e.getOldValue(), e.getNewValue()));
}
});
this.configButton = new TButton("Config");
this.configButton = new TButton("Config", 60);
configButton.addActionListener(e -> {
if (configWindow == null) {
this.configWindow = new ConfigWindow(timeCalcConfiguration);
@ -278,10 +283,12 @@ public class MainWindow extends TWindow {
this.workDaysButton = new TButton(allowOnlyBasicFeaturesProperty.getValue() ? " " : "Working Days", 100);
this.activitiesButton = new TButton(allowOnlyBasicFeaturesProperty.getValue() ? " " : "Activities");
this.restartButton = new TButton(allowOnlyBasicFeaturesProperty.getValue() ? " " : "Restart");
this.exitButton = new TButton("Exit");
this.focusButton = new TButton(allowOnlyBasicFeaturesProperty.getValue() ? " " : "Focus");
this.helpButton = new TButton("Help");
this.exitButton = new TButton("Exit", 50);
this.focusButton = new TButton(allowOnlyBasicFeaturesProperty.getValue() ? " " : "Focus", 70);
this.helpButton = new TButton("Help", 60);
this.weatherButton = new TButton("Weather");
this.commandButton = new TButton("Run", 40);
this.jokeButton = new TButton("Joke", 60);
this.aboutButton = new AboutButton();
Function<String, ImageIcon> loadImageIcon = (p) ->
@ -311,7 +318,7 @@ public class MainWindow extends TWindow {
//window.add(weatherButton);
addAll(workDaysButton, activitiesButton, restartButton,focusButton);
if(!allowOnlyBasicFeaturesProperty.getValue()) {
addAll(configButton, helpButton,
addAll(configButton, commandButton,jokeButton,helpButton,
exitButton,
hideShowFormsCheckBox);
}
@ -495,9 +502,22 @@ public class MainWindow extends TWindow {
add(progressFuelGauge);
//
this.progressRotation = new ProgressRotation();
progressRotation.setBounds(progressFuelGauge.getX() + progressFuelGauge.getWidth() + SwingUtils.MARGIN, progressFuelGauge.getY(),
100, 100);
progressRotation.visibleProperty
.bindTo(timeCalcConfiguration.rotationVisibleProperty);
progressRotation.typeProperty
.bindTo(timeCalcConfiguration.rotationTypeProperty);
progressRotation.hiddenProperty
.bindTo(timeCalcConfiguration.rotationHiddenProperty);
add(progressRotation);
//
this.progressBar = new ProgressBar();
progressBar.setBounds(progressSwing.getX(), progressSwing.getY() + progressSwing.getHeight() + SwingUtils.MARGIN,
progressCircle.getX() + progressCircle.getWidth() - 1 * SwingUtils.MARGIN, 25);
progressRotation.getX() + progressRotation.getWidth() - 2 * SwingUtils.MARGIN, 25);
progressBar.visibleProperty
.bindTo(timeCalcConfiguration.barVisibleProperty);
@ -791,10 +811,12 @@ public class MainWindow extends TWindow {
//
helpButton.setBoundsFromLeft(configButton);
focusButton.setBoundsFromLeft(helpButton);
commandButton.setBoundsFromLeft(focusButton);
jokeButton.setBoundsFromLeft(commandButton);
hideShowFormsCheckBox.setSelected(true);
hideShowFormsCheckBox.setBounds(
focusButton.getX() + focusButton.getWidth() + SwingUtils.MARGIN,
focusButton.getY(), 20, 20);
jokeButton.getX() + jokeButton.getWidth() + SwingUtils.MARGIN,
jokeButton.getY(), 20, 20);
//
restartButton.setBoundsFromLeft(hideShowFormsCheckBox);
exitButton.setBoundsFromLeft(restartButton);
@ -808,7 +830,14 @@ public class MainWindow extends TWindow {
weatherButton
.addActionListener(e -> new WeatherWindow().setVisible(true));
commandButton.addActionListener(
new CommandActionListener(timeCalcApp, timeCalcConfiguration));
jokeButton.addActionListener(e -> {
for (int i = 1; i <= 1; i++) {
Jokes.showRandom();
}
});
hideShowFormsCheckBox.addItemListener(e -> this.requestFocus());
exitButton.addActionListener(e
-> {
@ -1410,6 +1439,12 @@ public class MainWindow extends TWindow {
.isEnabled()) /*|| (c instanceof TButton ? ((Widget)c).visibleProperty.isEnabled()
: true)*/, currentVisibility.isNotNone());
jokeButton.setVisible(
TimeCalcProperties.getInstance().getBooleanProperty(
TimeCalcProperty.JOKES_VISIBLE)
&& !currentVisibility.isNone()
&& MainWindow.hideShowFormsCheckBox.isSelected());
setTitle(currentVisibility.isNone() ? "" : getWindowTitle());
int secondNow = clock.secondProperty.getValue();
@ -1593,6 +1628,7 @@ public class MainWindow extends TWindow {
progressMoney.setProgress(progress);
progressDot.setProgress(progress);
progressFuelGauge.setProgress(progress);
progressRotation.setProgress(progress);
progressBar.setProgress(progress);
progressWater.setProgress(progress);
dayBattery.setProgress(progress);
@ -1701,6 +1737,10 @@ public class MainWindow extends TWindow {
restartButton.doClick();
}
public void doCommand() {
commandButton.doClick();
}
public void openHelpWindow() {
helpButton.doClick();
}

View File

@ -1,6 +1,6 @@
package com.robertvokac.utils.timecalc.swing.windows;
package org.nanoboot.utils.timecalc.swing.windows;
import com.robertvokac.utils.timecalc.utils.common.Utils;
import org.nanoboot.utils.timecalc.utils.common.Utils;
import javax.swing.JEditorPane;
import javax.swing.JFrame;

View File

@ -1,19 +1,19 @@
package com.robertvokac.utils.timecalc.swing.windows;
package org.nanoboot.utils.timecalc.swing.windows;
import com.robertvokac.utils.timecalc.swing.controls.TTextField;
import com.robertvokac.utils.timecalc.swing.controls.TLabel;
import com.robertvokac.utils.timecalc.swing.controls.TCheckBox;
import com.robertvokac.utils.timecalc.swing.controls.TWindow;
import com.robertvokac.utils.timecalc.swing.controls.TTabbedPane;
import com.robertvokac.utils.timecalc.entity.WorkingDay;
import com.robertvokac.utils.timecalc.entity.WorkingDayForStats;
import com.robertvokac.utils.timecalc.persistence.api.WorkingDayRepositoryApi;
import com.robertvokac.utils.timecalc.swing.progress.Time;
import com.robertvokac.utils.timecalc.utils.common.DateFormats;
import com.robertvokac.utils.timecalc.utils.common.NumberFormats;
import com.robertvokac.utils.timecalc.utils.common.TTime;
import com.robertvokac.utils.timecalc.utils.common.Utils;
import com.robertvokac.utils.timecalc.utils.property.InvalidationListener;
import org.nanoboot.utils.timecalc.swing.controls.TTextField;
import org.nanoboot.utils.timecalc.swing.controls.TLabel;
import org.nanoboot.utils.timecalc.swing.controls.TCheckBox;
import org.nanoboot.utils.timecalc.swing.controls.TWindow;
import org.nanoboot.utils.timecalc.swing.controls.TTabbedPane;
import org.nanoboot.utils.timecalc.entity.WorkingDay;
import org.nanoboot.utils.timecalc.entity.WorkingDayForStats;
import org.nanoboot.utils.timecalc.persistence.api.WorkingDayRepositoryApi;
import org.nanoboot.utils.timecalc.swing.progress.Time;
import org.nanoboot.utils.timecalc.utils.common.DateFormats;
import org.nanoboot.utils.timecalc.utils.common.NumberFormats;
import org.nanoboot.utils.timecalc.utils.common.TTime;
import org.nanoboot.utils.timecalc.utils.common.Utils;
import org.nanoboot.utils.timecalc.utils.property.InvalidationListener;
import javax.swing.JButton;
import javax.swing.JComboBox;
@ -29,9 +29,9 @@ import java.awt.event.KeyListener;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.List;
import com.robertvokac.utils.timecalc.swing.common.ArrivalChart;
import com.robertvokac.utils.timecalc.swing.common.ArrivalChartData;
import com.robertvokac.utils.timecalc.swing.common.SwingUtils;
import org.nanoboot.utils.timecalc.swing.common.ArrivalChart;
import org.nanoboot.utils.timecalc.swing.common.ArrivalChartData;
import org.nanoboot.utils.timecalc.swing.common.SwingUtils;
/**
* @author Robert Vokac
@ -336,19 +336,6 @@ public class WorkingDaysWindow extends TWindow {
cal.set(Calendar.YEAR, year);
cal.set(Calendar.MONTH, month - 1);
int dayMaximum = month ==2 ? (year % 4 == 0 ? 29 : 28) : cal.getActualMaximum(Calendar.DAY_OF_MONTH);
switch(month) {
case 1: dayMaximum = 31; break;
case 3: dayMaximum = 31; break;
case 4: dayMaximum = 30; break;
case 5: dayMaximum = 31; break;
case 6: dayMaximum = 30; break;
case 7: dayMaximum = 31; break;
case 8: dayMaximum = 31; break;
case 9: dayMaximum = 30; break;
case 10: dayMaximum = 31; break;
case 11: dayMaximum = 30; break;
case 12: dayMaximum = 31; break;
}
for (int day = 1; day <= dayMaximum; day++) {
WorkingDay wd = workingDayRepository.read(year, month, day);

View File

@ -1,4 +1,4 @@
package com.robertvokac.utils.timecalc.utils.binding;
package org.nanoboot.utils.timecalc.utils.binding;
/**
* @author Robert Vokac

View File

@ -1,4 +1,4 @@
package com.robertvokac.utils.timecalc.utils.common;
package org.nanoboot.utils.timecalc.utils.common;
/**
* @author Robert Vokac

View File

@ -1,4 +1,4 @@
package com.robertvokac.utils.timecalc.utils.common;
package org.nanoboot.utils.timecalc.utils.common;
import java.text.DateFormat;
import java.text.SimpleDateFormat;

View File

@ -1,4 +1,4 @@
package com.robertvokac.utils.timecalc.utils.common;
package org.nanoboot.utils.timecalc.utils.common;
import java.io.File;

View File

@ -1,4 +1,4 @@
package com.robertvokac.utils.timecalc.utils.common;
package org.nanoboot.utils.timecalc.utils.common;
import java.io.File;
import java.io.IOException;

View File

@ -1,8 +1,8 @@
package com.robertvokac.utils.timecalc.utils.common;
package org.nanoboot.utils.timecalc.utils.common;
import com.robertvokac.utils.timecalc.app.TimeCalcProperties;
import com.robertvokac.utils.timecalc.app.TimeCalcProperty;
import com.robertvokac.utils.timecalc.swing.common.Toaster;
import org.nanoboot.utils.timecalc.app.TimeCalcProperties;
import org.nanoboot.utils.timecalc.app.TimeCalcProperty;
import org.nanoboot.utils.timecalc.swing.common.Toaster;
import javax.swing.JFrame;
import javax.swing.JTextPane;

View File

@ -1,4 +1,4 @@
package com.robertvokac.utils.timecalc.utils.common;
package org.nanoboot.utils.timecalc.utils.common;
import java.io.File;
import java.io.IOException;

View File

@ -1,4 +1,4 @@
package com.robertvokac.utils.timecalc.utils.common;
package org.nanoboot.utils.timecalc.utils.common;
import java.text.DecimalFormat;
import java.text.NumberFormat;

View File

@ -1,7 +1,7 @@
package com.robertvokac.utils.timecalc.utils.common;
package org.nanoboot.utils.timecalc.utils.common;
import lombok.Getter;
import com.robertvokac.utils.timecalc.app.TimeCalcException;
import org.nanoboot.utils.timecalc.app.TimeCalcException;
import java.util.Arrays;

View File

@ -1,8 +1,8 @@
package com.robertvokac.utils.timecalc.utils.common;
package org.nanoboot.utils.timecalc.utils.common;
import lombok.Getter;
import lombok.Setter;
import com.robertvokac.utils.timecalc.app.TimeCalcException;
import org.nanoboot.utils.timecalc.app.TimeCalcException;
import java.time.Duration;
import java.time.temporal.ChronoUnit;

View File

@ -1,8 +1,8 @@
package com.robertvokac.utils.timecalc.utils.common;
package org.nanoboot.utils.timecalc.utils.common;
import com.robertvokac.utils.timecalc.app.Main;
import com.robertvokac.utils.timecalc.app.TimeCalcException;
import com.robertvokac.utils.timecalc.swing.common.Toaster;
import org.nanoboot.utils.timecalc.app.Main;
import org.nanoboot.utils.timecalc.app.TimeCalcException;
import org.nanoboot.utils.timecalc.swing.common.Toaster;
import javax.swing.JOptionPane;
import java.awt.Color;

View File

@ -1,4 +1,4 @@
package com.robertvokac.utils.timecalc.utils.property;
package org.nanoboot.utils.timecalc.utils.property;
/**
* @author Robert Vokac

View File

@ -1,4 +1,4 @@
package com.robertvokac.utils.timecalc.utils.property;
package org.nanoboot.utils.timecalc.utils.property;
/**
* @author Robert Vokac

Some files were not shown because too many files have changed in this diff Show More