From 6149a1f7d63a9d8149dbe4ef6ecf5af2beef172c Mon Sep 17 00:00:00 2001 From: Vladimir Enchev Date: Fri, 20 Mar 2015 10:44:05 +0200 Subject: [PATCH 1/4] background-image css property added --- ui/styling/style.ts | 37 ++++++++++++++++++++++++++++++----- ui/styling/stylers.android.ts | 27 +++++++++++++++++++++++++ ui/styling/stylers.ios.ts | 29 +++++++++++++++++++++++++++ 3 files changed, 88 insertions(+), 5 deletions(-) diff --git a/ui/styling/style.ts b/ui/styling/style.ts index 78743a2cf..40f82fde1 100644 --- a/ui/styling/style.ts +++ b/ui/styling/style.ts @@ -9,6 +9,7 @@ import stylers = require("ui/styling/stylers"); import styleProperty = require("ui/styling/style-property"); import converters = require("ui/styling/converters"); import enums = require("ui/enums"); +import imageSource = require("image-source"); // key is the property id and value is Dictionary; var _registeredHandlers = {}; @@ -34,6 +35,13 @@ export class Style extends observable.DependencyObservable implements styling.St this._setValue(backgroundColorProperty, value, observable.ValueSource.Local); } + get backgroundImage(): string { + return this._getValue(backgroundImageProperty); + } + set backgroundImage(value: string) { + this._setValue(backgroundImageProperty, value, observable.ValueSource.Local); + } + get fontSize(): number { return this._getValue(fontSizeProperty); } @@ -279,9 +287,9 @@ export class Style extends observable.DependencyObservable implements styling.St } } -export function registerHandler(property: dependencyObservable.Property, - handler: styling.stylers.StylePropertyChangedHandler, - className?: string) { +export function registerHandler(property: dependencyObservable.Property, + handler: styling.stylers.StylePropertyChangedHandler, + className?: string) { var realClassName = className ? className : "default"; if (_registeredHandlers.hasOwnProperty(property.id + "")) { _registeredHandlers[property.id][realClassName] = handler; @@ -332,6 +340,25 @@ export var colorProperty = new styleProperty.Property("color", "color", new observable.PropertyMetadata(undefined, observable.PropertyMetadataSettings.Inheritable, undefined, undefined, color.Color.equals), converters.colorConverter); +export var backgroundImageProperty = new styleProperty.Property("backgroundImage", "background-image", + new observable.PropertyMetadata(undefined, observable.PropertyMetadataSettings.None, onBackgroundImagePropertyChanged)); + +function onBackgroundImagePropertyChanged(data: observable.PropertyChangeData) { + var style =