mirror of
https://github.com/NativeScript/NativeScript.git
synced 2025-11-05 13:26:48 +08:00
Merge pull request #1020 from NativeScript/date-time-picker-css-color
DatePicker and TimePicker stylers added
This commit is contained in:
@@ -2,6 +2,8 @@
|
|||||||
import helper = require("../helper");
|
import helper = require("../helper");
|
||||||
import viewModule = require("ui/core/view");
|
import viewModule = require("ui/core/view");
|
||||||
import datePickerTestsNative = require("./date-picker-tests-native");
|
import datePickerTestsNative = require("./date-picker-tests-native");
|
||||||
|
import color = require("color");
|
||||||
|
import platform = require("platform");
|
||||||
|
|
||||||
// <snippet module="ui/date-picker" title="DatePicker">
|
// <snippet module="ui/date-picker" title="DatePicker">
|
||||||
// # DatePicker
|
// # DatePicker
|
||||||
@@ -51,6 +53,18 @@ export function test_DummyForCodeSnippet() {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Supported in iOS only.
|
||||||
|
if (platform.device.os === platform.platformNames.ios) {
|
||||||
|
exports.test_set_color = function () {
|
||||||
|
helper.buildUIAndRunTest(_createDatePicker(), function (views: Array<viewModule.View>) {
|
||||||
|
var datePicker = <datePickerModule.DatePicker>views[0];
|
||||||
|
datePicker.color = new color.Color("red");
|
||||||
|
TKUnit.assertEqual(datePicker.color.ios.CGColor, datePicker.ios.valueForKey("textColor").CGColor, "datePicker.color");
|
||||||
|
});
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
export function test_WhenCreated_YearIsUndefined() {
|
export function test_WhenCreated_YearIsUndefined() {
|
||||||
helper.buildUIAndRunTest(_createDatePicker(), function (views: Array<viewModule.View>) {
|
helper.buildUIAndRunTest(_createDatePicker(), function (views: Array<viewModule.View>) {
|
||||||
var datePicker = <datePickerModule.DatePicker>views[0];
|
var datePicker = <datePickerModule.DatePicker>views[0];
|
||||||
|
|||||||
@@ -2,6 +2,8 @@
|
|||||||
import helper = require("../helper");
|
import helper = require("../helper");
|
||||||
import viewModule = require("ui/core/view");
|
import viewModule = require("ui/core/view");
|
||||||
import timePickerTestsNative = require("./time-picker-tests-native");
|
import timePickerTestsNative = require("./time-picker-tests-native");
|
||||||
|
import color = require("color");
|
||||||
|
import platform = require("platform");
|
||||||
|
|
||||||
// <snippet module="ui/time-picker" title="TimePicker">
|
// <snippet module="ui/time-picker" title="TimePicker">
|
||||||
// # TimePicker
|
// # TimePicker
|
||||||
@@ -44,6 +46,18 @@ export function test_DummyForCodeSnippet() {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Supported in iOS only.
|
||||||
|
if (platform.device.os === platform.platformNames.ios) {
|
||||||
|
exports.test_set_color = function () {
|
||||||
|
helper.buildUIAndRunTest(_createTimePicker(), function (views: Array<viewModule.View>) {
|
||||||
|
var timePicker = <timePickerModule.TimePicker>views[0];
|
||||||
|
timePicker.color = new color.Color("red");
|
||||||
|
TKUnit.assertEqual(timePicker.color.ios.CGColor, timePicker.ios.valueForKey("textColor").CGColor, "timePicker.color");
|
||||||
|
});
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
export function test_WhenCreated_HourIsUndefined() {
|
export function test_WhenCreated_HourIsUndefined() {
|
||||||
helper.buildUIAndRunTest(_createTimePicker(), function (views: Array<viewModule.View>) {
|
helper.buildUIAndRunTest(_createTimePicker(), function (views: Array<viewModule.View>) {
|
||||||
var timePicker = <timePickerModule.TimePicker>views[0];
|
var timePicker = <timePickerModule.TimePicker>views[0];
|
||||||
|
|||||||
@@ -814,6 +814,56 @@ export class TabViewStyler implements definition.stylers.Styler {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export class DatePickerStyler implements definition.stylers.Styler {
|
||||||
|
// color
|
||||||
|
private static setColorProperty(view: view.View, newValue: any) {
|
||||||
|
var picker = <UIDatePicker>view._nativeView;
|
||||||
|
picker.setValueForKey(newValue, "textColor");
|
||||||
|
}
|
||||||
|
|
||||||
|
private static resetColorProperty(view: view.View, nativeValue: any) {
|
||||||
|
var picker = <UIDatePicker>view._nativeView;
|
||||||
|
picker.setValueForKey(nativeValue, "textColor");
|
||||||
|
}
|
||||||
|
|
||||||
|
private static getColorProperty(view: view.View): any {
|
||||||
|
var picker = <UIDatePicker>view._nativeView;
|
||||||
|
return picker.valueForKey("textColor");
|
||||||
|
}
|
||||||
|
|
||||||
|
public static registerHandlers() {
|
||||||
|
style.registerHandler(style.colorProperty, new stylersCommon.StylePropertyChangedHandler(
|
||||||
|
DatePickerStyler.setColorProperty,
|
||||||
|
DatePickerStyler.resetColorProperty,
|
||||||
|
DatePickerStyler.getColorProperty), "DatePicker");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
export class TimePickerStyler implements definition.stylers.Styler {
|
||||||
|
// color
|
||||||
|
private static setColorProperty(view: view.View, newValue: any) {
|
||||||
|
var picker = <UIDatePicker>view._nativeView;
|
||||||
|
picker.setValueForKey(newValue, "textColor");
|
||||||
|
}
|
||||||
|
|
||||||
|
private static resetColorProperty(view: view.View, nativeValue: any) {
|
||||||
|
var picker = <UIDatePicker>view._nativeView;
|
||||||
|
picker.setValueForKey(nativeValue, "textColor");
|
||||||
|
}
|
||||||
|
|
||||||
|
private static getColorProperty(view: view.View): any {
|
||||||
|
var picker = <UIDatePicker>view._nativeView;
|
||||||
|
return picker.valueForKey("textColor");
|
||||||
|
}
|
||||||
|
|
||||||
|
public static registerHandlers() {
|
||||||
|
style.registerHandler(style.colorProperty, new stylersCommon.StylePropertyChangedHandler(
|
||||||
|
TimePickerStyler.setColorProperty,
|
||||||
|
TimePickerStyler.resetColorProperty,
|
||||||
|
TimePickerStyler.getColorProperty), "TimePicker");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
function setTextAlignment(view: TextUIView, value: string) {
|
function setTextAlignment(view: TextUIView, value: string) {
|
||||||
switch (value) {
|
switch (value) {
|
||||||
case enums.TextAlignment.left:
|
case enums.TextAlignment.left:
|
||||||
@@ -846,4 +896,6 @@ export function _registerDefaultStylers() {
|
|||||||
TextFieldStyler.registerHandlers();
|
TextFieldStyler.registerHandlers();
|
||||||
ActivityIndicatorStyler.registerHandlers();
|
ActivityIndicatorStyler.registerHandlers();
|
||||||
SliderStyler.registerHandlers();
|
SliderStyler.registerHandlers();
|
||||||
|
DatePickerStyler.registerHandlers();
|
||||||
|
TimePickerStyler.registerHandlers();
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user