// Path: app/src/main/java/ca/alexland/renewpass/utils/CalendarUtil.java
// public class CalendarUtil {
//     private static Calendar calendar = new GregorianCalendar();
// 
//     public static long getNextMonthTimeInMillis(long currTimeInMillis) {
//         calendar.setTimeInMillis(currTimeInMillis);
//         int nextMonth = (calendar.get(Calendar.MONTH) + 1) % 12;
//         calendar.set(Calendar.MONTH, nextMonth);
//         if (nextMonth == 0) {
//             calendar.set(Calendar.YEAR, calendar.get(Calendar.YEAR) + 1);
//         }
//         return calendar.getTimeInMillis();
//     }
// 
//     public static String convertDateToString(Context context, Calendar calendar) {
//         return convertDateToString(context, calendar.getTimeInMillis());
//     }
// 
//     public static String convertDateToString(Context context, long timeInMillis) {
//         return DateFormat.getDateFormat(context).format(new Date(timeInMillis));
//     }
// 
//     public static String convertTimeToString(Context context, Calendar calendar) {
//         return convertTimeToString(context, calendar.getTimeInMillis());
//     }
// 
//     public static String convertTimeToString(Context context, long timeInMillis) {
//         return DateFormat.getTimeFormat(context).format(new Date(timeInMillis));
//     }
// }
// 
// Path: app/src/main/java/ca/alexland/renewpass/utils/SimpleTimeFormat.java
// public class SimpleTimeFormat {
//     //TODO: Change this to wrap/use a SimpleDateFormat, then just offer a nice interface for retrieving values from it
//     String time;
// 
//     public SimpleTimeFormat(String time) {
//         this.time = time;
//     }
//     public SimpleTimeFormat(int hour, int minute) {
//         time = hour + ":" + minute;
//     }
// 
//     public int getHour() {
//         String[] pieces=time.split(":");
// 
//         return(Integer.parseInt(pieces[0]));
//     }
// 
//     public int getMinute() {
//         String[] pieces=time.split(":");
// 
//         return(Integer.parseInt(pieces[1]));
//     }
// 
//     @Override
//     public String toString() {
//         return time;
//     }
// }


import android.content.Context;
import android.content.res.TypedArray;
import android.os.Build;
import android.preference.DialogPreference;
import android.text.format.DateFormat;
import android.util.AttributeSet;
import android.view.View;
import android.widget.TimePicker;
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;
import ca.alexland.renewpass.utils.CalendarUtil;
import ca.alexland.renewpass.utils.SimpleTimeFormat;
        persistString(new SimpleTimeFormat(
                calendar.get(Calendar.HOUR_OF_DAY),
                calendar.get(Calendar.MINUTE))
                .toString());
        notifyChanged();
    }

    //-----------------------Gross sub-class--------------------------------------------------------
    private class TimePickerCompat {
        private TimePicker timePicker;

        public TimePickerCompat(TimePicker timePicker) {
            this.timePicker = timePicker;
        }

        public TimePicker getTimePicker() {
            return this.timePicker;
        }

        public int getHourCompat() {
            if (Build.VERSION.SDK_INT > Build.VERSION_CODES.LOLLIPOP_MR1) {
                return timePicker.getHour();
            } //else
            return timePicker.getCurrentHour();
        }

        public int getMinuteCompat() {
            if (Build.VERSION.SDK_INT > Build.VERSION_CODES.LOLLIPOP_MR1) {
                return timePicker.getMinute();
            } //else
// Path: app/src/main/java/ca/alexland/renewpass/utils/CalendarUtil.java
// public class CalendarUtil {
//     private static Calendar calendar = new GregorianCalendar();
// 
//     public static long getNextMonthTimeInMillis(long currTimeInMillis) {
//         calendar.setTimeInMillis(currTimeInMillis);
//         int nextMonth = (calendar.get(Calendar.MONTH) + 1) % 12;
//         calendar.set(Calendar.MONTH, nextMonth);
//         if (nextMonth == 0) {
//             calendar.set(Calendar.YEAR, calendar.get(Calendar.YEAR) + 1);
//         }
//         return calendar.getTimeInMillis();
//     }
// 
//     public static String convertDateToString(Context context, Calendar calendar) {
//         return convertDateToString(context, calendar.getTimeInMillis());
//     }
// 
//     public static String convertDateToString(Context context, long timeInMillis) {
//         return DateFormat.getDateFormat(context).format(new Date(timeInMillis));
//     }
// 
//     public static String convertTimeToString(Context context, Calendar calendar) {
//         return convertTimeToString(context, calendar.getTimeInMillis());
//     }
// 
//     public static String convertTimeToString(Context context, long timeInMillis) {
//         return DateFormat.getTimeFormat(context).format(new Date(timeInMillis));
//     }
// }
// 
// Path: app/src/main/java/ca/alexland/renewpass/utils/SimpleTimeFormat.java
// public class SimpleTimeFormat {
//     //TODO: Change this to wrap/use a SimpleDateFormat, then just offer a nice interface for retrieving values from it
//     String time;
// 
//     public SimpleTimeFormat(String time) {
//         this.time = time;
//     }
//     public SimpleTimeFormat(int hour, int minute) {
//         time = hour + ":" + minute;
//     }
// 
//     public int getHour() {
//         String[] pieces=time.split(":");
// 
//         return(Integer.parseInt(pieces[0]));
//     }
// 
//     public int getMinute() {
//         String[] pieces=time.split(":");
// 
//         return(Integer.parseInt(pieces[1]));
//     }
// 
//     @Override
//     public String toString() {
//         return time;
//     }
// }


// Path: app/src/main/java/ca/alexland/renewpass/TimePreference.java
import android.content.Context;
import android.content.res.TypedArray;
import android.os.Build;
import android.preference.DialogPreference;
import android.text.format.DateFormat;
import android.util.AttributeSet;
import android.view.View;
import android.widget.TimePicker;
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;
import ca.alexland.renewpass.utils.CalendarUtil;
import ca.alexland.renewpass.utils.SimpleTimeFormat;

        persistString(new SimpleTimeFormat(
                calendar.get(Calendar.HOUR_OF_DAY),
                calendar.get(Calendar.MINUTE))
                .toString());
        notifyChanged();
    }

    //-----------------------Gross sub-class--------------------------------------------------------
    private class TimePickerCompat {
        private TimePicker timePicker;

        public TimePickerCompat(TimePicker timePicker) {
            this.timePicker = timePicker;
        }

        public TimePicker getTimePicker() {
            return this.timePicker;
        }

        public int getHourCompat() {
            if (Build.VERSION.SDK_INT > Build.VERSION_CODES.LOLLIPOP_MR1) {
                return timePicker.getHour();
            } //else
            return timePicker.getCurrentHour();
        }

        public int getMinuteCompat() {
            if (Build.VERSION.SDK_INT > Build.VERSION_CODES.LOLLIPOP_MR1) {
                return timePicker.getMinute();
            } //else
            return timePicker.getCurrentMinute();