Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(12)

Side by Side Diff: content/public/android/java/src/org/chromium/content/browser/MonthPicker.java

Issue 11360207: Add Java resources to content and chrome. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: remove obsolete findbugs warnings Created 8 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 package org.chromium.content.browser; 5 package org.chromium.content.browser;
6 6
7 import android.content.Context; 7 import android.content.Context;
8 import android.content.res.Configuration; 8 import android.content.res.Configuration;
9 import android.os.Parcel; 9 import android.os.Parcel;
10 import android.os.Parcelable; 10 import android.os.Parcelable;
11 import android.text.format.DateUtils; 11 import android.text.format.DateUtils;
12 import android.util.AttributeSet; 12 import android.util.AttributeSet;
13 import android.util.SparseArray; 13 import android.util.SparseArray;
14 import android.view.LayoutInflater; 14 import android.view.LayoutInflater;
15 import android.view.accessibility.AccessibilityEvent; 15 import android.view.accessibility.AccessibilityEvent;
16 import android.widget.DatePicker; 16 import android.widget.DatePicker;
17 import android.widget.FrameLayout; 17 import android.widget.FrameLayout;
18 import android.widget.LinearLayout; 18 import android.widget.LinearLayout;
19 import android.widget.NumberPicker; 19 import android.widget.NumberPicker;
20 import android.widget.NumberPicker.OnValueChangeListener; 20 import android.widget.NumberPicker.OnValueChangeListener;
21 21
22 import java.util.Arrays; 22 import java.util.Arrays;
23 import java.util.Calendar; 23 import java.util.Calendar;
24 import java.util.Locale; 24 import java.util.Locale;
25 import java.util.TimeZone; 25 import java.util.TimeZone;
26 26
27 import org.chromium.content.app.AppResource; 27 import org.chromium.content.R;
28 28
29 // This class is heavily based on android.widget.DatePicker. 29 // This class is heavily based on android.widget.DatePicker.
30 public class MonthPicker extends FrameLayout { 30 public class MonthPicker extends FrameLayout {
31 31
32 private static final int DEFAULT_START_YEAR = 1900; 32 private static final int DEFAULT_START_YEAR = 1900;
33 33
34 private static final int DEFAULT_END_YEAR = 2100; 34 private static final int DEFAULT_END_YEAR = 2100;
35 35
36 private static final boolean DEFAULT_ENABLED_STATE = true; 36 private static final boolean DEFAULT_ENABLED_STATE = true;
37 37
(...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after
87 super(context, attrs, defStyle); 87 super(context, attrs, defStyle);
88 88
89 // initialization based on locale 89 // initialization based on locale
90 setCurrentLocale(Locale.getDefault()); 90 setCurrentLocale(Locale.getDefault());
91 91
92 int startYear = DEFAULT_START_YEAR; 92 int startYear = DEFAULT_START_YEAR;
93 int endYear = DEFAULT_END_YEAR; 93 int endYear = DEFAULT_END_YEAR;
94 94
95 LayoutInflater inflater = (LayoutInflater) context 95 LayoutInflater inflater = (LayoutInflater) context
96 .getSystemService(Context.LAYOUT_INFLATER_SERVICE); 96 .getSystemService(Context.LAYOUT_INFLATER_SERVICE);
97 assert AppResource.LAYOUT_MONTH_PICKER != 0; 97 inflater.inflate(R.layout.month_picker, this, true);
98 inflater.inflate(AppResource.LAYOUT_MONTH_PICKER, this, true);
99 98
100 OnValueChangeListener onChangeListener = new OnValueChangeListener() { 99 OnValueChangeListener onChangeListener = new OnValueChangeListener() {
101 public void onValueChange(NumberPicker picker, int oldVal, int newVa l) { 100 public void onValueChange(NumberPicker picker, int oldVal, int newVa l) {
102 mTempDate.setTimeInMillis(mCurrentDate.getTimeInMillis()); 101 mTempDate.setTimeInMillis(mCurrentDate.getTimeInMillis());
103 // take care of wrapping of days and months to update greater fi elds 102 // take care of wrapping of days and months to update greater fi elds
104 if (picker == mMonthSpinner) { 103 if (picker == mMonthSpinner) {
105 if (oldVal == 11 && newVal == 0) { 104 if (oldVal == 11 && newVal == 0) {
106 mTempDate.add(Calendar.MONTH, 1); 105 mTempDate.add(Calendar.MONTH, 1);
107 } else if (oldVal == 0 && newVal == 11) { 106 } else if (oldVal == 0 && newVal == 11) {
108 mTempDate.add(Calendar.MONTH, -1); 107 mTempDate.add(Calendar.MONTH, -1);
109 } else { 108 } else {
110 mTempDate.add(Calendar.MONTH, newVal - oldVal); 109 mTempDate.add(Calendar.MONTH, newVal - oldVal);
111 } 110 }
112 } else if (picker == mYearSpinner) { 111 } else if (picker == mYearSpinner) {
113 mTempDate.set(Calendar.YEAR, newVal); 112 mTempDate.set(Calendar.YEAR, newVal);
114 } else { 113 } else {
115 throw new IllegalArgumentException(); 114 throw new IllegalArgumentException();
116 } 115 }
117 // now set the date to the adjusted one 116 // now set the date to the adjusted one
118 setDate(mTempDate.get(Calendar.YEAR), mTempDate.get(Calendar.MON TH)); 117 setDate(mTempDate.get(Calendar.YEAR), mTempDate.get(Calendar.MON TH));
119 updateSpinners(); 118 updateSpinners();
120 notifyDateChanged(); 119 notifyDateChanged();
121 } 120 }
122 }; 121 };
123 122
124 assert AppResource.ID_MONTH_YEAR_PICKERS_CONTAINER != 0; 123 mSpinners = (LinearLayout) findViewById(R.id.pickers);
125 mSpinners = (LinearLayout) findViewById(AppResource.ID_MONTH_YEAR_PICKER S_CONTAINER);
126 124
127 // month 125 // month
128 assert AppResource.ID_MONTH_PICKER != 0; 126 mMonthSpinner = (NumberPicker) findViewById(R.id.month);
129 mMonthSpinner = (NumberPicker) findViewById(AppResource.ID_MONTH_PICKER) ;
130 mMonthSpinner.setMinValue(0); 127 mMonthSpinner.setMinValue(0);
131 mMonthSpinner.setMaxValue(mNumberOfMonths - 1); 128 mMonthSpinner.setMaxValue(mNumberOfMonths - 1);
132 mMonthSpinner.setDisplayedValues(mShortMonths); 129 mMonthSpinner.setDisplayedValues(mShortMonths);
133 mMonthSpinner.setOnLongPressUpdateInterval(200); 130 mMonthSpinner.setOnLongPressUpdateInterval(200);
134 mMonthSpinner.setOnValueChangedListener(onChangeListener); 131 mMonthSpinner.setOnValueChangedListener(onChangeListener);
135 132
136 // year 133 // year
137 assert AppResource.ID_YEAR_PICKER != 0; 134 mYearSpinner = (NumberPicker) findViewById(R.id.year);
138 mYearSpinner = (NumberPicker) findViewById(AppResource.ID_YEAR_PICKER);
139 mYearSpinner.setOnLongPressUpdateInterval(100); 135 mYearSpinner.setOnLongPressUpdateInterval(100);
140 mYearSpinner.setOnValueChangedListener(onChangeListener); 136 mYearSpinner.setOnValueChangedListener(onChangeListener);
141 137
142 mTempDate.clear(); 138 mTempDate.clear();
143 mTempDate.set(startYear, 0, 1); 139 mTempDate.set(startYear, 0, 1);
144 140
145 setMinDate(mTempDate.getTimeInMillis()); 141 setMinDate(mTempDate.getTimeInMillis());
146 142
147 mTempDate.clear(); 143 mTempDate.clear();
148 mTempDate.set(endYear, 11, 31); 144 mTempDate.set(endYear, 11, 31);
(...skipping 323 matching lines...) Expand 10 before | Expand all | Expand 10 after
472 public SavedState createFromParcel(Parcel in) { 468 public SavedState createFromParcel(Parcel in) {
473 return new SavedState(in); 469 return new SavedState(in);
474 } 470 }
475 471
476 public SavedState[] newArray(int size) { 472 public SavedState[] newArray(int size) {
477 return new SavedState[size]; 473 return new SavedState[size];
478 } 474 }
479 }; 475 };
480 } 476 }
481 } 477 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698