// import * as view from "ui/core/view"; // import * as utils from "utils/utils"; // import * as style from "ui/styling/style"; // import * as font from "ui/styling/font"; // import * as enums from "ui/enums"; // import {device} from "platform"; // export class TextBaseStyler implements style.Styler { // // color // private static setColorProperty(view: view.View, newValue: any) { // (view._nativeView).setTextColor(newValue); // } // private static resetColorProperty(view: view.View, nativeValue: any) { // (view._nativeView).setTextColor(nativeValue); // } // private static getNativeColorValue(view: view.View): any { // return (view._nativeView).getTextColors().getDefaultColor(); // } // // font // private static setFontInternalProperty(view: view.View, newValue: any, nativeValue?: any) { // var tv = view._nativeView; // var fontValue = newValue; // var typeface = fontValue.getAndroidTypeface(); // if (typeface) { // tv.setTypeface(typeface); // } // else { // tv.setTypeface(nativeValue.typeface); // } // if (fontValue.fontSize) { // tv.setTextSize(fontValue.fontSize); // } // else { // tv.setTextSize(android.util.TypedValue.COMPLEX_UNIT_PX, nativeValue.size); // } // } // private static resetFontInternalProperty(view: view.View, nativeValue: any) { // var tv: android.widget.TextView = view._nativeView; // if (tv && nativeValue) { // tv.setTypeface(nativeValue.typeface); // tv.setTextSize(android.util.TypedValue.COMPLEX_UNIT_PX, nativeValue.size); // } // } // private static getNativeFontInternalValue(view: view.View): any { // var tv: android.widget.TextView = view._nativeView; // return { // typeface: tv.getTypeface(), // size: tv.getTextSize() // }; // } // // text-align // private static setTextAlignmentProperty(view: view.View, newValue: any) { // var verticalGravity = view._nativeView.getGravity() & android.view.Gravity.VERTICAL_GRAVITY_MASK; // switch (newValue) { // case enums.TextAlignment.left: // view._nativeView.setGravity(android.view.Gravity.LEFT | verticalGravity); // break; // case enums.TextAlignment.center: // view._nativeView.setGravity(android.view.Gravity.CENTER_HORIZONTAL | verticalGravity); // break; // case enums.TextAlignment.right: // view._nativeView.setGravity(android.view.Gravity.RIGHT | verticalGravity); // break; // default: // break; // } // } // private static resetTextAlignmentProperty(view: view.View, nativeValue: any) { // view._nativeView.setGravity(nativeValue); // } // private static getNativeTextAlignmentValue(view: view.View): any { // return view._nativeView.getGravity(); // } // // text-decoration // private static setTextDecorationProperty(view: view.View, newValue: any) { // utils.ad.setTextDecoration(view._nativeView, newValue); // } // private static resetTextDecorationProperty(view: view.View, nativeValue: any) { // utils.ad.setTextDecoration(view._nativeView, enums.TextDecoration.none); // } // // text-transform // private static setTextTransformProperty(view: view.View, newValue: any) { // utils.ad.setTextTransform(view, newValue); // } // private static resetTextTransformProperty(view: view.View, nativeValue: any) { // utils.ad.setTextTransform(view, enums.TextTransform.none); // } // // white-space // private static setWhiteSpaceProperty(view: view.View, newValue: any) { // utils.ad.setWhiteSpace(view._nativeView, newValue); // } // private static resetWhiteSpaceProperty(view: view.View, nativeValue: any) { // utils.ad.setWhiteSpace(view._nativeView, enums.WhiteSpace.normal); // } // // letter-spacing // private static getLetterSpacingProperty(view: view.View): any { // return view.android.getLetterSpacing(); // } // private static setLetterSpacingProperty(view: view.View, newValue: any) { // view.android.setLetterSpacing(newValue); // } // private static resetLetterSpacingProperty(view: view.View, nativeValue: any) { // view.android.setLetterSpacing(nativeValue); // } // public static registerHandlers() { // style.registerHandler(style.colorProperty, new style.StylePropertyChangedHandler( // TextBaseStyler.setColorProperty, // TextBaseStyler.resetColorProperty, // TextBaseStyler.getNativeColorValue), "TextBase"); // style.registerHandler(style.fontInternalProperty, new style.StylePropertyChangedHandler( // TextBaseStyler.setFontInternalProperty, // TextBaseStyler.resetFontInternalProperty, // TextBaseStyler.getNativeFontInternalValue), "TextBase"); // style.registerHandler(style.textAlignmentProperty, new style.StylePropertyChangedHandler( // TextBaseStyler.setTextAlignmentProperty, // TextBaseStyler.resetTextAlignmentProperty, // TextBaseStyler.getNativeTextAlignmentValue), "TextBase"); // style.registerHandler(style.textDecorationProperty, new style.StylePropertyChangedHandler( // TextBaseStyler.setTextDecorationProperty, // TextBaseStyler.resetTextDecorationProperty), "TextBase"); // style.registerHandler(style.textTransformProperty, new style.StylePropertyChangedHandler( // TextBaseStyler.setTextTransformProperty, // TextBaseStyler.resetTextTransformProperty), "TextBase"); // style.registerHandler(style.whiteSpaceProperty, new style.StylePropertyChangedHandler( // TextBaseStyler.setWhiteSpaceProperty, // TextBaseStyler.resetWhiteSpaceProperty), "TextBase"); // if (parseInt(device.sdkVersion, 10) >= 21) { // style.registerHandler(style.letterSpacingProperty, new style.StylePropertyChangedHandler( // TextBaseStyler.setLetterSpacingProperty, // TextBaseStyler.resetLetterSpacingProperty, // TextBaseStyler.getLetterSpacingProperty), "TextBase"); // } // // !!! IMPORTANT !!! Button registrations were moved to button.android.ts to make sure they // // are executed when there is a Button on the page: https://github.com/NativeScript/NativeScript/issues/1902 // // If there is no TextBase on the Page, the TextBaseStyler.registerHandlers // // method was never called because the file it is called from was never required. // } // }