12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970 |
- import java.util.Date;
- import java.util.Calendar;
- import java.text.SimpleDateFormat;
- Date date = new Date();
- SimpleDateFormat dateFormat;
- Calendar calendar = Calendar.getInstance();
- //24*60 = 1440;
-
- int i_days = 1;
- int i_hours;
- int i_minutes;
- int i_startMinutes;
- int i_flexibleTime;
-
- boolean b_pauseTime;
- boolean b_changeTime;
-
- void initTime() {
- i_hours = 5;
- i_minutes = 0;
- i_startMinutes = millis();
- }
-
- int getFlexTime(int hour, int minute) {
- return (hour*60+minute);
- }
-
- void setTime(int hours, int minutes) {
- i_hours = hours;
- i_minutes = minutes;
- }
-
- void time() {
- //calculate time
- if (!b_changeTime) {
- if (millis() - i_startMinutes > i_timeTickMS) {
- i_startMinutes = millis();
- if (!b_pauseTime) {
- i_minutes++;
- }
- }
- if (i_minutes >= 60) {
- i_hours++;
- i_minutes = 0;
- }
- if (i_hours >= 24) {
- i_days++;
- i_hours = 0;
- }
-
- i_flexibleTime = i_hours*60 + i_minutes;
- } else {
- i_minutes = i_flexibleTime % 60;
- i_hours = (int)i_flexibleTime / 60;
- if (i_flexibleTime < 0) {
- i_days --;
- i_flexibleTime = 1440;
- }
- if (i_flexibleTime > 1440) {
- i_days++;
- i_flexibleTime = 0;
- }
- }
-
-
- //time events
-
- if ((i_flexibleTime >= getFlexTime(0, 0) && i_flexibleTime < getFlexTime(6, 0)) || i_flexibleTime > getFlexTime(23, 0)) buttons[0].b_active = true;
- else buttons[0].b_active = false;
- }
|