diff options
author | James Kung <kingkung@google.com> | 2013-06-27 17:49:04 -0700 |
---|---|---|
committer | James Kung <kingkung@google.com> | 2013-06-27 17:49:04 -0700 |
commit | 385d36f15358e7d035b2e89e395588eb7952ebc2 (patch) | |
tree | 0e2f9eb124bf2311f16e34340c83b051bdf2cc0d /src/com/android | |
parent | f2346bc730dc676b6ba6248f5b6949b90d201b9b (diff) | |
download | datetimepicker-385d36f15358e7d035b2e89e395588eb7952ebc2.tar.gz |
Date picker modifications for Timely
Change-Id: Ib5305466bb211116c43ac19ea59a01e070562271
Diffstat (limited to 'src/com/android')
4 files changed, 30 insertions, 10 deletions
diff --git a/src/com/android/datetimepicker/date/DatePickerController.java b/src/com/android/datetimepicker/date/DatePickerController.java index 173e58a..a4986cc 100644 --- a/src/com/android/datetimepicker/date/DatePickerController.java +++ b/src/com/android/datetimepicker/date/DatePickerController.java @@ -22,7 +22,7 @@ import com.android.datetimepicker.date.SimpleMonthAdapter.CalendarDay; /** * Controller class to communicate among the various components of the date picker dialog. */ -interface DatePickerController { +public interface DatePickerController { void onYearSelected(int year); diff --git a/src/com/android/datetimepicker/date/DatePickerDialog.java b/src/com/android/datetimepicker/date/DatePickerDialog.java index d16eedd..a9aff7f 100644 --- a/src/com/android/datetimepicker/date/DatePickerDialog.java +++ b/src/com/android/datetimepicker/date/DatePickerDialog.java @@ -126,7 +126,7 @@ public class DatePickerDialog extends DialogFragment implements /** * The callback used to notify other date picker components of a change in selected date. */ - interface OnDateChangedListener { + public interface OnDateChangedListener { public void onDateChanged(); } diff --git a/src/com/android/datetimepicker/date/DayPickerView.java b/src/com/android/datetimepicker/date/DayPickerView.java index 5a49e42..0147d4a 100644 --- a/src/com/android/datetimepicker/date/DayPickerView.java +++ b/src/com/android/datetimepicker/date/DayPickerView.java @@ -20,6 +20,7 @@ import android.annotation.SuppressLint; import android.content.Context; import android.os.Bundle; import android.os.Handler; +import android.util.AttributeSet; import android.util.Log; import android.view.View; import android.view.ViewConfiguration; @@ -87,25 +88,35 @@ public class DayPickerView extends ListView implements OnScrollListener, OnDateC // used for tracking what state listview is in protected int mCurrentScrollState = OnScrollListener.SCROLL_STATE_IDLE; - private final DatePickerController mController; + private DatePickerController mController; private boolean mPerformingScroll; + public DayPickerView(Context context, AttributeSet attrs) { + super(context, attrs); + init(context); + } + public DayPickerView(Context context, DatePickerController controller) { super(context); - mHandler = new Handler(); + init(context); + setController(controller); + } + + public void setController(DatePickerController controller) { mController = controller; mController.registerOnDateChangedListener(this); - setLayoutParams(new LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT)); - setDrawSelectorOnTop(false); - init(context); + setUpAdapter(); + setAdapter(mAdapter); onDateChanged(); } public void init(Context context) { + mHandler = new Handler(); + setLayoutParams(new LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT)); + setDrawSelectorOnTop(false); + mContext = context; setUpListView(); - setUpAdapter(); - setAdapter(mAdapter); } public void onChange() { diff --git a/src/com/android/datetimepicker/date/SimpleMonthAdapter.java b/src/com/android/datetimepicker/date/SimpleMonthAdapter.java index 10a815a..c6b615c 100644 --- a/src/com/android/datetimepicker/date/SimpleMonthAdapter.java +++ b/src/com/android/datetimepicker/date/SimpleMonthAdapter.java @@ -18,6 +18,7 @@ package com.android.datetimepicker.date; import android.annotation.SuppressLint; import android.content.Context; +import android.text.format.Time; import android.util.Log; import android.view.View; import android.view.ViewGroup; @@ -25,7 +26,6 @@ import android.widget.AbsListView.LayoutParams; import android.widget.BaseAdapter; import com.android.datetimepicker.date.SimpleMonthView.OnDayClickListener; -import com.android.datetimepicker.R; import java.util.Calendar; import java.util.HashMap; @@ -50,6 +50,7 @@ public class SimpleMonthAdapter extends BaseAdapter implements OnDayClickListene */ public static class CalendarDay { private Calendar calendar; + private Time time; int year; int month; int day; @@ -84,6 +85,14 @@ public class SimpleMonthAdapter extends BaseAdapter implements OnDayClickListene this.day = day; } + public void setJulianDay(int julianDay) { + if (time == null) { + time = new Time(); + } + time.setJulianDay(julianDay); + setTime(time.toMillis(false)); + } + private void setTime(long timeInMillis) { if (calendar == null) { calendar = Calendar.getInstance(); |