OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2012 Google Inc. All rights reserved. | 2 * Copyright (C) 2012 Google Inc. All rights reserved. |
3 * | 3 * |
4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
5 * modification, are permitted provided that the following conditions | 5 * modification, are permitted provided that the following conditions |
6 * are met: | 6 * are met: |
7 * 1. Redistributions of source code must retain the above copyright | 7 * 1. Redistributions of source code must retain the above copyright |
8 * notice, this list of conditions and the following disclaimer. | 8 * notice, this list of conditions and the following disclaimer. |
9 * 2. Redistributions in binary form must reproduce the above copyright | 9 * 2. Redistributions in binary form must reproduce the above copyright |
10 * notice, this list of conditions and the following disclaimer in the | 10 * notice, this list of conditions and the following disclaimer in the |
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
43 } | 43 } |
44 | 44 |
45 DateTimeAMPMFieldElement::DateTimeAMPMFieldElement(Document& document, FieldOwne
r& fieldOwner, const Vector<String>& ampmLabels) | 45 DateTimeAMPMFieldElement::DateTimeAMPMFieldElement(Document& document, FieldOwne
r& fieldOwner, const Vector<String>& ampmLabels) |
46 : DateTimeSymbolicFieldElement(document, fieldOwner, ampmLabels, 0, 1) | 46 : DateTimeSymbolicFieldElement(document, fieldOwner, ampmLabels, 0, 1) |
47 { | 47 { |
48 } | 48 } |
49 | 49 |
50 PassRefPtrWillBeRawPtr<DateTimeAMPMFieldElement> DateTimeAMPMFieldElement::creat
e(Document& document, FieldOwner& fieldOwner, const Vector<String>& ampmLabels) | 50 PassRefPtrWillBeRawPtr<DateTimeAMPMFieldElement> DateTimeAMPMFieldElement::creat
e(Document& document, FieldOwner& fieldOwner, const Vector<String>& ampmLabels) |
51 { | 51 { |
52 DEFINE_STATIC_LOCAL(AtomicString, ampmPsuedoId, ("-webkit-datetime-edit-ampm
-field", AtomicString::ConstructFromLiteral)); | 52 DEFINE_STATIC_LOCAL(AtomicString, ampmPsuedoId, ("-webkit-datetime-edit-ampm
-field", AtomicString::ConstructFromLiteral)); |
53 RefPtrWillBeRawPtr<DateTimeAMPMFieldElement> field = adoptRefWillBeRefCounte
dGarbageCollected(new DateTimeAMPMFieldElement(document, fieldOwner, ampmLabels)
); | 53 RefPtrWillBeRawPtr<DateTimeAMPMFieldElement> field = adoptRefWillBeNoop(new
DateTimeAMPMFieldElement(document, fieldOwner, ampmLabels)); |
54 field->initialize(ampmPsuedoId, queryString(WebLocalizedString::AXAMPMFieldT
ext)); | 54 field->initialize(ampmPsuedoId, queryString(WebLocalizedString::AXAMPMFieldT
ext)); |
55 return field.release(); | 55 return field.release(); |
56 } | 56 } |
57 | 57 |
58 void DateTimeAMPMFieldElement::populateDateTimeFieldsState(DateTimeFieldsState&
dateTimeFieldsState) | 58 void DateTimeAMPMFieldElement::populateDateTimeFieldsState(DateTimeFieldsState&
dateTimeFieldsState) |
59 { | 59 { |
60 if (hasValue()) | 60 if (hasValue()) |
61 dateTimeFieldsState.setAMPM(valueAsInteger() ? DateTimeFieldsState::AMPM
ValuePM : DateTimeFieldsState::AMPMValueAM); | 61 dateTimeFieldsState.setAMPM(valueAsInteger() ? DateTimeFieldsState::AMPM
ValuePM : DateTimeFieldsState::AMPMValueAM); |
62 else | 62 else |
63 dateTimeFieldsState.setAMPM(DateTimeFieldsState::AMPMValueEmpty); | 63 dateTimeFieldsState.setAMPM(DateTimeFieldsState::AMPMValueEmpty); |
(...skipping 15 matching lines...) Expand all Loading... |
79 // ---------------------------- | 79 // ---------------------------- |
80 | 80 |
81 DateTimeDayFieldElement::DateTimeDayFieldElement(Document& document, FieldOwner&
fieldOwner, const String& placeholder, const Range& range) | 81 DateTimeDayFieldElement::DateTimeDayFieldElement(Document& document, FieldOwner&
fieldOwner, const String& placeholder, const Range& range) |
82 : DateTimeNumericFieldElement(document, fieldOwner, range, Range(1, 31), pla
ceholder) | 82 : DateTimeNumericFieldElement(document, fieldOwner, range, Range(1, 31), pla
ceholder) |
83 { | 83 { |
84 } | 84 } |
85 | 85 |
86 PassRefPtrWillBeRawPtr<DateTimeDayFieldElement> DateTimeDayFieldElement::create(
Document& document, FieldOwner& fieldOwner, const String& placeholder, const Ran
ge& range) | 86 PassRefPtrWillBeRawPtr<DateTimeDayFieldElement> DateTimeDayFieldElement::create(
Document& document, FieldOwner& fieldOwner, const String& placeholder, const Ran
ge& range) |
87 { | 87 { |
88 DEFINE_STATIC_LOCAL(AtomicString, dayPsuedoId, ("-webkit-datetime-edit-day-f
ield", AtomicString::ConstructFromLiteral)); | 88 DEFINE_STATIC_LOCAL(AtomicString, dayPsuedoId, ("-webkit-datetime-edit-day-f
ield", AtomicString::ConstructFromLiteral)); |
89 RefPtrWillBeRawPtr<DateTimeDayFieldElement> field = adoptRefWillBeRefCounted
GarbageCollected(new DateTimeDayFieldElement(document, fieldOwner, placeholder.i
sEmpty() ? "--" : placeholder, range)); | 89 RefPtrWillBeRawPtr<DateTimeDayFieldElement> field = adoptRefWillBeNoop(new D
ateTimeDayFieldElement(document, fieldOwner, placeholder.isEmpty() ? "--" : plac
eholder, range)); |
90 field->initialize(dayPsuedoId, queryString(WebLocalizedString::AXDayOfMonthF
ieldText)); | 90 field->initialize(dayPsuedoId, queryString(WebLocalizedString::AXDayOfMonthF
ieldText)); |
91 return field.release(); | 91 return field.release(); |
92 } | 92 } |
93 | 93 |
94 void DateTimeDayFieldElement::populateDateTimeFieldsState(DateTimeFieldsState& d
ateTimeFieldsState) | 94 void DateTimeDayFieldElement::populateDateTimeFieldsState(DateTimeFieldsState& d
ateTimeFieldsState) |
95 { | 95 { |
96 dateTimeFieldsState.setDayOfMonth(hasValue() ? valueAsInteger() : DateTimeFi
eldsState::emptyValue); | 96 dateTimeFieldsState.setDayOfMonth(hasValue() ? valueAsInteger() : DateTimeFi
eldsState::emptyValue); |
97 } | 97 } |
98 | 98 |
99 void DateTimeDayFieldElement::setValueAsDate(const DateComponents& date) | 99 void DateTimeDayFieldElement::setValueAsDate(const DateComponents& date) |
(...skipping 65 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
165 ASSERT(hour23Range.maximum <= 23); | 165 ASSERT(hour23Range.maximum <= 23); |
166 ASSERT(hour23Range.minimum <= hour23Range.maximum); | 166 ASSERT(hour23Range.minimum <= hour23Range.maximum); |
167 Range range(0, 11); | 167 Range range(0, 11); |
168 if (hour23Range.maximum < 12) | 168 if (hour23Range.maximum < 12) |
169 range = hour23Range; | 169 range = hour23Range; |
170 else if (hour23Range.minimum >= 12) { | 170 else if (hour23Range.minimum >= 12) { |
171 range.minimum = hour23Range.minimum - 12; | 171 range.minimum = hour23Range.minimum - 12; |
172 range.maximum = hour23Range.maximum - 12; | 172 range.maximum = hour23Range.maximum - 12; |
173 } | 173 } |
174 | 174 |
175 RefPtrWillBeRawPtr<DateTimeHour11FieldElement> field = adoptRefWillBeRefCoun
tedGarbageCollected(new DateTimeHour11FieldElement(document, fieldOwner, range,
step)); | 175 RefPtrWillBeRawPtr<DateTimeHour11FieldElement> field = adoptRefWillBeNoop(ne
w DateTimeHour11FieldElement(document, fieldOwner, range, step)); |
176 field->initialize(); | 176 field->initialize(); |
177 return field.release(); | 177 return field.release(); |
178 } | 178 } |
179 | 179 |
180 void DateTimeHour11FieldElement::populateDateTimeFieldsState(DateTimeFieldsState
& dateTimeFieldsState) | 180 void DateTimeHour11FieldElement::populateDateTimeFieldsState(DateTimeFieldsState
& dateTimeFieldsState) |
181 { | 181 { |
182 if (!hasValue()) { | 182 if (!hasValue()) { |
183 dateTimeFieldsState.setHour(DateTimeFieldsState::emptyValue); | 183 dateTimeFieldsState.setHour(DateTimeFieldsState::emptyValue); |
184 return; | 184 return; |
185 } | 185 } |
(...skipping 27 matching lines...) Expand all Loading... |
213 range.maximum = hour23Range.maximum - 12; | 213 range.maximum = hour23Range.maximum - 12; |
214 } | 214 } |
215 if (!range.minimum) | 215 if (!range.minimum) |
216 range.minimum = 12; | 216 range.minimum = 12; |
217 if (!range.maximum) | 217 if (!range.maximum) |
218 range.maximum = 12; | 218 range.maximum = 12; |
219 if (range.minimum > range.maximum) { | 219 if (range.minimum > range.maximum) { |
220 range.minimum = 1; | 220 range.minimum = 1; |
221 range.maximum = 12; | 221 range.maximum = 12; |
222 } | 222 } |
223 RefPtrWillBeRawPtr<DateTimeHour12FieldElement> field = adoptRefWillBeRefCoun
tedGarbageCollected(new DateTimeHour12FieldElement(document, fieldOwner, range,
step)); | 223 RefPtrWillBeRawPtr<DateTimeHour12FieldElement> field = adoptRefWillBeNoop(ne
w DateTimeHour12FieldElement(document, fieldOwner, range, step)); |
224 field->initialize(); | 224 field->initialize(); |
225 return field.release(); | 225 return field.release(); |
226 } | 226 } |
227 | 227 |
228 void DateTimeHour12FieldElement::populateDateTimeFieldsState(DateTimeFieldsState
& dateTimeFieldsState) | 228 void DateTimeHour12FieldElement::populateDateTimeFieldsState(DateTimeFieldsState
& dateTimeFieldsState) |
229 { | 229 { |
230 dateTimeFieldsState.setHour(hasValue() ? valueAsInteger() : DateTimeFieldsSt
ate::emptyValue); | 230 dateTimeFieldsState.setHour(hasValue() ? valueAsInteger() : DateTimeFieldsSt
ate::emptyValue); |
231 } | 231 } |
232 | 232 |
233 void DateTimeHour12FieldElement::setValueAsInteger(int value, EventBehavior even
tBehavior) | 233 void DateTimeHour12FieldElement::setValueAsInteger(int value, EventBehavior even
tBehavior) |
234 { | 234 { |
235 value = Range(0, 24).clampValue(value) % 12; | 235 value = Range(0, 24).clampValue(value) % 12; |
236 DateTimeNumericFieldElement::setValueAsInteger(value ? value : 12, eventBeha
vior); | 236 DateTimeNumericFieldElement::setValueAsInteger(value ? value : 12, eventBeha
vior); |
237 } | 237 } |
238 | 238 |
239 // ---------------------------- | 239 // ---------------------------- |
240 | 240 |
241 DateTimeHour23FieldElement::DateTimeHour23FieldElement(Document& document, Field
Owner& fieldOwner, const Range& range, const Step& step) | 241 DateTimeHour23FieldElement::DateTimeHour23FieldElement(Document& document, Field
Owner& fieldOwner, const Range& range, const Step& step) |
242 : DateTimeHourFieldElementBase(document, fieldOwner, range, Range(0, 23), st
ep) | 242 : DateTimeHourFieldElementBase(document, fieldOwner, range, Range(0, 23), st
ep) |
243 { | 243 { |
244 } | 244 } |
245 | 245 |
246 PassRefPtrWillBeRawPtr<DateTimeHour23FieldElement> DateTimeHour23FieldElement::c
reate(Document& document, FieldOwner& fieldOwner, const Range& hour23Range, cons
t Step& step) | 246 PassRefPtrWillBeRawPtr<DateTimeHour23FieldElement> DateTimeHour23FieldElement::c
reate(Document& document, FieldOwner& fieldOwner, const Range& hour23Range, cons
t Step& step) |
247 { | 247 { |
248 ASSERT(hour23Range.minimum >= 0); | 248 ASSERT(hour23Range.minimum >= 0); |
249 ASSERT(hour23Range.maximum <= 23); | 249 ASSERT(hour23Range.maximum <= 23); |
250 ASSERT(hour23Range.minimum <= hour23Range.maximum); | 250 ASSERT(hour23Range.minimum <= hour23Range.maximum); |
251 RefPtrWillBeRawPtr<DateTimeHour23FieldElement> field = adoptRefWillBeRefCoun
tedGarbageCollected(new DateTimeHour23FieldElement(document, fieldOwner, hour23R
ange, step)); | 251 RefPtrWillBeRawPtr<DateTimeHour23FieldElement> field = adoptRefWillBeNoop(ne
w DateTimeHour23FieldElement(document, fieldOwner, hour23Range, step)); |
252 field->initialize(); | 252 field->initialize(); |
253 return field.release(); | 253 return field.release(); |
254 } | 254 } |
255 | 255 |
256 void DateTimeHour23FieldElement::populateDateTimeFieldsState(DateTimeFieldsState
& dateTimeFieldsState) | 256 void DateTimeHour23FieldElement::populateDateTimeFieldsState(DateTimeFieldsState
& dateTimeFieldsState) |
257 { | 257 { |
258 if (!hasValue()) { | 258 if (!hasValue()) { |
259 dateTimeFieldsState.setHour(DateTimeFieldsState::emptyValue); | 259 dateTimeFieldsState.setHour(DateTimeFieldsState::emptyValue); |
260 return; | 260 return; |
261 } | 261 } |
(...skipping 21 matching lines...) Expand all Loading... |
283 { | 283 { |
284 ASSERT(hour23Range.minimum >= 0); | 284 ASSERT(hour23Range.minimum >= 0); |
285 ASSERT(hour23Range.maximum <= 23); | 285 ASSERT(hour23Range.maximum <= 23); |
286 ASSERT(hour23Range.minimum <= hour23Range.maximum); | 286 ASSERT(hour23Range.minimum <= hour23Range.maximum); |
287 Range range(hour23Range.minimum ? hour23Range.minimum : 24, hour23Range.maxi
mum ? hour23Range.maximum : 24); | 287 Range range(hour23Range.minimum ? hour23Range.minimum : 24, hour23Range.maxi
mum ? hour23Range.maximum : 24); |
288 if (range.minimum > range.maximum) { | 288 if (range.minimum > range.maximum) { |
289 range.minimum = 1; | 289 range.minimum = 1; |
290 range.maximum = 24; | 290 range.maximum = 24; |
291 } | 291 } |
292 | 292 |
293 RefPtrWillBeRawPtr<DateTimeHour24FieldElement> field = adoptRefWillBeRefCoun
tedGarbageCollected(new DateTimeHour24FieldElement(document, fieldOwner, range,
step)); | 293 RefPtrWillBeRawPtr<DateTimeHour24FieldElement> field = adoptRefWillBeNoop(ne
w DateTimeHour24FieldElement(document, fieldOwner, range, step)); |
294 field->initialize(); | 294 field->initialize(); |
295 return field.release(); | 295 return field.release(); |
296 } | 296 } |
297 | 297 |
298 void DateTimeHour24FieldElement::populateDateTimeFieldsState(DateTimeFieldsState
& dateTimeFieldsState) | 298 void DateTimeHour24FieldElement::populateDateTimeFieldsState(DateTimeFieldsState
& dateTimeFieldsState) |
299 { | 299 { |
300 if (!hasValue()) { | 300 if (!hasValue()) { |
301 dateTimeFieldsState.setHour(DateTimeFieldsState::emptyValue); | 301 dateTimeFieldsState.setHour(DateTimeFieldsState::emptyValue); |
302 return; | 302 return; |
303 } | 303 } |
(...skipping 18 matching lines...) Expand all Loading... |
322 // ---------------------------- | 322 // ---------------------------- |
323 | 323 |
324 DateTimeMillisecondFieldElement::DateTimeMillisecondFieldElement(Document& docum
ent, FieldOwner& fieldOwner, const Range& range, const Step& step) | 324 DateTimeMillisecondFieldElement::DateTimeMillisecondFieldElement(Document& docum
ent, FieldOwner& fieldOwner, const Range& range, const Step& step) |
325 : DateTimeNumericFieldElement(document, fieldOwner, range, Range(0, 999), "-
--", step) | 325 : DateTimeNumericFieldElement(document, fieldOwner, range, Range(0, 999), "-
--", step) |
326 { | 326 { |
327 } | 327 } |
328 | 328 |
329 PassRefPtrWillBeRawPtr<DateTimeMillisecondFieldElement> DateTimeMillisecondField
Element::create(Document& document, FieldOwner& fieldOwner, const Range& range,
const Step& step) | 329 PassRefPtrWillBeRawPtr<DateTimeMillisecondFieldElement> DateTimeMillisecondField
Element::create(Document& document, FieldOwner& fieldOwner, const Range& range,
const Step& step) |
330 { | 330 { |
331 DEFINE_STATIC_LOCAL(AtomicString, millisecondPsuedoId, ("-webkit-datetime-ed
it-millisecond-field", AtomicString::ConstructFromLiteral)); | 331 DEFINE_STATIC_LOCAL(AtomicString, millisecondPsuedoId, ("-webkit-datetime-ed
it-millisecond-field", AtomicString::ConstructFromLiteral)); |
332 RefPtrWillBeRawPtr<DateTimeMillisecondFieldElement> field = adoptRefWillBeRe
fCountedGarbageCollected(new DateTimeMillisecondFieldElement(document, fieldOwne
r, range, step)); | 332 RefPtrWillBeRawPtr<DateTimeMillisecondFieldElement> field = adoptRefWillBeNo
op(new DateTimeMillisecondFieldElement(document, fieldOwner, range, step)); |
333 field->initialize(millisecondPsuedoId, queryString(WebLocalizedString::AXMil
lisecondFieldText)); | 333 field->initialize(millisecondPsuedoId, queryString(WebLocalizedString::AXMil
lisecondFieldText)); |
334 return field.release(); | 334 return field.release(); |
335 } | 335 } |
336 | 336 |
337 void DateTimeMillisecondFieldElement::populateDateTimeFieldsState(DateTimeFields
State& dateTimeFieldsState) | 337 void DateTimeMillisecondFieldElement::populateDateTimeFieldsState(DateTimeFields
State& dateTimeFieldsState) |
338 { | 338 { |
339 dateTimeFieldsState.setMillisecond(hasValue() ? valueAsInteger() : DateTimeF
ieldsState::emptyValue); | 339 dateTimeFieldsState.setMillisecond(hasValue() ? valueAsInteger() : DateTimeF
ieldsState::emptyValue); |
340 } | 340 } |
341 | 341 |
342 void DateTimeMillisecondFieldElement::setValueAsDate(const DateComponents& date) | 342 void DateTimeMillisecondFieldElement::setValueAsDate(const DateComponents& date) |
(...skipping 20 matching lines...) Expand all Loading... |
363 // ---------------------------- | 363 // ---------------------------- |
364 | 364 |
365 DateTimeMinuteFieldElement::DateTimeMinuteFieldElement(Document& document, Field
Owner& fieldOwner, const Range& range, const Step& step) | 365 DateTimeMinuteFieldElement::DateTimeMinuteFieldElement(Document& document, Field
Owner& fieldOwner, const Range& range, const Step& step) |
366 : DateTimeNumericFieldElement(document, fieldOwner, range, Range(0, 59), "--
", step) | 366 : DateTimeNumericFieldElement(document, fieldOwner, range, Range(0, 59), "--
", step) |
367 { | 367 { |
368 } | 368 } |
369 | 369 |
370 PassRefPtrWillBeRawPtr<DateTimeMinuteFieldElement> DateTimeMinuteFieldElement::c
reate(Document& document, FieldOwner& fieldOwner, const Range& range, const Step
& step) | 370 PassRefPtrWillBeRawPtr<DateTimeMinuteFieldElement> DateTimeMinuteFieldElement::c
reate(Document& document, FieldOwner& fieldOwner, const Range& range, const Step
& step) |
371 { | 371 { |
372 DEFINE_STATIC_LOCAL(AtomicString, minutePsuedoId, ("-webkit-datetime-edit-mi
nute-field", AtomicString::ConstructFromLiteral)); | 372 DEFINE_STATIC_LOCAL(AtomicString, minutePsuedoId, ("-webkit-datetime-edit-mi
nute-field", AtomicString::ConstructFromLiteral)); |
373 RefPtrWillBeRawPtr<DateTimeMinuteFieldElement> field = adoptRefWillBeRefCoun
tedGarbageCollected(new DateTimeMinuteFieldElement(document, fieldOwner, range,
step)); | 373 RefPtrWillBeRawPtr<DateTimeMinuteFieldElement> field = adoptRefWillBeNoop(ne
w DateTimeMinuteFieldElement(document, fieldOwner, range, step)); |
374 field->initialize(minutePsuedoId, queryString(WebLocalizedString::AXMinuteFi
eldText)); | 374 field->initialize(minutePsuedoId, queryString(WebLocalizedString::AXMinuteFi
eldText)); |
375 return field.release(); | 375 return field.release(); |
376 } | 376 } |
377 | 377 |
378 void DateTimeMinuteFieldElement::populateDateTimeFieldsState(DateTimeFieldsState
& dateTimeFieldsState) | 378 void DateTimeMinuteFieldElement::populateDateTimeFieldsState(DateTimeFieldsState
& dateTimeFieldsState) |
379 { | 379 { |
380 dateTimeFieldsState.setMinute(hasValue() ? valueAsInteger() : DateTimeFields
State::emptyValue); | 380 dateTimeFieldsState.setMinute(hasValue() ? valueAsInteger() : DateTimeFields
State::emptyValue); |
381 } | 381 } |
382 | 382 |
383 void DateTimeMinuteFieldElement::setValueAsDate(const DateComponents& date) | 383 void DateTimeMinuteFieldElement::setValueAsDate(const DateComponents& date) |
(...skipping 20 matching lines...) Expand all Loading... |
404 // ---------------------------- | 404 // ---------------------------- |
405 | 405 |
406 DateTimeMonthFieldElement::DateTimeMonthFieldElement(Document& document, FieldOw
ner& fieldOwner, const String& placeholder, const Range& range) | 406 DateTimeMonthFieldElement::DateTimeMonthFieldElement(Document& document, FieldOw
ner& fieldOwner, const String& placeholder, const Range& range) |
407 : DateTimeNumericFieldElement(document, fieldOwner, range, Range(1, 12), pla
ceholder) | 407 : DateTimeNumericFieldElement(document, fieldOwner, range, Range(1, 12), pla
ceholder) |
408 { | 408 { |
409 } | 409 } |
410 | 410 |
411 PassRefPtrWillBeRawPtr<DateTimeMonthFieldElement> DateTimeMonthFieldElement::cre
ate(Document& document, FieldOwner& fieldOwner, const String& placeholder, const
Range& range) | 411 PassRefPtrWillBeRawPtr<DateTimeMonthFieldElement> DateTimeMonthFieldElement::cre
ate(Document& document, FieldOwner& fieldOwner, const String& placeholder, const
Range& range) |
412 { | 412 { |
413 DEFINE_STATIC_LOCAL(AtomicString, monthPsuedoId, ("-webkit-datetime-edit-mon
th-field", AtomicString::ConstructFromLiteral)); | 413 DEFINE_STATIC_LOCAL(AtomicString, monthPsuedoId, ("-webkit-datetime-edit-mon
th-field", AtomicString::ConstructFromLiteral)); |
414 RefPtrWillBeRawPtr<DateTimeMonthFieldElement> field = adoptRefWillBeRefCount
edGarbageCollected(new DateTimeMonthFieldElement(document, fieldOwner, placehold
er.isEmpty() ? "--" : placeholder, range)); | 414 RefPtrWillBeRawPtr<DateTimeMonthFieldElement> field = adoptRefWillBeNoop(new
DateTimeMonthFieldElement(document, fieldOwner, placeholder.isEmpty() ? "--" :
placeholder, range)); |
415 field->initialize(monthPsuedoId, queryString(WebLocalizedString::AXMonthFiel
dText)); | 415 field->initialize(monthPsuedoId, queryString(WebLocalizedString::AXMonthFiel
dText)); |
416 return field.release(); | 416 return field.release(); |
417 } | 417 } |
418 | 418 |
419 void DateTimeMonthFieldElement::populateDateTimeFieldsState(DateTimeFieldsState&
dateTimeFieldsState) | 419 void DateTimeMonthFieldElement::populateDateTimeFieldsState(DateTimeFieldsState&
dateTimeFieldsState) |
420 { | 420 { |
421 dateTimeFieldsState.setMonth(hasValue() ? valueAsInteger() : DateTimeFieldsS
tate::emptyValue); | 421 dateTimeFieldsState.setMonth(hasValue() ? valueAsInteger() : DateTimeFieldsS
tate::emptyValue); |
422 } | 422 } |
423 | 423 |
424 void DateTimeMonthFieldElement::setValueAsDate(const DateComponents& date) | 424 void DateTimeMonthFieldElement::setValueAsDate(const DateComponents& date) |
(...skipping 20 matching lines...) Expand all Loading... |
445 // ---------------------------- | 445 // ---------------------------- |
446 | 446 |
447 DateTimeSecondFieldElement::DateTimeSecondFieldElement(Document& document, Field
Owner& fieldOwner, const Range& range, const Step& step) | 447 DateTimeSecondFieldElement::DateTimeSecondFieldElement(Document& document, Field
Owner& fieldOwner, const Range& range, const Step& step) |
448 : DateTimeNumericFieldElement(document, fieldOwner, range, Range(0, 59), "--
", step) | 448 : DateTimeNumericFieldElement(document, fieldOwner, range, Range(0, 59), "--
", step) |
449 { | 449 { |
450 } | 450 } |
451 | 451 |
452 PassRefPtrWillBeRawPtr<DateTimeSecondFieldElement> DateTimeSecondFieldElement::c
reate(Document& document, FieldOwner& fieldOwner, const Range& range, const Step
& step) | 452 PassRefPtrWillBeRawPtr<DateTimeSecondFieldElement> DateTimeSecondFieldElement::c
reate(Document& document, FieldOwner& fieldOwner, const Range& range, const Step
& step) |
453 { | 453 { |
454 DEFINE_STATIC_LOCAL(AtomicString, secondPsuedoId, ("-webkit-datetime-edit-se
cond-field", AtomicString::ConstructFromLiteral)); | 454 DEFINE_STATIC_LOCAL(AtomicString, secondPsuedoId, ("-webkit-datetime-edit-se
cond-field", AtomicString::ConstructFromLiteral)); |
455 RefPtrWillBeRawPtr<DateTimeSecondFieldElement> field = adoptRefWillBeRefCoun
tedGarbageCollected(new DateTimeSecondFieldElement(document, fieldOwner, range,
step)); | 455 RefPtrWillBeRawPtr<DateTimeSecondFieldElement> field = adoptRefWillBeNoop(ne
w DateTimeSecondFieldElement(document, fieldOwner, range, step)); |
456 field->initialize(secondPsuedoId, queryString(WebLocalizedString::AXSecondFi
eldText)); | 456 field->initialize(secondPsuedoId, queryString(WebLocalizedString::AXSecondFi
eldText)); |
457 return field.release(); | 457 return field.release(); |
458 } | 458 } |
459 | 459 |
460 void DateTimeSecondFieldElement::populateDateTimeFieldsState(DateTimeFieldsState
& dateTimeFieldsState) | 460 void DateTimeSecondFieldElement::populateDateTimeFieldsState(DateTimeFieldsState
& dateTimeFieldsState) |
461 { | 461 { |
462 dateTimeFieldsState.setSecond(hasValue() ? valueAsInteger() : DateTimeFields
State::emptyValue); | 462 dateTimeFieldsState.setSecond(hasValue() ? valueAsInteger() : DateTimeFields
State::emptyValue); |
463 } | 463 } |
464 | 464 |
465 void DateTimeSecondFieldElement::setValueAsDate(const DateComponents& date) | 465 void DateTimeSecondFieldElement::setValueAsDate(const DateComponents& date) |
(...skipping 20 matching lines...) Expand all Loading... |
486 // ---------------------------- | 486 // ---------------------------- |
487 | 487 |
488 DateTimeSymbolicMonthFieldElement::DateTimeSymbolicMonthFieldElement(Document& d
ocument, FieldOwner& fieldOwner, const Vector<String>& labels, int minimum, int
maximum) | 488 DateTimeSymbolicMonthFieldElement::DateTimeSymbolicMonthFieldElement(Document& d
ocument, FieldOwner& fieldOwner, const Vector<String>& labels, int minimum, int
maximum) |
489 : DateTimeSymbolicFieldElement(document, fieldOwner, labels, minimum, maximu
m) | 489 : DateTimeSymbolicFieldElement(document, fieldOwner, labels, minimum, maximu
m) |
490 { | 490 { |
491 } | 491 } |
492 | 492 |
493 PassRefPtrWillBeRawPtr<DateTimeSymbolicMonthFieldElement> DateTimeSymbolicMonthF
ieldElement::create(Document& document, FieldOwner& fieldOwner, const Vector<Str
ing>& labels, int minimum, int maximum) | 493 PassRefPtrWillBeRawPtr<DateTimeSymbolicMonthFieldElement> DateTimeSymbolicMonthF
ieldElement::create(Document& document, FieldOwner& fieldOwner, const Vector<Str
ing>& labels, int minimum, int maximum) |
494 { | 494 { |
495 DEFINE_STATIC_LOCAL(AtomicString, monthPsuedoId, ("-webkit-datetime-edit-mon
th-field", AtomicString::ConstructFromLiteral)); | 495 DEFINE_STATIC_LOCAL(AtomicString, monthPsuedoId, ("-webkit-datetime-edit-mon
th-field", AtomicString::ConstructFromLiteral)); |
496 RefPtrWillBeRawPtr<DateTimeSymbolicMonthFieldElement> field = adoptRefWillBe
RefCountedGarbageCollected(new DateTimeSymbolicMonthFieldElement(document, field
Owner, labels, minimum, maximum)); | 496 RefPtrWillBeRawPtr<DateTimeSymbolicMonthFieldElement> field = adoptRefWillBe
Noop(new DateTimeSymbolicMonthFieldElement(document, fieldOwner, labels, minimum
, maximum)); |
497 field->initialize(monthPsuedoId, queryString(WebLocalizedString::AXMonthFiel
dText)); | 497 field->initialize(monthPsuedoId, queryString(WebLocalizedString::AXMonthFiel
dText)); |
498 return field.release(); | 498 return field.release(); |
499 } | 499 } |
500 | 500 |
501 void DateTimeSymbolicMonthFieldElement::populateDateTimeFieldsState(DateTimeFiel
dsState& dateTimeFieldsState) | 501 void DateTimeSymbolicMonthFieldElement::populateDateTimeFieldsState(DateTimeFiel
dsState& dateTimeFieldsState) |
502 { | 502 { |
503 if (!hasValue()) | 503 if (!hasValue()) |
504 dateTimeFieldsState.setMonth(DateTimeFieldsState::emptyValue); | 504 dateTimeFieldsState.setMonth(DateTimeFieldsState::emptyValue); |
505 ASSERT(valueAsInteger() < static_cast<int>(symbolsSize())); | 505 ASSERT(valueAsInteger() < static_cast<int>(symbolsSize())); |
506 dateTimeFieldsState.setMonth(valueAsInteger() + 1); | 506 dateTimeFieldsState.setMonth(valueAsInteger() + 1); |
(...skipping 23 matching lines...) Expand all Loading... |
530 // ---------------------------- | 530 // ---------------------------- |
531 | 531 |
532 DateTimeWeekFieldElement::DateTimeWeekFieldElement(Document& document, FieldOwne
r& fieldOwner, const Range& range) | 532 DateTimeWeekFieldElement::DateTimeWeekFieldElement(Document& document, FieldOwne
r& fieldOwner, const Range& range) |
533 : DateTimeNumericFieldElement(document, fieldOwner, range, Range(DateCompone
nts::minimumWeekNumber, DateComponents::maximumWeekNumber), "--") | 533 : DateTimeNumericFieldElement(document, fieldOwner, range, Range(DateCompone
nts::minimumWeekNumber, DateComponents::maximumWeekNumber), "--") |
534 { | 534 { |
535 } | 535 } |
536 | 536 |
537 PassRefPtrWillBeRawPtr<DateTimeWeekFieldElement> DateTimeWeekFieldElement::creat
e(Document& document, FieldOwner& fieldOwner, const Range& range) | 537 PassRefPtrWillBeRawPtr<DateTimeWeekFieldElement> DateTimeWeekFieldElement::creat
e(Document& document, FieldOwner& fieldOwner, const Range& range) |
538 { | 538 { |
539 DEFINE_STATIC_LOCAL(AtomicString, weekPsuedoId, ("-webkit-datetime-edit-week
-field", AtomicString::ConstructFromLiteral)); | 539 DEFINE_STATIC_LOCAL(AtomicString, weekPsuedoId, ("-webkit-datetime-edit-week
-field", AtomicString::ConstructFromLiteral)); |
540 RefPtrWillBeRawPtr<DateTimeWeekFieldElement> field = adoptRefWillBeRefCounte
dGarbageCollected(new DateTimeWeekFieldElement(document, fieldOwner, range)); | 540 RefPtrWillBeRawPtr<DateTimeWeekFieldElement> field = adoptRefWillBeNoop(new
DateTimeWeekFieldElement(document, fieldOwner, range)); |
541 field->initialize(weekPsuedoId, queryString(WebLocalizedString::AXWeekOfYear
FieldText)); | 541 field->initialize(weekPsuedoId, queryString(WebLocalizedString::AXWeekOfYear
FieldText)); |
542 return field.release(); | 542 return field.release(); |
543 } | 543 } |
544 | 544 |
545 void DateTimeWeekFieldElement::populateDateTimeFieldsState(DateTimeFieldsState&
dateTimeFieldsState) | 545 void DateTimeWeekFieldElement::populateDateTimeFieldsState(DateTimeFieldsState&
dateTimeFieldsState) |
546 { | 546 { |
547 dateTimeFieldsState.setWeekOfYear(hasValue() ? valueAsInteger() : DateTimeFi
eldsState::emptyValue); | 547 dateTimeFieldsState.setWeekOfYear(hasValue() ? valueAsInteger() : DateTimeFi
eldsState::emptyValue); |
548 } | 548 } |
549 | 549 |
550 void DateTimeWeekFieldElement::setValueAsDate(const DateComponents& date) | 550 void DateTimeWeekFieldElement::setValueAsDate(const DateComponents& date) |
(...skipping 24 matching lines...) Expand all Loading... |
575 , m_minIsSpecified(parameters.minIsSpecified) | 575 , m_minIsSpecified(parameters.minIsSpecified) |
576 , m_maxIsSpecified(parameters.maxIsSpecified) | 576 , m_maxIsSpecified(parameters.maxIsSpecified) |
577 { | 577 { |
578 ASSERT(parameters.minimumYear >= DateComponents::minimumYear()); | 578 ASSERT(parameters.minimumYear >= DateComponents::minimumYear()); |
579 ASSERT(parameters.maximumYear <= DateComponents::maximumYear()); | 579 ASSERT(parameters.maximumYear <= DateComponents::maximumYear()); |
580 } | 580 } |
581 | 581 |
582 PassRefPtrWillBeRawPtr<DateTimeYearFieldElement> DateTimeYearFieldElement::creat
e(Document& document, FieldOwner& fieldOwner, const DateTimeYearFieldElement::Pa
rameters& parameters) | 582 PassRefPtrWillBeRawPtr<DateTimeYearFieldElement> DateTimeYearFieldElement::creat
e(Document& document, FieldOwner& fieldOwner, const DateTimeYearFieldElement::Pa
rameters& parameters) |
583 { | 583 { |
584 DEFINE_STATIC_LOCAL(AtomicString, yearPsuedoId, ("-webkit-datetime-edit-year
-field", AtomicString::ConstructFromLiteral)); | 584 DEFINE_STATIC_LOCAL(AtomicString, yearPsuedoId, ("-webkit-datetime-edit-year
-field", AtomicString::ConstructFromLiteral)); |
585 RefPtrWillBeRawPtr<DateTimeYearFieldElement> field = adoptRefWillBeRefCounte
dGarbageCollected(new DateTimeYearFieldElement(document, fieldOwner, parameters)
); | 585 RefPtrWillBeRawPtr<DateTimeYearFieldElement> field = adoptRefWillBeNoop(new
DateTimeYearFieldElement(document, fieldOwner, parameters)); |
586 field->initialize(yearPsuedoId, queryString(WebLocalizedString::AXYearFieldT
ext)); | 586 field->initialize(yearPsuedoId, queryString(WebLocalizedString::AXYearFieldT
ext)); |
587 return field.release(); | 587 return field.release(); |
588 } | 588 } |
589 | 589 |
590 static int currentFullYear() | 590 static int currentFullYear() |
591 { | 591 { |
592 double current = currentTimeMS(); | 592 double current = currentTimeMS(); |
593 double utcOffset = calculateUTCOffset(); | 593 double utcOffset = calculateUTCOffset(); |
594 double dstOffset = calculateDSTOffset(current, utcOffset); | 594 double dstOffset = calculateDSTOffset(current, utcOffset); |
595 int offset = static_cast<int>((utcOffset + dstOffset) / msPerMinute); | 595 int offset = static_cast<int>((utcOffset + dstOffset) / msPerMinute); |
(...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
632 setValueAsInteger(value); | 632 setValueAsInteger(value); |
633 return; | 633 return; |
634 } | 634 } |
635 | 635 |
636 setEmptyValue(); | 636 setEmptyValue(); |
637 } | 637 } |
638 | 638 |
639 } // namespace WebCore | 639 } // namespace WebCore |
640 | 640 |
641 #endif | 641 #endif |
OLD | NEW |