diff --git a/dist/fayde.d.ts b/dist/fayde.d.ts deleted file mode 100644 index d7de2ab6..00000000 --- a/dist/fayde.d.ts +++ /dev/null @@ -1,6039 +0,0 @@ -declare module Fayde { - var version: string; -} -declare module Fayde { - class ThemedLibrary extends nullstone.Library { - private $$themes; - private $$activeTheme; - private $$activeThemeName; - activeTheme: Theme; - isActiveThemeInvalid: boolean; - loadAsync(): Promise; - protected retrieveTheme(): Promise; - protected ensureThemeLoaded(): Promise; - getTheme(name: string): Theme; - setThemeName(name: string): void; - loadActiveTheme(): Promise; - } -} -declare module Fayde { - class ThemedLibraryResolver extends nullstone.LibraryResolver { - createLibrary(uri: string): nullstone.ILibrary; - } -} -declare module Fayde { - var XMLNS: string; - var XMLNSX: string; - var XMLNSINTERNAL: string; - var Enum: typeof nullstone.Enum; - interface Enum { - new (): nullstone.Enum; - } - var Uri: typeof nullstone.Uri; - interface Uri extends nullstone.Uri { - } - class ResourceTypeManager extends nullstone.TypeManager { - createLibResolver(): nullstone.ILibraryResolver; - resolveResource(uri: Uri): string; - } - var TypeManager: ResourceTypeManager; - var CoreLibrary: nullstone.ILibrary; - var XLibrary: nullstone.ILibrary; - function RegisterType(type: Function, uri: string, name?: string): void; - function RegisterEnum(enu: any, uri: string, name: string): void; - var IType_: nullstone.Interface<{}>; -} -declare module Fayde.Clipboard { - class BasicClipboard implements IClipboard { - CopyText(text: string): void; - GetTextContents(callback: (text: string) => void): void; - } -} -declare module Fayde.Clipboard { - function Create(): IClipboard; -} -declare module Fayde.Clipboard { - interface IClipboard { - CopyText(text: string): any; - GetTextContents(callback: (text: string) => void): any; - } - function memoizePlaceholder(key: string): HTMLDivElement; -} -declare module Fayde.Clipboard { - class NetscapeClipboard implements IClipboard { - private $$fn; - constructor(); - CopyText(text: string): void; - GetTextContents(callback: (text: string) => void): void; - private $$notify; - } -} -declare module Fayde.Collections { - enum CollectionChangedAction { - Add = 1, - Remove = 2, - Replace = 3, - Reset = 4, - } - class CollectionChangedEventArgs implements nullstone.IEventArgs { - Action: CollectionChangedAction; - OldStartingIndex: number; - NewStartingIndex: number; - OldItems: any[]; - NewItems: any[]; - static Reset(allValues: any[]): CollectionChangedEventArgs; - static Replace(newValue: any, oldValue: any, index: number): CollectionChangedEventArgs; - static Add(newValue: any, index: number): CollectionChangedEventArgs; - static AddRange(newValues: any[], index: number): CollectionChangedEventArgs; - static Remove(oldValue: any, index: number): CollectionChangedEventArgs; - } -} -declare module Fayde.Collections { - interface INotifyCollectionChanged { - CollectionChanged: nullstone.Event; - } - var INotifyCollectionChanged_: nullstone.Interface; -} -declare module Fayde { - class PropertyChangedEventArgs implements nullstone.IEventArgs { - PropertyName: string; - constructor(propertyName: string); - } - interface INotifyPropertyChanged { - PropertyChanged: nullstone.Event; - } - var INotifyPropertyChanged_: nullstone.Interface; -} -declare module Fayde.Collections { - class ObservableCollection implements nullstone.IEnumerable, nullstone.ICollection, INotifyCollectionChanged, INotifyPropertyChanged { - private _ht; - getEnumerator(): nullstone.IEnumerator; - CollectionChanged: nullstone.Event; - PropertyChanged: nullstone.Event; - Count: number; - ToArray(): T[]; - GetValueAt(index: number): T; - SetValueAt(index: number, value: T): void; - Add(value: T): void; - AddRange(values: T[]): void; - Insert(index: number, value: T): void; - IndexOf(value: T): number; - Contains(value: T): boolean; - Remove(value: T): boolean; - RemoveAt(index: number): void; - Clear(): void; - private _RaisePropertyChanged(propertyName); - } -} -declare module Fayde.Collections { - class DeepObservableCollection extends ObservableCollection { - ItemPropertyChanged: nullstone.Event>; - constructor(); - private _OnCollectionChanged(sender, e); - private _OnItemPropertyChanged(sender, e); - } -} -declare module Fayde.Collections { - interface IFilterItemFunc { - (item: T): boolean; - } - interface IFilterItemIndexFunc { - (item: T, index: number): boolean; - } - class FilteredCollection extends DeepObservableCollection { - private _Source; - Source: DeepObservableCollection; - private _Filter; - Filter: IFilterItemIndexFunc; - constructor(filter?: IFilterItemFunc, source?: DeepObservableCollection); - constructor(filter?: IFilterItemIndexFunc, source?: DeepObservableCollection); - private _SetSource(source); - private _OnSourceCollectionChanged(sender, e); - private _OnSourceItemPropertyChanged(sender, e); - Update(): void; - } -} -declare module Fayde.Collections { - class ItemPropertyChangedEventArgs extends PropertyChangedEventArgs { - Item: T; - constructor(item: T, propertyName: string); - } -} -declare module Fayde.Collections { - class ReadOnlyObservableCollection implements nullstone.ICollection, INotifyCollectionChanged, INotifyPropertyChanged { - Count: number; - private _Source; - CollectionChanged: nullstone.Event; - PropertyChanged: nullstone.Event; - constructor(source: ObservableCollection); - GetValueAt(index: number): T; - getEnumerator(): nullstone.IEnumerator; - ToArray(): T[]; - IndexOf(value: T): number; - Contains(value: T): boolean; - private _OnCollectionChanged(sender, args); - private _OnPropertyChanged(sender, args); - SetValueAt(index: number, value: T): void; - Insert(index: number, value: T): void; - Add(value: T): void; - Remove(value: T): boolean; - RemoveAt(index: number): void; - Clear(): void; - } -} -declare module Fayde { - interface IIsAttachedMonitor { - Callback: (newIsAttached: boolean) => void; - Detach(): any; - } - class XamlNode { - XObject: XamlObject; - ParentNode: XamlNode; - Name: string; - NameScope: NameScope; - DocNameScope: NameScope; - private IsShareable; - private _OwnerNameScope; - private _LogicalChildren; - private _IAMonitors; - constructor(xobj: XamlObject); - private _DataContext; - DataContext: any; - OnDataContextChanged(oldDataContext: any, newDataContext: any): void; - private _IsEnabled; - IsEnabled: boolean; - OnIsEnabledChanged(oldValue: boolean, newValue: boolean): void; - FindName(name: string, doc?: boolean): XamlNode; - SetName(name: string): void; - FindNameScope(): NameScope; - IsAttached: boolean; - SetIsAttached(value: boolean): void; - OnIsAttachedChanged(newIsAttached: boolean): void; - MonitorIsAttached(func: (newIsAttached: boolean) => void): IIsAttachedMonitor; - AttachTo(parentNode: XamlNode, error: BError): boolean; - Detach(): void; - OnParentChanged(oldParentNode: XamlNode, newParentNode: XamlNode): void; - GetInheritedEnumerator(): nullstone.IEnumerator; - static SetShareable(xn: XamlNode): void; - } -} -declare module Fayde { - class XamlObject implements Providers.IIsPropertyInheritable { - private static _LastID; - private _ID; - XamlNode: Fayde.XamlNode; - TemplateOwner: DependencyObject; - App: Application; - constructor(); - CreateNode(): XamlNode; - Name: string; - Parent: XamlObject; - FindName(name: string, doc?: boolean): XamlObject; - Clone(): XamlObject; - CloneCore(source: XamlObject): void; - IsInheritable(propd: DependencyProperty): boolean; - } -} -declare module Fayde.Providers { - enum PropertyPrecedence { - IsEnabled = 0, - LocalValue = 1, - LocalStyle = 2, - ImplicitStyle = 3, - Inherited = 4, - InheritedDataContext = 5, - DefaultValue = 6, - Lowest = 6, - Highest = 0, - Count = 7, - } - interface IPropertyChangedListener { - Property: DependencyProperty; - OnPropertyChanged(sender: DependencyObject, args: IDependencyPropertyChangedEventArgs): any; - Detach(): any; - } - interface IPropertyStorage { - OwnerNode: DONode; - Property: DependencyProperty; - Precedence: PropertyPrecedence; - Animations: Media.Animation.IAnimationStorage[]; - Local: any; - LocalStyleValue: any; - ImplicitStyleValue: any; - PropListeners: IPropertyChangedListener[]; - } - interface IPropertyStorageOwner { - _PropertyStorage: IPropertyStorage[]; - } - function GetStorage(dobj: DependencyObject, propd: DependencyProperty): IPropertyStorage; - class PropertyStore { - static Instance: PropertyStore; - GetValue(storage: IPropertyStorage): any; - GetValuePrecedence(storage: IPropertyStorage): PropertyPrecedence; - SetLocalValue(storage: Providers.IPropertyStorage, newValue: any): void; - SetLocalStyleValue(storage: IPropertyStorage, newValue: any): void; - SetImplicitStyle(storage: IPropertyStorage, newValue: any): void; - ClearValue(storage: Providers.IPropertyStorage): void; - OnPropertyChanged(storage: IPropertyStorage, effectivePrecedence: PropertyPrecedence, oldValue: any, newValue: any): IDependencyPropertyChangedEventArgs; - ListenToChanged(target: DependencyObject, propd: DependencyProperty, func: (sender, args: IDependencyPropertyChangedEventArgs) => void, closure: any): Providers.IPropertyChangedListener; - CreateStorage(dobj: DependencyObject, propd: DependencyProperty): IPropertyStorage; - Clone(dobj: DependencyObject, sourceStorage: IPropertyStorage): IPropertyStorage; - } -} -declare module Fayde.Providers { - class ImmutableStore extends PropertyStore { - static Instance: ImmutableStore; - GetValue(storage: IPropertyStorage): any; - GetValuePrecedence(storage: IPropertyStorage): PropertyPrecedence; - SetLocalValue(storage: Providers.IPropertyStorage, newValue: any): void; - ClearValue(storage: Providers.IPropertyStorage): void; - ListenToChanged(target: DependencyObject, propd: DependencyProperty, func: (sender, args: IDependencyPropertyChangedEventArgs) => void, closure: any): Providers.IPropertyChangedListener; - Clone(dobj: DependencyObject, sourceStorage: IPropertyStorage): IPropertyStorage; - } -} -interface IOutIsValid { - IsValid: boolean; -} -interface IType { -} -declare class DependencyProperty { - static UnsetValue: {}; - private static _IDs; - private static _LastID; - _ID: number; - Name: string; - GetTargetType: () => IType; - OwnerType: any; - DefaultValue: any; - IsReadOnly: boolean; - IsCustom: boolean; - IsAttached: boolean; - IsInheritable: boolean; - IsImmutable: boolean; - ChangedCallback: (dobj: Fayde.DependencyObject, args: DependencyPropertyChangedEventArgs) => void; - AlwaysChange: boolean; - Store: Fayde.Providers.PropertyStore; - private _Coercer; - private _Validator; - static Register(name: string, getTargetType: () => IType, ownerType: any, defaultValue?: any, changedCallback?: (dobj: Fayde.DependencyObject, args: DependencyPropertyChangedEventArgs) => void): DependencyProperty; - static RegisterReadOnly(name: string, getTargetType: () => IType, ownerType: any, defaultValue?: any, changedCallback?: (dobj: Fayde.DependencyObject, args: DependencyPropertyChangedEventArgs) => void): DependencyProperty; - static RegisterAttached(name: string, getTargetType: () => IType, ownerType: any, defaultValue?: any, changedCallback?: (dobj: Fayde.DependencyObject, args: DependencyPropertyChangedEventArgs) => void): DependencyProperty; - static RegisterCore(name: string, getTargetType: () => IType, ownerType: any, defaultValue?: any, changedCallback?: (dobj: Fayde.DependencyObject, args: DependencyPropertyChangedEventArgs) => void): DependencyProperty; - static RegisterReadOnlyCore(name: string, getTargetType: () => IType, ownerType: any, defaultValue?: any, changedCallback?: (dobj: Fayde.DependencyObject, args: DependencyPropertyChangedEventArgs) => void): DependencyProperty; - static RegisterAttachedCore(name: string, getTargetType: () => IType, ownerType: any, defaultValue?: any, changedCallback?: (dobj: Fayde.DependencyObject, args: DependencyPropertyChangedEventArgs) => void): DependencyProperty; - static RegisterImmutable(name: string, getTargetType: () => IType, ownerType: any): ImmutableDependencyProperty; - static RegisterInheritable(name: string, getTargetType: () => IType, ownerType: any, defaultValue?: any, changedCallback?: (dobj: Fayde.DependencyObject, args: DependencyPropertyChangedEventArgs) => void): DependencyProperty; - static RegisterFull(name: string, getTargetType: () => IType, ownerType: any, defaultValue?: any, changedCallback?: (dobj: Fayde.DependencyObject, args: DependencyPropertyChangedEventArgs) => void, coercer?: (dobj: Fayde.DependencyObject, propd: DependencyProperty, value: any) => any, alwaysChange?: boolean, validator?: (dobj: Fayde.DependencyObject, propd: DependencyProperty, value: any) => boolean, isCustom?: boolean, isReadOnly?: boolean, isAttached?: boolean): DependencyProperty; - private FinishRegister(); - ExtendTo(type: any): DependencyProperty; - ValidateSetValue(dobj: Fayde.DependencyObject, value: any, isValidOut: IOutIsValid): any; - static GetDependencyProperty(ownerType: any, name: string, noError?: boolean): DependencyProperty; -} -declare class ImmutableDependencyProperty extends DependencyProperty { - IsImmutable: boolean; - Initialize(dobj: Fayde.DependencyObject): T; -} -declare module Fayde.Providers { - interface IDataContextStorage extends IPropertyStorage { - InheritedValue: any; - } - class DataContextStore extends PropertyStore { - static Instance: DataContextStore; - GetValue(storage: IDataContextStorage): any; - GetValuePrecedence(storage: IDataContextStorage): PropertyPrecedence; - OnInheritedChanged(storage: IDataContextStorage, newInherited?: any): void; - CreateStorage(dobj: DependencyObject, propd: DependencyProperty): IDataContextStorage; - OnPropertyChanged(storage: IDataContextStorage, effectivePrecedence: PropertyPrecedence, oldValue: any, newValue: any): IDependencyPropertyChangedEventArgs; - private TryUpdateDataContextExpression(storage, newDataContext); - } -} -declare module Fayde { - interface IDPReactionCallback { - (dobj: DependencyObject, ov: T, nv: T): void; - } - function DPReaction(propd: DependencyProperty, callback?: IDPReactionCallback, listen?: boolean): void; -} -declare module Fayde { - function Incite(obj: any, val?: any): void; - function ReactTo(obj: any, scope: any, changed: (val?: any) => any): void; - function UnreactTo(obj: any, scope: any): void; -} -declare module Fayde { - class DONode extends XamlNode { - XObject: DependencyObject; - constructor(xobj: DependencyObject); - OnParentChanged(oldParentNode: XamlNode, newParentNode: XamlNode): void; - DataContext: any; - OnDataContextChanged(oldDataContext: any, newDataContext: any): void; - } - class DependencyObject extends XamlObject implements ICloneable, Providers.IPropertyStorageOwner { - private _Expressions; - _PropertyStorage: Providers.IPropertyStorage[]; - static DataContextProperty: DependencyProperty; - DataContext: any; - constructor(); - XamlNode: DONode; - CreateNode(): DONode; - GetValue(propd: DependencyProperty): any; - SetValue(propd: DependencyProperty, value: any): void; - SetValueInternal(propd: DependencyProperty, value: any): void; - SetCurrentValue(propd: DependencyProperty, value: any): void; - ClearValue(propd: DependencyProperty): void; - ReadLocalValue(propd: DependencyProperty): any; - ReadLocalValueInternal(propd: DependencyProperty): any; - private _AddExpression(propd, expr); - private _RemoveExpression(propd); - _HasDeferredValueExpression(propd: DependencyProperty): boolean; - GetBindingExpression(propd: DependencyProperty): Data.BindingExpressionBase; - HasValueOrExpression(propd: DependencyProperty): boolean; - SetBinding(propd: DependencyProperty, binding: Data.Binding): Data.BindingExpressionBase; - CloneCore(source: DependencyObject): void; - ListenToChanged(propd: DependencyProperty, func: (sender, args: IDependencyPropertyChangedEventArgs) => void, closure?: any): Providers.IPropertyChangedListener; - } -} -declare module Fayde { - interface IUIReactionCallback { - (updater: minerva.core.Updater, ov: T, nv: T, uie?: UIElement): void; - } - function UIReaction(propd: DependencyProperty, callback?: IUIReactionCallback, listen?: boolean, sync?: (src: TValue, dest: TValue) => void, instance?: any): any; - function UIReaction(propd: DependencyProperty, callback?: IUIReactionCallback, listen?: boolean, sync?: boolean, instance?: any): any; -} -declare module Fayde { - function UIReactionAttached(propd: DependencyProperty, callback?: IUIReactionCallback): void; -} -declare module Fayde.Providers { - interface IInheritedStorage extends IPropertyStorage { - InheritedValue: any; - } - interface IIsPropertyInheritable { - IsInheritable(propd: DependencyProperty): boolean; - } - class InheritedStore extends PropertyStore { - static Instance: InheritedStore; - GetValue(storage: IInheritedStorage): any; - GetValuePrecedence(storage: IInheritedStorage): PropertyPrecedence; - OnPropertyChanged(storage: IPropertyStorage, effectivePrecedence: PropertyPrecedence, oldValue: any, newValue: any): IDependencyPropertyChangedEventArgs; - CreateStorage(dobj: DependencyObject, propd: DependencyProperty): IInheritedStorage; - static PropagateInheritedOnAdd(dobj: DependencyObject, subtreeNode: DONode): void; - static ClearInheritedOnRemove(dobj: DependencyObject, subtreeNode: DONode): void; - private Propagate(ownerNode, propd, newValue); - private SetInheritedValue(don, propd, newValue); - } -} -declare module Fayde { - enum Orientation { - Horizontal = 0, - Vertical = 1, - } - enum Visibility { - Visible = 0, - Collapsed = 1, - } - enum CursorType { - Default = 0, - Hand = 1, - IBeam = 2, - Wait = 3, - SizeNESW = 4, - SizeNWSE = 5, - SizeNS = 6, - SizeWE = 7, - } - var CursorTypeMappings: { - Default: string; - Hand: string; - IBeam: string; - Wait: string; - SizeNESW: string; - SizeNWSE: string; - SizeNS: string; - SizeWE: string; - }; - enum HorizontalAlignment { - Left = 0, - Center = 1, - Right = 2, - Stretch = 3, - } - enum VerticalAlignment { - Top = 0, - Center = 1, - Bottom = 2, - Stretch = 3, - } - enum FlowDirection { - LeftToRight = 0, - RightToLeft = 1, - } - enum FontWeight { - Thin = 100, - ExtraLight = 200, - Light = 300, - Normal = 400, - Medium = 500, - SemiBold = 600, - Bold = 700, - ExtraBold = 800, - Black = 900, - ExtraBlack = 950, - } - enum TextAlignment { - Left = 0, - Center = 1, - Right = 2, - Justify = 3, - } - enum TextDecorations { - None = 0, - Underline = 1, - } - enum LineStackingStrategy { - MaxHeight = 0, - BlockLineHeight = 1, - } -} -declare module Fayde { - var FontStyle: { - Normal: string; - Italic: string; - Oblique: string; - }; - var FontStretch: { - UltraCondensed: string; - ExtraCondensed: string; - Condensed: string; - SemiCondensed: string; - Normal: string; - SemiExpanded: string; - Expanded: string; - ExtraExpanded: string; - UltraExpanded: string; - }; - var Font: typeof minerva.Font; -} -declare module Fayde { - class InheritableOwner { - static UseLayoutRoundingProperty: DependencyProperty; - static FlowDirectionProperty: DependencyProperty; - static ForegroundProperty: DependencyProperty; - static FontFamilyProperty: DependencyProperty; - static FontSizeProperty: DependencyProperty; - static FontStretchProperty: DependencyProperty; - static FontStyleProperty: DependencyProperty; - static FontWeightProperty: DependencyProperty; - static TextDecorationsProperty: DependencyProperty; - static LanguageProperty: DependencyProperty; - static AllInheritedProperties: DependencyProperty[]; - } -} -declare module Fayde { - class UINode extends DONode { - XObject: UIElement; - LayoutUpdater: minerva.core.Updater; - IsMouseOver: boolean; - constructor(xobj: UIElement); - VisualParentNode: UINode; - GetVisualRoot(): UINode; - IsLoaded: boolean; - SetIsLoaded(value: boolean): void; - OnVisualChildAttached(uie: UIElement): void; - OnVisualChildDetached(uie: UIElement): void; - private SetVisualParentNode(visualParentNode); - Focus(recurse?: boolean): boolean; - _EmitFocusChange(type: string): void; - private _EmitLostFocus(); - private _EmitGotFocus(); - _EmitKeyDown(args: Fayde.Input.KeyEventArgs): void; - _EmitKeyUp(args: Fayde.Input.KeyEventArgs): void; - _EmitLostMouseCapture(pos: Point): void; - _EmitMouseEvent(type: Input.MouseInputType, isLeftButton: boolean, isRightButton: boolean, args: Input.MouseEventArgs): boolean; - _EmitTouchEvent(type: Input.TouchInputType, args: Input.TouchEventArgs): boolean; - _EmitGotTouchCapture(e: Input.TouchEventArgs): void; - _EmitLostTouchCapture(e: Input.TouchEventArgs): void; - CanCaptureMouse(): boolean; - CaptureMouse(): boolean; - ReleaseMouseCapture(): void; - IsAncestorOf(uin: UINode): boolean; - TransformToVisual(uin?: UINode): Media.GeneralTransform; - } - class UIElement extends DependencyObject implements Providers.IIsPropertyInheritable { - XamlNode: UINode; - CreateNode(): UINode; - CreateLayoutUpdater(): minerva.core.Updater; - IsItemsControl: boolean; - VisualParent: UIElement; - static AllowDropProperty: DependencyProperty; - static CacheModeProperty: DependencyProperty; - static ClipProperty: DependencyProperty; - static EffectProperty: DependencyProperty; - static IsHitTestVisibleProperty: DependencyProperty; - static OpacityMaskProperty: DependencyProperty; - static OpacityProperty: DependencyProperty; - static RenderTransformProperty: DependencyProperty; - static RenderTransformOriginProperty: DependencyProperty; - static TagProperty: DependencyProperty; - static TriggersProperty: DependencyProperty; - static UseLayoutRoundingProperty: DependencyProperty; - static VisibilityProperty: DependencyProperty; - IsInheritable(propd: DependencyProperty): boolean; - IsMouseOver: boolean; - DesiredSize: minerva.Size; - RenderSize: minerva.Size; - Clip: Media.Geometry; - Effect: Media.Effects.Effect; - IsHitTestVisible: boolean; - Cursor: CursorType; - OpacityMask: Media.Brush; - Opacity: number; - RenderTransform: Media.Transform; - RenderTransformOrigin: Point; - Tag: any; - Triggers: TriggerCollection; - UseLayoutRounding: boolean; - Visibility: Visibility; - Focus(): boolean; - CaptureMouse(): boolean; - ReleaseMouseCapture(): void; - IsAncestorOf(uie: UIElement): boolean; - TransformToVisual(uie: UIElement): Media.GeneralTransform; - InvalidateMeasure(): void; - Measure(availableSize: minerva.Size): void; - InvalidateArrange(): void; - Arrange(finalRect: minerva.Rect): void; - LostFocus: RoutedEvent; - GotFocus: RoutedEvent; - LostMouseCapture: RoutedEvent; - KeyDown: RoutedEvent; - KeyUp: RoutedEvent; - MouseLeftButtonUp: RoutedEvent; - MouseRightButtonUp: RoutedEvent; - MouseLeftButtonDown: RoutedEvent; - MouseRightButtonDown: RoutedEvent; - MouseLeave: RoutedEvent; - MouseEnter: RoutedEvent; - MouseMove: RoutedEvent; - MouseWheel: RoutedEvent; - TouchDown: RoutedEvent; - TouchUp: RoutedEvent; - TouchEnter: RoutedEvent; - TouchLeave: RoutedEvent; - TouchMove: RoutedEvent; - GotTouchCapture: RoutedEvent; - LostTouchCapture: RoutedEvent; - OnGotFocus(e: RoutedEventArgs): void; - OnLostFocus(e: RoutedEventArgs): void; - OnLostMouseCapture(e: Input.MouseEventArgs): void; - OnKeyDown(e: Input.KeyEventArgs): void; - OnKeyUp(e: Input.KeyEventArgs): void; - OnMouseEnter(e: Input.MouseEventArgs): void; - OnMouseLeave(e: Input.MouseEventArgs): void; - OnMouseLeftButtonDown(e: Input.MouseButtonEventArgs): void; - OnMouseLeftButtonUp(e: Input.MouseButtonEventArgs): void; - OnMouseMove(e: Input.MouseEventArgs): void; - OnMouseRightButtonDown(e: Input.MouseButtonEventArgs): void; - OnMouseRightButtonUp(e: Input.MouseButtonEventArgs): void; - OnMouseWheel(e: Input.MouseWheelEventArgs): void; - OnTouchDown(e: Input.TouchEventArgs): void; - OnTouchUp(e: Input.TouchEventArgs): void; - OnTouchEnter(e: Input.TouchEventArgs): void; - OnTouchLeave(e: Input.TouchEventArgs): void; - OnTouchMove(e: Input.TouchEventArgs): void; - OnGotTouchCapture(e: Input.TouchEventArgs): void; - OnLostTouchCapture(e: Input.TouchEventArgs): void; - private _TriggersChanged(args); - } -} -declare module Fayde.Providers { - class ResourcesStore extends PropertyStore { - static Instance: ResourcesStore; - GetValue(storage: IPropertyStorage): ResourceDictionary; - GetValuePrecedence(storage: IPropertyStorage): PropertyPrecedence; - SetLocalValue(storage: Providers.IPropertyStorage, newValue: number): void; - SetLocalStyleValue(storage: IPropertyStorage, newValue: any): void; - SetImplicitStyle(storage: IPropertyStorage, newValue: any): void; - ClearValue(storage: Providers.IPropertyStorage, notifyListeners?: boolean): void; - } -} -declare module Fayde.Providers { - class ActualSizeStore extends PropertyStore { - static Instance: ActualSizeStore; - GetValue(storage: IPropertyStorage): number; - GetValuePrecedence(storage: IPropertyStorage): PropertyPrecedence; - SetLocalValue(storage: Providers.IPropertyStorage, newValue: number): void; - SetLocalStyleValue(storage: IPropertyStorage, newValue: any): void; - SetImplicitStyle(storage: IPropertyStorage, newValue: any): void; - ClearValue(storage: Providers.IPropertyStorage, notifyListeners?: boolean): void; - } -} -declare module Fayde { - class FENode extends UINode implements Providers.IStyleHolder, Providers.IImplicitStyleHolder { - _LocalStyle: Style; - _ImplicitStyles: Style[]; - _StyleMask: number; - XObject: FrameworkElement; - constructor(xobj: FrameworkElement); - SubtreeNode: XamlNode; - SetSubtreeNode(subtreeNode: XamlNode, error: BError): boolean; - GetInheritedEnumerator(): nullstone.IEnumerator; - GetVisualTreeEnumerator(): nullstone.IEnumerator; - SetIsLoaded(value: boolean): void; - OnIsLoadedChanged(newIsLoaded: boolean): void; - InvokeLoaded(): void; - AttachVisualChild(uie: UIElement, error: BError): boolean; - DetachVisualChild(uie: UIElement, error: BError): boolean; - ApplyTemplateWithError(error: BError): boolean; - DoApplyTemplateWithError(error: BError): boolean; - FinishApplyTemplateWithError(uie: UIElement, error: BError): boolean; - UpdateLayout(): void; - static DetachFromVisualParent(xobj: UIElement): void; - } - class FrameworkElement extends UIElement implements IResourcable, Providers.IIsPropertyInheritable { - XamlNode: FENode; - CreateNode(): FENode; - static ActualHeightProperty: DependencyProperty; - static ActualWidthProperty: DependencyProperty; - static CursorProperty: DependencyProperty; - static FlowDirectionProperty: DependencyProperty; - static HeightProperty: DependencyProperty; - static HorizontalAlignmentProperty: DependencyProperty; - static LanguageProperty: DependencyProperty; - static MarginProperty: DependencyProperty; - static MaxHeightProperty: DependencyProperty; - static MaxWidthProperty: DependencyProperty; - static MinHeightProperty: DependencyProperty; - static MinWidthProperty: DependencyProperty; - static StyleProperty: DependencyProperty; - static VerticalAlignmentProperty: DependencyProperty; - static WidthProperty: DependencyProperty; - static ResourcesProperty: DependencyProperty; - static DefaultStyleKeyProperty: DependencyProperty; - IsInheritable(propd: DependencyProperty): boolean; - ActualHeight: number; - ActualWidth: number; - FlowDirection: FlowDirection; - Height: number; - HorizontalAlignment: HorizontalAlignment; - Language: string; - Margin: Thickness; - MaxWidth: number; - MaxHeight: number; - MinWidth: number; - MinHeight: number; - Style: Style; - VerticalAlignment: VerticalAlignment; - Width: number; - Resources: ResourceDictionary; - DefaultStyleKey: Function; - SizeChanged: RoutedEvent; - Loaded: RoutedEvent; - Unloaded: RoutedEvent; - LayoutUpdated: nullstone.Event; - OnApplyTemplate(): void; - TemplateApplied: nullstone.Event; - OnBindingValidationError(args: Validation.ValidationErrorEventArgs): void; - BindingValidationError: nullstone.Event; - UpdateLayout(): void; - } -} -declare module Fayde.Markup { - interface IContentAnnotation { - (type: Function, prop: DependencyProperty): any; - Get(type: Function): DependencyProperty; - } - var Content: IContentAnnotation; - interface ITextContentAnnotation { - (type: Function, prop: DependencyProperty): any; - Get(type: Function): DependencyProperty; - } - var TextContent: ITextContentAnnotation; -} -declare module Fayde.Controls { - class Border extends FrameworkElement { - CreateLayoutUpdater(): minerva.controls.border.BorderUpdater; - static BackgroundProperty: DependencyProperty; - static BorderBrushProperty: DependencyProperty; - static BorderThicknessProperty: DependencyProperty; - static ChildProperty: DependencyProperty; - static CornerRadiusProperty: DependencyProperty; - static PaddingProperty: DependencyProperty; - Background: Media.Brush; - BorderBrush: Media.Brush; - BorderThickness: minerva.Thickness; - Child: UIElement; - CornerRadius: CornerRadius; - Padding: Thickness; - constructor(); - } -} -declare module Fayde.Providers { - interface IIsEnabledStorage extends IPropertyStorage { - InheritedValue: boolean; - } - class IsEnabledStore extends PropertyStore { - static Instance: IsEnabledStore; - GetValue(storage: IIsEnabledStorage): boolean; - GetValuePrecedence(storage: IIsEnabledStorage): PropertyPrecedence; - SetLocalValue(storage: IIsEnabledStorage, newValue: boolean): void; - OnPropertyChanged(storage: IPropertyStorage, effectivePrecedence: PropertyPrecedence, oldValue: any, newValue: any): IDependencyPropertyChangedEventArgs; - CreateStorage(dobj: DependencyObject, propd: DependencyProperty): IIsEnabledStorage; - EmitInheritedChanged(storage: IIsEnabledStorage, newInherited: boolean): void; - static EmitInheritedChanged(cn: Controls.ControlNode, value: boolean): void; - } -} -declare module Fayde.Input { - enum KeyboardNavigationMode { - Continue = 0, - Once = 1, - Cycle = 2, - None = 3, - Contained = 4, - Local = 5, - } - enum ModifierKeys { - None = 0, - Alt = 1, - Control = 2, - Shift = 4, - Windows = 8, - Apple = 16, - } - interface IModifiersOn { - Shift: boolean; - Ctrl: boolean; - Alt: boolean; - } - class Keyboard { - static Modifiers: ModifierKeys; - static RefreshModifiers(e: Fayde.Input.IModifiersOn): void; - static HasControl(): boolean; - static HasAlt(): boolean; - static HasShift(): boolean; - } -} -declare module Fayde.Controls { - interface IIsEnabledListener { - Callback: (newIsEnabled: boolean) => void; - Detach(): any; - } - class ControlNode extends FENode { - XObject: Control; - TemplateRoot: FrameworkElement; - IsFocused: boolean; - LayoutUpdater: minerva.controls.control.ControlUpdater; - constructor(xobj: Control); - TabTo(): boolean; - ApplyTemplateWithError(error: BError): boolean; - DoApplyTemplateWithError(error: BError): boolean; - GetDefaultVisualTree(): UIElement; - OnIsAttachedChanged(newIsAttached: boolean): void; - OnParentChanged(oldParentNode: XamlNode, newParentNode: XamlNode): void; - OnTemplateChanged(oldTemplate: ControlTemplate, newTemplate: ControlTemplate): void; - IsEnabled: boolean; - OnIsEnabledChanged(oldValue: boolean, newValue: boolean): void; - Focus(recurse?: boolean): boolean; - CanCaptureMouse(): boolean; - } - class Control extends FrameworkElement implements Providers.IIsPropertyInheritable { - XamlNode: ControlNode; - CreateNode(): ControlNode; - CreateLayoutUpdater(): minerva.controls.control.ControlUpdater; - constructor(); - static BackgroundProperty: DependencyProperty; - static BorderBrushProperty: DependencyProperty; - static BorderThicknessProperty: DependencyProperty; - static FontFamilyProperty: DependencyProperty; - static FontSizeProperty: DependencyProperty; - static FontStretchProperty: DependencyProperty; - static FontStyleProperty: DependencyProperty; - static FontWeightProperty: DependencyProperty; - static ForegroundProperty: DependencyProperty; - static HorizontalContentAlignmentProperty: DependencyProperty; - static IsEnabledProperty: DependencyProperty; - static IsTabStopProperty: DependencyProperty; - static PaddingProperty: DependencyProperty; - static TabIndexProperty: DependencyProperty; - static TabNavigationProperty: DependencyProperty; - static TemplateProperty: DependencyProperty; - static VerticalContentAlignmentProperty: DependencyProperty; - IsInheritable(propd: DependencyProperty): boolean; - Background: Media.Brush; - BorderBrush: Media.Brush; - BorderThickness: Thickness; - FontFamily: string; - FontSize: number; - FontStretch: string; - FontStyle: string; - FontWeight: FontWeight; - Foreground: Media.Brush; - HorizontalContentAlignment: HorizontalAlignment; - IsEnabled: boolean; - IsTabStop: boolean; - Padding: Thickness; - TabIndex: number; - TabNavigation: Input.KeyboardNavigationMode; - Template: ControlTemplate; - VerticalContentAlignment: VerticalAlignment; - IsFocused: boolean; - GetTemplateChild(childName: string, type?: Function): DependencyObject; - ApplyTemplate(): boolean; - GetDefaultStyle(): Style; - IsEnabledChanged: nullstone.Event; - OnIsEnabledChanged(e: IDependencyPropertyChangedEventArgs): void; - OnGotFocus(e: RoutedEventArgs): void; - OnLostFocus(e: RoutedEventArgs): void; - UpdateVisualState(useTransitions?: boolean): void; - GoToStates(gotoFunc: (state: string) => boolean): void; - GoToStateCommon(gotoFunc: (state: string) => boolean): boolean; - GoToStateFocus(gotoFunc: (state: string) => boolean): boolean; - GoToStateSelection(gotoFunc: (state: string) => boolean): boolean; - UpdateValidationState(valid?: boolean): void; - GoToStateValidation(valid: boolean, gotoFunc: (state: string) => boolean): boolean; - } - interface ITemplateVisualStateDefinition { - Name: string; - GroupName: string; - } - var TemplateVisualStates: nullstone.ITypedAnnotation; - interface ITemplatePartDefinition { - Name: string; - Type: Function; - } - var TemplateParts: nullstone.ITypedAnnotation; -} -declare module Fayde.Controls { - class ContentControlNode extends ControlNode { - private _DefaultPresenter; - XObject: ContentControl; - constructor(xobj: ContentControl); - GetDefaultVisualTree(): UIElement; - OnContentChanged(o: any, n: any): void; - OnTemplateChanged(oldTemplate: ControlTemplate, newTemplate: ControlTemplate): void; - private CleanOldContent(content); - } - class ContentControl extends Control { - XamlNode: ContentControlNode; - CreateNode(): ContentControlNode; - static ContentProperty: DependencyProperty; - static ContentTemplateProperty: DependencyProperty; - static ContentUriProperty: DependencyProperty; - Content: any; - ContentTemplate: DataTemplate; - ContentUri: Uri; - private OnContentPropertyChanged(args); - private OnContentUriPropertyChanged(args); - constructor(); - OnContentChanged(oldContent: any, newContent: any): void; - OnContentTemplateChanged(oldContentTemplate: DataTemplate, newContentTemplate: DataTemplate): void; - OnContentUriChanged(oldSourceUri: Uri, newSourceUri: Uri): void; - private _OnLoadedUri(xm); - private _OnErroredUri(err, src); - } -} -declare module Fayde.Controls { - enum TextWrapping { - NoWrap = 0, - Wrap = 1, - WrapWithOverflow = 2, - } - enum ScrollBarVisibility { - Disabled = 0, - Auto = 1, - Hidden = 2, - Visible = 3, - } - enum TextTrimming { - None = 0, - WordEllipsis = 1, - CharacterEllipsis = 2, - } - enum ClickMode { - Release = 0, - Press = 1, - Hover = 2, - } - enum PlacementMode { - Bottom = 0, - Right = 1, - Mouse = 2, - Left = 3, - Top = 4, - } - enum SelectionMode { - Single = 0, - Multiple = 1, - Extended = 2, - } - enum MediaElementState { - Closed = 0, - Opening = 1, - Buffering = 4, - Playing = 5, - Paused = 6, - Stopped = 7, - } - enum SelectionOnFocus { - Unchanged = 0, - SelectAll = 1, - CaretToBeginning = 2, - CaretToEnd = 3, - Default = 4, - DefaultSelectAll = 5, - } -} -declare module Fayde.Controls.Primitives { - class ButtonBase extends ContentControl { - static ClickModeProperty: DependencyProperty; - static IsPressedProperty: DependencyProperty; - static IsFocusedProperty: DependencyProperty; - static CommandProperty: DependencyProperty; - static CommandParameterProperty: DependencyProperty; - ClickMode: ClickMode; - IsPressed: boolean; - IsFocused: boolean; - Command: Input.ICommand; - CommandParameter: any; - Click: RoutedEvent; - private _IsMouseCaptured; - private _TouchCaptures; - private _IsMouseLeftButtonDown; - private _IsSpaceKeyDown; - _MousePosition: Point; - private _SuspendStateChanges; - constructor(); - OnIsPressedChanged(args: IDependencyPropertyChangedEventArgs): void; - OnIsEnabledChanged(e: IDependencyPropertyChangedEventArgs): void; - OnMouseEnter(e: Input.MouseEventArgs): void; - OnMouseLeave(e: Input.MouseEventArgs): void; - OnMouseMove(e: Input.MouseEventArgs): void; - OnMouseLeftButtonDown(e: Input.MouseButtonEventArgs): void; - OnMouseLeftButtonUp(e: Input.MouseButtonEventArgs): void; - OnGotFocus(e: RoutedEventArgs): void; - OnLostFocus(e: RoutedEventArgs): void; - OnTouchMove(e: Input.TouchEventArgs): void; - OnTouchDown(e: Input.TouchEventArgs): void; - OnTouchUp(e: Input.TouchEventArgs): void; - OnClick(): void; - private _DoWithSuspend(action); - UpdateVisualState(useTransitions?: boolean): void; - GoToStateCommon(gotoFunc: (state: string) => boolean): boolean; - private _CaptureMouseInternal(); - private _ReleaseMouseCaptureInternal(); - private _IsValidPosition(pos); - private OnCommandChanged(args); - private OnCommandCanExecuteChanged(sender, e); - private OnCommandParameterChanged(args); - } -} -declare module Fayde.Controls { - class Button extends Primitives.ButtonBase { - constructor(); - OnApplyTemplate(): void; - OnIsEnabledChanged(e: IDependencyPropertyChangedEventArgs): void; - } -} -declare module Fayde { - class XamlObjectCollection extends XamlObject implements nullstone.ICollection { - _ht: Array; - AttachTo(xobj: XamlObject): void; - Count: number; - GetRange(startIndex: number, endIndex: number): T[]; - GetValueAt(index: number): T; - SetValueAt(index: number, value: T): boolean; - Add(value: T): number; - Insert(index: number, value: T): boolean; - Remove(value: T): boolean; - RemoveAt(index: number): boolean; - Clear(): boolean; - IndexOf(value: T): number; - Contains(value: T): boolean; - CanAdd(value: T): boolean; - AddingToCollection(value: T, error: BError): boolean; - RemovedFromCollection(value: T, isValueSafe: boolean): void; - getEnumerator(reverse?: boolean): nullstone.IEnumerator; - GetNodeEnumerator(reverse?: boolean): nullstone.IEnumerator; - _RaiseItemAdded(value: T, index: number): void; - _RaiseItemRemoved(value: T, index: number): void; - _RaiseItemReplaced(removed: T, added: T, index: number): void; - _RaiseCleared(old: T[]): void; - CloneCore(source: XamlObjectCollection): void; - ToArray(): T[]; - } -} -declare module Fayde.Controls { - class PanelNode extends FENode { - LayoutUpdater: minerva.controls.panel.PanelUpdater; - XObject: Panel; - constructor(xobj: Panel); - AttachVisualChild(uie: UIElement, error: BError): boolean; - DetachVisualChild(uie: UIElement, error: BError): boolean; - } - class Panel extends FrameworkElement { - XamlNode: PanelNode; - CreateNode(): PanelNode; - CreateLayoutUpdater(): minerva.controls.panel.PanelUpdater; - static BackgroundProperty: DependencyProperty; - static ChildrenProperty: ImmutableDependencyProperty>; - static ZIndexProperty: DependencyProperty; - static GetZIndex(uie: UIElement): number; - static SetZIndex(uie: UIElement, value: number): void; - Background: Media.Brush; - Children: XamlObjectCollection; - constructor(); - } -} -declare module Fayde.Controls { - class Canvas extends Panel { - CreateLayoutUpdater(): minerva.controls.canvas.CanvasUpdater; - static TopProperty: DependencyProperty; - static GetTop(d: DependencyObject): number; - static SetTop(d: DependencyObject, value: number): void; - static LeftProperty: DependencyProperty; - static GetLeft(d: DependencyObject): number; - static SetLeft(d: DependencyObject, value: number): void; - } -} -declare module Fayde.Controls.Primitives { - class ToggleButton extends ButtonBase { - Checked: RoutedEvent; - Indeterminate: RoutedEvent; - Unchecked: RoutedEvent; - static IsCheckedProperty: DependencyProperty; - static IsThreeStateProperty: DependencyProperty; - IsChecked: boolean; - IsThreeState: boolean; - constructor(); - OnApplyTemplate(): void; - OnContentChanged(oldContent: any, newContent: any): void; - OnClick(): void; - UpdateVisualState(useTransitions?: boolean): void; - OnIsCheckedChanged(args: IDependencyPropertyChangedEventArgs): void; - OnToggle(): void; - } -} -declare module Fayde.Controls { - class CheckBox extends Primitives.ToggleButton { - constructor(); - } -} -declare module Fayde.Controls { - class ColumnDefinition extends DependencyObject implements minerva.controls.grid.IColumnDefinition { - static WidthProperty: DependencyProperty; - static MaxWidthProperty: DependencyProperty; - static MinWidthProperty: DependencyProperty; - static ActualWidthProperty: DependencyProperty; - Width: GridLength; - MaxWidth: number; - MinWidth: number; - ActualWidth: number; - setActualWidth(value: number): void; - } - class ColumnDefinitionCollection extends XamlObjectCollection { - _RaiseItemAdded(value: ColumnDefinition, index: number): void; - _RaiseItemRemoved(value: ColumnDefinition, index: number): void; - } -} -declare module Fayde.Controls { - class ItemsControlNode extends ControlNode { - XObject: ItemsControl; - constructor(xobj: ItemsControl); - ItemsPresenter: ItemsPresenter; - GetDefaultVisualTree(): UIElement; - } - class ItemsControl extends Control { - XamlNode: ItemsControlNode; - CreateNode(): ItemsControlNode; - IsItemsControl: boolean; - static DisplayMemberPathProperty: DependencyProperty; - static ItemsPanelProperty: DependencyProperty; - static ItemsSourceProperty: DependencyProperty; - static ItemsProperty: ImmutableDependencyProperty; - static ItemTemplateProperty: DependencyProperty; - static IsItemsHostProperty: DependencyProperty; - static GetIsItemsHost(d: DependencyObject): boolean; - static SetIsItemsHost(d: DependencyObject, value: boolean): void; - DisplayMemberPath: string; - ItemsPanel: ItemsPanelTemplate; - ItemsSource: nullstone.IEnumerable; - Items: ItemCollection; - ItemTemplate: DataTemplate; - OnDisplayMemberPathChanged(e: IDependencyPropertyChangedEventArgs): void; - OnItemsSourceChanged(e: IDependencyPropertyChangedEventArgs): void; - OnItemTemplateChanged(e: IDependencyPropertyChangedEventArgs): void; - private _ItemContainersManager; - ItemContainersManager: Internal.IItemContainersManager; - constructor(); - PrepareContainerForItem(container: UIElement, item: any): void; - ClearContainerForItem(container: UIElement, item: any): void; - GetContainerForItem(): UIElement; - IsItemItsOwnContainer(item: any): boolean; - private _IsDataBound; - private _SuspendItemsChanged; - private _OnItemsUpdated(sender, e); - private _OnItemsSourceUpdated(sender, e); - OnItemsChanged(e: Collections.CollectionChangedEventArgs): void; - OnItemsAdded(index: number, newItems: any[]): void; - OnItemsRemoved(index: number, oldItems: any[]): void; - private UpdateContainerTemplate(container, item); - private _DisplayMemberTemplate; - private _GetDisplayMemberTemplate(); - } -} -declare module Fayde.Controls.Primitives { - class Selector extends ItemsControl { - static IsSynchronizedWithCurrentItemProperty: DependencyProperty; - static SelectedIndexProperty: DependencyProperty; - static SelectedItemProperty: DependencyProperty; - static SelectedValueProperty: DependencyProperty; - static SelectedValuePathProperty: DependencyProperty; - static IsSelectionActiveProperty: DependencyProperty; - static SelectionModeProperty: DependencyProperty; - IsSynchronizedWithCurrentItem: boolean; - SelectedIndex: number; - SelectedItem: any; - SelectedValue: any; - SelectedValuePath: string; - IsSelectionActive: boolean; - SelectionMode: SelectionMode; - SelectionChanged: RoutedEvent; - private _Selection; - private _SelectedItems; - _SelectedItemsIsInvalid: boolean; - $TemplateScrollViewer: ScrollViewer; - private _SelectedValueWalker; - private SynchronizeWithCurrentItem; - constructor(); - SelectedItems: Collections.ObservableCollection; - private _OnIsSynchronizedWithCurrentItemChanged(args); - private _OnSelectedIndexChanged(args); - private _OnSelectedItemChanged(args); - private _OnSelectedValueChanged(args); - private _OnSelectedValuePathChanged(args); - private _OnSelectionModeChanged(args); - OnApplyTemplate(): void; - OnItemsChanged(e: Collections.CollectionChangedEventArgs): void; - OnItemsSourceChanged(args: IDependencyPropertyChangedEventArgs): void; - OnItemContainerStyleChanged(oldStyle: any, newStyle: any): void; - ClearContainerForItem(element: UIElement, item: any): void; - PrepareContainerForItem(element: UIElement, item: any): void; - _GetValueFromItem(item: any): any; - private _SelectItemFromValue(selectedValue, ignoreSelectedValue?); - SelectAll(): void; - private _OnCurrentItemChanged(sender, e); - _RaiseSelectionChanged(oldVals: any[], newVals: any[]): void; - OnSelectionChanged(args: SelectionChangedEventArgs): void; - NotifyListItemClicked(lbi: ListBoxItem): void; - NotifyListItemLoaded(lbi: ListBoxItem): void; - NotifyListItemGotFocus(lbi: ListBoxItem): void; - NotifyListItemLostFocus(lbi: ListBoxItem): void; - } -} -declare module Fayde.Markup { - import XamlMarkup = nullstone.markup.xaml.XamlMarkup; - function CreateXaml(xaml: string, uri?: string): XamlMarkup; - function CreateXaml(el: Element, uri?: string): XamlMarkup; -} -declare module Fayde.Controls { - class ContentPresenterNode extends FENode { - private _ContentRoot; - ContentRoot: UIElement; - XObject: ContentPresenter; - constructor(xobj: ContentPresenter); - DoApplyTemplateWithError(error: BError): boolean; - ClearRoot(): void; - _ContentChanged(args: IDependencyPropertyChangedEventArgs): void; - _ContentTemplateChanged(): void; - private _ShouldInvalidateImplicitTemplate(oldValue, newValue); - private _GetContentTemplate(type); - } - class ContentPresenter extends FrameworkElement { - XamlNode: ContentPresenterNode; - CreateNode(): ContentPresenterNode; - static ContentProperty: DependencyProperty; - static ContentTemplateProperty: DependencyProperty; - Content: any; - ContentTemplate: DataTemplate; - } -} -declare module Fayde.Controls.Primitives { - import PopupUpdater = minerva.controls.popup.PopupUpdater; - class PopupNode extends FENode { - LayoutUpdater: PopupUpdater; - XObject: Popup; - ClickedOutside: nullstone.Event; - OnIsAttachedChanged(newIsAttached: boolean): void; - private _Overlay; - private _Catcher; - EnsureOverlay(): Canvas; - EnsureCatcher(): Canvas; - UpdateCatcher(): void; - private _RaiseClickedOutside(sender, e); - RegisterInitiator(initiator: UIElement): void; - } - class Popup extends FrameworkElement { - XamlNode: PopupNode; - CreateNode(): PopupNode; - CreateLayoutUpdater(): PopupUpdater; - static ChildProperty: DependencyProperty; - static HorizontalOffsetProperty: DependencyProperty; - static VerticalOffsetProperty: DependencyProperty; - static IsOpenProperty: DependencyProperty; - Child: UIElement; - HorizontalOffset: number; - VerticalOffset: number; - IsOpen: boolean; - Opened: nullstone.Event; - Closed: nullstone.Event; - WatchOutsideClick(callback: () => void, closure: any): void; - } -} -declare module Fayde.Controls.Primitives { - interface IScrollInfo { - ScrollOwner: ScrollViewer; - LineUp(): boolean; - LineDown(): boolean; - LineLeft(): boolean; - LineRight(): boolean; - MouseWheelUp(): boolean; - MouseWheelDown(): boolean; - MouseWheelLeft(): boolean; - MouseWheelRight(): boolean; - PageUp(): boolean; - PageDown(): boolean; - PageLeft(): boolean; - PageRight(): boolean; - MakeVisible(uie: UIElement, rectangle: minerva.Rect): minerva.Rect; - SetHorizontalOffset(offset: number): boolean; - SetVerticalOffset(offset: number): boolean; - CanHorizontallyScroll: boolean; - CanVerticallyScroll: boolean; - ExtentHeight: number; - ExtentWidth: number; - HorizontalOffset: number; - VerticalOffset: number; - ViewportHeight: number; - ViewportWidth: number; - } - var IScrollInfo_: nullstone.Interface; -} -declare module Fayde.Controls { - class ScrollContentPresenter extends ContentPresenter implements Primitives.IScrollInfo { - CreateLayoutUpdater(): minerva.controls.scrollcontentpresenter.ScrollContentPresenterUpdater; - private _ScrollData; - private _IsClipPropertySet; - private _ClippingRectangle; - ScrollOwner: ScrollViewer; - CanHorizontallyScroll: boolean; - CanVerticallyScroll: boolean; - ExtentWidth: number; - ExtentHeight: number; - ViewportWidth: number; - ViewportHeight: number; - HorizontalOffset: number; - VerticalOffset: number; - LineUp(): boolean; - LineDown(): boolean; - LineLeft(): boolean; - LineRight(): boolean; - MouseWheelUp(): boolean; - MouseWheelDown(): boolean; - MouseWheelLeft(): boolean; - MouseWheelRight(): boolean; - PageUp(): boolean; - PageDown(): boolean; - PageLeft(): boolean; - PageRight(): boolean; - MakeVisible(uie: UIElement, viewport: minerva.Rect): minerva.Rect; - SetHorizontalOffset(offset: number): boolean; - SetVerticalOffset(offset: number): boolean; - OnApplyTemplate(): void; - } -} -declare module Fayde.Controls.Primitives { - class RangeBase extends Controls.Control { - static MinimumProperty: DependencyProperty; - static MaximumProperty: DependencyProperty; - static LargeChangeProperty: DependencyProperty; - static SmallChangeProperty: DependencyProperty; - static ValueProperty: DependencyProperty; - Minimum: number; - Maximum: number; - SmallChange: number; - LargeChange: number; - Value: number; - OnMinimumChanged(oldMin: number, newMin: number): void; - OnMaximumChanged(oldMax: number, newMax: number): void; - OnValueChanged(oldVal: number, newVal: number): void; - ValueChanged: RoutedPropertyChangedEvent; - private _Coercer; - constructor(); - } -} -declare module Fayde.Controls.Primitives { - class RepeatButton extends ButtonBase { - static DelayProperty: DependencyProperty; - static IntervalProperty: DependencyProperty; - Delay: number; - Interval: number; - private _KeyboardCausingRepeat; - private _MouseCausingRepeat; - _MousePosition: Point; - private _IntervalID; - private _NewInterval; - constructor(); - OnApplyTemplate(): void; - OnDelayChanged(args: IDependencyPropertyChangedEventArgs): void; - OnIntervalChanged(args: IDependencyPropertyChangedEventArgs): void; - OnIsEnabledChanged(e: IDependencyPropertyChangedEventArgs): void; - OnKeyDown(e: Input.KeyEventArgs): void; - OnKeyUp(e: Input.KeyEventArgs): void; - OnLostFocus(e: RoutedEventArgs): void; - OnMouseEnter(e: Input.MouseEventArgs): void; - OnMouseLeave(e: Input.MouseEventArgs): void; - OnMouseLeftButtonDown(e: Input.MouseButtonEventArgs): void; - OnMouseLeftButtonUp(e: Input.MouseButtonEventArgs): void; - OnMouseMove(e: Input.MouseEventArgs): void; - private _UpdateMousePosition(e); - private _UpdateRepeatState(); - private _StartRepeatingAfterDelay(); - private _OnTimeout(); - } -} -declare module Fayde.Controls.Primitives { - class Thumb extends Control { - private _PreviousPosition; - private _Origin; - DragCompleted: RoutedEvent; - DragDelta: RoutedEvent; - DragStarted: RoutedEvent; - static IsDraggingProperty: DependencyProperty; - static IsFocusedProperty: DependencyProperty; - IsDragging: boolean; - IsFocused: boolean; - constructor(); - OnApplyTemplate(): void; - private OnDraggingChanged(args); - OnGotFocus(e: RoutedEventArgs): void; - OnLostFocus(e: RoutedEventArgs): void; - private _FocusChanged(hasFocus); - OnLostMouseCapture(e: Input.MouseEventArgs): void; - OnMouseEnter(e: Input.MouseEventArgs): void; - OnMouseLeave(e: Input.MouseEventArgs): void; - OnMouseLeftButtonDown(e: Input.MouseButtonEventArgs): void; - OnMouseMove(e: Input.MouseEventArgs): void; - OnLostTouchCapture(e: Input.TouchEventArgs): void; - OnTouchEnter(e: Input.TouchEventArgs): void; - OnTouchLeave(e: Input.TouchEventArgs): void; - OnTouchDown(e: Input.TouchEventArgs): void; - OnTouchUp(e: Input.TouchEventArgs): void; - OnTouchMove(e: Input.TouchEventArgs): void; - CancelDrag(): void; - private _RaiseDragStarted(); - private _RaiseDragDelta(x, y); - private _RaiseDragCompleted(canceled); - GoToStateCommon(gotoFunc: (state: string) => boolean): boolean; - } -} -declare module Fayde.Controls.Primitives { - class ScrollBar extends RangeBase { - private _DragValue; - Scroll: RoutedEvent; - static OrientationProperty: DependencyProperty; - static ViewportSizeProperty: DependencyProperty; - Orientation: Orientation; - ViewportSize: number; - IsDragging: boolean; - constructor(); - private $HorizontalTemplate; - private $HorizontalSmallIncrease; - private $HorizontalSmallDecrease; - private $HorizontalLargeIncrease; - private $HorizontalLargeDecrease; - private $HorizontalThumb; - private $VerticalTemplate; - private $VerticalSmallIncrease; - private $VerticalSmallDecrease; - private $VerticalLargeIncrease; - private $VerticalLargeDecrease; - private $VerticalThumb; - OnApplyTemplate(): void; - OnMaximumChanged(oldMax: number, newMax: number): void; - OnMinimumChanged(oldMin: number, newMin: number): void; - OnValueChanged(oldValue: number, newValue: number): void; - private _OnThumbDragStarted(sender, e); - private _OnThumbDragDelta(sender, e); - private _OnThumbDragCompleted(sender, e); - private _SmallDecrement(sender, e); - private _SmallIncrement(sender, e); - private _LargeDecrement(sender, e); - private _LargeIncrement(sender, e); - private _HandleSizeChanged(sender, e); - private _OnOrientationChanged(); - private _UpdateTrackLayout(); - private _UpdateThumbSize(trackLength); - private _GetTrackLength(); - private _ConvertViewportSizeToDisplayUnits(trackLength); - private _RaiseScroll(type); - } -} -declare module Fayde.Controls { - class ScrollViewer extends ContentControl { - private static _ScrollBarVisibilityChanged(d, args); - static HorizontalScrollBarVisibilityProperty: DependencyProperty; - static GetHorizontalScrollBarVisibility(d: DependencyObject): ScrollBarVisibility; - static SetHorizontalScrollBarVisibility(d: DependencyObject, value: ScrollBarVisibility): void; - HorizontalScrollBarVisibility: ScrollBarVisibility; - static VerticalScrollBarVisibilityProperty: DependencyProperty; - static GetVerticalScrollBarVisibility(d: DependencyObject): ScrollBarVisibility; - static SetVerticalScrollBarVisibility(d: DependencyObject, value: ScrollBarVisibility): void; - VerticalScrollBarVisibility: ScrollBarVisibility; - static ComputedHorizontalScrollBarVisibilityProperty: DependencyProperty; - static ComputedVerticalScrollBarVisibilityProperty: DependencyProperty; - static HorizontalOffsetProperty: DependencyProperty; - static VerticalOffsetProperty: DependencyProperty; - static ScrollableWidthProperty: DependencyProperty; - static ScrollableHeightProperty: DependencyProperty; - static ViewportWidthProperty: DependencyProperty; - static ViewportHeightProperty: DependencyProperty; - static ExtentWidthProperty: DependencyProperty; - static ExtentHeightProperty: DependencyProperty; - ComputedHorizontalScrollBarVisibility: Visibility; - ComputedVerticalScrollBarVisibility: Visibility; - HorizontalOffset: number; - VerticalOffset: number; - ScrollableWidth: number; - ScrollableHeight: number; - ViewportWidth: number; - ViewportHeight: number; - ExtentWidth: number; - ExtentHeight: number; - $TemplatedParentHandlesScrolling: boolean; - $ScrollContentPresenter: ScrollContentPresenter; - private $HorizontalScrollBar; - private $VerticalScrollBar; - constructor(); - private _ScrollInfo; - ScrollInfo: Primitives.IScrollInfo; - InvalidateScrollInfo(): void; - private _UpdateScrollBarVisibility(); - private _UpdateScrollBar(orientation, value); - OnApplyTemplate(): void; - OnMouseLeftButtonDown(e: Input.MouseButtonEventArgs): void; - OnMouseWheel(e: Input.MouseWheelEventArgs): void; - private _TouchOrigin; - private _Delta; - private _TouchInitialOffset; - OnTouchDown(e: Input.TouchEventArgs): void; - OnTouchUp(e: Input.TouchEventArgs): void; - OnTouchMove(e: Input.TouchEventArgs): void; - OnKeyDown(e: Input.KeyEventArgs): void; - ScrollInDirection(key: Input.Key): void; - ScrollToHorizontalOffset(offset: number): void; - ScrollToVerticalOffset(offset: number): void; - LineUp(): void; - LineDown(): void; - LineLeft(): void; - LineRight(): void; - PageHome(): void; - PageEnd(): void; - PageUp(): void; - PageDown(): void; - PageLeft(): void; - PageRight(): void; - private _HandleScroll(orientation, e); - private _HandleHorizontalScroll(e); - private _HandleVerticalScroll(e); - } -} -declare module Fayde.Controls { - class ComboBox extends Primitives.Selector { - DropDownOpened: nullstone.Event<{}>; - DropDownClosed: nullstone.Event<{}>; - static IsDropDownOpenProperty: DependencyProperty; - static ItemContainerStyleProperty: DependencyProperty; - static MaxDropDownHeightProperty: DependencyProperty; - static IsSelectionActiveProperty: DependencyProperty; - IsDropDownOpen: boolean; - ItemContainerStyle: Style; - MaxDropDownHeight: number; - private $ContentPresenter; - private $Popup; - private $DropDownToggle; - private $DisplayedItem; - private $SelectionBoxItem; - private $SelectionBoxItemTemplate; - private _NullSelFallback; - private _FocusedIndex; - constructor(); - private _IsDropDownOpenChanged(args); - private _MaxDropDownHeightChanged(args); - private _GetChildOfType(name, type); - OnApplyTemplate(): void; - OnItemContainerStyleChanged(args: IDependencyPropertyChangedEventArgs): void; - IsItemItsOwnContainer(item: any): boolean; - GetContainerForItem(): UIElement; - PrepareContainerForItem(container: UIElement, item: any): void; - GoToStateFocus(gotoFunc: (state: string) => boolean): boolean; - OnIsEnabledChanged(e: IDependencyPropertyChangedEventArgs): void; - OnMouseLeftButtonDown(e: Input.MouseButtonEventArgs): void; - OnMouseEnter(e: Input.MouseEventArgs): void; - OnMouseLeave(e: Input.MouseEventArgs): void; - OnKeyDown(e: Input.KeyEventArgs): void; - OnGotFocus(e: RoutedEventArgs): void; - OnLostFocus(e: RoutedEventArgs): void; - private _OnChildKeyDown(sender, e); - OnSelectionChanged(e: Primitives.SelectionChangedEventArgs): void; - private _OnToggleChecked(sender, e); - private _OnToggleUnchecked(sender, e); - private _PopupClickedOutside(); - private _UpdateDisplayedItem(selectedItem); - private _UpdatePopupSizeAndPosition(sender, e); - private _UpdatePopupMaxHeight(height); - } -} -declare module Fayde.Controls { - class ListBoxItem extends ContentControl { - private _ParentSelector; - ParentSelector: Primitives.Selector; - ParentSelectorChanged: nullstone.Event<{}>; - static IsSelectedProperty: DependencyProperty; - IsSelected: boolean; - constructor(); - OnApplyTemplate(): void; - OnMouseLeftButtonDown(e: Input.MouseButtonEventArgs): void; - OnMouseEnter(e: Input.MouseEventArgs): void; - OnMouseLeave(e: Input.MouseEventArgs): void; - OnGotFocus(e: RoutedEventArgs): void; - OnLostFocus(e: RoutedEventArgs): void; - GoToStateSelection(gotoFunc: (state: string) => boolean): boolean; - private OnIsSelectedChanged(args); - } -} -declare module Fayde.Controls { - class ComboBoxItem extends ListBoxItem { - constructor(); - OnMouseLeftButtonUp(e: Input.MouseButtonEventArgs): void; - } -} -declare module Fayde.Markup { - class FrameworkTemplate extends DependencyObject { - private $$markup; - private $$resources; - Validate(): string; - GetVisualTree(bindingSource: DependencyObject): UIElement; - } - function LoadXaml(app: Application, xaml: string): T; - function LoadXaml(app: Application, el: Element): T; - function Load(app: Application, xm: nullstone.markup.Markup): T; -} -declare module Fayde.Controls { - class ControlTemplate extends Markup.FrameworkTemplate { - static TargetTypeProperty: DependencyProperty; - TargetType: Function; - Validate(): string; - } -} -declare module Fayde.Controls { - class Dialog extends ContentControl { - static DialogResultProperty: DependencyProperty; - static ClickResultProperty: DependencyProperty; - DialogResult: boolean; - private _IgnoreResult; - private OnDialogResultChanged(args); - static GetClickResult(dobj: DependencyObject): boolean; - static SetClickResult(dobj: DependencyObject, value: boolean): void; - constructor(); - } -} -declare module Fayde.Controls { - class UserControl extends Control { - static ContentProperty: DependencyProperty; - Content: UIElement; - CreateLayoutUpdater(): minerva.controls.usercontrol.UserControlUpdater; - InitializeComponent(): void; - constructor(); - } -} -declare module Fayde.Controls { - class Page extends UserControl { - static TitleProperty: DependencyProperty; - Title: string; - constructor(); - static GetAsync(initiator: DependencyObject, url: string): Promise; - } -} -declare module Fayde.Navigation { - interface INavigate { - Navigate(source: Uri): boolean; - } - var INavigate_: nullstone.Interface; -} -declare module Fayde.Controls { - class Frame extends ContentControl implements Navigation.INavigate { - static IsDeepLinkedProperty: DependencyProperty; - static CurrentSourceProperty: DependencyProperty; - static SourceProperty: DependencyProperty; - static UriMapperProperty: DependencyProperty; - static RouteMapperProperty: DependencyProperty; - static IsLoadingProperty: DependencyProperty; - IsDeepLinked: boolean; - CurrentSource: Uri; - Source: Uri; - UriMapper: Navigation.UriMapper; - RouteMapper: Navigation.RouteMapper; - IsLoading: boolean; - private _NavService; - private _CurrentRoute; - OnIsLoadingChanged(oldIsLoading: boolean, newIsLoading: boolean): void; - constructor(); - GoToStates(gotoFunc: (state: string) => boolean): void; - GoToStateLoading(gotoFunc: (state: string) => boolean): boolean; - Navigate(uri: Uri): boolean; - GoForward(): void; - GoBackward(): void; - StopLoading(): void; - private _FrameLoaded(sender, e); - private _HandleDeepLink(); - private _LoadContent(source); - private _HandleSuccess(page); - private _HandleError(error); - private _SetPage(page); - private SourcePropertyChanged(args); - } -} -declare module Fayde.Controls { - class GridNode extends PanelNode { - LayoutUpdater: minerva.controls.grid.GridUpdater; - ColumnDefinitionsChanged(coldef: ColumnDefinition, index: number, add: boolean): void; - RowDefinitionsChanged(rowdef: RowDefinition, index: number, add: boolean): void; - } - class Grid extends Panel { - XamlNode: GridNode; - CreateNode(): GridNode; - CreateLayoutUpdater(): minerva.controls.grid.GridUpdater; - static ColumnProperty: DependencyProperty; - static GetColumn(d: DependencyObject): number; - static SetColumn(d: DependencyObject, value: number): void; - static ColumnSpanProperty: DependencyProperty; - static GetColumnSpan(d: DependencyObject): number; - static SetColumnSpan(d: DependencyObject, value: number): void; - static RowProperty: DependencyProperty; - static GetRow(d: DependencyObject): number; - static SetRow(d: DependencyObject, value: number): void; - static RowSpanProperty: DependencyProperty; - static GetRowSpan(d: DependencyObject): number; - static SetRowSpan(d: DependencyObject, value: number): void; - static ColumnDefinitionsProperty: ImmutableDependencyProperty; - static RowDefinitionsProperty: ImmutableDependencyProperty; - static ShowGridLinesProperty: DependencyProperty; - ShowGridLines: boolean; - ColumnDefinitions: ColumnDefinitionCollection; - RowDefinitions: RowDefinitionCollection; - constructor(); - } -} -declare module Fayde.Controls { - import GridUnitType = minerva.controls.grid.GridUnitType; - class GridLength implements minerva.controls.grid.IGridLength, ICloneable { - Value: number; - Type: GridUnitType; - constructor(value?: number, unitType?: GridUnitType); - static Equals(gl1: GridLength, gl2: GridLength): boolean; - Clone(): GridLength; - } -} -declare module Fayde.Controls { - class HeaderedContentControl extends ContentControl { - static HeaderProperty: DependencyProperty; - Header: any; - static HeaderTemplateProperty: DependencyProperty; - HeaderTemplate: DataTemplate; - constructor(); - OnHeaderChanged(oldHeader: any, newHeader: any): void; - OnHeaderTemplateChanged(oldHeaderTemplate: DataTemplate, newHeaderTemplate: DataTemplate): void; - } -} -declare module Fayde.Controls { - class HyperlinkButton extends Primitives.ButtonBase { - static NavigateUriProperty: DependencyProperty; - static TargetNameProperty: DependencyProperty; - NavigateUri: Uri; - TargetName: string; - constructor(); - OnApplyTemplate(): void; - OnClick(): void; - } -} -declare module Fayde.Media { - enum BrushMappingMode { - Absolute = 0, - RelativeToBoundingBox = 1, - } - enum GradientSpreadMethod { - Pad = 0, - Reflect = 1, - Repeat = 2, - } - enum Stretch { - None = 0, - Fill = 1, - Uniform = 2, - UniformToFill = 3, - } - enum AlignmentX { - Left = 0, - Center = 1, - Right = 2, - } - enum AlignmentY { - Top = 0, - Center = 1, - Bottom = 2, - } - enum TextHintingMode { - Fixed = 0, - Animated = 1, - } -} -declare module Fayde.Controls { - import ImageUpdater = minerva.controls.image.ImageUpdater; - class Image extends FrameworkElement { - CreateLayoutUpdater(): ImageUpdater; - private static _SourceCoercer(d, propd, value); - static SourceProperty: DependencyProperty; - static StretchProperty: DependencyProperty; - Source: Media.Imaging.ImageSource; - Stretch: Media.Stretch; - ImageOpened: nullstone.Event<{}>; - ImageFailed: nullstone.Event<{}>; - private $watcher; - OnImageErrored(source: Media.Imaging.BitmapSource, error: Error): void; - OnImageLoaded(source: Media.Imaging.BitmapSource): void; - OnImageChanged(source: Media.Imaging.BitmapSource): void; - OnSourceChanged(oldSource: Media.Imaging.ImageSource, newSource: Media.Imaging.ImageSource): void; - } -} -declare module Fayde.Controls { - interface IItemCollection extends nullstone.ICollection { - ItemsChanged: nullstone.Event; - ToArray(): any[]; - GetRange(startIndex: number, endIndex: number): any[]; - Contains(value: any): boolean; - IndexOf(value: any): number; - AddRange(values: any[]): any; - } - class ItemCollection extends XamlObjectCollection implements IItemCollection { - ItemsChanged: nullstone.Event; - ToArray(): any[]; - Count: number; - IsReadOnly: boolean; - GetValueAt(index: number): XamlObject; - GetRange(startIndex: number, endIndex: number): XamlObject[]; - SetValueAt(index: number, value: XamlObject): boolean; - SetValueAtImpl(index: number, value: any): void; - Add(value: XamlObject): number; - AddImpl(value: any): number; - AddRange(values: any[]): void; - AddRangeImpl(values: any[]): void; - Insert(index: number, value: XamlObject): boolean; - InsertImpl(index: number, value: XamlObject): void; - IndexOf(value: XamlObject): number; - Contains(value: XamlObject): boolean; - Remove(value: XamlObject): boolean; - RemoveImpl(value: XamlObject): void; - RemoveAt(index: number): boolean; - RemoveAtImpl(index: number): void; - Clear(): boolean; - ClearImpl(): void; - private _ValidateReadOnly(); - } -} -declare module Fayde.Controls { - class ItemsPanelTemplate extends Markup.FrameworkTemplate { - GetVisualTree(bindingSource: DependencyObject): Panel; - } -} -declare module Fayde.Controls { - class ItemsPresenterNode extends FENode { - XObject: ItemsPresenter; - constructor(xobj: ItemsPresenter); - private _ElementRoot; - ElementRoot: Panel; - DoApplyTemplateWithError(error: BError): boolean; - } - class ItemsPresenter extends FrameworkElement { - TemplateOwner: ItemsControl; - XamlNode: ItemsPresenterNode; - CreateNode(): ItemsPresenterNode; - ItemsControl: ItemsControl; - Panel: Panel; - static Get(panel: Panel): ItemsPresenter; - OnItemsAdded(index: number, newItems: any[]): void; - OnItemsRemoved(index: number, oldItems: any[]): void; - } -} -declare module Fayde.Controls { - class ListBox extends Primitives.Selector { - private _FocusedIndex; - static ItemContainerStyleProperty: DependencyProperty; - static IsSelectionActiveProperty: DependencyProperty; - ItemContainerStyle: Style; - constructor(); - ScrollIntoView(item: any): void; - private _NavigateByPage(forward); - private _ScrollInDirection(key); - private _IsOnCurrentPage(item, itemsHostRectOut?, listBoxItemsRectOut?); - private _GetFirstItemOnCurrentPage(startingIndex, forward); - OnItemContainerStyleChanged(args: IDependencyPropertyChangedEventArgs): void; - OnKeyDown(args: Input.KeyEventArgs): void; - private _GetIsVerticalOrientation(); - IsItemItsOwnContainer(item: any): boolean; - GetContainerForItem(): UIElement; - PrepareContainerForItem(element: UIElement, item: any): void; - OnGotFocus(e: RoutedEventArgs): void; - OnLostFocus(e: RoutedEventArgs): void; - NotifyListItemGotFocus(lbi: ListBoxItem): void; - NotifyListItemLostFocus(lbi: ListBoxItem): void; - } -} -declare module Fayde.Controls { - import VideoUpdater = minerva.controls.video.VideoUpdater; - class MediaElement extends FrameworkElement { - CreateLayoutUpdater(): VideoUpdater; - private static _SourceCoercer(d, propd, value); - static AutoPlayProperty: DependencyProperty; - static SourceProperty: DependencyProperty; - static StretchProperty: DependencyProperty; - AutoPlay: boolean; - Source: Media.Videos.VideoSource; - Stretch: Media.Stretch; - VideoOpened: nullstone.Event<{}>; - VideoFailed: nullstone.Event<{}>; - private $watcher; - protected OnAutoPlayChanged(oldValue: boolean, newValue: boolean): void; - OnSourceChanged(oldSource: Media.Videos.VideoSourceBase, newSource: Media.Videos.VideoSourceBase): void; - OnVideoErrored(source: Media.Videos.VideoSourceBase, error: Error): void; - OnVideoCanPlay(source: Media.Videos.VideoSourceBase): void; - OnVideoChanged(source: Media.Videos.VideoSourceBase): void; - Play(): void; - Pause(): void; - } -} -declare module Fayde { - class RoutedEventArgs implements nullstone.IEventArgs { - Handled: boolean; - Source: any; - OriginalSource: any; - } -} -declare module Fayde.Input { - enum Key { - None = 0, - Back = 1, - Tab = 2, - Enter = 3, - Shift = 4, - Ctrl = 5, - Alt = 6, - CapsLock = 7, - Escape = 8, - Space = 9, - PageUp = 10, - PageDown = 11, - End = 12, - Home = 13, - Left = 14, - Up = 15, - Right = 16, - Down = 17, - Insert = 18, - Delete = 19, - D0 = 20, - D1 = 21, - D2 = 22, - D3 = 23, - D4 = 24, - D5 = 25, - D6 = 26, - D7 = 27, - D8 = 28, - D9 = 29, - A = 30, - B = 31, - C = 32, - D = 33, - E = 34, - F = 35, - G = 36, - H = 37, - I = 38, - J = 39, - K = 40, - L = 41, - M = 42, - N = 43, - O = 44, - P = 45, - Q = 46, - R = 47, - S = 48, - T = 49, - U = 50, - V = 51, - W = 52, - X = 53, - Y = 54, - Z = 55, - F1 = 56, - F2 = 57, - F3 = 58, - F4 = 59, - F5 = 60, - F6 = 61, - F7 = 62, - F8 = 63, - F9 = 64, - F10 = 65, - F11 = 66, - F12 = 67, - NumPad0 = 68, - NumPad1 = 69, - NumPad2 = 70, - NumPad3 = 71, - NumPad4 = 72, - NumPad5 = 73, - NumPad6 = 74, - NumPad7 = 75, - NumPad8 = 76, - NumPad9 = 77, - Multiply = 78, - Add = 79, - Subtract = 80, - Decimal = 81, - Divide = 82, - Unknown = 255, - } - class KeyboardEventArgs extends RoutedEventArgs { - } - class KeyEventArgs extends KeyboardEventArgs { - Modifiers: IModifiersOn; - PlatformKeyCode: number; - Key: Key; - Char: string; - constructor(modifiers: IModifiersOn, keyCode: number, key: Key, c?: string); - } -} -declare module Fayde.Controls { - class TextBoxBase extends Control { - static CaretBrushProperty: DependencyProperty; - static SelectionForegroundProperty: DependencyProperty; - static SelectionBackgroundProperty: DependencyProperty; - static SelectionLengthProperty: DependencyProperty; - static SelectionStartProperty: DependencyProperty; - static BaselineOffsetProperty: DependencyProperty; - static MaxLengthProperty: DependencyProperty; - static SelectionOnFocusProperty: DependencyProperty; - CaretBrush: Media.Brush; - SelectionForeground: Media.Brush; - SelectionBackground: Media.Brush; - SelectionLength: number; - SelectionStart: number; - BaselineOffset: number; - MaxLength: number; - SelectionOnFocus: SelectionOnFocus; - private _Selecting; - private _Captured; - IsReadOnly: boolean; - AcceptsReturn: boolean; - $ContentProxy: Internal.TextBoxContentProxy; - $Proxy: Text.Proxy; - $Advancer: Internal.ICursorAdvancer; - $View: Internal.TextBoxView; - $Clipboard: Clipboard.IClipboard; - constructor(eventsMask: Text.EmitChangedType); - private _SyncFont(); - CreateView(): Internal.TextBoxView; - Cursor: CursorType; - private selectBasedonSelectionMode(); - OnApplyTemplate(): void; - OnLostFocus(e: RoutedEventArgs): void; - OnGotFocus(e: RoutedEventArgs): void; - OnMouseLeftButtonDown(e: Input.MouseButtonEventArgs): void; - OnMouseLeftButtonUp(e: Input.MouseButtonEventArgs): void; - OnMouseMove(e: Input.MouseEventArgs): void; - OnTouchDown(e: Input.TouchEventArgs): void; - OnTouchUp(e: Input.TouchEventArgs): void; - OnTouchMove(e: Input.TouchEventArgs): void; - OnKeyDown(args: Input.KeyEventArgs): void; - PostOnKeyDown(args: Input.KeyEventArgs): void; - private _KeyDownBackSpace(modifiers); - private _KeyDownDelete(modifiers); - private _KeyDownPageDown(modifiers); - private _KeyDownPageUp(modifiers); - private _KeyDownHome(modifiers); - private _KeyDownEnd(modifiers); - private _KeyDownLeft(modifiers); - private _KeyDownRight(modifiers); - private _KeyDownDown(modifiers); - private _KeyDownUp(modifiers); - } -} -declare module Fayde.Controls { - class PasswordBox extends TextBoxBase { - static PasswordCharProperty: DependencyProperty; - static PasswordProperty: DependencyProperty; - PasswordChar: string; - Password: string; - constructor(); - DisplayText: string; - } -} -declare module Fayde.Controls { - class ProgressBar extends Primitives.RangeBase { - private _Track; - private _Indicator; - static IsIndeterminateProperty: DependencyProperty; - IsIndeterminate: boolean; - private OnIsIndeterminateChanged(args); - OnMinimumChanged(oldMinimum: number, newMinimum: number): void; - OnMaximumChanged(oldMaximum: number, newMaximum: number): void; - OnValueChanged(oldValue: number, newValue: number): void; - constructor(); - OnApplyTemplate(): void; - GoToStates(gotoFunc: (state: string) => boolean): void; - private _OnTrackSizeChanged(sender, e); - private _UpdateIndicator(); - } -} -declare module Fayde.Controls { - class RadioButton extends Primitives.ToggleButton { - static GroupNameProperty: DependencyProperty; - GroupName: string; - OnGroupNameChanged(args: IDependencyPropertyChangedEventArgs): void; - constructor(); - OnIsCheckedChanged(e: IDependencyPropertyChangedEventArgs): void; - OnToggle(): void; - UpdateRadioButtonGroup(): void; - } -} -declare module Fayde.Controls { - class _RichTextBoxView { - } - class RichTextBox extends Control { - HorizontalScrollBarVisibility: ScrollBarVisibility; - TextWrapping: TextWrapping; - constructor(); - } -} -declare module Fayde.Controls { - class RowDefinition extends DependencyObject implements minerva.controls.grid.IRowDefinition { - static HeightProperty: DependencyProperty; - static MaxHeightProperty: DependencyProperty; - static MinHeightProperty: DependencyProperty; - static ActualHeightProperty: DependencyProperty; - Height: GridLength; - MaxHeight: number; - MinHeight: number; - ActualHeight: number; - setActualHeight(value: number): void; - } - class RowDefinitionCollection extends XamlObjectCollection { - _RaiseItemAdded(value: RowDefinition, index: number): void; - _RaiseItemRemoved(value: RowDefinition, index: number): void; - } -} -declare module Fayde.Controls { - class Slider extends Primitives.RangeBase { - private _DragValue; - static IsDirectionReversedProperty: DependencyProperty; - static IsFocusedProperty: DependencyProperty; - static OrientationProperty: DependencyProperty; - IsDirectionReversed: boolean; - IsFocused: boolean; - Orientation: Orientation; - constructor(); - private $HorizontalTemplate; - private $HorizontalLargeIncrease; - private $HorizontalLargeDecrease; - private $HorizontalThumb; - private $VerticalTemplate; - private $VerticalLargeIncrease; - private $VerticalLargeDecrease; - private $VerticalThumb; - OnApplyTemplate(): void; - OnIsEnabledChanged(e: IDependencyPropertyChangedEventArgs): void; - OnMinimumChanged(oldMin: number, newMin: number): void; - OnMaximumChanged(oldMax: number, newMax: number): void; - OnValueChanged(oldValue: number, newValue: number): void; - private _HandleSizeChanged(sender, e); - private _OnOrientationChanged(); - private _UpdateTrackLayout(); - private _OnThumbDragStarted(sender, e); - private _OnThumbDragDelta(sender, e); - OnMouseEnter(e: Input.MouseEventArgs): void; - OnMouseLeave(e: Input.MouseEventArgs): void; - OnMouseLeftButtonDown(e: Input.MouseButtonEventArgs): void; - OnLostMouseCapture(e: Input.MouseEventArgs): void; - OnKeyDown(e: Input.KeyEventArgs): void; - OnGotFocus(e: RoutedEventArgs): void; - OnLostFocus(e: RoutedEventArgs): void; - } -} -declare module Fayde.Controls { - class StackPanel extends Panel { - CreateLayoutUpdater(): minerva.controls.stackpanel.StackPanelUpdater; - static OrientationProperty: DependencyProperty; - Orientation: Orientation; - } -} -declare module Fayde.Controls { - import TextBlockUpdater = minerva.controls.textblock.TextBlockUpdater; - class TextBlockNode extends FENode { - XObject: TextBlock; - LayoutUpdater: TextBlockUpdater; - private _IsDocAuto; - private _SettingText; - private _SettingInlines; - private _AutoRun; - constructor(xobj: TextBlock); - GetInheritedEnumerator(): nullstone.IEnumerator; - TextChanged(args: IDependencyPropertyChangedEventArgs): void; - InlinesChanged(inline: Documents.Inline, index: number, isAdd: boolean): void; - InlineChanged(obj?: any): void; - } - class TextBlock extends FrameworkElement { - XamlNode: TextBlockNode; - CreateNode(): TextBlockNode; - CreateLayoutUpdater(): TextBlockUpdater; - static PaddingProperty: DependencyProperty; - static FontFamilyProperty: DependencyProperty; - static FontSizeProperty: DependencyProperty; - static FontStretchProperty: DependencyProperty; - static FontStyleProperty: DependencyProperty; - static FontWeightProperty: DependencyProperty; - static ForegroundProperty: DependencyProperty; - static TextDecorationsProperty: DependencyProperty; - static TextProperty: DependencyProperty; - static InlinesProperty: ImmutableDependencyProperty; - static LineStackingStrategyProperty: DependencyProperty; - static LineHeightProperty: DependencyProperty; - static TextAlignmentProperty: DependencyProperty; - static TextTrimmingProperty: DependencyProperty; - static TextWrappingProperty: DependencyProperty; - Padding: Thickness; - Foreground: Media.Brush; - FontFamily: string; - FontStretch: string; - FontStyle: string; - FontWeight: FontWeight; - FontSize: number; - TextDecorations: TextDecorations; - Text: string; - Inlines: Documents.InlineCollection; - LineStackingStrategy: LineStackingStrategy; - LineHeight: number; - TextAlignment: TextAlignment; - TextTrimming: TextTrimming; - TextWrapping: TextWrapping; - constructor(); - IsInheritable(propd: DependencyProperty): boolean; - } -} -declare module Fayde.Controls { - class TextBox extends TextBoxBase { - static AcceptsReturnProperty: DependencyProperty; - static IsReadOnlyProperty: DependencyProperty; - static TextProperty: DependencyProperty; - static TextAlignmentProperty: DependencyProperty; - static TextWrappingProperty: DependencyProperty; - static HorizontalScrollBarVisibilityProperty: DependencyProperty; - static VerticalScrollBarVisibilityProperty: DependencyProperty; - AcceptsReturn: boolean; - IsReadOnly: boolean; - Text: string; - TextAlignment: TextAlignment; - TextWrapping: TextWrapping; - HorizontalScrollBarVisibility: ScrollBarVisibility; - VerticalScrollBarVisibility: ScrollBarVisibility; - TextChanged: RoutedEvent; - constructor(); - OnApplyTemplate(): void; - DisplayText: string; - OnMouseEnter(e: Input.MouseEventArgs): void; - OnMouseLeave(e: Input.MouseEventArgs): void; - OnGotFocus(e: RoutedEventArgs): void; - OnLostFocus(e: RoutedEventArgs): void; - GoToStateCommon(gotoFunc: (state: string) => boolean): boolean; - SelectAll(): void; - Select(start: number, length: number): void; - } -} -declare module Fayde.Controls { - class ToolTip extends ContentControl { - static HorizontalOffsetProperty: DependencyProperty; - static VerticalOffsetProperty: DependencyProperty; - static IsOpenProperty: DependencyProperty; - static PlacementProperty: DependencyProperty; - static PlacementTargetProperty: DependencyProperty; - HorizontalOffset: number; - VerticalOffset: number; - IsOpen: boolean; - Placement: PlacementMode; - PlacementTarget: UIElement; - private _TooltipParent; - private _TooltipParentDCListener; - TooltipParent: FrameworkElement; - PlacementOverride: PlacementMode; - PlacementTargetOverride: UIElement; - Opened: RoutedEvent; - Closed: RoutedEvent; - private _ParentPopup; - constructor(); - OnApplyTemplate(): void; - private OnHorizontalOffsetChanged(args); - private OnVerticalOffsetChanged(args); - private OnIsOpenChanged(args); - private OnOffsetChanged(horizontalOffset, verticalOffset); - private OnLayoutUpdated(sender, e); - private OnTooltipParentDataContextChanged(sender, args); - private HookupParentPopup(); - private OnPopupOpened(sender, e); - private OnPopupClosed(sender, e); - private PerformPlacement(horizontalOffset, verticalOffset); - GoToStates(gotoFunc: (state: string) => boolean): void; - } -} -declare class Point extends minerva.Point { - Clone(): Point; - static LERP(start: Point, end: Point, p: number): Point; -} -declare module Fayde.Controls { - class ToolTipService { - static ToolTipProperty: DependencyProperty; - static GetToolTip(dobj: DependencyObject): ToolTip; - static SetToolTip(dobj: DependencyObject, value: ToolTip): void; - static PlacementProperty: DependencyProperty; - static GetPlacement(dobj: DependencyObject): PlacementMode; - static SetPlacement(dobj: DependencyObject, value: PlacementMode): void; - static PlacementTargetProperty: DependencyProperty; - static GetPlacementTarget(dobj: DependencyObject): UIElement; - static SetPlacementTarget(dobj: DependencyObject, value: UIElement): void; - static MousePosition: Point; - } -} -declare module Fayde.Controls { - enum VirtualizationMode { - Standard = 0, - Recycling = 1, - } - class VirtualizingPanel extends Panel { - static VirtualizationModeProperty: DependencyProperty; - static GetVirtualizationMode(d: DependencyObject): VirtualizationMode; - static SetVirtualizationMode(d: DependencyObject, value: VirtualizationMode): void; - static IsVirtualizingProperty: DependencyProperty; - static GetIsVirtualizing(d: DependencyObject): boolean; - static SetIsVirtualizing(d: DependencyObject, value: boolean): void; - ItemsControl: ItemsControl; - OnItemsAdded(index: number, newItems: any[]): void; - OnItemsRemoved(index: number, oldItems: any[]): void; - } -} -declare module Fayde.Controls { - import VirtualizingStackPanelUpdater = minerva.controls.virtualizingstackpanel.VirtualizingStackPanelUpdater; - class VirtualizingStackPanel extends VirtualizingPanel implements Primitives.IScrollInfo { - CreateLayoutUpdater(): VirtualizingStackPanelUpdater; - private _ScrollData; - ScrollOwner: ScrollViewer; - CanHorizontallyScroll: boolean; - CanVerticallyScroll: boolean; - ExtentWidth: number; - ExtentHeight: number; - ViewportWidth: number; - ViewportHeight: number; - HorizontalOffset: number; - VerticalOffset: number; - LineUp(): boolean; - LineDown(): boolean; - LineLeft(): boolean; - LineRight(): boolean; - MouseWheelUp(): boolean; - MouseWheelDown(): boolean; - MouseWheelLeft(): boolean; - MouseWheelRight(): boolean; - PageUp(): boolean; - PageDown(): boolean; - PageLeft(): boolean; - PageRight(): boolean; - MakeVisible(uie: UIElement, rectangle: minerva.Rect): minerva.Rect; - SetHorizontalOffset(offset: number): boolean; - SetVerticalOffset(offset: number): boolean; - static OrientationProperty: DependencyProperty; - Orientation: Orientation; - OnItemsAdded(index: number, newItems: any[]): void; - OnItemsRemoved(index: number, oldItems: any[]): void; - } -} -interface ICloneable { - Clone(): any; -} -declare module Fayde { - function Clone(value: any): any; -} -declare module Fayde { - class DataTemplate extends Markup.FrameworkTemplate { - static DataTypeProperty: DependencyProperty; - DataType: Function; - } -} -interface IDependencyPropertyChangedEventArgs { - Property: DependencyProperty; - OldValue: any; - NewValue: any; -} -declare class DependencyPropertyChangedEventArgs implements nullstone.IEventArgs, IDependencyPropertyChangedEventArgs { - Property: DependencyProperty; - OldValue: any; - NewValue: any; -} -declare module Fayde { - class HierarchicalDataTemplate extends DataTemplate { - static ItemsSourceProperty: DependencyProperty; - static ItemTemplateProperty: DependencyProperty; - static ItemContainerStyleProperty: DependencyProperty; - ItemsSource: nullstone.IEnumerable; - ItemTemplate: DataTemplate; - ItemContainerStyle: Style; - } -} -declare module Fayde { - class LayoutInformation { - static GetLayoutClip(uie: UIElement): Media.Geometry; - static GetLayoutSlot(uie: UIElement): minerva.Rect; - } -} -declare module Fayde { - class NameScope { - IsRoot: boolean; - private XNodes; - constructor(isRoot?: boolean); - FindName(name: string): XamlNode; - RegisterName(name: string, xnode: XamlNode): void; - UnregisterName(name: string): void; - Absorb(otherNs: NameScope): void; - } -} -declare module Fayde { - interface IResourcable { - Resources: Fayde.ResourceDictionary; - } - class ResourceDictionaryCollection extends XamlObjectCollection { - Get(key: any): any; - AddingToCollection(value: ResourceDictionary, error: BError): boolean; - private _AssertNoCycles(subtreeRoot, firstAncestorNode, error); - } - class ResourceDictionary extends XamlObject implements nullstone.IEnumerable { - private _Keys; - private _Values; - private _IsSourceLoaded; - private _SourceBacking; - private _MergedDictionaries; - MergedDictionaries: ResourceDictionaryCollection; - Source: Uri; - App: Application; - Count: number; - AttachTo(xobj: XamlObject): void; - Contains(key: any): boolean; - Get(key: any): any; - Set(key: any, value: any): boolean; - Remove(key: any): boolean; - getEnumerator(reverse?: boolean): nullstone.IEnumerator; - GetNodeEnumerator(reverse?: boolean): nullstone.IEnumerator; - private _GetFromSource(key); - } -} -declare module Fayde { - class RoutedEvent extends nullstone.Event { - } -} -declare module Fayde { - class RoutedPropertyChangedEvent extends RoutedEvent> { - } - class RoutedPropertyChangedEventArgs extends RoutedEventArgs { - OldValue: T; - NewValue: T; - constructor(oldValue: T, newValue: T); - } -} -declare module Fayde { - class RoutedPropertyChangingEvent extends RoutedEvent> { - } - class RoutedPropertyChangingEventArgs extends RoutedEventArgs { - Property: DependencyProperty; - OldValue: T; - NewValue: T; - private _IsCancelable; - IsCancellable: boolean; - private _Cancel; - Cancel: boolean; - InCoercion: boolean; - constructor(propd: DependencyProperty, oldValue: T, newValue: T, isCancelable: boolean); - } -} -declare module Fayde { - class SetterCollection extends XamlObjectCollection { - private _IsSealed; - XamlNode: XamlNode; - Seal(): void; - AddingToCollection(value: Setter, error: BError): boolean; - private _ValidateSetter(setter, error); - } - class Setter extends DependencyObject { - private _IsSealed; - static PropertyProperty: DependencyProperty; - static ValueProperty: DependencyProperty; - static ConvertedValueProperty: DependencyProperty; - Property: DependencyProperty; - Value: any; - ConvertedValue: any; - Seal(): void; - static Compare(setter1: Setter, setter2: Setter): number; - } -} -declare module Fayde { - class SizeChangedEventArgs extends RoutedEventArgs { - PreviousSize: minerva.Size; - NewSize: minerva.Size; - constructor(previousSize: minerva.Size, newSize: minerva.Size); - } -} -declare module Fayde { - class Style extends DependencyObject { - private _IsSealed; - static SettersProperty: ImmutableDependencyProperty; - static BasedOnProperty: DependencyProperty; - static TargetTypeProperty: DependencyProperty; - Setters: SetterCollection; - BasedOn: Style; - TargetType: Function; - constructor(); - Seal(): void; - Validate(instance: DependencyObject, error: BError): boolean; - } -} -declare module Fayde { - class TemplateBinding implements nullstone.markup.IMarkupExtension { - SourceProperty: string; - init(val: string): void; - transmute(os: any[]): any; - } -} -declare module Fayde { - class TriggerAction extends DependencyObject { - Fire(): void; - } - class TriggerActionCollection extends XamlObjectCollection { - Fire(): void; - } - class TriggerBase extends DependencyObject { - Attach(target: XamlObject): void; - Detach(target: XamlObject): void; - } - class EventTrigger extends TriggerBase { - static ActionsProperty: ImmutableDependencyProperty; - static RoutedEventProperty: DependencyProperty; - Actions: TriggerActionCollection; - RoutedEvent: string; - private _IsAttached; - constructor(); - Attach(target: XamlObject): void; - Detach(target: XamlObject): void; - private _FireActions(sender, e); - private _ParseEventName(target); - } - class TriggerCollection extends XamlObjectCollection { - XamlNode: XamlNode; - private ParentXamlObject; - AddingToCollection(value: TriggerBase, error: BError): boolean; - RemovedFromCollection(value: TriggerBase, isValueSafe: boolean): void; - AttachTarget(target: XamlObject): void; - DetachTarget(target: XamlObject): void; - } -} -declare module Fayde { - class VisualTreeEnum { - static GetAncestors(uie: UIElement): nullstone.IEnumerable; - } -} -declare module Fayde { - class VisualTreeHelper { - static GetParent(d: DependencyObject): DependencyObject; - static GetParentOfType(d: DependencyObject, type: any): T; - static GetRoot(d: DependencyObject): DependencyObject; - static GetChild(d: DependencyObject, childIndex: number): DependencyObject; - static GetChildrenCount(d: DependencyObject): number; - static FindElementsInHostCoordinates(pos: Point, uie: UIElement): UIElement[]; - static __Debug(ui: any, func?: (uin: UINode, tabIndex: number) => string): string; - private static __DebugTree(curNode, matchNode, tabIndex, func); - private static __DebugUIElement(uin, tabIndex); - private static __DebugGrid(uin, tabIndex); - private static __DebugUIElementLayout(uin, tabIndex); - static __DebugLayout(ui: any): string; - private static __GetById(id); - } -} -declare module Fayde { - enum VisualTreeDirection { - Logical = 0, - Reverse = 1, - ZForward = 2, - ZReverse = 3, - } - interface IWalker { - Step(): any; - } - interface IStyleWalker extends IWalker { - Step(): Setter; - } - interface IDeepTreeWalker extends IWalker { - Step(): UINode; - SkipBranch(): any; - } - interface ITabNavigationWalker { - FocusChild(): boolean; - } - function SingleStyleWalker(style: Style): IStyleWalker; - function MultipleStylesWalker(styles: Style[]): IStyleWalker; - function DeepTreeWalker(topNode: UINode, direction?: VisualTreeDirection): IDeepTreeWalker; - class TabNavigationWalker implements ITabNavigationWalker { - private _Root; - private _Current; - private _Forwards; - private _TabSorted; - constructor(root: UINode, cur: UINode, forwards: boolean); - FocusChild(): boolean; - static Focus(uin: UINode, forwards?: boolean): boolean; - } -} -declare module Fayde.Data { - var WarnBrokenPath: boolean; - class Binding implements nullstone.markup.IMarkupExtension, ICloneable { - StringFormat: string; - FallbackValue: any; - TargetNullValue: any; - BindsDirectlyToSource: boolean; - Converter: IValueConverter; - ConverterParameter: any; - ConverterCulture: any; - ElementName: string; - Mode: BindingMode; - NotifyOnValidationError: boolean; - RelativeSource: RelativeSource; - Path: Data.PropertyPath; - Source: any; - UpdateSourceTrigger: UpdateSourceTrigger; - ValidatesOnExceptions: boolean; - ValidatesOnDataErrors: boolean; - ValidatesOnNotifyDataErrors: boolean; - constructor(); - constructor(path: string | Data.PropertyPath); - constructor(binding: Binding); - init(val: string): void; - transmute(os: any[]): any; - private $$coerce(); - Clone(): Binding; - static fromData(data: IBindingData): Binding; - } -} -declare module Fayde.Data { - class CollectionViewSource extends DependencyObject { - static SourceProperty: DependencyProperty; - static ViewProperty: DependencyProperty; - Source: any; - View: ICollectionView; - } -} -declare module Fayde.Data { - class DataErrorsChangedEventArgs implements nullstone.IEventArgs { - PropertyName: string; - constructor(propertyName: string); - } -} -declare module Fayde.Data { - enum RelativeSourceMode { - TemplatedParent = 0, - Self = 1, - FindAncestor = 2, - ItemsControlParent = 3, - } - enum BindingMode { - OneWay = 0, - TwoWay = 1, - OneTime = 2, - OneWayToSource = 3, - } - enum UpdateSourceTrigger { - Default = 0, - PropertyChanged = 1, - Explicit = 3, - } -} -declare module Fayde.Data { - interface IBindingData { - Path: string | Data.PropertyPath; - StringFormat?: string; - FallbackValue?: any; - TargetNullValue?: any; - BindsDirectlyToSource?: boolean; - Converter?: IValueConverter; - ConverterParameter?: any; - ConverterCulture?: any; - ElementName?: string; - Mode?: BindingMode; - NotifyOnValidationError?: boolean; - RelativeSource?: RelativeSource; - Source?: any; - UpdateSourceTrigger?: UpdateSourceTrigger; - ValidatesOnExceptions?: boolean; - ValidatesOnDataErrors?: boolean; - ValidatesOnNotifyDataErrors?: boolean; - } -} -declare module Fayde.Data { - interface ICollectionView extends nullstone.IEnumerable { - CurrentChanged: nullstone.Event; - CurrentItem: any; - MoveCurrentTo(item: any): boolean; - } - var ICollectionView_: nullstone.Interface; -} -declare module Fayde.Data { - interface IDataErrorInfo { - Error: string; - GetError(propertyName: string): string; - } - var IDataErrorInfo_: nullstone.Interface; -} -declare module Fayde.Data { - interface INotifyDataErrorInfo { - ErrorsChanged: nullstone.Event; - GetErrors(propertyName: string): nullstone.IEnumerable; - HasErrors: boolean; - } - var INotifyDataErrorInfo_: nullstone.Interface; -} -declare module Fayde.Data { - interface IValueConverter { - Convert(value: any, targetType: IType, parameter: any, culture: any): any; - ConvertBack(value: any, targetType: IType, parameter: any, culture: any): any; - } - var IValueConverter_: nullstone.Interface; -} -declare module Fayde.Data { - class RelativeSource implements nullstone.markup.IMarkupExtension, ICloneable { - Mode: RelativeSourceMode; - AncestorLevel: number; - AncestorType: Function; - constructor(); - constructor(rs: RelativeSource); - init(val: string): void; - resolveTypeFields(resolver: (full: string) => any): void; - transmute(os: any[]): any; - Clone(): RelativeSource; - Find(target: XamlObject): XamlObject; - } -} -declare module Fayde.Documents { - interface ITextReactionCallback { - (updater: minerva.text.TextUpdater, ov: T, nv: T, te?: TextElement): void; - } - function TextReaction(propd: DependencyProperty, callback?: ITextReactionCallback, listen?: boolean, sync?: any, instance?: any): void; -} -declare module Fayde.Documents { - class TextElementNode extends DONode { - XObject: TextElement; - constructor(xobj: TextElement, inheritedWalkProperty: string); - InheritedWalkProperty: string; - GetInheritedEnumerator(): nullstone.IEnumerator; - } - class TextElement extends DependencyObject implements Providers.IIsPropertyInheritable { - XamlNode: TextElementNode; - TextUpdater: minerva.text.TextUpdater; - CreateNode(): TextElementNode; - constructor(); - static FontFamilyProperty: DependencyProperty; - static FontSizeProperty: DependencyProperty; - static FontStretchProperty: DependencyProperty; - static FontStyleProperty: DependencyProperty; - static FontWeightProperty: DependencyProperty; - static ForegroundProperty: DependencyProperty; - static LanguageProperty: DependencyProperty; - Foreground: Media.Brush; - FontFamily: string; - FontStretch: string; - FontStyle: string; - FontWeight: FontWeight; - FontSize: number; - Language: string; - IsInheritable(propd: DependencyProperty): boolean; - _SerializeText(): string; - Start: number; - Equals(te: TextElement): boolean; - } -} -declare module Fayde.Documents { - class Block extends TextElement { - } -} -declare module Fayde.Documents { - class BlockCollection extends XamlObjectCollection { - _RaiseItemAdded(value: Block, index: number): void; - _RaiseItemRemoved(value: Block, index: number): void; - } -} -declare module Fayde.Documents { - class Inline extends TextElement { - static TextDecorationsProperty: DependencyProperty; - TextDecorations: TextDecorations; - constructor(); - Equals(inline: Inline): boolean; - IsInheritable(propd: DependencyProperty): boolean; - } -} -declare module Fayde.Documents { - class InlineCollection extends XamlObjectCollection { - _RaiseItemAdded(value: Inline, index: number): void; - _RaiseItemRemoved(value: Inline, index: number): void; - } -} -declare module Fayde.Documents { - class LineBreak extends Inline { - } -} -declare module Fayde.Documents { - class Paragraph extends Block { - CreateNode(): TextElementNode; - static InlinesProperty: ImmutableDependencyProperty; - Inlines: InlineCollection; - constructor(); - InlinesChanged(inline: Inline, isAdd: boolean): void; - } -} -declare module Fayde.Documents { - class Run extends Inline implements Providers.IIsPropertyInheritable { - static FlowDirectionProperty: DependencyProperty; - static TextProperty: DependencyProperty; - FlowDirection: FlowDirection; - Text: string; - _SerializeText(): string; - IsInheritable(propd: DependencyProperty): boolean; - } -} -declare module Fayde.Documents { - class Section extends TextElement { - CreateNode(): TextElementNode; - static BlocksProperty: ImmutableDependencyProperty; - Blocks: BlockCollection; - constructor(); - BlocksChanged(block: Block, isAdd: boolean): void; - } -} -declare module Fayde.Documents { - class Span extends Inline { - CreateNode(): TextElementNode; - static InlinesProperty: ImmutableDependencyProperty; - Inlines: InlineCollection; - constructor(); - _SerializeText(): string; - InlinesChanged(inline: Inline, isAdd: boolean): void; - } -} -declare module Fayde.Documents { - class Underline extends Span { - } -} -interface ITimeline { - Update(nowTime: number): any; -} -declare module Fayde { - class Application extends DependencyObject implements IResourcable, ITimerListener { - static Current: Application; - MainSurface: Surface; - Loaded: nullstone.Event<{}>; - Address: Uri; - AllowNavigation: boolean; - private _IsRunning; - private _IsLoaded; - private _Storyboards; - private _ClockTimer; - private _RootVisual; - static ResourcesProperty: ImmutableDependencyProperty; - static ThemeNameProperty: DependencyProperty; - static ZoomFactorProperty: DependencyProperty; - Resources: ResourceDictionary; - ThemeName: string; - ZoomFactor: number; - private OnThemeNameChanged(oldThemeName, newThemeName); - private OnZoomFactorChanged(oldZoom, newZoom); - private _ApplyTheme(); - Resized: RoutedEvent; - OnResized(oldSize: minerva.Size, newSize: minerva.Size): void; - constructor(); - RootVisual: UIElement; - $$SetRootVisual(value: UIElement): void; - Attach(canvas: HTMLCanvasElement): void; - Start(): void; - OnTicked(lastTime: number, nowTime: number): void; - private StopEngine(); - private ProcessStoryboards(lastTime, nowTime); - private Update(); - private Render(); - RegisterStoryboard(storyboard: ITimeline): void; - UnregisterStoryboard(storyboard: ITimeline): void; - static GetAsync(url: string): Promise; - } -} -declare module Fayde { - interface ITimerListener { - OnTicked(lastTime: number, nowTime: number): any; - } - class ClockTimer { - private _Listeners; - private _LastTime; - RegisterTimer(listener: Fayde.ITimerListener): void; - UnregisterTimer(listener: Fayde.ITimerListener): void; - private _DoTick(); - private _RequestAnimationTick(); - } -} -declare class Exception { - Message: string; - constructor(message: string); - toString(): string; -} -declare class ArgumentException extends Exception { - constructor(message: string); -} -declare class ArgumentNullException extends Exception { - constructor(message: string); -} -declare class InvalidOperationException extends Exception { - constructor(message: string); -} -declare class XamlParseException extends Exception { - constructor(message: string); -} -declare class XamlMarkupParseException extends Exception { - constructor(message: string); -} -declare class NotSupportedException extends Exception { - constructor(message: string); -} -declare class IndexOutOfRangeException extends Exception { - constructor(index: number); -} -declare class ArgumentOutOfRangeException extends Exception { - constructor(msg: string); -} -declare class AttachException extends Exception { - Data: any; - constructor(message: string, data: any); -} -declare class InvalidJsonException extends Exception { - JsonText: string; - InnerException: Error; - constructor(jsonText: string, innerException: Error); -} -declare class TargetInvocationException extends Exception { - InnerException: Exception; - constructor(message: string, innerException: Exception); -} -declare class UnknownTypeException extends Exception { - FullTypeName: string; - constructor(fullTypeName: string); -} -declare class FormatException extends Exception { - constructor(message: string); -} -declare module Fayde.Engine { - class FocusManager { - private _State; - private _ChangedEvents; - Node: UINode; - constructor(state: IInputState); - GetFocusToRoot(): UINode[]; - OnNodeDetached(node: UINode): void; - TabFocus(isShift: boolean): boolean; - Focus(ctrlNode: Fayde.Controls.ControlNode, recurse?: boolean): boolean; - private _FocusNode(uin?); - EmitChanges(): void; - EmitChangesAsync(): void; - private _EmitFocusList(type, list); - FocusAnyLayer(walker: minerva.IWalker): void; - } -} -declare module Fayde.Engine { - interface IInputState { - IsUserInitiated: boolean; - IsFirstUserInitiated: boolean; - } - class InputManager { - private _Surface; - private _KeyInterop; - private _MouseInterop; - private _TouchInterop; - private _Focus; - private _State; - private _Cursor; - SetCursor: (cursor: CursorType) => void; - private _CurrentPos; - private _EmittingMouseEvent; - private _InputList; - private _Captured; - private _PendingCapture; - private _PendingReleaseCapture; - private _CapturedInputList; - FocusedNode: UINode; - Focus(node: Controls.ControlNode, recurse?: boolean): boolean; - constructor(surface: Surface); - Register(canvas: HTMLCanvasElement): void; - OnNodeDetached(node: UINode): void; - SetIsUserInitiatedEvent(value: boolean): void; - HandleKeyDown(args: Input.KeyEventArgs): void; - private _EmitKeyDown(list, args, endIndex?); - HandleMousePress(button: number, pos: Point): boolean; - HandleMouseRelease(button: number, pos: Point): void; - HandleMouseEvent(type: Input.MouseInputType, button: number, pos: Point, delta?: number, emitLeave?: boolean, emitEnter?: boolean): boolean; - private _EmitMouseList(type, button, pos, delta, list, endIndex?); - HitTestPoint(pos: Point): UINode[]; - UpdateCursorFromInputList(): void; - SetMouseCapture(uin: Fayde.UINode): boolean; - ReleaseMouseCapture(uin: Fayde.UINode): void; - private _PerformCapture(uin); - private _PerformReleaseCapture(); - } -} -declare module Fayde.Engine { - class Inspection { - static TryHandle(type: Input.MouseInputType, isLeftButton: boolean, isRightButton: boolean, args: Input.MouseEventArgs, htlist: UINode[]): boolean; - static Kill(): void; - } -} -declare var resizeTimeout: number; -declare module Fayde { - class Surface extends minerva.engine.Surface { - App: Application; - private $$root; - private $$inputMgr; - private $$zoom; - HitTestCallback: (inputList: Fayde.UINode[]) => void; - constructor(app: Application); - init(canvas: HTMLCanvasElement): void; - Attach(uie: UIElement, root?: boolean): void; - attachLayer(layer: minerva.core.Updater, root?: boolean): void; - Detach(uie: UIElement): void; - detachLayer(layer: minerva.core.Updater): void; - updateLayout(): boolean; - private $$onLayoutUpdated(); - Focus(node: Controls.ControlNode, recurse?: boolean): boolean; - static HasFocus(uie: UIElement): boolean; - static Focus(uie: Controls.Control, recurse?: boolean): boolean; - static GetFocusedElement(uie: UIElement): UIElement; - static RemoveFocusFrom(uie: UIElement): boolean; - static SetMouseCapture(uin: Fayde.UINode): boolean; - static ReleaseMouseCapture(uin: Fayde.UINode): void; - private $$handleResize(evt?); - private $$stretchCanvas(); - private $$updateZoom(); - protected onZoomChanged(oldZoom: number, newZoom: number): void; - private $$setScrollbars(show); - } -} -declare module Fayde { - class Theme { - Name: string; - LibraryUri: Uri; - Resources: ResourceDictionary; - private $$loaded; - private $$retrieved; - static WarnMissing: boolean; - constructor(name: string, libUri: Uri); - RetrieveAsync(): Promise; - LoadAsync(): Promise; - GetImplicitStyle(type: any): Style; - } -} -declare module Fayde { - module ThemeConfig { - function GetRequestUri(uri: Uri, name: string): string; - function OverrideRequestUri(uri: Uri, templateUri: string): void; - function Set(libName: string, path: string): void; - } -} -declare module Fayde { - interface IThemeManager { - LoadAsync(themeName: string): Promise; - FindStyle(defaultStyleKey: any): Style; - } - var DEFAULT_THEME_NAME: string; - var ThemeManager: IThemeManager; -} -declare module Fayde { - class Expression { - IsUpdating: boolean; - IsAttached: boolean; - Seal(owner: DependencyObject, prop: any): void; - OnAttached(target: XamlObject): void; - OnDetached(target: XamlObject): void; - GetValue(propd: DependencyProperty): any; - OnDataContextChanged(newDataContext: any): void; - } -} -declare module Fayde.Data { - class BindingExpressionBase extends Expression implements IPropertyPathWalkerListener { - ParentBinding: Data.Binding; - Target: DependencyObject; - Property: DependencyProperty; - private PropertyPathWalker; - private _PropertyListener; - private _SourceAvailableMonitor; - private _IsDataContextBound; - private _DataContext; - private _TwoWayLostFocusElement; - private _CurrentNotifyError; - private _CurrentError; - DataItem: any; - private _Cached; - private _CachedValue; - constructor(binding: Data.Binding); - private _IsSealed; - Seal(owner: DependencyObject, prop: any): void; - OnAttached(element: DependencyObject): void; - GetValue(propd: DependencyProperty): any; - private _OnSourceAvailable(); - private _FindSource(); - private _FindSourceByElementName(); - OnDetached(element: DependencyObject): void; - IsBrokenChanged(): void; - ValueChanged(): void; - UpdateSource(): void; - _TryUpdateSourceObject(value: any): void; - private _UpdateSourceCallback(sender, args); - private _TargetLostFocus(sender, e); - private _ShouldUpdateSource(); - private _UpdateSourceObject(value?); - OnDataContextChanged(newDataContext: any): void; - private _Invalidate(); - Refresh(): void; - private _ConvertFromTargetToSource(binding, node, value); - private _ConvertToType(propd, value); - private _MaybeEmitError(message, exception); - private _AttachToNotifyError(element); - private _NotifyErrorsChanged(sender, e); - } -} -declare module Fayde.Data { - class BindingExpression extends BindingExpressionBase { - constructor(binding: Data.Binding); - } -} -declare module Fayde { - class DeferredValueExpression extends Expression { - GetValue(propd: DependencyProperty): any; - toString(): string; - } -} -declare module Fayde { - interface IEventBindingArgs { - sender: any; - args: T; - parameter: any; - } - class EventBindingExpression extends Expression { - IsUpdating: boolean; - IsAttached: boolean; - private _EventBinding; - private _CommandWalker; - private _CommandParameterWalker; - private _Target; - private _Event; - private _EventName; - constructor(eventBinding: Markup.EventBinding); - Seal(owner: DependencyObject, prop: any): void; - Init(eventName: string): void; - GetValue(propd: DependencyProperty): any; - OnAttached(target: XamlObject): void; - OnDetached(target: XamlObject): void; - OnDataContextChanged(newDataContext: any): void; - private _Callback(sender, e); - } -} -declare module Fayde { - class TemplateBindingExpression extends Expression { - private _Target; - private _Listener; - private _SourcePropertyName; - private _IsSealed; - SourceProperty: DependencyProperty; - TargetProperty: DependencyProperty; - constructor(sourceProperty: string); - Seal(owner: DependencyObject, prop: any): void; - GetValue(propd: DependencyProperty): any; - OnAttached(dobj: DependencyObject): void; - OnDetached(dobj: DependencyObject): void; - OnSourcePropertyChanged(sender: DependencyObject, args: IDependencyPropertyChangedEventArgs): void; - private _AttachListener(); - private _DetachListener(); - } -} -declare module Fayde.Input { - interface ICommand { - Execute(parameter: any): any; - CanExecute(parameter: any): boolean; - CanExecuteChanged: nullstone.Event; - } - var ICommand_: nullstone.Interface; -} -declare module Fayde.Input { - module InteractionHelper { - function GetLogicalKey(flowDirection: FlowDirection, key: Key): Key; - } -} -declare module Fayde.Input { - interface IKeyInterop { - RegisterEvents(inputHandler: Engine.InputManager): any; - } - function CreateKeyInterop(): IKeyInterop; -} -declare module Fayde.Input { - class KeyboardNavigation { - static AcceptsReturnProperty: DependencyProperty; - static GetAcceptsReturn(d: DependencyObject): boolean; - static SetAcceptsReturn(d: DependencyObject, value: boolean): void; - static ControlTabNavigationProperty: DependencyProperty; - static GetControlTabNavigation(d: DependencyObject): KeyboardNavigationMode; - static SetControlTabNavigation(d: DependencyObject, value: KeyboardNavigationMode): void; - static DirectionalNavigationProperty: DependencyProperty; - static GetDirectionalNavigation(d: DependencyObject): KeyboardNavigationMode; - static SetDirectionalNavigation(d: DependencyObject, value: KeyboardNavigationMode): void; - static IsTabStopProperty: DependencyProperty; - static GetIsTabStop(d: DependencyObject): boolean; - static SetIsTabStop(d: DependencyObject, value: boolean): void; - static TabIndexProperty: DependencyProperty; - static GetTabIndex(d: DependencyObject): number; - static SetTabIndex(d: DependencyObject, value: number): void; - static TabNavigationProperty: DependencyProperty; - static GetTabNavigation(d: DependencyObject): KeyboardNavigationMode; - static SetTabNavigation(d: DependencyObject, value: KeyboardNavigationMode): void; - } -} -declare module Fayde.Input { - class MouseEventArgs extends RoutedEventArgs { - AbsolutePos: Point; - constructor(absolutePos: Point); - GetPosition(relativeTo: UIElement): Point; - } - class MouseButtonEventArgs extends MouseEventArgs { - constructor(absolutePos: Point); - } - class MouseWheelEventArgs extends MouseEventArgs { - Delta: number; - constructor(absolutePos: Point, delta: number); - } -} -declare module Fayde.Input { - enum MouseInputType { - NoOp = 0, - MouseUp = 1, - MouseDown = 2, - MouseLeave = 3, - MouseEnter = 4, - MouseMove = 5, - MouseWheel = 6, - } - interface IMouseInterop { - RegisterEvents(input: Engine.InputManager, canvas: HTMLCanvasElement): any; - CreateEventArgs(type: MouseInputType, pos: Point, delta: number): Fayde.Input.MouseEventArgs; - IsLeftButton(button: number): boolean; - IsRightButton(button: number): boolean; - } - function CreateMouseInterop(): IMouseInterop; -} -declare module Fayde.Input { - class TouchEventArgs extends RoutedEventArgs { - Device: ITouchDevice; - constructor(device: ITouchDevice); - GetTouchPoint(relativeTo: UIElement): TouchPoint; - } -} -interface Touch { - radiusX: number; - radiusY: number; - rotationAngle: number; - force: number; -} -interface TouchList { - identifiedTouch(identifier: number): Touch; -} -interface TouchEvent extends UIEvent { - initTouchEvent(type: string, canBubble: boolean, cancelable: boolean, view: any, detail: number, ctrlKey: boolean, altKey: boolean, shiftKey: boolean, metaKey: boolean, touches: TouchList, targetTouches: TouchList, changedTouches: TouchList): any; -} -declare module Fayde.Input { - interface ITouchDevice { - Identifier: number; - Captured: UIElement; - Capture(uie: UIElement): boolean; - ReleaseCapture(uie: UIElement): any; - GetTouchPoint(relativeTo: UIElement): TouchPoint; - } - enum TouchInputType { - NoOp = 0, - TouchDown = 1, - TouchUp = 2, - TouchMove = 3, - TouchEnter = 4, - TouchLeave = 5, - } - interface ITouchInterop { - Register(input: Engine.InputManager, canvas: HTMLCanvasElement): any; - } - function CreateTouchInterop(): ITouchInterop; -} -declare module Fayde.Input { - class TouchPoint { - Position: Point; - Force: number; - constructor(position: Point, force: number); - } -} -declare module Fayde.Input { - class VirtualKeyboard { - static Init(): void; - static Launch(): void; - } -} -declare class TimeSpan { - static _TicksPerMillisecond: number; - static _TicksPerSecond: number; - static _TicksPerMinute: number; - static _TicksPerHour: number; - static _TicksPerDay: number; - private _Ticks; - static Zero: TimeSpan; - static MinValue: TimeSpan; - static MaxValue: TimeSpan; - static FromDays(value: number): TimeSpan; - static FromHours(value: number): TimeSpan; - static FromMinutes(value: number): TimeSpan; - static FromSeconds(value: number): TimeSpan; - static FromMilliseconds(value: number): TimeSpan; - constructor(); - constructor(ticks: number); - constructor(hours: number, minutes: number, seconds: number); - constructor(days: number, hours: number, minutes: number, seconds: number, milliseconds?: number); - Days: number; - Hours: number; - Minutes: number; - Seconds: number; - Milliseconds: number; - Ticks: number; - TotalDays: number; - TotalHours: number; - TotalMinutes: number; - TotalSeconds: number; - TotalMilliseconds: number; - AddTicks(ticks: number): void; - AddMilliseconds(milliseconds: number): void; - Add(ts2: TimeSpan): TimeSpan; - Subtract(ts2: TimeSpan): TimeSpan; - Multiply(v: number): TimeSpan; - Divide(ts2: TimeSpan): TimeSpan; - CompareTo(ts2: TimeSpan): number; - IsZero(): boolean; - GetJsDelay(): number; - toString(format?: string): string; - valueOf(): Object; -} -declare enum DayOfWeek { - Sunday = 0, - Monday = 1, - Tuesday = 2, - Wednesday = 3, - Thursday = 4, - Friday = 5, - Saturday = 6, -} -declare enum DateTimeKind { - Unspecified = 0, - Local = 1, - Utc = 2, -} -declare class DateTime { - private static MAX_TICKS; - private static MIN_TICKS; - static MinValue: DateTime; - static MaxValue: DateTime; - static Now: DateTime; - static Today: DateTime; - static Compare(dt1: DateTime, dt2: DateTime): number; - static DaysInMonth(year: number, month: number): number; - private _InternalDate; - private _Kind; - constructor(); - constructor(dt: Date); - constructor(dt: Date, kind: DateTimeKind); - constructor(ticks: number); - constructor(ticks: number, kind: DateTimeKind); - constructor(year: number, month: number, day: number); - constructor(year: number, month: number, day: number, hour: number, minute: number, second: number); - constructor(year: number, month: number, day: number, hour: number, minute: number, second: number, millisecond: number); - constructor(year: number, month: number, day: number, hour: number, minute: number, second: number, millisecond: number, kind: DateTimeKind); - Ticks: number; - Kind: DateTimeKind; - Date: DateTime; - Day: number; - DayOfWeek: DayOfWeek; - DayOfYear: number; - Hour: number; - Millisecond: number; - Minute: number; - Month: number; - Second: number; - TimeOfDay: TimeSpan; - Year: number; - AddYears(years: number): DateTime; - AddMonths(months: number): DateTime; - AddDays(value: number): DateTime; - AddHours(value: number): DateTime; - AddMinutes(value: number): DateTime; - AddSeconds(value: number): DateTime; - AddMilliseconds(value: number): DateTime; - Add(value: TimeSpan): DateTime; - AddTicks(value: number): DateTime; - Subtract(value: DateTime): TimeSpan; - Subtract(value: TimeSpan): DateTime; - ToUniversalTime(): DateTime; - toString(format?: string): string; - valueOf(): Object; -} -declare module Fayde.Localization { - class Calendar { - ID: number; - Eras: number[]; - EraNames: string[]; - CurrentEraValue: number; - TwoDigitYearMax: number; - MaxSupportedDateTime: DateTime; - MinSupportedDateTime: DateTime; - } -} -declare module Fayde.Localization { - enum CalendarWeekRule { - FirstDay = 0, - FirstFullWeek = 1, - FirstFourDayWeek = 2, - } - class DateTimeFormatInfo { - AbbreviatedDayNames: string[]; - AbbreviatedMonthGenitiveNames: string[]; - AbbreviatedMonthNames: string[]; - AMDesignator: string; - Calendar: Calendar; - CalendarWeekRule: CalendarWeekRule; - DateSeparator: string; - DayNames: string[]; - FirstDayOfWeek: DayOfWeek; - FullDateTimePattern: string; - LongDatePattern: string; - LongTimePattern: string; - MonthDayPattern: string; - MonthGenitiveNames: string[]; - MonthNames: string[]; - PMDesignator: string; - RFC1123Pattern: string; - ShortDatePattern: string; - ShortestDayNames: string[]; - ShortTimePattern: string; - SortableDateTimePattern: string; - TimeSeparator: string; - UniversalSortableDateTimePattern: string; - YearMonthPattern: string; - HasForceTwoDigitYears: boolean; - GetEraName(era: number): string; - static Instance: DateTimeFormatInfo; - static ParseRepeatPattern(format: string, pos: number, patternChar: string): number; - static ParseNextChar(format: string, pos: number): number; - static ParseQuoteString(format: string, pos: number, result: string[]): number; - static FormatDigits(sb: string[], value: number, len: number, overrideLenLimit?: boolean): void; - static FormatMonth(month: number, repeat: number, info: DateTimeFormatInfo): string; - static FormatDayOfWeek(dayOfWeek: DayOfWeek, repeat: number, info: DateTimeFormatInfo): string; - static HebrewFormatDigits(sb: string[], digits: number): string; - static FormatHebrewMonthName(obj: DateTime, month: number, repeat: number, info: DateTimeFormatInfo): string; - } -} -declare module Fayde.Localization { - function Format(format: string, ...items: any[]): string; - function FormatSingle(obj: any, format: string): string; - interface IFormattable { - (obj: any, format: string, provider?: any): string; - } - function RegisterFormattable(type: Function, formatter: IFormattable): void; -} -declare module Fayde.Localization { -} -declare module Fayde.Localization { - class NumberFormatInfo { - CurrencyDecimalDigits: number; - CurrencyDecimalSeparator: string; - CurrencyGroupSeparator: string; - CurrencyGroupSizes: number[]; - CurrencyNegativePattern: number; - CurrencyPositivePattern: number; - CurrencySymbol: string; - NaNSymbol: string; - NegativeInfinitySymbol: string; - PositiveInfinitySymbol: string; - NegativeSign: string; - PositiveSign: string; - NumberDecimalDigits: number; - NumberDecimalSeparator: string; - NumberGroupSeparator: string; - NumberGroupSizes: number[]; - NumberNegativePattern: number; - PercentDecimalDigits: number; - PercentDecimalSeparator: string; - PercentGroupSeparator: string; - PercentGroupSizes: number[]; - PercentNegativePattern: number; - PercentPositivePattern: number; - PercentSymbol: string; - PerMilleSymbol: string; - static Instance: NumberFormatInfo; - FormatCurrency(num: number, precision: number): string; - FormatNumber(num: number, precision: number, ignoreGroupSep?: boolean): string; - FormatPercent(num: number, precision: number): string; - FormatGeneral(num: number, precision: number): string; - FormatDecimal(num: number, precision: number): string; - FormatExponential(num: number, precision: number): string; - FormatHexadecimal(num: number, precision: number): string; - FormatRawNumber(num: number, precision: number, decSep: string, groupSep: string, groupSizes: number[]): string; - } -} -declare module Fayde.Localization { -} -declare module Fayde.Localization { -} -declare module Fayde.MVVM { - interface IValidationFunc { - (value: any, propertyName: string, entity: any): any[]; - } - interface IAutoApplier { - Notify(...properties: string[]): IAutoApplier; - Notify(properties: string[]): IAutoApplier; - Validate(propertyName: string, ...validators: IValidationFunc[]): IAutoApplier; - Finish(): T; - } - function AutoModel(typeOrModel: any): IAutoApplier; -} -declare module Fayde.MVVM { - function NotifyProperties(type: any, propNames: string[]): void; - class ObservableObject implements INotifyPropertyChanged { - PropertyChanged: nullstone.Event; - OnPropertyChanged(propertyName: string): void; - } -} -declare module Fayde.MVVM { - class ViewModelBase extends ObservableObject { - } -} -declare module Fayde.MVVM { - interface IDialogViewModelSettings { - AcceptAction?: (data: TAccept) => any; - CompleteAction?: (pars: IOverlayCompleteParameters) => any; - ViewModelBuilder?: (builder: TBuilder) => any; - CanOpen?: (builder: TBuilder) => boolean; - } - class DialogViewModel extends ViewModelBase { - IsOpen: boolean; - OverlayDataContext: any; - RequestOpenCommand: RelayCommand; - ClosedCommand: RelayCommand; - AcceptAction: (data: TAccept) => any; - CompleteAction: (pars: IOverlayCompleteParameters) => any; - ViewModelBuilder: (builder: TBuilder) => any; - CanOpen: (builder: TBuilder) => boolean; - constructor(settings?: IDialogViewModelSettings); - private Closed_Execute(parameter); - private RequestOpen_Execute(parameter); - private RequestOpen_CanExecute(parameter); - } -} -declare module Fayde.MVVM { - interface IEntity extends INotifyPropertyChanged, Data.INotifyDataErrorInfo { - OnPropertyChanged(propertyName: string): any; - AddError(propertyName: string, errorMessage: string): any; - RemoveError(propertyName: string, errorMessage: string): any; - ClearErrors(propertyName: string): any; - } - class Entity implements IEntity { - PropertyChanged: nullstone.Event; - OnPropertyChanged(propertyName: string): void; - private _Errors; - ErrorsChanged: nullstone.Event; - HasErrors: boolean; - AddError(propertyName: string, errorMessage: string): void; - RemoveError(propertyName: string, errorMessage: string): void; - ClearErrors(propertyName: string): void; - GetErrors(propertyName: string): nullstone.IEnumerable; - static ApplyTo(model: TIn): TOut; - } -} -declare module Fayde.MVVM { - interface IOverlayCompleteParameters { - Result: boolean; - Data: any; - } -} -declare module Fayde.Navigation { - class Route { - View: Uri; - HashParams: { - [key: string]: string; - }; - DataContext: any; - constructor(view: Uri, hashParams: { - [key: string]: string; - }, dataContext: any); - } -} -declare module Fayde.MVVM { - interface IViewModelProvider { - ResolveViewModel(route: Fayde.Navigation.Route): any; - } - var IViewModelProvider_: nullstone.Interface; -} -declare module Fayde.MVVM { - class RelayCommand implements Input.ICommand { - constructor(execute?: (parameter: any) => void, canExecute?: (parameter: any) => boolean); - Execute(parameter: any): void; - CanExecute(parameter: any): boolean; - CanExecuteChanged: nullstone.Event<{}>; - ForceCanExecuteChanged(): void; - } -} -declare module Fayde.Markup { - interface IEventFilter { - Filter(sender: any, e: nullstone.IEventArgs, parameter: any): boolean; - } - var IEventFilter_: nullstone.Interface; - class EventBinding implements nullstone.markup.IMarkupExtension { - CommandPath: string; - Command: Data.BindingExpressionBase; - CommandParameter: Data.BindingExpressionBase; - CommandBinding: Data.Binding; - CommandParameterBinding: Data.Binding; - Filter: IEventFilter; - init(val: string): void; - transmute(os: any[]): any; - private $$coerce(); - } -} -declare module Fayde.Markup { - import XamlMarkup = nullstone.markup.xaml.XamlMarkup; - function Resolve(uri: string | Uri): Promise; - function Resolve(uri: string | Uri, excludeUri: string | Uri): Promise; -} -declare module Fayde.Markup { - import XamlMarkup = nullstone.markup.xaml.XamlMarkup; - function Retrieve(uri: string): Promise; - function Retrieve(uri: Uri): Promise; -} -declare module Fayde.Markup { - class StaticResource implements nullstone.markup.IMarkupExtension { - ResourceKey: string; - private $$app; - private $$resources; - init(val: string): void; - transmute(os: any[]): any; - setContext(app: Application, resources: ResourceDictionary[]): void; - } -} -declare module Fayde.Media { - class Brush extends DependencyObject implements minerva.IBrush { - static TransformProperty: DependencyProperty; - Transform: Media.Transform; - private _CachedBounds; - private _CachedBrush; - constructor(); - isTransparent(): boolean; - setupBrush(ctx: CanvasRenderingContext2D, bounds: minerva.Rect): void; - toHtml5Object(): any; - CreateBrush(ctx: CanvasRenderingContext2D, bounds: minerva.Rect): any; - InvalidateBrush(): void; - } -} -declare module Fayde.Media { - class Geometry extends DependencyObject implements minerva.IGeometry { - private _Path; - private _LocalBounds; - static TransformProperty: DependencyProperty; - Transform: Transform; - constructor(); - GetBounds(pars?: minerva.path.IStrokeParameters): minerva.Rect; - Draw(ctx: minerva.core.render.RenderContext): void; - ComputePathBounds(pars: minerva.path.IStrokeParameters): minerva.Rect; - InvalidateGeometry(): void; - _Build(): minerva.path.Path; - Serialize(): string; - } - class GeometryCollection extends XamlObjectCollection { - AddingToCollection(value: Geometry, error: BError): boolean; - RemovedFromCollection(value: Geometry, isValueSafe: boolean): void; - } -} -declare module Fayde.Media { - class EllipseGeometry extends Geometry { - static CenterProperty: DependencyProperty; - static RadiusXProperty: DependencyProperty; - static RadiusYProperty: DependencyProperty; - Center: Point; - RadiusX: number; - RadiusY: number; - _Build(): minerva.path.Path; - } -} -declare module Fayde.Media { - class GeneralTransform extends DependencyObject { - Inverse: GeneralTransform; - Transform(p: minerva.IPoint): Point; - TransformBounds(r: minerva.Rect): minerva.Rect; - TryTransform(inPoint: minerva.IPoint, outPoint: minerva.IPoint): boolean; - } - class InternalTransform extends GeneralTransform implements minerva.ITransform { - private _Raw; - constructor(raw: number[]); - Inverse: InternalTransform; - Value: Matrix3D; - getRaw(): number[]; - Transform(p: minerva.IPoint): Point; - TransformBounds(r: minerva.Rect): minerva.Rect; - CreateMatrix3DProjection(): Matrix3DProjection; - } -} -declare module Fayde.Shapes { - enum ShapeFlags { - None = 0, - Empty = 1, - Normal = 2, - Degenerate = 4, - Radii = 8, - } - enum PenLineCap { - Flat = 0, - Square = 1, - Round = 2, - Triangle = 3, - } - enum PenLineJoin { - Miter = 0, - Bevel = 1, - Round = 2, - } - enum FillRule { - EvenOdd = 0, - NonZero = 1, - } - enum SweepDirection { - Counterclockwise = 0, - Clockwise = 1, - } -} -declare module Fayde.Media { - class GeometryGroup extends Geometry { - static FillRulleProperty: DependencyProperty; - static ChildrenProperty: ImmutableDependencyProperty; - FillRule: Shapes.FillRule; - Children: GeometryCollection; - constructor(); - ComputePathBounds(pars: minerva.path.IStrokeParameters): minerva.Rect; - Draw(ctx: minerva.core.render.RenderContext): void; - } -} -declare module Fayde.Media { - class GradientBrush extends Brush { - static GradientStopsProperty: ImmutableDependencyProperty; - static MappingModeProperty: DependencyProperty; - static SpreadMethodProperty: DependencyProperty; - GradientStops: GradientStopCollection; - MappingMode: BrushMappingMode; - SpreadMethod: GradientSpreadMethod; - constructor(); - CreateBrush(ctx: CanvasRenderingContext2D, bounds: minerva.Rect): any; - CreatePad(ctx: CanvasRenderingContext2D, bounds: minerva.Rect): void; - CreateRepeat(ctx: CanvasRenderingContext2D, bounds: minerva.Rect): void; - CreateReflect(ctx: CanvasRenderingContext2D, bounds: minerva.Rect): void; - } -} -declare module Fayde.Media { - interface IGradientStop { - Color: Color; - Offset: number; - } - class GradientStop extends DependencyObject implements IGradientStop { - static ColorProperty: DependencyProperty; - static OffsetProperty: DependencyProperty; - Color: Color; - Offset: number; - toString(): string; - } - class GradientStopCollection extends XamlObjectCollection { - AddingToCollection(value: GradientStop, error: BError): boolean; - RemovedFromCollection(value: GradientStop, isValueSafe: boolean): boolean; - getPaddedEnumerable(): nullstone.IEnumerable; - } -} -declare module Fayde.Media { - class LineGeometry extends Geometry { - static StartPointProperty: DependencyProperty; - static EndPointProperty: DependencyProperty; - StartPoint: Point; - EndPoint: Point; - _Build(): minerva.path.Path; - } -} -declare module Fayde.Media { - class LinearGradientBrush extends GradientBrush { - static StartPointProperty: DependencyProperty; - static EndPointProperty: DependencyProperty; - StartPoint: Point; - EndPoint: Point; - CreatePad(ctx: CanvasRenderingContext2D, bounds: minerva.Rect): CanvasGradient; - CreateRepeat(ctx: CanvasRenderingContext2D, bounds: minerva.Rect): CanvasGradient; - CreateReflect(ctx: CanvasRenderingContext2D, bounds: minerva.Rect): CanvasGradient; - private CreateInterpolated(ctx, interpolator); - private _GetPointData(bounds); - toString(): string; - } -} -declare module Fayde.Media { - class Matrix { - _Raw: number[]; - private _Inverse; - constructor(raw?: number[]); - static Identity: Matrix; - M11: number; - M12: number; - M21: number; - M22: number; - OffsetX: number; - OffsetY: number; - Inverse: Matrix; - private _OnChanged(); - Clone(): Matrix; - } -} -declare module Fayde.Media { - interface IMatrix3DChangedListener { - Callback: (newMatrix3D: Matrix3D) => void; - Detach(): any; - } - class Matrix3D { - _Raw: number[]; - private _Inverse; - static FromRaw(raw: number[]): Matrix3D; - M11: number; - M12: number; - M13: number; - M14: number; - M21: number; - M22: number; - M23: number; - M24: number; - M31: number; - M32: number; - M33: number; - M34: number; - OffsetX: number; - OffsetY: number; - OffsetZ: number; - M44: number; - Inverse: Matrix3D; - private _Listeners; - Listen(func: (newMatrix: Matrix3D) => void): IMatrix3DChangedListener; - private _OnChanged(); - } -} -declare module Fayde.Media { - class Projection extends DependencyObject implements minerva.IProjection { - private _ProjectionMatrix; - private _ObjectWidth; - ObjectWidth: number; - private _ObjectHeight; - ObjectHeight: number; - setObjectSize(objectWidth: number, objectHeight: number): void; - getDistanceFromXYPlane(): number; - getTransform(): number[]; - CreateProjectionMatrix(): Matrix3D; - InvalidateProjection(): void; - } -} -declare module Fayde.Media { - class Matrix3DProjection extends Projection { - static ProjectionMatrixProperty: DependencyProperty; - ProjectionMatrix: Matrix3D; - CreateProjectionMatrix(): Matrix3D; - } -} -declare module Fayde.Media { - function ParseGeometry(val: string): Geometry; - function ParseShapePoints(val: string): Point[]; -} -declare module Fayde.Media { - class PathFigure extends DependencyObject { - static IsClosedProperty: DependencyProperty; - static StartPointProperty: DependencyProperty; - static IsFilledProperty: DependencyProperty; - static SegmentsProperty: ImmutableDependencyProperty; - static SegmentsSourceProperty: DependencyProperty; - IsClosed: boolean; - Segments: PathSegmentCollection; - SegmentsSource: nullstone.IEnumerable; - StartPoint: Point; - IsFilled: boolean; - private _OnSegmentsSourceChanged(args); - private _Path; - constructor(); - private _Build(); - private InvalidatePathFigure(); - MergeInto(rp: minerva.path.Path): void; - } - class PathFigureCollection extends XamlObjectCollection { - AddingToCollection(value: PathFigure, error: BError): boolean; - RemovedFromCollection(value: PathFigure, isValueSafe: boolean): void; - } -} -declare module Fayde.Media { - class PathGeometry extends Geometry implements minerva.shapes.path.IPathGeometry { - private _OverridePath; - static FillRuleProperty: DependencyProperty; - static FiguresProperty: ImmutableDependencyProperty; - FillRule: Shapes.FillRule; - Figures: PathFigureCollection; - fillRule: minerva.FillRule; - constructor(); - OverridePath(path: minerva.path.Path): void; - _Build(): minerva.path.Path; - InvalidateFigures(): void; - } -} -declare module Fayde.Media { - class PathSegment extends DependencyObject { - _Append(path: minerva.path.Path): void; - } - class PathSegmentCollection extends XamlObjectCollection { - private _Modifying; - AddingToCollection(value: PathSegment, error: BError): boolean; - RemovedFromCollection(value: PathSegment, isValueSafe: boolean): void; - private _Source; - SetSource(source: nullstone.IEnumerable): void; - private _OnSegmentsCollectionChanged(sender, args); - } -} -declare module Fayde.Media { - class ArcSegment extends PathSegment { - static IsLargeArcProperty: DependencyProperty; - static PointProperty: DependencyProperty; - static RotationAngleProperty: DependencyProperty; - static SizeProperty: DependencyProperty; - static SweepDirectionProperty: DependencyProperty; - IsLargeArc: boolean; - Point: Point; - RotationAngle: number; - Size: minerva.Size; - SweepDirection: Shapes.SweepDirection; - _Append(path: minerva.path.Path): void; - } - class BezierSegment extends PathSegment { - static Point1Property: DependencyProperty; - static Point2Property: DependencyProperty; - static Point3Property: DependencyProperty; - Point1: Point; - Point2: Point; - Point3: Point; - _Append(path: minerva.path.Path): void; - } - class LineSegment extends PathSegment { - static PointProperty: DependencyProperty; - Point: Point; - _Append(path: minerva.path.Path): void; - } - class PolyBezierSegment extends PathSegment { - static PointsProperty: ImmutableDependencyProperty; - Points: Shapes.PointCollection; - constructor(); - _Append(path: minerva.path.Path): void; - } - class PolyLineSegment extends PathSegment { - static PointsProperty: ImmutableDependencyProperty; - Points: Shapes.PointCollection; - constructor(); - _Append(path: minerva.path.Path): void; - } - class PolyQuadraticBezierSegment extends PathSegment { - static PointsProperty: ImmutableDependencyProperty; - Points: Shapes.PointCollection; - constructor(); - _Append(path: minerva.path.Path): void; - } - class QuadraticBezierSegment extends PathSegment { - static Point1Property: DependencyProperty; - static Point2Property: DependencyProperty; - Point1: Point; - Point2: Point; - _Append(path: minerva.path.Path): void; - } -} -declare module Fayde.Media { - class PlaneProjection extends Projection { - static CenterOfRotationXProperty: DependencyProperty; - static CenterOfRotationYProperty: DependencyProperty; - static CenterOfRotationZProperty: DependencyProperty; - static GlobalOffsetXProperty: DependencyProperty; - static GlobalOffsetYProperty: DependencyProperty; - static GlobalOffsetZProperty: DependencyProperty; - static LocalOffsetXProperty: DependencyProperty; - static LocalOffsetYProperty: DependencyProperty; - static LocalOffsetZProperty: DependencyProperty; - static RotationXProperty: DependencyProperty; - static RotationYProperty: DependencyProperty; - static RotationZProperty: DependencyProperty; - CenterOfRotationX: number; - CenterOfRotationY: number; - CenterOfRotationZ: number; - GlobalOffsetX: number; - GlobalOffsetY: number; - GlobalOffsetZ: number; - LocalOffsetX: number; - LocalOffsetY: number; - LocalOffsetZ: number; - RotationX: number; - RotationY: number; - RotationZ: number; - getDistanceFromXYPlane(): number; - CreateProjectionMatrix3D(): Matrix3D; - } -} -declare module Fayde.Media { - class RadialGradientBrush extends GradientBrush { - static CenterProperty: DependencyProperty; - static GradientOriginProperty: DependencyProperty; - static RadiusXProperty: DependencyProperty; - static RadiusYProperty: DependencyProperty; - Center: Point; - GradientOrigin: Point; - RadiusX: number; - RadiusY: number; - CreatePad(ctx: CanvasRenderingContext2D, bounds: minerva.Rect): any; - CreateRepeat(ctx: CanvasRenderingContext2D, bounds: minerva.Rect): CanvasPattern; - CreateReflect(ctx: CanvasRenderingContext2D, bounds: minerva.Rect): CanvasPattern; - private CreateInterpolated(data, bounds, reflect); - private FitPattern(ctx, fill, data, bounds); - private _GetPointData(bounds); - } -} -declare module Fayde.Media { - class RectangleGeometry extends Geometry { - static RectProperty: DependencyProperty; - static RadiusXProperty: DependencyProperty; - static RadiusYProperty: DependencyProperty; - Rect: minerva.Rect; - RadiusX: number; - RadiusY: number; - _Build(): minerva.path.Path; - } -} -declare module Fayde.Media { - class SolidColorBrush extends Brush { - static ColorProperty: DependencyProperty; - Color: Color; - constructor(...args: any[]); - isTransparent(): boolean; - static FromColor(color: Color): SolidColorBrush; - setupBrush(ctx: CanvasRenderingContext2D, bounds: minerva.Rect): void; - CreateBrush(ctx: CanvasRenderingContext2D, bounds: minerva.Rect): any; - } -} -declare module Fayde.Media { - class TextOptions { - static TextHintingModeProperty: DependencyProperty; - static GetTextHintingMode(d: DependencyObject): TextHintingMode; - static SetTextHintingMode(d: DependencyObject, value: TextHintingMode): void; - } -} -declare module Fayde.Media { - class TileBrush extends Brush { - static AlignmentXProperty: DependencyProperty; - static AlignmentYProperty: DependencyProperty; - static StretchProperty: DependencyProperty; - AlignmentX: AlignmentX; - AlignmentY: AlignmentY; - Stretch: Stretch; - CreateBrush(ctx: CanvasRenderingContext2D, bounds: minerva.Rect): CanvasPattern; - GetTileExtents(): minerva.Rect; - DrawTile(canvasCtx: CanvasRenderingContext2D, bounds: minerva.Rect): void; - } -} -declare module Fayde.Media { - class Transform extends GeneralTransform implements minerva.ITransform { - private _Value; - constructor(); - Value: Matrix; - getRaw(): number[]; - Inverse: Transform; - Transform(p: minerva.IPoint): Point; - TransformBounds(r: minerva.Rect): minerva.Rect; - TryTransform(inPoint: minerva.IPoint, outPoint: minerva.IPoint): boolean; - InvalidateValue(): void; - _BuildValue(): number[]; - static copyMatTo(t: Transform, mat: number[]): void; - } - class MatrixTransform extends Transform { - static MatrixProperty: DependencyProperty; - Matrix: Matrix; - _BuildValue(): number[]; - Clone(): MatrixTransform; - } -} -declare module Fayde.Media { - class RotateTransform extends Transform { - static AngleProperty: DependencyProperty; - static CenterXProperty: DependencyProperty; - static CenterYProperty: DependencyProperty; - Angle: number; - CenterX: number; - CenterY: number; - _BuildValue(): number[]; - } - class ScaleTransform extends Transform { - static CenterXProperty: DependencyProperty; - static CenterYProperty: DependencyProperty; - static ScaleXProperty: DependencyProperty; - static ScaleYProperty: DependencyProperty; - CenterX: number; - CenterY: number; - ScaleX: number; - ScaleY: number; - _BuildValue(): number[]; - } - class SkewTransform extends Transform { - static AngleXProperty: DependencyProperty; - static AngleYProperty: DependencyProperty; - static CenterXProperty: DependencyProperty; - static CenterYProperty: DependencyProperty; - AngleX: number; - AngleY: number; - CenterX: number; - CenterY: number; - _BuildValue(): number[]; - } - class TranslateTransform extends Transform { - static XProperty: DependencyProperty; - static YProperty: DependencyProperty; - X: number; - Y: number; - _BuildValue(): number[]; - } - class TransformCollection extends XamlObjectCollection { - AddingToCollection(value: Transform, error: BError): boolean; - RemovedFromCollection(value: Transform, isValueSafe: boolean): boolean; - } - class TransformGroup extends Transform { - static ChildrenProperty: ImmutableDependencyProperty; - Children: TransformCollection; - constructor(); - _BuildValue(): number[]; - } -} -declare module Fayde.Navigation { - function Navigate(source: DependencyObject, targetName: string, navigateUri: Uri): void; -} -declare module Fayde.Navigation { - class NavigationService { - Href: string; - Hash: string; - LocationChanged: nullstone.Event<{}>; - constructor(); - CurrentUri: Uri; - Navigate(uri: Uri): boolean; - private _HandleFragmentChange(); - } -} -declare module Fayde.Navigation { - class RouteMapper extends DependencyObject { - static RouteMappingsProperty: ImmutableDependencyProperty>; - static ViewModelProviderProperty: DependencyProperty; - RouteMappings: XamlObjectCollection; - ViewModelProvider: Fayde.MVVM.IViewModelProvider; - constructor(); - MapUri(uri: Uri): Route; - } -} -declare module Fayde.Navigation { - class RouteMapping extends DependencyObject { - static ViewProperty: DependencyProperty; - static UriProperty: DependencyProperty; - View: Uri; - Uri: Uri; - MapUri(uri: Uri): Route; - } -} -declare module Fayde.Navigation { - class UriMapper extends DependencyObject { - static UriMappingsProperty: ImmutableDependencyProperty>; - UriMappings: XamlObjectCollection; - constructor(); - MapUri(uri: Uri): Uri; - } -} -declare module Fayde.Navigation { - class UriMapping extends DependencyObject { - static MappedUriProperty: DependencyProperty; - static UriProperty: DependencyProperty; - MappedUri: Uri; - Uri: Uri; - MapUri(uri: Uri): Uri; - } -} -declare class Color implements ICloneable { - private static __NoAlphaRegex; - private static __AlphaRegex; - R: number; - G: number; - B: number; - A: number; - Add(color2: Color): Color; - Subtract(color2: Color): Color; - Multiply(factor: number): Color; - Equals(other: Color): boolean; - toString(): string; - ToHexStringNoAlpha(): string; - Clone(): Color; - static LERP(start: Color, end: Color, p: number): Color; - static FromRgba(r: number, g: number, b: number, a: number): Color; - static FromHex(hex: string): Color; - static KnownColors: { - AliceBlue: Color; - AntiqueWhite: Color; - Aqua: Color; - Aquamarine: Color; - Azure: Color; - Beige: Color; - Bisque: Color; - Black: Color; - BlanchedAlmond: Color; - Blue: Color; - BlueViolet: Color; - Brown: Color; - BurlyWood: Color; - CadetBlue: Color; - Chartreuse: Color; - Chocolate: Color; - Coral: Color; - CornflowerBlue: Color; - Cornsilk: Color; - Crimson: Color; - Cyan: Color; - DarkBlue: Color; - DarkCyan: Color; - DarkGoldenrod: Color; - DarkGray: Color; - DarkGreen: Color; - DarkKhaki: Color; - DarkMagenta: Color; - DarkOliveGreen: Color; - DarkOrange: Color; - DarkOrchid: Color; - DarkRed: Color; - DarkSalmon: Color; - DarkSeaGreen: Color; - DarkSlateBlue: Color; - DarkSlateGray: Color; - DarkTurquoise: Color; - DarkViolet: Color; - DeepPink: Color; - DeepSkyBlue: Color; - DimGray: Color; - DodgerBlue: Color; - Firebrick: Color; - FloralWhite: Color; - ForestGreen: Color; - Fuchsia: Color; - Gainsboro: Color; - GhostWhite: Color; - Gold: Color; - Goldenrod: Color; - Gray: Color; - Green: Color; - GreenYellow: Color; - Honeydew: Color; - HotPink: Color; - IndianRed: Color; - Indigo: Color; - Ivory: Color; - Khaki: Color; - Lavender: Color; - LavenderBlush: Color; - LawnGreen: Color; - LemonChiffon: Color; - LightBlue: Color; - LightCoral: Color; - LightCyan: Color; - LightGoldenrodYellow: Color; - LightGray: Color; - LightGreen: Color; - LightPink: Color; - LightSalmon: Color; - LightSeaGreen: Color; - LightSkyBlue: Color; - LightSlateGray: Color; - LightSteelBlue: Color; - LightYellow: Color; - Lime: Color; - LimeGreen: Color; - Linen: Color; - Magenta: Color; - Maroon: Color; - MediumAquamarine: Color; - MediumBlue: Color; - MediumOrchid: Color; - MediumPurple: Color; - MediumSeaGreen: Color; - MediumSlateBlue: Color; - MediumSpringGreen: Color; - MediumTurquoise: Color; - MediumVioletRed: Color; - MidnightBlue: Color; - MintCream: Color; - MistyRose: Color; - Moccasin: Color; - NavajoWhite: Color; - Navy: Color; - OldLace: Color; - Olive: Color; - OliveDrab: Color; - Orange: Color; - OrangeRed: Color; - Orchid: Color; - PaleGoldenrod: Color; - PaleGreen: Color; - PaleTurquoise: Color; - PaleVioletRed: Color; - PapayaWhip: Color; - PeachPuff: Color; - Peru: Color; - Pink: Color; - Plum: Color; - PowderBlue: Color; - Purple: Color; - Red: Color; - RosyBrown: Color; - RoyalBlue: Color; - SaddleBrown: Color; - Salmon: Color; - SandyBrown: Color; - SeaGreen: Color; - SeaShell: Color; - Sienna: Color; - Silver: Color; - SkyBlue: Color; - SlateBlue: Color; - SlateGray: Color; - Snow: Color; - SpringGreen: Color; - SteelBlue: Color; - Tan: Color; - Teal: Color; - Thistle: Color; - Tomato: Color; - Transparent: Color; - Turquoise: Color; - Violet: Color; - Wheat: Color; - White: Color; - WhiteSmoke: Color; - Yellow: Color; - YellowGreen: Color; - }; -} -declare class CornerRadius extends minerva.CornerRadius implements ICloneable { - Clone(): CornerRadius; -} -declare enum DurationType { - Automatic = 0, - Forever = 1, - TimeSpan = 2, -} -declare class Duration implements ICloneable { - private _Type; - private _TimeSpan; - constructor(ts?: TimeSpan); - Clone(): Duration; - Type: DurationType; - TimeSpan: TimeSpan; - HasTimeSpan: boolean; - IsForever: boolean; - IsAutomatic: boolean; - IsZero: boolean; - static Automatic: Duration; - static Forever: Duration; -} -declare class FontFamily implements ICloneable { - FamilyNames: string; - constructor(FamilyNames: string); - toString(): string; - Clone(): FontFamily; -} -declare class KeyTime implements ICloneable { - private _IsPaced; - private _IsUniform; - private _TimeSpan; - private _Percent; - IsValid: boolean; - static CreateUniform(): KeyTime; - static CreateTimeSpan(ts: TimeSpan): KeyTime; - Clone(): KeyTime; - IsPaced: boolean; - IsUniform: boolean; - HasTimeSpan: boolean; - TimeSpan: TimeSpan; - HasPercent: boolean; - Percent: number; -} -declare class Length { -} -declare class Rect extends minerva.Rect { - Clone(): Rect; -} -declare class Size extends minerva.Size { - Clone(): Size; -} -declare class Thickness extends minerva.Thickness { - Clone(): Thickness; - toString(): string; -} -declare module Fayde { - function splitCommaList(str: string): string[]; -} -declare class BError { - static Argument: number; - static InvalidOperation: number; - static XamlParse: number; - static Attach: number; - Message: string; - Number: number; - Data: any; - ThrowException(): void; -} -declare module Fayde { - function Bootstrap(onLoaded?: (app: Application) => any): void; -} -declare module Fayde { - function LoadConfigJson(onComplete: (config: any, err?: any) => void): void; -} -declare module Fayde { - module Render { - var Debug: boolean; - var DebugIndent: number; - } - module Layout { - var Debug: boolean; - var DebugIndent: number; - } - module Media { - module Animation { - var Log: boolean; - var LogApply: boolean; - } - module VSM { - var Debug: boolean; - } - } - module Data { - var Debug: boolean; - var IsCounterEnabled: boolean; - var DataContextCounter: number; - } - var IsInspectionOn: boolean; -} -declare module NumberEx { - function AreClose(val1: number, val2: number): boolean; - function IsLessThanClose(val1: number, val2: number): boolean; - function IsGreaterThanClose(val1: number, val2: number): boolean; -} -declare module StringEx { - function Format(format: string, ...items: any[]): string; -} -interface ITimelineEvent { - Type: string; - Name: string; - Time: number; -} -interface ITimelineGroup { - Type: string; - Data: string; - Start: number; - Length: number; -} -declare class TimelineProfile { - private static _Events; - static Groups: ITimelineGroup[]; - static TimelineStart: number; - static IsNextLayoutPassProfiled: boolean; - static Parse(isStart: boolean, name: string): void; - static Navigate(isStart: boolean, name?: string): void; - static LayoutPass(isStart: boolean): void; - private static _FinishEvent(type, name?); -} -declare module Fayde.Shapes { - class DoubleCollection extends XamlObjectCollection { - } -} -declare module Fayde.Shapes { - import ShapeUpdater = minerva.shapes.shape.ShapeUpdater; - class Shape extends FrameworkElement { - CreateLayoutUpdater(): ShapeUpdater; - static FillProperty: DependencyProperty; - static StretchProperty: DependencyProperty; - static StrokeProperty: DependencyProperty; - static StrokeThicknessProperty: DependencyProperty; - static StrokeDashArrayProperty: DependencyProperty; - static StrokeDashCapProperty: DependencyProperty; - static StrokeDashOffsetProperty: DependencyProperty; - static StrokeEndLineCapProperty: DependencyProperty; - static StrokeLineJoinProperty: DependencyProperty; - static StrokeMiterLimitProperty: DependencyProperty; - static StrokeStartLineCapProperty: DependencyProperty; - Fill: Media.Brush; - Stretch: Media.Stretch; - Stroke: Media.Brush; - StrokeThickness: number; - StrokeDashArray: DoubleCollection; - StrokeDashCap: PenLineCap; - StrokeDashOffset: number; - StrokeEndLineCap: PenLineCap; - StrokeLineJoin: PenLineJoin; - StrokeMiterLimit: number; - StrokeStartLineCap: PenLineCap; - constructor(); - } -} -declare module Fayde.Shapes { - import EllipseUpdater = minerva.shapes.ellipse.EllipseUpdater; - class Ellipse extends Shape { - CreateLayoutUpdater(): EllipseUpdater; - constructor(); - } -} -declare module Fayde.Shapes { - import LineUpdater = minerva.shapes.line.LineUpdater; - class Line extends Shape { - CreateLayoutUpdater(): LineUpdater; - static X1Property: DependencyProperty; - static Y1Property: DependencyProperty; - static X2Property: DependencyProperty; - static Y2Property: DependencyProperty; - X1: number; - Y1: number; - X2: number; - Y2: number; - } -} -declare module Fayde.Shapes { - import PathUpdater = minerva.shapes.path.PathUpdater; - class Path extends Shape { - CreateLayoutUpdater(): PathUpdater; - private static _DataCoercer(dobj, propd, value); - static DataProperty: DependencyProperty; - Data: Media.Geometry; - } -} -declare module Fayde.Shapes { - class PointCollection implements nullstone.ICollection { - private _ht; - Count: number; - static FromData(data: string): PointCollection; - static FromArray(data: Point[]): PointCollection; - GetValueAt(index: number): Point; - SetValueAt(index: number, value: Point): boolean; - Add(value: Point): void; - AddRange(points: Point[]): void; - Insert(index: number, value: Point): void; - Remove(value: Point): boolean; - RemoveAt(index: number): void; - Clear(): void; - IndexOf(value: Point): number; - Contains(value: Point): boolean; - getEnumerator(reverse?: boolean): nullstone.IEnumerator; - } -} -declare module Fayde.Shapes { - import PolygonUpdater = minerva.shapes.polygon.PolygonUpdater; - class Polygon extends Shape { - CreateLayoutUpdater(): PolygonUpdater; - private static _PointsCoercer(dobj, propd, value); - static FillRuleProperty: DependencyProperty; - static PointsProperty: DependencyProperty; - FillRule: FillRule; - Points: PointCollection; - constructor(); - } -} -declare module Fayde.Shapes { - import PolylineUpdater = minerva.shapes.polyline.PolylineUpdater; - class Polyline extends Shape { - CreateLayoutUpdater(): PolylineUpdater; - private static _PointsCoercer(d, propd, value); - static FillRuleProperty: DependencyProperty; - static PointsProperty: DependencyProperty; - FillRule: FillRule; - Points: PointCollection; - constructor(); - } -} -declare module Fayde.Shapes { - import RectangleUpdater = minerva.shapes.rectangle.RectangleUpdater; - class Rectangle extends Shape { - CreateLayoutUpdater(): RectangleUpdater; - static RadiusXProperty: DependencyProperty; - static RadiusYProperty: DependencyProperty; - RadiusX: number; - RadiusY: number; - constructor(); - } -} -declare module Fayde.Text.Buffer { - function cut(text: string, start: number, len: number): string; - function insert(text: string, index: number, str: string): string; - function replace(text: string, start: number, len: number, str: string): string; -} -declare module Fayde.Text { - interface ITextOwner { - text: string; - } -} -declare module Fayde.Text { - enum EmitChangedType { - NOTHING = 0, - SELECTION = 1, - TEXT = 2, - } - class Proxy implements ITextOwner { - selAnchor: number; - selCursor: number; - selText: string; - text: string; - maxLength: number; - acceptsReturn: boolean; - private $$batch; - private $$emit; - private $$syncing; - private $$eventsMask; - private $$history; - SyncSelectionStart: (value: number) => void; - SyncSelectionLength: (value: number) => void; - SyncText: (value: string) => void; - constructor(eventsMask: EmitChangedType, maxUndoCount: number); - setAnchorCursor(anchor: number, cursor: number): boolean; - enterText(newText: string, isPaste?: boolean): boolean; - removeText(start: number, length: number): boolean; - paste(text: string): boolean; - undo(): void; - redo(): void; - begin(): void; - end(): void; - beginSelect(cursor: number): void; - adjustSelection(cursor: number): void; - selectAll(): void; - clearSelection(start: number): void; - select(start: number, length: number): boolean; - setSelectionStart(value: number): void; - setSelectionLength(value: number): void; - setText(value: string): void; - getSelectedText(): string; - private $syncEmit(syncText?); - private $syncText(); - } -} -declare module Fayde.Validation { - function Emit(fe: FrameworkElement, binding: Data.Binding, oldError: ValidationError, error: ValidationError): void; -} -declare module Fayde.Validation { - import ReadOnlyObservableCollection = Collections.ReadOnlyObservableCollection; - var HasErrorProperty: DependencyProperty; - var ErrorsProperty: DependencyProperty; - function GetErrors(dobj: DependencyObject): ReadOnlyObservableCollection; - function GetHasError(dobj: DependencyObject): boolean; - function AddError(element: FrameworkElement, error: ValidationError): void; - function RemoveError(element: FrameworkElement, error: ValidationError): void; -} -declare module Fayde.Validation { - class ValidationError { - ErrorContent: any; - Exception: Exception; - PropertyName: string; - constructor(content: any, exception: Exception, propertyName: string); - constructor(content: any, exception: Error, propertyName: string); - } -} -declare module Fayde.Validation { - enum ValidationErrorEventAction { - Added = 0, - Removed = 1, - } -} -declare module Fayde.Validation { - class ValidationErrorEventArgs extends RoutedEventArgs { - Action: ValidationErrorEventAction; - Error: ValidationError; - constructor(action: ValidationErrorEventAction, error: ValidationError); - } -} -declare module Fayde.Controls.Internal { - interface ICursorAdvancer { - CursorDown(cursor: number, isPage: boolean): number; - CursorUp(cursor: number, isPage: boolean): number; - CursorNextWord(cursor: number): number; - CursorPrevWord(cursor: number): number; - CursorNextChar(cursor: number): number; - CursorPrevChar(cursor: number): number; - CursorLineBegin(cursor: number): number; - CursorLineEnd(cursor: number): number; - CursorBegin(cursor: number): number; - CursorEnd(cursor: number): number; - } - class TextBoxCursorAdvancer implements ICursorAdvancer { - private $textOwner; - constructor($textOwner: Text.ITextOwner); - CursorDown(cursor: number, isPage: boolean): number; - CursorUp(cursor: number, isPage: boolean): number; - CursorNextWord(cursor: number): number; - CursorPrevWord(cursor: number): number; - CursorNextChar(cursor: number): number; - CursorPrevChar(cursor: number): number; - CursorLineBegin(cursor: number): number; - CursorLineEnd(cursor: number): number; - CursorBegin(cursor: number): number; - CursorEnd(cursor: number): number; - } - class PasswordBoxCursorAdvancer implements ICursorAdvancer { - private $textOwner; - constructor($textOwner: Text.ITextOwner); - CursorDown(cursor: number, isPage: boolean): number; - CursorUp(cursor: number, isPage: boolean): number; - CursorNextWord(cursor: number): number; - CursorPrevWord(cursor: number): number; - CursorNextChar(cursor: number): number; - CursorPrevChar(cursor: number): number; - CursorLineBegin(cursor: number): number; - CursorLineEnd(cursor: number): number; - CursorBegin(cursor: number): number; - CursorEnd(cursor: number): number; - } -} -declare module Fayde.Controls.Internal { - interface IItemContainersOwner { - PrepareContainerForItem(container: UIElement, item: any): any; - ClearContainerForItem(container: UIElement, item: any): any; - GetContainerForItem(): UIElement; - IsItemItsOwnContainer(item: any): boolean; - } - interface IItemContainersManager { - IsRecycling: boolean; - IndexFromContainer(container: UIElement): number; - ContainerFromIndex(index: number): UIElement; - ItemFromContainer(container: UIElement): any; - ContainerFromItem(item: any): UIElement; - OnItemsAdded(index: number, newItems: any[]): any; - OnItemsRemoved(index: number, oldItems: any[]): any; - DisposeContainers(index?: number, count?: number): UIElement[]; - CreateGenerator(index: number, count: number): IContainerGenerator; - GetEnumerator(index?: number, count?: number): IContainerEnumerator; - } - class ItemContainersManager implements IItemContainersManager { - Owner: IItemContainersOwner; - private _Items; - private _Containers; - private _Cache; - IsRecycling: boolean; - constructor(Owner: IItemContainersOwner); - IndexFromContainer(container: UIElement): number; - ContainerFromIndex(index: number): UIElement; - ItemFromContainer(container: UIElement): any; - ContainerFromItem(item: any): UIElement; - OnItemsAdded(index: number, newItems: any[]): void; - OnItemsRemoved(index: number, oldItems: any[]): void; - DisposeContainers(index?: number, count?: number): UIElement[]; - CreateGenerator(index: number, count: number): IContainerGenerator; - GetEnumerator(start?: number, count?: number): IContainerEnumerator; - } - interface IContainerGenerator { - IsCurrentNew: boolean; - Current: UIElement; - CurrentItem: any; - CurrentIndex: number; - GenerateIndex: number; - Generate(): boolean; - } - interface IContainerEnumerator extends nullstone.IEnumerator { - CurrentItem: any; - CurrentIndex: number; - } -} -declare module Fayde.Controls.Internal { - interface IRange { - Minimum: number; - Maximum: number; - Value: number; - OnMinimumChanged(oldMin: number, newMin: number): any; - OnMaximumChanged(oldMax: number, newMax: number): any; - OnValueChanged(oldVal: number, newVal: number): any; - } - interface IRangeCoercer { - OnMinimumChanged(oldMinimum: number, newMinimum: number): any; - OnMaximumChanged(oldMaximum: number, newMaximum: number): any; - OnValueChanged(oldValue: number, newValue: number): any; - } - class RangeCoercer implements IRangeCoercer { - Range: IRange; - OnCoerceMaximum: (val: any) => void; - OnCoerceValue: (val: any) => void; - InitialMax: number; - InitialVal: number; - RequestedMax: number; - RequestedVal: number; - PreCoercedMax: number; - PreCoercedVal: number; - CoerceDepth: number; - Minimum: number; - Maximum: number; - Value: number; - constructor(Range: IRange, OnCoerceMaximum: (val: any) => void, OnCoerceValue: (val: any) => void); - OnMinimumChanged(oldMinimum: number, newMinimum: number): void; - OnMaximumChanged(oldMaximum: number, newMaximum: number): void; - OnValueChanged(oldValue: number, newValue: number): void; - CoerceMaximum(): void; - CoerceValue(): void; - } -} -declare module Fayde.Controls.Internal { - class TextBoxContentProxy { - private $$element; - setElement(fe: FrameworkElement, view: TextBoxView): void; - setHorizontalScrollBar(sbvis: ScrollBarVisibility): void; - setVerticalScrollBar(sbvis: ScrollBarVisibility): void; - } -} -declare module Fayde.Controls.Internal { - import TextBoxViewUpdater = minerva.controls.textboxview.TextBoxViewUpdater; - class TextBoxViewNode extends FENode { - LayoutUpdater: TextBoxViewUpdater; - } - class TextBoxView extends FrameworkElement { - XamlNode: TextBoxViewNode; - CreateLayoutUpdater(): TextBoxViewUpdater; - private _AutoRun; - constructor(); - private _InlineChanged(obj?); - setFontProperty(propd: DependencyProperty, value: any): void; - setFontAttr(attrName: string, value: any): void; - setCaretBrush(value: Media.Brush): void; - setIsFocused(isFocused: boolean): void; - setIsReadOnly(isReadOnly: boolean): void; - setTextAlignment(textAlignment: TextAlignment): void; - setTextWrapping(textWrapping: TextWrapping): void; - setSelectionStart(selectionStart: number): void; - setSelectionLength(selectionLength: number): void; - setText(text: string): void; - GetCursorFromPoint(point: Point): number; - } -} -declare module Fayde.Controls.Internal { - class VirtualizingPanelContainerOwner implements minerva.IVirtualizingContainerOwner { - private $$panel; - constructor($$panel: VirtualizingPanel); - itemCount: number; - createGenerator(index: number, count: number): minerva.IVirtualizingGenerator; - remove(index: number, count: number): void; - } -} -declare module Fayde.Controls.Primitives { - class DragCompletedEventArgs extends RoutedEventArgs { - HorizontalChange: number; - VerticalChange: number; - Canceled: boolean; - constructor(horizontal: number, vertical: number, canceled: boolean); - } - class DragDeltaEventArgs extends RoutedEventArgs { - HorizontalChange: number; - VerticalChange: number; - constructor(horizontal: number, vertical: number); - } - class DragStartedEventArgs extends RoutedEventArgs { - HorizontalOffset: number; - VerticalOffset: number; - constructor(horizontal: number, vertical: number); - } -} -declare module Fayde.Controls.Primitives { - import OverlayUpdater = minerva.controls.overlay.OverlayUpdater; - class OverlayNode extends FENode { - LayoutUpdater: OverlayUpdater; - XObject: Overlay; - private _Layer; - private _Mask; - EnsureLayer(): Panel; - EnsureMask(): Border; - private _OnMaskMouseDown(sender, args); - UpdateMask(): void; - OnIsAttachedChanged(newIsAttached: boolean): void; - RegisterInitiator(initiator: UIElement): void; - } - class Overlay extends FrameworkElement { - XamlNode: OverlayNode; - CreateNode(): OverlayNode; - CreateLayoutUpdater(): OverlayUpdater; - static VisualProperty: DependencyProperty; - static VisualUriProperty: DependencyProperty; - static VisualViewModelProperty: DependencyProperty; - static IsOpenProperty: DependencyProperty; - static MaskBrushProperty: DependencyProperty; - static ClosedCommandProperty: DependencyProperty; - Visual: UIElement; - VisualUri: Uri; - VisualViewModel: any; - IsOpen: boolean; - MaskBrush: Media.Brush; - ClosedCommand: Input.ICommand; - Opened: nullstone.Event; - Closed: nullstone.Event; - constructor(); - InitBindings(): void; - private _ContentControlForUri; - private _IgnoreClose; - private _OnVisualChanged(args); - private _OnVisualUriChanged(args); - private _OnVisualViewModelChanged(args); - private _SetVisualUri(uri); - private _ClearVisualUri(); - private _OnIsOpenChanged(args); - private _DoOpen(); - private _DoClose(result?); - Open(): void; - Close(result?: boolean): void; - private _GetDialogResult(); - static FindOverlay(visual: UIElement): Overlay; - } -} -declare module Fayde.Controls.Primitives { - class OverlayClosedEventArgs implements nullstone.IEventArgs { - Result: boolean; - Data: any; - constructor(result: boolean, data: any); - } -} -declare module Fayde.Controls.Primitives { - class ScrollData implements minerva.IScrollData { - canHorizontallyScroll: boolean; - canVerticallyScroll: boolean; - offsetX: number; - offsetY: number; - cachedOffsetX: number; - cachedOffsetY: number; - viewportWidth: number; - viewportHeight: number; - extentWidth: number; - extentHeight: number; - maxDesiredWidth: number; - maxDesiredHeight: number; - scrollOwner: ScrollViewer; - invalidate(): void; - } -} -declare module Fayde.Controls.Primitives { - enum ScrollEventType { - SmallDecrement = 0, - SmallIncrement = 1, - LargeDecrement = 2, - LargeIncrement = 3, - ThumbPosition = 4, - ThumbTrack = 5, - First = 6, - Last = 7, - EndScroll = 8, - } - class ScrollEventArgs extends RoutedEventArgs { - ScrollEventType: ScrollEventType; - Value: number; - constructor(scrollEventType: ScrollEventType, value: number); - } -} -declare module Fayde.Controls.Primitives { - class SelectionChangedEventArgs extends RoutedEventArgs { - OldValues: any[]; - NewValues: any[]; - constructor(oldValues: any[], newValues: any[]); - } -} -declare module Fayde.Controls.Primitives { - class SelectorSelection { - private _Owner; - private _SelectedItems; - private _SelectedItem; - private _IsUpdating; - private _AnchorIndex; - Mode: SelectionMode; - IsUpdating: boolean; - constructor(owner: Selector); - private _HandleOwnerSelectionChanged(sender, e); - RepopulateSelectedItems(): void; - ClearSelection(ignoreSelectedValue?: boolean): void; - Select(item: any): void; - private _SelectSingle(item, selIndex); - private _SelectExtended(item, selIndex); - private _SelectMultiple(item, selIndex); - SelectRange(startIndex: number, endIndex: number): void; - SelectAll(items: any[]): void; - SelectOnly(item: any): void; - Unselect(item: any): void; - AddToSelected(item: any): void; - RemoveFromSelected(item: any): void; - ReplaceSelection(item: any): void; - UpdateSelectorProperties(item: any, index: number, value: any): void; - UpdateCollectionView(item: any): boolean; - } -} -declare module Fayde.Providers { - enum StyleIndex { - VisualTree = 0, - ApplicationResources = 1, - Theme = 2, - Count = 3, - } - enum StyleMask { - None = 0, - VisualTree = 1, - ApplicationResources = 2, - Theme = 4, - All = 7, - } - interface IImplicitStyleHolder { - _ImplicitStyles: Style[]; - _StyleMask: number; - } - class ImplicitStyleBroker { - static Set(fe: FrameworkElement, mask: StyleMask, styles?: Style[]): void; - private static SetImpl(fe, mask, styles); - static Clear(fe: FrameworkElement, mask: StyleMask): void; - private static ApplyStyles(fe, mask, styles); - } -} -declare module Fayde.Providers { - interface IStyleHolder { - _LocalStyle: Style; - } - class LocalStyleBroker { - static Set(fe: FrameworkElement, newStyle: Style): void; - } -} -declare module Fayde.Providers { - function SwapStyles(fe: FrameworkElement, oldWalker: IStyleWalker, newWalker: IStyleWalker, isImplicit: boolean): void; -} -declare module Fayde.Data { - interface IOutValue { - Value: any; - } - class PropertyPath implements ICloneable { - private _Path; - private _ExpandedPath; - private _Propd; - constructor(path?: string, expandedPath?: string); - static CreateFromParameter(parameter: any): PropertyPath; - TryResolveDependencyProperty(refobj: IOutValue, promotedValues: any[]): DependencyProperty; - Path: string; - ExpandedPath: string; - ParsePath: string; - HasDependencyProperty: boolean; - DependencyProperty: DependencyProperty; - static ResolvePropertyPath(refobj: IOutValue, propertyPath: PropertyPath, promotedValues: any[]): DependencyProperty; - Clone(): PropertyPath; - } -} -declare module Fayde.Data { - interface IPropertyPathParserData { - typeName: string; - propertyName: string; - index: number; - } - enum PropertyNodeType { - None = 0, - AttachedProperty = 1, - Indexed = 2, - Property = 3, - } - class PropertyPathParser { - Path: string; - constructor(path: string); - Step(data: IPropertyPathParserData): PropertyNodeType; - } -} -declare module Fayde.Data { - interface IPropertyPathWalkerListener { - IsBrokenChanged(): any; - ValueChanged(): any; - } - interface IPropertyPathNode { - Next: IPropertyPathNode; - Value: any; - IsBroken: boolean; - ValueType: IType; - GetSource(): any; - SetSource(source: any): any; - SetValue(value: any): any; - Listen(listener: IPropertyPathNodeListener): any; - Unlisten(listener: IPropertyPathNodeListener): any; - } - interface ICollectionViewNode extends IPropertyPathNode { - BindToView: boolean; - } - interface IPropertyPathNodeListener { - IsBrokenChanged(node: IPropertyPathNode): any; - ValueChanged(node: IPropertyPathNode): any; - } - class PropertyPathWalker implements IPropertyPathNodeListener { - Path: string; - IsDataContextBound: boolean; - Source: any; - ValueInternal: any; - Node: IPropertyPathNode; - FinalNode: IPropertyPathNode; - private _Listener; - IsPathBroken: boolean; - FinalPropertyName: string; - constructor(path: string, bindDirectlyToSource?: boolean, bindsToView?: boolean, isDataContextBound?: boolean); - GetValue(item: any): any; - Update(source: any): void; - Listen(listener: IPropertyPathWalkerListener): void; - Unlisten(listener: IPropertyPathWalkerListener): void; - IsBrokenChanged(node: IPropertyPathNode): void; - ValueChanged(node: IPropertyPathNode): void; - GetContext(): any; - } -} -declare module Fayde.Input.TouchInternal { - interface ITouchHandler { - HandleTouches(type: Input.TouchInputType, touches: ActiveTouchBase[], emitLeave?: boolean, emitEnter?: boolean): boolean; - } - class ActiveTouchBase { - Identifier: number; - Position: Point; - Device: Input.ITouchDevice; - InputList: UINode[]; - private _IsEmitting; - private _PendingCapture; - private _PendingReleaseCapture; - private _Captured; - private _CapturedInputList; - private _FinishReleaseCaptureFunc; - constructor(touchHandler: ITouchHandler); - Capture(uie: UIElement): boolean; - ReleaseCapture(uie: UIElement): void; - private _PerformCapture(uin); - private _PerformReleaseCapture(); - Emit(type: Input.TouchInputType, newInputList: UINode[], emitLeave?: boolean, emitEnter?: boolean): boolean; - private _EmitList(type, list, endIndex?); - GetTouchPoint(relativeTo: UIElement): TouchPoint; - CreateTouchPoint(p: Point): TouchPoint; - private CreateTouchDevice(); - } -} -declare module Fayde.Input.TouchInternal { - interface IOffset { - left: number; - top: number; - } - class TouchInteropBase implements Fayde.Input.ITouchInterop, ITouchHandler { - Input: Engine.InputManager; - CanvasOffset: IOffset; - ActiveTouches: ActiveTouchBase[]; - CoordinateOffset: IOffset; - Register(input: Engine.InputManager, canvas: HTMLCanvasElement): void; - private _CalcOffset(canvas); - HandleTouches(type: Input.TouchInputType, touches: ActiveTouchBase[], emitLeave?: boolean, emitEnter?: boolean): boolean; - } -} -declare module Fayde.Input.TouchInternal { - class NonPointerTouchInterop extends TouchInteropBase { - Register(input: Engine.InputManager, canvas: HTMLCanvasElement): void; - private _HandleTouchStart(e); - private _HandleTouchEnd(e); - private _HandleTouchMove(e); - private _HandleTouchEnter(e); - private _HandleTouchLeave(e); - private TouchArrayFromList(list); - private FindTouchInList(identifier); - } -} -declare module Fayde.Input.TouchInternal { - class PointerTouchInterop extends TouchInteropBase { - Register(input: Engine.InputManager, canvas: HTMLCanvasElement): void; - private _HandlePointerDown(e); - private _HandlePointerUp(e); - private _HandlePointerMove(e); - private _HandlePointerEnter(e); - private _HandlePointerLeave(e); - private GetActiveTouch(e); - private FindTouchInList(identifier); - } -} -declare module Fayde.Markup.Internal { - interface IActiveObject { - obj: any; - xo: XamlObject; - dobj: DependencyObject; - rd: ResourceDictionary; - coll: nullstone.ICollection; - arr: any[]; - type: any; - set(obj: any): any; - setName(name: string): any; - getApp(): Application; - } - function createActiveObject(app: Application, namescope: NameScope, bindingSource: any): IActiveObject; -} -declare module Fayde.Markup.Internal { - interface IObjectActor { - start(): any; - end(): any; - } - function createObjectActor(pactor: IPropertyActor): IObjectActor; -} -declare module Fayde.Markup.Internal { - interface IPropertyActor { - init(nstate: any): any; - start(ownerType: any, name: string): any; - startContent(): any; - end(): any; - addObject(obj: any, key?: any): any; - setContentText(text: string): any; - setObject(ownerType: any, name: string, obj: any): any; - isNewResources(): boolean; - } - function createPropertyActor(cur: IActiveObject, extractType: (text: string) => any, extractDP: (text: string) => any): IPropertyActor; -} -declare module Fayde.Markup.Internal { - interface IResourcesActor { - start(): any; - end(): any; - get(): ResourceDictionary[]; - } - function createResourcesActor(cur: IActiveObject, resources: ResourceDictionary[]): IResourcesActor; -} -declare module Fayde.Media.Animation { - enum EasingMode { - EaseOut = 0, - EaseIn = 1, - EaseInOut = 2, - } - enum FillBehavior { - HoldEnd = 0, - Stop = 1, - } -} -declare module Fayde.Media.Animation { - class RepeatBehavior { - private _Duration; - private _Count; - IsForever: boolean; - static FromRepeatDuration(duration: Duration): RepeatBehavior; - static FromIterationCount(count: number): RepeatBehavior; - HasCount: boolean; - Count: number; - HasDuration: boolean; - Duration: Duration; - Clone(): RepeatBehavior; - static Forever: RepeatBehavior; - } -} -declare module Fayde.Media.Animation { - interface IClockData { - CurrentTime: TimeSpan; - Progress: number; - Completed: boolean; - } - class Timeline extends DependencyObject implements ITimeline { - static DEFAULT_REPEAT_BEHAVIOR: RepeatBehavior; - static AutoReverseProperty: DependencyProperty; - static BeginTimeProperty: DependencyProperty; - static DurationProperty: DependencyProperty; - static RepeatBehaviorProperty: DependencyProperty; - static SpeedRatioProperty: DependencyProperty; - static FillBehaviorProperty: DependencyProperty; - AutoReverse: boolean; - BeginTime: TimeSpan; - Duration: Duration; - RepeatBehavior: RepeatBehavior; - SpeedRatio: number; - FillBehavior: FillBehavior; - Completed: nullstone.Event<{}>; - private _IsPaused; - private _BeginPauseTime; - private _TicksPaused; - private _IsFirstUpdate; - private _HasBegun; - private _BeginTicks; - private _InitialStep; - private _HasCompleted; - ManualTarget: DependencyObject; - HasManualTarget: boolean; - Reset(): void; - Pause(): void; - Resume(): void; - Stop(): void; - OnCompleted(): void; - Update(nowTime: number): void; - UpdateInternal(clockData: IClockData): void; - HoldEnd(): void; - private CreateClockData(nowTime); - private IsAfterBeginTime(nowTime); - GetNaturalDuration(): Duration; - GetNaturalDurationCore(): Duration; - GenerateFrom(): AnimationBase; - GenerateTo(isEntering: boolean): AnimationBase; - } - class TimelineCollection extends XamlObjectCollection { - } -} -declare module Fayde.Media.Animation { - class AnimationBase extends Timeline { - private _AnimStorage; - private _IsHolding; - constructor(); - Resolve(target: DependencyObject, propd: DependencyProperty): boolean; - HoldEnd(): void; - Stop(): void; - UpdateInternal(clockData: IClockData): void; - GetNaturalDurationCore(): Duration; - GetCurrentValue(defaultOriginalValue: any, defaultDestinationValue: any, clockData: IClockData): any; - _Hookup(promotedValues: any[], error: BError): boolean; - } -} -declare module Fayde.Media.Animation { - interface IAnimationStorage { - ID: number; - Animation: AnimationBase; - PropStorage: Providers.IPropertyStorage; - IsDisabled: boolean; - BaseValue: any; - CurrentValue: any; - StopValue: any; - } - class AnimationStore { - static Create(target: DependencyObject, propd: DependencyProperty): IAnimationStorage; - static Attach(animStorage: IAnimationStorage): void; - static Detach(animStorage: IAnimationStorage): boolean; - static ApplyCurrent(animStorage: IAnimationStorage): void; - static ApplyStop(animStorage: IAnimationStorage): void; - } -} -declare module Fayde.Media.Animation { - class AnimationUsingKeyFrames extends AnimationBase { - static KeyFramesProperty: ImmutableDependencyProperty; - KeyFrames: KeyFrameCollection; - constructor(); - Resolve(target: DependencyObject, propd: DependencyProperty): boolean; - GetCurrentValue(defaultOriginValue: any, defaultDestinationValue: any, clockData: IClockData): any; - GetNaturalDurationCore(): Duration; - AddKeyFrame(kf: KeyFrame): void; - RemoveKeyFrame(kf: KeyFrame): void; - } -} -declare module Fayde.Media.Animation { - class BeginStoryboard extends TriggerAction { - static StoryboardProperty: DependencyProperty; - Storyboard: Animation.Storyboard; - Fire(): void; - } -} -declare module Fayde.Media.Animation { - class ColorAnimation extends AnimationBase { - static ByProperty: DependencyProperty; - static EasingFunctionProperty: DependencyProperty; - static FromProperty: DependencyProperty; - static ToProperty: DependencyProperty; - By: Color; - EasingFunction: IEasingFunction; - From: Color; - To: Color; - private _FromCached; - private _ToCached; - private _ByCached; - private _EasingCached; - constructor(); - GetCurrentValue(defaultOriginalValue: any, defaultDestinationValue: any, clockData: IClockData): Color; - private _FromChanged(args); - private _ToChanged(args); - private _ByChanged(args); - private _EasingChanged(args); - GenerateFrom(): AnimationBase; - GenerateTo(isEntering: boolean): AnimationBase; - } -} -declare module Fayde.Media.Animation { - class ColorAnimationUsingKeyFrames extends AnimationUsingKeyFrames { - GenerateFrom(): AnimationBase; - GenerateTo(isEntering: boolean): AnimationBase; - } -} -declare module Fayde.Media.Animation { - interface IOutValue { - Value: any; - } - interface IKeyFrameListener { - KeyFrameChanged(source: KeyFrame): any; - } - interface IKeyFrame { - _ResolvedKeyTime: TimeSpan; - _Resolved: boolean; - Value: any; - InterpolateValue(baseValue: any, keyFrameProgress: number): any; - } - class KeyFrame extends DependencyObject implements IKeyFrame { - _ResolvedKeyTime: TimeSpan; - _Resolved: boolean; - private _Listener; - static KeyTimeProperty: DependencyProperty; - KeyTime: KeyTime; - Value: any; - CoerceKeyTime(dobj: DependencyObject, propd: DependencyProperty, value: any, coerced: IOutValue, error: BError): boolean; - InterpolateValue(baseValue: any, keyFrameProgress: number): any; - CompareToTimeSpan(otherTs: TimeSpan): number; - Listen(listener: IKeyFrameListener): void; - Unlisten(listener: IKeyFrameListener): void; - InvalidateKeyFrame(): void; - static Comparer(kf1: KeyFrame, kf2: KeyFrame): number; - static ResolveKeyFrames(animation: AnimationBase, arr: KeyFrame[]): KeyFrame[]; - } - class KeyFrameCollection extends XamlObjectCollection { - private _Resolved; - private _SortedList; - GetKeyFrameForTime(t: TimeSpan, prevFrameRef: IOutValue): KeyFrame; - Clear(): boolean; - AddingToCollection(value: KeyFrame, error: BError): boolean; - RemovedFromCollection(value: KeyFrame, isValueSafe: boolean): void; - KeyFrameChanged(source: KeyFrame): void; - static ResolveKeyFrames(animation: AnimationBase, coll: KeyFrameCollection): KeyFrame[]; - } -} -declare module Fayde.Media.Animation { - class ColorKeyFrame extends KeyFrame { - static ValueProperty: DependencyProperty; - Value: Color; - } - class DiscreteColorKeyFrame extends ColorKeyFrame { - InterpolateValue(baseValue: Color, keyFrameProgress: number): Color; - } - class EasingColorKeyFrame extends ColorKeyFrame { - static EasingFunctionProperty: DependencyProperty; - EasingFunction: EasingFunctionBase; - InterpolateValue(baseValue: Color, keyFrameProgress: number): Color; - } - class LinearColorKeyFrame extends ColorKeyFrame { - InterpolateValue(baseValue: Color, keyFrameProgress: number): Color; - } - class SplineColorKeyFrame extends ColorKeyFrame { - static KeySplineProperty: DependencyProperty; - KeySpline: KeySpline; - InterpolateValue(baseValue: Color, keyFrameProgress: number): Color; - } -} -declare module Fayde.Media.Animation { - interface ICurvePoint { - x: number; - y: number; - } - interface IQuadraticCurve { - c0: ICurvePoint; - c1: ICurvePoint; - c2: ICurvePoint; - } - interface ICubicCurve { - c0: ICurvePoint; - c1: ICurvePoint; - c2: ICurvePoint; - c3: ICurvePoint; - } - interface ISubdiviedCubicCurve { - b1: ICubicCurve; - b2: ICubicCurve; - } - class Curves { - static QuadraticArrayYForX(arr: IQuadraticCurve[], x: number, count: number): number; - static QuadraticYForX(x: number, src: IQuadraticCurve): number; - static SubdivideCubicAtLevel(b: ICubicCurve[], lvl: number, src: ICubicCurve): void; - static RecursiveSubdivide(b: ICubicCurve[], lvl: number, currentlvl: number, pos: number, src: ICubicCurve): number; - static SubdivideCubic(data: ISubdiviedCubicCurve, src: ICubicCurve): void; - static HalfLerpPoint(p: ICurvePoint, p1: ICurvePoint, p2: ICurvePoint): void; - static ConvertCubicsToQuadratics(srcArray: ICubicCurve[], count: number): IQuadraticCurve[]; - static QuadraticFromCubic(src: ICubicCurve): IQuadraticCurve; - } -} -declare module Fayde.Media.Animation { - class DoubleAnimation extends AnimationBase { - static ByProperty: DependencyProperty; - static EasingFunctionProperty: DependencyProperty; - static FromProperty: DependencyProperty; - static ToProperty: DependencyProperty; - By: number; - EasingFunction: IEasingFunction; - From: number; - To: number; - private _FromCached; - private _ToCached; - private _ByCached; - private _EasingCached; - constructor(); - GetCurrentValue(defaultOriginalValue: any, defaultDestinationValue: any, clockData: IClockData): number; - private _FromChanged(args); - private _ToChanged(args); - private _ByChanged(args); - private _EasingChanged(args); - GenerateFrom(): AnimationBase; - GenerateTo(isEntering: boolean): AnimationBase; - } -} -declare module Fayde.Media.Animation { - class DoubleAnimationUsingKeyFrames extends AnimationUsingKeyFrames { - GenerateFrom(): AnimationBase; - GenerateTo(isEntering: boolean): AnimationBase; - } -} -declare module Fayde.Media.Animation { - class DoubleKeyFrame extends KeyFrame { - static ValueProperty: DependencyProperty; - Value: number; - } - class DiscreteDoubleKeyFrame extends DoubleKeyFrame { - InterpolateValue(baseValue: number, keyFrameProgress: number): number; - } - class EasingDoubleKeyFrame extends DoubleKeyFrame { - static EasingFunctionProperty: DependencyProperty; - EasingFunction: EasingFunctionBase; - InterpolateValue(baseValue: number, keyFrameProgress: number): number; - } - class LinearDoubleKeyFrame extends DoubleKeyFrame { - InterpolateValue(baseValue: number, keyFrameProgress: number): number; - } - class SplineDoubleKeyFrame extends DoubleKeyFrame { - static KeySplineProperty: DependencyProperty; - KeySpline: KeySpline; - InterpolateValue(baseValue: number, keyFrameProgress: number): number; - } -} -declare module Fayde.Media.Animation { - interface IEasingFunction { - Ease(normalizedTime: number): number; - } - class EasingFunctionBase extends DependencyObject implements IEasingFunction { - static EasingModeProperty: DependencyProperty; - EasingMode: EasingMode; - Ease(normalizedTime: number): number; - EaseInCore(t: number): number; - } -} -declare module Fayde.Media.Animation { - class BackEase extends EasingFunctionBase { - static AmplitudeProperty: DependencyProperty; - Amplitude: number; - EaseInCore(t: number): number; - } - class BounceEase extends EasingFunctionBase { - static BouncesProperty: DependencyProperty; - static BouncinessProperty: DependencyProperty; - Bounces: number; - Bounciness: number; - EaseInCore(t: number): number; - } - class CircleEase extends EasingFunctionBase { - EaseInCore(t: number): number; - } - class CubicEase extends EasingFunctionBase { - EaseInCore(t: number): number; - } - class ElasticEase extends EasingFunctionBase { - static OscillationsProperty: DependencyProperty; - static SpringinessProperty: DependencyProperty; - Oscillations: number; - Springiness: number; - EaseInCore(t: number): number; - } - class ExponentialEase extends EasingFunctionBase { - static ExponentProperty: DependencyProperty; - Exponent: number; - EaseInCore(t: number): number; - } - class PowerEase extends EasingFunctionBase { - static PowerProperty: DependencyProperty; - Power: number; - EaseInCore(t: number): number; - } - class QuadraticEase extends EasingFunctionBase { - EaseInCore(t: number): number; - } - class QuarticEase extends EasingFunctionBase { - EaseInCore(t: number): number; - } - class QuinticEase extends EasingFunctionBase { - EaseInCore(t: number): number; - } - class SineEase extends EasingFunctionBase { - EaseInCore(t: number): number; - } -} -declare module Fayde.Media.Animation { - class KeySpline extends DependencyObject { - static PRECISION_LEVEL: number; - static TOTAL_COUNT: number; - static ControlPoint1Property: DependencyProperty; - static ControlPoint2Property: DependencyProperty; - ControlPoint1: Point; - ControlPoint2: Point; - private _QuadraticsArray; - GetSplineProgress(linearProgress: number): number; - private InvalidateControlPoints(); - private _RegenerateQuadratics(); - } -} -declare module Fayde.Media.Animation { - class ObjectAnimationUsingKeyFrames extends AnimationUsingKeyFrames { - Resolve(target: DependencyObject, propd: DependencyProperty): boolean; - } -} -declare module Fayde.Media.Animation { - class ObjectKeyFrame extends KeyFrame { - static ValueProperty: DependencyProperty; - Value: any; - ConvertedValue: any; - } - class DiscreteObjectKeyFrame extends ObjectKeyFrame { - InterpolateValue(baseValue: any, keyFrameProgress: number): any; - } -} -declare module Fayde.Media.Animation { - class PointAnimation extends AnimationBase { - static ByProperty: DependencyProperty; - static EasingFunctionProperty: DependencyProperty; - static FromProperty: DependencyProperty; - static ToProperty: DependencyProperty; - By: Point; - EasingFunction: IEasingFunction; - From: Point; - To: Point; - private _FromCached; - private _ToCached; - private _ByCached; - private _EasingCached; - constructor(); - GetCurrentValue(defaultOriginalValue: any, defaultDestinationValue: any, clockData: IClockData): Point; - private _FromChanged(args); - private _ToChanged(args); - private _ByChanged(args); - private _EasingChanged(args); - GenerateFrom(): AnimationBase; - GenerateTo(isEntering: boolean): AnimationBase; - } -} -declare module Fayde.Media.Animation { - class PointAnimationUsingKeyFrames extends AnimationUsingKeyFrames { - GenerateFrom(): AnimationBase; - GenerateTo(isEntering: boolean): AnimationBase; - } -} -declare module Fayde.Media.Animation { - class PointKeyFrame extends KeyFrame { - static ValueProperty: DependencyProperty; - Value: Point; - } - class DiscretePointKeyFrame extends PointKeyFrame { - InterpolateValue(baseValue: Point, keyFrameProgress: number): Point; - } - class EasingPointKeyFrame extends PointKeyFrame { - static EasingFunctionProperty: DependencyProperty; - EasingFunction: EasingFunctionBase; - InterpolateValue(baseValue: Point, keyFrameProgress: number): Point; - } - class LinearPointKeyFrame extends PointKeyFrame { - InterpolateValue(baseValue: Point, keyFrameProgress: number): Point; - } - class SplinePointKeyFrame extends PointKeyFrame { - static KeySplineProperty: DependencyProperty; - KeySpline: KeySpline; - InterpolateValue(baseValue: Point, keyFrameProgress: number): Point; - } -} -declare module Fayde.Media.Animation { - interface IStoryboadResolution { - Target: DependencyObject; - Property: Data.PropertyPath; - } - class Storyboard extends Timeline { - static TargetNameProperty: DependencyProperty; - static GetTargetName(d: DependencyObject): string; - static SetTargetName(d: DependencyObject, value: string): void; - TargetName: string; - static TargetPropertyProperty: DependencyProperty; - static GetTargetProperty(d: DependencyObject): Data.PropertyPath; - static SetTargetProperty(d: DependencyObject, value: Data.PropertyPath): void; - TargetProperty: Data.PropertyPath; - static ResolveTarget(timeline: Timeline): IStoryboadResolution; - static ChildrenProperty: ImmutableDependencyProperty; - Children: TimelineCollection; - constructor(); - static SetTarget(timeline: Timeline, target: DependencyObject): void; - Begin(): void; - Pause(): void; - Resume(): void; - Stop(): void; - UpdateInternal(clockData: IClockData): void; - GetNaturalDurationCore(): Duration; - } -} -declare module Fayde.Media.Effects { - class Effect extends DependencyObject implements minerva.IEffect { - static EffectMappingProperty: DependencyProperty; - EffectMapping: GeneralTransform; - PreRender(ctx: minerva.core.render.RenderContext): void; - PostRender(ctx: minerva.core.render.RenderContext): void; - GetPadding(thickness: Thickness): boolean; - } -} -declare module Fayde.Media.Effects { - class BlurEffect extends Effect { - static RadiusProperty: DependencyProperty; - Radius: number; - } -} -declare module Fayde.Media.Effects { - class DropShadowEffect extends Effect { - static MAX_BLUR_RADIUS: number; - static MAX_SHADOW_DEPTH: number; - static BlurRadiusProperty: DependencyProperty; - static ColorProperty: DependencyProperty; - static DirectionProperty: DependencyProperty; - static OpacityProperty: DependencyProperty; - static ShadowDepthProperty: DependencyProperty; - BlurRadius: number; - Color: Color; - Direction: number; - Opacity: number; - ShadowDepth: number; - GetPadding(thickness: Thickness): boolean; - PreRender(ctx: minerva.core.render.RenderContext): void; - } -} -declare module Fayde.Media.Imaging { - class ImageSource extends DependencyObject implements minerva.controls.image.IImageSource { - static PixelWidthProperty: DependencyProperty; - static PixelHeightProperty: DependencyProperty; - PixelWidth: number; - PixelHeight: number; - protected $element: HTMLMediaElement | HTMLImageElement; - constructor(); - pixelWidth: number; - pixelHeight: number; - isEmpty: boolean; - draw(ctx: CanvasRenderingContext2D): void; - createPattern(ctx: CanvasRenderingContext2D): CanvasPattern; - reset(): void; - createElement(): HTMLMediaElement | HTMLImageElement; - protected setMetrics(pixelWidth: number, pixelHeight: number): void; - } -} -declare module Fayde.Media.Imaging { - interface IBitmapSourceWatcher { - onErrored(source: BitmapSource, error: Error): any; - onLoaded(source: BitmapSource): any; - onChanged(source: BitmapSource): any; - } - class BitmapSource extends ImageSource { - protected $element: HTMLImageElement; - private $watchers; - createElement(): HTMLMediaElement | HTMLImageElement; - reset(): void; - watch(watcher: IBitmapSourceWatcher): nullstone.IDisposable; - protected onImageLoaded(): void; - protected onImageErrored(e: ErrorEvent): void; - protected onImageChanged(): void; - } -} -declare module Fayde.Media.Imaging { - class BitmapImage extends BitmapSource { - static UriSourceProperty: DependencyProperty; - UriSource: Uri; - ImageFailed: nullstone.Event<{}>; - ImageOpened: nullstone.Event<{}>; - private _BackingBuffer; - constructor(uri?: Uri); - protected OnUriSourceChanged(oldValue: Uri, newValue: Uri): void; - protected onImageErrored(e: ErrorEvent): void; - protected onImageLoaded(): void; - SetSource(buffer: ArrayBuffer): void; - } -} -declare module Fayde.Media.Imaging { - class ImageBrush extends TileBrush { - private static _SourceCoercer(d, propd, value); - static ImageSourceProperty: DependencyProperty; - ImageSource: ImageSource; - ImageFailed: nullstone.Event<{}>; - ImageOpened: nullstone.Event<{}>; - private $watcher; - setupBrush(ctx: CanvasRenderingContext2D, bounds: minerva.Rect): void; - GetTileExtents(): minerva.Rect; - DrawTile(canvasCtx: CanvasRenderingContext2D, bounds: minerva.Rect): void; - private _ImageSourceChanged(args); - OnImageErrored(source: BitmapSource, error: Error): void; - OnImageLoaded(source: BitmapSource): void; - OnImageChanged(source: BitmapSource): void; - } -} -declare module Fayde.Media.Imaging { - function encodeImage(buffer: ArrayBuffer): Uri; -} -declare module Fayde.Media.LinearGradient { - interface IInterpolator { - x0: number; - y0: number; - x1: number; - y1: number; - step(): boolean; - interpolate(offset: number): number; - } - function createRepeatInterpolator(start: Point, end: Point, bounds: minerva.Rect): IInterpolator; - function createReflectInterpolator(start: Point, end: Point, bounds: minerva.Rect): IInterpolator; -} -declare module Fayde.Media.LinearGradient { - interface ICoordinates { - x: number; - y: number; - } - function calcMetrics(dir: ICoordinates, first: ICoordinates, last: ICoordinates, bounds: minerva.Rect): void; -} -declare module Fayde.Media.RadialGradient { - interface IExtender { - x0: number; - y0: number; - r0: number; - x1: number; - y1: number; - r1: number; - step(): boolean; - createGradient(ctx: CanvasRenderingContext2D): CanvasGradient; - } - interface IRadialPointData { - x0: number; - y0: number; - x1: number; - y1: number; - r1: number; - sx: number; - sy: number; - side: number; - balanced: boolean; - } - function createExtender(data: IRadialPointData, bounds: minerva.Rect): IExtender; -} -declare module Fayde.Media.VSM { - class VisualState extends DependencyObject { - static StoryboardProperty: DependencyProperty; - Storyboard: Animation.Storyboard; - } - class VisualStateCollection extends XamlObjectCollection { - } -} -declare module Fayde.Media.VSM { - class VisualStateChangedEventArgs implements nullstone.IEventArgs { - OldState: VisualState; - NewState: VisualState; - Control: Controls.Control; - constructor(oldState: VisualState, newState: VisualState, control: Controls.Control); - } - class VisualStateGroup extends DependencyObject { - static StatesProperty: ImmutableDependencyProperty; - States: VisualStateCollection; - static TransitionsProperty: ImmutableDependencyProperty>; - Transitions: XamlObjectCollection; - private _CurrentStoryboards; - CurrentStoryboards: Animation.Storyboard[]; - CurrentStateChanging: nullstone.Event; - CurrentStateChanged: nullstone.Event; - CurrentState: VisualState; - constructor(); - GetState(stateName: string): VisualState; - StartNewThenStopOld(element: FrameworkElement, newStoryboards: Animation.Storyboard[]): void; - StopCurrentStoryboards(element: FrameworkElement): void; - Deactivate(): void; - Activate(): void; - RaiseCurrentStateChanging(element: FrameworkElement, oldState: VisualState, newState: VisualState, control: Controls.Control): void; - RaiseCurrentStateChanged(element: FrameworkElement, oldState: VisualState, newState: VisualState, control: Controls.Control): void; - } - class VisualStateGroupCollection extends XamlObjectCollection { - } -} -declare module Fayde.Media.VSM { - interface IOutValue { - Value: any; - } - interface IStateData { - state: VisualState; - group: VisualStateGroup; - } - class VisualStateManager extends DependencyObject { - static VisualStateGroupsProperty: DependencyProperty; - static GetVisualStateGroups(d: DependencyObject): VisualStateGroupCollection; - static SetVisualStateGroups(d: DependencyObject, value: VisualStateGroupCollection): void; - static CustomVisualStateManagerProperty: DependencyProperty; - static GetCustomVisualStateManager(d: DependencyObject): VisualStateManager; - static SetCustomVisualStateManager(d: DependencyObject, value: VisualStateManager): void; - static GoToState(control: Controls.Control, stateName: string, useTransitions: boolean): boolean; - GoToStateCore(control: Controls.Control, element: FrameworkElement, stateName: string, group: VisualStateGroup, state: VisualState, useTransitions: boolean): boolean; - private static GoToStateInternal(control, element, group, state, useTransitions); - static DestroyStoryboards(control: Controls.Control, root: FrameworkElement): boolean; - static Deactivate(control: Controls.Control, root: FrameworkElement): boolean; - static Activate(control: Controls.Control, root: FrameworkElement): boolean; - private static _GetTemplateRoot(control); - static GetGroup(control: Controls.Control, name: string): VisualStateGroup; - private static _TryGetState(groups, stateName, data); - private static _GetTransition(element, group, from, to); - } -} -declare module Fayde.Media.VSM { - class VisualTransition extends DependencyObject { - From: string; - To: string; - static StoryboardProperty: DependencyProperty; - Storyboard: Animation.Storyboard; - private _GeneratedDuration; - GeneratedDuration: Duration; - DynamicStoryboardCompleted: boolean; - ExplicitStoryboardCompleted: boolean; - GeneratedEasingFunction: Animation.EasingFunctionBase; - IsDefault: boolean; - } -} -declare module Fayde.Media.Videos { - interface IVideoSourceWatcher { - onErrored(source: VideoSourceBase, error: Error): any; - onCanPlay(source: VideoSourceBase): any; - onChanged(source: VideoSourceBase): any; - } - class VideoSourceBase extends Imaging.ImageSource implements minerva.controls.video.IVideoSource { - protected $element: HTMLVideoElement; - private $watchers; - private $autoplay; - createElement(): HTMLVideoElement; - reset(): void; - watch(watcher: IVideoSourceWatcher): nullstone.IDisposable; - setAutoPlay(value: boolean): void; - getIsPlaying(): boolean; - Play(): void; - Pause(): void; - protected onVideoErrored(e: ErrorEvent): void; - protected onVideoCanPlay(): void; - protected onVideoChanged(): void; - } -} -declare module Fayde.Media.Videos { - class VideoSource extends VideoSourceBase { - static UriSourceProperty: DependencyProperty; - UriSource: Uri; - VideoFailed: nullstone.Event<{}>; - VideoOpened: nullstone.Event<{}>; - constructor(uri?: Uri); - private _UriSourceChanged(args); - protected OnUriSourceChanged(oldValue: Uri, newValue: Uri): void; - protected onVideoErrored(e: ErrorEvent): void; - } -} -declare module Fayde.Text.History { - class DeleteAction implements IAction { - SelectionAnchor: number; - SelectionCursor: number; - Start: number; - Text: string; - constructor(selectionAnchor: number, selectionCursor: number, buffer: string, start: number, length: number); - Undo(bo: ITextOwner): void; - Redo(bo: ITextOwner): number; - } -} -declare module Fayde.Text.History { - interface IAction { - SelectionAnchor: number; - SelectionCursor: number; - Undo(bufferholder: ITextOwner): any; - Redo(bufferholder: ITextOwner): number; - } -} -declare module Fayde.Text.History { - class InsertAction implements IAction { - SelectionAnchor: number; - SelectionCursor: number; - Start: number; - Text: string; - IsGrowable: boolean; - constructor(selectionAnchor: number, selectionCursor: number, start: number, inserted: string, isAtomic?: boolean); - Undo(bo: ITextOwner): void; - Redo(bo: ITextOwner): number; - Insert(start: number, text: string): boolean; - } -} -declare module Fayde.Text.History { - class ReplaceAction implements IAction { - SelectionAnchor: number; - SelectionCursor: number; - Start: number; - Length: number; - Deleted: string; - Inserted: string; - constructor(selectionAnchor: number, selectionCursor: number, buffer: string, start: number, length: number, inserted: string); - Undo(bo: ITextOwner): void; - Redo(bo: ITextOwner): number; - } -} -declare module Fayde.Text.History { - class Tracker { - private $$undo; - private $$redo; - private $$maxUndoCount; - constructor(maxUndoCount: number); - canUndo: boolean; - canRedo: boolean; - undo(bufferholder: ITextOwner): IAction; - redo(bufferholder: ITextOwner): number; - enter(anchor: number, cursor: number, start: number, newText: string): void; - insert(anchor: number, cursor: number, start: number, newText: string): void; - replace(anchor: number, cursor: number, text: string, start: number, length: number, newText: string): void; - delete(anchor: number, cursor: number, text: string, start: number, length: number): void; - private $doAction(action); - } -} -declare module Fayde { - function debugLayers(): any[]; - function sexify(updater: minerva.core.Updater): any; - function debugLayersRaw(): string; - function getById(id: number): { - obj: any; - node: any; - updater: minerva.core.Updater; - flags: string; - uiflags: string; - }; - function debugLayersFlatten(): any[]; -} diff --git a/dist/fayde.js b/dist/fayde.js deleted file mode 100644 index 4e7b69c6..00000000 --- a/dist/fayde.js +++ /dev/null @@ -1,27386 +0,0 @@ -var Fayde; -(function (Fayde) { - Fayde.version = '0.19.6'; -})(Fayde || (Fayde = {})); -if (!Function.prototype.bind) { - Function.prototype.bind = function (oThis) { - if (typeof this !== 'function') { - throw new TypeError('Function.prototype.bind - what is trying to be bound is not callable'); - } - var aArgs = Array.prototype.slice.call(arguments, 1), fToBind = this, fNOP = function () { - }, fBound = function () { - return fToBind.apply(this instanceof fNOP && oThis - ? this - : oThis, aArgs.concat(Array.prototype.slice.call(arguments))); - }; - fNOP.prototype = this.prototype; - fBound.prototype = new fNOP(); - return fBound; - }; -} -(function (context) { - if (!context.perfex) { - context.perfex = {}; - } - if (!context.perfex.timer) { - context.perfex.timer = { - all: [], - reset: function () { - }, - start: function (tag) { - }, - stop: function () { - } - }; - } - if (!context.perfex.phases) { - context.perfex.phases = { - current: null, - all: [], - start: function (tag) { - } - }; - } -})(window); -var __extends = (this && this.__extends) || function (d, b) { - for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; - function __() { this.constructor = d; } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); -}; -var Fayde; -(function (Fayde) { - var ThemedLibrary = (function (_super) { - __extends(ThemedLibrary, _super); - function ThemedLibrary() { - _super.apply(this, arguments); - this.$$themes = {}; - this.$$activeTheme = null; - this.$$activeThemeName = null; - } - Object.defineProperty(ThemedLibrary.prototype, "activeTheme", { - get: function () { - return this.$$activeTheme; - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(ThemedLibrary.prototype, "isActiveThemeInvalid", { - get: function () { - return !this.$$activeTheme || this.$$activeTheme.Name !== this.$$activeThemeName; - }, - enumerable: true, - configurable: true - }); - ThemedLibrary.prototype.loadAsync = function () { - var _this = this; - return Promise.resolve(this) - .tap(function (lib) { return Promise.all([ - _super.prototype.loadAsync.call(_this), - _this.retrieveTheme() - ]); }) - .tap(function () { return _this.ensureThemeLoaded(); }); - }; - ThemedLibrary.prototype.retrieveTheme = function () { - if (this.isActiveThemeInvalid || !this.$$activeThemeName) - return Promise.resolve(null); - var theme = this.getTheme(this.$$activeThemeName); - return theme.RetrieveAsync(); - }; - ThemedLibrary.prototype.ensureThemeLoaded = function () { - if (!this.isActiveThemeInvalid) - return Promise.resolve(this.$$activeTheme); - if (!this.$$activeThemeName) - return Promise.resolve(null); - return this.loadActiveTheme(); - }; - ThemedLibrary.prototype.getTheme = function (name) { - var theme = this.$$themes[name]; - if (!theme) - theme = this.$$themes[name] = new Fayde.Theme(name, this.uri); - return theme; - }; - ThemedLibrary.prototype.setThemeName = function (name) { - this.$$activeThemeName = name; - }; - ThemedLibrary.prototype.loadActiveTheme = function () { - var _this = this; - var theme = this.getTheme(this.$$activeThemeName); - return theme.LoadAsync() - .then(function () { return _this.$$activeTheme = theme; }); - }; - return ThemedLibrary; - })(nullstone.Library); - Fayde.ThemedLibrary = ThemedLibrary; -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var ThemedLibraryResolver = (function (_super) { - __extends(ThemedLibraryResolver, _super); - function ThemedLibraryResolver() { - _super.apply(this, arguments); - } - ThemedLibraryResolver.prototype.createLibrary = function (uri) { - return new Fayde.ThemedLibrary(uri); - }; - return ThemedLibraryResolver; - })(nullstone.LibraryResolver); - Fayde.ThemedLibraryResolver = ThemedLibraryResolver; -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - Fayde.XMLNS = "http://schemas.wsick.com/fayde"; - Fayde.XMLNSX = "http://schemas.wsick.com/fayde/x"; - Fayde.XMLNSINTERNAL = "http://schemas.wsick.com/fayde/internal"; - Fayde.Enum = nullstone.Enum; - Fayde.Uri = nullstone.Uri; - var ResourceTypeManager = (function (_super) { - __extends(ResourceTypeManager, _super); - function ResourceTypeManager() { - _super.apply(this, arguments); - } - ResourceTypeManager.prototype.createLibResolver = function () { - return new Fayde.ThemedLibraryResolver(); - }; - ResourceTypeManager.prototype.resolveResource = function (uri) { - if (uri.scheme === "lib") { - var res = uri.resource; - var full = uri.toString(); - var base = full.replace(res, ""); - var lib = this.resolveLibrary(base); - if (!lib) - throw new Error("Could not find library when resolving resource [" + full + "]."); - return joinPaths(lib.basePath, res.length > 1 ? res.substr(1) : ""); - } - return uri.toString(); - }; - return ResourceTypeManager; - })(nullstone.TypeManager); - Fayde.ResourceTypeManager = ResourceTypeManager; - Fayde.TypeManager = new ResourceTypeManager(Fayde.XMLNS, Fayde.XMLNSX); - function joinPaths(base, rel) { - if (base[base.length - 1] !== "/") - base += "/"; - return base + (rel[0] === "/" ? rel.substr(1) : rel); - } - Fayde.CoreLibrary = Fayde.TypeManager.resolveLibrary(Fayde.XMLNS); - Fayde.CoreLibrary.$$module = Fayde; - Fayde.CoreLibrary.$$loaded = true; - Fayde.XLibrary = Fayde.TypeManager.resolveLibrary(Fayde.XMLNSX); - Fayde.XLibrary.$$module = Fayde; - Fayde.XLibrary.$$loaded = true; - function RegisterType(type, uri, name) { - name = name || nullstone.getTypeName(type); - Fayde.TypeManager.add(uri, name, type); - } - Fayde.RegisterType = RegisterType; - function RegisterEnum(enu, uri, name) { - Fayde.TypeManager.addEnum(uri, name, enu); - } - Fayde.RegisterEnum = RegisterEnum; - Fayde.IType_ = new nullstone.Interface("IType"); - Fayde.IType_.is = function (o) { - return typeof o === "function"; - }; -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Clipboard; - (function (Clipboard) { - var BasicClipboard = (function () { - function BasicClipboard() { - } - BasicClipboard.prototype.CopyText = function (text) { - var res = window.clipboardData.setData("Text", text); - if (!res) - alert("Your browser do not allow copy to the clipboard."); - }; - BasicClipboard.prototype.GetTextContents = function (callback) { - var text = window.clipboardData.getData("Text"); - callback(text); - }; - return BasicClipboard; - })(); - Clipboard.BasicClipboard = BasicClipboard; - })(Clipboard = Fayde.Clipboard || (Fayde.Clipboard = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Clipboard; - (function (Clipboard) { - function Create() { - if (window.clipboardData) - return new Clipboard.BasicClipboard(); - return new Clipboard.NetscapeClipboard(); - } - Clipboard.Create = Create; - })(Clipboard = Fayde.Clipboard || (Fayde.Clipboard = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Clipboard; - (function (Clipboard) { - var cp = new nullstone.Memoizer(function (key) { - var div = document.createElement("div"); - div.id = key; - (function (style) { - style.opacity = "0.0"; - style.position = "absolute"; - style.left = "-300px"; - })(div.style); - document.body.appendChild(div); - div.contentEditable = "true"; - return div; - }); - function memoizePlaceholder(key) { - return cp.memoize(key); - } - Clipboard.memoizePlaceholder = memoizePlaceholder; - })(Clipboard = Fayde.Clipboard || (Fayde.Clipboard = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Clipboard; - (function (Clipboard) { - var NetscapeClipboard = (function () { - function NetscapeClipboard() { - var _this = this; - this.$$fn = null; - this.$$notify = function (e) { - if (!_this.$$fn) - return; - var ev = e.originalEvent || e; - var dt = ev.clipboardData; - _this.$$fn(dt.getData('text/plain')); - _this.$$fn = null; - }; - document.body.contentEditable = "true"; - document.body.style.cursor = "default"; - document.body.addEventListener("paste", this.$$notify); - } - NetscapeClipboard.prototype.CopyText = function (text) { - var div = Clipboard.memoizePlaceholder("special_copy"); - div.textContent = text; - selectContent(div); - tryRequestPrivilege(); - if (!document.execCommand("copy", false, null)) - alert("Your browser does not allow copy to the clipboard. This feature will not function"); - }; - NetscapeClipboard.prototype.GetTextContents = function (callback) { - this.$$fn = callback; - }; - return NetscapeClipboard; - })(); - Clipboard.NetscapeClipboard = NetscapeClipboard; - function selectContent(element) { - var rangeToSelect = document.createRange(); - rangeToSelect.selectNodeContents(element); - var selection = window.getSelection(); - selection.removeAllRanges(); - selection.addRange(rangeToSelect); - } - function tryRequestPrivilege() { - var netscape = window ? window.netscape : null; - if (netscape && netscape.security) { - netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect"); - } - } - })(Clipboard = Fayde.Clipboard || (Fayde.Clipboard = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Collections; - (function (Collections) { - (function (CollectionChangedAction) { - CollectionChangedAction[CollectionChangedAction["Add"] = 1] = "Add"; - CollectionChangedAction[CollectionChangedAction["Remove"] = 2] = "Remove"; - CollectionChangedAction[CollectionChangedAction["Replace"] = 3] = "Replace"; - CollectionChangedAction[CollectionChangedAction["Reset"] = 4] = "Reset"; - })(Collections.CollectionChangedAction || (Collections.CollectionChangedAction = {})); - var CollectionChangedAction = Collections.CollectionChangedAction; - Fayde.CoreLibrary.addEnum(CollectionChangedAction, "NotifyCollectionChangedAction"); - var CollectionChangedEventArgs = (function () { - function CollectionChangedEventArgs() { - } - CollectionChangedEventArgs.Reset = function (allValues) { - var args = new CollectionChangedEventArgs(); - Object.defineProperty(args, "Action", { value: CollectionChangedAction.Reset, writable: false }); - Object.defineProperty(args, "OldStartingIndex", { value: 0, writable: false }); - Object.defineProperty(args, "NewStartingIndex", { value: -1, writable: false }); - Object.defineProperty(args, "OldItems", { value: allValues, writable: false }); - Object.defineProperty(args, "NewItems", { value: null, writable: false }); - return args; - }; - CollectionChangedEventArgs.Replace = function (newValue, oldValue, index) { - var args = new CollectionChangedEventArgs(); - Object.defineProperty(args, "Action", { value: CollectionChangedAction.Replace, writable: false }); - Object.defineProperty(args, "OldStartingIndex", { value: -1, writable: false }); - Object.defineProperty(args, "NewStartingIndex", { value: index, writable: false }); - Object.defineProperty(args, "OldItems", { value: [oldValue], writable: false }); - Object.defineProperty(args, "NewItems", { value: [newValue], writable: false }); - return args; - }; - CollectionChangedEventArgs.Add = function (newValue, index) { - var args = new CollectionChangedEventArgs(); - Object.defineProperty(args, "Action", { value: CollectionChangedAction.Add, writable: false }); - Object.defineProperty(args, "OldStartingIndex", { value: -1, writable: false }); - Object.defineProperty(args, "NewStartingIndex", { value: index, writable: false }); - Object.defineProperty(args, "OldItems", { value: null, writable: false }); - Object.defineProperty(args, "NewItems", { value: [newValue], writable: false }); - return args; - }; - CollectionChangedEventArgs.AddRange = function (newValues, index) { - var args = new CollectionChangedEventArgs(); - Object.defineProperty(args, "Action", { value: CollectionChangedAction.Add, writable: false }); - Object.defineProperty(args, "OldStartingIndex", { value: -1, writable: false }); - Object.defineProperty(args, "NewStartingIndex", { value: index, writable: false }); - Object.defineProperty(args, "OldItems", { value: null, writable: false }); - Object.defineProperty(args, "NewItems", { value: newValues, writable: false }); - return args; - }; - CollectionChangedEventArgs.Remove = function (oldValue, index) { - var args = new CollectionChangedEventArgs(); - Object.defineProperty(args, "Action", { value: CollectionChangedAction.Remove, writable: false }); - Object.defineProperty(args, "OldStartingIndex", { value: index, writable: false }); - Object.defineProperty(args, "NewStartingIndex", { value: -1, writable: false }); - Object.defineProperty(args, "OldItems", { value: [oldValue], writable: false }); - Object.defineProperty(args, "NewItems", { value: null, writable: false }); - return args; - }; - return CollectionChangedEventArgs; - })(); - Collections.CollectionChangedEventArgs = CollectionChangedEventArgs; - })(Collections = Fayde.Collections || (Fayde.Collections = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Collections; - (function (Collections) { - Collections.INotifyCollectionChanged_ = new nullstone.Interface("INotifyCollectionChanged"); - Collections.INotifyCollectionChanged_.is = function (o) { - return o && o.CollectionChanged instanceof nullstone.Event; - }; - })(Collections = Fayde.Collections || (Fayde.Collections = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var PropertyChangedEventArgs = (function () { - function PropertyChangedEventArgs(propertyName) { - Object.defineProperty(this, "PropertyName", { value: propertyName, writable: false }); - } - return PropertyChangedEventArgs; - })(); - Fayde.PropertyChangedEventArgs = PropertyChangedEventArgs; - Fayde.CoreLibrary.add(PropertyChangedEventArgs); - Fayde.INotifyPropertyChanged_ = new nullstone.Interface("INotifyPropertyChanged"); - Fayde.INotifyPropertyChanged_.is = function (o) { - return o && o.PropertyChanged instanceof nullstone.Event; - }; -})(Fayde || (Fayde = {})); -/// -/// -var Fayde; -(function (Fayde) { - var Collections; - (function (Collections) { - var ObservableCollection = (function () { - function ObservableCollection() { - this._ht = []; - this.CollectionChanged = new nullstone.Event(); - this.PropertyChanged = new nullstone.Event(); - } - ObservableCollection.prototype.getEnumerator = function () { - return nullstone.IEnumerator_.fromArray(this._ht); - }; - Object.defineProperty(ObservableCollection.prototype, "Count", { - get: function () { - return this._ht.length; - }, - enumerable: true, - configurable: true - }); - ObservableCollection.prototype.ToArray = function () { - return this._ht.slice(0); - }; - ObservableCollection.prototype.GetValueAt = function (index) { - var ht = this._ht; - if (index < 0 || index >= ht.length) - throw new IndexOutOfRangeException(index); - return ht[index]; - }; - ObservableCollection.prototype.SetValueAt = function (index, value) { - var ht = this._ht; - if (index < 0 || index >= ht.length) - throw new IndexOutOfRangeException(index); - var oldValue = ht[index]; - ht[index] = value; - this.CollectionChanged.raise(this, Collections.CollectionChangedEventArgs.Replace(value, oldValue, index)); - }; - ObservableCollection.prototype.Add = function (value) { - var index = this._ht.push(value) - 1; - this.CollectionChanged.raise(this, Collections.CollectionChangedEventArgs.Add(value, index)); - this._RaisePropertyChanged("Count"); - }; - ObservableCollection.prototype.AddRange = function (values) { - var index = this._ht.length; - var len = values.length; - for (var i = 0; i < len; i++) { - this._ht.push(values[i]); - } - this.CollectionChanged.raise(this, Collections.CollectionChangedEventArgs.AddRange(values, index)); - this._RaisePropertyChanged("Count"); - }; - ObservableCollection.prototype.Insert = function (index, value) { - var ht = this._ht; - if (index < 0 || index > ht.length) - throw new IndexOutOfRangeException(index); - if (index >= ht.length) - ht.push(value); - else - ht.splice(index, 0, value); - this.CollectionChanged.raise(this, Collections.CollectionChangedEventArgs.Add(value, index)); - this._RaisePropertyChanged("Count"); - }; - ObservableCollection.prototype.IndexOf = function (value) { - return this._ht.indexOf(value); - }; - ObservableCollection.prototype.Contains = function (value) { - return this._ht.indexOf(value) > -1; - }; - ObservableCollection.prototype.Remove = function (value) { - var index = this._ht.indexOf(value); - if (index < 0) - return false; - this._ht.splice(index, 1); - this.CollectionChanged.raise(this, Collections.CollectionChangedEventArgs.Remove(value, index)); - this._RaisePropertyChanged("Count"); - return true; - }; - ObservableCollection.prototype.RemoveAt = function (index) { - if (index < 0 || index >= this._ht.length) - throw new IndexOutOfRangeException(index); - var item = this._ht.splice(index, 1)[0]; - this.CollectionChanged.raise(this, Collections.CollectionChangedEventArgs.Remove(item, index)); - this._RaisePropertyChanged("Count"); - }; - ObservableCollection.prototype.Clear = function () { - var old = this._ht; - this._ht = []; - this.CollectionChanged.raise(this, Collections.CollectionChangedEventArgs.Reset(old)); - this._RaisePropertyChanged("Count"); - }; - ObservableCollection.prototype._RaisePropertyChanged = function (propertyName) { - this.PropertyChanged.raise(this, new Fayde.PropertyChangedEventArgs(propertyName)); - }; - return ObservableCollection; - })(); - Collections.ObservableCollection = ObservableCollection; - Fayde.CoreLibrary.add(ObservableCollection); - nullstone.ICollection_.mark(ObservableCollection); - })(Collections = Fayde.Collections || (Fayde.Collections = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Collections; - (function (Collections) { - var DeepObservableCollection = (function (_super) { - __extends(DeepObservableCollection, _super); - function DeepObservableCollection() { - _super.call(this); - this.ItemPropertyChanged = new nullstone.Event(); - this.CollectionChanged.on(this._OnCollectionChanged, this); - } - DeepObservableCollection.prototype._OnCollectionChanged = function (sender, e) { - if (e.NewItems) { - for (var i = 0; i < e.NewItems.length; i++) { - var notify = Fayde.INotifyPropertyChanged_.as(e.NewItems[i]); - if (notify) - notify.PropertyChanged.on(this._OnItemPropertyChanged, this); - } - } - if (e.OldItems) { - for (var i = 0; i < e.OldItems.length; i++) { - var notify = Fayde.INotifyPropertyChanged_.as(e.OldItems[i]); - if (notify) - notify.PropertyChanged.off(this._OnItemPropertyChanged, this); - } - } - }; - DeepObservableCollection.prototype._OnItemPropertyChanged = function (sender, e) { - this.ItemPropertyChanged.raise(this, new Collections.ItemPropertyChangedEventArgs(sender, e.PropertyName)); - }; - return DeepObservableCollection; - })(Collections.ObservableCollection); - Collections.DeepObservableCollection = DeepObservableCollection; - })(Collections = Fayde.Collections || (Fayde.Collections = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Collections; - (function (Collections) { - var FilteredCollection = (function (_super) { - __extends(FilteredCollection, _super); - function FilteredCollection(filter, source) { - _super.call(this); - this.Filter = filter; - this._SetSource(source || new Collections.DeepObservableCollection()); - } - Object.defineProperty(FilteredCollection.prototype, "Source", { - get: function () { return this._Source; }, - set: function (value) { this._SetSource(value); }, - enumerable: true, - configurable: true - }); - Object.defineProperty(FilteredCollection.prototype, "Filter", { - get: function () { - return this._Filter; - }, - set: function (value) { - this._Filter = value; - this.Update(); - }, - enumerable: true, - configurable: true - }); - FilteredCollection.prototype._SetSource = function (source) { - if (this._Source) { - this._Source.CollectionChanged.off(this._OnSourceCollectionChanged, this); - this._Source.ItemPropertyChanged.off(this._OnSourceItemPropertyChanged, this); - } - this._Source = source; - if (source) { - source.CollectionChanged.on(this._OnSourceCollectionChanged, this); - source.ItemPropertyChanged.on(this._OnSourceItemPropertyChanged, this); - } - this.Update(); - }; - FilteredCollection.prototype._OnSourceCollectionChanged = function (sender, e) { - this.Update(); - }; - FilteredCollection.prototype._OnSourceItemPropertyChanged = function (sender, e) { - this.Update(); - var index = this.Source.IndexOf(e.Item); - if (this.Filter && this.Filter(e.Item, index)) - this.ItemPropertyChanged.raise(this, e); - }; - FilteredCollection.prototype.Update = function () { - if (!this._Source) - return; - var filter = this.Filter || (function (item) { return true; }); - for (var i = 0, j = 0, enumerator = this._Source.getEnumerator(); enumerator.moveNext(); i++) { - var isIncluded = filter(enumerator.current, i); - var isCurrent = j < this.Count && this.GetValueAt(j) === enumerator.current; - if (isIncluded && !isCurrent) - this.Insert(j, enumerator.current); - else if (!isIncluded && isCurrent) - this.RemoveAt(j); - if (isIncluded) - j++; - } - }; - return FilteredCollection; - })(Collections.DeepObservableCollection); - Collections.FilteredCollection = FilteredCollection; - })(Collections = Fayde.Collections || (Fayde.Collections = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Collections; - (function (Collections) { - var ItemPropertyChangedEventArgs = (function (_super) { - __extends(ItemPropertyChangedEventArgs, _super); - function ItemPropertyChangedEventArgs(item, propertyName) { - _super.call(this, propertyName); - Object.defineProperty(this, "Item", { value: item, writable: false }); - } - return ItemPropertyChangedEventArgs; - })(Fayde.PropertyChangedEventArgs); - Collections.ItemPropertyChangedEventArgs = ItemPropertyChangedEventArgs; - })(Collections = Fayde.Collections || (Fayde.Collections = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Collections; - (function (Collections) { - var ReadOnlyObservableCollection = (function () { - function ReadOnlyObservableCollection(source) { - this.CollectionChanged = new nullstone.Event(); - this.PropertyChanged = new nullstone.Event(); - this._Source = source; - this._Source.CollectionChanged.on(this._OnCollectionChanged, this); - this._Source.PropertyChanged.on(this._OnPropertyChanged, this); - } - Object.defineProperty(ReadOnlyObservableCollection.prototype, "Count", { - get: function () { - return this._Source.Count; - }, - enumerable: true, - configurable: true - }); - ReadOnlyObservableCollection.prototype.GetValueAt = function (index) { - return this._Source.GetValueAt(index); - }; - ReadOnlyObservableCollection.prototype.getEnumerator = function () { - return this._Source.getEnumerator(); - }; - ReadOnlyObservableCollection.prototype.ToArray = function () { - return this._Source.ToArray(); - }; - ReadOnlyObservableCollection.prototype.IndexOf = function (value) { - return this._Source.IndexOf(value); - }; - ReadOnlyObservableCollection.prototype.Contains = function (value) { - return this._Source.Contains(value); - }; - ReadOnlyObservableCollection.prototype._OnCollectionChanged = function (sender, args) { - this.CollectionChanged.raise(this, args); - }; - ReadOnlyObservableCollection.prototype._OnPropertyChanged = function (sender, args) { - this.PropertyChanged.raise(this, args); - }; - ReadOnlyObservableCollection.prototype.SetValueAt = function (index, value) { - throw new Error("Collection is read only."); - }; - ReadOnlyObservableCollection.prototype.Insert = function (index, value) { - throw new Error("Collection is read only."); - }; - ReadOnlyObservableCollection.prototype.Add = function (value) { - throw new Error("Collection is read only."); - }; - ReadOnlyObservableCollection.prototype.Remove = function (value) { - throw new Error("Collection is read only."); - }; - ReadOnlyObservableCollection.prototype.RemoveAt = function (index) { - throw new Error("Collection is read only."); - }; - ReadOnlyObservableCollection.prototype.Clear = function () { - throw new Error("Collection is read only."); - }; - return ReadOnlyObservableCollection; - })(); - Collections.ReadOnlyObservableCollection = ReadOnlyObservableCollection; - Fayde.CoreLibrary.add(Collections.ObservableCollection); - nullstone.addTypeInterfaces(ReadOnlyObservableCollection, nullstone.ICollection_, Collections.INotifyCollectionChanged_, Fayde.INotifyPropertyChanged_); - })(Collections = Fayde.Collections || (Fayde.Collections = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var XamlNode = (function () { - function XamlNode(xobj) { - this.ParentNode = null; - this.Name = ""; - this.NameScope = null; - this.DocNameScope = null; - this.IsShareable = false; - this._OwnerNameScope = null; - this._LogicalChildren = []; - this._IAMonitors = null; - this._DataContext = undefined; - this._IsEnabled = true; - this.IsAttached = false; - this.XObject = xobj; - } - Object.defineProperty(XamlNode.prototype, "DataContext", { - get: function () { return this._DataContext; }, - set: function (value) { - var old = this._DataContext; - if (old === value) - return; - this._DataContext = value; - this.OnDataContextChanged(old, value); - }, - enumerable: true, - configurable: true - }); - XamlNode.prototype.OnDataContextChanged = function (oldDataContext, newDataContext) { - var childNodes = this._LogicalChildren; - var len = childNodes.length; - var childNode = null; - for (var i = 0; i < len; i++) { - childNode = childNodes[i]; - childNode.DataContext = newDataContext; - } - }; - Object.defineProperty(XamlNode.prototype, "IsEnabled", { - get: function () { return this._IsEnabled; }, - set: function (value) { - value = value !== false; - var old = this._IsEnabled; - if (old === value) - return; - this._IsEnabled = value; - this.OnIsEnabledChanged(old, value); - }, - enumerable: true, - configurable: true - }); - XamlNode.prototype.OnIsEnabledChanged = function (oldValue, newValue) { - var childNodes = this._LogicalChildren; - var len = childNodes.length; - var childNode = null; - for (var i = 0; i < len; i++) { - childNode = childNodes[i]; - childNode.IsEnabled = newValue; - } - }; - XamlNode.prototype.FindName = function (name, doc) { - var scope = this.FindNameScope(); - var node; - if (scope) - node = scope.FindName(name); - var docscope; - ; - if (!node && doc && (docscope = this.DocNameScope)) - node = docscope.FindName(name); - return node; - }; - XamlNode.prototype.SetName = function (name) { - this.Name = name; - var ns = this.FindNameScope(); - if (ns) - ns.RegisterName(name, this); - }; - XamlNode.prototype.FindNameScope = function () { - if (this._OwnerNameScope) - return this._OwnerNameScope; - var curNode = this; - var ns; - while (curNode) { - ns = curNode.NameScope; - if (ns) { - this._OwnerNameScope = ns; - return ns; - } - curNode = curNode.ParentNode; - } - return undefined; - }; - XamlNode.prototype.SetIsAttached = function (value) { - if (this.IsAttached === value) - return; - this.IsAttached = value; - this.OnIsAttachedChanged(value); - }; - XamlNode.prototype.OnIsAttachedChanged = function (newIsAttached) { - var xobj = this.XObject; - if (newIsAttached && this.ParentNode && !xobj.App) { - xobj.App = this.ParentNode.XObject.App; - } - var childNodes = this._LogicalChildren; - var len = childNodes.length; - var childNode = null; - for (var i = 0; i < len; i++) { - childNode = childNodes[i]; - childNode.SetIsAttached(newIsAttached); - } - for (var i = 0, monitors = (this._IAMonitors || []).slice(0), len = monitors.length; i < len; i++) { - monitors[i].Callback(newIsAttached); - } - if (!newIsAttached) - this._OwnerNameScope = undefined; - }; - XamlNode.prototype.MonitorIsAttached = function (func) { - var monitors = this._IAMonitors; - if (!monitors) - this._IAMonitors = monitors = []; - var monitor = { - Callback: func, - Detach: null - }; - monitor.Detach = function () { - var index = monitors.indexOf(monitor); - if (index > -1) - monitors.splice(index, 1); - }; - this._IAMonitors.push(monitor); - return monitor; - }; - XamlNode.prototype.AttachTo = function (parentNode, error) { - if (this.ParentNode && this.IsShareable) - return true; - var data = { - ParentNode: parentNode, - ChildNode: this, - Name: "" - }; - var curNode = parentNode; - while (curNode) { - if (curNode === this) { - error.Message = "Cycle found."; - error.Data = data; - error.Number = BError.Attach; - return false; - } - curNode = curNode.ParentNode; - } - if (this.ParentNode) { - if (this.ParentNode === parentNode) - return true; - error.Message = "Element is already a child of another element."; - error.Data = data; - error.Number = BError.Attach; - return false; - } - var parentScope = parentNode.FindNameScope(); - var thisScope = this.NameScope; - if (thisScope) { - if (!thisScope.IsRoot) { - parentScope.Absorb(thisScope); - this.NameScope = null; - this._OwnerNameScope = parentScope; - } - } - else if (parentScope) { - var name = this.Name; - if (name) { - var existing = parentScope.FindName(name); - if (existing && existing !== this) { - error.Message = "Name is already registered in parent namescope."; - data.Name = name; - error.Data = data; - error.Number = BError.Attach; - return false; - } - parentScope.RegisterName(name, this); - } - this._OwnerNameScope = parentScope; - } - var old = this.ParentNode; - this.ParentNode = parentNode; - this.OnParentChanged(old, parentNode); - parentNode._LogicalChildren.push(this); - this.SetIsAttached(parentNode.IsAttached); - return true; - }; - XamlNode.prototype.Detach = function () { - var name = this.Name; - if (name && !this.NameScope) { - var ns = this.FindNameScope(); - if (ns) - ns.UnregisterName(this.Name); - } - this._OwnerNameScope = null; - this.SetIsAttached(false); - var old = this.ParentNode; - this.ParentNode = null; - if (old) { - var index = old._LogicalChildren.indexOf(this); - if (index > -1) - old._LogicalChildren.splice(index, 1); - this.OnParentChanged(old, null); - } - }; - XamlNode.prototype.OnParentChanged = function (oldParentNode, newParentNode) { }; - XamlNode.prototype.GetInheritedEnumerator = function () { return undefined; }; - XamlNode.SetShareable = function (xn) { - xn.IsShareable = true; - }; - return XamlNode; - })(); - Fayde.XamlNode = XamlNode; -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var XamlObject = (function () { - function XamlObject() { - this.TemplateOwner = null; - this.App = null; - this._ID = XamlObject._LastID++; - this.XamlNode = this.CreateNode(); - } - XamlObject.prototype.CreateNode = function () { - return new Fayde.XamlNode(this); - }; - Object.defineProperty(XamlObject.prototype, "Name", { - get: function () { return this.XamlNode.Name; }, - enumerable: true, - configurable: true - }); - Object.defineProperty(XamlObject.prototype, "Parent", { - get: function () { - var pn = this.XamlNode.ParentNode; - if (!pn) - return; - return pn.XObject; - }, - enumerable: true, - configurable: true - }); - XamlObject.prototype.FindName = function (name, doc) { - var n = this.XamlNode.FindName(name, doc); - return n ? n.XObject : undefined; - }; - XamlObject.prototype.Clone = function () { - var xobj = new this.constructor(); - xobj.CloneCore(this); - return xobj; - }; - XamlObject.prototype.CloneCore = function (source) { }; - XamlObject.prototype.IsInheritable = function (propd) { return false; }; - XamlObject._LastID = 0; - return XamlObject; - })(); - Fayde.XamlObject = XamlObject; - Fayde.CoreLibrary.add(XamlObject); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Providers; - (function (Providers) { - (function (PropertyPrecedence) { - PropertyPrecedence[PropertyPrecedence["IsEnabled"] = 0] = "IsEnabled"; - PropertyPrecedence[PropertyPrecedence["LocalValue"] = 1] = "LocalValue"; - PropertyPrecedence[PropertyPrecedence["LocalStyle"] = 2] = "LocalStyle"; - PropertyPrecedence[PropertyPrecedence["ImplicitStyle"] = 3] = "ImplicitStyle"; - PropertyPrecedence[PropertyPrecedence["Inherited"] = 4] = "Inherited"; - PropertyPrecedence[PropertyPrecedence["InheritedDataContext"] = 5] = "InheritedDataContext"; - PropertyPrecedence[PropertyPrecedence["DefaultValue"] = 6] = "DefaultValue"; - PropertyPrecedence[PropertyPrecedence["Lowest"] = 6] = "Lowest"; - PropertyPrecedence[PropertyPrecedence["Highest"] = 0] = "Highest"; - PropertyPrecedence[PropertyPrecedence["Count"] = 7] = "Count"; - })(Providers.PropertyPrecedence || (Providers.PropertyPrecedence = {})); - var PropertyPrecedence = Providers.PropertyPrecedence; - function GetStorage(dobj, propd) { - var arr = dobj._PropertyStorage; - var storage = arr[propd._ID]; - if (!storage) - arr[propd._ID] = storage = propd.Store.CreateStorage(dobj, propd); - return storage; - } - Providers.GetStorage = GetStorage; - var PropertyStore = (function () { - function PropertyStore() { - } - PropertyStore.prototype.GetValue = function (storage) { - var val; - if ((val = storage.Local) !== undefined) - return val; - if ((val = storage.LocalStyleValue) !== undefined) - return val; - if ((val = storage.ImplicitStyleValue) !== undefined) - return val; - return storage.Property.DefaultValue; - }; - PropertyStore.prototype.GetValuePrecedence = function (storage) { - if (storage.Local !== undefined) - return PropertyPrecedence.LocalValue; - if (storage.LocalStyleValue !== undefined) - return PropertyPrecedence.LocalStyle; - if (storage.ImplicitStyleValue !== undefined) - return PropertyPrecedence.ImplicitStyle; - return PropertyPrecedence.DefaultValue; - }; - PropertyStore.prototype.SetLocalValue = function (storage, newValue) { - if (newValue === undefined || newValue === DependencyProperty.UnsetValue) { - this.ClearValue(storage); - return; - } - var propd = storage.Property; - if (newValue && propd.GetTargetType() === String) { - if (typeof newValue !== "string") - newValue = newValue.toString(); - } - var isValidOut = { IsValid: false }; - newValue = propd.ValidateSetValue(storage.OwnerNode.XObject, newValue, isValidOut); - if (!isValidOut.IsValid) - return; - var precDiff = storage.Precedence - PropertyPrecedence.LocalValue; - if (!propd.AlwaysChange && precDiff < 0) { - storage.Local = newValue; - return; - } - var oldValue = undefined; - if (precDiff > 0) - oldValue = this.GetValue(storage); - else - oldValue = storage.Local; - storage.Local = newValue; - this.OnPropertyChanged(storage, PropertyPrecedence.LocalValue, oldValue, newValue); - }; - PropertyStore.prototype.SetLocalStyleValue = function (storage, newValue) { - var precDiff = storage.Precedence - PropertyPrecedence.LocalStyle; - if (precDiff < 0) { - storage.LocalStyleValue = newValue; - return; - } - var oldValue = undefined; - if (precDiff > 0) - oldValue = this.GetValue(storage); - else - oldValue = storage.LocalStyleValue; - storage.LocalStyleValue = newValue; - this.OnPropertyChanged(storage, PropertyPrecedence.LocalStyle, oldValue, newValue); - }; - PropertyStore.prototype.SetImplicitStyle = function (storage, newValue) { - var precDiff = storage.Precedence - PropertyPrecedence.ImplicitStyle; - if (precDiff < 0) { - storage.ImplicitStyleValue = newValue; - return; - } - var oldValue = undefined; - if (precDiff > 0) - oldValue = this.GetValue(storage); - else - oldValue = storage.ImplicitStyleValue; - storage.ImplicitStyleValue = newValue; - this.OnPropertyChanged(storage, PropertyPrecedence.ImplicitStyle, oldValue, newValue); - }; - PropertyStore.prototype.ClearValue = function (storage) { - var oldLocal = storage.Local; - if (oldLocal === undefined) - return; - storage.Local = undefined; - this.OnPropertyChanged(storage, PropertyPrecedence.LocalValue, oldLocal, undefined); - }; - PropertyStore.prototype.OnPropertyChanged = function (storage, effectivePrecedence, oldValue, newValue) { - var propd = storage.Property; - if (newValue === undefined) { - effectivePrecedence = this.GetValuePrecedence(storage); - newValue = this.GetValue(storage); - } - storage.Precedence = effectivePrecedence; - if (!propd.AlwaysChange && oldValue === newValue) - return undefined; - if (!storage.Property.IsCustom) { - if (oldValue instanceof Fayde.XamlObject) - oldValue.XamlNode.Detach(); - if (newValue instanceof Fayde.XamlObject) { - var error = new BError(); - if (!newValue.XamlNode.AttachTo(storage.OwnerNode, error)) - error.ThrowException(); - } - } - var args = { - Property: propd, - OldValue: oldValue, - NewValue: newValue - }; - var sender = storage.OwnerNode.XObject; - if (propd.ChangedCallback) - propd.ChangedCallback(sender, args); - var listeners = storage.PropListeners; - if (listeners) { - var len = listeners.length; - for (var i = 0; i < len; i++) { - listeners[i].OnPropertyChanged(sender, args); - } - } - return args; - }; - PropertyStore.prototype.ListenToChanged = function (target, propd, func, closure) { - var storage = GetStorage(target, propd); - var listeners = storage.PropListeners; - if (!listeners) - listeners = storage.PropListeners = []; - var listener = { - Detach: function () { - var index = listeners.indexOf(listener); - if (index > -1) - listeners.splice(index, 1); - }, - Property: propd, - OnPropertyChanged: function (sender, args) { func.call(closure, sender, args); } - }; - listeners.push(listener); - return listener; - }; - PropertyStore.prototype.CreateStorage = function (dobj, propd) { - return { - OwnerNode: dobj.XamlNode, - Property: propd, - Precedence: PropertyPrecedence.DefaultValue, - Animations: undefined, - Local: undefined, - LocalStyleValue: undefined, - ImplicitStyleValue: undefined, - PropListeners: undefined, - }; - }; - PropertyStore.prototype.Clone = function (dobj, sourceStorage) { - var newStorage = this.CreateStorage(dobj, sourceStorage.Property); - newStorage.Precedence = sourceStorage.Precedence; - newStorage.Local = Fayde.Clone(sourceStorage.Local); - var anims = newStorage.Animations = sourceStorage.Animations; - if (anims) { - for (var i = 0; i < anims.length; i++) { - anims[i].PropStorage = newStorage; - } - } - return newStorage; - }; - return PropertyStore; - })(); - Providers.PropertyStore = PropertyStore; - PropertyStore.Instance = new PropertyStore(); - })(Providers = Fayde.Providers || (Fayde.Providers = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Providers; - (function (Providers) { - var ImmutableStore = (function (_super) { - __extends(ImmutableStore, _super); - function ImmutableStore() { - _super.apply(this, arguments); - } - ImmutableStore.prototype.GetValue = function (storage) { - return storage.Local; - }; - ImmutableStore.prototype.GetValuePrecedence = function (storage) { - return Providers.PropertyPrecedence.LocalValue; - }; - ImmutableStore.prototype.SetLocalValue = function (storage, newValue) { - console.warn("Trying to set value for immutable property."); - }; - ImmutableStore.prototype.ClearValue = function (storage) { - console.warn("Trying to clear value for immutable property."); - }; - ImmutableStore.prototype.ListenToChanged = function (target, propd, func, closure) { - return { - Property: propd, - OnPropertyChanged: function (sender, args) { }, - Detach: function () { } - }; - }; - ImmutableStore.prototype.Clone = function (dobj, sourceStorage) { - if (sourceStorage.Local instanceof Fayde.XamlObjectCollection) { - var newStorage = Providers.GetStorage(dobj, sourceStorage.Property); - var newColl = newStorage.Local; - newColl.CloneCore(sourceStorage.Local); - var anims = newStorage.Animations = sourceStorage.Animations; - if (anims) { - for (var i = 0; i < anims.length; i++) { - anims[i].PropStorage = newStorage; - } - } - return newStorage; - } - else { - console.warn("Cloning Immutable improperly"); - return _super.prototype.Clone.call(this, dobj, sourceStorage); - } - }; - return ImmutableStore; - })(Providers.PropertyStore); - Providers.ImmutableStore = ImmutableStore; - ImmutableStore.Instance = new ImmutableStore(); - })(Providers = Fayde.Providers || (Fayde.Providers = {})); -})(Fayde || (Fayde = {})); -/// -var DependencyProperty = (function () { - function DependencyProperty() { - this.IsReadOnly = false; - this.IsCustom = true; - this.IsAttached = false; - this.IsInheritable = false; - this.IsImmutable = false; - this.AlwaysChange = false; - this._Coercer = null; - this._Validator = null; - } - DependencyProperty.Register = function (name, getTargetType, ownerType, defaultValue, changedCallback) { - var propd = new DependencyProperty(); - propd.Name = name; - propd.GetTargetType = getTargetType; - propd.OwnerType = ownerType; - propd.DefaultValue = defaultValue; - propd.ChangedCallback = changedCallback; - propd.Store = Fayde.Providers.PropertyStore.Instance; - propd.FinishRegister(); - return propd; - }; - DependencyProperty.RegisterReadOnly = function (name, getTargetType, ownerType, defaultValue, changedCallback) { - var propd = new DependencyProperty(); - propd.Name = name; - propd.GetTargetType = getTargetType; - propd.OwnerType = ownerType; - propd.DefaultValue = defaultValue; - propd.ChangedCallback = changedCallback; - propd.IsReadOnly = true; - propd.Store = Fayde.Providers.PropertyStore.Instance; - propd.FinishRegister(); - return propd; - }; - DependencyProperty.RegisterAttached = function (name, getTargetType, ownerType, defaultValue, changedCallback) { - var propd = new DependencyProperty(); - propd.Name = name; - propd.GetTargetType = getTargetType; - propd.OwnerType = ownerType; - propd.DefaultValue = defaultValue; - propd.ChangedCallback = changedCallback; - propd.IsAttached = true; - propd.Store = Fayde.Providers.PropertyStore.Instance; - propd.FinishRegister(); - return propd; - }; - DependencyProperty.RegisterCore = function (name, getTargetType, ownerType, defaultValue, changedCallback) { - var propd = new DependencyProperty(); - propd.Name = name; - propd.GetTargetType = getTargetType; - propd.OwnerType = ownerType; - propd.DefaultValue = defaultValue; - propd.ChangedCallback = changedCallback; - propd.IsCustom = false; - propd.Store = Fayde.Providers.PropertyStore.Instance; - propd.FinishRegister(); - return propd; - }; - DependencyProperty.RegisterReadOnlyCore = function (name, getTargetType, ownerType, defaultValue, changedCallback) { - var propd = new DependencyProperty(); - propd.Name = name; - propd.GetTargetType = getTargetType; - propd.OwnerType = ownerType; - propd.DefaultValue = defaultValue; - propd.ChangedCallback = changedCallback; - propd.IsCustom = false; - propd.IsReadOnly = true; - propd.Store = Fayde.Providers.PropertyStore.Instance; - propd.FinishRegister(); - return propd; - }; - DependencyProperty.RegisterAttachedCore = function (name, getTargetType, ownerType, defaultValue, changedCallback) { - var propd = new DependencyProperty(); - propd.Name = name; - propd.GetTargetType = getTargetType; - propd.OwnerType = ownerType; - propd.DefaultValue = defaultValue; - propd.ChangedCallback = changedCallback; - propd.IsCustom = false; - propd.IsAttached = true; - propd.Store = Fayde.Providers.PropertyStore.Instance; - propd.FinishRegister(); - return propd; - }; - DependencyProperty.RegisterImmutable = function (name, getTargetType, ownerType) { - var propd = new ImmutableDependencyProperty(); - propd.Name = name; - propd.GetTargetType = getTargetType; - propd.OwnerType = ownerType; - propd.DefaultValue = undefined; - propd.IsImmutable = true; - propd.Store = Fayde.Providers.ImmutableStore.Instance; - propd.FinishRegister(); - return propd; - }; - DependencyProperty.RegisterInheritable = function (name, getTargetType, ownerType, defaultValue, changedCallback) { - var propd = new DependencyProperty(); - propd.Name = name; - propd.GetTargetType = getTargetType; - propd.OwnerType = ownerType; - propd.DefaultValue = defaultValue; - propd.ChangedCallback = changedCallback; - propd.IsCustom = true; - propd.IsInheritable = true; - propd.Store = Fayde.Providers.InheritedStore.Instance; - propd.FinishRegister(); - return propd; - }; - DependencyProperty.RegisterFull = function (name, getTargetType, ownerType, defaultValue, changedCallback, coercer, alwaysChange, validator, isCustom, isReadOnly, isAttached) { - var propd = new DependencyProperty(); - propd.Name = name; - propd.GetTargetType = getTargetType; - propd.OwnerType = ownerType; - propd.DefaultValue = defaultValue; - propd.ChangedCallback = changedCallback; - propd._Coercer = coercer; - propd.AlwaysChange = alwaysChange; - propd._Validator = validator; - propd.IsCustom = isCustom !== false; - propd.IsReadOnly = isReadOnly === true; - propd.IsAttached = isAttached === true; - propd.Store = Fayde.Providers.PropertyStore.Instance; - propd.FinishRegister(); - return propd; - }; - DependencyProperty.prototype.FinishRegister = function () { - var name = this.Name; - var ownerType = this.OwnerType; - if (!ownerType || typeof ownerType !== "function") - throw new InvalidOperationException("DependencyProperty does not have a valid OwnerType."); - var registeredDPs = ownerType._RegisteredDPs; - if (!registeredDPs) { - var registeredDPs = {}; - Object.defineProperty(ownerType, "_RegisteredDPs", { - value: registeredDPs, - enumerable: false, - writable: false - }); - } - if (registeredDPs[name] !== undefined) - throw new InvalidOperationException("Dependency Property is already registered. [" + name + "]"); - registeredDPs[name] = this; - this._ID = DependencyProperty._LastID = DependencyProperty._LastID + 1; - DependencyProperty._IDs[this._ID] = this; - if (this.IsImmutable) - return; - var propd = this; - var getter = function () { - return this.GetValue(propd); - }; - var setter = function (value) { - this.SetValue(propd, value); - }; - if (this.IsReadOnly) - setter = function (value) { - throw new Exception("Property [" + propd.Name + "] is readonly."); - }; - Object.defineProperty(ownerType.prototype, this.Name, { - get: getter, - set: setter, - configurable: true - }); - }; - DependencyProperty.prototype.ExtendTo = function (type) { - var registeredDPs = type._RegisteredDPs; - if (!registeredDPs) { - var registeredDPs = {}; - Object.defineProperty(type, "_RegisteredDPs", { - value: registeredDPs, - enumerable: false, - writable: false - }); - } - registeredDPs[this.Name] = this; - var propd = this; - var getter = function () { - return this.GetValue(propd); - }; - var setter = function (value) { - this.SetValue(propd, value); - }; - Object.defineProperty(type.prototype, this.Name, { - get: getter, - set: setter, - configurable: true - }); - return this; - }; - DependencyProperty.prototype.ValidateSetValue = function (dobj, value, isValidOut) { - var coerced = value; - if (this._Coercer) - coerced = this._Coercer(dobj, this, coerced); - isValidOut.IsValid = true; - if (this._Validator) - isValidOut.IsValid = !!this._Validator(dobj, this, coerced, value); - return coerced; - }; - DependencyProperty.GetDependencyProperty = function (ownerType, name, noError) { - if (!ownerType) - return undefined; - var reg = ownerType._RegisteredDPs; - var propd; - if (reg) - propd = reg[name]; - if (!propd) - propd = DependencyProperty.GetDependencyProperty(nullstone.getTypeParent(ownerType), name, true); - if (!propd && !noError) - throw new Exception("Cannot locate dependency property [" + ownerType.name + "].[" + name + "]"); - return propd; - }; - DependencyProperty.UnsetValue = {}; - DependencyProperty._IDs = []; - DependencyProperty._LastID = 0; - return DependencyProperty; -})(); -Fayde.CoreLibrary.add(DependencyProperty); -var ImmutableDependencyProperty = (function (_super) { - __extends(ImmutableDependencyProperty, _super); - function ImmutableDependencyProperty() { - _super.apply(this, arguments); - this.IsImmutable = true; - } - ImmutableDependencyProperty.prototype.Initialize = function (dobj) { - var storage = Fayde.Providers.GetStorage(dobj, this); - storage.Precedence = Fayde.Providers.PropertyPrecedence.LocalValue; - var type = this.GetTargetType(); - var obj = new type(); - Object.defineProperty(dobj, this.Name, { - value: obj, - writable: false - }); - return storage.Local = obj; - }; - return ImmutableDependencyProperty; -})(DependencyProperty); -/// -var Fayde; -(function (Fayde) { - var Providers; - (function (Providers) { - var DataContextStore = (function (_super) { - __extends(DataContextStore, _super); - function DataContextStore() { - _super.apply(this, arguments); - } - DataContextStore.prototype.GetValue = function (storage) { - var val = _super.prototype.GetValue.call(this, storage); - if (val === undefined) - val = storage.InheritedValue; - return val; - }; - DataContextStore.prototype.GetValuePrecedence = function (storage) { - var prec = _super.prototype.GetValuePrecedence.call(this, storage); - if (prec < Providers.PropertyPrecedence.InheritedDataContext) - return prec; - if (storage.InheritedValue !== undefined) - return Providers.PropertyPrecedence.InheritedDataContext; - return Providers.PropertyPrecedence.DefaultValue; - }; - DataContextStore.prototype.OnInheritedChanged = function (storage, newInherited) { - var oldInherited = storage.InheritedValue; - storage.InheritedValue = newInherited; - if (storage.Precedence >= Providers.PropertyPrecedence.InheritedDataContext && oldInherited !== newInherited) - this.OnPropertyChanged(storage, Providers.PropertyPrecedence.InheritedDataContext, oldInherited, newInherited); - }; - DataContextStore.prototype.CreateStorage = function (dobj, propd) { - return { - OwnerNode: dobj.XamlNode, - Property: propd, - Precedence: Providers.PropertyPrecedence.DefaultValue, - Animations: undefined, - Local: undefined, - LocalStyleValue: undefined, - ImplicitStyleValue: undefined, - InheritedValue: undefined, - PropListeners: undefined, - }; - }; - DataContextStore.prototype.OnPropertyChanged = function (storage, effectivePrecedence, oldValue, newValue) { - var args = _super.prototype.OnPropertyChanged.call(this, storage, effectivePrecedence, oldValue, newValue); - if (args) { - if (effectivePrecedence > Providers.PropertyPrecedence.LocalValue && this.TryUpdateDataContextExpression(storage, args.NewValue)) - return; - storage.OwnerNode.OnDataContextChanged(args.OldValue, args.NewValue); - } - return args; - }; - DataContextStore.prototype.TryUpdateDataContextExpression = function (storage, newDataContext) { - var val = storage.InheritedValue; - var exprs = storage.OwnerNode.XObject._Expressions; - var dcexpr = exprs[storage.Property._ID]; - if (!dcexpr) - return false; - dcexpr.OnDataContextChanged(newDataContext); - return true; - }; - return DataContextStore; - })(Providers.PropertyStore); - Providers.DataContextStore = DataContextStore; - DataContextStore.Instance = new DataContextStore(); - })(Providers = Fayde.Providers || (Fayde.Providers = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - function DPReaction(propd, callback, listen) { - if (listen === false) { - propd.ChangedCallback = reaction(callback); - } - else { - propd.ChangedCallback = lReaction(callback); - } - } - Fayde.DPReaction = DPReaction; - function reaction(callback) { - return function (dobj, args) { - callback && callback(dobj, args.OldValue, args.NewValue); - }; - } - function lReaction(callback) { - return function (dobj, args) { - var ov = args.OldValue; - var nv = args.NewValue; - Fayde.UnreactTo(ov, dobj); - callback && callback(dobj, ov, nv); - Fayde.ReactTo(nv, dobj, function () { return callback(dobj, nv, nv); }); - }; - } -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - function Incite(obj, val) { - if (!obj) - return; - var reactions = obj.$$reactions; - if (!reactions) - return; - var rs = obj.$$reaction_sources; - for (var i = 0; i < reactions.length; i++) { - reactions[i].call(rs[i], val); - } - } - Fayde.Incite = Incite; - function ReactTo(obj, scope, changed) { - if (!obj) - return; - var rs = obj.$$reaction_sources; - if (!rs) { - rs = []; - Object.defineProperty(obj, "$$reaction_sources", { value: rs, enumerable: false }); - } - rs.push(scope); - var reactions = obj.$$reactions; - if (!reactions) { - reactions = []; - Object.defineProperty(obj, "$$reactions", { value: reactions, enumerable: false }); - } - reactions.push(changed); - } - Fayde.ReactTo = ReactTo; - function UnreactTo(obj, scope) { - if (!obj) - return; - var reactions = obj.$$reactions; - if (!reactions) - return; - var rs = obj.$$reaction_sources; - var index = rs.indexOf(scope); - if (index < 0) - return; - rs.splice(index, 1); - reactions.splice(index, 1); - } - Fayde.UnreactTo = UnreactTo; -})(Fayde || (Fayde = {})); -/// -/// -/// -/// -/// -/// -/// -var Fayde; -(function (Fayde) { - var DONode = (function (_super) { - __extends(DONode, _super); - function DONode(xobj) { - _super.call(this, xobj); - } - DONode.prototype.OnParentChanged = function (oldParentNode, newParentNode) { - _super.prototype.OnParentChanged.call(this, oldParentNode, newParentNode); - var propd = DependencyObject.DataContextProperty; - var storage = Fayde.Providers.GetStorage(this.XObject, propd); - var newInherited = newParentNode ? newParentNode.DataContext : undefined; - propd.Store.OnInheritedChanged(storage, newInherited); - }; - Object.defineProperty(DONode.prototype, "DataContext", { - get: function () { return this.XObject.DataContext; }, - set: function (value) { - var propd = DependencyObject.DataContextProperty; - var storage = Fayde.Providers.GetStorage(this.XObject, propd); - propd.Store.OnInheritedChanged(storage, value); - }, - enumerable: true, - configurable: true - }); - DONode.prototype.OnDataContextChanged = function (oldDataContext, newDataContext) { - var dcpid = DependencyObject.DataContextProperty._ID.toString(); - var exprs = this.XObject._Expressions; - var expr; - for (var id in exprs) { - expr = exprs[id]; - if (!(expr instanceof Fayde.Expression)) - continue; - if (id === dcpid) - continue; - expr.OnDataContextChanged(newDataContext); - } - _super.prototype.OnDataContextChanged.call(this, oldDataContext, newDataContext); - }; - return DONode; - })(Fayde.XamlNode); - Fayde.DONode = DONode; - var DependencyObject = (function (_super) { - __extends(DependencyObject, _super); - function DependencyObject() { - _super.call(this); - this._Expressions = []; - this._PropertyStorage = []; - } - DependencyObject.prototype.CreateNode = function () { return new DONode(this); }; - DependencyObject.prototype.GetValue = function (propd) { - if (!propd) - throw new ArgumentException("No property specified."); - var storage = Fayde.Providers.GetStorage(this, propd); - return propd.Store.GetValue(storage); - }; - DependencyObject.prototype.SetValue = function (propd, value) { - if (!propd) - throw new ArgumentException("No property specified."); - if (propd.IsReadOnly) - throw new InvalidOperationException("DependencyProperty '" + propd.OwnerType.name + "." + propd.Name + "' is read only."); - this.SetValueInternal(propd, value); - }; - DependencyObject.prototype.SetValueInternal = function (propd, value) { - var expression; - if (value instanceof Fayde.Expression) { - expression = value; - expression.Seal(this, propd); - } - var existing = this._Expressions[propd._ID]; - var updateTwoWay = false; - var addingExpression = false; - if (expression) { - if (expression !== existing) { - if (expression.IsAttached) - throw new ArgumentException("Cannot attach the same Expression to multiple FrameworkElements"); - if (existing) - this._RemoveExpression(propd); - this._AddExpression(propd, expression); - } - addingExpression = true; - value = expression.GetValue(propd); - } - else if (existing) { - if (existing instanceof Fayde.Data.BindingExpressionBase) { - var binding = existing.ParentBinding; - if (binding.Mode === Fayde.Data.BindingMode.TwoWay) { - updateTwoWay = !existing.IsUpdating && !propd.IsCustom; - } - else if (!existing.IsUpdating || binding.Mode === Fayde.Data.BindingMode.OneTime) { - this._RemoveExpression(propd); - } - } - else if (!existing.IsUpdating) { - this._RemoveExpression(propd); - } - } - var storage = Fayde.Providers.GetStorage(this, propd); - try { - propd.Store.SetLocalValue(storage, value); - if (updateTwoWay) - existing._TryUpdateSourceObject(value); - } - catch (err) { - if (!addingExpression) - throw err; - var msg = "Error setting value: " + err.toString(); - msg += err.stack; - console.warn(msg); - propd.Store.SetLocalValue(storage, propd.DefaultValue); - if (updateTwoWay) - existing._TryUpdateSourceObject(value); - } - }; - DependencyObject.prototype.SetCurrentValue = function (propd, value) { - var storage = Fayde.Providers.GetStorage(this, propd); - propd.Store.SetLocalValue(storage, value); - var expr = this._Expressions[propd._ID]; - if (expr instanceof Fayde.Data.BindingExpressionBase) - expr._TryUpdateSourceObject(value); - }; - DependencyObject.prototype.ClearValue = function (propd) { - if (!propd) - throw new ArgumentException("No dependency property."); - if (propd.IsReadOnly && !propd.IsCustom) - throw new ArgumentException("This property is readonly."); - this._RemoveExpression(propd); - var storage = Fayde.Providers.GetStorage(this, propd); - var anims = storage.Animations; - if (anims && anims.length > 0) - return; - propd.Store.ClearValue(storage); - }; - DependencyObject.prototype.ReadLocalValue = function (propd) { - if (!propd) - throw new ArgumentException("No property specified."); - var expr = this._Expressions[propd._ID]; - var val; - if (expr) - val = expr.GetValue(propd); - else - val = this.ReadLocalValueInternal(propd); - if (val === undefined) - return DependencyProperty.UnsetValue; - return val; - }; - DependencyObject.prototype.ReadLocalValueInternal = function (propd) { - var storage = Fayde.Providers.GetStorage(this, propd); - return storage.Local; - }; - DependencyObject.prototype._AddExpression = function (propd, expr) { - this._Expressions[propd._ID] = expr; - expr.OnAttached(this); - }; - DependencyObject.prototype._RemoveExpression = function (propd) { - var expr = this._Expressions[propd._ID]; - if (expr) { - this._Expressions[propd._ID] = undefined; - expr.OnDetached(this); - } - }; - DependencyObject.prototype._HasDeferredValueExpression = function (propd) { - var expr = this._Expressions[propd._ID]; - return expr instanceof Fayde.DeferredValueExpression; - }; - DependencyObject.prototype.GetBindingExpression = function (propd) { - var expr = this._Expressions[propd._ID]; - if (expr instanceof Fayde.Data.BindingExpressionBase) - return expr; - }; - DependencyObject.prototype.HasValueOrExpression = function (propd) { - if (this._Expressions[propd._ID] instanceof Fayde.Expression) - return true; - return this.ReadLocalValueInternal(propd) !== undefined; - }; - DependencyObject.prototype.SetBinding = function (propd, binding) { - if (!propd) - throw new ArgumentException("propd"); - if (!binding) - throw new ArgumentException("binding"); - var e = new Fayde.Data.BindingExpression(binding); - this.SetValueInternal(propd, e); - return e; - }; - DependencyObject.prototype.CloneCore = function (source) { - var sarr = source._PropertyStorage; - var darr = this._PropertyStorage; - if (!darr) - darr = this._PropertyStorage = []; - for (var id in sarr) { - var storage = sarr[id]; - darr[id] = storage.Property.Store.Clone(this, storage); - } - }; - DependencyObject.prototype.ListenToChanged = function (propd, func, closure) { - return propd.Store.ListenToChanged(this, propd, func, closure); - }; - DependencyObject.DataContextProperty = DependencyProperty.Register("DataContext", function () { return Object; }, DependencyObject); - return DependencyObject; - })(Fayde.XamlObject); - Fayde.DependencyObject = DependencyObject; - Fayde.CoreLibrary.add(DependencyObject); - DependencyObject.DataContextProperty.Store = Fayde.Providers.DataContextStore.Instance; -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - function UIReaction(propd, callback, listen, sync, instance) { - var changed; - if (sync === false) { - changed = (listen === false) ? reaction(callback) : lReaction(callback); - } - else { - var name = propd.Name; - name = name.charAt(0).toLowerCase() + name.substr(1); - if (typeof sync !== "function") - changed = (listen === false) ? sReaction(callback, name) : slReaction(callback, name); - else - changed = (listen === false) ? sReaction(callback, name, sync) : slReaction(callback, name, sync); - } - if (instance) - propd.Store.ListenToChanged(instance, propd, changed, instance); - else - propd.ChangedCallback = changed; - } - Fayde.UIReaction = UIReaction; - function reaction(callback) { - return function (uie, args) { - callback && callback(uie.XamlNode.LayoutUpdater, args.OldValue, args.NewValue, uie); - }; - } - function sReaction(callback, name, syncer) { - return function (uie, args) { - var ov = args.OldValue; - var nv = args.NewValue; - var upd = uie.XamlNode.LayoutUpdater; - if (!syncer) - upd.assets[name] = nv; - else - syncer(nv, upd.assets[name]); - callback && callback(upd, ov, nv, uie); - }; - } - function lReaction(callback) { - return function (uie, args) { - var ov = args.OldValue; - var nv = args.NewValue; - var upd = uie.XamlNode.LayoutUpdater; - Fayde.UnreactTo(ov, uie); - callback && callback(upd, ov, nv, uie); - Fayde.ReactTo(nv, uie, function () { return callback(upd, nv, nv, uie); }); - }; - } - function slReaction(callback, name, syncer) { - return function (uie, args) { - var ov = args.OldValue; - var nv = args.NewValue; - var upd = uie.XamlNode.LayoutUpdater; - Fayde.UnreactTo(ov, uie); - if (!syncer) - upd.assets[name] = nv; - else - syncer(nv, upd.assets[name]); - callback && callback(upd, ov, nv, uie); - Fayde.ReactTo(nv, uie, function () { return callback && callback(upd, nv, nv, uie); }); - }; - } -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - function UIReactionAttached(propd, callback) { - propd.ChangedCallback = reaction(nullstone.getTypeName(propd.OwnerType) + '.' + propd.Name, callback); - } - Fayde.UIReactionAttached = UIReactionAttached; - function reaction(name, callback) { - return function (uie, args) { - var ov = args.OldValue; - var nv = args.NewValue; - var upd = uie.XamlNode.LayoutUpdater; - upd.setAttachedValue(name, nv); - callback && callback(upd, ov, nv, uie); - }; - } -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Providers; - (function (Providers) { - var InheritedStore = (function (_super) { - __extends(InheritedStore, _super); - function InheritedStore() { - _super.apply(this, arguments); - } - InheritedStore.prototype.GetValue = function (storage) { - var val; - if ((val = storage.Local) !== undefined) - return val; - if ((val = storage.LocalStyleValue) !== undefined) - return val; - if ((val = storage.ImplicitStyleValue) !== undefined) - return val; - if ((val = storage.InheritedValue) !== undefined) - return val; - return storage.Property.DefaultValue; - }; - InheritedStore.prototype.GetValuePrecedence = function (storage) { - var prec = _super.prototype.GetValuePrecedence.call(this, storage); - if (prec < Providers.PropertyPrecedence.Inherited) - return prec; - if (storage.InheritedValue !== undefined) - return Providers.PropertyPrecedence.Inherited; - return Providers.PropertyPrecedence.DefaultValue; - }; - InheritedStore.prototype.OnPropertyChanged = function (storage, effectivePrecedence, oldValue, newValue) { - var args = _super.prototype.OnPropertyChanged.call(this, storage, effectivePrecedence, oldValue, newValue); - if (effectivePrecedence <= Providers.PropertyPrecedence.Inherited) - this.Propagate(storage.OwnerNode, storage.Property, newValue); - return args; - }; - InheritedStore.prototype.CreateStorage = function (dobj, propd) { - return { - OwnerNode: dobj.XamlNode, - Property: propd, - Precedence: Providers.PropertyPrecedence.DefaultValue, - Animations: undefined, - Local: undefined, - LocalStyleValue: undefined, - ImplicitStyleValue: undefined, - InheritedValue: undefined, - PropListeners: undefined, - }; - }; - InheritedStore.PropagateInheritedOnAdd = function (dobj, subtreeNode) { - var destination = subtreeNode.XObject; - var store = InheritedStore.Instance; - var arr = destination._PropertyStorage; - var storage; - var allProps = Fayde.InheritableOwner.AllInheritedProperties; - var len = allProps.length; - var propd; - var newValue; - var sourceNode; - for (var i = 0; i < len; i++) { - propd = allProps[i]; - sourceNode = dobj.XamlNode; - while (sourceNode && !(sourceNode.XObject.IsInheritable(propd))) { - sourceNode = sourceNode.ParentNode; - } - if (!sourceNode) - continue; - newValue = sourceNode.XObject.GetValue(propd); - if (newValue === propd.DefaultValue) - continue; - storage = arr[propd._ID]; - if (!storage) - storage = arr[propd._ID] = store.CreateStorage(destination, propd); - if (!store.SetInheritedValue(subtreeNode, propd, newValue)) - store.Propagate(subtreeNode, propd, newValue); - } - }; - InheritedStore.ClearInheritedOnRemove = function (dobj, subtreeNode) { - var store = InheritedStore.Instance; - var allProps = Fayde.InheritableOwner.AllInheritedProperties; - var len = allProps.length; - var propd; - for (var i = 0; i < len; i++) { - propd = allProps[i]; - if (!store.SetInheritedValue(subtreeNode, propd, undefined)) - store.Propagate(subtreeNode, propd, undefined); - } - }; - InheritedStore.prototype.Propagate = function (ownerNode, propd, newValue) { - var enumerator = ownerNode.GetInheritedEnumerator(); - var uin; - while (enumerator.moveNext()) { - uin = enumerator.current; - if (!this.SetInheritedValue(uin, propd, newValue)) - this.Propagate(uin, propd, newValue); - } - }; - InheritedStore.prototype.SetInheritedValue = function (don, propd, newValue) { - var dobj = don.XObject; - if (!dobj.IsInheritable(propd)) - return false; - var storage = Providers.GetStorage(dobj, propd); - if (storage.Precedence < Providers.PropertyPrecedence.Inherited) { - storage.InheritedValue = newValue; - return true; - } - var oldValue = storage.InheritedValue; - if (oldValue === undefined) - oldValue = propd.DefaultValue; - storage.InheritedValue = newValue; - storage.Precedence = Providers.PropertyPrecedence.Inherited; - this.OnPropertyChanged(storage, Providers.PropertyPrecedence.Inherited, oldValue, newValue); - return true; - }; - return InheritedStore; - })(Providers.PropertyStore); - Providers.InheritedStore = InheritedStore; - InheritedStore.Instance = new InheritedStore(); - })(Providers = Fayde.Providers || (Fayde.Providers = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - (function (Orientation) { - Orientation[Orientation["Horizontal"] = 0] = "Horizontal"; - Orientation[Orientation["Vertical"] = 1] = "Vertical"; - })(Fayde.Orientation || (Fayde.Orientation = {})); - var Orientation = Fayde.Orientation; - Fayde.CoreLibrary.addEnum(Orientation, "Orientation"); - (function (Visibility) { - Visibility[Visibility["Visible"] = 0] = "Visible"; - Visibility[Visibility["Collapsed"] = 1] = "Collapsed"; - })(Fayde.Visibility || (Fayde.Visibility = {})); - var Visibility = Fayde.Visibility; - Fayde.CoreLibrary.addEnum(Visibility, "Visibility"); - nullstone.registerEnumConverter(Visibility, function (val) { - if (val === "true" || val === true || val === Visibility.Visible || val === "Visible") - return Visibility.Visible; - return Visibility.Collapsed; - }); - (function (CursorType) { - CursorType[CursorType["Default"] = 0] = "Default"; - CursorType[CursorType["Hand"] = 1] = "Hand"; - CursorType[CursorType["IBeam"] = 2] = "IBeam"; - CursorType[CursorType["Wait"] = 3] = "Wait"; - CursorType[CursorType["SizeNESW"] = 4] = "SizeNESW"; - CursorType[CursorType["SizeNWSE"] = 5] = "SizeNWSE"; - CursorType[CursorType["SizeNS"] = 6] = "SizeNS"; - CursorType[CursorType["SizeWE"] = 7] = "SizeWE"; - })(Fayde.CursorType || (Fayde.CursorType = {})); - var CursorType = Fayde.CursorType; - Fayde.CoreLibrary.addEnum(CursorType, "CursorType"); - Fayde.CursorTypeMappings = { - Default: "", - Hand: "pointer", - IBeam: "text", - Wait: "wait", - SizeNESW: "ne-resize", - SizeNWSE: "nw-resize", - SizeNS: "n-resize", - SizeWE: "w-resize" - }; - (function (HorizontalAlignment) { - HorizontalAlignment[HorizontalAlignment["Left"] = 0] = "Left"; - HorizontalAlignment[HorizontalAlignment["Center"] = 1] = "Center"; - HorizontalAlignment[HorizontalAlignment["Right"] = 2] = "Right"; - HorizontalAlignment[HorizontalAlignment["Stretch"] = 3] = "Stretch"; - })(Fayde.HorizontalAlignment || (Fayde.HorizontalAlignment = {})); - var HorizontalAlignment = Fayde.HorizontalAlignment; - Fayde.CoreLibrary.addEnum(HorizontalAlignment, "HorizontalAlignment"); - (function (VerticalAlignment) { - VerticalAlignment[VerticalAlignment["Top"] = 0] = "Top"; - VerticalAlignment[VerticalAlignment["Center"] = 1] = "Center"; - VerticalAlignment[VerticalAlignment["Bottom"] = 2] = "Bottom"; - VerticalAlignment[VerticalAlignment["Stretch"] = 3] = "Stretch"; - })(Fayde.VerticalAlignment || (Fayde.VerticalAlignment = {})); - var VerticalAlignment = Fayde.VerticalAlignment; - Fayde.CoreLibrary.addEnum(VerticalAlignment, "VerticalAlignment"); - (function (FlowDirection) { - FlowDirection[FlowDirection["LeftToRight"] = 0] = "LeftToRight"; - FlowDirection[FlowDirection["RightToLeft"] = 1] = "RightToLeft"; - })(Fayde.FlowDirection || (Fayde.FlowDirection = {})); - var FlowDirection = Fayde.FlowDirection; - Fayde.CoreLibrary.addEnum(FlowDirection, "FlowDirection"); - (function (FontWeight) { - FontWeight[FontWeight["Thin"] = 100] = "Thin"; - FontWeight[FontWeight["ExtraLight"] = 200] = "ExtraLight"; - FontWeight[FontWeight["Light"] = 300] = "Light"; - FontWeight[FontWeight["Normal"] = 400] = "Normal"; - FontWeight[FontWeight["Medium"] = 500] = "Medium"; - FontWeight[FontWeight["SemiBold"] = 600] = "SemiBold"; - FontWeight[FontWeight["Bold"] = 700] = "Bold"; - FontWeight[FontWeight["ExtraBold"] = 800] = "ExtraBold"; - FontWeight[FontWeight["Black"] = 900] = "Black"; - FontWeight[FontWeight["ExtraBlack"] = 950] = "ExtraBlack"; - })(Fayde.FontWeight || (Fayde.FontWeight = {})); - var FontWeight = Fayde.FontWeight; - Fayde.CoreLibrary.addEnum(FontWeight, "FontWeight"); - (function (TextAlignment) { - TextAlignment[TextAlignment["Left"] = 0] = "Left"; - TextAlignment[TextAlignment["Center"] = 1] = "Center"; - TextAlignment[TextAlignment["Right"] = 2] = "Right"; - TextAlignment[TextAlignment["Justify"] = 3] = "Justify"; - })(Fayde.TextAlignment || (Fayde.TextAlignment = {})); - var TextAlignment = Fayde.TextAlignment; - Fayde.CoreLibrary.addEnum(TextAlignment, "TextAlignment"); - (function (TextDecorations) { - TextDecorations[TextDecorations["None"] = 0] = "None"; - TextDecorations[TextDecorations["Underline"] = 1] = "Underline"; - })(Fayde.TextDecorations || (Fayde.TextDecorations = {})); - var TextDecorations = Fayde.TextDecorations; - Fayde.CoreLibrary.addEnum(TextDecorations, "TextDecorations"); - (function (LineStackingStrategy) { - LineStackingStrategy[LineStackingStrategy["MaxHeight"] = 0] = "MaxHeight"; - LineStackingStrategy[LineStackingStrategy["BlockLineHeight"] = 1] = "BlockLineHeight"; - })(Fayde.LineStackingStrategy || (Fayde.LineStackingStrategy = {})); - var LineStackingStrategy = Fayde.LineStackingStrategy; - Fayde.CoreLibrary.addEnum(LineStackingStrategy, "LineStackingStrategy"); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - Fayde.FontStyle = minerva.FontStyle; - Fayde.FontStretch = minerva.FontStretch; - Fayde.CoreLibrary.addEnum(Fayde.FontStretch, "FontStretch"); - Fayde.Font = minerva.Font; - Fayde.CoreLibrary.add(minerva.Font); -})(Fayde || (Fayde = {})); -/// -/// -/// -var Fayde; -(function (Fayde) { - var InheritableOwner = (function () { - function InheritableOwner() { - } - InheritableOwner.UseLayoutRoundingProperty = DependencyProperty.RegisterInheritable("UseLayoutRounding", function () { return Boolean; }, InheritableOwner, true); - InheritableOwner.FlowDirectionProperty = DependencyProperty.RegisterInheritable("FlowDirection", function () { return new Fayde.Enum(minerva.FlowDirection); }, InheritableOwner, minerva.FlowDirection.LeftToRight); - InheritableOwner.ForegroundProperty = DependencyProperty.RegisterInheritable("Foreground", function () { return Fayde.Media.Brush; }, InheritableOwner); - InheritableOwner.FontFamilyProperty = DependencyProperty.RegisterInheritable("FontFamily", function () { return String; }, InheritableOwner, Fayde.Font.DEFAULT_FAMILY); - InheritableOwner.FontSizeProperty = DependencyProperty.RegisterInheritable("FontSize", function () { return Number; }, InheritableOwner, Fayde.Font.DEFAULT_SIZE); - InheritableOwner.FontStretchProperty = DependencyProperty.RegisterInheritable("FontStretch", function () { return String; }, InheritableOwner, Fayde.Font.DEFAULT_STRETCH); - InheritableOwner.FontStyleProperty = DependencyProperty.RegisterInheritable("FontStyle", function () { return String; }, InheritableOwner, Fayde.Font.DEFAULT_STYLE); - InheritableOwner.FontWeightProperty = DependencyProperty.RegisterInheritable("FontWeight", function () { return new Fayde.Enum(Fayde.FontWeight); }, InheritableOwner, Fayde.Font.DEFAULT_WEIGHT); - InheritableOwner.TextDecorationsProperty = DependencyProperty.RegisterInheritable("TextDecorations", function () { return new Fayde.Enum(Fayde.TextDecorations); }, InheritableOwner, Fayde.TextDecorations.None); - InheritableOwner.LanguageProperty = DependencyProperty.RegisterInheritable("Language", function () { return String; }, InheritableOwner); - return InheritableOwner; - })(); - Fayde.InheritableOwner = InheritableOwner; - InheritableOwner.AllInheritedProperties = [ - InheritableOwner.ForegroundProperty, - InheritableOwner.FontFamilyProperty, - InheritableOwner.FontStretchProperty, - InheritableOwner.FontStyleProperty, - InheritableOwner.FontWeightProperty, - InheritableOwner.FontSizeProperty, - InheritableOwner.LanguageProperty, - InheritableOwner.FlowDirectionProperty, - InheritableOwner.UseLayoutRoundingProperty, - InheritableOwner.TextDecorationsProperty - ]; - Fayde.CoreLibrary.add(InheritableOwner); - var reactions; - (function (reactions) { - Fayde.UIReaction(InheritableOwner.UseLayoutRoundingProperty, minerva.core.reactTo.useLayoutRounding, false); - Fayde.UIReaction(InheritableOwner.FlowDirectionProperty, minerva.core.reactTo.flowDirection, false); - })(reactions || (reactions = {})); -})(Fayde || (Fayde = {})); -/// -/// -/// -/// -/// -/// -var Fayde; -(function (Fayde) { - var UINode = (function (_super) { - __extends(UINode, _super); - function UINode(xobj) { - _super.call(this, xobj); - this.IsMouseOver = false; - this.IsLoaded = false; - var upd = this.LayoutUpdater = xobj.CreateLayoutUpdater(); - upd.setAttachedValue("$node", this); - upd.setAttachedValue("$id", this.XObject._ID); - } - UINode.prototype.GetVisualRoot = function () { - var curNode = this; - var vpNode; - while (vpNode = curNode.VisualParentNode) { - curNode = vpNode; - } - return curNode; - }; - UINode.prototype.SetIsLoaded = function (value) { }; - UINode.prototype.OnVisualChildAttached = function (uie) { - var un = uie.XamlNode; - Fayde.Providers.InheritedStore.PropagateInheritedOnAdd(this.XObject, un); - un.SetVisualParentNode(this); - }; - UINode.prototype.OnVisualChildDetached = function (uie) { - var un = uie.XamlNode; - un.SetVisualParentNode(null); - Fayde.Providers.InheritedStore.ClearInheritedOnRemove(this.XObject, un); - }; - UINode.prototype.SetVisualParentNode = function (visualParentNode) { - if (this.VisualParentNode === visualParentNode) - return; - this.VisualParentNode = visualParentNode; - this.LayoutUpdater.setVisualParent(visualParentNode ? visualParentNode.LayoutUpdater : null); - }; - UINode.prototype.Focus = function (recurse) { return false; }; - UINode.prototype._EmitFocusChange = function (type) { - if (type === "got") - this._EmitGotFocus(); - else if (type === "lost") - this._EmitLostFocus(); - }; - UINode.prototype._EmitLostFocus = function () { - var e = new Fayde.RoutedEventArgs(); - var x = this.XObject; - x.OnLostFocus(e); - x.LostFocus.raise(x, e); - }; - UINode.prototype._EmitGotFocus = function () { - var e = new Fayde.RoutedEventArgs(); - var x = this.XObject; - x.OnGotFocus(e); - x.GotFocus.raise(x, e); - }; - UINode.prototype._EmitKeyDown = function (args) { - var x = this.XObject; - x.OnKeyDown(args); - x.KeyDown.raise(x, args); - }; - UINode.prototype._EmitKeyUp = function (args) { - var x = this.XObject; - x.OnKeyUp(args); - x.KeyUp.raise(x, args); - }; - UINode.prototype._EmitLostMouseCapture = function (pos) { - var x = this.XObject; - var e = new Fayde.Input.MouseEventArgs(pos); - x.OnLostMouseCapture(e); - x.LostMouseCapture.raise(x, e); - }; - UINode.prototype._EmitMouseEvent = function (type, isLeftButton, isRightButton, args) { - var x = this.XObject; - switch (type) { - case Fayde.Input.MouseInputType.MouseUp: - if (isLeftButton) { - x.OnMouseLeftButtonUp(args); - x.MouseLeftButtonUp.raise(x, args); - } - else if (isRightButton) { - x.OnMouseRightButtonUp(args); - x.MouseRightButtonUp.raise(x, args); - } - break; - case Fayde.Input.MouseInputType.MouseDown: - if (isLeftButton) { - x.OnMouseLeftButtonDown(args); - x.MouseLeftButtonDown.raise(x, args); - } - else if (isRightButton) { - x.OnMouseRightButtonDown(args); - x.MouseRightButtonDown.raise(x, args); - } - break; - case Fayde.Input.MouseInputType.MouseLeave: - this.IsMouseOver = false; - x.OnMouseLeave(args); - x.MouseLeave.raise(x, args); - break; - case Fayde.Input.MouseInputType.MouseEnter: - this.IsMouseOver = true; - x.OnMouseEnter(args); - x.MouseEnter.raise(x, args); - break; - case Fayde.Input.MouseInputType.MouseMove: - x.OnMouseMove(args); - x.MouseMove.raise(x, args); - break; - case Fayde.Input.MouseInputType.MouseWheel: - x.OnMouseWheel(args); - x.MouseWheel.raise(x, args); - break; - default: - return false; - } - return args.Handled; - }; - UINode.prototype._EmitTouchEvent = function (type, args) { - var x = this.XObject; - switch (type) { - case Fayde.Input.TouchInputType.TouchDown: - x.OnTouchDown(args); - x.TouchDown.raise(x, args); - break; - case Fayde.Input.TouchInputType.TouchUp: - x.OnTouchUp(args); - x.TouchUp.raise(x, args); - break; - case Fayde.Input.TouchInputType.TouchMove: - x.OnTouchMove(args); - x.TouchMove.raise(x, args); - break; - case Fayde.Input.TouchInputType.TouchEnter: - x.OnTouchEnter(args); - x.TouchEnter.raise(x, args); - break; - case Fayde.Input.TouchInputType.TouchLeave: - x.OnTouchLeave(args); - x.TouchLeave.raise(x, args); - break; - default: - return false; - } - return args.Handled; - }; - UINode.prototype._EmitGotTouchCapture = function (e) { - var x = this.XObject; - x.OnGotTouchCapture(e); - x.GotTouchCapture.raise(this, e); - }; - UINode.prototype._EmitLostTouchCapture = function (e) { - var x = this.XObject; - x.OnLostTouchCapture(e); - x.LostTouchCapture.raise(this, e); - }; - UINode.prototype.CanCaptureMouse = function () { return true; }; - UINode.prototype.CaptureMouse = function () { - if (!this.IsAttached) - return false; - Fayde.Surface.SetMouseCapture(this); - return true; - }; - UINode.prototype.ReleaseMouseCapture = function () { - if (!this.IsAttached) - return; - Fayde.Surface.ReleaseMouseCapture(this); - }; - UINode.prototype.IsAncestorOf = function (uin) { - var vpNode = uin; - while (vpNode && vpNode !== this) - vpNode = vpNode.VisualParentNode; - return vpNode === this; - }; - UINode.prototype.TransformToVisual = function (uin) { - var raw = minerva.core.Updater.transformToVisual(this.LayoutUpdater, uin ? uin.LayoutUpdater : null); - if (!raw) - throw new ArgumentException("UIElement not attached."); - var mt = new Fayde.Media.MatrixTransform(); - mt.SetCurrentValue(Fayde.Media.MatrixTransform.MatrixProperty, new Fayde.Media.Matrix(raw)); - return mt; - }; - return UINode; - })(Fayde.DONode); - Fayde.UINode = UINode; - var UIElement = (function (_super) { - __extends(UIElement, _super); - function UIElement() { - _super.apply(this, arguments); - this.LostFocus = new Fayde.RoutedEvent(); - this.GotFocus = new Fayde.RoutedEvent(); - this.LostMouseCapture = new Fayde.RoutedEvent(); - this.KeyDown = new Fayde.RoutedEvent(); - this.KeyUp = new Fayde.RoutedEvent(); - this.MouseLeftButtonUp = new Fayde.RoutedEvent(); - this.MouseRightButtonUp = new Fayde.RoutedEvent(); - this.MouseLeftButtonDown = new Fayde.RoutedEvent(); - this.MouseRightButtonDown = new Fayde.RoutedEvent(); - this.MouseLeave = new Fayde.RoutedEvent(); - this.MouseEnter = new Fayde.RoutedEvent(); - this.MouseMove = new Fayde.RoutedEvent(); - this.MouseWheel = new Fayde.RoutedEvent(); - this.TouchDown = new Fayde.RoutedEvent(); - this.TouchUp = new Fayde.RoutedEvent(); - this.TouchEnter = new Fayde.RoutedEvent(); - this.TouchLeave = new Fayde.RoutedEvent(); - this.TouchMove = new Fayde.RoutedEvent(); - this.GotTouchCapture = new Fayde.RoutedEvent(); - this.LostTouchCapture = new Fayde.RoutedEvent(); - } - UIElement.prototype.CreateNode = function () { return new UINode(this); }; - UIElement.prototype.CreateLayoutUpdater = function () { return new minerva.core.Updater(); }; - Object.defineProperty(UIElement.prototype, "IsItemsControl", { - get: function () { return false; }, - enumerable: true, - configurable: true - }); - Object.defineProperty(UIElement.prototype, "VisualParent", { - get: function () { - var vpNode = this.XamlNode.VisualParentNode; - if (vpNode) - return vpNode.XObject; - return undefined; - }, - enumerable: true, - configurable: true - }); - UIElement.prototype.IsInheritable = function (propd) { - return propd === UIElement.UseLayoutRoundingProperty; - }; - Object.defineProperty(UIElement.prototype, "IsMouseOver", { - get: function () { return this.XamlNode.IsMouseOver; }, - enumerable: true, - configurable: true - }); - Object.defineProperty(UIElement.prototype, "DesiredSize", { - get: function () { - var ds = this.XamlNode.LayoutUpdater.assets.desiredSize; - return new minerva.Size(ds.width, ds.height); - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(UIElement.prototype, "RenderSize", { - get: function () { - var ds = this.XamlNode.LayoutUpdater.assets.renderSize; - return new minerva.Size(ds.width, ds.height); - }, - enumerable: true, - configurable: true - }); - UIElement.prototype.Focus = function () { return this.XamlNode.Focus(); }; - UIElement.prototype.CaptureMouse = function () { return this.XamlNode.CaptureMouse(); }; - UIElement.prototype.ReleaseMouseCapture = function () { this.XamlNode.ReleaseMouseCapture(); }; - UIElement.prototype.IsAncestorOf = function (uie) { - if (!uie) - return false; - return this.XamlNode.IsAncestorOf(uie.XamlNode); - }; - UIElement.prototype.TransformToVisual = function (uie) { - var uin = (uie) ? uie.XamlNode : null; - return this.XamlNode.TransformToVisual(uin); - }; - UIElement.prototype.InvalidateMeasure = function () { this.XamlNode.LayoutUpdater.invalidateMeasure(); }; - UIElement.prototype.Measure = function (availableSize) { - this.XamlNode.LayoutUpdater.measure(availableSize); - }; - UIElement.prototype.InvalidateArrange = function () { this.XamlNode.LayoutUpdater.invalidateArrange(); }; - UIElement.prototype.Arrange = function (finalRect) { - this.XamlNode.LayoutUpdater.arrange(finalRect); - }; - UIElement.prototype.OnGotFocus = function (e) { }; - UIElement.prototype.OnLostFocus = function (e) { }; - UIElement.prototype.OnLostMouseCapture = function (e) { }; - UIElement.prototype.OnKeyDown = function (e) { }; - UIElement.prototype.OnKeyUp = function (e) { }; - UIElement.prototype.OnMouseEnter = function (e) { }; - UIElement.prototype.OnMouseLeave = function (e) { }; - UIElement.prototype.OnMouseLeftButtonDown = function (e) { }; - UIElement.prototype.OnMouseLeftButtonUp = function (e) { }; - UIElement.prototype.OnMouseMove = function (e) { }; - UIElement.prototype.OnMouseRightButtonDown = function (e) { }; - UIElement.prototype.OnMouseRightButtonUp = function (e) { }; - UIElement.prototype.OnMouseWheel = function (e) { }; - UIElement.prototype.OnTouchDown = function (e) { }; - UIElement.prototype.OnTouchUp = function (e) { }; - UIElement.prototype.OnTouchEnter = function (e) { }; - UIElement.prototype.OnTouchLeave = function (e) { }; - UIElement.prototype.OnTouchMove = function (e) { }; - UIElement.prototype.OnGotTouchCapture = function (e) { }; - UIElement.prototype.OnLostTouchCapture = function (e) { }; - UIElement.prototype._TriggersChanged = function (args) { - var oldTriggers = args.OldValue; - var newTriggers = args.NewValue; - if (oldTriggers instanceof Fayde.TriggerCollection) - oldTriggers.DetachTarget(this); - if (newTriggers instanceof Fayde.TriggerCollection) - newTriggers.AttachTarget(this); - }; - UIElement.ClipProperty = DependencyProperty.RegisterCore("Clip", function () { return Fayde.Media.Geometry; }, UIElement); - UIElement.EffectProperty = DependencyProperty.Register("Effect", function () { return Fayde.Media.Effects.Effect; }, UIElement); - UIElement.IsHitTestVisibleProperty = DependencyProperty.RegisterCore("IsHitTestVisible", function () { return Boolean; }, UIElement, true); - UIElement.OpacityMaskProperty = DependencyProperty.RegisterCore("OpacityMask", function () { return Fayde.Media.Brush; }, UIElement); - UIElement.OpacityProperty = DependencyProperty.RegisterCore("Opacity", function () { return Number; }, UIElement, 1.0); - UIElement.RenderTransformProperty = DependencyProperty.RegisterCore("RenderTransform", function () { return Fayde.Media.Transform; }, UIElement); - UIElement.RenderTransformOriginProperty = DependencyProperty.Register("RenderTransformOrigin", function () { return Point; }, UIElement); - UIElement.TagProperty = DependencyProperty.Register("Tag", function () { return Object; }, UIElement); - UIElement.TriggersProperty = DependencyProperty.RegisterCore("Triggers", function () { return Fayde.TriggerCollection; }, UIElement, undefined, function (d, args) { return d._TriggersChanged(args); }); - UIElement.UseLayoutRoundingProperty = Fayde.InheritableOwner.UseLayoutRoundingProperty.ExtendTo(UIElement); - UIElement.VisibilityProperty = DependencyProperty.RegisterCore("Visibility", function () { return new Fayde.Enum(Fayde.Visibility); }, UIElement, Fayde.Visibility.Visible); - return UIElement; - })(Fayde.DependencyObject); - Fayde.UIElement = UIElement; - Fayde.CoreLibrary.add(UIElement); - var reactions; - (function (reactions) { - Fayde.UIReaction(UIElement.ClipProperty, minerva.core.reactTo.clip); - Fayde.UIReaction(UIElement.EffectProperty, minerva.core.reactTo.effect); - Fayde.UIReaction(UIElement.IsHitTestVisibleProperty, minerva.core.reactTo.isHitTestVisible, false); - Fayde.UIReaction(UIElement.OpacityProperty, minerva.core.reactTo.opacity, false); - Fayde.UIReaction(UIElement.RenderTransformProperty, minerva.core.reactTo.renderTransform); - Fayde.UIReaction(UIElement.RenderTransformOriginProperty, minerva.core.reactTo.renderTransformOrigin, false, minerva.Point.copyTo); - Fayde.UIReaction(UIElement.VisibilityProperty, function (upd, ov, nv, uie) { - minerva.core.reactTo.visibility(upd, ov, nv); - Fayde.Surface.RemoveFocusFrom(uie); - }, false); - })(reactions || (reactions = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Providers; - (function (Providers) { - var ResourcesStore = (function (_super) { - __extends(ResourcesStore, _super); - function ResourcesStore() { - _super.apply(this, arguments); - } - ResourcesStore.prototype.GetValue = function (storage) { - if (storage.Local !== undefined) - return storage.Local; - var rd = storage.Local = new Fayde.ResourceDictionary(); - rd.AttachTo(storage.OwnerNode.XObject); - return rd; - }; - ResourcesStore.prototype.GetValuePrecedence = function (storage) { - return Providers.PropertyPrecedence.LocalValue; - }; - ResourcesStore.prototype.SetLocalValue = function (storage, newValue) { - console.warn("Cannot set Resources."); - }; - ResourcesStore.prototype.SetLocalStyleValue = function (storage, newValue) { - }; - ResourcesStore.prototype.SetImplicitStyle = function (storage, newValue) { - }; - ResourcesStore.prototype.ClearValue = function (storage, notifyListeners) { - }; - return ResourcesStore; - })(Providers.PropertyStore); - Providers.ResourcesStore = ResourcesStore; - ResourcesStore.Instance = new ResourcesStore(); - })(Providers = Fayde.Providers || (Fayde.Providers = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Providers; - (function (Providers) { - var ActualSizeStore = (function (_super) { - __extends(ActualSizeStore, _super); - function ActualSizeStore() { - _super.apply(this, arguments); - } - ActualSizeStore.prototype.GetValue = function (storage) { - if (storage.Local !== undefined) - return storage.Local; - return 0.0; - }; - ActualSizeStore.prototype.GetValuePrecedence = function (storage) { return Providers.PropertyPrecedence.LocalValue; }; - ActualSizeStore.prototype.SetLocalValue = function (storage, newValue) { - var oldValue = storage.Local; - storage.Local = newValue; - if (oldValue === newValue) - return; - this.OnPropertyChanged(storage, Providers.PropertyPrecedence.LocalValue, oldValue, newValue); - }; - ActualSizeStore.prototype.SetLocalStyleValue = function (storage, newValue) { }; - ActualSizeStore.prototype.SetImplicitStyle = function (storage, newValue) { }; - ActualSizeStore.prototype.ClearValue = function (storage, notifyListeners) { }; - return ActualSizeStore; - })(Providers.PropertyStore); - Providers.ActualSizeStore = ActualSizeStore; - ActualSizeStore.Instance = new ActualSizeStore(); - })(Providers = Fayde.Providers || (Fayde.Providers = {})); -})(Fayde || (Fayde = {})); -/// -/// -/// -var Fayde; -(function (Fayde) { - var FENode = (function (_super) { - __extends(FENode, _super); - function FENode(xobj) { - var _this = this; - _super.call(this, xobj); - var lu = this.LayoutUpdater; - lu.tree.setTemplateApplier(function () { - var error = new BError(); - var result = _this.ApplyTemplateWithError(error); - if (error.Message) - error.ThrowException(); - return result; - }); - lu.setSizeUpdater({ - setActualWidth: function (value) { - xobj.SetCurrentValue(FrameworkElement.ActualWidthProperty, value); - }, - setActualHeight: function (value) { - xobj.SetCurrentValue(FrameworkElement.ActualHeightProperty, value); - }, - onSizeChanged: function (oldSize, newSize) { - xobj.SizeChanged.raise(xobj, new Fayde.SizeChangedEventArgs(oldSize, newSize)); - } - }); - } - FENode.prototype.SetSubtreeNode = function (subtreeNode, error) { - if (this.SubtreeNode) { - this.SubtreeNode.Detach(); - this.SubtreeNode = null; - } - if (subtreeNode && !subtreeNode.AttachTo(this, error)) - return false; - this.SubtreeNode = subtreeNode; - return true; - }; - FENode.prototype.GetInheritedEnumerator = function () { - return this.GetVisualTreeEnumerator(); - }; - FENode.prototype.GetVisualTreeEnumerator = function () { - var walker = this.LayoutUpdater.tree.walk(); - return { - current: undefined, - moveNext: function () { - if (!walker.step()) - return false; - this.current = walker.current.getAttachedValue("$node"); - return true; - } - }; - }; - FENode.prototype.SetIsLoaded = function (value) { - if (this.IsLoaded === value) - return; - this.IsLoaded = value; - this.OnIsLoadedChanged(value); - }; - FENode.prototype.OnIsLoadedChanged = function (newIsLoaded) { - var xobj = this.XObject; - var res = xobj.Resources; - if (!newIsLoaded) { - Fayde.Providers.ImplicitStyleBroker.Clear(xobj, Fayde.Providers.StyleMask.VisualTree); - xobj.Unloaded.raise(xobj, new Fayde.RoutedEventArgs()); - } - else { - Fayde.Providers.ImplicitStyleBroker.Set(xobj, Fayde.Providers.StyleMask.All); - } - for (var en = this.GetVisualTreeEnumerator(); en.moveNext();) { - en.current.SetIsLoaded(newIsLoaded); - } - if (newIsLoaded) { - xobj.Loaded.raise(xobj, new Fayde.RoutedEventArgs()); - this.InvokeLoaded(); - } - }; - FENode.prototype.InvokeLoaded = function () { }; - FENode.prototype.AttachVisualChild = function (uie, error) { - this.OnVisualChildAttached(uie); - if (!this.SetSubtreeNode(uie.XamlNode, error)) - return false; - uie.XamlNode.SetIsLoaded(this.IsLoaded); - return true; - }; - FENode.prototype.DetachVisualChild = function (uie, error) { - if (!this.SetSubtreeNode(null, error)) - return false; - this.OnVisualChildDetached(uie); - uie.XamlNode.SetIsLoaded(false); - return true; - }; - FENode.prototype.ApplyTemplateWithError = function (error) { - if (this.SubtreeNode) - return false; - var result = this.DoApplyTemplateWithError(error); - var xobj = this.XObject; - if (result) - xobj.OnApplyTemplate(); - xobj.TemplateApplied.raise(xobj, null); - return result; - }; - FENode.prototype.DoApplyTemplateWithError = function (error) { return false; }; - FENode.prototype.FinishApplyTemplateWithError = function (uie, error) { - if (!uie || error.Message) - return false; - this.AttachVisualChild(uie, error); - return error.Message == null; - }; - FENode.prototype.UpdateLayout = function () { - console.warn("FENode.UpdateLayout not implemented"); - }; - FENode.DetachFromVisualParent = function (xobj) { - var vpNode = xobj.XamlNode.VisualParentNode; - if (vpNode instanceof FENode) { - var err = new BError(); - vpNode.DetachVisualChild(xobj, err); - if (err.Message) - err.ThrowException(); - } - }; - return FENode; - })(Fayde.UINode); - Fayde.FENode = FENode; - var FrameworkElement = (function (_super) { - __extends(FrameworkElement, _super); - function FrameworkElement() { - _super.apply(this, arguments); - this.SizeChanged = new Fayde.RoutedEvent(); - this.Loaded = new Fayde.RoutedEvent(); - this.Unloaded = new Fayde.RoutedEvent(); - this.LayoutUpdated = new nullstone.Event(); - this.TemplateApplied = new nullstone.Event(); - this.BindingValidationError = new nullstone.Event(); - } - FrameworkElement.prototype.CreateNode = function () { return new FENode(this); }; - FrameworkElement.prototype.IsInheritable = function (propd) { - if (propd === FrameworkElement.FlowDirectionProperty) - return true; - if (propd === FrameworkElement.LanguageProperty) - return true; - return _super.prototype.IsInheritable.call(this, propd); - }; - FrameworkElement.prototype.OnApplyTemplate = function () { }; - FrameworkElement.prototype.OnBindingValidationError = function (args) { - this.BindingValidationError.raise(this, args); - }; - FrameworkElement.prototype.UpdateLayout = function () { this.XamlNode.UpdateLayout(); }; - FrameworkElement.ActualHeightProperty = DependencyProperty.RegisterReadOnly("ActualHeight", function () { return Number; }, FrameworkElement); - FrameworkElement.ActualWidthProperty = DependencyProperty.RegisterReadOnly("ActualWidth", function () { return Number; }, FrameworkElement); - FrameworkElement.CursorProperty = DependencyProperty.Register("Cursor", function () { return new Fayde.Enum(Fayde.CursorType); }, FrameworkElement, Fayde.CursorType.Default); - FrameworkElement.FlowDirectionProperty = Fayde.InheritableOwner.FlowDirectionProperty.ExtendTo(FrameworkElement); - FrameworkElement.HeightProperty = DependencyProperty.Register("Height", function () { return Length; }, FrameworkElement, NaN); - FrameworkElement.HorizontalAlignmentProperty = DependencyProperty.Register("HorizontalAlignment", function () { return new Fayde.Enum(Fayde.HorizontalAlignment); }, FrameworkElement, Fayde.HorizontalAlignment.Stretch); - FrameworkElement.LanguageProperty = Fayde.InheritableOwner.LanguageProperty.ExtendTo(FrameworkElement); - FrameworkElement.MarginProperty = DependencyProperty.RegisterCore("Margin", function () { return Thickness; }, FrameworkElement); - FrameworkElement.MaxHeightProperty = DependencyProperty.Register("MaxHeight", function () { return Number; }, FrameworkElement, Number.POSITIVE_INFINITY); - FrameworkElement.MaxWidthProperty = DependencyProperty.Register("MaxWidth", function () { return Number; }, FrameworkElement, Number.POSITIVE_INFINITY); - FrameworkElement.MinHeightProperty = DependencyProperty.Register("MinHeight", function () { return Number; }, FrameworkElement, 0.0); - FrameworkElement.MinWidthProperty = DependencyProperty.Register("MinWidth", function () { return Number; }, FrameworkElement, 0.0); - FrameworkElement.StyleProperty = DependencyProperty.Register("Style", function () { return Fayde.Style; }, FrameworkElement, undefined, function (dobj, args) { return Fayde.Providers.LocalStyleBroker.Set(dobj, args.NewValue); }); - FrameworkElement.VerticalAlignmentProperty = DependencyProperty.Register("VerticalAlignment", function () { return new Fayde.Enum(Fayde.VerticalAlignment); }, FrameworkElement, Fayde.VerticalAlignment.Stretch); - FrameworkElement.WidthProperty = DependencyProperty.Register("Width", function () { return Length; }, FrameworkElement, NaN); - FrameworkElement.ResourcesProperty = DependencyProperty.Register("Resources", function () { return Fayde.ResourceDictionary; }, FrameworkElement); - FrameworkElement.DefaultStyleKeyProperty = DependencyProperty.Register("DefaultStyleKey", function () { return Function; }, FrameworkElement); - return FrameworkElement; - })(Fayde.UIElement); - Fayde.FrameworkElement = FrameworkElement; - Fayde.CoreLibrary.add(FrameworkElement); - FrameworkElement.ActualWidthProperty.Store = Fayde.Providers.ActualSizeStore.Instance; - FrameworkElement.ActualHeightProperty.Store = Fayde.Providers.ActualSizeStore.Instance; - FrameworkElement.ResourcesProperty.Store = Fayde.Providers.ResourcesStore.Instance; - var reactions; - (function (reactions) { - Fayde.UIReaction(FrameworkElement.WidthProperty, minerva.core.reactTo.width, false); - Fayde.UIReaction(FrameworkElement.HeightProperty, minerva.core.reactTo.height, false); - Fayde.UIReaction(FrameworkElement.MaxWidthProperty, minerva.core.reactTo.maxWidth, false); - Fayde.UIReaction(FrameworkElement.MaxHeightProperty, minerva.core.reactTo.maxHeight, false); - Fayde.UIReaction(FrameworkElement.MinWidthProperty, minerva.core.reactTo.minWidth, false); - Fayde.UIReaction(FrameworkElement.MinHeightProperty, minerva.core.reactTo.minHeight, false); - Fayde.UIReaction(FrameworkElement.MarginProperty, minerva.core.reactTo.margin, false, minerva.Thickness.copyTo); - Fayde.UIReaction(FrameworkElement.HorizontalAlignmentProperty, minerva.core.reactTo.horizontalAlignment, false); - Fayde.UIReaction(FrameworkElement.VerticalAlignmentProperty, minerva.core.reactTo.verticalAlignment, false); - })(reactions || (reactions = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Markup; - (function (Markup) { - Markup.Content = (function () { - function ca(type, prop) { - nullstone.Annotation(type, "Content", prop, true); - } - ca.Get = function (type) { - var cur = type; - while (cur) { - var anns = nullstone.GetAnnotations(cur, "Content"); - if (anns) { - var cp = anns[0]; - if (cp) - return cp; - } - cur = nullstone.getTypeParent(cur); - } - return undefined; - }; - return ca; - })(); - Markup.TextContent = (function () { - function tca(type, prop) { - nullstone.Annotation(type, "TextContent", prop, true); - } - tca.Get = function (type) { - var cur = type; - while (cur) { - var anns = nullstone.GetAnnotations(cur, "TextContent"); - if (anns) { - var cp = anns[0]; - if (cp) - return cp; - } - cur = nullstone.getTypeParent(cur); - } - return undefined; - }; - return tca; - })(); - })(Markup = Fayde.Markup || (Fayde.Markup = {})); -})(Fayde || (Fayde = {})); -/// -/// -var Fayde; -(function (Fayde) { - var Controls; - (function (Controls) { - var Border = (function (_super) { - __extends(Border, _super); - function Border() { - _super.call(this); - this.DefaultStyleKey = Border; - } - Border.prototype.CreateLayoutUpdater = function () { - return new minerva.controls.border.BorderUpdater(); - }; - Border.BackgroundProperty = DependencyProperty.RegisterCore("Background", function () { return Fayde.Media.Brush; }, Border); - Border.BorderBrushProperty = DependencyProperty.RegisterCore("BorderBrush", function () { return Fayde.Media.Brush; }, Border); - Border.BorderThicknessProperty = DependencyProperty.Register("BorderThickness", function () { return Thickness; }, Border); - Border.ChildProperty = DependencyProperty.Register("Child", function () { return Fayde.UIElement; }, Border); - Border.CornerRadiusProperty = DependencyProperty.Register("CornerRadius", function () { return CornerRadius; }, Border); - Border.PaddingProperty = DependencyProperty.Register("Padding", function () { return Thickness; }, Border); - return Border; - })(Fayde.FrameworkElement); - Controls.Border = Border; - Fayde.CoreLibrary.add(Border); - Fayde.Markup.Content(Border, Border.ChildProperty); - Fayde.UIReaction(Border.BackgroundProperty, function (upd, ov, nv) { - upd.invalidate(); - }); - Fayde.UIReaction(Border.BorderBrushProperty, function (upd, ov, nv) { - upd.invalidate(); - }); - Fayde.UIReaction(Border.BorderThicknessProperty, function (upd, ov, nv) { return upd.invalidateMeasure(); }, false, minerva.Thickness.copyTo); - Fayde.UIReaction(Border.PaddingProperty, function (upd, ov, nv) { return upd.invalidateMeasure(); }, false, minerva.Thickness.copyTo); - Fayde.UIReaction(Border.CornerRadiusProperty, function (upd, ov, nv) { return upd.invalidate(); }, false, minerva.CornerRadius.copyTo); - Fayde.UIReaction(Border.ChildProperty, function (upd, ov, nv, border) { - var node = border.XamlNode; - var error = new BError(); - if (ov instanceof Fayde.UIElement) - node.DetachVisualChild(ov, error); - if (nv instanceof Fayde.UIElement) - node.AttachVisualChild(nv, error); - if (error.Message) - error.ThrowException(); - upd.updateBounds(); - upd.invalidateMeasure(); - }, false, false); - })(Controls = Fayde.Controls || (Fayde.Controls = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Providers; - (function (Providers) { - var IsEnabledStore = (function (_super) { - __extends(IsEnabledStore, _super); - function IsEnabledStore() { - _super.apply(this, arguments); - } - IsEnabledStore.prototype.GetValue = function (storage) { - if (storage.InheritedValue === false) - return false; - return _super.prototype.GetValue.call(this, storage); - }; - IsEnabledStore.prototype.GetValuePrecedence = function (storage) { - if (storage.InheritedValue === false) - return Providers.PropertyPrecedence.IsEnabled; - return _super.prototype.GetValuePrecedence.call(this, storage); - }; - IsEnabledStore.prototype.SetLocalValue = function (storage, newValue) { - var oldValue = storage.Local; - storage.Local = newValue; - if (oldValue === newValue || storage.InheritedValue === false) - return; - this.OnPropertyChanged(storage, Providers.PropertyPrecedence.LocalValue, oldValue, newValue); - }; - IsEnabledStore.prototype.OnPropertyChanged = function (storage, effectivePrecedence, oldValue, newValue) { - var args = _super.prototype.OnPropertyChanged.call(this, storage, effectivePrecedence, oldValue, newValue); - storage.OwnerNode.OnIsEnabledChanged(oldValue, newValue); - return args; - }; - IsEnabledStore.prototype.CreateStorage = function (dobj, propd) { - return { - OwnerNode: dobj.XamlNode, - Property: propd, - Precedence: Providers.PropertyPrecedence.DefaultValue, - InheritedValue: true, - Animations: undefined, - Local: undefined, - LocalStyleValue: undefined, - ImplicitStyleValue: undefined, - PropListeners: undefined, - }; - }; - IsEnabledStore.prototype.EmitInheritedChanged = function (storage, newInherited) { - var oldInherited = storage.InheritedValue; - if (newInherited !== false) { - storage.Precedence = _super.prototype.GetValuePrecedence.call(this, storage); - storage.InheritedValue = true; - } - else { - storage.InheritedValue = false; - } - if (oldInherited === newInherited) - return; - this.OnPropertyChanged(storage, Providers.PropertyPrecedence.IsEnabled, oldInherited, newInherited); - }; - IsEnabledStore.EmitInheritedChanged = function (cn, value) { - var propd = Fayde.Controls.Control.IsEnabledProperty; - var storage = Providers.GetStorage(cn.XObject, propd); - propd.Store.EmitInheritedChanged(storage, value); - }; - return IsEnabledStore; - })(Providers.PropertyStore); - Providers.IsEnabledStore = IsEnabledStore; - IsEnabledStore.Instance = new IsEnabledStore(); - })(Providers = Fayde.Providers || (Fayde.Providers = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Input; - (function (Input) { - (function (KeyboardNavigationMode) { - KeyboardNavigationMode[KeyboardNavigationMode["Continue"] = 0] = "Continue"; - KeyboardNavigationMode[KeyboardNavigationMode["Once"] = 1] = "Once"; - KeyboardNavigationMode[KeyboardNavigationMode["Cycle"] = 2] = "Cycle"; - KeyboardNavigationMode[KeyboardNavigationMode["None"] = 3] = "None"; - KeyboardNavigationMode[KeyboardNavigationMode["Contained"] = 4] = "Contained"; - KeyboardNavigationMode[KeyboardNavigationMode["Local"] = 5] = "Local"; - })(Input.KeyboardNavigationMode || (Input.KeyboardNavigationMode = {})); - var KeyboardNavigationMode = Input.KeyboardNavigationMode; - Fayde.CoreLibrary.addEnum(KeyboardNavigationMode, "KeyboardNavigationMode"); - (function (ModifierKeys) { - ModifierKeys[ModifierKeys["None"] = 0] = "None"; - ModifierKeys[ModifierKeys["Alt"] = 1] = "Alt"; - ModifierKeys[ModifierKeys["Control"] = 2] = "Control"; - ModifierKeys[ModifierKeys["Shift"] = 4] = "Shift"; - ModifierKeys[ModifierKeys["Windows"] = 8] = "Windows"; - ModifierKeys[ModifierKeys["Apple"] = 16] = "Apple"; - })(Input.ModifierKeys || (Input.ModifierKeys = {})); - var ModifierKeys = Input.ModifierKeys; - var Keyboard = (function () { - function Keyboard() { - } - Keyboard.RefreshModifiers = function (e) { - if (e.Shift) - Keyboard.Modifiers |= ModifierKeys.Shift; - else - Keyboard.Modifiers &= ~ModifierKeys.Shift; - if (e.Ctrl) - Keyboard.Modifiers |= ModifierKeys.Control; - else - Keyboard.Modifiers &= ~ModifierKeys.Control; - if (e.Alt) - Keyboard.Modifiers |= ModifierKeys.Alt; - else - Keyboard.Modifiers &= ~ModifierKeys.Alt; - }; - Keyboard.HasControl = function () { - return (Keyboard.Modifiers & ModifierKeys.Control) === ModifierKeys.Control; - }; - Keyboard.HasAlt = function () { - return (Keyboard.Modifiers & ModifierKeys.Alt) === ModifierKeys.Alt; - }; - Keyboard.HasShift = function () { - return (Keyboard.Modifiers & ModifierKeys.Shift) === ModifierKeys.Shift; - }; - Keyboard.Modifiers = ModifierKeys.None; - return Keyboard; - })(); - Input.Keyboard = Keyboard; - Fayde.CoreLibrary.add(Keyboard); - })(Input = Fayde.Input || (Fayde.Input = {})); -})(Fayde || (Fayde = {})); -/// -/// -/// -var Fayde; -(function (Fayde) { - var Controls; - (function (Controls) { - var ControlNode = (function (_super) { - __extends(ControlNode, _super); - function ControlNode(xobj) { - _super.call(this, xobj); - this.IsFocused = false; - } - ControlNode.prototype.TabTo = function () { - var xobj = this.XObject; - return xobj.IsEnabled && xobj.IsTabStop && this.Focus(); - }; - ControlNode.prototype.ApplyTemplateWithError = function (error) { - if (!_super.prototype.ApplyTemplateWithError.call(this, error)) - return false; - this.XObject.UpdateValidationState(); - return true; - }; - ControlNode.prototype.DoApplyTemplateWithError = function (error) { - var xobj = this.XObject; - var t = xobj.Template; - var root; - if (t) - root = t.GetVisualTree(xobj); - if (!root && !(root = this.GetDefaultVisualTree())) - return false; - if (this.TemplateRoot && this.TemplateRoot !== root) - this.DetachVisualChild(this.TemplateRoot, error); - this.TemplateRoot = root; - if (this.TemplateRoot) - this.AttachVisualChild(this.TemplateRoot, error); - if (error.Message) - return false; - return true; - }; - ControlNode.prototype.GetDefaultVisualTree = function () { return undefined; }; - ControlNode.prototype.OnIsAttachedChanged = function (newIsAttached) { - _super.prototype.OnIsAttachedChanged.call(this, newIsAttached); - if (!newIsAttached) - Fayde.Media.VSM.VisualStateManager.Deactivate(this.XObject, this.TemplateRoot); - else - Fayde.Media.VSM.VisualStateManager.Activate(this.XObject, this.TemplateRoot); - }; - ControlNode.prototype.OnParentChanged = function (oldParentNode, newParentNode) { - _super.prototype.OnParentChanged.call(this, oldParentNode, newParentNode); - this.IsEnabled = newParentNode ? newParentNode.IsEnabled : true; - }; - ControlNode.prototype.OnTemplateChanged = function (oldTemplate, newTemplate) { - var subtree = this.SubtreeNode; - if (subtree) { - var error = new BError(); - if (!this.DetachVisualChild(subtree.XObject, error)) - error.ThrowException(); - } - this.LayoutUpdater.invalidateMeasure(); - }; - Object.defineProperty(ControlNode.prototype, "IsEnabled", { - get: function () { return this.XObject.IsEnabled; }, - set: function (value) { - Fayde.Providers.IsEnabledStore.EmitInheritedChanged(this, value); - this.OnIsEnabledChanged(undefined, value); - }, - enumerable: true, - configurable: true - }); - ControlNode.prototype.OnIsEnabledChanged = function (oldValue, newValue) { - if (!newValue) { - this.IsMouseOver = false; - if (Fayde.Surface.RemoveFocusFrom(this.XObject)) { - Fayde.TabNavigationWalker.Focus(this, true); - } - this.ReleaseMouseCapture(); - } - _super.prototype.OnIsEnabledChanged.call(this, oldValue, newValue); - }; - ControlNode.prototype.Focus = function (recurse) { - return Fayde.Surface.Focus(this.XObject, recurse); - }; - ControlNode.prototype.CanCaptureMouse = function () { return this.XObject.IsEnabled; }; - return ControlNode; - })(Fayde.FENode); - Controls.ControlNode = ControlNode; - var Control = (function (_super) { - __extends(Control, _super); - function Control() { - _super.call(this); - this.IsEnabledChanged = new nullstone.Event(); - Fayde.UIReaction(Control.IsEnabledProperty, function (upd, nv, ov, control) { - var args = { - Property: Control.IsEnabledProperty, - OldValue: ov, - NewValue: nv - }; - control.OnIsEnabledChanged(args); - if (nv !== true) - control.XamlNode.IsMouseOver = false; - control.UpdateVisualState(); - control.IsEnabledChanged.raiseAsync(control, args); - }, false, true, this); - Fayde.UIReaction(Control.PaddingProperty, function (upd, nv, ov) { return upd.invalidateMeasure(); }, false, true, this); - Fayde.UIReaction(Control.BorderThicknessProperty, function (upd, nv, ov) { return upd.invalidateMeasure(); }, false, true, this); - Fayde.UIReaction(Control.HorizontalContentAlignmentProperty, function (upd, nv, ov) { return upd.invalidateArrange(); }, false, true, this); - Fayde.UIReaction(Control.VerticalContentAlignmentProperty, function (upd, nv, ov) { return upd.invalidateArrange(); }, false, true, this); - } - Control.prototype.CreateNode = function () { return new ControlNode(this); }; - Control.prototype.CreateLayoutUpdater = function () { return new minerva.controls.control.ControlUpdater(); }; - Control.prototype.IsInheritable = function (propd) { - if (ControlInheritedProperties.indexOf(propd) > -1) - return true; - return _super.prototype.IsInheritable.call(this, propd); - }; - Object.defineProperty(Control.prototype, "IsFocused", { - get: function () { return this.XamlNode.IsFocused; }, - enumerable: true, - configurable: true - }); - Control.prototype.GetTemplateChild = function (childName, type) { - var root = this.XamlNode.TemplateRoot; - if (!root) - return; - var n = root.XamlNode.FindName(childName); - if (!n) - return; - var xobj = n.XObject; - if (!type || (xobj instanceof type)) - return xobj; - }; - Control.prototype.ApplyTemplate = function () { - var error = new BError(); - var result = this.XamlNode.ApplyTemplateWithError(error); - if (error.Message) - error.ThrowException(); - return result; - }; - Control.prototype.GetDefaultStyle = function () { - return undefined; - }; - Control.prototype.OnIsEnabledChanged = function (e) { }; - Control.prototype.OnGotFocus = function (e) { - this.XamlNode.IsFocused = true; - this.UpdateValidationState(); - }; - Control.prototype.OnLostFocus = function (e) { - this.XamlNode.IsFocused = false; - this.UpdateValidationState(); - }; - Control.prototype.UpdateVisualState = function (useTransitions) { - var _this = this; - useTransitions = useTransitions !== false; - var gotoFunc = function (state) { return Fayde.Media.VSM.VisualStateManager.GoToState(_this, state, useTransitions); }; - this.GoToStates(gotoFunc); - }; - Control.prototype.GoToStates = function (gotoFunc) { - this.GoToStateCommon(gotoFunc); - this.GoToStateFocus(gotoFunc); - this.GoToStateSelection(gotoFunc); - }; - Control.prototype.GoToStateCommon = function (gotoFunc) { - if (!this.IsEnabled) - return gotoFunc("Disabled"); - if (this.IsMouseOver) - return gotoFunc("MouseOver"); - return gotoFunc("Normal"); - }; - Control.prototype.GoToStateFocus = function (gotoFunc) { - if (this.IsFocused && this.IsEnabled) - return gotoFunc("Focused"); - return gotoFunc("Unfocused"); - }; - Control.prototype.GoToStateSelection = function (gotoFunc) { - return false; - }; - Control.prototype.UpdateValidationState = function (valid) { - var _this = this; - if (valid === undefined) { - var errors = Fayde.Validation.GetErrors(this); - valid = errors.Count < 1; - } - var gotoFunc = function (state) { return Fayde.Media.VSM.VisualStateManager.GoToState(_this, state, true); }; - this.GoToStateValidation(valid, gotoFunc); - }; - Control.prototype.GoToStateValidation = function (valid, gotoFunc) { - if (valid) - return gotoFunc("Valid"); - else if (this.IsFocused) - return gotoFunc("InvalidFocused"); - return gotoFunc("InvalidUnfocused"); - }; - Control.BackgroundProperty = DependencyProperty.RegisterCore("Background", function () { return Fayde.Media.Brush; }, Control); - Control.BorderBrushProperty = DependencyProperty.RegisterCore("BorderBrush", function () { return Fayde.Media.Brush; }, Control); - Control.BorderThicknessProperty = DependencyProperty.RegisterCore("BorderThickness", function () { return Thickness; }, Control); - Control.FontFamilyProperty = Fayde.InheritableOwner.FontFamilyProperty.ExtendTo(Control); - Control.FontSizeProperty = Fayde.InheritableOwner.FontSizeProperty.ExtendTo(Control); - Control.FontStretchProperty = Fayde.InheritableOwner.FontStretchProperty.ExtendTo(Control); - Control.FontStyleProperty = Fayde.InheritableOwner.FontStyleProperty.ExtendTo(Control); - Control.FontWeightProperty = Fayde.InheritableOwner.FontWeightProperty.ExtendTo(Control); - Control.ForegroundProperty = Fayde.InheritableOwner.ForegroundProperty.ExtendTo(Control); - Control.HorizontalContentAlignmentProperty = DependencyProperty.Register("HorizontalContentAlignment", function () { return new Fayde.Enum(Fayde.HorizontalAlignment); }, Control, Fayde.HorizontalAlignment.Center); - Control.IsEnabledProperty = DependencyProperty.Register("IsEnabled", function () { return Boolean; }, Control, true); - Control.IsTabStopProperty = DependencyProperty.Register("IsTabStop", function () { return Boolean; }, Control, true); - Control.PaddingProperty = DependencyProperty.RegisterCore("Padding", function () { return Thickness; }, Control); - Control.TabIndexProperty = DependencyProperty.Register("TabIndex", function () { return Number; }, Control); - Control.TabNavigationProperty = DependencyProperty.Register("TabNavigation", function () { return new Fayde.Enum(Fayde.Input.KeyboardNavigationMode); }, Control, Fayde.Input.KeyboardNavigationMode.Local); - Control.TemplateProperty = DependencyProperty.Register("Template", function () { return Controls.ControlTemplate; }, Control, undefined, function (d, args) { return d.XamlNode.OnTemplateChanged(args.OldValue, args.NewValue); }); - Control.VerticalContentAlignmentProperty = DependencyProperty.Register("VerticalContentAlignment", function () { return new Fayde.Enum(Fayde.VerticalAlignment); }, Control, Fayde.VerticalAlignment.Center); - return Control; - })(Fayde.FrameworkElement); - Controls.Control = Control; - Fayde.CoreLibrary.add(Control); - Control.IsEnabledProperty.Store = Fayde.Providers.IsEnabledStore.Instance; - var ControlInheritedProperties = [ - Control.FontFamilyProperty, - Control.FontSizeProperty, - Control.FontStretchProperty, - Control.FontStyleProperty, - Control.FontWeightProperty, - Control.ForegroundProperty - ]; - Controls.TemplateVisualStates = nullstone.CreateTypedAnnotation("TemplateVisualState"); - Controls.TemplateParts = nullstone.CreateTypedAnnotation("TemplatePart"); - })(Controls = Fayde.Controls || (Fayde.Controls = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Controls; - (function (Controls) { - var ContentControlNode = (function (_super) { - __extends(ContentControlNode, _super); - function ContentControlNode(xobj) { - _super.call(this, xobj); - this._DefaultPresenter = null; - } - ContentControlNode.prototype.GetDefaultVisualTree = function () { - var xobj = this.XObject; - var content = xobj.Content; - if (content instanceof Fayde.UIElement) - return content; - var presenter = this._DefaultPresenter; - if (!presenter) { - presenter = this._DefaultPresenter = new Controls.ContentPresenter(); - presenter.TemplateOwner = this.XObject; - } - presenter.SetValue(Controls.ContentPresenter.ContentProperty, new Fayde.TemplateBindingExpression("Content")); - presenter.SetValue(Controls.ContentPresenter.ContentTemplateProperty, new Fayde.TemplateBindingExpression("ContentTemplate")); - return presenter; - }; - ContentControlNode.prototype.OnContentChanged = function (o, n) { - if (o instanceof Fayde.UIElement || n instanceof Fayde.UIElement) - this.CleanOldContent(o); - }; - ContentControlNode.prototype.OnTemplateChanged = function (oldTemplate, newTemplate) { - if (oldTemplate) - this.CleanOldContent(this.XObject.Content); - _super.prototype.OnTemplateChanged.call(this, oldTemplate, newTemplate); - }; - ContentControlNode.prototype.CleanOldContent = function (content) { - if (content instanceof Fayde.UIElement) { - Fayde.FENode.DetachFromVisualParent(content); - this.LayoutUpdater.invalidateMeasure(); - } - else { - var presenter = this._DefaultPresenter; - if (presenter) { - presenter.ClearValue(Controls.ContentPresenter.ContentProperty); - presenter.ClearValue(Controls.ContentPresenter.ContentTemplateProperty); - Fayde.FENode.DetachFromVisualParent(presenter); - this.LayoutUpdater.invalidateMeasure(); - } - } - }; - return ContentControlNode; - })(Controls.ControlNode); - Controls.ContentControlNode = ContentControlNode; - var ContentControl = (function (_super) { - __extends(ContentControl, _super); - function ContentControl() { - _super.call(this); - this.DefaultStyleKey = ContentControl; - } - ContentControl.prototype.CreateNode = function () { - return new ContentControlNode(this); - }; - ContentControl.prototype.OnContentPropertyChanged = function (args) { - this.XamlNode.OnContentChanged(args.OldValue, args.NewValue); - this.OnContentChanged(args.OldValue, args.NewValue); - }; - ContentControl.prototype.OnContentUriPropertyChanged = function (args) { - var _this = this; - var oldUri; - if (args.OldValue instanceof Fayde.Uri) { - this.Content = undefined; - oldUri = args.OldValue; - } - var newUri; - if (args.NewValue instanceof Fayde.Uri) { - newUri = args.NewValue; - Fayde.Markup.Resolve(newUri) - .then(function (m) { return _this._OnLoadedUri(m); }, function (err) { return _this._OnErroredUri(err, newUri); }); - } - this.OnContentUriChanged(oldUri, newUri); - }; - ContentControl.prototype.OnContentChanged = function (oldContent, newContent) { - }; - ContentControl.prototype.OnContentTemplateChanged = function (oldContentTemplate, newContentTemplate) { - }; - ContentControl.prototype.OnContentUriChanged = function (oldSourceUri, newSourceUri) { - }; - ContentControl.prototype._OnLoadedUri = function (xm) { - this.Content = Fayde.Markup.Load(this.App, xm); - }; - ContentControl.prototype._OnErroredUri = function (err, src) { - console.warn("Error resolving XamlResource: '" + src.toString() + "'."); - }; - ContentControl.ContentProperty = DependencyProperty.Register("Content", function () { return Object; }, ContentControl, undefined, function (d, args) { return d.OnContentPropertyChanged(args); }); - ContentControl.ContentTemplateProperty = DependencyProperty.Register("ContentTemplate", function () { return Fayde.DataTemplate; }, ContentControl, undefined, function (d, args) { return d.OnContentTemplateChanged(args.OldValue, args.NewValue); }); - ContentControl.ContentUriProperty = DependencyProperty.Register("ContentUri", function () { return Fayde.Uri; }, ContentControl, undefined, function (d, args) { return d.OnContentUriPropertyChanged(args); }); - return ContentControl; - })(Controls.Control); - Controls.ContentControl = ContentControl; - Fayde.CoreLibrary.add(ContentControl); - Fayde.Markup.Content(ContentControl, ContentControl.ContentProperty); - })(Controls = Fayde.Controls || (Fayde.Controls = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Controls; - (function (Controls) { - (function (TextWrapping) { - TextWrapping[TextWrapping["NoWrap"] = 0] = "NoWrap"; - TextWrapping[TextWrapping["Wrap"] = 1] = "Wrap"; - TextWrapping[TextWrapping["WrapWithOverflow"] = 2] = "WrapWithOverflow"; - })(Controls.TextWrapping || (Controls.TextWrapping = {})); - var TextWrapping = Controls.TextWrapping; - Fayde.CoreLibrary.addEnum(TextWrapping, "TextWrapping"); - (function (ScrollBarVisibility) { - ScrollBarVisibility[ScrollBarVisibility["Disabled"] = 0] = "Disabled"; - ScrollBarVisibility[ScrollBarVisibility["Auto"] = 1] = "Auto"; - ScrollBarVisibility[ScrollBarVisibility["Hidden"] = 2] = "Hidden"; - ScrollBarVisibility[ScrollBarVisibility["Visible"] = 3] = "Visible"; - })(Controls.ScrollBarVisibility || (Controls.ScrollBarVisibility = {})); - var ScrollBarVisibility = Controls.ScrollBarVisibility; - Fayde.CoreLibrary.addEnum(ScrollBarVisibility, "ScrollBarVisibility"); - (function (TextTrimming) { - TextTrimming[TextTrimming["None"] = 0] = "None"; - TextTrimming[TextTrimming["WordEllipsis"] = 1] = "WordEllipsis"; - TextTrimming[TextTrimming["CharacterEllipsis"] = 2] = "CharacterEllipsis"; - })(Controls.TextTrimming || (Controls.TextTrimming = {})); - var TextTrimming = Controls.TextTrimming; - Fayde.CoreLibrary.addEnum(TextTrimming, "TextTrimming"); - (function (ClickMode) { - ClickMode[ClickMode["Release"] = 0] = "Release"; - ClickMode[ClickMode["Press"] = 1] = "Press"; - ClickMode[ClickMode["Hover"] = 2] = "Hover"; - })(Controls.ClickMode || (Controls.ClickMode = {})); - var ClickMode = Controls.ClickMode; - Fayde.CoreLibrary.addEnum(ClickMode, "ClickMode"); - (function (PlacementMode) { - PlacementMode[PlacementMode["Bottom"] = 0] = "Bottom"; - PlacementMode[PlacementMode["Right"] = 1] = "Right"; - PlacementMode[PlacementMode["Mouse"] = 2] = "Mouse"; - PlacementMode[PlacementMode["Left"] = 3] = "Left"; - PlacementMode[PlacementMode["Top"] = 4] = "Top"; - })(Controls.PlacementMode || (Controls.PlacementMode = {})); - var PlacementMode = Controls.PlacementMode; - Fayde.CoreLibrary.addEnum(PlacementMode, "PlacementMode"); - (function (SelectionMode) { - SelectionMode[SelectionMode["Single"] = 0] = "Single"; - SelectionMode[SelectionMode["Multiple"] = 1] = "Multiple"; - SelectionMode[SelectionMode["Extended"] = 2] = "Extended"; - })(Controls.SelectionMode || (Controls.SelectionMode = {})); - var SelectionMode = Controls.SelectionMode; - Fayde.CoreLibrary.addEnum(SelectionMode, "SelectionMode"); - (function (MediaElementState) { - MediaElementState[MediaElementState["Closed"] = 0] = "Closed"; - MediaElementState[MediaElementState["Opening"] = 1] = "Opening"; - MediaElementState[MediaElementState["Buffering"] = 4] = "Buffering"; - MediaElementState[MediaElementState["Playing"] = 5] = "Playing"; - MediaElementState[MediaElementState["Paused"] = 6] = "Paused"; - MediaElementState[MediaElementState["Stopped"] = 7] = "Stopped"; - })(Controls.MediaElementState || (Controls.MediaElementState = {})); - var MediaElementState = Controls.MediaElementState; - Fayde.CoreLibrary.addEnum(MediaElementState, "MediaElementState"); - (function (SelectionOnFocus) { - SelectionOnFocus[SelectionOnFocus["Unchanged"] = 0] = "Unchanged"; - SelectionOnFocus[SelectionOnFocus["SelectAll"] = 1] = "SelectAll"; - SelectionOnFocus[SelectionOnFocus["CaretToBeginning"] = 2] = "CaretToBeginning"; - SelectionOnFocus[SelectionOnFocus["CaretToEnd"] = 3] = "CaretToEnd"; - SelectionOnFocus[SelectionOnFocus["Default"] = 4] = "Default"; - SelectionOnFocus[SelectionOnFocus["DefaultSelectAll"] = 5] = "DefaultSelectAll"; - })(Controls.SelectionOnFocus || (Controls.SelectionOnFocus = {})); - var SelectionOnFocus = Controls.SelectionOnFocus; - Fayde.CoreLibrary.addEnum(SelectionOnFocus, "SelectionOnFocus"); - })(Controls = Fayde.Controls || (Fayde.Controls = {})); -})(Fayde || (Fayde = {})); -/// -/// -var Fayde; -(function (Fayde) { - var Controls; - (function (Controls) { - var Primitives; - (function (Primitives) { - var ButtonBase = (function (_super) { - __extends(ButtonBase, _super); - function ButtonBase() { - _super.call(this); - this.Click = new Fayde.RoutedEvent(); - this._IsMouseCaptured = false; - this._IsMouseLeftButtonDown = false; - this._IsSpaceKeyDown = false; - this._MousePosition = new Point(); - this._SuspendStateChanges = false; - this.IsTabStop = true; - } - ButtonBase.prototype.OnIsPressedChanged = function (args) { - this.UpdateVisualState(); - }; - ButtonBase.prototype.OnIsEnabledChanged = function (e) { - var _this = this; - if (!!e.NewValue) - return; - this._DoWithSuspend(function () { - _this.SetCurrentValue(ButtonBase.IsFocusedProperty, false); - _this.SetCurrentValue(ButtonBase.IsPressedProperty, false); - _this._IsMouseCaptured = false; - _this._IsSpaceKeyDown = false; - _this._IsMouseLeftButtonDown = false; - }); - }; - ButtonBase.prototype.OnMouseEnter = function (e) { - var _this = this; - _super.prototype.OnMouseEnter.call(this, e); - this.UpdateVisualState(); - if (this.ClickMode !== Controls.ClickMode.Hover || !this.IsEnabled) - return; - this._DoWithSuspend(function () { - _this.SetCurrentValue(ButtonBase.IsPressedProperty, true); - _this.OnClick(); - }); - }; - ButtonBase.prototype.OnMouseLeave = function (e) { - var _this = this; - _super.prototype.OnMouseLeave.call(this, e); - this.UpdateVisualState(); - if (this.ClickMode !== Controls.ClickMode.Hover || !this.IsEnabled) - return; - this._DoWithSuspend(function () { - _this.SetCurrentValue(ButtonBase.IsPressedProperty, false); - }); - }; - ButtonBase.prototype.OnMouseMove = function (e) { - _super.prototype.OnMouseMove.call(this, e); - this._MousePosition = e.GetPosition(this); - if (this._IsMouseLeftButtonDown && this.IsEnabled && this.ClickMode !== Controls.ClickMode.Hover && this._IsMouseCaptured && !this._IsSpaceKeyDown) { - this.SetCurrentValue(ButtonBase.IsPressedProperty, this._IsValidPosition(this._MousePosition)); - } - }; - ButtonBase.prototype.OnMouseLeftButtonDown = function (e) { - var _this = this; - _super.prototype.OnMouseLeftButtonDown.call(this, e); - this._IsMouseLeftButtonDown = true; - if (!this.IsEnabled) - return; - var clickMode = this.ClickMode; - if (clickMode === Controls.ClickMode.Hover) - return; - e.Handled = true; - this._DoWithSuspend(function () { - _this.Focus(); - _this._CaptureMouseInternal(); - if (_this._IsMouseCaptured) - _this.SetCurrentValue(ButtonBase.IsPressedProperty, true); - }); - if (clickMode === Controls.ClickMode.Press) - this.OnClick(); - }; - ButtonBase.prototype.OnMouseLeftButtonUp = function (e) { - _super.prototype.OnMouseLeftButtonDown.call(this, e); - this._IsMouseLeftButtonDown = false; - if (!this.IsEnabled) - return; - var clickMode = this.ClickMode; - if (clickMode === Controls.ClickMode.Hover) - return; - e.Handled = true; - if (!this._IsSpaceKeyDown && this.IsPressed && clickMode === Controls.ClickMode.Release) - this.OnClick(); - if (!this._IsSpaceKeyDown) { - this._ReleaseMouseCaptureInternal(); - this.SetCurrentValue(ButtonBase.IsPressedProperty, false); - } - }; - ButtonBase.prototype.OnGotFocus = function (e) { - _super.prototype.OnGotFocus.call(this, e); - this.SetCurrentValue(ButtonBase.IsFocusedProperty, true); - this.UpdateVisualState(); - }; - ButtonBase.prototype.OnLostFocus = function (e) { - var _this = this; - _super.prototype.OnLostFocus.call(this, e); - this.SetCurrentValue(ButtonBase.IsFocusedProperty, false); - if (this.ClickMode === Controls.ClickMode.Hover) - return; - this._DoWithSuspend(function () { - _this.SetCurrentValue(ButtonBase.IsPressedProperty, false); - _this._ReleaseMouseCaptureInternal(); - _this._IsSpaceKeyDown = false; - }); - }; - ButtonBase.prototype.OnTouchMove = function (e) { - _super.prototype.OnTouchMove.call(this, e); - if (!this.IsEnabled || e.Device.Captured !== this) - return; - var tp = e.GetTouchPoint(this); - this.SetCurrentValue(ButtonBase.IsPressedProperty, this._IsValidPosition(tp.Position)); - }; - ButtonBase.prototype.OnTouchDown = function (e) { - var _this = this; - _super.prototype.OnTouchDown.call(this, e); - if (!this.IsEnabled) - return; - e.Handled = true; - this._DoWithSuspend(function () { - _this.Focus(); - if (e.Device.Capture(_this)) - _this.SetCurrentValue(ButtonBase.IsPressedProperty, true); - }); - if (this.ClickMode === Controls.ClickMode.Press) - this.OnClick(); - }; - ButtonBase.prototype.OnTouchUp = function (e) { - _super.prototype.OnTouchUp.call(this, e); - if (!this.IsEnabled) - return; - e.Handled = true; - if (this.IsPressed && this.ClickMode === Controls.ClickMode.Release) - this.OnClick(); - e.Device.ReleaseCapture(this); - this.SetCurrentValue(ButtonBase.IsPressedProperty, false); - }; - ButtonBase.prototype.OnClick = function () { - var cmd = this.Command; - var par = this.CommandParameter; - if (cmd != null) { - var canf = cmd.CanExecute; - if ((canf == null || typeof canf !== "function" || canf(par)) && (cmd.Execute && typeof cmd.Execute === "function")) - cmd.Execute(par); - } - this.Click.raise(this, new Fayde.RoutedEventArgs()); - }; - ButtonBase.prototype._DoWithSuspend = function (action) { - this._SuspendStateChanges = true; - try { - action(); - } - finally { - this._SuspendStateChanges = false; - this.UpdateVisualState(); - } - }; - ButtonBase.prototype.UpdateVisualState = function (useTransitions) { - if (this._SuspendStateChanges) - return; - _super.prototype.UpdateVisualState.call(this, useTransitions); - }; - ButtonBase.prototype.GoToStateCommon = function (gotoFunc) { - if (!this.IsEnabled) - return gotoFunc("Disabled"); - if (this.IsPressed) - return gotoFunc("Pressed"); - if (this.IsMouseOver) - return gotoFunc("MouseOver"); - return gotoFunc("Normal"); - }; - ButtonBase.prototype._CaptureMouseInternal = function () { - if (!this._IsMouseCaptured) - this._IsMouseCaptured = this.CaptureMouse(); - }; - ButtonBase.prototype._ReleaseMouseCaptureInternal = function () { - this.ReleaseMouseCapture(); - this._IsMouseCaptured = false; - }; - ButtonBase.prototype._IsValidPosition = function (pos) { - return pos.x >= 0.0 && pos.x <= this.ActualWidth - && pos.y >= 0.0 && pos.y <= this.ActualHeight; - }; - ButtonBase.prototype.OnCommandChanged = function (args) { - var cmd = Fayde.Input.ICommand_.as(args.OldValue); - if (cmd) - cmd.CanExecuteChanged.off(this.OnCommandCanExecuteChanged, this); - cmd = Fayde.Input.ICommand_.as(args.NewValue); - if (cmd) { - cmd.CanExecuteChanged.on(this.OnCommandCanExecuteChanged, this); - this.IsEnabled = cmd.CanExecute(this.CommandParameter); - } - }; - ButtonBase.prototype.OnCommandCanExecuteChanged = function (sender, e) { - this.IsEnabled = this.Command.CanExecute(this.CommandParameter); - }; - ButtonBase.prototype.OnCommandParameterChanged = function (args) { - var cmd = this.Command; - if (cmd) - this.IsEnabled = cmd.CanExecute(args.NewValue); - }; - ButtonBase.ClickModeProperty = DependencyProperty.Register("ClickMode", function () { return new Fayde.Enum(Controls.ClickMode); }, ButtonBase, Controls.ClickMode.Release); - ButtonBase.IsPressedProperty = DependencyProperty.RegisterReadOnly("IsPressed", function () { return Boolean; }, ButtonBase, false, function (d, args) { return d.OnIsPressedChanged(args); }); - ButtonBase.IsFocusedProperty = DependencyProperty.RegisterReadOnly("IsFocused", function () { return Boolean; }, ButtonBase, false); - ButtonBase.CommandProperty = DependencyProperty.RegisterCore("Command", function () { return Fayde.Input.ICommand_; }, ButtonBase, undefined, function (d, args) { return d.OnCommandChanged(args); }); - ButtonBase.CommandParameterProperty = DependencyProperty.RegisterCore("CommandParameter", function () { return Object; }, ButtonBase, undefined, function (d, args) { return d.OnCommandParameterChanged(args); }); - return ButtonBase; - })(Controls.ContentControl); - Primitives.ButtonBase = ButtonBase; - Fayde.CoreLibrary.add(ButtonBase); - })(Primitives = Controls.Primitives || (Controls.Primitives = {})); - })(Controls = Fayde.Controls || (Fayde.Controls = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Controls; - (function (Controls) { - var Button = (function (_super) { - __extends(Button, _super); - function Button() { - _super.call(this); - this.DefaultStyleKey = Button; - } - Button.prototype.OnApplyTemplate = function () { - _super.prototype.OnApplyTemplate.call(this); - this.UpdateVisualState(false); - }; - Button.prototype.OnIsEnabledChanged = function (e) { - _super.prototype.OnIsEnabledChanged.call(this, e); - this.IsTabStop = e.NewValue; - }; - return Button; - })(Controls.Primitives.ButtonBase); - Controls.Button = Button; - Fayde.CoreLibrary.add(Button); - Controls.TemplateVisualStates(Button, { GroupName: "CommonStates", Name: "Normal" }, { GroupName: "CommonStates", Name: "MouseOver" }, { GroupName: "CommonStates", Name: "Pressed" }, { GroupName: "CommonStates", Name: "Disabled" }, { GroupName: "FocusStates", Name: "Unfocused" }, { GroupName: "FocusStates", Name: "Focused" }); - })(Controls = Fayde.Controls || (Fayde.Controls = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var XamlObjectCollection = (function (_super) { - __extends(XamlObjectCollection, _super); - function XamlObjectCollection() { - _super.apply(this, arguments); - this._ht = []; - } - XamlObjectCollection.prototype.AttachTo = function (xobj) { - var error = new BError(); - if (!this.XamlNode.AttachTo(xobj.XamlNode, error)) - error.ThrowException(); - }; - Object.defineProperty(XamlObjectCollection.prototype, "Count", { - get: function () { - return this._ht.length; - }, - enumerable: true, - configurable: true - }); - XamlObjectCollection.prototype.GetRange = function (startIndex, endIndex) { - return this._ht.slice(startIndex, endIndex); - }; - XamlObjectCollection.prototype.GetValueAt = function (index) { - return this._ht[index]; - }; - XamlObjectCollection.prototype.SetValueAt = function (index, value) { - if (!this.CanAdd(value)) - return false; - if (index < 0 || index >= this._ht.length) - return false; - var removed = this._ht[index]; - var added = value; - var error = new BError(); - if (this.AddingToCollection(added, error)) { - this._ht[index] = added; - this.RemovedFromCollection(removed, true); - this._RaiseItemReplaced(removed, added, index); - return true; - } - return false; - }; - XamlObjectCollection.prototype.Add = function (value) { - var rv = this.Insert(this._ht.length, value); - return rv ? this._ht.length - 1 : -1; - }; - XamlObjectCollection.prototype.Insert = function (index, value) { - if (!this.CanAdd(value)) - return false; - if (index < 0) - return false; - var count = this._ht.length; - if (index > count) - index = count; - var error = new BError(); - if (this.AddingToCollection(value, error)) { - this._ht.splice(index, 0, value); - this._RaiseItemAdded(value, index); - return true; - } - if (error.Message) - throw new Exception(error.Message); - return false; - }; - XamlObjectCollection.prototype.Remove = function (value) { - var index = this.IndexOf(value); - if (index === -1) - return false; - return this.RemoveAt(index); - }; - XamlObjectCollection.prototype.RemoveAt = function (index) { - if (index < 0 || index >= this._ht.length) - return false; - var value = this._ht[index]; - this._ht.splice(index, 1); - this.RemovedFromCollection(value, true); - this._RaiseItemRemoved(value, index); - return true; - }; - XamlObjectCollection.prototype.Clear = function () { - var old = this._ht; - this._ht = []; - var len = old.length; - for (var i = 0; i < len; i++) { - this.RemovedFromCollection(old[i], true); - } - this._RaiseCleared(old); - return true; - }; - XamlObjectCollection.prototype.IndexOf = function (value) { - return this._ht.indexOf(value); - }; - XamlObjectCollection.prototype.Contains = function (value) { - return this.IndexOf(value) > -1; - }; - XamlObjectCollection.prototype.CanAdd = function (value) { - return true; - }; - XamlObjectCollection.prototype.AddingToCollection = function (value, error) { - if (value instanceof Fayde.XamlObject) - return value.XamlNode.AttachTo(this.XamlNode, error); - return true; - }; - XamlObjectCollection.prototype.RemovedFromCollection = function (value, isValueSafe) { - if (value instanceof Fayde.XamlObject) - value.XamlNode.Detach(); - }; - XamlObjectCollection.prototype.getEnumerator = function (reverse) { - return nullstone.IEnumerator_.fromArray(this._ht, reverse); - }; - XamlObjectCollection.prototype.GetNodeEnumerator = function (reverse) { - var prev = this.getEnumerator(reverse); - return { - current: undefined, - moveNext: function () { - if (!prev.moveNext()) { - this.current = undefined; - return false; - } - var xobj = prev.current; - this.current = xobj.XamlNode; - return true; - } - }; - }; - XamlObjectCollection.prototype._RaiseItemAdded = function (value, index) { - }; - XamlObjectCollection.prototype._RaiseItemRemoved = function (value, index) { - }; - XamlObjectCollection.prototype._RaiseItemReplaced = function (removed, added, index) { - }; - XamlObjectCollection.prototype._RaiseCleared = function (old) { - }; - XamlObjectCollection.prototype.CloneCore = function (source) { - for (var en = source.getEnumerator(); en.moveNext();) { - this.Add(Fayde.Clone(en.current)); - } - }; - XamlObjectCollection.prototype.ToArray = function () { - return this._ht.slice(0); - }; - return XamlObjectCollection; - })(Fayde.XamlObject); - Fayde.XamlObjectCollection = XamlObjectCollection; - nullstone.ICollection_.mark(XamlObjectCollection); -})(Fayde || (Fayde = {})); -/// -/// -/// -var Fayde; -(function (Fayde) { - var Controls; - (function (Controls) { - var PanelChildrenCollection = (function (_super) { - __extends(PanelChildrenCollection, _super); - function PanelChildrenCollection() { - _super.apply(this, arguments); - this.$$updaters = []; - } - PanelChildrenCollection.prototype.AddingToCollection = function (value, error) { - var panelNode = this.XamlNode.ParentNode; - if (!panelNode.AttachVisualChild(value, error)) - return false; - return _super.prototype.AddingToCollection.call(this, value, error); - }; - PanelChildrenCollection.prototype.RemovedFromCollection = function (value, isValueSafe) { - var panelNode = this.XamlNode.ParentNode; - panelNode.DetachVisualChild(value, null); - _super.prototype.RemovedFromCollection.call(this, value, isValueSafe); - }; - PanelChildrenCollection.prototype._RaiseCleared = function (values) { - this.$$updaters.length = 0; - }; - PanelChildrenCollection.prototype._RaiseItemAdded = function (value, index) { - this.$$updaters.splice(index, 0, value.XamlNode.LayoutUpdater); - }; - PanelChildrenCollection.prototype._RaiseItemRemoved = function (value, index) { - this.$$updaters.splice(index, 1); - }; - PanelChildrenCollection.prototype._RaiseItemReplaced = function (removed, added, index) { - this.$$updaters.splice(index, 1, added.XamlNode.LayoutUpdater); - }; - return PanelChildrenCollection; - })(Fayde.XamlObjectCollection); - var PanelNode = (function (_super) { - __extends(PanelNode, _super); - function PanelNode(xobj) { - _super.call(this, xobj); - } - PanelNode.prototype.AttachVisualChild = function (uie, error) { - this.OnVisualChildAttached(uie); - uie.XamlNode.SetIsLoaded(this.IsLoaded); - return true; - }; - PanelNode.prototype.DetachVisualChild = function (uie, error) { - this.OnVisualChildDetached(uie); - uie.XamlNode.SetIsLoaded(false); - return true; - }; - return PanelNode; - })(Fayde.FENode); - Controls.PanelNode = PanelNode; - var Panel = (function (_super) { - __extends(Panel, _super); - function Panel() { - _super.call(this); - var coll = Panel.ChildrenProperty.Initialize(this); - this.XamlNode.LayoutUpdater.setChildren(coll.$$updaters); - var error = new BError(); - this.XamlNode.SetSubtreeNode(coll.XamlNode, error); - } - Panel.prototype.CreateNode = function () { return new PanelNode(this); }; - Panel.prototype.CreateLayoutUpdater = function () { return new minerva.controls.panel.PanelUpdater(); }; - Panel.GetZIndex = function (uie) { return uie.GetValue(Panel.ZIndexProperty); }; - Panel.SetZIndex = function (uie, value) { uie.SetValue(Panel.ZIndexProperty, value); }; - Panel.BackgroundProperty = DependencyProperty.Register("Background", function () { return Fayde.Media.Brush; }, Panel); - Panel.ChildrenProperty = DependencyProperty.RegisterImmutable("Children", function () { return PanelChildrenCollection; }, Panel); - Panel.ZIndexProperty = DependencyProperty.RegisterAttached("ZIndex", function () { return Number; }, Panel, 0); - return Panel; - })(Fayde.FrameworkElement); - Controls.Panel = Panel; - Fayde.CoreLibrary.add(Panel); - Fayde.Markup.Content(Panel, Panel.ChildrenProperty); - var reactions; - (function (reactions) { - Fayde.UIReaction(Panel.BackgroundProperty, function (upd, ov, nv) { - if (nv !== ov) - upd.updateBounds(); - upd.invalidate(); - }); - Fayde.UIReactionAttached(Panel.ZIndexProperty, minerva.controls.panel.reactTo.zIndex); - })(reactions || (reactions = {})); - })(Controls = Fayde.Controls || (Fayde.Controls = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Controls; - (function (Controls) { - var Canvas = (function (_super) { - __extends(Canvas, _super); - function Canvas() { - _super.apply(this, arguments); - } - Canvas.prototype.CreateLayoutUpdater = function () { return new minerva.controls.canvas.CanvasUpdater(); }; - Canvas.GetTop = function (d) { return d.GetValue(Canvas.TopProperty); }; - Canvas.SetTop = function (d, value) { d.SetValue(Canvas.TopProperty, value); }; - Canvas.GetLeft = function (d) { return d.GetValue(Canvas.LeftProperty); }; - Canvas.SetLeft = function (d, value) { d.SetValue(Canvas.LeftProperty, value); }; - Canvas.TopProperty = DependencyProperty.RegisterAttached("Top", function () { return Number; }, Canvas, 0.0); - Canvas.LeftProperty = DependencyProperty.RegisterAttached("Left", function () { return Number; }, Canvas, 0.0); - return Canvas; - })(Controls.Panel); - Controls.Canvas = Canvas; - Fayde.CoreLibrary.add(Canvas); - var reactions; - (function (reactions) { - Fayde.UIReactionAttached(Canvas.TopProperty, minerva.controls.canvas.reactTo.top); - Fayde.UIReactionAttached(Canvas.LeftProperty, minerva.controls.canvas.reactTo.left); - })(reactions || (reactions = {})); - })(Controls = Fayde.Controls || (Fayde.Controls = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Controls; - (function (Controls) { - var Primitives; - (function (Primitives) { - var ToggleButton = (function (_super) { - __extends(ToggleButton, _super); - function ToggleButton() { - _super.call(this); - this.Checked = new Fayde.RoutedEvent(); - this.Indeterminate = new Fayde.RoutedEvent(); - this.Unchecked = new Fayde.RoutedEvent(); - this.DefaultStyleKey = ToggleButton; - } - ToggleButton.prototype.OnApplyTemplate = function () { - _super.prototype.OnApplyTemplate.call(this); - this.UpdateVisualState(false); - }; - ToggleButton.prototype.OnContentChanged = function (oldContent, newContent) { - _super.prototype.OnContentChanged.call(this, oldContent, newContent); - this.UpdateVisualState(); - }; - ToggleButton.prototype.OnClick = function () { - this.OnToggle(); - _super.prototype.OnClick.call(this); - }; - ToggleButton.prototype.UpdateVisualState = function (useTransitions) { - useTransitions = useTransitions !== false; - _super.prototype.UpdateVisualState.call(this, useTransitions); - var isChecked = this.IsChecked; - var vsm = Fayde.Media.VSM.VisualStateManager; - if (isChecked === true) { - vsm.GoToState(this, "Checked", useTransitions); - } - else if (isChecked === false) { - vsm.GoToState(this, "Unchecked", useTransitions); - } - else { - if (!vsm.GoToState(this, "Indeterminate", useTransitions)) { - vsm.GoToState(this, "Unchecked", useTransitions); - } - } - }; - ToggleButton.prototype.OnIsCheckedChanged = function (args) { - var isChecked = args.NewValue; - this.UpdateVisualState(); - var rargs = new Fayde.RoutedEventArgs(); - if (isChecked === true) { - this.Checked.raise(this, rargs); - } - else if (isChecked === false) { - this.Unchecked.raise(this, rargs); - } - else { - this.Indeterminate.raise(this, rargs); - } - }; - ToggleButton.prototype.OnToggle = function () { - var isChecked = this.IsChecked; - if (isChecked === true) { - this.IsChecked = this.IsThreeState ? null : false; - } - else { - this.IsChecked = isChecked != null; - } - }; - ToggleButton.IsCheckedProperty = DependencyProperty.RegisterCore("IsChecked", function () { return Boolean; }, ToggleButton, false, function (d, args) { return d.OnIsCheckedChanged(args); }); - ToggleButton.IsThreeStateProperty = DependencyProperty.RegisterCore("IsThreeState", function () { return Boolean; }, ToggleButton, false); - return ToggleButton; - })(Primitives.ButtonBase); - Primitives.ToggleButton = ToggleButton; - Fayde.CoreLibrary.add(ToggleButton); - Controls.TemplateVisualStates(ToggleButton, { GroupName: "CommonStates", Name: "Pressed" }, { GroupName: "CommonStates", Name: "MouseOver" }, { GroupName: "CommonStates", Name: "Normal" }, { GroupName: "CommonStates", Name: "Disabled" }, { GroupName: "FocusStates", Name: "Unfocused" }, { GroupName: "FocusStates", Name: "Focused" }, { GroupName: "CheckStates", Name: "Checked" }, { GroupName: "CheckStates", Name: "Unchecked" }, { GroupName: "CheckStates", Name: "Indeterminate" }); - })(Primitives = Controls.Primitives || (Controls.Primitives = {})); - })(Controls = Fayde.Controls || (Fayde.Controls = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Controls; - (function (Controls) { - var CheckBox = (function (_super) { - __extends(CheckBox, _super); - function CheckBox() { - _super.call(this); - this.DefaultStyleKey = CheckBox; - } - return CheckBox; - })(Controls.Primitives.ToggleButton); - Controls.CheckBox = CheckBox; - Fayde.CoreLibrary.add(CheckBox); - Controls.TemplateVisualStates(CheckBox, { GroupName: "CommonStates", Name: "Normal" }, { GroupName: "CommonStates", Name: "MouseOver" }, { GroupName: "CommonStates", Name: "Pressed" }, { GroupName: "CommonStates", Name: "Disabled" }, { GroupName: "FocusStates", Name: "Unfocused" }, { GroupName: "FocusStates", Name: "Focused" }, { GroupName: "CheckStates", Name: "Checked" }, { GroupName: "CheckStates", Name: "Unchecked" }, { GroupName: "CheckStates", Name: "Indeterminate" }, { GroupName: "ValidationStates", Name: "InvalidUnfocused" }, { GroupName: "ValidationStates", Name: "InvalidFocused" }, { GroupName: "ValidationStates", Name: "Valid" }); - })(Controls = Fayde.Controls || (Fayde.Controls = {})); -})(Fayde || (Fayde = {})); -/// -/// -var Fayde; -(function (Fayde) { - var Controls; - (function (Controls) { - var ColumnDefinition = (function (_super) { - __extends(ColumnDefinition, _super); - function ColumnDefinition() { - _super.apply(this, arguments); - } - ColumnDefinition.prototype.setActualWidth = function (value) { - this.SetCurrentValue(ColumnDefinition.ActualWidthProperty, value); - }; - ColumnDefinition.WidthProperty = DependencyProperty.Register("Width", function () { return Controls.GridLength; }, ColumnDefinition, undefined, Fayde.Incite); - ColumnDefinition.MaxWidthProperty = DependencyProperty.Register("MaxWidth", function () { return Number; }, ColumnDefinition, Number.POSITIVE_INFINITY, Fayde.Incite); - ColumnDefinition.MinWidthProperty = DependencyProperty.Register("MinWidth", function () { return Number; }, ColumnDefinition, 0.0, Fayde.Incite); - ColumnDefinition.ActualWidthProperty = DependencyProperty.RegisterReadOnly("ActualWidth", function () { return Number; }, ColumnDefinition, 0.0); - return ColumnDefinition; - })(Fayde.DependencyObject); - Controls.ColumnDefinition = ColumnDefinition; - Fayde.CoreLibrary.add(ColumnDefinition); - var GridUnitType = minerva.controls.grid.GridUnitType; - function ConvertColumnDefinition(o) { - if (!o || o instanceof ColumnDefinition) - return o; - var s = o.toString(); - var cd = new ColumnDefinition(); - if (s.toLowerCase() === "auto") { - cd.Width = new Controls.GridLength(0, GridUnitType.Auto); - return cd; - } - if (s === "*") { - cd.Width = new Controls.GridLength(1, GridUnitType.Star); - return cd; - } - var v = parseFloat(s); - if (isNaN(v)) - throw new XamlParseException("Invalid ColumnDefinition: '" + s + "'."); - cd.Width = new Controls.GridLength(v, s[s.length - 1] === "*" ? GridUnitType.Star : GridUnitType.Pixel); - return cd; - } - nullstone.registerTypeConverter(ColumnDefinition, ConvertColumnDefinition); - var ColumnDefinitionCollection = (function (_super) { - __extends(ColumnDefinitionCollection, _super); - function ColumnDefinitionCollection() { - _super.apply(this, arguments); - } - ColumnDefinitionCollection.prototype._RaiseItemAdded = function (value, index) { - Fayde.Incite(this, { - item: value, - index: index, - add: true - }); - }; - ColumnDefinitionCollection.prototype._RaiseItemRemoved = function (value, index) { - Fayde.Incite(this, { - item: value, - index: index, - add: false - }); - }; - return ColumnDefinitionCollection; - })(Fayde.XamlObjectCollection); - Controls.ColumnDefinitionCollection = ColumnDefinitionCollection; - Fayde.CoreLibrary.add(ColumnDefinitionCollection); - function ConvertColumnDefinitionCollection(o) { - if (!o || o instanceof ColumnDefinitionCollection) - return o; - if (typeof o === "string") { - var tokens = o.split(" "); - var len = tokens.length; - var cdc = new ColumnDefinitionCollection(); - var cd; - for (var i = 0; i < len; i++) { - if (cd = ConvertColumnDefinition(tokens[i])) - cdc.Add(cd); - } - return cdc; - } - return undefined; - } - nullstone.registerTypeConverter(ColumnDefinitionCollection, ConvertColumnDefinitionCollection); - })(Controls = Fayde.Controls || (Fayde.Controls = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Controls; - (function (Controls) { - var ItemsControlNode = (function (_super) { - __extends(ItemsControlNode, _super); - function ItemsControlNode(xobj) { - _super.call(this, xobj); - this.ItemsPresenter = null; - } - ItemsControlNode.prototype.GetDefaultVisualTree = function () { - var presenter = this.ItemsPresenter; - if (!presenter) - (presenter = new Controls.ItemsPresenter()).TemplateOwner = this.XObject; - return presenter; - }; - return ItemsControlNode; - })(Controls.ControlNode); - Controls.ItemsControlNode = ItemsControlNode; - var ItemsControl = (function (_super) { - __extends(ItemsControl, _super); - function ItemsControl() { - _super.call(this); - this._IsDataBound = false; - this._SuspendItemsChanged = false; - this._DisplayMemberTemplate = null; - this.DefaultStyleKey = ItemsControl; - var coll = ItemsControl.ItemsProperty.Initialize(this); - coll.ItemsChanged.on(this._OnItemsUpdated, this); - this._ItemContainersManager = new Controls.Internal.ItemContainersManager(this); - } - ItemsControl.prototype.CreateNode = function () { return new ItemsControlNode(this); }; - Object.defineProperty(ItemsControl.prototype, "IsItemsControl", { - get: function () { return true; }, - enumerable: true, - configurable: true - }); - ItemsControl.GetIsItemsHost = function (d) { return d.GetValue(ItemsControl.IsItemsHostProperty) === true; }; - ItemsControl.SetIsItemsHost = function (d, value) { d.SetValue(ItemsControl.IsItemsHostProperty, value === true); }; - ItemsControl.prototype.OnDisplayMemberPathChanged = function (e) { - for (var en = this.ItemContainersManager.GetEnumerator(); en.moveNext();) { - this.UpdateContainerTemplate(en.current, en.CurrentItem); - } - }; - ItemsControl.prototype.OnItemsSourceChanged = function (e) { - var nc = Fayde.Collections.INotifyCollectionChanged_.as(e.OldValue); - if (nc) - nc.CollectionChanged.off(this._OnItemsSourceUpdated, this); - var items = this.Items; - var resetargs = Fayde.Collections.CollectionChangedEventArgs.Reset(items.ToArray()); - try { - this._SuspendItemsChanged = true; - items.Clear(); - } - finally { - this._SuspendItemsChanged = false; - } - this.OnItemsChanged(resetargs); - this._IsDataBound = !!e.NewValue; - var arr = toArray(e.NewValue); - try { - this._SuspendItemsChanged = true; - if (arr) - items.AddRange(arr); - } - finally { - this._SuspendItemsChanged = false; - } - if (arr) - this.OnItemsChanged(Fayde.Collections.CollectionChangedEventArgs.AddRange(arr, 0)); - var nc = Fayde.Collections.INotifyCollectionChanged_.as(e.NewValue); - if (nc) - nc.CollectionChanged.on(this._OnItemsSourceUpdated, this); - }; - ItemsControl.prototype.OnItemTemplateChanged = function (e) { - for (var en = this.ItemContainersManager.GetEnumerator(); en.moveNext();) { - this.UpdateContainerTemplate(en.current, en.CurrentItem); - } - }; - Object.defineProperty(ItemsControl.prototype, "ItemContainersManager", { - get: function () { return this._ItemContainersManager; }, - enumerable: true, - configurable: true - }); - ItemsControl.prototype.PrepareContainerForItem = function (container, item) { - if (this.DisplayMemberPath != null && this.ItemTemplate != null) - throw new InvalidOperationException("Cannot set 'DisplayMemberPath' and 'ItemTemplate' simultaneously"); - this.UpdateContainerTemplate(container, item); - }; - ItemsControl.prototype.ClearContainerForItem = function (container, item) { - if (container instanceof Controls.ContentPresenter) { - var cp = container; - if (cp.Content === item) - cp.Content = null; - } - else if (container instanceof Controls.ContentControl) { - var cc = container; - if (cc.Content === item) - cc.Content = null; - } - }; - ItemsControl.prototype.GetContainerForItem = function () { return new Controls.ContentPresenter(); }; - ItemsControl.prototype.IsItemItsOwnContainer = function (item) { return item instanceof Fayde.UIElement; }; - ItemsControl.prototype._OnItemsUpdated = function (sender, e) { - if (this._SuspendItemsChanged) - return; - if (this._IsDataBound) - throw new InvalidOperationException("Cannot modify Items while bound to ItemsSource."); - this.OnItemsChanged(e); - }; - ItemsControl.prototype._OnItemsSourceUpdated = function (sender, e) { - var items = this.Items; - try { - this._SuspendItemsChanged = true; - switch (e.Action) { - case Fayde.Collections.CollectionChangedAction.Add: - for (var i = 0, len = e.NewItems.length; i < len; i++) { - items.Insert(e.NewStartingIndex + i, e.NewItems[i]); - } - break; - case Fayde.Collections.CollectionChangedAction.Remove: - for (var i = 0, len = e.OldItems.length; i < len; i++) { - items.RemoveAt(e.OldStartingIndex); - } - break; - case Fayde.Collections.CollectionChangedAction.Replace: - items.SetValueAt(e.NewStartingIndex, e.NewItems[0]); - break; - case Fayde.Collections.CollectionChangedAction.Reset: - items.Clear(); - break; - } - } - finally { - this._SuspendItemsChanged = false; - } - this.OnItemsChanged(e); - }; - ItemsControl.prototype.OnItemsChanged = function (e) { - switch (e.Action) { - case Fayde.Collections.CollectionChangedAction.Add: - this.OnItemsAdded(e.NewStartingIndex, e.NewItems); - break; - case Fayde.Collections.CollectionChangedAction.Remove: - this.OnItemsRemoved(e.OldStartingIndex, e.OldItems); - break; - case Fayde.Collections.CollectionChangedAction.Replace: - this.OnItemsRemoved(e.NewStartingIndex, e.OldItems); - this.OnItemsAdded(e.NewStartingIndex, e.NewItems); - break; - case Fayde.Collections.CollectionChangedAction.Reset: - this.OnItemsRemoved(0, e.OldItems); - break; - } - }; - ItemsControl.prototype.OnItemsAdded = function (index, newItems) { - this._ItemContainersManager.OnItemsAdded(index, newItems); - var presenter = this.XamlNode.ItemsPresenter; - if (presenter) - presenter.OnItemsAdded(index, newItems); - }; - ItemsControl.prototype.OnItemsRemoved = function (index, oldItems) { - var presenter = this.XamlNode.ItemsPresenter; - if (presenter) - presenter.OnItemsRemoved(index, oldItems); - this._ItemContainersManager.OnItemsRemoved(index, oldItems); - }; - ItemsControl.prototype.UpdateContainerTemplate = function (container, item) { - if (!container || container === item) - return; - var template; - if (!(item instanceof Fayde.UIElement)) - template = this.ItemTemplate || this._GetDisplayMemberTemplate(); - if (container instanceof Controls.ContentPresenter) { - var cp = container; - cp.ContentTemplate = template; - cp.Content = item; - } - else if (container instanceof Controls.ContentControl) { - var cc = container; - cc.ContentTemplate = template; - cc.Content = item; - } - }; - ItemsControl.prototype._GetDisplayMemberTemplate = function () { - if (!this._DisplayMemberTemplate) { - var xm = DisplayTemplate.create(this.DisplayMemberPath || ""); - this._DisplayMemberTemplate = Fayde.Markup.Load(this.App, xm); - } - return this._DisplayMemberTemplate; - }; - ItemsControl.DisplayMemberPathProperty = DependencyProperty.Register("DisplayMemberPath", function () { return String; }, ItemsControl, null, function (d, args) { return d.OnDisplayMemberPathChanged(args); }); - ItemsControl.ItemsPanelProperty = DependencyProperty.Register("ItemsPanel", function () { return Controls.ItemsPanelTemplate; }, ItemsControl); - ItemsControl.ItemsSourceProperty = DependencyProperty.RegisterFull("ItemsSource", function () { return nullstone.IEnumerable_; }, ItemsControl, null, function (d, args) { return d.OnItemsSourceChanged(args); }); - ItemsControl.ItemsProperty = DependencyProperty.RegisterImmutable("Items", function () { return Controls.ItemCollection; }, ItemsControl); - ItemsControl.ItemTemplateProperty = DependencyProperty.Register("ItemTemplate", function () { return Fayde.DataTemplate; }, ItemsControl, undefined, function (d, args) { return d.OnItemTemplateChanged(args); }); - ItemsControl.IsItemsHostProperty = DependencyProperty.RegisterAttached("IsItemsHost", function () { return Boolean; }, ItemsControl, false); - return ItemsControl; - })(Controls.Control); - Controls.ItemsControl = ItemsControl; - Fayde.CoreLibrary.add(ItemsControl); - Fayde.Markup.Content(ItemsControl, ItemsControl.ItemsProperty); - function toArray(value) { - if (value instanceof Array) - return value; - var enu = nullstone.IEnumerable_.as(value); - if (enu) { - var arr = []; - for (var en = enu.getEnumerator(); en.moveNext();) { - arr.push(en.current); - } - return arr; - } - return null; - } - var DisplayTemplate; - (function (DisplayTemplate) { - function create(dmp) { - return Fayde.Markup.CreateXaml("", Fayde.XMLNS + "/itemscontrol/displaymember/" + dmp); - } - DisplayTemplate.create = create; - })(DisplayTemplate || (DisplayTemplate = {})); - })(Controls = Fayde.Controls || (Fayde.Controls = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Controls; - (function (Controls) { - var Primitives; - (function (Primitives) { - var Selector = (function (_super) { - __extends(Selector, _super); - function Selector() { - _super.call(this); - this.SelectionChanged = new Fayde.RoutedEvent(); - this._SelectedItems = new Fayde.Collections.ObservableCollection(); - this._SelectedItemsIsInvalid = false; - this.$TemplateScrollViewer = null; - this._SelectedValueWalker = null; - this._Selection = new Primitives.SelectorSelection(this); - } - Object.defineProperty(Selector.prototype, "SynchronizeWithCurrentItem", { - get: function () { - if (!Fayde.Data.ICollectionView_.is(this.ItemsSource)) - return false; - return this.IsSynchronizedWithCurrentItem !== false; - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(Selector.prototype, "SelectedItems", { - get: function () { - if (this._SelectedItemsIsInvalid) - this._Selection.RepopulateSelectedItems(); - return this._SelectedItems; - }, - enumerable: true, - configurable: true - }); - Selector.prototype._OnIsSynchronizedWithCurrentItemChanged = function (args) { - if (args.NewValue === true) - throw new ArgumentException("Setting IsSynchronizedWithCurrentItem to 'true' is not supported"); - if (args.NewValue != null) - return this.SelectedItem = null; - var icv = Fayde.Data.ICollectionView_.as(this.ItemsSource); - if (icv) - this.SelectedItem = icv.CurrentItem; - }; - Selector.prototype._OnSelectedIndexChanged = function (args) { - if (this._Selection.IsUpdating) - return; - var items = this.Items; - if (args.NewValue < 0 || args.NewValue >= items.Count) - this._Selection.ClearSelection(); - else - this._Selection.Select(items.GetValueAt(args.NewValue)); - }; - Selector.prototype._OnSelectedItemChanged = function (args) { - if (this._Selection.IsUpdating) - return; - if (args.NewValue == null) - this._Selection.ClearSelection(); - else if (this.Items.IndexOf(args.NewValue) !== -1) - this._Selection.Select(args.NewValue); - else if (this.Items.IndexOf(args.OldValue) !== -1) - this._Selection.Select(args.OldValue); - else - this._Selection.ClearSelection(); - }; - Selector.prototype._OnSelectedValueChanged = function (args) { - if (this._Selection.IsUpdating) - return; - this._SelectItemFromValue(args.NewValue, false); - }; - Selector.prototype._OnSelectedValuePathChanged = function (args) { - this._SelectedValueWalker = !args.NewValue ? null : new Fayde.Data.PropertyPathWalker(args.NewValue); - this._SelectItemFromValue(this.SelectedValue, true); - }; - Selector.prototype._OnSelectionModeChanged = function (args) { - this._Selection.Mode = args.NewValue; - if (args.NewValue !== Controls.SelectionMode.Single) - return; - var selIndex = this.SelectedIndex; - if (selIndex === -1) - return; - this._Selection.SelectOnly(this.Items.GetValueAt(selIndex)); - }; - Selector.prototype.OnApplyTemplate = function () { - _super.prototype.OnApplyTemplate.call(this); - var tsv = this.$TemplateScrollViewer = this.GetTemplateChild("ScrollViewer", Controls.ScrollViewer); - if (tsv) { - tsv.$TemplatedParentHandlesScrolling = true; - tsv.HorizontalScrollBarVisibility = Controls.ScrollViewer.GetHorizontalScrollBarVisibility(this); - tsv.VerticalScrollBarVisibility = Controls.ScrollViewer.GetVerticalScrollBarVisibility(this); - } - }; - Selector.prototype.OnItemsChanged = function (e) { - _super.prototype.OnItemsChanged.call(this, e); - var item; - switch (e.Action) { - case Fayde.Collections.CollectionChangedAction.Add: - var lbi; - if (e.NewItems[0] instanceof Controls.ListBoxItem) - lbi = e.NewItems[0]; - if (lbi != null && lbi.IsSelected && !this.SelectedItems.Contains(lbi)) { - this._Selection.Select(lbi); - } - else if (this.SelectedItem != null) { - this._Selection.Select(this.SelectedItem); - } - break; - case Fayde.Collections.CollectionChangedAction.Reset: - var o; - var icv = Fayde.Data.ICollectionView_.as(this.ItemsSource); - if (icv && this.SynchronizeWithCurrentItem) - o = icv.CurrentItem; - else - o = this.SelectedItem; - if (this.Items.Contains(o)) - this._Selection.Select(o); - else - this._Selection.ClearSelection(); - break; - case Fayde.Collections.CollectionChangedAction.Remove: - item = e.OldItems[0]; - if (this.SelectedItems.Contains(item)) - this._Selection.Unselect(item); - else if (e.OldStartingIndex <= this.SelectedIndex) - this._Selection.Select(this.SelectedItem); - break; - case Fayde.Collections.CollectionChangedAction.Replace: - item = e.OldItems[0]; - this._Selection.Unselect(item); - break; - default: - throw new NotSupportedException("Collection changed action '" + e.Action + "' not supported"); - } - }; - Selector.prototype.OnItemsSourceChanged = function (args) { - _super.prototype.OnItemsSourceChanged.call(this, args); - var view = Fayde.Data.ICollectionView_.as(args.OldValue); - if (view) - view.CurrentChanged.off(this._OnCurrentItemChanged, this); - view = Fayde.Data.ICollectionView_.as(args.NewValue); - if (view) { - view.CurrentChanged.on(this._OnCurrentItemChanged, this); - if (this.SynchronizeWithCurrentItem) - this._Selection.SelectOnly(view.CurrentItem); - else - this._Selection.ClearSelection(); - } - else { - this._Selection.ClearSelection(); - } - }; - Selector.prototype.OnItemContainerStyleChanged = function (oldStyle, newStyle) { }; - Selector.prototype.ClearContainerForItem = function (element, item) { - _super.prototype.ClearContainerForItem.call(this, element, item); - var lbi = element; - lbi.ParentSelector = null; - if (lbi !== item) - lbi.Content = null; - }; - Selector.prototype.PrepareContainerForItem = function (element, item) { - _super.prototype.PrepareContainerForItem.call(this, element, item); - var lbi = element; - lbi.ParentSelector = this; - if (this.SelectedItems.Contains(item)) - lbi.IsSelected = true; - if (lbi.IsSelected && !this.SelectedItems.Contains(item)) - this._Selection.Select(item); - }; - Selector.prototype._GetValueFromItem = function (item) { - if (this._SelectedValueWalker == null) - return item; - if (item == null) - return item; - return this._SelectedValueWalker.GetValue(item); - }; - Selector.prototype._SelectItemFromValue = function (selectedValue, ignoreSelectedValue) { - if (selectedValue == null) { - this._Selection.ClearSelection(ignoreSelectedValue); - return; - } - var items = this.Items; - var count = items.Count; - for (var i = 0; i < count; i++) { - var item = items.GetValueAt(i); - var val = this._GetValueFromItem(item); - if (nullstone.equals(selectedValue, val)) { - if (!this.SelectedItems.Contains(item)) - this._Selection.Select(item); - return; - } - } - this._Selection.ClearSelection(ignoreSelectedValue); - }; - Selector.prototype.SelectAll = function () { - this._Selection.SelectAll(this.Items.ToArray()); - }; - Selector.prototype._OnCurrentItemChanged = function (sender, e) { - if (!this._Selection.IsUpdating && this.SynchronizeWithCurrentItem) { - var icv = this.ItemsSource; - if (!nullstone.equals(icv.CurrentItem, this.SelectedItem)) - this._Selection.SelectOnly(icv.CurrentItem); - } - }; - Selector.prototype._RaiseSelectionChanged = function (oldVals, newVals) { - if (!oldVals) - oldVals = []; - if (!newVals) - newVals = []; - var lbi; - var oldCount = oldVals.length; - var oldValue; - for (var i = 0; i < oldCount; i++) { - oldValue = oldVals[i]; - if (oldValue == null) - continue; - lbi = null; - if (oldValue instanceof Controls.ListBoxItem) - lbi = oldValue; - lbi = lbi || this.ItemContainersManager.ContainerFromItem(oldValue); - if (lbi) - lbi.IsSelected = false; - } - var newCount = newVals.length; - var newValue; - for (var i = 0; i < newCount; i++) { - newValue = newVals[i]; - if (newValue == null) - continue; - lbi = null; - if (newValue instanceof Controls.ListBoxItem) - lbi = newValue; - lbi = lbi || this.ItemContainersManager.ContainerFromItem(newValue); - if (lbi) { - lbi.IsSelected = true; - lbi.Focus(); - } - } - var args = new Primitives.SelectionChangedEventArgs(oldVals, newVals); - this.OnSelectionChanged(args); - this.SelectionChanged.raise(this, args); - }; - Selector.prototype.OnSelectionChanged = function (args) { }; - Selector.prototype.NotifyListItemClicked = function (lbi) { - this._Selection.Select(this.ItemContainersManager.ItemFromContainer(lbi)); - }; - Selector.prototype.NotifyListItemLoaded = function (lbi) { - if (this.ItemContainersManager.ItemFromContainer(lbi) === this.SelectedItem) { - lbi.IsSelected = true; - lbi.Focus(); - } - }; - Selector.prototype.NotifyListItemGotFocus = function (lbi) { }; - Selector.prototype.NotifyListItemLostFocus = function (lbi) { }; - Selector.IsSynchronizedWithCurrentItemProperty = DependencyProperty.Register("IsSynchronizedWithCurrentItem", function () { return Boolean; }, Selector, null, function (d, args) { return d._OnIsSynchronizedWithCurrentItemChanged(args); }); - Selector.SelectedIndexProperty = DependencyProperty.Register("SelectedIndex", function () { return Number; }, Selector, -1, function (d, args) { return d._OnSelectedIndexChanged(args); }); - Selector.SelectedItemProperty = DependencyProperty.Register("SelectedItem", function () { return Object; }, Selector, undefined, function (d, args) { return d._OnSelectedItemChanged(args); }); - Selector.SelectedValueProperty = DependencyProperty.Register("SelectedValue", function () { return Object; }, Selector, undefined, function (d, args) { return d._OnSelectedValueChanged(args); }); - Selector.SelectedValuePathProperty = DependencyProperty.Register("SelectedValuePath", function () { return String; }, Selector, "", function (d, args) { return d._OnSelectedValuePathChanged(args); }); - Selector.IsSelectionActiveProperty = DependencyProperty.RegisterReadOnlyCore("IsSelectionActive", function () { return Boolean; }, Selector); - Selector.SelectionModeProperty = DependencyProperty.Register("SelectionMode", function () { return new Fayde.Enum(Controls.SelectionMode); }, Selector, undefined, function (d, args) { return d._OnSelectionModeChanged(args); }); - return Selector; - })(Controls.ItemsControl); - Primitives.Selector = Selector; - Fayde.CoreLibrary.add(Selector); - })(Primitives = Controls.Primitives || (Controls.Primitives = {})); - })(Controls = Fayde.Controls || (Fayde.Controls = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Markup; - (function (Markup) { - var XamlMarkup = nullstone.markup.xaml.XamlMarkup; - var lastId = 0; - function CreateXaml(obj, uri) { - lastId++; - uri = uri || "http://gen/" + lastId.toString(); - var xm = new XamlMarkup(uri); - var root = (typeof obj === "string") - ? xm.loadRoot(obj) - : obj; - if (!root.isDefaultNamespace(Fayde.XMLNS)) - throw new XamlParseException("Invalid default namespace. [" + root.lookupNamespaceURI(null) + "]"); - xm.setRoot(root); - return xm; - } - Markup.CreateXaml = CreateXaml; - })(Markup = Fayde.Markup || (Fayde.Markup = {})); -})(Fayde || (Fayde = {})); -/// -/// -var Fayde; -(function (Fayde) { - var Controls; - (function (Controls) { - var fmd = Fayde.Markup.CreateXaml("", Fayde.XMLNS + "/contentpresenter/default"); - var fallbackTemplate; - function getFallbackTemplate(app) { - return fallbackTemplate = fallbackTemplate || Fayde.Markup.Load(app, fmd); - } - var ContentPresenterNode = (function (_super) { - __extends(ContentPresenterNode, _super); - function ContentPresenterNode(xobj) { - _super.call(this, xobj); - } - Object.defineProperty(ContentPresenterNode.prototype, "ContentRoot", { - get: function () { return this._ContentRoot; }, - enumerable: true, - configurable: true - }); - ContentPresenterNode.prototype.DoApplyTemplateWithError = function (error) { - if (this._ContentRoot) - return false; - var xobj = this.XObject; - if (xobj.TemplateOwner instanceof Controls.ContentControl) { - if (!xobj.HasValueOrExpression(ContentPresenter.ContentProperty)) { - xobj.SetValue(ContentPresenter.ContentProperty, new Fayde.TemplateBindingExpression("Content")); - } - if (!xobj.HasValueOrExpression(ContentPresenter.ContentTemplateProperty)) { - xobj.SetValue(ContentPresenter.ContentTemplateProperty, new Fayde.TemplateBindingExpression("ContentTemplate")); - } - } - var content = xobj.Content; - if (content instanceof Fayde.UIElement) { - this._ContentRoot = content; - xobj.DataContext = undefined; - } - else { - xobj.DataContext = content == null ? null : content; - this._ContentRoot = this._GetContentTemplate(content ? content.constructor : null).GetVisualTree(xobj); - } - if (!this._ContentRoot) - return false; - return this.AttachVisualChild(this._ContentRoot, error); - }; - ContentPresenterNode.prototype.ClearRoot = function () { - if (this._ContentRoot) - this.DetachVisualChild(this._ContentRoot, null); - this._ContentRoot = null; - }; - ContentPresenterNode.prototype._ContentChanged = function (args) { - var isUIContent = args.NewValue instanceof Fayde.UIElement; - if (isUIContent || args.OldValue instanceof Fayde.UIElement) { - this.ClearRoot(); - } - else if (!isUIContent) { - if (this._ShouldInvalidateImplicitTemplate(args.OldValue, args.NewValue)) - this.ClearRoot(); - this.XObject.DataContext = args.NewValue == null ? null : args.NewValue; - } - this.LayoutUpdater.invalidateMeasure(); - }; - ContentPresenterNode.prototype._ContentTemplateChanged = function () { - this.ClearRoot(); - this.LayoutUpdater.invalidateMeasure(); - }; - ContentPresenterNode.prototype._ShouldInvalidateImplicitTemplate = function (oldValue, newValue) { - var octor = oldValue ? oldValue.constructor : null; - var nctor = newValue ? newValue.constructor : null; - if (octor !== nctor) - return true; - if (octor === Object) - return true; - return false; - }; - ContentPresenterNode.prototype._GetContentTemplate = function (type) { - var dt = this.XObject.ContentTemplate; - if (dt) - return dt; - if (type && typeof type === "function") { - var node = this; - var rd; - while (node) { - var xobj = node.XObject; - if (xobj instanceof Fayde.FrameworkElement && (rd = xobj.Resources)) { - dt = rd.Get(type); - if (dt instanceof Fayde.DataTemplate) - return dt; - } - node = node.ParentNode; - } - var surface = this.LayoutUpdater.tree.surface; - var app = surface ? surface.App : null; - if (app) { - dt = app.Resources.Get(type); - if (dt instanceof Fayde.DataTemplate) - return dt; - } - } - return getFallbackTemplate(this.XObject.App); - }; - return ContentPresenterNode; - })(Fayde.FENode); - Controls.ContentPresenterNode = ContentPresenterNode; - var ContentPresenter = (function (_super) { - __extends(ContentPresenter, _super); - function ContentPresenter() { - _super.apply(this, arguments); - } - ContentPresenter.prototype.CreateNode = function () { return new ContentPresenterNode(this); }; - ContentPresenter.ContentProperty = DependencyProperty.Register("Content", function () { return Object; }, ContentPresenter, undefined, function (d, args) { return d.XamlNode._ContentChanged(args); }); - ContentPresenter.ContentTemplateProperty = DependencyProperty.Register("ContentTemplate", function () { return Fayde.DataTemplate; }, ContentPresenter, undefined, function (d, args) { return d.XamlNode._ContentTemplateChanged(); }); - return ContentPresenter; - })(Fayde.FrameworkElement); - Controls.ContentPresenter = ContentPresenter; - Fayde.CoreLibrary.add(ContentPresenter); - Fayde.Markup.Content(ContentPresenter, ContentPresenter.ContentProperty); - })(Controls = Fayde.Controls || (Fayde.Controls = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Controls; - (function (Controls) { - var Primitives; - (function (Primitives) { - var PopupUpdater = minerva.controls.popup.PopupUpdater; - var PopupNode = (function (_super) { - __extends(PopupNode, _super); - function PopupNode() { - _super.apply(this, arguments); - this.ClickedOutside = new nullstone.Event(); - this._Overlay = null; - this._Catcher = null; - } - PopupNode.prototype.OnIsAttachedChanged = function (newIsAttached) { - _super.prototype.OnIsAttachedChanged.call(this, newIsAttached); - this.RegisterInitiator(this.VisualParentNode.XObject); - if (!newIsAttached && this.XObject.IsOpen) - this.XObject.IsOpen = false; - }; - PopupNode.prototype.EnsureOverlay = function () { - if (!this._Overlay) { - this._Overlay = new Controls.Canvas(); - this.LayoutUpdater.setLayer(this._Overlay.XamlNode.LayoutUpdater); - } - return this._Overlay; - }; - PopupNode.prototype.EnsureCatcher = function () { - var catcher = this._Catcher; - if (this.ClickedOutside.has && !catcher) { - catcher = this._Catcher = new Controls.Canvas(); - catcher.Background = Fayde.Media.SolidColorBrush.FromColor(Color.FromRgba(255, 255, 255, 0)); - catcher.LayoutUpdated.on(this.UpdateCatcher, this); - catcher.MouseLeftButtonDown.on(this._RaiseClickedOutside, this); - this.EnsureOverlay().Children.Insert(0, catcher); - } - return catcher; - }; - PopupNode.prototype.UpdateCatcher = function () { - var root = this._Overlay; - if (!root) - return; - var surface = this.LayoutUpdater.tree.initiatorSurface; - if (!surface) - return; - root.Width = surface.width; - root.Height = surface.height; - var catcher = this._Catcher; - if (!catcher) - return; - catcher.Width = root.Width; - catcher.Height = root.Height; - }; - PopupNode.prototype._RaiseClickedOutside = function (sender, e) { - this.ClickedOutside.raise(this, null); - }; - PopupNode.prototype.RegisterInitiator = function (initiator) { - if (!(initiator instanceof Fayde.UIElement)) - return; - this.LayoutUpdater.setInitiator(initiator.XamlNode.LayoutUpdater); - }; - return PopupNode; - })(Fayde.FENode); - Primitives.PopupNode = PopupNode; - var Popup = (function (_super) { - __extends(Popup, _super); - function Popup() { - _super.apply(this, arguments); - this.Opened = new nullstone.Event(); - this.Closed = new nullstone.Event(); - } - Popup.prototype.CreateNode = function () { return new PopupNode(this); }; - Popup.prototype.CreateLayoutUpdater = function () { return new PopupUpdater(); }; - Popup.prototype.WatchOutsideClick = function (callback, closure) { - this.XamlNode.ClickedOutside.on(callback, closure); - this.XamlNode.EnsureCatcher(); - }; - Popup.ChildProperty = DependencyProperty.Register("Child", function () { return Fayde.UIElement; }, Popup); - Popup.HorizontalOffsetProperty = DependencyProperty.Register("HorizontalOffset", function () { return Number; }, Popup, 0.0); - Popup.VerticalOffsetProperty = DependencyProperty.Register("VerticalOffset", function () { return Number; }, Popup, 0.0); - Popup.IsOpenProperty = DependencyProperty.Register("IsOpen", function () { return Boolean; }, Popup, false); - return Popup; - })(Fayde.FrameworkElement); - Primitives.Popup = Popup; - Fayde.CoreLibrary.add(Popup); - Fayde.Markup.Content(Popup, Popup.ChildProperty); - var reactions; - (function (reactions) { - Fayde.UIReaction(Popup.IsOpenProperty, function (upd, ov, nv, popup) { - if (nv === true) { - popup.Opened.raiseAsync(popup, null); - popup.XamlNode.UpdateCatcher(); - } - else { - popup.Closed.raiseAsync(popup, null); - } - minerva.controls.popup.reactTo.isOpen(upd, ov, nv); - }, false); - Fayde.UIReaction(Popup.ChildProperty, function (upd, ov, nv, popup) { - var overlay = popup.XamlNode.EnsureOverlay(); - if (ov) { - Fayde.Providers.InheritedStore.ClearInheritedOnRemove(popup, ov.XamlNode); - overlay.Children.Remove(ov); - } - upd.setChild(nv ? nv.XamlNode.LayoutUpdater : null); - if (nv) { - popup.XamlNode.EnsureCatcher(); - overlay.Children.Add(nv); - Fayde.Providers.InheritedStore.PropagateInheritedOnAdd(popup, nv.XamlNode); - } - }, false, false); - Fayde.UIReaction(Popup.HorizontalOffsetProperty, minerva.controls.popup.reactTo.horizontalOffset, false); - Fayde.UIReaction(Popup.VerticalOffsetProperty, minerva.controls.popup.reactTo.verticalOffset, false); - })(reactions || (reactions = {})); - })(Primitives = Controls.Primitives || (Controls.Primitives = {})); - })(Controls = Fayde.Controls || (Fayde.Controls = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Controls; - (function (Controls) { - var Primitives; - (function (Primitives) { - Primitives.IScrollInfo_ = new nullstone.Interface("IScrollInfo"); - })(Primitives = Controls.Primitives || (Controls.Primitives = {})); - })(Controls = Fayde.Controls || (Fayde.Controls = {})); -})(Fayde || (Fayde = {})); -/// -/// -var Fayde; -(function (Fayde) { - var Controls; - (function (Controls) { - var ScrollContentPresenter = (function (_super) { - __extends(ScrollContentPresenter, _super); - function ScrollContentPresenter() { - _super.apply(this, arguments); - this._IsClipPropertySet = false; - this._ClippingRectangle = null; - } - ScrollContentPresenter.prototype.CreateLayoutUpdater = function () { - var updater = new minerva.controls.scrollcontentpresenter.ScrollContentPresenterUpdater(); - updater.assets.scrollData = this._ScrollData = new Controls.Primitives.ScrollData(); - return updater; - }; - Object.defineProperty(ScrollContentPresenter.prototype, "ScrollOwner", { - get: function () { return this._ScrollData.scrollOwner; }, - set: function (value) { this._ScrollData.scrollOwner = value; }, - enumerable: true, - configurable: true - }); - Object.defineProperty(ScrollContentPresenter.prototype, "CanHorizontallyScroll", { - get: function () { return this._ScrollData.canHorizontallyScroll; ; }, - set: function (value) { - var sd = this._ScrollData; - if (sd.canHorizontallyScroll !== value) { - sd.canHorizontallyScroll = value; - this.XamlNode.LayoutUpdater.invalidateMeasure(); - } - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(ScrollContentPresenter.prototype, "CanVerticallyScroll", { - get: function () { return this._ScrollData.canVerticallyScroll; }, - set: function (value) { - var sd = this._ScrollData; - if (sd.canVerticallyScroll !== value) { - sd.canVerticallyScroll = value; - this.XamlNode.LayoutUpdater.invalidateMeasure(); - } - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(ScrollContentPresenter.prototype, "ExtentWidth", { - get: function () { return this._ScrollData.extentWidth; }, - enumerable: true, - configurable: true - }); - Object.defineProperty(ScrollContentPresenter.prototype, "ExtentHeight", { - get: function () { return this._ScrollData.extentHeight; }, - enumerable: true, - configurable: true - }); - Object.defineProperty(ScrollContentPresenter.prototype, "ViewportWidth", { - get: function () { return this._ScrollData.viewportWidth; }, - enumerable: true, - configurable: true - }); - Object.defineProperty(ScrollContentPresenter.prototype, "ViewportHeight", { - get: function () { return this._ScrollData.viewportHeight; }, - enumerable: true, - configurable: true - }); - Object.defineProperty(ScrollContentPresenter.prototype, "HorizontalOffset", { - get: function () { return this._ScrollData.offsetX; }, - enumerable: true, - configurable: true - }); - Object.defineProperty(ScrollContentPresenter.prototype, "VerticalOffset", { - get: function () { return this._ScrollData.offsetY; }, - enumerable: true, - configurable: true - }); - ScrollContentPresenter.prototype.LineUp = function () { return this.SetVerticalOffset(this._ScrollData.offsetY - 16); }; - ScrollContentPresenter.prototype.LineDown = function () { return this.SetVerticalOffset(this._ScrollData.offsetY + 16); }; - ScrollContentPresenter.prototype.LineLeft = function () { return this.SetHorizontalOffset(this._ScrollData.offsetX - 16); }; - ScrollContentPresenter.prototype.LineRight = function () { return this.SetHorizontalOffset(this._ScrollData.offsetX + 16); }; - ScrollContentPresenter.prototype.MouseWheelUp = function () { return this.SetVerticalOffset(this._ScrollData.offsetY - 48); }; - ScrollContentPresenter.prototype.MouseWheelDown = function () { return this.SetVerticalOffset(this._ScrollData.offsetY + 48); }; - ScrollContentPresenter.prototype.MouseWheelLeft = function () { return this.SetHorizontalOffset(this._ScrollData.offsetX - 48); }; - ScrollContentPresenter.prototype.MouseWheelRight = function () { return this.SetHorizontalOffset(this._ScrollData.offsetX + 48); }; - ScrollContentPresenter.prototype.PageUp = function () { return this.SetVerticalOffset(this._ScrollData.offsetY - this._ScrollData.viewportHeight); }; - ScrollContentPresenter.prototype.PageDown = function () { return this.SetVerticalOffset(this._ScrollData.offsetY + this._ScrollData.viewportHeight); }; - ScrollContentPresenter.prototype.PageLeft = function () { return this.SetHorizontalOffset(this._ScrollData.offsetX - this._ScrollData.viewportWidth); }; - ScrollContentPresenter.prototype.PageRight = function () { return this.SetHorizontalOffset(this._ScrollData.offsetX + this._ScrollData.viewportWidth); }; - ScrollContentPresenter.prototype.MakeVisible = function (uie, viewport) { - var vis = new minerva.Rect(); - if (minerva.Rect.isEmpty(viewport) || !uie || uie === this || !this.XamlNode.IsAncestorOf(uie.XamlNode)) - return vis; - var generalTransform = uie.TransformToVisual(this); - var xpoint = generalTransform.Transform(viewport); - minerva.Size.copyTo(viewport, vis); - minerva.Point.copyTo(xpoint, vis); - return vis; - }; - ScrollContentPresenter.prototype.SetHorizontalOffset = function (offset) { - if (isNaN(offset)) - throw new ArgumentException("Offset is not a number."); - var sd = this._ScrollData; - if (!sd.canHorizontallyScroll) - return false; - offset = Math.max(0, Math.min(offset, sd.extentWidth - sd.viewportWidth)); - if (NumberEx.AreClose(this._ScrollData.offsetX, offset)) - return false; - sd.cachedOffsetX = offset; - this.XamlNode.LayoutUpdater.invalidateArrange(); - return true; - }; - ScrollContentPresenter.prototype.SetVerticalOffset = function (offset) { - if (isNaN(offset)) - throw new ArgumentException("Offset is not a number."); - var sd = this._ScrollData; - if (!sd.canVerticallyScroll) - return false; - offset = Math.max(0, Math.min(offset, sd.extentHeight - sd.viewportHeight)); - if (NumberEx.AreClose(this._ScrollData.offsetY, offset)) - return false; - sd.cachedOffsetY = offset; - this.XamlNode.LayoutUpdater.invalidateArrange(); - return true; - }; - ScrollContentPresenter.prototype.OnApplyTemplate = function () { - _super.prototype.OnApplyTemplate.call(this); - var sv; - if (this.TemplateOwner instanceof Controls.ScrollViewer) - sv = this.TemplateOwner; - else - return; - var content = this.Content; - var info = Controls.Primitives.IScrollInfo_.as(content); - if (!info && content instanceof Controls.ItemsPresenter) { - var ip = content; - var err = new BError(); - ip.XamlNode.ApplyTemplateWithError(err); - if (err.Message) - err.ThrowException(); - info = Controls.Primitives.IScrollInfo_.as(ip.Panel); - } - if (!info) - info = this; - info.CanHorizontallyScroll = sv.HorizontalScrollBarVisibility !== Controls.ScrollBarVisibility.Disabled; - info.CanVerticallyScroll = sv.VerticalScrollBarVisibility !== Controls.ScrollBarVisibility.Disabled; - info.ScrollOwner = sv; - sv.ScrollInfo = info; - sv.InvalidateScrollInfo(); - }; - return ScrollContentPresenter; - })(Controls.ContentPresenter); - Controls.ScrollContentPresenter = ScrollContentPresenter; - Fayde.CoreLibrary.add(ScrollContentPresenter); - nullstone.addTypeInterfaces(ScrollContentPresenter, Controls.Primitives.IScrollInfo_); - function computeScrollOffsetWithMinimalScroll(topView, bottomView, topChild, bottomChild) { - var flag = NumberEx.IsLessThanClose(topChild, topView) && NumberEx.IsLessThanClose(bottomChild, bottomView); - var flag1 = NumberEx.IsGreaterThanClose(topChild, topView) && NumberEx.IsGreaterThanClose(bottomChild, bottomView); - var flag4 = (bottomChild - topChild) > (bottomView - topView); - if ((!flag || flag4) && (!flag1 || !flag4)) { - if (flag || flag1) - return bottomChild - bottomView - topView; - return topView; - } - return topChild; - } - })(Controls = Fayde.Controls || (Fayde.Controls = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Controls; - (function (Controls) { - var Primitives; - (function (Primitives) { - var RangeBase = (function (_super) { - __extends(RangeBase, _super); - function RangeBase() { - var _this = this; - _super.call(this); - this.ValueChanged = new Fayde.RoutedPropertyChangedEvent(); - this._Coercer = new Controls.Internal.RangeCoercer(this, function (val) { return _this.SetCurrentValue(RangeBase.MaximumProperty, val); }, function (val) { return _this.SetCurrentValue(RangeBase.ValueProperty, val); }); - } - RangeBase.prototype.OnMinimumChanged = function (oldMin, newMin) { }; - RangeBase.prototype.OnMaximumChanged = function (oldMax, newMax) { }; - RangeBase.prototype.OnValueChanged = function (oldVal, newVal) { - this.ValueChanged.raise(this, new Fayde.RoutedPropertyChangedEventArgs(oldVal, newVal)); - }; - RangeBase.MinimumProperty = DependencyProperty.RegisterFull("Minimum", function () { return Number; }, RangeBase, 0, function (d, args) { return d._Coercer.OnMinimumChanged(args.OldValue, args.NewValue); }, undefined, false, numberValidator); - RangeBase.MaximumProperty = DependencyProperty.RegisterFull("Maximum", function () { return Number; }, RangeBase, 1, function (d, args) { return d._Coercer.OnMaximumChanged(args.OldValue, args.NewValue); }, undefined, false, numberValidator); - RangeBase.LargeChangeProperty = DependencyProperty.RegisterFull("LargeChange", function () { return Number; }, RangeBase, 1, undefined, undefined, false, changeValidator); - RangeBase.SmallChangeProperty = DependencyProperty.RegisterFull("SmallChange", function () { return Number; }, RangeBase, 0.1, undefined, undefined, false, changeValidator); - RangeBase.ValueProperty = DependencyProperty.RegisterFull("Value", function () { return Number; }, RangeBase, 0, function (d, args) { return d._Coercer.OnValueChanged(args.OldValue, args.NewValue); }, undefined, false, numberValidator); - return RangeBase; - })(Controls.Control); - Primitives.RangeBase = RangeBase; - Fayde.CoreLibrary.add(RangeBase); - function numberValidator(d, propd, value) { - if (typeof value !== "number") - return false; - if (isNaN(value)) - return false; - if (!isFinite(value)) - return false; - return true; - } - function changeValidator(d, propd, value) { - if (!numberValidator(d, propd, value)) - return false; - return value >= 0; - } - })(Primitives = Controls.Primitives || (Controls.Primitives = {})); - })(Controls = Fayde.Controls || (Fayde.Controls = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Controls; - (function (Controls) { - var Primitives; - (function (Primitives) { - var RepeatButton = (function (_super) { - __extends(RepeatButton, _super); - function RepeatButton() { - _super.call(this); - this._KeyboardCausingRepeat = false; - this._MouseCausingRepeat = false; - this._MousePosition = null; - this._IntervalID = null; - this._NewInterval = null; - this.ClickMode = Controls.ClickMode.Press; - this.DefaultStyleKey = RepeatButton; - } - RepeatButton.prototype.OnApplyTemplate = function () { - _super.prototype.OnApplyTemplate.call(this); - this.UpdateVisualState(false); - }; - RepeatButton.prototype.OnDelayChanged = function (args) { - if (args.NewValue < 0) - throw new ArgumentException("Delay Property cannot be negative."); - }; - RepeatButton.prototype.OnIntervalChanged = function (args) { - if (args.NewValue < 0) - throw new ArgumentException("Interval Property cannot be negative."); - this._NewInterval = args.NewValue; - }; - RepeatButton.prototype.OnIsEnabledChanged = function (e) { - _super.prototype.OnIsEnabledChanged.call(this, e); - this._KeyboardCausingRepeat = false; - this._MouseCausingRepeat = false; - this._UpdateRepeatState(); - }; - RepeatButton.prototype.OnKeyDown = function (e) { - if (e.Key === Fayde.Input.Key.Space && this.ClickMode !== Controls.ClickMode.Hover) { - this._KeyboardCausingRepeat = true; - this._UpdateRepeatState(); - } - _super.prototype.OnKeyDown.call(this, e); - }; - RepeatButton.prototype.OnKeyUp = function (e) { - _super.prototype.OnKeyUp.call(this, e); - if (e.Key === Fayde.Input.Key.Space && this.ClickMode !== Controls.ClickMode.Hover) { - this._KeyboardCausingRepeat = false; - this._UpdateRepeatState(); - } - this.UpdateVisualState(); - }; - RepeatButton.prototype.OnLostFocus = function (e) { - _super.prototype.OnLostFocus.call(this, e); - if (this.ClickMode !== Controls.ClickMode.Hover) { - this._KeyboardCausingRepeat = false; - this._MouseCausingRepeat = false; - this._UpdateRepeatState(); - } - }; - RepeatButton.prototype.OnMouseEnter = function (e) { - _super.prototype.OnMouseEnter.call(this, e); - if (this.ClickMode === Controls.ClickMode.Hover) { - this._MouseCausingRepeat = true; - this._UpdateRepeatState(); - } - this.UpdateVisualState(); - this._UpdateMousePosition(e); - }; - RepeatButton.prototype.OnMouseLeave = function (e) { - _super.prototype.OnMouseLeave.call(this, e); - if (this.ClickMode === Controls.ClickMode.Hover) { - this._MouseCausingRepeat = false; - this._UpdateRepeatState(); - } - this.UpdateVisualState(); - }; - RepeatButton.prototype.OnMouseLeftButtonDown = function (e) { - if (e.Handled) - return; - _super.prototype.OnMouseLeftButtonDown.call(this, e); - if (this.ClickMode !== Controls.ClickMode.Hover) { - this._MouseCausingRepeat = true; - this._UpdateRepeatState(); - } - }; - RepeatButton.prototype.OnMouseLeftButtonUp = function (e) { - if (e.Handled) - return; - _super.prototype.OnMouseLeftButtonUp.call(this, e); - if (this.ClickMode !== Controls.ClickMode.Hover) { - this._MouseCausingRepeat = false; - this._UpdateRepeatState(); - } - this.UpdateVisualState(); - }; - RepeatButton.prototype.OnMouseMove = function (e) { - this._UpdateMousePosition(e); - }; - RepeatButton.prototype._UpdateMousePosition = function (e) { - var curNode = this.XamlNode; - var parentNode = curNode; - while (curNode instanceof Fayde.FENode) { - parentNode = curNode; - curNode = curNode.ParentNode; - } - this._MousePosition = e.GetPosition(parentNode.XObject); - }; - RepeatButton.prototype._UpdateRepeatState = function () { - var _this = this; - if (this._MouseCausingRepeat || this._KeyboardCausingRepeat) { - if (this._IntervalID == null) - this._IntervalID = window.setInterval(function () { return _this._StartRepeatingAfterDelay(); }, this.Delay); - } - else { - if (this._IntervalID != null) - window.clearInterval(this._IntervalID); - this._IntervalID = null; - } - }; - RepeatButton.prototype._StartRepeatingAfterDelay = function () { - var _this = this; - window.clearInterval(this._IntervalID); - this._IntervalID = window.setInterval(function () { return _this._OnTimeout(); }, this.Interval); - }; - RepeatButton.prototype._OnTimeout = function () { - var _this = this; - if (this._NewInterval != null) { - window.clearInterval(this._IntervalID); - this._IntervalID = window.setInterval(function () { return _this._OnTimeout(); }, this._NewInterval); - this._NewInterval = null; - } - if (!this.IsPressed) - return; - if (this._KeyboardCausingRepeat) { - this.OnClick(); - return; - } - var els = Fayde.VisualTreeHelper.FindElementsInHostCoordinates(this._MousePosition, this); - if (els.indexOf(this) > -1) { - this.OnClick(); - } - }; - RepeatButton.DelayProperty = DependencyProperty.Register("Delay", function () { return Number; }, RepeatButton, 500, function (d, args) { return d.OnDelayChanged(args); }); - RepeatButton.IntervalProperty = DependencyProperty.Register("Interval", function () { return Number; }, RepeatButton, 33, function (d, args) { return d.OnIntervalChanged(args); }); - return RepeatButton; - })(Primitives.ButtonBase); - Primitives.RepeatButton = RepeatButton; - Fayde.CoreLibrary.add(RepeatButton); - Controls.TemplateVisualStates(RepeatButton, { GroupName: "CommonStates", Name: "Normal" }, { GroupName: "CommonStates", Name: "MouseOver" }, { GroupName: "CommonStates", Name: "Pressed" }, { GroupName: "CommonStates", Name: "Disabled" }, { GroupName: "FocusStates", Name: "Unfocused" }, { GroupName: "FocusStates", Name: "Focused" }); - })(Primitives = Controls.Primitives || (Controls.Primitives = {})); - })(Controls = Fayde.Controls || (Fayde.Controls = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Controls; - (function (Controls) { - var Primitives; - (function (Primitives) { - var Thumb = (function (_super) { - __extends(Thumb, _super); - function Thumb() { - _super.call(this); - this._PreviousPosition = null; - this._Origin = null; - this.DragCompleted = new Fayde.RoutedEvent(); - this.DragDelta = new Fayde.RoutedEvent(); - this.DragStarted = new Fayde.RoutedEvent(); - this.DefaultStyleKey = Thumb; - } - Thumb.prototype.OnApplyTemplate = function () { - _super.prototype.OnApplyTemplate.call(this); - this.UpdateVisualState(false); - }; - Thumb.prototype.OnDraggingChanged = function (args) { - this.UpdateVisualState(); - }; - Thumb.prototype.OnGotFocus = function (e) { - _super.prototype.OnGotFocus.call(this, e); - this._FocusChanged(Fayde.Surface.HasFocus(this)); - }; - Thumb.prototype.OnLostFocus = function (e) { - _super.prototype.OnLostFocus.call(this, e); - this._FocusChanged(Fayde.Surface.HasFocus(this)); - }; - Thumb.prototype._FocusChanged = function (hasFocus) { - this.SetCurrentValue(Thumb.IsFocusedProperty, hasFocus); - this.UpdateVisualState(); - }; - Thumb.prototype.OnLostMouseCapture = function (e) { - if (!this.IsDragging || !this.IsEnabled) - return; - this.SetCurrentValue(Thumb.IsDraggingProperty, false); - this._RaiseDragCompleted(false); - }; - Thumb.prototype.OnMouseEnter = function (e) { - if (this.IsEnabled) - this.UpdateVisualState(); - }; - Thumb.prototype.OnMouseLeave = function (e) { - if (this.IsEnabled) - this.UpdateVisualState(); - }; - Thumb.prototype.OnMouseLeftButtonDown = function (e) { - _super.prototype.OnMouseLeftButtonDown.call(this, e); - if (e.Handled || this.IsDragging || !this.IsEnabled) - return; - e.Handled = true; - this.CaptureMouse(); - this.SetCurrentValue(Thumb.IsDraggingProperty, true); - var vpNode = this.XamlNode.VisualParentNode; - this._Origin = this._PreviousPosition = e.GetPosition((vpNode) ? vpNode.XObject : undefined); - var success = false; - try { - this._RaiseDragStarted(); - success = true; - } - finally { - if (!success) - this.CancelDrag(); - } - }; - Thumb.prototype.OnMouseMove = function (e) { - if (!this.IsDragging) - return; - var vpNode = this.XamlNode.VisualParentNode; - var p = e.GetPosition((vpNode) ? vpNode.XObject : undefined); - if (!minerva.Point.isEqual(p, this._PreviousPosition)) { - this._RaiseDragDelta(p.x - this._PreviousPosition.x, p.y - this._PreviousPosition.y); - this._PreviousPosition = p; - } - }; - Thumb.prototype.OnLostTouchCapture = function (e) { - _super.prototype.OnLostTouchCapture.call(this, e); - if (!this.IsDragging || !this.IsEnabled) - return; - this.SetCurrentValue(Thumb.IsDraggingProperty, false); - this._RaiseDragCompleted(false); - }; - Thumb.prototype.OnTouchEnter = function (e) { - _super.prototype.OnTouchEnter.call(this, e); - if (this.IsEnabled) - this.UpdateVisualState(); - }; - Thumb.prototype.OnTouchLeave = function (e) { - _super.prototype.OnTouchLeave.call(this, e); - if (this.IsEnabled) - this.UpdateVisualState(); - }; - Thumb.prototype.OnTouchDown = function (e) { - _super.prototype.OnTouchDown.call(this, e); - if (e.Handled || this.IsDragging || !this.IsEnabled) - return; - e.Handled = true; - e.Device.Capture(this); - this.SetCurrentValue(Thumb.IsDraggingProperty, true); - var vpNode = this.XamlNode.VisualParentNode; - var tp = e.GetTouchPoint(vpNode ? vpNode.XObject : undefined); - this._Origin = this._PreviousPosition = tp.Position; - var success = false; - try { - this._RaiseDragStarted(); - success = true; - } - finally { - if (!success) - this.CancelDrag(); - } - }; - Thumb.prototype.OnTouchUp = function (e) { - _super.prototype.OnTouchUp.call(this, e); - if (e.Handled || !this.IsDragging || !this.IsEnabled) - return; - e.Handled = true; - e.Device.ReleaseCapture(this); - }; - Thumb.prototype.OnTouchMove = function (e) { - _super.prototype.OnTouchMove.call(this, e); - if (!this.IsDragging || e.Device.Captured !== this) - return; - var vpNode = this.XamlNode.VisualParentNode; - var tp = e.Device.GetTouchPoint(vpNode ? vpNode.XObject : undefined); - var pos = tp.Position; - if (!minerva.Point.isEqual(pos, this._PreviousPosition)) { - this._RaiseDragDelta(pos.x - this._PreviousPosition.x, pos.y - this._PreviousPosition.y); - this._PreviousPosition = pos; - } - }; - Thumb.prototype.CancelDrag = function () { - if (!this.IsDragging) - return; - this.SetCurrentValue(Thumb.IsDraggingProperty, false); - this._RaiseDragCompleted(true); - }; - Thumb.prototype._RaiseDragStarted = function () { - this.DragStarted.raise(this, new Primitives.DragStartedEventArgs(this._Origin.x, this._Origin.y)); - }; - Thumb.prototype._RaiseDragDelta = function (x, y) { - this.DragDelta.raise(this, new Primitives.DragDeltaEventArgs(x, y)); - }; - Thumb.prototype._RaiseDragCompleted = function (canceled) { - this.DragCompleted.raise(this, new Primitives.DragCompletedEventArgs(this._PreviousPosition.x - this._Origin.x, this._PreviousPosition.y - this._Origin.y, canceled)); - }; - Thumb.prototype.GoToStateCommon = function (gotoFunc) { - if (!this.IsEnabled) - return gotoFunc("Disabled"); - if (this.IsDragging) - return gotoFunc("Pressed"); - if (this.IsMouseOver) - return gotoFunc("MouseOver"); - return gotoFunc("Normal"); - }; - Thumb.IsDraggingProperty = DependencyProperty.RegisterReadOnly("IsDragging", function () { return Boolean; }, Thumb, false, function (d, args) { return d.OnDraggingChanged(args); }); - Thumb.IsFocusedProperty = DependencyProperty.RegisterReadOnly("IsFocused", function () { return Boolean; }, Thumb); - return Thumb; - })(Controls.Control); - Primitives.Thumb = Thumb; - Fayde.CoreLibrary.add(Thumb); - Controls.TemplateVisualStates(Thumb, { GroupName: "CommonStates", Name: "Normal" }, { GroupName: "CommonStates", Name: "MouseOver" }, { GroupName: "CommonStates", Name: "Pressed" }, { GroupName: "CommonStates", Name: "Disabled" }, { GroupName: "FocusStates", Name: "Unfocused" }, { GroupName: "FocusStates", Name: "Focused" }); - })(Primitives = Controls.Primitives || (Controls.Primitives = {})); - })(Controls = Fayde.Controls || (Fayde.Controls = {})); -})(Fayde || (Fayde = {})); -/// -/// -/// -var Fayde; -(function (Fayde) { - var Controls; - (function (Controls) { - var Primitives; - (function (Primitives) { - var ScrollBar = (function (_super) { - __extends(ScrollBar, _super); - function ScrollBar() { - _super.call(this); - this._DragValue = 0; - this.Scroll = new Fayde.RoutedEvent(); - this.DefaultStyleKey = ScrollBar; - this.SizeChanged.on(this._HandleSizeChanged, this); - } - Object.defineProperty(ScrollBar.prototype, "IsDragging", { - get: function () { - if (this.$HorizontalThumb) - return this.$HorizontalThumb.IsDragging; - if (this.$VerticalThumb) - return this.$VerticalThumb.IsDragging; - return false; - }, - enumerable: true, - configurable: true - }); - ScrollBar.prototype.OnApplyTemplate = function () { - _super.prototype.OnApplyTemplate.call(this); - this.$HorizontalTemplate = this.GetTemplateChild("HorizontalRoot", Fayde.FrameworkElement); - this.$HorizontalLargeIncrease = this.GetTemplateChild("HorizontalLargeIncrease", Primitives.RepeatButton); - this.$HorizontalLargeDecrease = this.GetTemplateChild("HorizontalLargeDecrease", Primitives.RepeatButton); - this.$HorizontalSmallIncrease = this.GetTemplateChild("HorizontalSmallIncrease", Primitives.RepeatButton); - this.$HorizontalSmallDecrease = this.GetTemplateChild("HorizontalSmallDecrease", Primitives.RepeatButton); - this.$HorizontalThumb = this.GetTemplateChild("HorizontalThumb", Primitives.Thumb); - this.$VerticalTemplate = this.GetTemplateChild("VerticalRoot", Fayde.FrameworkElement); - this.$VerticalLargeIncrease = this.GetTemplateChild("VerticalLargeIncrease", Primitives.RepeatButton); - this.$VerticalLargeDecrease = this.GetTemplateChild("VerticalLargeDecrease", Primitives.RepeatButton); - this.$VerticalSmallIncrease = this.GetTemplateChild("VerticalSmallIncrease", Primitives.RepeatButton); - this.$VerticalSmallDecrease = this.GetTemplateChild("VerticalSmallDecrease", Primitives.RepeatButton); - this.$VerticalThumb = this.GetTemplateChild("VerticalThumb", Primitives.Thumb); - if (this.$HorizontalThumb) { - this.$HorizontalThumb.DragStarted.on(this._OnThumbDragStarted, this); - this.$HorizontalThumb.DragDelta.on(this._OnThumbDragDelta, this); - this.$HorizontalThumb.DragCompleted.on(this._OnThumbDragCompleted, this); - } - if (this.$HorizontalLargeIncrease) { - this.$HorizontalLargeIncrease.Click.on(this._LargeIncrement, this); - } - if (this.$HorizontalLargeDecrease) { - this.$HorizontalLargeDecrease.Click.on(this._LargeDecrement, this); - } - if (this.$HorizontalSmallIncrease) { - this.$HorizontalSmallIncrease.Click.on(this._SmallIncrement, this); - } - if (this.$HorizontalSmallDecrease) { - this.$HorizontalSmallDecrease.Click.on(this._SmallDecrement, this); - } - if (this.$VerticalThumb) { - this.$VerticalThumb.DragStarted.on(this._OnThumbDragStarted, this); - this.$VerticalThumb.DragDelta.on(this._OnThumbDragDelta, this); - this.$VerticalThumb.DragCompleted.on(this._OnThumbDragCompleted, this); - } - if (this.$VerticalLargeIncrease) { - this.$VerticalLargeIncrease.Click.on(this._LargeIncrement, this); - } - if (this.$VerticalLargeDecrease) { - this.$VerticalLargeDecrease.Click.on(this._LargeDecrement, this); - } - if (this.$VerticalSmallIncrease) { - this.$VerticalSmallIncrease.Click.on(this._SmallIncrement, this); - } - if (this.$VerticalSmallDecrease) { - this.$VerticalSmallDecrease.Click.on(this._SmallDecrement, this); - } - this._OnOrientationChanged(); - this.UpdateVisualState(false); - }; - ScrollBar.prototype.OnMaximumChanged = function (oldMax, newMax) { - _super.prototype.OnMaximumChanged.call(this, oldMax, newMax); - this._UpdateTrackLayout(); - }; - ScrollBar.prototype.OnMinimumChanged = function (oldMin, newMin) { - _super.prototype.OnMinimumChanged.call(this, oldMin, newMin); - this._UpdateTrackLayout(); - }; - ScrollBar.prototype.OnValueChanged = function (oldValue, newValue) { - _super.prototype.OnValueChanged.call(this, oldValue, newValue); - this._UpdateTrackLayout(); - }; - ScrollBar.prototype._OnThumbDragStarted = function (sender, e) { - this._DragValue = this.Value; - }; - ScrollBar.prototype._OnThumbDragDelta = function (sender, e) { - var change = 0; - var zoomFactor = 1; - var num = zoomFactor; - var max = this.Maximum; - var min = this.Minimum; - var diff = max - min; - var trackLength = this._GetTrackLength(); - var isHorizontal = this.Orientation === Fayde.Orientation.Horizontal; - if (this.$VerticalThumb && !isHorizontal) { - change = num * e.VerticalChange / (trackLength - this.$VerticalThumb.ActualHeight) * diff; - } - if (this.$HorizontalThumb && isHorizontal) { - change = num * e.HorizontalChange / (trackLength - this.$HorizontalThumb.ActualWidth) * diff; - } - if (!isNaN(change) && isFinite(change)) { - this._DragValue += change; - var num1 = Math.min(max, Math.max(min, this._DragValue)); - if (num1 !== this.Value) { - this.Value = num1; - this._RaiseScroll(Primitives.ScrollEventType.ThumbTrack); - } - } - }; - ScrollBar.prototype._OnThumbDragCompleted = function (sender, e) { - this._RaiseScroll(Primitives.ScrollEventType.EndScroll); - }; - ScrollBar.prototype._SmallDecrement = function (sender, e) { - var curValue = this.Value; - var num = Math.max(curValue - this.SmallChange, this.Minimum); - if (curValue !== num) { - this.SetCurrentValue(Primitives.RangeBase.ValueProperty, num); - this._RaiseScroll(Primitives.ScrollEventType.SmallDecrement); - } - }; - ScrollBar.prototype._SmallIncrement = function (sender, e) { - var curValue = this.Value; - var num = Math.min(curValue + this.SmallChange, this.Maximum); - if (curValue !== num) { - this.SetCurrentValue(Primitives.RangeBase.ValueProperty, num); - this._RaiseScroll(Primitives.ScrollEventType.SmallIncrement); - } - }; - ScrollBar.prototype._LargeDecrement = function (sender, e) { - var curValue = this.Value; - var num = Math.max(curValue - this.LargeChange, this.Minimum); - if (curValue !== num) { - this.SetCurrentValue(Primitives.RangeBase.ValueProperty, num); - this._RaiseScroll(Primitives.ScrollEventType.LargeDecrement); - } - }; - ScrollBar.prototype._LargeIncrement = function (sender, e) { - var curValue = this.Value; - var num = Math.min(curValue + this.LargeChange, this.Maximum); - if (curValue !== num) { - this.SetCurrentValue(Primitives.RangeBase.ValueProperty, num); - this._RaiseScroll(Primitives.ScrollEventType.LargeIncrement); - } - }; - ScrollBar.prototype._HandleSizeChanged = function (sender, e) { - this._UpdateTrackLayout(); - }; - ScrollBar.prototype._OnOrientationChanged = function () { - var isHorizontal = this.Orientation === Fayde.Orientation.Horizontal; - if (this.$HorizontalTemplate) { - this.$HorizontalTemplate.Visibility = isHorizontal ? Fayde.Visibility.Visible : Fayde.Visibility.Collapsed; - } - if (this.$VerticalTemplate) { - this.$VerticalTemplate.Visibility = isHorizontal ? Fayde.Visibility.Collapsed : Fayde.Visibility.Visible; - } - this._UpdateTrackLayout(); - }; - ScrollBar.prototype._UpdateTrackLayout = function () { - var trackLength = this._GetTrackLength(); - var max = this.Maximum; - var min = this.Minimum; - var val = this.Value; - var multiplier = (val - min) / (max - min); - var thumbSize = this._UpdateThumbSize(trackLength); - var isHorizontal = this.Orientation === Fayde.Orientation.Horizontal; - if (isHorizontal && this.$HorizontalLargeDecrease && this.$HorizontalThumb) { - this.$HorizontalLargeDecrease.Width = Math.max(0, multiplier * (trackLength - thumbSize)); - } - else if (!isHorizontal && this.$VerticalLargeDecrease && this.$VerticalThumb) { - this.$VerticalLargeDecrease.Height = Math.max(0, multiplier * (trackLength - thumbSize)); - } - }; - ScrollBar.prototype._UpdateThumbSize = function (trackLength) { - var result = Number.NaN; - var hideThumb = trackLength <= 0; - if (trackLength > 0) { - var isHorizontal = this.Orientation === Fayde.Orientation.Horizontal; - var max = this.Maximum; - var min = this.Minimum; - if (isHorizontal && this.$HorizontalThumb) { - if (max - min !== 0) - result = Math.max(this.$HorizontalThumb.MinWidth, this._ConvertViewportSizeToDisplayUnits(trackLength)); - if (max - min === 0 || result > this.ActualWidth || trackLength <= this.$HorizontalThumb.MinWidth) { - hideThumb = true; - } - else { - this.$HorizontalThumb.Visibility = Fayde.Visibility.Visible; - this.$HorizontalThumb.Width = result; - } - } - else if (!isHorizontal && this.$VerticalThumb) { - if (max - min !== 0) - result = Math.max(this.$VerticalThumb.MinHeight, this._ConvertViewportSizeToDisplayUnits(trackLength)); - if (max - min === 0 || result > this.ActualHeight || trackLength <= this.$VerticalThumb.MinHeight) { - hideThumb = true; - } - else { - this.$VerticalThumb.Visibility = Fayde.Visibility.Visible; - this.$VerticalThumb.Height = result; - } - } - } - if (hideThumb) { - if (this.$HorizontalThumb) { - this.$HorizontalThumb.Visibility = Fayde.Visibility.Collapsed; - } - if (this.$VerticalThumb) { - this.$VerticalThumb.Visibility = Fayde.Visibility.Collapsed; - } - } - return result; - }; - ScrollBar.prototype._GetTrackLength = function () { - var actual = NaN; - if (this.Orientation === Fayde.Orientation.Horizontal) { - actual = this.ActualWidth; - if (this.$HorizontalSmallDecrease) { - var thickness = this.$HorizontalSmallDecrease.Margin; - actual = actual - (this.$HorizontalSmallDecrease.ActualWidth + thickness.left + thickness.right); - } - if (this.$HorizontalSmallIncrease) { - var thickness = this.$HorizontalSmallIncrease.Margin; - actual = actual - (this.$HorizontalSmallIncrease.ActualWidth + thickness.left + thickness.right); - } - } - else { - actual = this.ActualHeight; - if (this.$VerticalSmallDecrease) { - var thickness = this.$VerticalSmallDecrease.Margin; - actual = actual - (this.$VerticalSmallDecrease.ActualHeight + thickness.top + thickness.bottom); - } - if (this.$VerticalSmallIncrease) { - var thickness = this.$VerticalSmallIncrease.Margin; - actual = actual - (this.$VerticalSmallIncrease.ActualHeight + thickness.top + thickness.bottom); - } - } - return actual; - }; - ScrollBar.prototype._ConvertViewportSizeToDisplayUnits = function (trackLength) { - var viewportSize = this.ViewportSize; - return trackLength * viewportSize / (viewportSize + this.Maximum - this.Minimum); - }; - ScrollBar.prototype._RaiseScroll = function (type) { - var args = new Primitives.ScrollEventArgs(type, this.Value); - args.OriginalSource = this; - this.Scroll.raise(this, args); - }; - ScrollBar.OrientationProperty = DependencyProperty.Register("Orientation", function () { return new Fayde.Enum(Fayde.Orientation); }, ScrollBar, Fayde.Orientation.Horizontal, function (d, args) { return d._OnOrientationChanged(); }); - ScrollBar.ViewportSizeProperty = DependencyProperty.Register("ViewportSize", function () { return Number; }, ScrollBar, 0, function (d, args) { return d._UpdateTrackLayout(); }); - return ScrollBar; - })(Primitives.RangeBase); - Primitives.ScrollBar = ScrollBar; - Fayde.CoreLibrary.add(ScrollBar); - Controls.TemplateVisualStates(ScrollBar, { GroupName: "CommonStates", Name: "Normal" }, { GroupName: "CommonStates", Name: "MouseOver" }, { GroupName: "CommonStates", Name: "Disabled" }); - Controls.TemplateParts(ScrollBar, { Name: "VerticalRoot", Type: Fayde.FrameworkElement }, { Name: "VerticalLargeIncrease", Type: Primitives.RepeatButton }, { Name: "VerticalLargeDecrease", Type: Primitives.RepeatButton }, { Name: "VerticalSmallIncrease", Type: Primitives.RepeatButton }, { Name: "VerticalSmallDecrease", Type: Primitives.RepeatButton }, { Name: "VerticalThumb", Type: Primitives.Thumb }, { Name: "HorizontalRoot", Type: Fayde.FrameworkElement }, { Name: "HorizontalLargeIncrease", Type: Primitives.RepeatButton }, { Name: "HorizontalLargeDecrease", Type: Primitives.RepeatButton }, { Name: "HorizontalSmallIncrease", Type: Primitives.RepeatButton }, { Name: "HorizontalSmallDecrease", Type: Primitives.RepeatButton }, { Name: "HorizontalThumb", Type: Primitives.Thumb }); - })(Primitives = Controls.Primitives || (Controls.Primitives = {})); - })(Controls = Fayde.Controls || (Fayde.Controls = {})); -})(Fayde || (Fayde = {})); -/// -/// -/// -var Fayde; -(function (Fayde) { - var Controls; - (function (Controls) { - var ScrollViewer = (function (_super) { - __extends(ScrollViewer, _super); - function ScrollViewer() { - _super.call(this); - this.$TemplatedParentHandlesScrolling = false; - this._Delta = new Point(); - this._TouchInitialOffset = new Point(); - this.DefaultStyleKey = ScrollViewer; - } - ScrollViewer._ScrollBarVisibilityChanged = function (d, args) { - if (!d) - return; - if (d instanceof ScrollViewer) { - var sv = d; - sv.XamlNode.LayoutUpdater.invalidateMeasure(); - var scrollInfo = sv.ScrollInfo; - if (scrollInfo) { - scrollInfo.CanHorizontallyScroll = sv.HorizontalScrollBarVisibility !== Controls.ScrollBarVisibility.Disabled; - scrollInfo.CanVerticallyScroll = sv.VerticalScrollBarVisibility !== Controls.ScrollBarVisibility.Disabled; - } - sv._UpdateScrollBarVisibility(); - return; - } - if (d instanceof Controls.ListBox) { - var listbox = d; - if (listbox.$TemplateScrollViewer) - listbox.$TemplateScrollViewer.SetValue(args.Property, args.NewValue); - return; - } - }; - ScrollViewer.GetHorizontalScrollBarVisibility = function (d) { return d.GetValue(ScrollViewer.HorizontalScrollBarVisibilityProperty); }; - ScrollViewer.SetHorizontalScrollBarVisibility = function (d, value) { d.SetValue(ScrollViewer.HorizontalScrollBarVisibilityProperty, value); }; - Object.defineProperty(ScrollViewer.prototype, "HorizontalScrollBarVisibility", { - get: function () { return this.GetValue(ScrollViewer.HorizontalScrollBarVisibilityProperty); }, - set: function (value) { this.SetValue(ScrollViewer.HorizontalScrollBarVisibilityProperty, value); }, - enumerable: true, - configurable: true - }); - ScrollViewer.GetVerticalScrollBarVisibility = function (d) { return d.GetValue(ScrollViewer.VerticalScrollBarVisibilityProperty); }; - ScrollViewer.SetVerticalScrollBarVisibility = function (d, value) { d.SetValue(ScrollViewer.VerticalScrollBarVisibilityProperty, value); }; - Object.defineProperty(ScrollViewer.prototype, "VerticalScrollBarVisibility", { - get: function () { return this.GetValue(ScrollViewer.VerticalScrollBarVisibilityProperty); }, - set: function (value) { this.SetValue(ScrollViewer.VerticalScrollBarVisibilityProperty, value); }, - enumerable: true, - configurable: true - }); - Object.defineProperty(ScrollViewer.prototype, "ScrollInfo", { - get: function () { return this._ScrollInfo; }, - set: function (value) { - this._ScrollInfo = value; - if (value) { - value.CanHorizontallyScroll = this.HorizontalScrollBarVisibility !== Controls.ScrollBarVisibility.Disabled; - value.CanVerticallyScroll = this.VerticalScrollBarVisibility !== Controls.ScrollBarVisibility.Disabled; - } - }, - enumerable: true, - configurable: true - }); - ScrollViewer.prototype.InvalidateScrollInfo = function () { - var scrollInfo = this.ScrollInfo; - if (scrollInfo) { - this.SetCurrentValue(ScrollViewer.ExtentWidthProperty, scrollInfo.ExtentWidth); - this.SetCurrentValue(ScrollViewer.ExtentHeightProperty, scrollInfo.ExtentHeight); - this.SetCurrentValue(ScrollViewer.ViewportWidthProperty, scrollInfo.ViewportWidth); - this.SetCurrentValue(ScrollViewer.ViewportHeightProperty, scrollInfo.ViewportHeight); - this._UpdateScrollBar(Fayde.Orientation.Horizontal, scrollInfo.HorizontalOffset); - this._UpdateScrollBar(Fayde.Orientation.Vertical, scrollInfo.VerticalOffset); - this._UpdateScrollBarVisibility(); - } - var lu = this.XamlNode.LayoutUpdater; - var w = Math.max(0, this.ExtentWidth - this.ViewportWidth); - if (w !== this.ScrollableWidth) { - this.SetCurrentValue(ScrollViewer.ScrollableWidthProperty, w); - lu.invalidateMeasure(); - } - var h = Math.max(0, this.ExtentHeight - this.ViewportHeight); - if (h !== this.ScrollableHeight) { - this.SetCurrentValue(ScrollViewer.ScrollableHeightProperty, h); - lu.invalidateMeasure(); - } - }; - ScrollViewer.prototype._UpdateScrollBarVisibility = function () { - var lu = this.XamlNode.LayoutUpdater; - var scrollInfo = this.ScrollInfo; - var horizontalVisibility = Fayde.Visibility.Visible; - var hsbv = this.HorizontalScrollBarVisibility; - switch (hsbv) { - case Controls.ScrollBarVisibility.Visible: - break; - case Controls.ScrollBarVisibility.Disabled: - case Controls.ScrollBarVisibility.Hidden: - horizontalVisibility = Fayde.Visibility.Collapsed; - break; - case Controls.ScrollBarVisibility.Auto: - default: - horizontalVisibility = (!scrollInfo || scrollInfo.ExtentWidth <= scrollInfo.ViewportWidth) ? Fayde.Visibility.Collapsed : Fayde.Visibility.Visible; - break; - } - if (horizontalVisibility !== this.ComputedHorizontalScrollBarVisibility) { - this.SetCurrentValue(ScrollViewer.ComputedHorizontalScrollBarVisibilityProperty, horizontalVisibility); - lu.invalidateMeasure(); - } - var verticalVisibility = Fayde.Visibility.Visible; - var vsbv = this.VerticalScrollBarVisibility; - switch (vsbv) { - case Controls.ScrollBarVisibility.Visible: - break; - case Controls.ScrollBarVisibility.Disabled: - case Controls.ScrollBarVisibility.Hidden: - verticalVisibility = Fayde.Visibility.Collapsed; - break; - case Controls.ScrollBarVisibility.Auto: - default: - verticalVisibility = (!scrollInfo || scrollInfo.ExtentHeight <= scrollInfo.ViewportHeight) ? Fayde.Visibility.Collapsed : Fayde.Visibility.Visible; - break; - } - if (verticalVisibility !== this.ComputedVerticalScrollBarVisibility) { - this.SetCurrentValue(ScrollViewer.ComputedVerticalScrollBarVisibilityProperty, verticalVisibility); - lu.invalidateMeasure(); - } - }; - ScrollViewer.prototype._UpdateScrollBar = function (orientation, value) { - var propd; - var sb; - if (orientation === Fayde.Orientation.Horizontal) { - propd = ScrollViewer.HorizontalOffsetProperty; - sb = this.$HorizontalScrollBar; - } - else { - propd = ScrollViewer.VerticalOffsetProperty; - sb = this.$VerticalScrollBar; - } - try { - this.SetCurrentValue(propd, value); - if (sb) - sb.SetCurrentValue(Controls.Primitives.RangeBase.ValueProperty, value); - } - finally { - } - }; - ScrollViewer.prototype.OnApplyTemplate = function () { - var _this = this; - _super.prototype.OnApplyTemplate.call(this); - this.$ScrollContentPresenter = this.GetTemplateChild("ScrollContentPresenter", Controls.ScrollContentPresenter); - this.$HorizontalScrollBar = this.GetTemplateChild("HorizontalScrollBar", Controls.Primitives.ScrollBar); - if (this.$HorizontalScrollBar) { - this.$HorizontalScrollBar.Scroll.on(function (sender, e) { return _this._HandleScroll(Fayde.Orientation.Horizontal, e); }, this); - } - this.$VerticalScrollBar = this.GetTemplateChild("VerticalScrollBar", Controls.Primitives.ScrollBar); - if (this.$VerticalScrollBar) { - this.$VerticalScrollBar.Scroll.on(function (sender, e) { return _this._HandleScroll(Fayde.Orientation.Vertical, e); }, this); - } - this._UpdateScrollBarVisibility(); - }; - ScrollViewer.prototype.OnMouseLeftButtonDown = function (e) { - if (!e.Handled && this.Focus()) - e.Handled = true; - _super.prototype.OnMouseLeftButtonDown.call(this, e); - }; - ScrollViewer.prototype.OnMouseWheel = function (e) { - _super.prototype.OnMouseWheel.call(this, e); - if (e.Handled) - return; - var scrollInfo = this.ScrollInfo; - if (!scrollInfo) - return; - if ((e.Delta > 0 && scrollInfo.VerticalOffset !== 0) || (e.Delta < 0 && scrollInfo.VerticalOffset < this.ScrollableHeight)) { - if (e.Delta >= 0) - scrollInfo.MouseWheelUp(); - else - scrollInfo.MouseWheelDown(); - e.Handled = true; - } - }; - ScrollViewer.prototype.OnTouchDown = function (e) { - _super.prototype.OnTouchDown.call(this, e); - var scrollInfo = this.ScrollInfo; - if (e.Handled || !this.IsEnabled || !scrollInfo) - return; - e.Handled = true; - this.Focus(); - e.Device.Capture(this); - var offset = this._TouchInitialOffset; - offset.x = scrollInfo.HorizontalOffset; - offset.y = scrollInfo.VerticalOffset; - this._TouchOrigin = e.GetTouchPoint(this).Position; - }; - ScrollViewer.prototype.OnTouchUp = function (e) { - _super.prototype.OnTouchUp.call(this, e); - if (e.Handled || !this.IsEnabled) - return; - e.Handled = true; - e.Device.ReleaseCapture(this); - }; - ScrollViewer.prototype.OnTouchMove = function (e) { - _super.prototype.OnTouchMove.call(this, e); - if (e.Handled || e.Device.Captured !== this) - return; - var tp = e.GetTouchPoint(this); - var pos = tp.Position; - var delta = this._Delta; - var origin = this._TouchOrigin; - delta.x = pos.x - origin.x; - delta.y = pos.y - origin.y; - this.ScrollToHorizontalOffset(delta.x); - this.ScrollToVerticalOffset(delta.y); - }; - ScrollViewer.prototype.OnKeyDown = function (e) { - _super.prototype.OnKeyDown.call(this, e); - if (e.Handled) - return; - if (this.$TemplatedParentHandlesScrolling) - return; - var orientation = Fayde.Orientation.Vertical; - var scrollEventType = Controls.Primitives.ScrollEventType.ThumbTrack; - switch (e.Key) { - case Fayde.Input.Key.PageUp: - scrollEventType = Controls.Primitives.ScrollEventType.LargeDecrement; - break; - case Fayde.Input.Key.PageDown: - scrollEventType = Controls.Primitives.ScrollEventType.LargeIncrement; - break; - case Fayde.Input.Key.End: - if (!e.Modifiers.Ctrl) - orientation = Fayde.Orientation.Horizontal; - scrollEventType = Controls.Primitives.ScrollEventType.Last; - break; - case Fayde.Input.Key.Home: - if (!e.Modifiers.Ctrl) - orientation = Fayde.Orientation.Horizontal; - scrollEventType = Controls.Primitives.ScrollEventType.First; - break; - case Fayde.Input.Key.Left: - orientation = Fayde.Orientation.Horizontal; - scrollEventType = Controls.Primitives.ScrollEventType.SmallDecrement; - case Fayde.Input.Key.Up: - scrollEventType = Controls.Primitives.ScrollEventType.SmallDecrement; - break; - case Fayde.Input.Key.Right: - orientation = Fayde.Orientation.Horizontal; - scrollEventType = Controls.Primitives.ScrollEventType.SmallIncrement; - case Fayde.Input.Key.Down: - scrollEventType = Controls.Primitives.ScrollEventType.SmallIncrement; - break; - } - if (scrollEventType !== Controls.Primitives.ScrollEventType.ThumbTrack) - e.Handled = !!this._HandleScroll(orientation, new Controls.Primitives.ScrollEventArgs(scrollEventType, 0)); - }; - ScrollViewer.prototype.ScrollInDirection = function (key) { - switch (key) { - case Fayde.Input.Key.PageUp: - this.PageUp(); - break; - case Fayde.Input.Key.PageDown: - this.PageDown(); - break; - case Fayde.Input.Key.End: - this.PageEnd(); - break; - case Fayde.Input.Key.Home: - this.PageHome(); - break; - case Fayde.Input.Key.Left: - this.LineLeft(); - break; - case Fayde.Input.Key.Up: - this.LineUp(); - break; - case Fayde.Input.Key.Right: - this.LineRight(); - break; - case Fayde.Input.Key.Down: - this.LineDown(); - break; - } - }; - ScrollViewer.prototype.ScrollToHorizontalOffset = function (offset) { this._HandleHorizontalScroll(new Controls.Primitives.ScrollEventArgs(Controls.Primitives.ScrollEventType.ThumbPosition, offset)); }; - ScrollViewer.prototype.ScrollToVerticalOffset = function (offset) { this._HandleVerticalScroll(new Controls.Primitives.ScrollEventArgs(Controls.Primitives.ScrollEventType.ThumbPosition, offset)); }; - ScrollViewer.prototype.LineUp = function () { this._HandleVerticalScroll(new Controls.Primitives.ScrollEventArgs(Controls.Primitives.ScrollEventType.SmallDecrement, 0)); }; - ScrollViewer.prototype.LineDown = function () { this._HandleVerticalScroll(new Controls.Primitives.ScrollEventArgs(Controls.Primitives.ScrollEventType.SmallIncrement, 0)); }; - ScrollViewer.prototype.LineLeft = function () { this._HandleHorizontalScroll(new Controls.Primitives.ScrollEventArgs(Controls.Primitives.ScrollEventType.SmallDecrement, 0)); }; - ScrollViewer.prototype.LineRight = function () { this._HandleHorizontalScroll(new Controls.Primitives.ScrollEventArgs(Controls.Primitives.ScrollEventType.SmallIncrement, 0)); }; - ScrollViewer.prototype.PageHome = function () { this._HandleHorizontalScroll(new Controls.Primitives.ScrollEventArgs(Controls.Primitives.ScrollEventType.First, 0)); }; - ScrollViewer.prototype.PageEnd = function () { this._HandleHorizontalScroll(new Controls.Primitives.ScrollEventArgs(Controls.Primitives.ScrollEventType.Last, 0)); }; - ScrollViewer.prototype.PageUp = function () { this._HandleVerticalScroll(new Controls.Primitives.ScrollEventArgs(Controls.Primitives.ScrollEventType.LargeDecrement, 0)); }; - ScrollViewer.prototype.PageDown = function () { this._HandleVerticalScroll(new Controls.Primitives.ScrollEventArgs(Controls.Primitives.ScrollEventType.LargeIncrement, 0)); }; - ScrollViewer.prototype.PageLeft = function () { this._HandleHorizontalScroll(new Controls.Primitives.ScrollEventArgs(Controls.Primitives.ScrollEventType.LargeDecrement, 0)); }; - ScrollViewer.prototype.PageRight = function () { this._HandleHorizontalScroll(new Controls.Primitives.ScrollEventArgs(Controls.Primitives.ScrollEventType.LargeIncrement, 0)); }; - ScrollViewer.prototype._HandleScroll = function (orientation, e) { - if (orientation !== Fayde.Orientation.Horizontal) - return this._HandleVerticalScroll(e); - return this._HandleHorizontalScroll(e); - }; - ScrollViewer.prototype._HandleHorizontalScroll = function (e) { - var scrollInfo = this.ScrollInfo; - if (!scrollInfo) - return false; - var offset = scrollInfo.HorizontalOffset; - var newValue = offset; - switch (e.ScrollEventType) { - case Controls.Primitives.ScrollEventType.SmallDecrement: - return scrollInfo.LineLeft(); - case Controls.Primitives.ScrollEventType.SmallIncrement: - return scrollInfo.LineRight(); - case Controls.Primitives.ScrollEventType.LargeDecrement: - return scrollInfo.PageLeft(); - case Controls.Primitives.ScrollEventType.LargeIncrement: - return scrollInfo.PageRight(); - case Controls.Primitives.ScrollEventType.ThumbPosition: - case Controls.Primitives.ScrollEventType.ThumbTrack: - newValue = e.Value; - break; - case Controls.Primitives.ScrollEventType.First: - newValue = Number.NEGATIVE_INFINITY; - break; - case Controls.Primitives.ScrollEventType.Last: - newValue = Number.POSITIVE_INFINITY; - break; - } - newValue = Math.max(newValue, 0); - newValue = Math.min(this.ScrollableWidth, newValue); - if (NumberEx.AreClose(offset, newValue)) - return false; - scrollInfo.SetHorizontalOffset(newValue); - return true; - }; - ScrollViewer.prototype._HandleVerticalScroll = function (e) { - var scrollInfo = this.ScrollInfo; - if (!scrollInfo) - return false; - var offset = scrollInfo.VerticalOffset; - var newValue = offset; - switch (e.ScrollEventType) { - case Controls.Primitives.ScrollEventType.SmallDecrement: - return scrollInfo.LineUp(); - case Controls.Primitives.ScrollEventType.SmallIncrement: - return scrollInfo.LineDown(); - break; - case Controls.Primitives.ScrollEventType.LargeDecrement: - return scrollInfo.PageUp(); - break; - case Controls.Primitives.ScrollEventType.LargeIncrement: - return scrollInfo.PageDown(); - break; - case Controls.Primitives.ScrollEventType.ThumbPosition: - case Controls.Primitives.ScrollEventType.ThumbTrack: - newValue = e.Value; - break; - case Controls.Primitives.ScrollEventType.First: - newValue = Number.NEGATIVE_INFINITY; - break; - case Controls.Primitives.ScrollEventType.Last: - newValue = Number.POSITIVE_INFINITY; - break; - } - newValue = Math.max(newValue, 0); - newValue = Math.min(this.ScrollableHeight, newValue); - if (NumberEx.AreClose(offset, newValue)) - return false; - return scrollInfo.SetVerticalOffset(newValue); - }; - ScrollViewer.HorizontalScrollBarVisibilityProperty = DependencyProperty.RegisterAttachedCore("HorizontalScrollBarVisibility", function () { return new Fayde.Enum(Controls.ScrollBarVisibility); }, ScrollViewer, Controls.ScrollBarVisibility.Disabled, ScrollViewer._ScrollBarVisibilityChanged); - ScrollViewer.VerticalScrollBarVisibilityProperty = DependencyProperty.RegisterAttachedCore("VerticalScrollBarVisibility", function () { return new Fayde.Enum(Controls.ScrollBarVisibility); }, ScrollViewer, Controls.ScrollBarVisibility.Disabled, ScrollViewer._ScrollBarVisibilityChanged); - ScrollViewer.ComputedHorizontalScrollBarVisibilityProperty = DependencyProperty.RegisterReadOnlyCore("ComputedHorizontalScrollBarVisibility", function () { return new Fayde.Enum(Fayde.Visibility); }, ScrollViewer); - ScrollViewer.ComputedVerticalScrollBarVisibilityProperty = DependencyProperty.RegisterReadOnlyCore("ComputedVerticalScrollBarVisibility", function () { return new Fayde.Enum(Fayde.Visibility); }, ScrollViewer); - ScrollViewer.HorizontalOffsetProperty = DependencyProperty.RegisterReadOnlyCore("HorizontalOffset", function () { return Number; }, ScrollViewer); - ScrollViewer.VerticalOffsetProperty = DependencyProperty.RegisterReadOnlyCore("VerticalOffset", function () { return Number; }, ScrollViewer); - ScrollViewer.ScrollableWidthProperty = DependencyProperty.RegisterReadOnlyCore("ScrollableWidth", function () { return Number; }, ScrollViewer); - ScrollViewer.ScrollableHeightProperty = DependencyProperty.RegisterReadOnlyCore("ScrollableHeight", function () { return Number; }, ScrollViewer); - ScrollViewer.ViewportWidthProperty = DependencyProperty.RegisterReadOnlyCore("ViewportWidth", function () { return Number; }, ScrollViewer); - ScrollViewer.ViewportHeightProperty = DependencyProperty.RegisterReadOnlyCore("ViewportHeight", function () { return Number; }, ScrollViewer); - ScrollViewer.ExtentWidthProperty = DependencyProperty.RegisterReadOnlyCore("ExtentWidth", function () { return Number; }, ScrollViewer); - ScrollViewer.ExtentHeightProperty = DependencyProperty.RegisterReadOnlyCore("ExtentHeight", function () { return Number; }, ScrollViewer); - return ScrollViewer; - })(Controls.ContentControl); - Controls.ScrollViewer = ScrollViewer; - Fayde.CoreLibrary.add(ScrollViewer); - Controls.TemplateParts(ScrollViewer, { Name: "ScrollContentPresenter", Type: Controls.ScrollContentPresenter }, { Name: "HorizontalScrollBar", Type: Controls.Primitives.ScrollBar }, { Name: "VerticalScrollBar", Type: Controls.Primitives.ScrollBar }); - })(Controls = Fayde.Controls || (Fayde.Controls = {})); -})(Fayde || (Fayde = {})); -/// -/// -/// -/// -/// -var Fayde; -(function (Fayde) { - var Controls; - (function (Controls) { - var ComboBox = (function (_super) { - __extends(ComboBox, _super); - function ComboBox() { - _super.call(this); - this.DropDownOpened = new nullstone.Event(); - this.DropDownClosed = new nullstone.Event(); - this.$DisplayedItem = null; - this.$SelectionBoxItem = null; - this.$SelectionBoxItemTemplate = null; - this._FocusedIndex = -1; - this.DefaultStyleKey = ComboBox; - } - ComboBox.prototype._IsDropDownOpenChanged = function (args) { - var open = args.NewValue; - if (this.$Popup != null) - this.$Popup.IsOpen = open; - if (this.$DropDownToggle != null) - this.$DropDownToggle.IsChecked = open; - if (open) { - this._FocusedIndex = this.Items.Count > 0 ? Math.max(this.SelectedIndex, 0) : -1; - if (this._FocusedIndex > -1) { - var focusedItem = this.ItemContainersManager.ContainerFromIndex(this._FocusedIndex); - if (focusedItem instanceof Controls.ComboBoxItem) - focusedItem.Focus(); - } - this.LayoutUpdated.on(this._UpdatePopupSizeAndPosition, this); - this.DropDownOpened.raise(this, null); - } - else { - this.Focus(); - this.LayoutUpdated.off(this._UpdatePopupSizeAndPosition, this); - this.DropDownClosed.raise(this, null); - } - var selectedItem = this.SelectedItem; - this._UpdateDisplayedItem(open && selectedItem instanceof Fayde.UIElement ? null : selectedItem); - this.UpdateVisualState(true); - }; - ComboBox.prototype._MaxDropDownHeightChanged = function (args) { - this._UpdatePopupMaxHeight(args.NewValue); - }; - ComboBox.prototype._GetChildOfType = function (name, type) { - var temp = this.GetTemplateChild(name); - if (temp instanceof type) - return temp; - }; - ComboBox.prototype.OnApplyTemplate = function () { - _super.prototype.OnApplyTemplate.call(this); - this.UpdateVisualState(false); - this.$ContentPresenter = this._GetChildOfType("ContentPresenter", Controls.ContentPresenter); - this.$Popup = this._GetChildOfType("Popup", Controls.Primitives.Popup); - this.$DropDownToggle = this._GetChildOfType("DropDownToggle", Controls.Primitives.ToggleButton); - if (this.$ContentPresenter != null) - this._NullSelFallback = this.$ContentPresenter.Content; - if (this.$Popup != null) { - this._UpdatePopupMaxHeight(this.MaxDropDownHeight); - this.$Popup.WatchOutsideClick(this._PopupClickedOutside, this); - var child = this.$Popup.Child; - if (child != null) { - child.KeyDown.on(this._OnChildKeyDown, this); - child.SizeChanged.on(this._UpdatePopupSizeAndPosition, this); - } - } - if (this.$DropDownToggle != null) { - this.$DropDownToggle.Checked.on(this._OnToggleChecked, this); - this.$DropDownToggle.Unchecked.on(this._OnToggleUnchecked, this); - } - this.UpdateVisualState(false); - this._UpdateDisplayedItem(this.SelectedItem); - }; - ComboBox.prototype.OnItemContainerStyleChanged = function (args) { - var newStyle = args.NewValue; - var enumerator = this.ItemContainersManager.GetEnumerator(); - while (enumerator.moveNext()) { - var container = enumerator.current; - if (container && container !== enumerator.CurrentItem) - container.Style = newStyle; - } - }; - ComboBox.prototype.IsItemItsOwnContainer = function (item) { - return item instanceof Controls.ComboBoxItem; - }; - ComboBox.prototype.GetContainerForItem = function () { - return new Controls.ComboBoxItem(); - }; - ComboBox.prototype.PrepareContainerForItem = function (container, item) { - _super.prototype.PrepareContainerForItem.call(this, container, item); - var cbi = container; - if (cbi !== item) { - var ics = this.ItemContainerStyle; - if (!cbi.Style && ics) - cbi.Style = ics; - } - }; - ComboBox.prototype.GoToStateFocus = function (gotoFunc) { - var isEnabled = this.IsEnabled; - if (this.IsDropDownOpen && isEnabled) - return gotoFunc("FocusedDropDown"); - else if (this.IsFocused && isEnabled) - return gotoFunc("Focused"); - return gotoFunc("Unfocused"); - }; - ComboBox.prototype.OnIsEnabledChanged = function (e) { - _super.prototype.OnIsEnabledChanged.call(this, e); - if (!this.IsEnabled) - this.IsDropDownOpen = false; - }; - ComboBox.prototype.OnMouseLeftButtonDown = function (e) { - _super.prototype.OnMouseLeftButtonDown.call(this, e); - if (!e.Handled) { - e.Handled = true; - this.SetValueInternal(ComboBox.IsSelectionActiveProperty, true); - this.IsDropDownOpen = !this.IsDropDownOpen; - } - }; - ComboBox.prototype.OnMouseEnter = function (e) { - _super.prototype.OnMouseEnter.call(this, e); - this.UpdateVisualState(true); - }; - ComboBox.prototype.OnMouseLeave = function (e) { - _super.prototype.OnMouseLeave.call(this, e); - this.UpdateVisualState(true); - }; - ComboBox.prototype.OnKeyDown = function (e) { - _super.prototype.OnKeyDown.call(this, e); - if (e.Handled) - return; - e.Handled = true; - var key = e.Key; - if (this.FlowDirection === Fayde.FlowDirection.RightToLeft) { - if (key === Fayde.Input.Key.Left) - key = Fayde.Input.Key.Right; - else if (key === Fayde.Input.Key.Right) - key = Fayde.Input.Key.Left; - } - switch (key) { - case Fayde.Input.Key.Escape: - this.IsDropDownOpen = false; - break; - case Fayde.Input.Key.Enter: - case Fayde.Input.Key.Space: - if (this.IsDropDownOpen && this._FocusedIndex !== this.SelectedIndex) { - this.SelectedIndex = this._FocusedIndex; - this.IsDropDownOpen = false; - } - else { - this.IsDropDownOpen = true; - } - break; - case Fayde.Input.Key.Right: - case Fayde.Input.Key.Down: - if (this.IsDropDownOpen) { - if (this._FocusedIndex < (this.Items.Count - 1)) { - this._FocusedIndex++; - this.ItemContainersManager.ContainerFromIndex(this._FocusedIndex).Focus(); - } - } - else { - this.SelectedIndex = Math.min(this.SelectedIndex + 1, this.Items.Count - 1); - } - break; - case Fayde.Input.Key.Left: - case Fayde.Input.Key.Up: - if (this.IsDropDownOpen) { - if (this._FocusedIndex > 0) { - this._FocusedIndex--; - this.ItemContainersManager.ContainerFromIndex(this._FocusedIndex).Focus(); - } - } - else { - this.SelectedIndex = Math.max(this.SelectedIndex - 1, 0); - } - break; - default: - e.Handled = false; - break; - } - }; - ComboBox.prototype.OnGotFocus = function (e) { - _super.prototype.OnGotFocus.call(this, e); - this.UpdateVisualState(true); - }; - ComboBox.prototype.OnLostFocus = function (e) { - _super.prototype.OnLostFocus.call(this, e); - this.SetValueInternal(ComboBox.IsSelectionActiveProperty, this.$Popup == null ? false : this.$Popup.IsOpen); - this.UpdateVisualState(true); - }; - ComboBox.prototype._OnChildKeyDown = function (sender, e) { - this.OnKeyDown(e); - }; - ComboBox.prototype.OnSelectionChanged = function (e) { - if (!this.IsDropDownOpen) - this._UpdateDisplayedItem(this.SelectedItem); - }; - ComboBox.prototype._OnToggleChecked = function (sender, e) { this.IsDropDownOpen = true; }; - ComboBox.prototype._OnToggleUnchecked = function (sender, e) { this.IsDropDownOpen = false; }; - ComboBox.prototype._PopupClickedOutside = function () { - this.IsDropDownOpen = false; - }; - ComboBox.prototype._UpdateDisplayedItem = function (selectedItem) { - if (!this.$ContentPresenter) - return; - if (this.$DisplayedItem != null) { - this.$DisplayedItem.Content = this.$ContentPresenter.Content; - this.$DisplayedItem = null; - } - this.$ContentPresenter.Content = null; - if (selectedItem == null) { - this.$ContentPresenter.Content = this._NullSelFallback; - this.$ContentPresenter.ContentTemplate = null; - this.$SelectionBoxItem = null; - this.$SelectionBoxItemTemplate = null; - return; - } - var content = selectedItem; - if (content instanceof Controls.ComboBoxItem) - content = content.Content; - var icm = this.ItemContainersManager; - var selectedIndex = this.SelectedIndex; - var temp = icm.ContainerFromIndex(selectedIndex); - if (temp instanceof Controls.ComboBoxItem) - this.$DisplayedItem = temp; - this.$SelectionBoxItem = content; - this.$SelectionBoxItemTemplate = this.ItemTemplate; - if (this.$DisplayedItem != null) { - this.$SelectionBoxItemTemplate = this.$DisplayedItem.ContentTemplate; - if (content instanceof Fayde.UIElement) - this.$DisplayedItem.Content = null; - else - this.$DisplayedItem = null; - } - else { - temp = icm.ContainerFromIndex(selectedIndex); - var container; - if (temp instanceof Controls.ComboBoxItem) - container = temp; - if (!container) { - var generator = icm.CreateGenerator(selectedIndex, 1); - if (generator.Generate() && generator.Current instanceof Controls.ComboBoxItem) { - container = generator.Current; - this.PrepareContainerForItem(container, generator.CurrentItem); - } - } - if (container) - this.$SelectionBoxItemTemplate = container.ContentTemplate; - } - this.$ContentPresenter.Content = this.$SelectionBoxItem; - this.$ContentPresenter.ContentTemplate = this.$SelectionBoxItemTemplate; - }; - ComboBox.prototype._UpdatePopupSizeAndPosition = function (sender, e) { - var popup = this.$Popup; - if (!popup) - return; - var child = popup.Child; - if (!(child instanceof Fayde.FrameworkElement)) - return; - child.MinWidth = this.ActualWidth; - var root = Fayde.VisualTreeHelper.GetRoot(this); - if (!root) - return; - try { - var xform = this.TransformToVisual(null); - } - catch (err) { - return; - } - var offset = new Point(0, this.ActualHeight); - var bottomRight = new Point(offset.x + child.ActualWidth, offset.y + child.ActualHeight); - var topLeft = xform.Transform(offset); - bottomRight = xform.Transform(bottomRight); - var isRightToLeft = (this.FlowDirection === Fayde.FlowDirection.RightToLeft); - if (isRightToLeft) { - var left = bottomRight.x; - bottomRight.x = topLeft.x; - topLeft.x = left; - } - var finalOffset = new Point(); - var raw = root.ActualWidth; - if (bottomRight.x > raw) { - finalOffset.x = raw - bottomRight.x; - } - else if (topLeft.x < 0) { - finalOffset.x = offset.x - topLeft.x; - } - else { - finalOffset.x = offset.x; - } - if (isRightToLeft) - finalOffset.x = -finalOffset.x; - var rah = root.ActualHeight; - if (bottomRight.y > rah) { - finalOffset.y = -child.ActualHeight; - } - else { - finalOffset.y = this.RenderSize.height; - } - popup.HorizontalOffset = finalOffset.x; - popup.VerticalOffset = finalOffset.y; - this._UpdatePopupMaxHeight(this.MaxDropDownHeight); - }; - ComboBox.prototype._UpdatePopupMaxHeight = function (height) { - var child; - if (this.$Popup && (child = this.$Popup.Child) && child instanceof Fayde.FrameworkElement) { - if (height === Number.POSITIVE_INFINITY) { - var surface = this.XamlNode.LayoutUpdater.tree.surface; - if (surface) - height = surface.height / 2.0; - } - child.MaxHeight = height; - } - }; - ComboBox.IsDropDownOpenProperty = DependencyProperty.Register("IsDropDownOpen", function () { return Boolean; }, ComboBox, false, function (d, args) { return d._IsDropDownOpenChanged(args); }); - ComboBox.ItemContainerStyleProperty = DependencyProperty.Register("ItemContainerStyle", function () { return Fayde.Style; }, ComboBox, undefined, function (d, args) { return d.OnItemContainerStyleChanged(args); }); - ComboBox.MaxDropDownHeightProperty = DependencyProperty.Register("MaxDropDownHeight", function () { return Number; }, ComboBox, Number.POSITIVE_INFINITY, function (d, args) { return d._MaxDropDownHeightChanged(args); }); - ComboBox.IsSelectionActiveProperty = Controls.Primitives.Selector.IsSelectionActiveProperty; - return ComboBox; - })(Controls.Primitives.Selector); - Controls.ComboBox = ComboBox; - Fayde.CoreLibrary.add(ComboBox); - Controls.TemplateParts(ComboBox, { Name: "ContentPresenter", Type: Controls.ContentPresenter }, { Name: "Popup", Type: Controls.Primitives.Popup }, { Name: "ContentPresenterBorder", Type: Fayde.FrameworkElement }, { Name: "DropDownToggle", Type: Controls.Primitives.ToggleButton }, { Name: "ScrollViewer", Type: Controls.ScrollViewer }); - Controls.TemplateVisualStates(ComboBox, { GroupName: "CommonStates", Name: "Normal" }, { GroupName: "CommonStates", Name: "MouseOver" }, { GroupName: "CommonStates", Name: "Disabled" }, { GroupName: "FocusStates", Name: "Unfocused" }, { GroupName: "FocusStates", Name: "Focused" }, { GroupName: "FocusStates", Name: "FocusedDropDown" }, { GroupName: "ValidationStates", Name: "Valid" }, { GroupName: "ValidationStates", Name: "InvalidUnfocused" }, { GroupName: "ValidationStates", Name: "InvalidFocused" }); - })(Controls = Fayde.Controls || (Fayde.Controls = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Controls; - (function (Controls) { - var ListBoxItem = (function (_super) { - __extends(ListBoxItem, _super); - function ListBoxItem() { - _super.call(this); - this.ParentSelectorChanged = new nullstone.Event(); - this.DefaultStyleKey = ListBoxItem; - } - Object.defineProperty(ListBoxItem.prototype, "ParentSelector", { - get: function () { return this._ParentSelector; }, - set: function (value) { - if (this._ParentSelector === value) - return; - this._ParentSelector = value; - this.ParentSelectorChanged.raise(this, null); - }, - enumerable: true, - configurable: true - }); - ListBoxItem.prototype.OnApplyTemplate = function () { - _super.prototype.OnApplyTemplate.call(this); - this.UpdateVisualState(false); - }; - ListBoxItem.prototype.OnMouseLeftButtonDown = function (e) { - if (e.Handled) - return; - e.Handled = true; - if (!this.XamlNode.Focus(true)) - return; - if (this._ParentSelector != null) - this._ParentSelector.NotifyListItemClicked(this); - }; - ListBoxItem.prototype.OnMouseEnter = function (e) { - _super.prototype.OnMouseEnter.call(this, e); - this.UpdateVisualState(); - }; - ListBoxItem.prototype.OnMouseLeave = function (e) { - _super.prototype.OnMouseLeave.call(this, e); - this.UpdateVisualState(); - }; - ListBoxItem.prototype.OnGotFocus = function (e) { - _super.prototype.OnGotFocus.call(this, e); - this.UpdateVisualState(); - if (this._ParentSelector != null) { - this._ParentSelector.NotifyListItemGotFocus(this); - } - }; - ListBoxItem.prototype.OnLostFocus = function (e) { - _super.prototype.OnLostFocus.call(this, e); - this.UpdateVisualState(); - if (this._ParentSelector != null) { - this._ParentSelector.NotifyListItemLostFocus(this); - } - }; - ListBoxItem.prototype.GoToStateSelection = function (gotoFunc) { - if (!this.IsSelected) - return gotoFunc("Unselected"); - if (gotoFunc("SelectedUnfocused")) - return true; - return gotoFunc("Selected"); - }; - ListBoxItem.prototype.OnIsSelectedChanged = function (args) { - this.UpdateVisualState(); - }; - ListBoxItem.IsSelectedProperty = DependencyProperty.RegisterCore("IsSelected", function () { return Boolean; }, ListBoxItem, null, function (d, args) { return d.OnIsSelectedChanged(args); }); - return ListBoxItem; - })(Controls.ContentControl); - Controls.ListBoxItem = ListBoxItem; - Fayde.CoreLibrary.add(ListBoxItem); - Controls.TemplateVisualStates(ListBoxItem, { GroupName: "CommonStates", Name: "Normal" }, { GroupName: "CommonStates", Name: "MouseOver" }, { GroupName: "CommonStates", Name: "Disabled" }, { GroupName: "FocusStates", Name: "Unfocused" }, { GroupName: "FocusStates", Name: "Focused" }, { GroupName: "SelectionStates", Name: "Unselected" }, { GroupName: "SelectionStates", Name: "Selected" }, { GroupName: "SelectionStates", Name: "SelectedUnfocused" }); - })(Controls = Fayde.Controls || (Fayde.Controls = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Controls; - (function (Controls) { - var ComboBoxItem = (function (_super) { - __extends(ComboBoxItem, _super); - function ComboBoxItem() { - _super.call(this); - this.DefaultStyleKey = ComboBoxItem; - } - ComboBoxItem.prototype.OnMouseLeftButtonUp = function (e) { - _super.prototype.OnMouseLeftButtonUp.call(this, e); - if (this.ParentSelector instanceof Controls.ComboBox) - this.ParentSelector.IsDropDownOpen = false; - }; - return ComboBoxItem; - })(Controls.ListBoxItem); - Controls.ComboBoxItem = ComboBoxItem; - Fayde.CoreLibrary.add(ComboBoxItem); - Controls.TemplateVisualStates(ComboBoxItem, { GroupName: "CommonStates", Name: "Normal" }, { GroupName: "CommonStates", Name: "MouseOver" }, { GroupName: "FocusStates", Name: "Unfocused" }, { GroupName: "FocusStates", Name: "Focused" }, { GroupName: "SelectionStates", Name: "Unselected" }, { GroupName: "SelectionStates", Name: "Selected" }, { GroupName: "SelectionStates", Name: "SelectedUnfocused" }); - })(Controls = Fayde.Controls || (Fayde.Controls = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Markup; - (function (Markup) { - var FrameworkTemplate = (function (_super) { - __extends(FrameworkTemplate, _super); - function FrameworkTemplate() { - _super.apply(this, arguments); - } - FrameworkTemplate.prototype.Validate = function () { - return ""; - }; - FrameworkTemplate.prototype.GetVisualTree = function (bindingSource) { - var uie = LoadImpl(this.App, this.$$markup, this.$$resources, bindingSource); - if (!(uie instanceof Fayde.UIElement)) - throw new XamlParseException("Template root visual is not a UIElement."); - return uie; - }; - return FrameworkTemplate; - })(Fayde.DependencyObject); - Markup.FrameworkTemplate = FrameworkTemplate; - function setTemplateRoot(ft, root) { - if (root instanceof Element) - ft.$$markup = Markup.CreateXaml(root); - } - function setResources(ft, res) { - ft.$$resources = res; - } - function LoadXaml(app, xaml) { - var markup = Markup.CreateXaml(xaml); - return Load(app, markup); - } - Markup.LoadXaml = LoadXaml; - function Load(app, xm) { - return LoadImpl(app, xm); - } - Markup.Load = Load; - function LoadImpl(app, xm, resources, bindingSource) { - perfex.timer.start('MarkupLoad', xm.uri.toString()); - var oresolve = { - isPrimitive: false, - type: undefined - }; - var namescope = new Fayde.NameScope(true); - var active = Markup.Internal.createActiveObject(app, namescope, bindingSource); - var pactor = Markup.Internal.createPropertyActor(active, extractType, extractDP); - var oactor = Markup.Internal.createObjectActor(pactor); - var ractor = Markup.Internal.createResourcesActor(active, resources); - var last; - var parser = xm.createParser() - .setNamespaces(Fayde.XMLNS, Fayde.XMLNSX); - var parse = { - resolveType: function (uri, name) { - if (!Fayde.TypeManager.resolveType(uri, name, oresolve)) - throw new XamlParseException("Could not resolve type [" + uri + "][" + name + "]."); - return oresolve; - }, - resolveObject: function (type) { - if (type === Fayde.ResourceDictionary && !pactor.isNewResources()) - return undefined; - perfex.timer.start('MarkupCreateObject', type); - var obj = new (type)(); - if (obj instanceof FrameworkTemplate) - parser.skipBranch(); - else if (obj instanceof Markup.StaticResource) - obj.setContext(active.getApp(), resources); - perfex.timer.stop(); - return obj; - }, - resolvePrimitive: function (type, text) { - return nullstone.convertAnyToType(text, type); - }, - resolveResources: function (owner, ownerType) { - var rd = owner.Resources; - return rd; - }, - branchSkip: function (root, obj) { - if (obj instanceof FrameworkTemplate) { - var ft = last = obj; - var err = obj.Validate(); - if (err) - throw new XamlParseException(err); - setTemplateRoot(ft, root); - setResources(ft, ractor.get()); - } - }, - object: function (obj, isContent) { - active.set(obj); - oactor.start(); - ractor.start(); - }, - objectEnd: function (obj, key, isContent, prev) { - last = obj; - ractor.end(); - oactor.end(); - active.set(prev); - if (!active.obj) - return; - if (isContent) { - pactor.startContent(); - pactor.addObject(obj, key); - pactor.end(); - } - else { - pactor.addObject(obj, key); - } - }, - contentText: function (text) { - pactor.setContentText(text); - }, - name: function (name) { - active.setName(name); - }, - propertyStart: function (ownerType, propName) { - pactor.start(ownerType, propName); - }, - propertyEnd: function (ownerType, propName) { - pactor.end(); - }, - attributeStart: function (ownerType, attrName) { - }, - attributeEnd: function (ownerType, attrName, obj) { - pactor.setObject(ownerType, attrName, obj); - }, - error: function (err) { return false; }, - end: function () { - } - }; - function extractType(text) { - var prefix = null; - var name = text; - var ind = name.indexOf(':'); - if (ind > -1) { - prefix = name.substr(0, ind); - name = name.substr(ind + 1); - } - var uri = parser.resolvePrefix(prefix); - Fayde.TypeManager.resolveType(uri, name, oresolve); - return oresolve.type; - } - function extractDP(text) { - var name = text; - var ind = name.indexOf('.'); - var ownerType; - if (ind > -1) { - ownerType = extractType(name.substr(0, ind)); - name = name.substr(ind + 1); - } - else { - for (var en = parser.walkUpObjects(); en.moveNext();) { - var style = en.current; - if (style instanceof Fayde.Style) { - ownerType = style.TargetType; - if (!ownerType) - throw new XamlParseException("Style must have a TargetType."); - break; - } - } - } - return (ownerType) - ? DependencyProperty.GetDependencyProperty(ownerType, name) - : null; - } - parser.on(parse) - .parse(xm.root); - if (last instanceof Fayde.XamlObject) { - last.XamlNode.NameScope = namescope; - } - perfex.timer.stop(); - return last; - } - })(Markup = Fayde.Markup || (Fayde.Markup = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Controls; - (function (Controls) { - var ControlTemplate = (function (_super) { - __extends(ControlTemplate, _super); - function ControlTemplate() { - _super.apply(this, arguments); - } - ControlTemplate.prototype.Validate = function () { - if (!this.TargetType) - return "ControlTemplate must have a TargetType."; - }; - ControlTemplate.TargetTypeProperty = DependencyProperty.Register("TargetType", function () { return Fayde.IType_; }, ControlTemplate); - return ControlTemplate; - })(Fayde.Markup.FrameworkTemplate); - Controls.ControlTemplate = ControlTemplate; - Fayde.CoreLibrary.add(ControlTemplate); - })(Controls = Fayde.Controls || (Fayde.Controls = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Controls; - (function (Controls) { - function clickResultPropertyChanged(dobj, args) { - var btn = (dobj instanceof Controls.Primitives.ButtonBase) ? dobj : null; - if (!btn) - return; - if (args.OldValue !== undefined) - btn.Click.off(buttonClicked, btn); - if (args.NewValue !== undefined) - btn.Click.on(buttonClicked, btn); - } - function buttonClicked(sender, args) { - var dialog = Fayde.VisualTreeHelper.GetParentOfType(sender, Dialog); - if (dialog) - dialog.DialogResult = Dialog.GetClickResult(sender); - } - var Dialog = (function (_super) { - __extends(Dialog, _super); - function Dialog() { - _super.call(this); - this._IgnoreResult = false; - this.DefaultStyleKey = Dialog; - } - Dialog.prototype.OnDialogResultChanged = function (args) { - if (this._IgnoreResult === true) - return; - var overlay = Controls.Primitives.Overlay.FindOverlay(this); - if (overlay) { - overlay.Close(args.NewValue); - this._IgnoreResult = true; - try { - this.SetCurrentValue(Dialog.DialogResultProperty, undefined); - } - finally { - this._IgnoreResult = false; - } - } - }; - Dialog.GetClickResult = function (dobj) { - return dobj.GetValue(Dialog.ClickResultProperty); - }; - Dialog.SetClickResult = function (dobj, value) { - dobj.SetValue(Dialog.ClickResultProperty, value); - }; - Dialog.DialogResultProperty = DependencyProperty.Register("DialogResult", function () { return Boolean; }, Dialog, undefined, function (d, args) { return d.OnDialogResultChanged(args); }); - Dialog.ClickResultProperty = DependencyProperty.RegisterAttached("ClickResult", function () { return Boolean; }, Dialog, undefined, clickResultPropertyChanged); - return Dialog; - })(Controls.ContentControl); - Controls.Dialog = Dialog; - Fayde.CoreLibrary.add(Dialog); - })(Controls = Fayde.Controls || (Fayde.Controls = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Controls; - (function (Controls) { - var UserControl = (function (_super) { - __extends(UserControl, _super); - function UserControl() { - _super.call(this); - this.DefaultStyleKey = UserControl; - } - UserControl.prototype.CreateLayoutUpdater = function () { - return new minerva.controls.usercontrol.UserControlUpdater(); - }; - UserControl.prototype.InitializeComponent = function () { - this.ApplyTemplate(); - }; - UserControl.ContentProperty = DependencyProperty.Register("Content", function () { return Fayde.UIElement; }, UserControl); - return UserControl; - })(Controls.Control); - Controls.UserControl = UserControl; - Fayde.CoreLibrary.add(UserControl); - Fayde.Markup.Content(UserControl, UserControl.ContentProperty); - var reactions; - (function (reactions) { - Fayde.UIReaction(UserControl.ContentProperty, function (updater, ov, nv, uc) { - var error = new BError(); - if (ov instanceof Fayde.UIElement) - uc.XamlNode.DetachVisualChild(ov, error); - if (nv instanceof Fayde.UIElement) - uc.XamlNode.AttachVisualChild(nv, error); - if (error.Message) - error.ThrowException(); - updater.updateBounds(); - }, false, false); - })(reactions || (reactions = {})); - })(Controls = Fayde.Controls || (Fayde.Controls = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Controls; - (function (Controls) { - var Page = (function (_super) { - __extends(Page, _super); - function Page() { - _super.call(this); - this.DefaultStyleKey = Page; - } - Page.GetAsync = function (initiator, url) { - return Fayde.Markup.Resolve(url) - .then(function (xm) { - TimelineProfile.Parse(true, "Page"); - var page = Fayde.Markup.Load(initiator.App, xm); - TimelineProfile.Parse(false, "Page"); - if (!(page instanceof Controls.Page)) - throw new Error("Markup must be a Page."); - return page; - }); - }; - Page.TitleProperty = DependencyProperty.Register("Title", function () { return String; }, Page); - return Page; - })(Controls.UserControl); - Controls.Page = Page; - Fayde.CoreLibrary.add(Page); - })(Controls = Fayde.Controls || (Fayde.Controls = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Navigation; - (function (Navigation) { - Navigation.INavigate_ = new nullstone.Interface("INavigate"); - })(Navigation = Fayde.Navigation || (Fayde.Navigation = {})); -})(Fayde || (Fayde = {})); -/// -/// -/// -var Fayde; -(function (Fayde) { - var Controls; - (function (Controls) { - function createErrorDoc(error) { - var safe = (error || '').toString() - .replace(/&/g, '&') - .replace(//g, '>') - .replace(/"/g, '"') - .replace(/'/g, '''); - var xaml = ''; - xaml += ''; - xaml += ''; - return Fayde.Markup.CreateXaml(xaml, Fayde.XMLNS + "/frame/error"); - } - function getErrorPage(app, error) { - return Fayde.Markup.Load(app, createErrorDoc(error)); - } - var Frame = (function (_super) { - __extends(Frame, _super); - function Frame() { - _super.call(this); - this._NavService = new Fayde.Navigation.NavigationService(); - this._CurrentRoute = undefined; - this.DefaultStyleKey = Frame; - this.Loaded.on(this._FrameLoaded, this); - } - Frame.prototype.OnIsLoadingChanged = function (oldIsLoading, newIsLoading) { - this.UpdateVisualState(); - }; - Frame.prototype.GoToStates = function (gotoFunc) { - this.GoToStateLoading(gotoFunc); - }; - Frame.prototype.GoToStateLoading = function (gotoFunc) { - return gotoFunc(this.IsLoading ? "Loading" : "Idle"); - }; - Frame.prototype.Navigate = function (uri) { - return this._NavService.Navigate(uri); - }; - Frame.prototype.GoForward = function () { - }; - Frame.prototype.GoBackward = function () { - }; - Frame.prototype.StopLoading = function () { - }; - Frame.prototype._FrameLoaded = function (sender, e) { - if (this.IsDeepLinked) { - this._NavService.LocationChanged.on(this._HandleDeepLink, this); - this._HandleDeepLink(); - } - }; - Frame.prototype._HandleDeepLink = function () { - this._LoadContent(this._NavService.CurrentUri); - }; - Frame.prototype._LoadContent = function (source) { - var _this = this; - this.SetCurrentValue(Frame.CurrentSourceProperty, source); - this.StopLoading(); - this.SetCurrentValue(Frame.IsLoadingProperty, true); - var fragment = source.fragment; - if (fragment[0] === "#") - fragment = fragment.substr(1); - TimelineProfile.Navigate(true, fragment); - var targetUri = new Fayde.Uri(fragment, nullstone.UriKind.Relative); - var target = undefined; - if (this.RouteMapper) { - this._CurrentRoute = this.RouteMapper.MapUri(targetUri); - if (!this._CurrentRoute) - throw new InvalidOperationException("Route could not be mapped." + targetUri.toString()); - target = this._CurrentRoute.View.toString(); - } - else if (this.UriMapper) { - var mapped = this.UriMapper.MapUri(targetUri); - if (!mapped) - throw new InvalidOperationException("Uri could not be mapped." + targetUri.toString()); - target = mapped.toString(); - } - Controls.Page.GetAsync(this, target) - .then(function (page) { return _this._HandleSuccess(page); }, function (err) { return _this._HandleError(err); }); - }; - Frame.prototype._HandleSuccess = function (page) { - this._SetPage(page); - this.SetCurrentValue(Frame.IsLoadingProperty, false); - TimelineProfile.Navigate(false); - TimelineProfile.IsNextLayoutPassProfiled = true; - }; - Frame.prototype._HandleError = function (error) { - this._SetPage(getErrorPage(this.App, error)); - this.SetCurrentValue(Frame.IsLoadingProperty, false); - TimelineProfile.Navigate(false); - }; - Frame.prototype._SetPage = function (page) { - document.title = page.Title; - this.Content = page; - if (this._CurrentRoute) - page.DataContext = this._CurrentRoute.DataContext; - if (page.DataContext == null) - page.DataContext = this.DataContext; - }; - Frame.prototype.SourcePropertyChanged = function (args) { - if (true) - this.Navigate(args.NewValue); - }; - Frame.IsDeepLinkedProperty = DependencyProperty.Register("IsDeepLinked", function () { return Boolean; }, Frame, true); - Frame.CurrentSourceProperty = DependencyProperty.RegisterReadOnly("CurrentSource", function () { return Fayde.Uri; }, Frame); - Frame.SourceProperty = DependencyProperty.Register("Source", function () { return Fayde.Uri; }, Frame, undefined, function (d, args) { return d.SourcePropertyChanged(args); }); - Frame.UriMapperProperty = DependencyProperty.Register("UriMapper", function () { return Fayde.Navigation.UriMapper; }, Frame); - Frame.RouteMapperProperty = DependencyProperty.Register("RouteMapper", function () { return Fayde.Navigation.RouteMapper; }, Frame); - Frame.IsLoadingProperty = DependencyProperty.RegisterReadOnly("IsLoading", function () { return Boolean; }, Frame, false, function (d, args) { return d.OnIsLoadingChanged(args.OldValue, args.NewValue); }); - return Frame; - })(Controls.ContentControl); - Controls.Frame = Frame; - Fayde.CoreLibrary.add(Frame); - nullstone.addTypeInterfaces(Frame, Fayde.Navigation.INavigate_); - Controls.TemplateVisualStates(Frame, { GroupName: "LoadingStates", Name: "Idle" }, { GroupName: "LoadingStates", Name: "Loading" }); - })(Controls = Fayde.Controls || (Fayde.Controls = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Controls; - (function (Controls) { - var GridNode = (function (_super) { - __extends(GridNode, _super); - function GridNode() { - _super.apply(this, arguments); - } - GridNode.prototype.ColumnDefinitionsChanged = function (coldef, index, add) { - var updater = this.LayoutUpdater; - var coldefs = updater.assets.columnDefinitions; - if (add) { - coldefs.splice(index, 0, coldef); - Fayde.ReactTo(coldef, this, function () { return updater.invalidateMeasure(); }); - } - else { - Fayde.UnreactTo(coldef, this); - coldefs.splice(index, 1); - } - updater.invalidateMeasure(); - }; - GridNode.prototype.RowDefinitionsChanged = function (rowdef, index, add) { - var updater = this.LayoutUpdater; - var rowdefs = updater.assets.rowDefinitions; - if (add) { - rowdefs.splice(index, 0, rowdef); - Fayde.ReactTo(rowdef, this, function () { return updater.invalidateMeasure(); }); - } - else { - Fayde.UnreactTo(rowdef, this); - rowdefs.splice(index, 1); - } - updater.invalidateMeasure(); - }; - return GridNode; - })(Controls.PanelNode); - Controls.GridNode = GridNode; - var Grid = (function (_super) { - __extends(Grid, _super); - function Grid() { - var _this = this; - _super.call(this); - var coldefs = Grid.ColumnDefinitionsProperty.Initialize(this); - Fayde.ReactTo(coldefs, this, function (obj) { return _this.XamlNode.ColumnDefinitionsChanged(obj.item, obj.index, obj.add); }); - var rowdefs = Grid.RowDefinitionsProperty.Initialize(this); - Fayde.ReactTo(rowdefs, this, function (obj) { return _this.XamlNode.RowDefinitionsChanged(obj.item, obj.index, obj.add); }); - } - Grid.prototype.CreateNode = function () { return new GridNode(this); }; - Grid.prototype.CreateLayoutUpdater = function () { return new minerva.controls.grid.GridUpdater(); }; - Grid.GetColumn = function (d) { return d.GetValue(Grid.ColumnProperty); }; - Grid.SetColumn = function (d, value) { d.SetValue(Grid.ColumnProperty, value); }; - Grid.GetColumnSpan = function (d) { return d.GetValue(Grid.ColumnSpanProperty); }; - Grid.SetColumnSpan = function (d, value) { d.SetValue(Grid.ColumnSpanProperty, value); }; - Grid.GetRow = function (d) { return d.GetValue(Grid.RowProperty); }; - Grid.SetRow = function (d, value) { d.SetValue(Grid.RowProperty, value); }; - Grid.GetRowSpan = function (d) { return d.GetValue(Grid.RowSpanProperty); }; - Grid.SetRowSpan = function (d, value) { d.SetValue(Grid.RowSpanProperty, value); }; - Grid.ColumnProperty = DependencyProperty.RegisterAttached("Column", function () { return Number; }, Grid, 0); - Grid.ColumnSpanProperty = DependencyProperty.RegisterAttached("ColumnSpan", function () { return Number; }, Grid, 1); - Grid.RowProperty = DependencyProperty.RegisterAttached("Row", function () { return Number; }, Grid, 0); - Grid.RowSpanProperty = DependencyProperty.RegisterAttached("RowSpan", function () { return Number; }, Grid, 1); - Grid.ColumnDefinitionsProperty = DependencyProperty.RegisterImmutable("ColumnDefinitions", function () { return Controls.ColumnDefinitionCollection; }, Grid); - Grid.RowDefinitionsProperty = DependencyProperty.RegisterImmutable("RowDefinitions", function () { return Controls.RowDefinitionCollection; }, Grid); - Grid.ShowGridLinesProperty = DependencyProperty.Register("ShowGridLines", function () { return Boolean; }, Grid, false); - return Grid; - })(Controls.Panel); - Controls.Grid = Grid; - Fayde.CoreLibrary.add(Grid); - var reactions; - (function (reactions) { - Fayde.UIReaction(Grid.ShowGridLinesProperty, minerva.controls.grid.reactTo.showGridLines, false); - Fayde.UIReactionAttached(Grid.ColumnProperty, minerva.controls.grid.reactTo.column); - Fayde.UIReactionAttached(Grid.ColumnSpanProperty, minerva.controls.grid.reactTo.columnSpan); - Fayde.UIReactionAttached(Grid.RowProperty, minerva.controls.grid.reactTo.row); - Fayde.UIReactionAttached(Grid.RowSpanProperty, minerva.controls.grid.reactTo.rowSpan); - })(reactions || (reactions = {})); - })(Controls = Fayde.Controls || (Fayde.Controls = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Controls; - (function (Controls) { - var GridUnitType = minerva.controls.grid.GridUnitType; - Fayde.CoreLibrary.addEnum(GridUnitType, "GridUnitType"); - var GridLength = (function () { - function GridLength(value, unitType) { - this.Value = value == null ? 0 : value; - this.Type = unitType || GridUnitType.Auto; - } - GridLength.Equals = function (gl1, gl2) { - return Math.abs(gl1.Value - gl2.Value) < 0.001 && gl1.Type == gl2.Type; - }; - GridLength.prototype.Clone = function () { - return new Controls.GridLength(this.Value, this.Type); - }; - return GridLength; - })(); - Controls.GridLength = GridLength; - Fayde.CoreLibrary.add(GridLength); - nullstone.registerTypeConverter(GridLength, function (val) { - if (val instanceof GridLength) - return val; - if (!val || val.toLowerCase() === "auto") - return new GridLength(); - var type = GridUnitType.Pixel; - if (val[val.length - 1] === "*") { - val = val.substr(0, val.length - 1); - type = GridUnitType.Star; - } - var v = parseFloat(val); - if (isNaN(v)) - v = 1; - return new GridLength(v, type); - }); - })(Controls = Fayde.Controls || (Fayde.Controls = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Controls; - (function (Controls) { - var HeaderedContentControl = (function (_super) { - __extends(HeaderedContentControl, _super); - function HeaderedContentControl() { - _super.call(this); - this.DefaultStyleKey = HeaderedContentControl; - } - HeaderedContentControl.prototype.OnHeaderChanged = function (oldHeader, newHeader) { }; - HeaderedContentControl.prototype.OnHeaderTemplateChanged = function (oldHeaderTemplate, newHeaderTemplate) { }; - HeaderedContentControl.HeaderProperty = DependencyProperty.Register("Header", function () { return Object; }, HeaderedContentControl, undefined, function (d, args) { return d.OnHeaderChanged(args.OldValue, args.NewValue); }); - HeaderedContentControl.HeaderTemplateProperty = DependencyProperty.Register("HeaderTemplate", function () { return Fayde.DataTemplate; }, HeaderedContentControl, undefined, function (d, args) { return d.OnHeaderTemplateChanged(args.OldValue, args.NewValue); }); - return HeaderedContentControl; - })(Controls.ContentControl); - Controls.HeaderedContentControl = HeaderedContentControl; - Fayde.CoreLibrary.add(HeaderedContentControl); - })(Controls = Fayde.Controls || (Fayde.Controls = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Controls; - (function (Controls) { - var HyperlinkButton = (function (_super) { - __extends(HyperlinkButton, _super); - function HyperlinkButton() { - _super.call(this); - this.DefaultStyleKey = HyperlinkButton; - } - HyperlinkButton.prototype.OnApplyTemplate = function () { - _super.prototype.OnApplyTemplate.call(this); - this.UpdateVisualState(false); - }; - HyperlinkButton.prototype.OnClick = function () { - _super.prototype.OnClick.call(this); - var navUri = this.NavigateUri; - if (navUri) - Fayde.Navigation.Navigate(this, this.TargetName, navUri); - }; - HyperlinkButton.NavigateUriProperty = DependencyProperty.Register("NavigateUri", function () { return Fayde.Uri; }, HyperlinkButton); - HyperlinkButton.TargetNameProperty = DependencyProperty.Register("TargetName", function () { return String; }, HyperlinkButton); - return HyperlinkButton; - })(Controls.Primitives.ButtonBase); - Controls.HyperlinkButton = HyperlinkButton; - Fayde.CoreLibrary.add(HyperlinkButton); - Controls.TemplateVisualStates(HyperlinkButton, { GroupName: "CommonStates", Name: "Normal" }, { GroupName: "CommonStates", Name: "MouseOver" }, { GroupName: "CommonStates", Name: "Pressed" }, { GroupName: "CommonStates", Name: "Disabled" }, { GroupName: "FocusStates", Name: "Unfocused" }, { GroupName: "FocusStates", Name: "Focused" }); - })(Controls = Fayde.Controls || (Fayde.Controls = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Media; - (function (Media) { - (function (BrushMappingMode) { - BrushMappingMode[BrushMappingMode["Absolute"] = 0] = "Absolute"; - BrushMappingMode[BrushMappingMode["RelativeToBoundingBox"] = 1] = "RelativeToBoundingBox"; - })(Media.BrushMappingMode || (Media.BrushMappingMode = {})); - var BrushMappingMode = Media.BrushMappingMode; - Fayde.CoreLibrary.addEnum(BrushMappingMode, "BrushMappingMode"); - (function (GradientSpreadMethod) { - GradientSpreadMethod[GradientSpreadMethod["Pad"] = 0] = "Pad"; - GradientSpreadMethod[GradientSpreadMethod["Reflect"] = 1] = "Reflect"; - GradientSpreadMethod[GradientSpreadMethod["Repeat"] = 2] = "Repeat"; - })(Media.GradientSpreadMethod || (Media.GradientSpreadMethod = {})); - var GradientSpreadMethod = Media.GradientSpreadMethod; - Fayde.CoreLibrary.addEnum(GradientSpreadMethod, "GradientSpreadMethod"); - (function (Stretch) { - Stretch[Stretch["None"] = 0] = "None"; - Stretch[Stretch["Fill"] = 1] = "Fill"; - Stretch[Stretch["Uniform"] = 2] = "Uniform"; - Stretch[Stretch["UniformToFill"] = 3] = "UniformToFill"; - })(Media.Stretch || (Media.Stretch = {})); - var Stretch = Media.Stretch; - Fayde.CoreLibrary.addEnum(Stretch, "Stretch"); - (function (AlignmentX) { - AlignmentX[AlignmentX["Left"] = 0] = "Left"; - AlignmentX[AlignmentX["Center"] = 1] = "Center"; - AlignmentX[AlignmentX["Right"] = 2] = "Right"; - })(Media.AlignmentX || (Media.AlignmentX = {})); - var AlignmentX = Media.AlignmentX; - Fayde.CoreLibrary.addEnum(AlignmentX, "AlignmentX"); - (function (AlignmentY) { - AlignmentY[AlignmentY["Top"] = 0] = "Top"; - AlignmentY[AlignmentY["Center"] = 1] = "Center"; - AlignmentY[AlignmentY["Bottom"] = 2] = "Bottom"; - })(Media.AlignmentY || (Media.AlignmentY = {})); - var AlignmentY = Media.AlignmentY; - Fayde.CoreLibrary.addEnum(AlignmentY, "AlignmentY"); - (function (TextHintingMode) { - TextHintingMode[TextHintingMode["Fixed"] = 0] = "Fixed"; - TextHintingMode[TextHintingMode["Animated"] = 1] = "Animated"; - })(Media.TextHintingMode || (Media.TextHintingMode = {})); - var TextHintingMode = Media.TextHintingMode; - Fayde.CoreLibrary.addEnum(TextHintingMode, "TextHintingMode"); - })(Media = Fayde.Media || (Fayde.Media = {})); -})(Fayde || (Fayde = {})); -/// -/// -var Fayde; -(function (Fayde) { - var Controls; - (function (Controls) { - var ImageUpdater = minerva.controls.image.ImageUpdater; - var Image = (function (_super) { - __extends(Image, _super); - function Image() { - _super.apply(this, arguments); - this.ImageOpened = new nullstone.Event(); - this.ImageFailed = new nullstone.Event(); - this.$watcher = null; - } - Image.prototype.CreateLayoutUpdater = function () { - return new ImageUpdater(); - }; - Image._SourceCoercer = function (d, propd, value) { - if (typeof value === "string") - return new Fayde.Media.Imaging.BitmapImage(new Fayde.Uri(value)); - if (value instanceof Fayde.Uri) - return new Fayde.Media.Imaging.BitmapImage(value); - return value; - }; - Image.prototype.OnImageErrored = function (source, error) { - this.ImageFailed.raise(this, null); - }; - Image.prototype.OnImageLoaded = function (source) { - this.ImageOpened.raise(this, null); - var lu = this.XamlNode.LayoutUpdater; - lu.invalidateMeasure(); - }; - Image.prototype.OnImageChanged = function (source) { - var lu = this.XamlNode.LayoutUpdater; - lu.invalidateMeasure(); - lu.invalidate(); - }; - Image.prototype.OnSourceChanged = function (oldSource, newSource) { - var _this = this; - if (this.$watcher) { - this.$watcher.dispose(); - this.$watcher = null; - } - if (newSource instanceof Fayde.Media.Imaging.BitmapSource) { - this.$watcher = newSource.watch({ - onErrored: function (source, error) { return _this.OnImageErrored(source, error); }, - onLoaded: function (source) { return _this.OnImageLoaded(source); }, - onChanged: function (source) { return _this.OnImageChanged(source); } - }); - } - }; - Image.SourceProperty = DependencyProperty.RegisterFull("Source", function () { return Fayde.Media.Imaging.ImageSource; }, Image, undefined, undefined, Image._SourceCoercer); - Image.StretchProperty = DependencyProperty.RegisterCore("Stretch", function () { return new Fayde.Enum(Fayde.Media.Stretch); }, Image, Fayde.Media.Stretch.Uniform); - return Image; - })(Fayde.FrameworkElement); - Controls.Image = Image; - Fayde.CoreLibrary.add(Image); - Fayde.UIReaction(Image.SourceProperty, function (upd, ov, nv, image) { - image.OnSourceChanged(ov, nv); - if (!nv) { - upd.updateBounds(); - upd.invalidate(); - } - upd.invalidateMeasure(); - upd.invalidateMetrics(); - }, false); - Fayde.UIReaction(Image.StretchProperty, function (upd, ov, nv) { - upd.invalidateMeasure(); - upd.invalidateMetrics(); - }, false); - })(Controls = Fayde.Controls || (Fayde.Controls = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Controls; - (function (Controls) { - var ItemCollection = (function (_super) { - __extends(ItemCollection, _super); - function ItemCollection() { - _super.apply(this, arguments); - this.ItemsChanged = new nullstone.Event(); - this.IsReadOnly = false; - } - ItemCollection.prototype.ToArray = function () { - return this._ht.slice(0); - }; - Object.defineProperty(ItemCollection.prototype, "Count", { - get: function () { - return this._ht.length; - }, - enumerable: true, - configurable: true - }); - ItemCollection.prototype.GetValueAt = function (index) { - var ht = this._ht; - if (index < 0 || index >= ht.length) - throw new IndexOutOfRangeException(index); - return ht[index]; - }; - ItemCollection.prototype.GetRange = function (startIndex, endIndex) { - return this._ht.slice(startIndex, endIndex + 1); - }; - ItemCollection.prototype.SetValueAt = function (index, value) { - this._ValidateReadOnly(); - this.SetValueAtImpl(index, value); - return true; - }; - ItemCollection.prototype.SetValueAtImpl = function (index, value) { - var ht = this._ht; - if (index < 0 || index >= ht.length) - throw new IndexOutOfRangeException(index); - var oldValue = ht[index]; - ht[index] = value; - this.ItemsChanged.raise(this, Fayde.Collections.CollectionChangedEventArgs.Replace(value, oldValue, index)); - }; - ItemCollection.prototype.Add = function (value) { - this._ValidateReadOnly(); - if (value == null) - throw new ArgumentException("value"); - return this.AddImpl(value); - }; - ItemCollection.prototype.AddImpl = function (value) { - var index = this._ht.push(value) - 1; - this.ItemsChanged.raise(this, Fayde.Collections.CollectionChangedEventArgs.Add(value, index)); - return index; - }; - ItemCollection.prototype.AddRange = function (values) { - this._ValidateReadOnly(); - if (!values) - return; - for (var i = 0; i < values.length; i++) { - if (values[i] == null) - throw new ArgumentException("value"); - } - this.AddRangeImpl(values); - }; - ItemCollection.prototype.AddRangeImpl = function (values) { - var index = this._ht.length; - this._ht = this._ht.concat(values); - this.ItemsChanged.raise(this, Fayde.Collections.CollectionChangedEventArgs.AddRange(values, index)); - }; - ItemCollection.prototype.Insert = function (index, value) { - this._ValidateReadOnly(); - if (value == null) - throw new ArgumentException("value"); - this.InsertImpl(index, value); - return true; - }; - ItemCollection.prototype.InsertImpl = function (index, value) { - var ht = this._ht; - if (index < 0 || index > ht.length) - throw new IndexOutOfRangeException(index); - if (index >= ht.length) - ht.push(value); - else - ht.splice(index, 0, value); - this.ItemsChanged.raise(this, Fayde.Collections.CollectionChangedEventArgs.Add(value, index)); - }; - ItemCollection.prototype.IndexOf = function (value) { - return this._ht.indexOf(value); - }; - ItemCollection.prototype.Contains = function (value) { - return this._ht.indexOf(value) > -1; - }; - ItemCollection.prototype.Remove = function (value) { - this._ValidateReadOnly(); - this.RemoveImpl(value); - return true; - }; - ItemCollection.prototype.RemoveImpl = function (value) { - var index = this._ht.indexOf(value); - if (index < 0) - return; - this._ht.splice(index, 1); - this.ItemsChanged.raise(this, Fayde.Collections.CollectionChangedEventArgs.Remove(value, index)); - }; - ItemCollection.prototype.RemoveAt = function (index) { - this._ValidateReadOnly(); - if (index < 0 || index >= this._ht.length) - throw new IndexOutOfRangeException(index); - this.RemoveAtImpl(index); - return true; - }; - ItemCollection.prototype.RemoveAtImpl = function (index) { - var item = this._ht.splice(index, 1)[0]; - this.ItemsChanged.raise(this, Fayde.Collections.CollectionChangedEventArgs.Remove(item, index)); - }; - ItemCollection.prototype.Clear = function () { - this._ValidateReadOnly(); - this.ClearImpl(); - return true; - }; - ItemCollection.prototype.ClearImpl = function () { - var old = this._ht; - this._ht = []; - this.ItemsChanged.raise(this, Fayde.Collections.CollectionChangedEventArgs.Reset(old)); - }; - ItemCollection.prototype._ValidateReadOnly = function () { - if (this.IsReadOnly) - throw new InvalidOperationException("The collection is readonly."); - }; - return ItemCollection; - })(Fayde.XamlObjectCollection); - Controls.ItemCollection = ItemCollection; - Fayde.CoreLibrary.add(ItemCollection); - })(Controls = Fayde.Controls || (Fayde.Controls = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Controls; - (function (Controls) { - var ItemsPanelTemplate = (function (_super) { - __extends(ItemsPanelTemplate, _super); - function ItemsPanelTemplate() { - _super.apply(this, arguments); - } - ItemsPanelTemplate.prototype.GetVisualTree = function (bindingSource) { - var panel = _super.prototype.GetVisualTree.call(this, bindingSource); - if (!(panel instanceof Controls.Panel)) - throw new XamlParseException("The root element of an ItemsPanelTemplate must be a Panel subclass."); - return panel; - }; - return ItemsPanelTemplate; - })(Fayde.Markup.FrameworkTemplate); - Controls.ItemsPanelTemplate = ItemsPanelTemplate; - Fayde.CoreLibrary.add(ItemsPanelTemplate); - })(Controls = Fayde.Controls || (Fayde.Controls = {})); -})(Fayde || (Fayde = {})); -/// -/// -var Fayde; -(function (Fayde) { - var Controls; - (function (Controls) { - var spxd = Fayde.Markup.CreateXaml("", Fayde.XMLNS + "/itemspresenter/stackpanel/default"); - var spft; - var vspxd = Fayde.Markup.CreateXaml("", Fayde.XMLNS + "/itemspresenter/virtualizingstackpanel/default"); - var vspft; - function getFallbackTemplate(ic) { - if (ic instanceof Controls.ListBox) - return vspft = vspft || Fayde.Markup.Load(ic.App, vspxd); - return spft = spft || Fayde.Markup.Load(ic.App, spxd); - } - var ItemsPresenterNode = (function (_super) { - __extends(ItemsPresenterNode, _super); - function ItemsPresenterNode(xobj) { - _super.call(this, xobj); - } - Object.defineProperty(ItemsPresenterNode.prototype, "ElementRoot", { - get: function () { return this._ElementRoot; }, - enumerable: true, - configurable: true - }); - ItemsPresenterNode.prototype.DoApplyTemplateWithError = function (error) { - if (this._ElementRoot) - return false; - var xobj = this.XObject; - var ic = xobj.TemplateOwner; - if (!(ic instanceof Controls.ItemsControl)) - return false; - var er; - if (ic.ItemsPanel) - er = this._ElementRoot = ic.ItemsPanel.GetVisualTree(xobj); - if (!er) - er = this._ElementRoot = getFallbackTemplate(ic).GetVisualTree(xobj); - Controls.ItemsControl.SetIsItemsHost(er, true); - if (!this.FinishApplyTemplateWithError(er, error)) - return false; - ic.XamlNode.ItemsPresenter = xobj; - xobj.OnItemsAdded(0, ic.Items.ToArray()); - return true; - }; - return ItemsPresenterNode; - })(Fayde.FENode); - Controls.ItemsPresenterNode = ItemsPresenterNode; - var ItemsPresenter = (function (_super) { - __extends(ItemsPresenter, _super); - function ItemsPresenter() { - _super.apply(this, arguments); - } - ItemsPresenter.prototype.CreateNode = function () { return new ItemsPresenterNode(this); }; - Object.defineProperty(ItemsPresenter.prototype, "ItemsControl", { - get: function () { - return this.TemplateOwner instanceof Controls.ItemsControl ? this.TemplateOwner : null; - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(ItemsPresenter.prototype, "Panel", { - get: function () { - var er = this.XamlNode.ElementRoot; - return er instanceof Controls.Panel ? er : undefined; - }, - enumerable: true, - configurable: true - }); - ItemsPresenter.Get = function (panel) { - if (!(panel instanceof Controls.Panel)) - return null; - if (!Controls.ItemsControl.GetIsItemsHost(panel)) - return null; - return panel.TemplateOwner instanceof ItemsPresenter ? panel.TemplateOwner : null; - }; - ItemsPresenter.prototype.OnItemsAdded = function (index, newItems) { - var panel = this.Panel; - if (!panel) - return; - if (panel instanceof Controls.VirtualizingPanel) { - panel.OnItemsAdded(index, newItems); - } - else { - for (var ic = this.ItemsControl, children = panel.Children, generator = ic.ItemContainersManager.CreateGenerator(index, newItems.length); generator.Generate();) { - var container = generator.Current; - children.Insert(index + generator.GenerateIndex, container); - ic.PrepareContainerForItem(container, generator.CurrentItem); - } - } - }; - ItemsPresenter.prototype.OnItemsRemoved = function (index, oldItems) { - var panel = this.Panel; - if (!panel) - return; - if (panel instanceof Controls.VirtualizingPanel) { - panel.OnItemsRemoved(index, oldItems); - } - else { - var icm = this.ItemsControl.ItemContainersManager; - var children = panel.Children; - var count = oldItems ? oldItems.length : null; - if (count == null || count === children.Count) { - children.Clear(); - } - else { - while (count > 0) { - children.RemoveAt(index); - count--; - } - } - } - }; - return ItemsPresenter; - })(Fayde.FrameworkElement); - Controls.ItemsPresenter = ItemsPresenter; - Fayde.CoreLibrary.add(ItemsPresenter); - })(Controls = Fayde.Controls || (Fayde.Controls = {})); -})(Fayde || (Fayde = {})); -/// -/// -var Fayde; -(function (Fayde) { - var Controls; - (function (Controls) { - var ListBox = (function (_super) { - __extends(ListBox, _super); - function ListBox() { - _super.call(this); - this._FocusedIndex = 0; - this.DefaultStyleKey = ListBox; - } - ListBox.prototype.ScrollIntoView = function (item) { - var tsv = this.$TemplateScrollViewer; - if (!tsv) - return; - var items = this.Items; - if (!items.Contains(item)) - return; - var ihro = { Value: null }; - var lbiro = { Value: null }; - var virtualizing = Controls.VirtualizingStackPanel.GetIsVirtualizing(this); - if (this._IsOnCurrentPage(item, ihro, lbiro)) - return; - var ihr = ihro.Value; - var lbir = lbiro.Value; - if (this._GetIsVerticalOrientation()) { - if (virtualizing) { - tsv.ScrollToVerticalOffset(this.SelectedIndex); - return; - } - var verticalOffset = tsv.VerticalOffset; - var verticalDelta = 0; - if (ihr.GetBottom() < lbir.GetBottom()) { - verticalDelta = lbir.GetBottom() - ihr.GetBottom(); - verticalOffset += verticalDelta; - } - if ((lbir.Y - verticalDelta) < ihr.Y) { - verticalOffset -= ihr.Y - (lbir.Y - verticalDelta); - } - tsv.ScrollToVerticalOffset(verticalOffset); - } - else { - if (virtualizing) { - tsv.ScrollToHorizontalOffset(this.SelectedIndex); - return; - } - var horizontalOffset = tsv.HorizontalOffset; - var horizontalDelta = 0; - if (ihr.GetRight() < lbir.GetRight()) { - horizontalDelta = lbir.GetRight() - ihr.GetRight(); - horizontalOffset += horizontalDelta; - } - if ((ihr.X - horizontalDelta) < ihr.X) { - horizontalOffset -= ihr.X - (lbir.X - horizontalDelta); - } - tsv.ScrollToHorizontalOffset(horizontalOffset); - } - }; - ListBox.prototype._NavigateByPage = function (forward) { - var tsv = this.$TemplateScrollViewer; - var newFocusedIndex = -1; - var item = (this._FocusedIndex !== -1) ? this.Items.GetValueAt(this._FocusedIndex) : null; - if (item != null && !this._IsOnCurrentPage(item)) { - this.ScrollIntoView(item); - if (tsv != null) - tsv.UpdateLayout(); - } - if (item == null) { - newFocusedIndex = this._GetFirstItemOnCurrentPage(this._FocusedIndex, forward); - } - else { - var firstItemOnCurrentPage = this._GetFirstItemOnCurrentPage(this._FocusedIndex, forward); - if (firstItemOnCurrentPage !== this._FocusedIndex) { - newFocusedIndex = firstItemOnCurrentPage; - } - else { - if (tsv != null) { - if (this._GetIsVerticalOrientation()) { - tsv.ScrollToVerticalOffset(Math.max(0, Math.min(tsv.ScrollableHeight, tsv.VerticalOffset + (tsv.ViewportHeight * (forward ? 1 : -1))))); - } - else { - tsv.ScrollToHorizontalOffset(Math.max(0, Math.min(tsv.ScrollableWidth, tsv.HorizontalOffset + (tsv.ViewportWidth * (forward ? 1 : -1))))); - } - tsv.UpdateLayout(); - } - newFocusedIndex = this._GetFirstItemOnCurrentPage(this._FocusedIndex, forward); - } - } - return newFocusedIndex; - }; - ListBox.prototype._ScrollInDirection = function (key) { - if (this.$TemplateScrollViewer) - this.$TemplateScrollViewer.ScrollInDirection(key); - }; - ListBox.prototype._IsOnCurrentPage = function (item, itemsHostRectOut, listBoxItemsRectOut) { - if (!itemsHostRectOut) - itemsHostRectOut = { Value: null }; - if (!listBoxItemsRectOut) - listBoxItemsRectOut = { Value: null }; - var itemsHost = Fayde.VisualTreeHelper.GetChild(Fayde.VisualTreeHelper.GetChild(this, 0), 0); - var tsv = this.$TemplateScrollViewer; - if (tsv != null) { - itemsHost = tsv; - if (tsv.$ScrollContentPresenter != null) - itemsHost = tsv.$ScrollContentPresenter; - } - if (!(itemsHost instanceof Fayde.FrameworkElement)) - itemsHost = null; - var ihro = itemsHostRectOut.Value = new minerva.Rect(); - var lbiro = listBoxItemsRectOut.Value = new minerva.Rect(); - if (!itemsHost) - return false; - minerva.Size.copyTo(itemsHost.RenderSize, ihro); - var lbi = this.ItemContainersManager.ContainerFromItem(item); - if (!lbi) - return false; - minerva.Size.copyTo(lbi.RenderSize, lbiro); - if (itemsHost instanceof Controls.Control) { - var padding = itemsHost.Padding; - if (padding) { - ihro.x = ihro.x + padding.left; - ihro.y = ihro.y + padding.top; - ihro.width = ihro.width - padding.left - padding.right; - ihro.height = ihro.height - padding.top - padding.bottom; - } - } - var genXform = lbi.TransformToVisual(itemsHost); - if (genXform != null) { - var ptl = genXform.Transform(new Point()); - var pbr = genXform.Transform(new Point(lbi.RenderSize.width, lbi.RenderSize.height)); - lbiro.x = Math.min(ptl.x, pbr.x); - lbiro.y = Math.min(ptl.y, pbr.y); - lbiro.width = Math.abs(ptl.x - pbr.x); - lbiro.height = Math.abs(ptl.y - pbr.y); - } - return this._GetIsVerticalOrientation() - ? ihro.y <= lbiro.y && minerva.Rect.getBottom(ihro) >= minerva.Rect.getBottom(lbiro) - : ihro.x <= lbiro.x && minerva.Rect.getRight(ihro) >= minerva.Rect.getRight(lbiro); - }; - ListBox.prototype._GetFirstItemOnCurrentPage = function (startingIndex, forward) { - var delta = forward ? 1 : -1; - var fiocp = -1; - var probeIndex = startingIndex; - var items = this.Items; - var itemsCount = items.Count; - while (probeIndex >= 0 && probeIndex < itemsCount && !this._IsOnCurrentPage(items.GetValueAt(probeIndex))) { - fiocp = probeIndex; - probeIndex += delta; - } - while (probeIndex >= 0 && probeIndex < itemsCount && this._IsOnCurrentPage(items.GetValueAt(probeIndex))) { - fiocp = probeIndex; - probeIndex += delta; - } - return fiocp; - }; - ListBox.prototype.OnItemContainerStyleChanged = function (args) { - var oldStyle = args.OldValue; - var newStyle = args.NewValue; - var enumerator = this.ItemContainersManager.GetEnumerator(); - while (enumerator.moveNext()) { - var lbi = enumerator.current; - if (lbi instanceof Controls.ListBoxItem && lbi.Style === oldStyle) - lbi.Style = newStyle; - } - }; - ListBox.prototype.OnKeyDown = function (args) { - if (args.Handled) - return; - var newFocusedIndex = -1; - switch (args.Key) { - case Fayde.Input.Key.Space: - case Fayde.Input.Key.Enter: - if (Fayde.Input.Key.Enter !== args.Key || Fayde.Input.KeyboardNavigation.GetAcceptsReturn(this)) { - if (!Fayde.Input.Keyboard.HasAlt()) { - var focusedEl = Fayde.Surface.GetFocusedElement(this); - var lbi; - if (focusedEl instanceof Controls.ListBoxItem) - lbi = focusedEl; - if (lbi) { - if (Fayde.Input.Keyboard.HasControl() && lbi.IsSelected) { - this.SelectedItem = null; - } - else { - this.SelectedItem = this.ItemContainersManager.ItemFromContainer(lbi); - } - args.Handled = true; - } - } - } - break; - case Fayde.Input.Key.Home: - newFocusedIndex = 0; - break; - case Fayde.Input.Key.End: - newFocusedIndex = this.Items.Count - 1; - break; - case Fayde.Input.Key.PageUp: - newFocusedIndex = this._NavigateByPage(false); - break; - case Fayde.Input.Key.PageDown: - newFocusedIndex = this._NavigateByPage(true); - break; - case Fayde.Input.Key.Left: - if (this._GetIsVerticalOrientation()) { - this._ScrollInDirection(Fayde.Input.Key.Left); - } - else { - newFocusedIndex = this._FocusedIndex - 1; - } - break; - case Fayde.Input.Key.Up: - if (this._GetIsVerticalOrientation()) { - newFocusedIndex = this._FocusedIndex - 1; - } - else { - this._ScrollInDirection(Fayde.Input.Key.Up); - } - break; - case Fayde.Input.Key.Right: - if (this._GetIsVerticalOrientation()) { - this._ScrollInDirection(Fayde.Input.Key.Right); - } - else { - newFocusedIndex = this._FocusedIndex + 1; - } - break; - case Fayde.Input.Key.Down: - if (this._GetIsVerticalOrientation()) { - newFocusedIndex = this._FocusedIndex + 1; - } - else { - this._ScrollInDirection(Fayde.Input.Key.Down); - } - break; - } - if (newFocusedIndex !== -1 && this._FocusedIndex !== -1 && newFocusedIndex !== this._FocusedIndex && newFocusedIndex >= 0 && newFocusedIndex < this.Items.Count) { - var icm = this.ItemContainersManager; - var lbi = icm.ContainerFromIndex(newFocusedIndex); - var item = icm.ItemFromContainer(lbi); - this.ScrollIntoView(item); - if (Fayde.Input.Keyboard.HasControl()) { - lbi.Focus(); - } - else { - this.SelectedItem = item; - } - args.Handled = true; - } - }; - ListBox.prototype._GetIsVerticalOrientation = function () { - var presenter = this.XamlNode.ItemsPresenter; - if (!presenter) - return true; - var p = presenter.Panel; - if (p instanceof Controls.StackPanel) - return p.Orientation === Fayde.Orientation.Vertical; - if (p instanceof Controls.VirtualizingStackPanel) - return p.Orientation === Fayde.Orientation.Vertical; - return true; - }; - ListBox.prototype.IsItemItsOwnContainer = function (item) { - return item instanceof Controls.ListBoxItem; - }; - ListBox.prototype.GetContainerForItem = function () { - var item = new Controls.ListBoxItem(); - var ics = this.ItemContainerStyle; - if (ics != null) - item.Style = ics; - return item; - }; - ListBox.prototype.PrepareContainerForItem = function (element, item) { - _super.prototype.PrepareContainerForItem.call(this, element, item); - var ics = this.ItemContainerStyle; - var lbi = element; - if (!lbi.Style && ics) - lbi.Style = ics; - }; - ListBox.prototype.OnGotFocus = function (e) { - _super.prototype.OnGotFocus.call(this, e); - this.SetValueInternal(ListBox.IsSelectionActiveProperty, true); - }; - ListBox.prototype.OnLostFocus = function (e) { - _super.prototype.OnLostFocus.call(this, e); - this.SetValueInternal(ListBox.IsSelectionActiveProperty, false); - }; - ListBox.prototype.NotifyListItemGotFocus = function (lbi) { - this._FocusedIndex = this.ItemContainersManager.IndexFromContainer(lbi); - }; - ListBox.prototype.NotifyListItemLostFocus = function (lbi) { - this._FocusedIndex = -1; - }; - ListBox.ItemContainerStyleProperty = DependencyProperty.Register("ItemContainerStyle", function () { return Fayde.Style; }, ListBox, undefined, function (d, args) { return d.OnItemContainerStyleChanged(args); }); - ListBox.IsSelectionActiveProperty = Controls.Primitives.Selector.IsSelectionActiveProperty; - return ListBox; - })(Controls.Primitives.Selector); - Controls.ListBox = ListBox; - Fayde.CoreLibrary.add(ListBox); - Controls.TemplateVisualStates(ListBox, { GroupName: "ValidationStates", Name: "Valid" }, { GroupName: "ValidationStates", Name: "InvalidUnfocused" }, { GroupName: "ValidationStates", Name: "InvalidFocused" }); - Controls.TemplateParts(ListBox, { Name: "ScrollViewer", Type: Controls.ScrollViewer }); - })(Controls = Fayde.Controls || (Fayde.Controls = {})); -})(Fayde || (Fayde = {})); -/// -/// -var Fayde; -(function (Fayde) { - var Controls; - (function (Controls) { - var VideoUpdater = minerva.controls.video.VideoUpdater; - var MediaElement = (function (_super) { - __extends(MediaElement, _super); - function MediaElement() { - _super.apply(this, arguments); - this.VideoOpened = new nullstone.Event(); - this.VideoFailed = new nullstone.Event(); - this.$watcher = null; - } - MediaElement.prototype.CreateLayoutUpdater = function () { - return new VideoUpdater(); - }; - MediaElement._SourceCoercer = function (d, propd, value) { - if (typeof value === "string") - return new Fayde.Media.Videos.VideoSource(new Fayde.Uri(value)); - if (value instanceof Fayde.Uri) - return new Fayde.Media.Videos.VideoSource(value); - return value; - }; - MediaElement.prototype.OnAutoPlayChanged = function (oldValue, newValue) { - var source = this.Source; - if (source instanceof Fayde.Media.Videos.VideoSourceBase) - source.setAutoPlay(newValue); - }; - MediaElement.prototype.OnSourceChanged = function (oldSource, newSource) { - var _this = this; - if (this.$watcher) { - this.$watcher.dispose(); - this.$watcher = null; - } - if (newSource instanceof Fayde.Media.Videos.VideoSourceBase) { - newSource.setAutoPlay(this.AutoPlay); - this.$watcher = newSource.watch({ - onErrored: function (source, error) { return _this.OnVideoErrored(source, error); }, - onCanPlay: function (source) { return _this.OnVideoCanPlay(source); }, - onChanged: function (source) { return _this.OnVideoChanged(source); } - }); - } - }; - MediaElement.prototype.OnVideoErrored = function (source, error) { - this.VideoFailed.raise(this, null); - }; - MediaElement.prototype.OnVideoCanPlay = function (source) { - this.VideoOpened.raise(this, null); - var lu = this.XamlNode.LayoutUpdater; - lu.invalidateMeasure(); - }; - MediaElement.prototype.OnVideoChanged = function (source) { - var lu = this.XamlNode.LayoutUpdater; - lu.invalidateMeasure(); - lu.invalidate(); - }; - MediaElement.prototype.Play = function () { - this.Source.Play(); - }; - MediaElement.prototype.Pause = function () { - this.Source.Pause(); - }; - MediaElement.AutoPlayProperty = DependencyProperty.Register("AutoPlay", function () { return Boolean; }, MediaElement, true, function (d, args) { return d.OnAutoPlayChanged(args.OldValue, args.NewValue); }); - MediaElement.SourceProperty = DependencyProperty.RegisterFull("Source", function () { return Fayde.Media.Videos.VideoSource; }, MediaElement, undefined, undefined, MediaElement._SourceCoercer); - MediaElement.StretchProperty = DependencyProperty.RegisterCore("Stretch", function () { return new Fayde.Enum(Fayde.Media.Stretch); }, MediaElement, Fayde.Media.Stretch.Uniform); - return MediaElement; - })(Fayde.FrameworkElement); - Controls.MediaElement = MediaElement; - Fayde.CoreLibrary.add(MediaElement); - Fayde.UIReaction(MediaElement.SourceProperty, function (upd, ov, nv, video) { - video.OnSourceChanged(ov, nv); - if (!nv) { - upd.updateBounds(); - upd.invalidate(); - } - upd.invalidateMeasure(); - upd.invalidateMetrics(); - }, false); - Fayde.UIReaction(MediaElement.StretchProperty, function (upd, ov, nv) { - upd.invalidateMeasure(); - upd.invalidateMetrics(); - }, false); - })(Controls = Fayde.Controls || (Fayde.Controls = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var RoutedEventArgs = (function () { - function RoutedEventArgs() { - this.Handled = false; - this.Source = null; - this.OriginalSource = null; - } - return RoutedEventArgs; - })(); - Fayde.RoutedEventArgs = RoutedEventArgs; - Fayde.CoreLibrary.add(RoutedEventArgs); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Input; - (function (Input) { - (function (Key) { - Key[Key["None"] = 0] = "None"; - Key[Key["Back"] = 1] = "Back"; - Key[Key["Tab"] = 2] = "Tab"; - Key[Key["Enter"] = 3] = "Enter"; - Key[Key["Shift"] = 4] = "Shift"; - Key[Key["Ctrl"] = 5] = "Ctrl"; - Key[Key["Alt"] = 6] = "Alt"; - Key[Key["CapsLock"] = 7] = "CapsLock"; - Key[Key["Escape"] = 8] = "Escape"; - Key[Key["Space"] = 9] = "Space"; - Key[Key["PageUp"] = 10] = "PageUp"; - Key[Key["PageDown"] = 11] = "PageDown"; - Key[Key["End"] = 12] = "End"; - Key[Key["Home"] = 13] = "Home"; - Key[Key["Left"] = 14] = "Left"; - Key[Key["Up"] = 15] = "Up"; - Key[Key["Right"] = 16] = "Right"; - Key[Key["Down"] = 17] = "Down"; - Key[Key["Insert"] = 18] = "Insert"; - Key[Key["Delete"] = 19] = "Delete"; - Key[Key["D0"] = 20] = "D0"; - Key[Key["D1"] = 21] = "D1"; - Key[Key["D2"] = 22] = "D2"; - Key[Key["D3"] = 23] = "D3"; - Key[Key["D4"] = 24] = "D4"; - Key[Key["D5"] = 25] = "D5"; - Key[Key["D6"] = 26] = "D6"; - Key[Key["D7"] = 27] = "D7"; - Key[Key["D8"] = 28] = "D8"; - Key[Key["D9"] = 29] = "D9"; - Key[Key["A"] = 30] = "A"; - Key[Key["B"] = 31] = "B"; - Key[Key["C"] = 32] = "C"; - Key[Key["D"] = 33] = "D"; - Key[Key["E"] = 34] = "E"; - Key[Key["F"] = 35] = "F"; - Key[Key["G"] = 36] = "G"; - Key[Key["H"] = 37] = "H"; - Key[Key["I"] = 38] = "I"; - Key[Key["J"] = 39] = "J"; - Key[Key["K"] = 40] = "K"; - Key[Key["L"] = 41] = "L"; - Key[Key["M"] = 42] = "M"; - Key[Key["N"] = 43] = "N"; - Key[Key["O"] = 44] = "O"; - Key[Key["P"] = 45] = "P"; - Key[Key["Q"] = 46] = "Q"; - Key[Key["R"] = 47] = "R"; - Key[Key["S"] = 48] = "S"; - Key[Key["T"] = 49] = "T"; - Key[Key["U"] = 50] = "U"; - Key[Key["V"] = 51] = "V"; - Key[Key["W"] = 52] = "W"; - Key[Key["X"] = 53] = "X"; - Key[Key["Y"] = 54] = "Y"; - Key[Key["Z"] = 55] = "Z"; - Key[Key["F1"] = 56] = "F1"; - Key[Key["F2"] = 57] = "F2"; - Key[Key["F3"] = 58] = "F3"; - Key[Key["F4"] = 59] = "F4"; - Key[Key["F5"] = 60] = "F5"; - Key[Key["F6"] = 61] = "F6"; - Key[Key["F7"] = 62] = "F7"; - Key[Key["F8"] = 63] = "F8"; - Key[Key["F9"] = 64] = "F9"; - Key[Key["F10"] = 65] = "F10"; - Key[Key["F11"] = 66] = "F11"; - Key[Key["F12"] = 67] = "F12"; - Key[Key["NumPad0"] = 68] = "NumPad0"; - Key[Key["NumPad1"] = 69] = "NumPad1"; - Key[Key["NumPad2"] = 70] = "NumPad2"; - Key[Key["NumPad3"] = 71] = "NumPad3"; - Key[Key["NumPad4"] = 72] = "NumPad4"; - Key[Key["NumPad5"] = 73] = "NumPad5"; - Key[Key["NumPad6"] = 74] = "NumPad6"; - Key[Key["NumPad7"] = 75] = "NumPad7"; - Key[Key["NumPad8"] = 76] = "NumPad8"; - Key[Key["NumPad9"] = 77] = "NumPad9"; - Key[Key["Multiply"] = 78] = "Multiply"; - Key[Key["Add"] = 79] = "Add"; - Key[Key["Subtract"] = 80] = "Subtract"; - Key[Key["Decimal"] = 81] = "Decimal"; - Key[Key["Divide"] = 82] = "Divide"; - Key[Key["Unknown"] = 255] = "Unknown"; - })(Input.Key || (Input.Key = {})); - var Key = Input.Key; - Fayde.CoreLibrary.addEnum(Key, "Key"); - var KeyboardEventArgs = (function (_super) { - __extends(KeyboardEventArgs, _super); - function KeyboardEventArgs() { - _super.apply(this, arguments); - } - return KeyboardEventArgs; - })(Fayde.RoutedEventArgs); - Input.KeyboardEventArgs = KeyboardEventArgs; - Fayde.CoreLibrary.add(KeyboardEventArgs); - var KeyEventArgs = (function (_super) { - __extends(KeyEventArgs, _super); - function KeyEventArgs(modifiers, keyCode, key, c) { - _super.call(this); - this.Modifiers = modifiers; - this.PlatformKeyCode = keyCode; - this.Key = key; - if (this.Key == null) - this.Key = Key.Unknown; - this.Char = c; - } - return KeyEventArgs; - })(KeyboardEventArgs); - Input.KeyEventArgs = KeyEventArgs; - Fayde.CoreLibrary.add(KeyEventArgs); - })(Input = Fayde.Input || (Fayde.Input = {})); -})(Fayde || (Fayde = {})); -/// -/// -/// -var Fayde; -(function (Fayde) { - var Controls; - (function (Controls) { - var Key = Fayde.Input.Key; - var MAX_UNDO_COUNT = 10; - var TextBoxBase = (function (_super) { - __extends(TextBoxBase, _super); - function TextBoxBase(eventsMask) { - var _this = this; - _super.call(this); - this._Selecting = false; - this._Captured = false; - this.IsReadOnly = false; - this.AcceptsReturn = false; - this.$ContentProxy = new Controls.Internal.TextBoxContentProxy(); - this.$Clipboard = Fayde.Clipboard.Create(); - var view = this.$View = this.CreateView(); - view.MouseLeftButtonDown.on(function (s, e) { return _this.OnMouseLeftButtonDown(e); }, this); - view.MouseLeftButtonUp.on(function (s, e) { return _this.OnMouseLeftButtonUp(e); }, this); - this.$Proxy = new Fayde.Text.Proxy(eventsMask, MAX_UNDO_COUNT); - this._SyncFont(); - } - TextBoxBase.prototype._SyncFont = function () { - var _this = this; - var view = this.$View; - var propds = [ - Controls.Control.ForegroundProperty, - Controls.Control.FontFamilyProperty, - Controls.Control.FontSizeProperty, - Controls.Control.FontStretchProperty, - Controls.Control.FontStyleProperty, - Controls.Control.FontWeightProperty - ]; - propds.forEach(function (propd) { return propd.Store.ListenToChanged(_this, propd, function (dobj, args) { return view.setFontProperty(propd, args.NewValue); }, _this); }); - }; - TextBoxBase.prototype.CreateView = function () { - return new Controls.Internal.TextBoxView(); - }; - Object.defineProperty(TextBoxBase.prototype, "Cursor", { - get: function () { - var cursor = this.GetValue(Fayde.FrameworkElement.CursorProperty); - if (cursor === Fayde.CursorType.Default) - return Fayde.CursorType.IBeam; - return cursor; - }, - enumerable: true, - configurable: true - }); - TextBoxBase.prototype.selectBasedonSelectionMode = function () { - var proxy = this.$Proxy; - var anchor = proxy.selAnchor; - var cursor = proxy.selCursor; - switch (this.SelectionOnFocus) { - case Controls.SelectionOnFocus.Unchanged: - break; - case Controls.SelectionOnFocus.SelectAll: - proxy.selectAll(); - break; - case Controls.SelectionOnFocus.CaretToBeginning: - cursor = this.$Advancer.CursorLineBegin(cursor); - proxy.setAnchorCursor(anchor, cursor); - break; - case Controls.SelectionOnFocus.CaretToEnd: - cursor = this.$Advancer.CursorLineEnd(cursor); - proxy.setAnchorCursor(anchor, cursor); - break; - case Controls.SelectionOnFocus.DefaultSelectAll: - proxy.selectAll(); - break; - default: - break; - } - }; - TextBoxBase.prototype.OnApplyTemplate = function () { - _super.prototype.OnApplyTemplate.call(this); - this.$ContentProxy.setElement(this.GetTemplateChild("ContentElement", Fayde.FrameworkElement), this.$View); - }; - TextBoxBase.prototype.OnLostFocus = function (e) { - _super.prototype.OnLostFocus.call(this, e); - this.$View.setIsFocused(false); - }; - TextBoxBase.prototype.OnGotFocus = function (e) { - _super.prototype.OnGotFocus.call(this, e); - this.$View.setIsFocused(true); - this.selectBasedonSelectionMode(); - }; - TextBoxBase.prototype.OnMouseLeftButtonDown = function (e) { - if (e.Handled) - return; - e.Handled = true; - this.Focus(); - this._Captured = this.CaptureMouse(); - this._Selecting = true; - var cursor = this.$View.GetCursorFromPoint(e.GetPosition(this.$View)); - this.$Proxy.beginSelect(cursor); - }; - TextBoxBase.prototype.OnMouseLeftButtonUp = function (e) { - if (e.Handled) - return; - if (this._Captured) - this.ReleaseMouseCapture(); - e.Handled = true; - this._Selecting = false; - this._Captured = false; - }; - TextBoxBase.prototype.OnMouseMove = function (e) { - if (!this._Selecting) - return; - e.Handled = true; - var cursor = this.$View.GetCursorFromPoint(e.GetPosition(this.$View)); - this.$Proxy.adjustSelection(cursor); - }; - TextBoxBase.prototype.OnTouchDown = function (e) { - _super.prototype.OnTouchDown.call(this, e); - if (e.Handled) - return; - e.Handled = true; - this.Focus(); - e.Device.Capture(this); - this._Selecting = true; - var pos = e.Device.GetTouchPoint(this.$View).Position; - var cursor = this.$View.GetCursorFromPoint(pos); - this.$Proxy.beginSelect(cursor); - }; - TextBoxBase.prototype.OnTouchUp = function (e) { - _super.prototype.OnTouchUp.call(this, e); - if (e.Handled) - return; - if (e.Device.Captured === this) - e.Device.ReleaseCapture(this); - e.Handled = true; - this._Selecting = false; - }; - TextBoxBase.prototype.OnTouchMove = function (e) { - _super.prototype.OnTouchMove.call(this, e); - if (!this._Selecting) - return; - e.Handled = true; - var pos = e.Device.GetTouchPoint(this.$View).Position; - var cursor = this.$View.GetCursorFromPoint(pos); - this.$Proxy.adjustSelection(cursor); - }; - TextBoxBase.prototype.OnKeyDown = function (args) { - switch (args.Key) { - case Key.Shift: - case Key.Ctrl: - case Key.Alt: - return; - } - var isReadOnly = this.IsReadOnly; - var handled = false; - var proxy = this.$Proxy; - proxy.begin(); - switch (args.Key) { - case Key.Back: - if (isReadOnly) - break; - handled = this._KeyDownBackSpace(args.Modifiers); - break; - case Key.Delete: - if (isReadOnly) - break; - if (args.Modifiers.Shift) { - handled = true; - } - else { - handled = this._KeyDownDelete(args.Modifiers); - } - break; - case Key.Insert: - if (args.Modifiers.Shift) { - handled = true; - } - else if (args.Modifiers.Ctrl) { - handled = true; - } - break; - case Key.PageDown: - handled = this._KeyDownPageDown(args.Modifiers); - break; - case Key.PageUp: - handled = this._KeyDownPageUp(args.Modifiers); - break; - case Key.Home: - handled = this._KeyDownHome(args.Modifiers); - break; - case Key.End: - handled = this._KeyDownEnd(args.Modifiers); - break; - case Key.Left: - handled = this._KeyDownLeft(args.Modifiers); - break; - case Key.Right: - handled = this._KeyDownRight(args.Modifiers); - break; - case Key.Down: - handled = this._KeyDownDown(args.Modifiers); - break; - case Key.Up: - handled = this._KeyDownUp(args.Modifiers); - break; - default: - if (args.Modifiers.Ctrl) { - switch (args.Key) { - case Key.A: - handled = true; - proxy.selectAll(); - break; - case Key.C: - this.$Clipboard.CopyText(this.$Proxy.getSelectedText()); - handled = true; - break; - case Key.X: - if (isReadOnly) - break; - this.$Clipboard.CopyText(this.$Proxy.getSelectedText()); - proxy.removeText(this.$Proxy.selAnchor, this.$Proxy.selCursor); - handled = true; - break; - case Key.V: - if (isReadOnly) - break; - this.$Clipboard.GetTextContents(function (text) { return proxy.paste(text); }); - handled = true; - break; - case Key.Y: - if (!isReadOnly) { - handled = true; - proxy.redo(); - } - break; - case Key.Z: - if (!isReadOnly) { - handled = true; - proxy.undo(); - } - break; - } - } - break; - } - if (handled) { - args.Handled = handled; - } - proxy.end(); - if (!args.Handled && !isReadOnly) - this.PostOnKeyDown(args); - }; - TextBoxBase.prototype.PostOnKeyDown = function (args) { - if (args.Handled) - return; - if (args.Modifiers.Alt || args.Modifiers.Ctrl) - return; - var proxy = this.$Proxy; - proxy.begin(); - if (args.Key === Key.Enter) { - if (this.AcceptsReturn === true) { - proxy.enterText('\n'); - args.Handled = true; - } - } - else if (args.Char != null && !args.Modifiers.Ctrl && !args.Modifiers.Alt) { - proxy.enterText(args.Char); - args.Handled = true; - } - proxy.end(); - }; - TextBoxBase.prototype._KeyDownBackSpace = function (modifiers) { - if (modifiers.Shift || modifiers.Alt) - return false; - var proxy = this.$Proxy; - var anchor = proxy.selAnchor; - var cursor = proxy.selCursor; - var start = 0; - var length = 0; - if (cursor !== anchor) { - length = Math.abs(cursor - anchor); - start = Math.min(anchor, cursor); - } - else if (modifiers.Ctrl) { - start = this.$Advancer.CursorPrevWord(cursor); - length = cursor - start; - } - else if (cursor > 0) { - start = this.$Advancer.CursorPrevChar(cursor); - length = cursor - start; - } - proxy.removeText(start, length); - return true; - }; - TextBoxBase.prototype._KeyDownDelete = function (modifiers) { - if (modifiers.Shift || modifiers.Alt) - return false; - var proxy = this.$Proxy; - var anchor = proxy.selAnchor; - var cursor = proxy.selCursor; - var start = 0; - var length = 0; - if (cursor !== anchor) { - length = Math.abs(cursor - anchor); - start = Math.min(anchor, cursor); - } - else if (modifiers.Ctrl) { - length = this.$Advancer.CursorNextWord(cursor) - cursor; - start = cursor; - } - else { - length = this.$Advancer.CursorNextChar(cursor) - cursor; - start = cursor; - } - return proxy.removeText(start, length); - }; - TextBoxBase.prototype._KeyDownPageDown = function (modifiers) { - if (modifiers.Alt) - return false; - var proxy = this.$Proxy; - var anchor = proxy.selAnchor; - var cursor = proxy.selCursor; - cursor = this.$Advancer.CursorDown(cursor, true); - if (!modifiers.Shift) - anchor = cursor; - return proxy.setAnchorCursor(anchor, cursor); - }; - TextBoxBase.prototype._KeyDownPageUp = function (modifiers) { - if (modifiers.Alt) - return false; - var proxy = this.$Proxy; - var anchor = proxy.selAnchor; - var cursor = proxy.selCursor; - cursor = this.$Advancer.CursorUp(cursor, true); - if (!modifiers.Shift) - anchor = cursor; - return proxy.setAnchorCursor(anchor, cursor); - }; - TextBoxBase.prototype._KeyDownHome = function (modifiers) { - if (modifiers.Alt) - return false; - var proxy = this.$Proxy; - var anchor = proxy.selAnchor; - var cursor = proxy.selCursor; - if (modifiers.Ctrl) { - cursor = this.$Advancer.CursorBegin(cursor); - } - else { - cursor = this.$Advancer.CursorLineBegin(cursor); - } - if (!modifiers.Shift) - anchor = cursor; - return proxy.setAnchorCursor(anchor, cursor); - }; - TextBoxBase.prototype._KeyDownEnd = function (modifiers) { - if (modifiers.Alt) - return false; - var proxy = this.$Proxy; - var anchor = proxy.selAnchor; - var cursor = proxy.selCursor; - if (modifiers.Ctrl) { - cursor = this.$Advancer.CursorEnd(cursor); - } - else { - cursor = this.$Advancer.CursorLineEnd(cursor); - } - if (!modifiers.Shift) - anchor = cursor; - return proxy.setAnchorCursor(anchor, cursor); - }; - TextBoxBase.prototype._KeyDownLeft = function (modifiers) { - if (modifiers.Alt) - return false; - var proxy = this.$Proxy; - var anchor = proxy.selAnchor; - var cursor = proxy.selCursor; - if (modifiers.Ctrl) { - cursor = this.$Advancer.CursorPrevWord(cursor); - } - else if (!modifiers.Shift && anchor !== cursor) { - cursor = Math.min(anchor, cursor); - } - else { - cursor = this.$Advancer.CursorPrevChar(cursor); - } - if (!modifiers.Shift) - anchor = cursor; - return proxy.setAnchorCursor(anchor, cursor); - }; - TextBoxBase.prototype._KeyDownRight = function (modifiers) { - if (modifiers.Alt) - return false; - var proxy = this.$Proxy; - var anchor = proxy.selAnchor; - var cursor = proxy.selCursor; - if (modifiers.Ctrl) { - cursor = this.$Advancer.CursorNextWord(cursor); - } - else if (!modifiers.Shift && anchor !== cursor) { - cursor = Math.max(anchor, cursor); - } - else { - cursor = this.$Advancer.CursorNextChar(cursor); - } - if (!modifiers.Shift) - anchor = cursor; - return proxy.setAnchorCursor(anchor, cursor); - }; - TextBoxBase.prototype._KeyDownDown = function (modifiers) { - if (modifiers.Alt) - return false; - var proxy = this.$Proxy; - var cursor = this.$Advancer.CursorDown(proxy.selCursor, false); - var anchor = proxy.selAnchor; - if (!modifiers.Shift) - anchor = cursor; - return proxy.setAnchorCursor(anchor, cursor); - }; - TextBoxBase.prototype._KeyDownUp = function (modifiers) { - if (modifiers.Alt) - return false; - var proxy = this.$Proxy; - var cursor = this.$Advancer.CursorUp(proxy.selCursor, false); - var anchor = proxy.selAnchor; - if (!modifiers.Shift) - anchor = cursor; - return proxy.setAnchorCursor(anchor, cursor); - }; - TextBoxBase.CaretBrushProperty = DependencyProperty.RegisterCore("CaretBrush", function () { return Fayde.Media.Brush; }, TextBoxBase); - TextBoxBase.SelectionForegroundProperty = DependencyProperty.RegisterCore("SelectionForeground", function () { return Fayde.Media.Brush; }, TextBoxBase); - TextBoxBase.SelectionBackgroundProperty = DependencyProperty.RegisterCore("SelectionBackground", function () { return Fayde.Media.Brush; }, TextBoxBase); - TextBoxBase.SelectionLengthProperty = DependencyProperty.RegisterFull("SelectionLength", function () { return Number; }, TextBoxBase, 0, undefined, undefined, true, positiveIntValidator); - TextBoxBase.SelectionStartProperty = DependencyProperty.RegisterFull("SelectionStart", function () { return Number; }, TextBoxBase, 0, undefined, undefined, true, positiveIntValidator); - TextBoxBase.BaselineOffsetProperty = DependencyProperty.Register("BaselineOffset", function () { return Number; }, TextBoxBase); - TextBoxBase.MaxLengthProperty = DependencyProperty.RegisterFull("MaxLength", function () { return Number; }, TextBoxBase, 0, undefined, undefined, undefined, positiveIntValidator); - TextBoxBase.SelectionOnFocusProperty = DependencyProperty.Register("SelectionOnFocus", function () { return new Fayde.Enum(Controls.SelectionOnFocus); }, TextBoxBase, Controls.SelectionOnFocus.Default); - return TextBoxBase; - })(Controls.Control); - Controls.TextBoxBase = TextBoxBase; - Fayde.RegisterType(TextBoxBase, Fayde.XMLNSINTERNAL); - var reactions; - (function (reactions) { - Fayde.DPReaction(TextBoxBase.CaretBrushProperty, function (tbb, ov, nv) { - tbb.$View.setCaretBrush(nv); - }); - Fayde.DPReaction(TextBoxBase.SelectionStartProperty, function (tbb, ov, nv) { - tbb.$Proxy.setSelectionStart(nv); - tbb.$View.setSelectionStart(nv); - }, false); - Fayde.DPReaction(TextBoxBase.SelectionLengthProperty, function (tbb, ov, nv) { - tbb.$Proxy.setSelectionLength(nv); - tbb.$View.setSelectionLength(nv); - }, false); - Fayde.DPReaction(TextBoxBase.SelectionBackgroundProperty, function (tbb, ov, nv) { - tbb.$View.setFontAttr("selectionBackground", nv); - tbb.XamlNode.LayoutUpdater.invalidate(); - }); - Fayde.DPReaction(TextBoxBase.SelectionForegroundProperty, function (tbb, ov, nv) { - tbb.$View.setFontAttr("selectionForeground", nv); - tbb.XamlNode.LayoutUpdater.invalidate(); - }); - Fayde.DPReaction(TextBoxBase.MaxLengthProperty, function (tbb, ov, nv) { - tbb.$Proxy.maxLength = nv; - }, false); - })(reactions || (reactions = {})); - function positiveIntValidator(dobj, propd, value) { - if (typeof value !== 'number') - return false; - return value >= 0; - } - })(Controls = Fayde.Controls || (Fayde.Controls = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Controls; - (function (Controls) { - var PasswordBox = (function (_super) { - __extends(PasswordBox, _super); - function PasswordBox() { - var _this = this; - _super.call(this, Fayde.Text.EmitChangedType.TEXT); - this.DefaultStyleKey = PasswordBox; - var proxy = this.$Proxy; - proxy.SyncSelectionStart = function (value) { return _this.SetCurrentValue(PasswordBox.SelectionStartProperty, value); }; - proxy.SyncSelectionLength = function (value) { return _this.SetCurrentValue(PasswordBox.SelectionLengthProperty, value); }; - proxy.SyncText = function (value) { return _this.SetCurrentValue(PasswordBox.PasswordProperty, value); }; - this.$Advancer = new Controls.Internal.PasswordBoxCursorAdvancer(this.$Proxy); - } - Object.defineProperty(PasswordBox.prototype, "DisplayText", { - get: function () { - var result = ""; - var count = this.$Proxy.text.length; - var pattern = this.PasswordChar; - while (count > 0) { - if (count & 1) - result += pattern; - count >>= 1, pattern += pattern; - } - return result; - }, - enumerable: true, - configurable: true - }); - PasswordBox.PasswordCharProperty = DependencyProperty.Register("PasswordChar", function () { return String; }, PasswordBox, String.fromCharCode(9679)); - PasswordBox.PasswordProperty = DependencyProperty.Register("Password", function () { return String; }, PasswordBox); - return PasswordBox; - })(Controls.TextBoxBase); - Controls.PasswordBox = PasswordBox; - Fayde.CoreLibrary.add(PasswordBox); - Controls.TemplateVisualStates(PasswordBox, { GroupName: "CommonStates", Name: "Normal" }, { GroupName: "CommonStates", Name: "MouseOver" }, { GroupName: "CommonStates", Name: "Disabled" }, { GroupName: "FocusStates", Name: "Unfocused" }, { GroupName: "FocusStates", Name: "Focused" }, { GroupName: "ValidationStates", Name: "Valid" }, { GroupName: "ValidationStates", Name: "InvalidUnfocused" }, { GroupName: "ValidationStates", Name: "InvalidFocused" }); - var reactions; - (function (reactions) { - Fayde.DPReaction(PasswordBox.PasswordCharProperty, function (pb, ov, nv) { - pb.$View.setText(pb.DisplayText); - }, false); - Fayde.DPReaction(PasswordBox.PasswordProperty, function (pb, ov, nv) { - pb.$Proxy.setText(nv); - pb.$View.setText(pb.DisplayText); - }, false); - })(reactions || (reactions = {})); - })(Controls = Fayde.Controls || (Fayde.Controls = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Controls; - (function (Controls) { - var ProgressBar = (function (_super) { - __extends(ProgressBar, _super); - function ProgressBar() { - _super.call(this); - this.DefaultStyleKey = ProgressBar; - } - ProgressBar.prototype.OnIsIndeterminateChanged = function (args) { - this._UpdateIndicator(); - this.UpdateVisualState(); - }; - ProgressBar.prototype.OnMinimumChanged = function (oldMinimum, newMinimum) { - _super.prototype.OnMinimumChanged.call(this, oldMinimum, newMinimum); - this._UpdateIndicator(); - }; - ProgressBar.prototype.OnMaximumChanged = function (oldMaximum, newMaximum) { - _super.prototype.OnMaximumChanged.call(this, oldMaximum, newMaximum); - this._UpdateIndicator(); - }; - ProgressBar.prototype.OnValueChanged = function (oldValue, newValue) { - _super.prototype.OnValueChanged.call(this, oldValue, newValue); - this._UpdateIndicator(); - }; - ProgressBar.prototype.OnApplyTemplate = function () { - _super.prototype.OnApplyTemplate.call(this); - var track = this._Track; - if (track) - track.SizeChanged.off(this._OnTrackSizeChanged, this); - track = this._Track = this.GetTemplateChild("ProgressBarTrack", Fayde.FrameworkElement); - this._Indicator = this.GetTemplateChild("ProgressBarIndicator", Fayde.FrameworkElement); - if (track) - track.SizeChanged.on(this._OnTrackSizeChanged, this); - this.UpdateVisualState(false); - }; - ProgressBar.prototype.GoToStates = function (gotoFunc) { - if (this.IsIndeterminate) - gotoFunc("Indeterminate"); - else - gotoFunc("Determinate"); - }; - ProgressBar.prototype._OnTrackSizeChanged = function (sender, e) { - this._UpdateIndicator(); - }; - ProgressBar.prototype._UpdateIndicator = function () { - var min = this.Minimum; - var max = this.Maximum; - var val = this.Value; - var indicator = this._Indicator; - if (!indicator) - return; - var parent = Fayde.VisualTreeHelper.GetParent(indicator); - if (!parent) - return; - var margin = indicator.Margin; - var outerWidth = (margin) ? margin.left + margin.right : 0.0; - var padding = null; - if (parent instanceof Controls.Border) - padding = parent.Padding; - else if (parent instanceof Controls.Control) - padding = parent.Padding; - if (padding) { - outerWidth += padding.left; - outerWidth += padding.right; - } - var progress = 1.0; - if (!this.IsIndeterminate && max !== min) - progress = (val - min) / (max - min); - var fullWidth = Math.max(0, parent.ActualWidth - outerWidth); - indicator.Width = fullWidth * progress; - }; - ProgressBar.IsIndeterminateProperty = DependencyProperty.Register("IsIndeterminate", function () { return Boolean; }, ProgressBar, false, function (d, args) { return d.OnIsIndeterminateChanged(args); }); - return ProgressBar; - })(Controls.Primitives.RangeBase); - Controls.ProgressBar = ProgressBar; - Fayde.CoreLibrary.add(ProgressBar); - Controls.TemplateVisualStates(ProgressBar, { GroupName: "CommonStates", Name: "Indeterminate" }, { GroupName: "CommonStates", Name: "Determinate" }); - Controls.TemplateParts(ProgressBar, { Name: "ProgressBarIndicator", Type: Fayde.FrameworkElement }, { Name: "ProgressBarTrack", Type: Fayde.FrameworkElement }); - })(Controls = Fayde.Controls || (Fayde.Controls = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Controls; - (function (Controls) { - var RadioButton = (function (_super) { - __extends(RadioButton, _super); - function RadioButton() { - _super.call(this); - this.DefaultStyleKey = RadioButton; - register("", this); - } - RadioButton.prototype.OnGroupNameChanged = function (args) { - unregister(args.OldValue, this); - register(args.NewValue, this); - }; - RadioButton.prototype.OnIsCheckedChanged = function (e) { - if (e.NewValue === true) - this.UpdateRadioButtonGroup(); - _super.prototype.OnIsCheckedChanged.call(this, e); - }; - RadioButton.prototype.OnToggle = function () { - this.IsChecked = true; - }; - RadioButton.prototype.UpdateRadioButtonGroup = function () { - var groupName = this.GroupName || ""; - var elements = groupNameToElements[groupName]; - if (!elements) - return; - var element = null; - if (groupName) { - var rootNode = this.XamlNode.GetVisualRoot(); - for (var i = 0; i < elements.length; i++) { - element = elements[i]; - if (element === this) - continue; - if (!element.IsChecked) - continue; - if (rootNode !== element.XamlNode.GetVisualRoot()) - continue; - element.IsChecked = false; - } - } - else { - var vpNode = this.XamlNode.VisualParentNode; - for (var i = 0; i < elements.length; i++) { - element = elements[i]; - if (element === this) - continue; - if (!element.IsChecked) - continue; - if (vpNode !== element.XamlNode.VisualParentNode) - continue; - element.IsChecked = false; - } - } - }; - RadioButton.GroupNameProperty = DependencyProperty.Register("GroupName", function () { return String; }, RadioButton, false, function (d, args) { return d.OnGroupNameChanged(args); }); - return RadioButton; - })(Controls.Primitives.ToggleButton); - Controls.RadioButton = RadioButton; - Fayde.CoreLibrary.add(RadioButton); - Controls.TemplateVisualStates(RadioButton, { GroupName: "CommonStates", Name: "Normal" }, { GroupName: "CommonStates", Name: "MouseOver" }, { GroupName: "CommonStates", Name: "Pressed" }, { GroupName: "CommonStates", Name: "Disabled" }, { GroupName: "FocusStates", Name: "Unfocused" }, { GroupName: "FocusStates", Name: "Focused" }, { GroupName: "CheckStates", Name: "Unchecked" }, { GroupName: "CheckStates", Name: "Checked" }, { GroupName: "CheckStates", Name: "Indeterminate" }, { GroupName: "ValidationStates", Name: "InvalidUnfocused" }, { GroupName: "ValidationStates", Name: "InvalidFocused" }, { GroupName: "ValidationStates", Name: "Valid" }); - var groupNameToElements = []; - function register(groupName, radioButton) { - if (!groupName) - groupName = ""; - var list = groupNameToElements[groupName]; - if (!list) - groupNameToElements[groupName] = list = []; - list.push(radioButton); - } - function unregister(groupName, radioButton) { - if (!groupName) - groupName = ""; - var list = groupNameToElements[groupName]; - if (list) { - var index = list.indexOf(radioButton); - if (index > -1) - list.splice(index, 1); - } - } - })(Controls = Fayde.Controls || (Fayde.Controls = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Controls; - (function (Controls) { - var _RichTextBoxView = (function () { - function _RichTextBoxView() { - } - return _RichTextBoxView; - })(); - Controls._RichTextBoxView = _RichTextBoxView; - Fayde.RegisterType(_RichTextBoxView, Fayde.XMLNSINTERNAL); - var RichTextBox = (function (_super) { - __extends(RichTextBox, _super); - function RichTextBox() { - _super.call(this); - this.DefaultStyleKey = RichTextBox; - } - return RichTextBox; - })(Controls.Control); - Controls.RichTextBox = RichTextBox; - Fayde.CoreLibrary.add(RichTextBox); - })(Controls = Fayde.Controls || (Fayde.Controls = {})); -})(Fayde || (Fayde = {})); -/// -/// -var Fayde; -(function (Fayde) { - var Controls; - (function (Controls) { - var RowDefinition = (function (_super) { - __extends(RowDefinition, _super); - function RowDefinition() { - _super.apply(this, arguments); - } - RowDefinition.prototype.setActualHeight = function (value) { - this.SetCurrentValue(RowDefinition.ActualHeightProperty, value); - }; - RowDefinition.HeightProperty = DependencyProperty.Register("Height", function () { return Controls.GridLength; }, RowDefinition, undefined, Fayde.Incite); - RowDefinition.MaxHeightProperty = DependencyProperty.Register("MaxHeight", function () { return Number; }, RowDefinition, Number.POSITIVE_INFINITY, Fayde.Incite); - RowDefinition.MinHeightProperty = DependencyProperty.Register("MinHeight", function () { return Number; }, RowDefinition, 0.0, Fayde.Incite); - RowDefinition.ActualHeightProperty = DependencyProperty.RegisterReadOnly("ActualHeight", function () { return Number; }, RowDefinition, 0.0); - return RowDefinition; - })(Fayde.DependencyObject); - Controls.RowDefinition = RowDefinition; - Fayde.CoreLibrary.add(RowDefinition); - var GridUnitType = minerva.controls.grid.GridUnitType; - function ConvertRowDefinition(o) { - if (!o || o instanceof RowDefinition) - return o; - var s = o.toString(); - var rd = new RowDefinition(); - if (s.toLowerCase() === "auto") { - rd.Height = new Controls.GridLength(0, GridUnitType.Auto); - return rd; - } - if (s === "*") { - rd.Height = new Controls.GridLength(1, GridUnitType.Star); - return rd; - } - var v = parseFloat(s); - if (isNaN(v)) - throw new XamlParseException("Invalid RowDefinition: '" + s + "'."); - rd.Height = new Controls.GridLength(v, s[s.length - 1] === "*" ? GridUnitType.Star : GridUnitType.Pixel); - return rd; - } - nullstone.registerTypeConverter(RowDefinition, ConvertRowDefinition); - var RowDefinitionCollection = (function (_super) { - __extends(RowDefinitionCollection, _super); - function RowDefinitionCollection() { - _super.apply(this, arguments); - } - RowDefinitionCollection.prototype._RaiseItemAdded = function (value, index) { - Fayde.Incite(this, { - item: value, - index: index, - add: true - }); - }; - RowDefinitionCollection.prototype._RaiseItemRemoved = function (value, index) { - Fayde.Incite(this, { - item: value, - index: index, - add: false - }); - }; - return RowDefinitionCollection; - })(Fayde.XamlObjectCollection); - Controls.RowDefinitionCollection = RowDefinitionCollection; - Fayde.CoreLibrary.add(RowDefinitionCollection); - function ConvertRowDefinitionCollection(o) { - if (!o || o instanceof RowDefinitionCollection) - return o; - if (typeof o === "string") { - var tokens = o.split(" "); - var len = tokens.length; - var rdc = new RowDefinitionCollection(); - var rd; - for (var i = 0; i < len; i++) { - if (rd = ConvertRowDefinition(tokens[i])) - rdc.Add(rd); - } - return rdc; - } - return undefined; - } - nullstone.registerTypeConverter(RowDefinitionCollection, ConvertRowDefinitionCollection); - })(Controls = Fayde.Controls || (Fayde.Controls = {})); -})(Fayde || (Fayde = {})); -/// -/// -/// -var Fayde; -(function (Fayde) { - var Controls; - (function (Controls) { - var GridUnitType = minerva.controls.grid.GridUnitType; - var Slider = (function (_super) { - __extends(Slider, _super); - function Slider() { - _super.call(this); - this._DragValue = 0; - this.DefaultStyleKey = Slider; - this.SizeChanged.on(this._HandleSizeChanged, this); - } - Slider.prototype.OnApplyTemplate = function () { - _super.prototype.OnApplyTemplate.call(this); - this.$HorizontalTemplate = this.GetTemplateChild("HorizontalTemplate", Fayde.FrameworkElement); - this.$HorizontalLargeIncrease = this.GetTemplateChild("HorizontalTrackLargeChangeIncreaseRepeatButton", Controls.Primitives.RepeatButton); - this.$HorizontalLargeDecrease = this.GetTemplateChild("HorizontalTrackLargeChangeDecreaseRepeatButton", Controls.Primitives.RepeatButton); - this.$HorizontalThumb = this.GetTemplateChild("HorizontalThumb", Controls.Primitives.Thumb); - this.$VerticalTemplate = this.GetTemplateChild("VerticalTemplate", Fayde.FrameworkElement); - this.$VerticalLargeIncrease = this.GetTemplateChild("VerticalTrackLargeChangeIncreaseRepeatButton", Controls.Primitives.RepeatButton); - this.$VerticalLargeDecrease = this.GetTemplateChild("VerticalTrackLargeChangeDecreaseRepeatButton", Controls.Primitives.RepeatButton); - this.$VerticalThumb = this.GetTemplateChild("VerticalThumb", Controls.Primitives.Thumb); - if (this.$HorizontalThumb != null) { - this.$HorizontalThumb.DragStarted.on(this._OnThumbDragStarted, this); - this.$HorizontalThumb.DragDelta.on(this._OnThumbDragDelta, this); - } - if (this.$HorizontalLargeDecrease != null) { - this.$HorizontalLargeDecrease.Click.on(function (sender, e) { this.Focus(); this.Value -= this.LargeChange; }, this); - } - if (this.$HorizontalLargeIncrease != null) { - this.$HorizontalLargeIncrease.Click.on(function (sender, e) { this.Focus(); this.Value += this.LargeChange; }, this); - } - if (this.$VerticalThumb != null) { - this.$VerticalThumb.DragStarted.on(this._OnThumbDragStarted, this); - this.$VerticalThumb.DragDelta.on(this._OnThumbDragDelta, this); - } - if (this.$VerticalLargeDecrease != null) { - this.$VerticalLargeDecrease.Click.on(function (sender, e) { this.Focus(); this.Value -= this.LargeChange; }, this); - } - if (this.$VerticalLargeIncrease != null) { - this.$VerticalLargeIncrease.Click.on(function (sender, e) { this.Focus(); this.Value += this.LargeChange; }, this); - } - this._OnOrientationChanged(); - this.UpdateVisualState(false); - }; - Slider.prototype.OnIsEnabledChanged = function (e) { - _super.prototype.OnIsEnabledChanged.call(this, e); - this.UpdateVisualState(); - }; - Slider.prototype.OnMinimumChanged = function (oldMin, newMin) { - _super.prototype.OnMinimumChanged.call(this, oldMin, newMin); - this._UpdateTrackLayout(); - }; - Slider.prototype.OnMaximumChanged = function (oldMax, newMax) { - _super.prototype.OnMaximumChanged.call(this, oldMax, newMax); - this._UpdateTrackLayout(); - }; - Slider.prototype.OnValueChanged = function (oldValue, newValue) { - _super.prototype.OnValueChanged.call(this, oldValue, newValue); - this._UpdateTrackLayout(); - }; - Slider.prototype._HandleSizeChanged = function (sender, e) { - this._UpdateTrackLayout(); - }; - Slider.prototype._OnOrientationChanged = function () { - var isHorizontal = this.Orientation === Fayde.Orientation.Horizontal; - if (this.$HorizontalTemplate != null) - this.$HorizontalTemplate.Visibility = isHorizontal ? Fayde.Visibility.Visible : Fayde.Visibility.Collapsed; - if (this.$VerticalTemplate != null) - this.$VerticalTemplate.Visibility = !isHorizontal ? Fayde.Visibility.Visible : Fayde.Visibility.Collapsed; - this._UpdateTrackLayout(); - }; - Slider.prototype._UpdateTrackLayout = function () { - var max = this.Maximum; - var min = this.Minimum; - var val = this.Value; - var isHorizontal = this.Orientation === Fayde.Orientation.Horizontal; - var temp = isHorizontal ? this.$HorizontalTemplate : this.$VerticalTemplate; - if (!(temp instanceof Controls.Grid)) - return; - var templateGrid = temp; - var isReversed = this.IsDirectionReversed; - var largeDecrease; - var largeIncrease; - var thumb; - if (isHorizontal) { - var coldefs = templateGrid.ColumnDefinitions; - largeDecrease = this.$HorizontalLargeDecrease; - largeIncrease = this.$HorizontalLargeIncrease; - thumb = this.$HorizontalThumb; - if (coldefs && coldefs.Count === 3) { - coldefs.GetValueAt(0).Width = new Controls.GridLength(1, isReversed ? GridUnitType.Star : GridUnitType.Auto); - coldefs.GetValueAt(2).Width = new Controls.GridLength(1, isReversed ? GridUnitType.Auto : GridUnitType.Star); - if (largeDecrease != null) - Controls.Grid.SetColumn(largeDecrease, isReversed ? 2 : 0); - if (largeIncrease != null) - Controls.Grid.SetColumn(largeIncrease, isReversed ? 0 : 2); - } - } - else { - var rowdefs = templateGrid.RowDefinitions; - largeDecrease = this.$VerticalLargeDecrease; - largeIncrease = this.$VerticalLargeIncrease; - thumb = this.$VerticalThumb; - if (rowdefs && rowdefs.Count === 3) { - rowdefs.GetValueAt(0).Height = new Controls.GridLength(1, isReversed ? GridUnitType.Auto : GridUnitType.Star); - rowdefs.GetValueAt(2).Height = new Controls.GridLength(1, isReversed ? GridUnitType.Star : GridUnitType.Auto); - if (largeDecrease != null) - Controls.Grid.SetRow(largeDecrease, isReversed ? 0 : 2); - if (largeIncrease != null) - Controls.Grid.SetRow(largeIncrease, isReversed ? 2 : 0); - } - } - if (max === min) - return; - var percent = val / (max - min); - if (largeDecrease != null && thumb != null) { - if (isHorizontal) - largeDecrease.Width = Math.max(0, percent * (this.ActualWidth - thumb.ActualWidth)); - else - largeDecrease.Height = Math.max(0, percent * (this.ActualHeight - thumb.ActualHeight)); - } - }; - Slider.prototype._OnThumbDragStarted = function (sender, e) { - this.Focus(); - this._DragValue = this.Value; - }; - Slider.prototype._OnThumbDragDelta = function (sender, e) { - var offset = 0; - var isHorizontal = this.Orientation === Fayde.Orientation.Horizontal; - if (isHorizontal && this.$HorizontalThumb != null) { - offset = e.HorizontalChange / (this.ActualWidth - this.$HorizontalThumb.ActualWidth) * (this.Maximum - this.Minimum); - } - else if (!isHorizontal && this.$VerticalThumb != null) { - offset = -e.VerticalChange / (this.ActualHeight - this.$VerticalThumb.ActualHeight) * (this.Maximum - this.Minimum); - } - if (!isNaN(offset) && isFinite(offset)) { - this._DragValue += this.IsDirectionReversed ? -offset : offset; - var newValue = Math.min(this.Maximum, Math.max(this.Minimum, this._DragValue)); - if (newValue != this.Value) - this.Value = newValue; - } - }; - Slider.prototype.OnMouseEnter = function (e) { - _super.prototype.OnMouseEnter.call(this, e); - if ((this.Orientation === Fayde.Orientation.Horizontal && this.$HorizontalThumb != null && this.$HorizontalThumb.IsDragging) || - (this.Orientation === Fayde.Orientation.Vertical && this.$VerticalThumb != null && this.$VerticalThumb.IsDragging)) { - this.UpdateVisualState(); - } - }; - Slider.prototype.OnMouseLeave = function (e) { - _super.prototype.OnMouseLeave.call(this, e); - if ((this.Orientation === Fayde.Orientation.Horizontal && this.$HorizontalThumb != null && this.$HorizontalThumb.IsDragging) || - (this.Orientation === Fayde.Orientation.Vertical && this.$VerticalThumb != null && this.$VerticalThumb.IsDragging)) { - this.UpdateVisualState(); - } - }; - Slider.prototype.OnMouseLeftButtonDown = function (e) { - _super.prototype.OnMouseLeftButtonDown.call(this, e); - if (e.Handled) - return; - e.Handled = true; - this.Focus(); - this.CaptureMouse(); - }; - Slider.prototype.OnLostMouseCapture = function (e) { - _super.prototype.OnLostMouseCapture.call(this, e); - this.UpdateVisualState(); - }; - Slider.prototype.OnKeyDown = function (e) { - _super.prototype.OnKeyDown.call(this, e); - if (e.Handled) - return; - if (!this.IsEnabled) - return; - switch (e.Key) { - case Fayde.Input.Key.Left: - case Fayde.Input.Key.Down: - this.Value += (this.IsDirectionReversed ? this.SmallChange : -this.SmallChange); - break; - case Fayde.Input.Key.Right: - case Fayde.Input.Key.Up: - this.Value += (this.IsDirectionReversed ? -this.SmallChange : this.SmallChange); - break; - case Fayde.Input.Key.Home: - this.Value = this.Minimum; - break; - case Fayde.Input.Key.End: - this.Value = this.Maximum; - break; - } - }; - Slider.prototype.OnGotFocus = function (e) { - _super.prototype.OnGotFocus.call(this, e); - this.SetValueInternal(Slider.IsFocusedProperty, true); - }; - Slider.prototype.OnLostFocus = function (e) { - _super.prototype.OnLostFocus.call(this, e); - this.SetValueInternal(Slider.IsFocusedProperty, false); - }; - Slider.IsDirectionReversedProperty = DependencyProperty.RegisterCore("IsDirectionReversed", function () { return Boolean; }, Slider, false, function (d, args) { return d._UpdateTrackLayout(); }); - Slider.IsFocusedProperty = DependencyProperty.RegisterReadOnlyCore("IsFocused", function () { return Boolean; }, Slider, false, function (d, args) { return d.UpdateVisualState(); }); - Slider.OrientationProperty = DependencyProperty.RegisterCore("Orientation", function () { return new Fayde.Enum(Fayde.Orientation); }, Slider, Fayde.Orientation.Horizontal, function (d, args) { return d._OnOrientationChanged(); }); - return Slider; - })(Controls.Primitives.RangeBase); - Controls.Slider = Slider; - Fayde.CoreLibrary.add(Slider); - Controls.TemplateVisualStates(Slider, { GroupName: "CommonStates", Name: "Normal" }, { GroupName: "CommonStates", Name: "MouseOver" }, { GroupName: "CommonStates", Name: "Disabled" }, { GroupName: "FocusStates", Name: "Unfocused" }, { GroupName: "FocusStates", Name: "Focused" }); - Controls.TemplateParts(Slider, { Name: "HorizontalTemplate", Type: Fayde.FrameworkElement }, { Name: "HorizontalThumb", Type: Controls.Primitives.Thumb }, { Name: "HorizontalTrackLargeChangeIncreaseRepeatButton", Type: Controls.Primitives.RepeatButton }, { Name: "HorizontalTrackLargeChangeDecreaseRepeatButton", Type: Controls.Primitives.RepeatButton }, { Name: "VerticalTemplate", Type: Fayde.FrameworkElement }, { Name: "VerticalThumb", Type: Controls.Primitives.Thumb }, { Name: "VerticalTrackLargeChangeIncreaseRepeatButton", Type: Controls.Primitives.RepeatButton }, { Name: "VerticalTrackLargeChangeDecreaseRepeatButton", Type: Controls.Primitives.RepeatButton }); - })(Controls = Fayde.Controls || (Fayde.Controls = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Controls; - (function (Controls) { - var StackPanel = (function (_super) { - __extends(StackPanel, _super); - function StackPanel() { - _super.apply(this, arguments); - } - StackPanel.prototype.CreateLayoutUpdater = function () { - return new minerva.controls.stackpanel.StackPanelUpdater(); - }; - StackPanel.OrientationProperty = DependencyProperty.Register("Orientation", function () { return new Fayde.Enum(Fayde.Orientation); }, StackPanel, Fayde.Orientation.Vertical); - return StackPanel; - })(Controls.Panel); - Controls.StackPanel = StackPanel; - Fayde.CoreLibrary.add(StackPanel); - var reactions; - (function (reactions) { - Fayde.UIReaction(StackPanel.OrientationProperty, function (upd, ov, nv) { - upd.invalidateMeasure(); - upd.invalidateArrange(); - }, false); - })(reactions || (reactions = {})); - })(Controls = Fayde.Controls || (Fayde.Controls = {})); -})(Fayde || (Fayde = {})); -/// -/// -var Fayde; -(function (Fayde) { - var Controls; - (function (Controls) { - var TextBlockUpdater = minerva.controls.textblock.TextBlockUpdater; - var TextBlockNode = (function (_super) { - __extends(TextBlockNode, _super); - function TextBlockNode(xobj) { - _super.call(this, xobj); - this._IsDocAuto = false; - this._SettingText = false; - this._SettingInlines = false; - this._AutoRun = new Fayde.Documents.Run(); - } - TextBlockNode.prototype.GetInheritedEnumerator = function () { - var xobj = this.XObject; - var inlines = xobj.Inlines; - if (inlines) - return inlines.GetNodeEnumerator(); - }; - TextBlockNode.prototype.TextChanged = function (args) { - if (this._SettingInlines) - return; - this._AutoRun.Text = args.NewValue; - if (!this._IsDocAuto) { - this._IsDocAuto = true; - this.LayoutUpdater.tree.clearText(); - this._SettingText = true; - var inlines = this.XObject.Inlines; - inlines.Clear(); - inlines.Add(this._AutoRun); - this.LayoutUpdater.invalidateTextMetrics(); - this._SettingText = false; - } - }; - TextBlockNode.prototype.InlinesChanged = function (inline, index, isAdd) { - var xobj = this.XObject; - if (isAdd) - Fayde.Providers.InheritedStore.PropagateInheritedOnAdd(xobj, inline.XamlNode); - var updater = this.LayoutUpdater; - if (isAdd) - updater.tree.onTextAttached(inline.TextUpdater, index); - else - updater.tree.onTextDetached(inline.TextUpdater); - if (isAdd) - Fayde.ReactTo(inline, this, this.InlineChanged); - else - Fayde.UnreactTo(inline, this); - if (this._SettingText) - return; - this._SettingInlines = true; - var inlines = xobj.Inlines; - var text = ""; - for (var en = inlines.getEnumerator(); en.moveNext();) { - text += en.current._SerializeText(); - } - xobj.SetCurrentValue(TextBlock.TextProperty, text); - this._SettingInlines = false; - updater.invalidateTextMetrics(); - }; - TextBlockNode.prototype.InlineChanged = function (obj) { - switch (obj.type) { - case 'font': - this.LayoutUpdater.invalidateFont(obj.full); - break; - case 'text': - this.LayoutUpdater.invalidateTextMetrics(); - break; - } - }; - return TextBlockNode; - })(Fayde.FENode); - Controls.TextBlockNode = TextBlockNode; - var TextBlock = (function (_super) { - __extends(TextBlock, _super); - function TextBlock() { - var _this = this; - _super.call(this); - var inlines = TextBlock.InlinesProperty.Initialize(this); - inlines.AttachTo(this); - Fayde.ReactTo(inlines, this, function (change) { return _this.XamlNode.InlinesChanged(change.item, change.index, change.add); }); - Fayde.UIReaction(TextBlock.ForegroundProperty, function (upd, ov, nv) { return upd.invalidate(); }, true, true, this); - Fayde.UIReaction(TextBlock.PaddingProperty, function (upd, ov, nv) { return upd.invalidateTextMetrics(); }, false, true, this); - Fayde.UIReaction(TextBlock.LineStackingStrategyProperty, function (upd, ov, nv) { return upd.invalidateTextMetrics(); }, false, true, this); - Fayde.UIReaction(TextBlock.LineHeightProperty, function (upd, ov, nv) { return upd.invalidateTextMetrics(); }, false, true, this); - Fayde.UIReaction(TextBlock.TextAlignmentProperty, function (upd, ov, nv) { return upd.invalidateTextMetrics(); }, false, true, this); - Fayde.UIReaction(TextBlock.TextTrimmingProperty, function (upd, ov, nv) { return upd.invalidateTextMetrics(); }, false, true, this); - Fayde.UIReaction(TextBlock.TextWrappingProperty, function (upd, ov, nv) { return upd.invalidateTextMetrics(); }, false, true, this); - } - TextBlock.prototype.CreateNode = function () { - return new TextBlockNode(this); - }; - TextBlock.prototype.CreateLayoutUpdater = function () { - return new TextBlockUpdater(); - }; - TextBlock.prototype.IsInheritable = function (propd) { - if (TextBlockInheritedProps.indexOf(propd) > -1) - return true; - return _super.prototype.IsInheritable.call(this, propd); - }; - TextBlock.PaddingProperty = DependencyProperty.RegisterCore("Padding", function () { return Thickness; }, TextBlock); - TextBlock.FontFamilyProperty = Fayde.InheritableOwner.FontFamilyProperty.ExtendTo(TextBlock); - TextBlock.FontSizeProperty = Fayde.InheritableOwner.FontSizeProperty.ExtendTo(TextBlock); - TextBlock.FontStretchProperty = Fayde.InheritableOwner.FontStretchProperty.ExtendTo(TextBlock); - TextBlock.FontStyleProperty = Fayde.InheritableOwner.FontStyleProperty.ExtendTo(TextBlock); - TextBlock.FontWeightProperty = Fayde.InheritableOwner.FontWeightProperty.ExtendTo(TextBlock); - TextBlock.ForegroundProperty = Fayde.InheritableOwner.ForegroundProperty.ExtendTo(TextBlock); - TextBlock.TextDecorationsProperty = Fayde.InheritableOwner.TextDecorationsProperty.ExtendTo(TextBlock); - TextBlock.TextProperty = DependencyProperty.Register("Text", function () { return String; }, TextBlock, "", function (d, args) { return d.XamlNode.TextChanged(args); }); - TextBlock.InlinesProperty = DependencyProperty.RegisterImmutable("Inlines", function () { return Fayde.Documents.InlineCollection; }, TextBlock); - TextBlock.LineStackingStrategyProperty = DependencyProperty.RegisterCore("LineStackingStrategy", function () { return new Fayde.Enum(Fayde.LineStackingStrategy); }, TextBlock, Fayde.LineStackingStrategy.MaxHeight); - TextBlock.LineHeightProperty = DependencyProperty.RegisterCore("LineHeight", function () { return Number; }, TextBlock, NaN); - TextBlock.TextAlignmentProperty = DependencyProperty.RegisterCore("TextAlignment", function () { return new Fayde.Enum(Fayde.TextAlignment); }, TextBlock, Fayde.TextAlignment.Left); - TextBlock.TextTrimmingProperty = DependencyProperty.RegisterCore("TextTrimming", function () { return new Fayde.Enum(Controls.TextTrimming); }, TextBlock, Controls.TextTrimming.None); - TextBlock.TextWrappingProperty = DependencyProperty.RegisterCore("TextWrapping", function () { return new Fayde.Enum(Controls.TextWrapping); }, TextBlock, Controls.TextWrapping.NoWrap); - return TextBlock; - })(Fayde.FrameworkElement); - Controls.TextBlock = TextBlock; - Fayde.CoreLibrary.add(TextBlock); - Fayde.Markup.Content(TextBlock, TextBlock.InlinesProperty); - Fayde.Markup.TextContent(TextBlock, TextBlock.TextProperty); - var TextBlockInheritedProps = [ - TextBlock.FontFamilyProperty, - TextBlock.FontSizeProperty, - TextBlock.FontStretchProperty, - TextBlock.FontStyleProperty, - TextBlock.FontWeightProperty, - TextBlock.ForegroundProperty - ]; - })(Controls = Fayde.Controls || (Fayde.Controls = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Controls; - (function (Controls) { - var TextBox = (function (_super) { - __extends(TextBox, _super); - function TextBox() { - var _this = this; - _super.call(this, Fayde.Text.EmitChangedType.TEXT | Fayde.Text.EmitChangedType.SELECTION); - this.TextChanged = new Fayde.RoutedEvent(); - this.DefaultStyleKey = TextBox; - var proxy = this.$Proxy; - proxy.SyncSelectionStart = function (value) { return _this.SetCurrentValue(TextBox.SelectionStartProperty, value); }; - proxy.SyncSelectionLength = function (value) { return _this.SetCurrentValue(TextBox.SelectionLengthProperty, value); }; - proxy.SyncText = function (value) { - _this.SetCurrentValue(TextBox.TextProperty, value); - var args = new Fayde.RoutedEventArgs(); - args.Source = _this; - _this.TextChanged.raise(_this, args); - }; - this.$Advancer = new Controls.Internal.TextBoxCursorAdvancer(this.$Proxy); - } - TextBox.prototype.OnApplyTemplate = function () { - _super.prototype.OnApplyTemplate.call(this); - var vis = (this.TextWrapping === Controls.TextWrapping.Wrap) ? Controls.ScrollBarVisibility.Disabled : this.HorizontalScrollBarVisibility; - this.$ContentProxy.setHorizontalScrollBar(vis); - this.$ContentProxy.setVerticalScrollBar(this.VerticalScrollBarVisibility); - }; - Object.defineProperty(TextBox.prototype, "DisplayText", { - get: function () { - return this.Text; - }, - enumerable: true, - configurable: true - }); - TextBox.prototype.OnMouseEnter = function (e) { - _super.prototype.OnMouseEnter.call(this, e); - this.UpdateVisualState(); - }; - TextBox.prototype.OnMouseLeave = function (e) { - _super.prototype.OnMouseLeave.call(this, e); - this.UpdateVisualState(); - }; - TextBox.prototype.OnGotFocus = function (e) { - _super.prototype.OnGotFocus.call(this, e); - this.UpdateVisualState(); - }; - TextBox.prototype.OnLostFocus = function (e) { - _super.prototype.OnLostFocus.call(this, e); - this.UpdateVisualState(); - }; - TextBox.prototype.GoToStateCommon = function (gotoFunc) { - if (!this.IsEnabled) - return gotoFunc("Disabled"); - if (this.IsReadOnly) - return gotoFunc("ReadOnly"); - if (this.IsMouseOver) - return gotoFunc("MouseOver"); - return gotoFunc("Normal"); - }; - TextBox.prototype.SelectAll = function () { - this.$Proxy.selectAll(); - }; - TextBox.prototype.Select = function (start, length) { - this.$Proxy.select(start, length); - }; - TextBox.AcceptsReturnProperty = DependencyProperty.Register("AcceptsReturn", function () { return Boolean; }, TextBox, false); - TextBox.IsReadOnlyProperty = DependencyProperty.Register("IsReadOnly", function () { return Boolean; }, TextBox, false); - TextBox.TextProperty = DependencyProperty.Register("Text", function () { return String; }, TextBox); - TextBox.TextAlignmentProperty = DependencyProperty.Register("TextAlignment", function () { return new Fayde.Enum(Fayde.TextAlignment); }, TextBox, Fayde.TextAlignment.Left); - TextBox.TextWrappingProperty = DependencyProperty.Register("TextWrapping", function () { return new Fayde.Enum(Controls.TextWrapping); }, TextBox, Controls.TextWrapping.NoWrap); - TextBox.HorizontalScrollBarVisibilityProperty = DependencyProperty.Register("HorizontalScrollBarVisibility", function () { return new Fayde.Enum(Controls.ScrollBarVisibility); }, TextBox, Controls.ScrollBarVisibility.Hidden); - TextBox.VerticalScrollBarVisibilityProperty = DependencyProperty.Register("VerticalScrollBarVisibility", function () { return new Fayde.Enum(Controls.ScrollBarVisibility); }, TextBox, Controls.ScrollBarVisibility.Hidden); - return TextBox; - })(Controls.TextBoxBase); - Controls.TextBox = TextBox; - Fayde.CoreLibrary.add(TextBox); - Controls.TemplateVisualStates(TextBox, { GroupName: "CommonStates", Name: "Normal" }, { GroupName: "CommonStates", Name: "MouseOver" }, { GroupName: "CommonStates", Name: "Disabled" }, { GroupName: "CommonStates", Name: "ReadOnly" }, { GroupName: "FocusStates", Name: "Unfocused" }, { GroupName: "FocusStates", Name: "Focused" }, { GroupName: "ValidationStates", Name: "Valid" }, { GroupName: "ValidationStates", Name: "InvalidUnfocused" }, { GroupName: "ValidationStates", Name: "InvalidFocused" }); - Controls.TemplateParts(TextBox, { Name: "ContentElement", Type: Fayde.FrameworkElement }); - var reactions; - (function (reactions) { - Fayde.DPReaction(TextBox.AcceptsReturnProperty, function (tb, ov, nv) { - tb.$Proxy.acceptsReturn = nv === true; - }, false); - Fayde.DPReaction(TextBox.IsReadOnlyProperty, function (tb, ov, nv) { - tb.$View.setIsReadOnly(nv === true); - }, false); - Fayde.DPReaction(TextBox.TextAlignmentProperty, function (tb, ov, nv) { return tb.$View.setTextAlignment(nv); }, false); - Fayde.DPReaction(TextBox.TextWrappingProperty, function (tb, ov, nv) { - var vis = (nv === Controls.TextWrapping.Wrap) ? Controls.ScrollBarVisibility.Disabled : tb.HorizontalScrollBarVisibility; - tb.$ContentProxy.setHorizontalScrollBar(vis); - tb.$View.setTextWrapping(nv); - }, false); - Fayde.DPReaction(TextBox.HorizontalScrollBarVisibilityProperty, function (tb, ov, nv) { - var vis = (tb.TextWrapping === Controls.TextWrapping.Wrap) ? Controls.ScrollBarVisibility.Disabled : tb.HorizontalScrollBarVisibility; - tb.$ContentProxy.setHorizontalScrollBar(vis); - }, false); - Fayde.DPReaction(TextBox.VerticalScrollBarVisibilityProperty, function (tb, ov, nv) { - tb.$ContentProxy.setVerticalScrollBar(nv); - }, false); - Fayde.DPReaction(TextBox.TextProperty, function (tb, ov, nv) { - tb.$Proxy.setText(nv); - tb.$View.setText(tb.DisplayText); - }, false); - })(reactions || (reactions = {})); - })(Controls = Fayde.Controls || (Fayde.Controls = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Controls; - (function (Controls) { - var ToolTip = (function (_super) { - __extends(ToolTip, _super); - function ToolTip() { - _super.call(this); - this._TooltipParent = null; - this._TooltipParentDCListener = null; - this.PlacementOverride = null; - this.PlacementTargetOverride = null; - this.Opened = new Fayde.RoutedEvent(); - this.Closed = new Fayde.RoutedEvent(); - this._ParentPopup = null; - this.DefaultStyleKey = ToolTip; - } - Object.defineProperty(ToolTip.prototype, "TooltipParent", { - get: function () { return this._TooltipParent; }, - set: function (value) { - if (this._TooltipParentDCListener) - this._TooltipParentDCListener.Detach(); - this._TooltipParent = value; - if (this._TooltipParent) - this._TooltipParentDCListener = Fayde.DependencyObject.DataContextProperty.Store.ListenToChanged(this._TooltipParent, Fayde.DependencyObject.DataContextProperty, this.OnTooltipParentDataContextChanged, this); - }, - enumerable: true, - configurable: true - }); - ToolTip.prototype.OnApplyTemplate = function () { - _super.prototype.OnApplyTemplate.call(this); - this.UpdateVisualState(false); - }; - ToolTip.prototype.OnHorizontalOffsetChanged = function (args) { - if (args.NewValue !== args.OldValue) - this.OnOffsetChanged(args.NewValue, 0); - }; - ToolTip.prototype.OnVerticalOffsetChanged = function (args) { - if (args.NewValue !== args.OldValue) - this.OnOffsetChanged(0, args.NewValue); - }; - ToolTip.prototype.OnIsOpenChanged = function (args) { - if (args.NewValue) { - if (!this._ParentPopup) - this.HookupParentPopup(); - this._ParentPopup.IsOpen = true; - this.PerformPlacement(this.HorizontalOffset, this.VerticalOffset); - } - else { - this._ParentPopup.IsOpen = false; - } - this.UpdateVisualState(); - }; - ToolTip.prototype.OnOffsetChanged = function (horizontalOffset, verticalOffset) { - if (!this._ParentPopup || !this.IsOpen) - return; - this.PerformPlacement(horizontalOffset, verticalOffset); - }; - ToolTip.prototype.OnLayoutUpdated = function (sender, e) { - if (this._ParentPopup) - this.PerformPlacement(this.HorizontalOffset, this.VerticalOffset); - }; - ToolTip.prototype.OnTooltipParentDataContextChanged = function (sender, args) { - if (this._ParentPopup && this.TooltipParent) - this._ParentPopup.DataContext = this.TooltipParent.DataContext; - }; - ToolTip.prototype.HookupParentPopup = function () { - console.assert(!this._ParentPopup, "this._parentPopup should be null, we want to set visual tree once"); - var pp = this._ParentPopup = new Controls.Primitives.Popup(); - pp.DataContext = !this.TooltipParent ? null : this.TooltipParent.DataContext; - pp.Opened.on(this.OnPopupOpened, this); - pp.Closed.on(this.OnPopupClosed, this); - this.IsTabStop = false; - pp.XamlNode.RegisterInitiator(this._TooltipParent); - pp.Child = this; - pp.IsHitTestVisible = false; - this.IsHitTestVisible = false; - }; - ToolTip.prototype.OnPopupOpened = function (sender, e) { - var args = new Fayde.RoutedEventArgs(); - args.OriginalSource = this; - this.Opened.raise(this, args); - this.LayoutUpdated.on(this.OnLayoutUpdated, this); - }; - ToolTip.prototype.OnPopupClosed = function (sender, e) { - var args = new Fayde.RoutedEventArgs(); - args.OriginalSource = this; - this.Closed.raise(this, args); - this.LayoutUpdated.off(this.OnLayoutUpdated, this); - }; - ToolTip.prototype.PerformPlacement = function (horizontalOffset, verticalOffset) { - if (!this.IsOpen) - return; - var root = Fayde.Application.Current.RootVisual; - if (!root) - return; - var mode = this.PlacementOverride != null ? this.PlacementOverride : this.Placement; - var target = (this.PlacementTargetOverride || this.PlacementTarget); - var targetBounds = new minerva.Rect(); - var point = Controls.ToolTipService.MousePosition; - if (mode !== Controls.PlacementMode.Mouse) { - point = new Point(); - try { - if (target != null) { - targetBounds = new minerva.Rect(0, 0, target.ActualWidth, target.ActualHeight); - targetBounds = target.TransformToVisual(null).TransformBounds(targetBounds); - point.x = targetBounds.x; - point.y = targetBounds.y; - } - } - catch (err) { - console.warn("Could not transform the tooltip point."); - return; - } - } - switch (mode) { - case Controls.PlacementMode.Top: - point.y = targetBounds.y - this.ActualHeight; - break; - case Controls.PlacementMode.Bottom: - point.y = targetBounds.y + targetBounds.height; - break; - case Controls.PlacementMode.Left: - point.x = targetBounds.x - this.ActualWidth; - break; - case Controls.PlacementMode.Right: - point.x = targetBounds.x + targetBounds.width; - break; - case Controls.PlacementMode.Mouse: - point.y += new Controls.TextBox().FontSize; - break; - default: - throw new NotSupportedException("PlacementMode '" + mode + "' is not supported."); - } - var rootWidth = root.ActualWidth; - if ((point.x + this.ActualWidth) > rootWidth) { - if (mode === Controls.PlacementMode.Right) - point.x = targetBounds.x - this.ActualWidth; - else - point.x = rootWidth - this.ActualWidth; - } - else if (point.x < 0) { - if (mode === Controls.PlacementMode.Left) - point.x = targetBounds.x + targetBounds.width; - else - point.x = 0; - } - var rootHeight = root.ActualHeight; - if ((point.y + this.ActualHeight) > rootHeight) { - if (mode === Controls.PlacementMode.Bottom) - point.y = targetBounds.y - this.ActualHeight; - else - point.y = rootHeight - this.ActualHeight; - } - else if (point.y < 0) { - if (mode === Controls.PlacementMode.Top) - point.y = targetBounds.y + targetBounds.height; - else - point.y = 0; - } - this._ParentPopup.VerticalOffset = point.y; - this._ParentPopup.HorizontalOffset = point.x; - }; - ToolTip.prototype.GoToStates = function (gotoFunc) { - if (this.IsOpen) - gotoFunc("Open"); - else - gotoFunc("Closed"); - }; - ToolTip.HorizontalOffsetProperty = DependencyProperty.Register("HorizontalOffset", function () { return Number; }, ToolTip, 0, function (d, args) { return d.OnHorizontalOffsetChanged(args); }); - ToolTip.VerticalOffsetProperty = DependencyProperty.Register("VerticalOffset", function () { return Number; }, ToolTip, 0, function (d, args) { return d.OnVerticalOffsetChanged(args); }); - ToolTip.IsOpenProperty = DependencyProperty.Register("IsOpen", function () { return Boolean; }, ToolTip, false, function (d, args) { return d.OnIsOpenChanged(args); }); - ToolTip.PlacementProperty = DependencyProperty.Register("Placement", function () { return new Fayde.Enum(Controls.PlacementMode); }, ToolTip, Controls.PlacementMode.Mouse); - ToolTip.PlacementTargetProperty = DependencyProperty.Register("PlacementTarget", function () { return Fayde.UIElement; }, ToolTip); - return ToolTip; - })(Controls.ContentControl); - Controls.ToolTip = ToolTip; - Fayde.CoreLibrary.add(ToolTip); - Controls.TemplateVisualStates(ToolTip, { GroupName: "OpenStates", Name: "Closed" }, { GroupName: "OpenStates", Name: "Open" }); - })(Controls = Fayde.Controls || (Fayde.Controls = {})); -})(Fayde || (Fayde = {})); -var Point = (function (_super) { - __extends(Point, _super); - function Point() { - _super.apply(this, arguments); - } - Point.prototype.Clone = function () { - return new Point(this.x, this.y); - }; - Point.LERP = function (start, end, p) { - var x = start.x + (end.x - start.x) * p; - var y = start.y + (end.y - start.y) * p; - return new Point(x, y); - }; - return Point; -})(minerva.Point); -Fayde.CoreLibrary.addPrimitive(Point); -nullstone.registerTypeConverter(Point, function (val) { - if (!val) - return new Point(); - if (val instanceof Point) - return val; - if (val instanceof minerva.Point) - return new Point(val.x, val.y); - var tokens = Fayde.splitCommaList(val.toString()); - if (tokens.length === 2) { - var x = parseFloat(tokens[0]); - var y = parseFloat(tokens[1]); - return new Point(x, y); - } - throw new Exception("Cannot parse Point value '" + val + "'"); -}); -/// -/// -var Fayde; -(function (Fayde) { - var Controls; - (function (Controls) { - var AssignedToolTipProperty = DependencyProperty.Register("AssignedToolTip", function () { return Controls.ToolTip; }, Fayde.UIElement, null); - var betweenShowDelay = 100; - var initialShowDelay = 400; - var showDuration = 5000; - function toolTipChanged(dobj, args) { - var owner = dobj; - var tooltip = args.NewValue; - if (args.OldValue) - slave.UnregisterTooltip(owner); - if (!tooltip) - return; - slave.RegisterTooltip(owner, tooltip); - slave.SetRootVisual(owner); - } - var ToolTipService = (function () { - function ToolTipService() { - } - ToolTipService.GetToolTip = function (dobj) { return dobj.GetValue(ToolTipService.ToolTipProperty); }; - ToolTipService.SetToolTip = function (dobj, value) { dobj.SetValue(ToolTipService.ToolTipProperty, value); }; - ToolTipService.GetPlacement = function (dobj) { return dobj.GetValue(ToolTipService.PlacementProperty); }; - ToolTipService.SetPlacement = function (dobj, value) { dobj.SetValue(ToolTipService.PlacementProperty, value); }; - ToolTipService.GetPlacementTarget = function (dobj) { return dobj.GetValue(ToolTipService.PlacementTargetProperty); }; - ToolTipService.SetPlacementTarget = function (dobj, value) { dobj.SetValue(ToolTipService.PlacementTargetProperty, value); }; - Object.defineProperty(ToolTipService, "MousePosition", { - get: function () { - return slave.MousePosition; - }, - enumerable: true, - configurable: true - }); - ToolTipService.ToolTipProperty = DependencyProperty.RegisterAttached("ToolTip", function () { return Fayde.DependencyObject; }, ToolTipService, undefined, toolTipChanged); - ToolTipService.PlacementProperty = DependencyProperty.RegisterAttached("Placement", function () { return new Fayde.Enum(Controls.PlacementMode); }, ToolTipService); - ToolTipService.PlacementTargetProperty = DependencyProperty.RegisterAttached("PlacementTarget", function () { return Fayde.UIElement; }, ToolTipService); - return ToolTipService; - })(); - Controls.ToolTipService = ToolTipService; - Fayde.CoreLibrary.add(ToolTipService); - var ToolTipServiceSlave = (function () { - function ToolTipServiceSlave() { - this.MousePosition = new Point(); - this._RootVisual = null; - this._CurrentTooltip = null; - this._LastEnterSource = null; - this._LastOpened = 0; - this._OpenInterval = null; - this._CloseInterval = null; - } - ToolTipServiceSlave.prototype.SetRootVisual = function (owner) { - if (this._RootVisual) - return; - var updater = owner.XamlNode.LayoutUpdater; - var surface = updater.tree.surface; - if (!surface) - return; - var rv = this._RootVisual = surface.App.RootVisual; - if (!rv) - return; - rv.MouseMove.on(this.OnRootMouseMove, this); - }; - ToolTipServiceSlave.prototype.OnRootMouseMove = function (sender, e) { - this.MousePosition = e.GetPosition(null); - }; - ToolTipServiceSlave.prototype.RegisterTooltip = function (owner, tooltip) { - console.assert(owner != null, "ToolTip must have an owner"); - console.assert(tooltip != null, "ToolTip can not be null"); - owner.MouseEnter.on(this.OnOwnerMouseEnter, this); - owner.MouseLeave.on(this.OnOwnerMouseLeave, this); - owner.MouseLeftButtonDown.on(this.OnOwnerMouseLeftButtonDown, this); - owner.KeyDown.on(this.OnOwnerKeyDown, this); - var converted = this.ConvertToToolTip(tooltip); - owner.SetValue(AssignedToolTipProperty, converted); - if (owner instanceof Fayde.FrameworkElement) - converted.TooltipParent = owner; - }; - ToolTipServiceSlave.prototype.UnregisterTooltip = function (owner) { - console.assert(owner != null, "owner element is required"); - var tooltip = owner.GetValue(AssignedToolTipProperty); - if (!tooltip || !(tooltip instanceof Controls.ToolTip)) - return; - owner.MouseEnter.off(this.OnOwnerMouseEnter, this); - owner.MouseLeave.off(this.OnOwnerMouseLeave, this); - owner.MouseLeftButtonDown.off(this.OnOwnerMouseLeftButtonDown, this); - owner.KeyDown.off(this.OnOwnerKeyDown, this); - tooltip.TooltipParent = null; - if (tooltip.IsOpen) { - if (tooltip === this._CurrentTooltip) { - window.clearInterval(this._CloseInterval); - this._CurrentTooltip = null; - this._Owner = null; - this._LastEnterSource = null; - } - tooltip.IsOpen = false; - } - owner.ClearValue(AssignedToolTipProperty); - }; - ToolTipServiceSlave.prototype.OnOwnerMouseEnter = function (sender, e) { - this.MousePosition = e.GetPosition(null); - this.OnOwnerMouseEnterInternal(sender, e.OriginalSource); - }; - ToolTipServiceSlave.prototype.OnOwnerMouseLeave = function (sender, e) { - if (!this._CurrentTooltip) { - window.clearInterval(this._OpenInterval); - this._Owner = null; - this._LastEnterSource = null; - return; - } - this.CloseAutomaticToolTip(); - }; - ToolTipServiceSlave.prototype.OnOwnerMouseLeftButtonDown = function (sender, e) { - if (this._LastEnterSource && this._LastEnterSource === e.OriginalSource) - return; - if (this._Owner !== sender) - return; - if (!this._CurrentTooltip) { - window.clearInterval(this._OpenInterval); - this._Owner = null; - this._LastEnterSource = null; - return; - } - this.CloseAutomaticToolTip(); - }; - ToolTipServiceSlave.prototype.OnOwnerKeyDown = function (sender, e) { - if (this._LastEnterSource && this._LastEnterSource === e.OriginalSource) - return; - if (this._Owner !== sender) - return; - if (!this._CurrentTooltip) { - window.clearInterval(this._OpenInterval); - this._Owner = null; - this._LastEnterSource = null; - return; - } - if (isSpecialKey(e.Key)) - return; - this.CloseAutomaticToolTip(); - }; - ToolTipServiceSlave.prototype.OnOwnerMouseEnterInternal = function (sender, source) { - var _this = this; - if (this._LastEnterSource && this._LastEnterSource === source) - return; - if (this._CurrentTooltip) { - if (sender.GetValue(AssignedToolTipProperty) === this._CurrentTooltip) - return; - this.CloseAutomaticToolTip(); - } - this._Owner = sender; - this._LastEnterSource = source; - console.assert(!this._CurrentTooltip); - this.SetRootVisual(sender); - var sinceLastOpen = new Date().getTime() - this._LastOpened; - if (sinceLastOpen <= betweenShowDelay) { - this.OpenAutomaticToolTip(); - } - else { - this._OpenInterval = window.setInterval(function () { return _this.OpenAutomaticToolTip(); }, initialShowDelay); - } - }; - ToolTipServiceSlave.prototype.ConvertToToolTip = function (o) { - if (o instanceof Controls.ToolTip) - return o; - if (o instanceof Fayde.FrameworkElement) { - var parent = o.Parent; - if (parent instanceof Controls.ToolTip) - return parent; - } - var tooltip = new Controls.ToolTip(); - tooltip.Content = o; - return tooltip; - }; - ToolTipServiceSlave.prototype.OpenAutomaticToolTip = function () { - var _this = this; - window.clearInterval(this._OpenInterval); - console.assert(this._Owner != null, "ToolTip owner was not set prior to starting the open timer"); - var cur = this._CurrentTooltip = this._Owner.GetValue(AssignedToolTipProperty); - if (cur != null) { - cur.PlacementOverride = ToolTipService.GetPlacement(this._Owner); - cur.PlacementTargetOverride = ToolTipService.GetPlacementTarget(this._Owner) || this._Owner; - cur.IsOpen = true; - this._CloseInterval = window.setInterval(function () { return _this.CloseAutomaticToolTip(); }, showDuration); - } - }; - ToolTipServiceSlave.prototype.CloseAutomaticToolTip = function () { - window.clearInterval(this._CloseInterval); - var cur = this._CurrentTooltip; - cur.PlacementOverride = null; - cur.PlacementTargetOverride = null; - cur.IsOpen = false; - this._CurrentTooltip = null; - this._Owner = null; - this._LastEnterSource = null; - this._LastOpened = new Date().getTime(); - }; - return ToolTipServiceSlave; - })(); - var slave = new ToolTipServiceSlave(); - var specialKeys = [ - Fayde.Input.Key.Alt, - Fayde.Input.Key.Back, - Fayde.Input.Key.Delete, - Fayde.Input.Key.Down, - Fayde.Input.Key.End, - Fayde.Input.Key.Home, - Fayde.Input.Key.Insert, - Fayde.Input.Key.Left, - Fayde.Input.Key.PageDown, - Fayde.Input.Key.PageUp, - Fayde.Input.Key.Right, - Fayde.Input.Key.Space, - Fayde.Input.Key.Up - ]; - function isSpecialKey(key) { - return specialKeys.indexOf(key) > -1; - } - })(Controls = Fayde.Controls || (Fayde.Controls = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Controls; - (function (Controls) { - (function (VirtualizationMode) { - VirtualizationMode[VirtualizationMode["Standard"] = 0] = "Standard"; - VirtualizationMode[VirtualizationMode["Recycling"] = 1] = "Recycling"; - })(Controls.VirtualizationMode || (Controls.VirtualizationMode = {})); - var VirtualizationMode = Controls.VirtualizationMode; - Fayde.CoreLibrary.addEnum(VirtualizationMode, "VirtualizationMode"); - var VirtualizingPanel = (function (_super) { - __extends(VirtualizingPanel, _super); - function VirtualizingPanel() { - _super.apply(this, arguments); - } - VirtualizingPanel.GetVirtualizationMode = function (d) { return d.GetValue(VirtualizingPanel.VirtualizationModeProperty); }; - VirtualizingPanel.SetVirtualizationMode = function (d, value) { d.SetValue(VirtualizingPanel.VirtualizationModeProperty, value); }; - VirtualizingPanel.GetIsVirtualizing = function (d) { return d.GetValue(VirtualizingPanel.IsVirtualizingProperty); }; - VirtualizingPanel.SetIsVirtualizing = function (d, value) { d.SetValue(VirtualizingPanel.IsVirtualizingProperty, value); }; - Object.defineProperty(VirtualizingPanel.prototype, "ItemsControl", { - get: function () { - var presenter = Controls.ItemsPresenter.Get(this); - return presenter ? presenter.ItemsControl : null; - }, - enumerable: true, - configurable: true - }); - VirtualizingPanel.prototype.OnItemsAdded = function (index, newItems) { - this.XamlNode.LayoutUpdater.invalidateMeasure(); - }; - VirtualizingPanel.prototype.OnItemsRemoved = function (index, oldItems) { - this.XamlNode.LayoutUpdater.invalidateMeasure(); - }; - VirtualizingPanel.VirtualizationModeProperty = DependencyProperty.RegisterAttached("VirtualizationMode", function () { return new Fayde.Enum(VirtualizationMode); }, VirtualizingPanel, VirtualizationMode.Recycling); - VirtualizingPanel.IsVirtualizingProperty = DependencyProperty.RegisterAttached("IsVirtualizing", function () { return Boolean; }, VirtualizingPanel, false); - return VirtualizingPanel; - })(Controls.Panel); - Controls.VirtualizingPanel = VirtualizingPanel; - Fayde.CoreLibrary.add(VirtualizingPanel); - })(Controls = Fayde.Controls || (Fayde.Controls = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Controls; - (function (Controls) { - var LineDelta = 14.7; - var Wheelitude = 3; - var VirtualizingStackPanelUpdater = minerva.controls.virtualizingstackpanel.VirtualizingStackPanelUpdater; - var VirtualizingStackPanel = (function (_super) { - __extends(VirtualizingStackPanel, _super); - function VirtualizingStackPanel() { - _super.apply(this, arguments); - } - VirtualizingStackPanel.prototype.CreateLayoutUpdater = function () { - var updater = new VirtualizingStackPanelUpdater(); - updater.assets.scrollData = this._ScrollData = new Controls.Primitives.ScrollData(); - updater.tree.containerOwner = new Controls.Internal.VirtualizingPanelContainerOwner(this); - return updater; - }; - Object.defineProperty(VirtualizingStackPanel.prototype, "ScrollOwner", { - get: function () { - return this._ScrollData.scrollOwner; - }, - set: function (value) { - this._ScrollData.scrollOwner = value; - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(VirtualizingStackPanel.prototype, "CanHorizontallyScroll", { - get: function () { - return this._ScrollData.canHorizontallyScroll; - ; - }, - set: function (value) { - var sd = this._ScrollData; - if (sd.canHorizontallyScroll !== value) { - sd.canHorizontallyScroll = value; - this.XamlNode.LayoutUpdater.invalidateMeasure(); - } - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(VirtualizingStackPanel.prototype, "CanVerticallyScroll", { - get: function () { - return this._ScrollData.canVerticallyScroll; - }, - set: function (value) { - var sd = this._ScrollData; - if (sd.canVerticallyScroll !== value) { - sd.canVerticallyScroll = value; - this.XamlNode.LayoutUpdater.invalidateMeasure(); - } - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(VirtualizingStackPanel.prototype, "ExtentWidth", { - get: function () { - return this._ScrollData.extentWidth; - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(VirtualizingStackPanel.prototype, "ExtentHeight", { - get: function () { - return this._ScrollData.extentHeight; - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(VirtualizingStackPanel.prototype, "ViewportWidth", { - get: function () { - return this._ScrollData.viewportWidth; - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(VirtualizingStackPanel.prototype, "ViewportHeight", { - get: function () { - return this._ScrollData.viewportHeight; - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(VirtualizingStackPanel.prototype, "HorizontalOffset", { - get: function () { - return this._ScrollData.offsetX; - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(VirtualizingStackPanel.prototype, "VerticalOffset", { - get: function () { - return this._ScrollData.offsetY; - }, - enumerable: true, - configurable: true - }); - VirtualizingStackPanel.prototype.LineUp = function () { - var sd = this._ScrollData; - if (this.Orientation === Fayde.Orientation.Horizontal) - return this.SetVerticalOffset(sd.offsetY - LineDelta); - return this.SetVerticalOffset(sd.offsetY - 1); - }; - VirtualizingStackPanel.prototype.LineDown = function () { - var sd = this._ScrollData; - if (this.Orientation === Fayde.Orientation.Horizontal) - return this.SetVerticalOffset(sd.offsetY + LineDelta); - return this.SetVerticalOffset(sd.offsetY + 1); - }; - VirtualizingStackPanel.prototype.LineLeft = function () { - var sd = this._ScrollData; - if (this.Orientation === Fayde.Orientation.Vertical) - return this.SetHorizontalOffset(sd.offsetX - LineDelta); - return this.SetHorizontalOffset(sd.offsetX - 1); - }; - VirtualizingStackPanel.prototype.LineRight = function () { - var sd = this._ScrollData; - if (this.Orientation === Fayde.Orientation.Vertical) - return this.SetHorizontalOffset(sd.offsetX + LineDelta); - return this.SetHorizontalOffset(sd.offsetX + 1); - }; - VirtualizingStackPanel.prototype.MouseWheelUp = function () { - var sd = this._ScrollData; - if (this.Orientation === Fayde.Orientation.Horizontal) - return this.SetVerticalOffset(sd.offsetY - LineDelta * Wheelitude); - return this.SetVerticalOffset(sd.offsetY - Wheelitude); - }; - VirtualizingStackPanel.prototype.MouseWheelDown = function () { - var sd = this._ScrollData; - if (this.Orientation === Fayde.Orientation.Horizontal) - return this.SetVerticalOffset(sd.offsetY + LineDelta * Wheelitude); - return this.SetVerticalOffset(sd.offsetY + Wheelitude); - }; - VirtualizingStackPanel.prototype.MouseWheelLeft = function () { - var sd = this._ScrollData; - if (this.Orientation === Fayde.Orientation.Vertical) - return this.SetHorizontalOffset(sd.offsetX - LineDelta * Wheelitude); - return this.SetHorizontalOffset(sd.offsetX - Wheelitude); - }; - VirtualizingStackPanel.prototype.MouseWheelRight = function () { - var sd = this._ScrollData; - if (this.Orientation === Fayde.Orientation.Vertical) - return this.SetHorizontalOffset(sd.offsetX + LineDelta * Wheelitude); - return this.SetHorizontalOffset(sd.offsetX + Wheelitude); - }; - VirtualizingStackPanel.prototype.PageUp = function () { - var sd = this._ScrollData; - return this.SetVerticalOffset(sd.offsetY - sd.viewportHeight); - }; - VirtualizingStackPanel.prototype.PageDown = function () { - var sd = this._ScrollData; - return this.SetVerticalOffset(sd.offsetY + sd.viewportHeight); - }; - VirtualizingStackPanel.prototype.PageLeft = function () { - var sd = this._ScrollData; - return this.SetHorizontalOffset(sd.offsetX - sd.viewportWidth); - }; - VirtualizingStackPanel.prototype.PageRight = function () { - var sd = this._ScrollData; - return this.SetHorizontalOffset(sd.offsetX + sd.viewportWidth); - }; - VirtualizingStackPanel.prototype.MakeVisible = function (uie, rectangle) { - var exposed = new minerva.Rect(); - var sd = this._ScrollData; - var uin = uie.XamlNode; - var isVertical = this.Orientation === Fayde.Orientation.Vertical; - var enumerator = this.Children.getEnumerator(); - while (enumerator.moveNext()) { - var child = enumerator.current; - var childNode = child.XamlNode; - var childRenderSize = childNode.LayoutUpdater.assets.renderSize; - if (uin === childNode) { - if (isVertical) { - if (rectangle.x !== sd.offsetX) - this.SetHorizontalOffset(rectangle.x); - exposed.width = Math.min(childRenderSize.width, sd.viewportWidth); - exposed.height = childRenderSize.height; - exposed.x = sd.offsetX; - } - else { - if (rectangle.y !== sd.offsetY) - this.SetVerticalOffset(rectangle.y); - exposed.height = Math.min(childRenderSize.height, sd.viewportHeight); - exposed.width = childRenderSize.width; - exposed.y = sd.offsetY; - } - return exposed; - } - if (isVertical) - exposed.y += childRenderSize.height; - else - exposed.x += childRenderSize.width; - } - throw new ArgumentException("Visual is not a child of this Panel"); - }; - VirtualizingStackPanel.prototype.SetHorizontalOffset = function (offset) { - var sd = this._ScrollData; - if (offset < 0 || sd.viewportWidth >= sd.extentWidth) - offset = 0; - else if ((offset + sd.viewportWidth) >= sd.extentWidth) - offset = sd.extentWidth - sd.viewportWidth; - if (sd.offsetX === offset) - return false; - sd.offsetX = offset; - if (this.Orientation === Fayde.Orientation.Horizontal) - this.XamlNode.LayoutUpdater.invalidateMeasure(); - else - this.XamlNode.LayoutUpdater.invalidateArrange(); - var scrollOwner = this.ScrollOwner; - if (scrollOwner) - scrollOwner.InvalidateScrollInfo(); - return true; - }; - VirtualizingStackPanel.prototype.SetVerticalOffset = function (offset) { - var sd = this._ScrollData; - if (offset < 0 || sd.viewportHeight >= sd.extentHeight) - offset = 0; - else if ((offset + sd.viewportHeight) >= sd.extentHeight) - offset = sd.extentHeight - sd.viewportHeight; - if (sd.offsetY === offset) - return false; - sd.offsetY = offset; - if (this.Orientation === Fayde.Orientation.Vertical) - this.XamlNode.LayoutUpdater.invalidateMeasure(); - else - this.XamlNode.LayoutUpdater.invalidateArrange(); - var scrollOwner = this.ScrollOwner; - if (scrollOwner) - scrollOwner.InvalidateScrollInfo(); - return true; - }; - VirtualizingStackPanel.prototype.OnItemsAdded = function (index, newItems) { - _super.prototype.OnItemsAdded.call(this, index, newItems); - var isHorizontal = this.Orientation === Fayde.Orientation.Horizontal; - var offset = isHorizontal ? this.HorizontalOffset : this.VerticalOffset; - if (index <= offset) - isHorizontal ? this.SetHorizontalOffset(offset + newItems.length) : this.SetVerticalOffset(offset + newItems.length); - var scrollOwner = this.ScrollOwner; - if (scrollOwner) - scrollOwner.InvalidateScrollInfo(); - }; - VirtualizingStackPanel.prototype.OnItemsRemoved = function (index, oldItems) { - _super.prototype.OnItemsRemoved.call(this, index, oldItems); - var ic = this.ItemsControl; - if (ic) { - var icm = ic.ItemContainersManager; - var children = this.Children; - for (var i = 0, len = oldItems.length; i < len; i++) { - var oldItem = oldItems[i]; - var container = icm.ContainerFromItem(oldItem); - if (container) - children.Remove(container); - } - } - var isHorizontal = this.Orientation === Fayde.Orientation.Horizontal; - var offset = isHorizontal ? this.HorizontalOffset : this.VerticalOffset; - var numBeforeOffset = Math.min(offset, index + oldItems.length) - index; - if (numBeforeOffset > 0) - isHorizontal ? this.SetHorizontalOffset(numBeforeOffset) : this.SetVerticalOffset(numBeforeOffset); - var scrollOwner = this.ScrollOwner; - if (scrollOwner) - scrollOwner.InvalidateScrollInfo(); - }; - VirtualizingStackPanel.OrientationProperty = DependencyProperty.Register("Orientation", function () { return new Fayde.Enum(Fayde.Orientation); }, VirtualizingStackPanel, Fayde.Orientation.Vertical); - return VirtualizingStackPanel; - })(Controls.VirtualizingPanel); - Controls.VirtualizingStackPanel = VirtualizingStackPanel; - Fayde.CoreLibrary.add(VirtualizingStackPanel); - nullstone.addTypeInterfaces(VirtualizingStackPanel, Controls.Primitives.IScrollInfo_); - var reactions; - (function (reactions) { - Fayde.UIReaction(VirtualizingStackPanel.OrientationProperty, function (upd, ov, nv) { return upd.invalidateMeasure(); }, false); - })(reactions || (reactions = {})); - })(Controls = Fayde.Controls || (Fayde.Controls = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - function Clone(value) { - if (value === undefined) - return undefined; - if (value === null) - return null; - if (value instanceof Array) - return value.slice(0); - if (value !== Object(value)) - return value; - if (value.Clone instanceof Function) - return value.Clone(); - return extend(new value.constructor(), value); - } - Fayde.Clone = Clone; - function extend(obj) { - var args = []; - for (var _i = 1; _i < arguments.length; _i++) { - args[_i - 1] = arguments[_i]; - } - var s; - for (var i = 0, len = args.length; i < len; i++) { - if (s = args[i]) { - for (var prop in s) { - obj[prop] = s[prop]; - } - } - } - return obj; - } -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var DataTemplate = (function (_super) { - __extends(DataTemplate, _super); - function DataTemplate() { - _super.apply(this, arguments); - } - DataTemplate.DataTypeProperty = DependencyProperty.Register("DataType", function () { return Fayde.IType_; }, DataTemplate); - return DataTemplate; - })(Fayde.Markup.FrameworkTemplate); - Fayde.DataTemplate = DataTemplate; - Fayde.CoreLibrary.add(DataTemplate); -})(Fayde || (Fayde = {})); -var DependencyPropertyChangedEventArgs = (function () { - function DependencyPropertyChangedEventArgs() { - } - return DependencyPropertyChangedEventArgs; -})(); -/// -var Fayde; -(function (Fayde) { - var HierarchicalDataTemplate = (function (_super) { - __extends(HierarchicalDataTemplate, _super); - function HierarchicalDataTemplate() { - _super.apply(this, arguments); - } - HierarchicalDataTemplate.ItemsSourceProperty = DependencyProperty.Register("ItemsSource", function () { return nullstone.IEnumerable_; }, HierarchicalDataTemplate); - HierarchicalDataTemplate.ItemTemplateProperty = DependencyProperty.Register("ItemTemplate", function () { return Fayde.DataTemplate; }, HierarchicalDataTemplate); - HierarchicalDataTemplate.ItemContainerStyleProperty = DependencyProperty.Register("ItemContainerStyle", function () { return Fayde.Style; }, HierarchicalDataTemplate); - return HierarchicalDataTemplate; - })(Fayde.DataTemplate); - Fayde.HierarchicalDataTemplate = HierarchicalDataTemplate; - Fayde.CoreLibrary.add(HierarchicalDataTemplate); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var LayoutInformation = (function () { - function LayoutInformation() { - } - LayoutInformation.GetLayoutClip = function (uie) { - var rect = new minerva.Rect(); - minerva.Rect.copyTo(uie.XamlNode.LayoutUpdater.assets.layoutClip, rect); - var geom = new Fayde.Media.RectangleGeometry(); - geom.Rect = rect; - return geom; - }; - LayoutInformation.GetLayoutSlot = function (uie) { - var rect = new minerva.Rect(); - minerva.Rect.copyTo(uie.XamlNode.LayoutUpdater.assets.layoutSlot, rect); - return rect; - }; - return LayoutInformation; - })(); - Fayde.LayoutInformation = LayoutInformation; - Fayde.CoreLibrary.add(LayoutInformation); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var NameScope = (function () { - function NameScope(isRoot) { - this.IsRoot = false; - this.XNodes = {}; - if (isRoot) - this.IsRoot = isRoot; - } - NameScope.prototype.FindName = function (name) { - return this.XNodes[name]; - }; - NameScope.prototype.RegisterName = function (name, xnode) { - var existing = this.XNodes[name]; - if (existing && existing !== xnode) - throw new InvalidOperationException("Name is already registered."); - this.XNodes[name] = xnode; - }; - NameScope.prototype.UnregisterName = function (name) { - this.XNodes[name] = undefined; - }; - NameScope.prototype.Absorb = function (otherNs) { - var on = otherNs.XNodes; - for (var name in on) { - this.RegisterName(name, on[name]); - } - }; - return NameScope; - })(); - Fayde.NameScope = NameScope; -})(Fayde || (Fayde = {})); -/// -/// -var Fayde; -(function (Fayde) { - var ResourceDictionaryCollection = (function (_super) { - __extends(ResourceDictionaryCollection, _super); - function ResourceDictionaryCollection() { - _super.apply(this, arguments); - } - ResourceDictionaryCollection.prototype.Get = function (key) { - for (var en = this.getEnumerator(); en.moveNext();) { - var cur = en.current.Get(key); - if (cur !== undefined) - return cur; - } - return undefined; - }; - ResourceDictionaryCollection.prototype.AddingToCollection = function (value, error) { - if (!_super.prototype.AddingToCollection.call(this, value, error)) - return false; - return this._AssertNoCycles(value, value.XamlNode.ParentNode, error); - }; - ResourceDictionaryCollection.prototype._AssertNoCycles = function (subtreeRoot, firstAncestorNode, error) { - var curNode = firstAncestorNode; - while (curNode) { - var rd = curNode.XObject; - if (rd instanceof ResourceDictionary) { - var cycleFound = false; - if (rd === subtreeRoot) - cycleFound = true; - else if (rd.Source && nullstone.equals(rd.Source, subtreeRoot.Source)) - cycleFound = true; - if (cycleFound) { - error.Message = "Cycle found in resource dictionaries."; - error.Number = BError.InvalidOperation; - return false; - } - } - curNode = curNode.ParentNode; - } - for (var en = subtreeRoot.MergedDictionaries.getEnumerator(); en.moveNext();) { - if (!this._AssertNoCycles(en.current, firstAncestorNode, error)) - return false; - } - return true; - }; - return ResourceDictionaryCollection; - })(Fayde.XamlObjectCollection); - Fayde.ResourceDictionaryCollection = ResourceDictionaryCollection; - Fayde.CoreLibrary.add(ResourceDictionaryCollection); - var ResourceDictionary = (function (_super) { - __extends(ResourceDictionary, _super); - function ResourceDictionary() { - _super.apply(this, arguments); - this._Keys = []; - this._Values = []; - this._IsSourceLoaded = false; - this._SourceBacking = null; - } - Object.defineProperty(ResourceDictionary.prototype, "MergedDictionaries", { - get: function () { - var md = this._MergedDictionaries; - if (!md) { - md = this._MergedDictionaries = new ResourceDictionaryCollection(); - md.AttachTo(this); - } - return md; - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(ResourceDictionary.prototype, "Count", { - get: function () { - return this._Values.length; - }, - enumerable: true, - configurable: true - }); - ResourceDictionary.prototype.AttachTo = function (xobj) { - var error = new BError(); - if (!this.XamlNode.AttachTo(xobj.XamlNode, error)) - error.ThrowException(); - }; - ResourceDictionary.prototype.Contains = function (key) { - return this._Keys.indexOf(key) > -1; - }; - ResourceDictionary.prototype.Get = function (key) { - if (!!this.Source) { - return this._GetFromSource(key); - } - var index = this._Keys.indexOf(key); - if (index > -1) - return this._Values[index]; - var md = this._MergedDictionaries; - if (md) - return md.Get(key); - return undefined; - }; - ResourceDictionary.prototype.Set = function (key, value) { - if (key === undefined) - return false; - if (value === undefined) - return this.Remove(key); - var index = this._Keys.indexOf(key); - var error = new BError(); - if (value instanceof Fayde.XamlObject && !value.XamlNode.AttachTo(this.XamlNode, error)) { - if (error.Message) - throw new Exception(error.Message); - return false; - } - if (index < 0) { - this._Keys.push(key); - this._Values.push(value); - } - else { - var oldValue = this._Values[index]; - this._Keys[index] = key; - this._Values[index] = value; - if (oldValue instanceof Fayde.XamlObject) - oldValue.XamlNode.Detach(); - } - return true; - }; - ResourceDictionary.prototype.Remove = function (key) { - var index = this._Keys.indexOf(key); - if (index < 0) - return false; - this._Keys.splice(index, 1); - var oldvalue = this._Values.splice(index, 1)[0]; - if (oldvalue instanceof Fayde.XamlObject) - oldvalue.XamlNode.Detach(); - }; - ResourceDictionary.prototype.getEnumerator = function (reverse) { - return nullstone.IEnumerator_.fromArray(this._Values, reverse); - }; - ResourceDictionary.prototype.GetNodeEnumerator = function (reverse) { - var prev = this.getEnumerator(reverse); - return { - current: undefined, - moveNext: function () { - if (prev.moveNext()) { - this.current = undefined; - return false; - } - var xobj = prev.current; - this.current = xobj.XamlNode; - return true; - } - }; - }; - ResourceDictionary.prototype._GetFromSource = function (key) { - if (!this._IsSourceLoaded) { - this._SourceBacking = Fayde.Markup.Load(this.App, nullstone.markup.xaml.XamlMarkup.create(this.Source)); - this._IsSourceLoaded = true; - } - return this._SourceBacking.Get(key); - }; - return ResourceDictionary; - })(Fayde.XamlObject); - Fayde.ResourceDictionary = ResourceDictionary; - Fayde.CoreLibrary.add(ResourceDictionary); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var RoutedEvent = (function (_super) { - __extends(RoutedEvent, _super); - function RoutedEvent() { - _super.apply(this, arguments); - } - return RoutedEvent; - })(nullstone.Event); - Fayde.RoutedEvent = RoutedEvent; - Fayde.CoreLibrary.add(RoutedEvent); -})(Fayde || (Fayde = {})); -/// -/// -var Fayde; -(function (Fayde) { - var RoutedPropertyChangedEvent = (function (_super) { - __extends(RoutedPropertyChangedEvent, _super); - function RoutedPropertyChangedEvent() { - _super.apply(this, arguments); - } - return RoutedPropertyChangedEvent; - })(Fayde.RoutedEvent); - Fayde.RoutedPropertyChangedEvent = RoutedPropertyChangedEvent; - Fayde.CoreLibrary.add(RoutedPropertyChangedEvent); - var RoutedPropertyChangedEventArgs = (function (_super) { - __extends(RoutedPropertyChangedEventArgs, _super); - function RoutedPropertyChangedEventArgs(oldValue, newValue) { - _super.call(this); - Object.defineProperty(this, "OldValue", { value: oldValue, writable: false }); - Object.defineProperty(this, "NewValue", { value: newValue, writable: false }); - } - return RoutedPropertyChangedEventArgs; - })(Fayde.RoutedEventArgs); - Fayde.RoutedPropertyChangedEventArgs = RoutedPropertyChangedEventArgs; - Fayde.CoreLibrary.add(RoutedPropertyChangedEventArgs); -})(Fayde || (Fayde = {})); -/// -/// -var Fayde; -(function (Fayde) { - var RoutedPropertyChangingEvent = (function (_super) { - __extends(RoutedPropertyChangingEvent, _super); - function RoutedPropertyChangingEvent() { - _super.apply(this, arguments); - } - return RoutedPropertyChangingEvent; - })(Fayde.RoutedEvent); - Fayde.RoutedPropertyChangingEvent = RoutedPropertyChangingEvent; - Fayde.CoreLibrary.add(RoutedPropertyChangingEvent); - var RoutedPropertyChangingEventArgs = (function (_super) { - __extends(RoutedPropertyChangingEventArgs, _super); - function RoutedPropertyChangingEventArgs(propd, oldValue, newValue, isCancelable) { - _super.call(this); - this._Cancel = false; - this.InCoercion = false; - this.Property = propd; - this.OldValue = oldValue; - this.NewValue = newValue; - this._IsCancelable = isCancelable; - } - Object.defineProperty(RoutedPropertyChangingEventArgs.prototype, "IsCancellable", { - get: function () { return this._IsCancelable; }, - enumerable: true, - configurable: true - }); - Object.defineProperty(RoutedPropertyChangingEventArgs.prototype, "Cancel", { - get: function () { return this._Cancel; }, - set: function (value) { - if (this._IsCancelable) - this._Cancel = value; - else if (value) - throw new InvalidOperationException("Not cancelable."); - }, - enumerable: true, - configurable: true - }); - return RoutedPropertyChangingEventArgs; - })(Fayde.RoutedEventArgs); - Fayde.RoutedPropertyChangingEventArgs = RoutedPropertyChangingEventArgs; - Fayde.CoreLibrary.add(RoutedPropertyChangingEventArgs); -})(Fayde || (Fayde = {})); -/// -/// -var Fayde; -(function (Fayde) { - var SetterCollection = (function (_super) { - __extends(SetterCollection, _super); - function SetterCollection() { - _super.apply(this, arguments); - this._IsSealed = false; - } - SetterCollection.prototype.Seal = function () { - if (this._IsSealed) - return; - for (var en = this.getEnumerator(); en.moveNext();) { - en.current.Seal(); - } - this._IsSealed = true; - }; - SetterCollection.prototype.AddingToCollection = function (value, error) { - if (!value || !this._ValidateSetter(value, error)) - return false; - return _super.prototype.AddingToCollection.call(this, value, error); - }; - SetterCollection.prototype._ValidateSetter = function (setter, error) { - if (!(setter.Property instanceof DependencyProperty)) { - error.Message = "Setter.Property must be a DependencyProperty."; - return false; - } - if (setter.Value === undefined) { - if (!setter._HasDeferredValueExpression(Setter.ValueProperty)) { - error.Message = "Setter must have a Value."; - return false; - } - } - if (this._IsSealed) { - error.Message = "Setter is sealed."; - return false; - } - return true; - }; - return SetterCollection; - })(Fayde.XamlObjectCollection); - Fayde.SetterCollection = SetterCollection; - Fayde.CoreLibrary.add(SetterCollection); - var Setter = (function (_super) { - __extends(Setter, _super); - function Setter() { - _super.apply(this, arguments); - this._IsSealed = false; - } - Setter.prototype.Seal = function () { - var propd = this.Property; - var val = this.Value; - var propTargetType = propd.GetTargetType(); - this.SetCurrentValue(Setter.ConvertedValueProperty, nullstone.convertAnyToType(val, propTargetType)); - this._IsSealed = true; - }; - Setter.Compare = function (setter1, setter2) { - var a = setter1.Property; - var b = setter2.Property; - return (a === b) ? 0 : ((a._ID > b._ID) ? 1 : -1); - }; - Setter.PropertyProperty = DependencyProperty.Register("Property", function () { return DependencyProperty; }, Setter); - Setter.ValueProperty = DependencyProperty.Register("Value", function () { return Object; }, Setter); - Setter.ConvertedValueProperty = DependencyProperty.RegisterReadOnly("ConvertedValue", function () { return Object; }, Setter); - return Setter; - })(Fayde.DependencyObject); - Fayde.Setter = Setter; - Fayde.CoreLibrary.add(Setter); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var SizeChangedEventArgs = (function (_super) { - __extends(SizeChangedEventArgs, _super); - function SizeChangedEventArgs(previousSize, newSize) { - _super.call(this); - Object.defineProperty(this, "PreviousSize", { value: new minerva.Size(), writable: false }); - Object.defineProperty(this, "NewSize", { value: new minerva.Size(), writable: false }); - minerva.Size.copyTo(previousSize, this.PreviousSize); - minerva.Size.copyTo(newSize, this.NewSize); - } - return SizeChangedEventArgs; - })(Fayde.RoutedEventArgs); - Fayde.SizeChangedEventArgs = SizeChangedEventArgs; - Fayde.CoreLibrary.add(SizeChangedEventArgs); -})(Fayde || (Fayde = {})); -/// -/// -var Fayde; -(function (Fayde) { - var Style = (function (_super) { - __extends(Style, _super); - function Style() { - _super.call(this); - this._IsSealed = false; - var coll = Style.SettersProperty.Initialize(this); - coll.AttachTo(this); - } - Style.prototype.Seal = function () { - if (this._IsSealed) - return; - this.Setters.Seal(); - this._IsSealed = true; - var base = this.BasedOn; - if (base) - base.Seal(); - }; - Style.prototype.Validate = function (instance, error) { - var targetType = this.TargetType; - var parentType = instance.constructor; - if (this._IsSealed) { - if (!(instance instanceof targetType)) { - error.Number = BError.XamlParse; - error.Message = "Style.TargetType (" + targetType.name + ") is not a subclass of (" + parentType.name + ")"; - return false; - } - return true; - } - var cycles = []; - var root = this; - while (root) { - if (cycles.indexOf(root) > -1) { - error.Number = BError.InvalidOperation; - error.Message = "Circular reference in Style.BasedOn"; - return false; - } - cycles.push(root); - root = root.BasedOn; - } - cycles = null; - root = this; - var targetType; - while (root) { - targetType = root.TargetType; - if (root === this) { - if (!targetType) { - error.Number = BError.InvalidOperation; - error.Message = "TargetType cannot be null"; - return false; - } - else if (!nullstone.doesInheritFrom(parentType, targetType)) { - error.Number = BError.XamlParse; - error.Message = "Style.TargetType (" + targetType.name + ") is not a subclass of (" + parentType.name + ")"; - return false; - } - } - else if (!targetType || !nullstone.doesInheritFrom(parentType, targetType)) { - error.Number = BError.InvalidOperation; - error.Message = "Style.TargetType (" + (targetType ? targetType.name : "") + ") is not a subclass of (" + parentType.name + ")"; - return false; - } - parentType = targetType; - root = root.BasedOn; - } - this.Seal(); - return true; - }; - Style.SettersProperty = DependencyProperty.RegisterImmutable("Setters", function () { return Fayde.SetterCollection; }, Style); - Style.BasedOnProperty = DependencyProperty.Register("BasedOn", function () { return Style; }, Style); - Style.TargetTypeProperty = DependencyProperty.Register("TargetType", function () { return Fayde.IType_; }, Style); - return Style; - })(Fayde.DependencyObject); - Fayde.Style = Style; - Fayde.CoreLibrary.add(Style); - Fayde.Markup.Content(Style, Style.SettersProperty); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var TemplateBinding = (function () { - function TemplateBinding() { - } - TemplateBinding.prototype.init = function (val) { - this.SourceProperty = val; - }; - TemplateBinding.prototype.transmute = function (os) { - return new Fayde.TemplateBindingExpression(this.SourceProperty); - }; - return TemplateBinding; - })(); - Fayde.TemplateBinding = TemplateBinding; - Fayde.CoreLibrary.add(TemplateBinding); -})(Fayde || (Fayde = {})); -/// -/// -var Fayde; -(function (Fayde) { - var TriggerAction = (function (_super) { - __extends(TriggerAction, _super); - function TriggerAction() { - _super.apply(this, arguments); - } - TriggerAction.prototype.Fire = function () { }; - return TriggerAction; - })(Fayde.DependencyObject); - Fayde.TriggerAction = TriggerAction; - Fayde.CoreLibrary.add(TriggerAction); - var TriggerActionCollection = (function (_super) { - __extends(TriggerActionCollection, _super); - function TriggerActionCollection() { - _super.apply(this, arguments); - } - TriggerActionCollection.prototype.Fire = function () { - var enumerator = this.getEnumerator(); - while (enumerator.moveNext()) { - enumerator.current.Fire(); - } - }; - return TriggerActionCollection; - })(Fayde.XamlObjectCollection); - Fayde.TriggerActionCollection = TriggerActionCollection; - Fayde.CoreLibrary.add(TriggerActionCollection); - var TriggerBase = (function (_super) { - __extends(TriggerBase, _super); - function TriggerBase() { - _super.apply(this, arguments); - } - TriggerBase.prototype.Attach = function (target) { }; - TriggerBase.prototype.Detach = function (target) { }; - return TriggerBase; - })(Fayde.DependencyObject); - Fayde.TriggerBase = TriggerBase; - Fayde.CoreLibrary.add(TriggerBase); - var EventTrigger = (function (_super) { - __extends(EventTrigger, _super); - function EventTrigger() { - _super.call(this); - this._IsAttached = false; - var coll = EventTrigger.ActionsProperty.Initialize(this); - coll.AttachTo(this); - } - EventTrigger.prototype.Attach = function (target) { - if (this._IsAttached) - return; - var evt = this._ParseEventName(target); - if (evt) { - this._IsAttached = true; - evt.on(this._FireActions, this); - return; - } - console.warn("Could not attach to RoutedEvent: " + this.RoutedEvent); - }; - EventTrigger.prototype.Detach = function (target) { - var evt = this._ParseEventName(target); - if (evt) - evt.off(this._FireActions, this); - this._IsAttached = false; - }; - EventTrigger.prototype._FireActions = function (sender, e) { - var actions = this.Actions; - if (actions) - actions.Fire(); - }; - EventTrigger.prototype._ParseEventName = function (target) { - var routedEventName = this.RoutedEvent; - var tokens = routedEventName.split("."); - if (tokens.length === 1) - routedEventName = tokens[0]; - else if (tokens.length === 2) - routedEventName = tokens[1]; - else - return undefined; - var evt = target[routedEventName]; - if (evt instanceof Fayde.RoutedEvent) - return evt; - return undefined; - }; - EventTrigger.ActionsProperty = DependencyProperty.RegisterImmutable("Actions", function () { return TriggerActionCollection; }, EventTrigger); - EventTrigger.RoutedEventProperty = DependencyProperty.Register("RoutedEvent", function () { return String; }, EventTrigger); - return EventTrigger; - })(TriggerBase); - Fayde.EventTrigger = EventTrigger; - Fayde.CoreLibrary.add(EventTrigger); - Fayde.Markup.Content(EventTrigger, EventTrigger.ActionsProperty); - var TriggerCollection = (function (_super) { - __extends(TriggerCollection, _super); - function TriggerCollection() { - _super.apply(this, arguments); - } - Object.defineProperty(TriggerCollection.prototype, "ParentXamlObject", { - get: function () { - var parentNode = this.XamlNode.ParentNode; - if (!parentNode) - return undefined; - return parentNode.XObject; - }, - enumerable: true, - configurable: true - }); - TriggerCollection.prototype.AddingToCollection = function (value, error) { - if (!_super.prototype.AddingToCollection.call(this, value, error)) - return false; - var parent = this.ParentXamlObject; - if (parent) - value.Attach(parent); - return true; - }; - TriggerCollection.prototype.RemovedFromCollection = function (value, isValueSafe) { - _super.prototype.RemovedFromCollection.call(this, value, isValueSafe); - var parent = this.ParentXamlObject; - if (parent) - value.Detach(parent); - }; - TriggerCollection.prototype.AttachTarget = function (target) { - var enumerator = this.getEnumerator(); - while (enumerator.moveNext()) { - enumerator.current.Attach(target); - } - }; - TriggerCollection.prototype.DetachTarget = function (target) { - var enumerator = this.getEnumerator(); - while (enumerator.moveNext()) { - enumerator.current.Detach(target); - } - }; - return TriggerCollection; - })(Fayde.XamlObjectCollection); - Fayde.TriggerCollection = TriggerCollection; - Fayde.CoreLibrary.add(TriggerCollection); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var VisualTreeEnum = (function () { - function VisualTreeEnum() { - } - VisualTreeEnum.GetAncestors = function (uie) { - return new AncestorsEnumerable(uie); - }; - return VisualTreeEnum; - })(); - Fayde.VisualTreeEnum = VisualTreeEnum; - var AncestorsEnumerable = (function () { - function AncestorsEnumerable(uie) { - this.uie = uie; - } - AncestorsEnumerable.prototype.getEnumerator = function () { - var curNode = this.uie ? this.uie.XamlNode : null; - var e = { - current: undefined, - moveNext: function () { - curNode = curNode ? curNode.VisualParentNode : undefined; - e.current = curNode ? curNode.XObject : undefined; - return e.current !== undefined; - } - }; - return e; - }; - return AncestorsEnumerable; - })(); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var VisualTreeHelper = (function () { - function VisualTreeHelper() { - } - VisualTreeHelper.GetParent = function (d) { - if (!(d instanceof Fayde.FrameworkElement)) - throw new InvalidOperationException("Reference is not a valid visual DependencyObject"); - var parentNode = d.XamlNode.VisualParentNode; - if (parentNode) - return parentNode.XObject; - }; - VisualTreeHelper.GetParentOfType = function (d, type) { - if (!(d instanceof Fayde.FrameworkElement)) - throw new InvalidOperationException("Reference is not a valid visual DependencyObject"); - var curNode = d.XamlNode; - while ((curNode = curNode.VisualParentNode)) { - if (curNode.XObject instanceof type) - return curNode.XObject; - } - return undefined; - }; - VisualTreeHelper.GetRoot = function (d) { - if (!(d instanceof Fayde.FrameworkElement)) - throw new InvalidOperationException("Reference is not a valid visual DependencyObject"); - var rootNode = d.XamlNode.GetVisualRoot(); - if (rootNode) - return rootNode.XObject; - }; - VisualTreeHelper.GetChild = function (d, childIndex) { - if (!(d instanceof Fayde.FrameworkElement)) - throw new InvalidOperationException("Reference is not a valid visual DependencyObject"); - var feNode = d.XamlNode; - var subtreeNode = feNode.SubtreeNode; - if (!subtreeNode) - throw new IndexOutOfRangeException(childIndex); - var subtree = subtreeNode.XObject; - if (subtree instanceof Fayde.XamlObjectCollection) - return subtree.GetValueAt(childIndex); - if ((subtree instanceof Fayde.UIElement) && childIndex === 0) - return subtree; - throw new IndexOutOfRangeException(childIndex); - }; - VisualTreeHelper.GetChildrenCount = function (d) { - if (!(d instanceof Fayde.FrameworkElement)) - throw new InvalidOperationException("Reference is not a valid visual DependencyObject"); - var feNode = d.XamlNode; - var subtreeNode = feNode.SubtreeNode; - if (!subtreeNode) - return 0; - var subtree = subtreeNode.XObject; - if (subtreeNode.XObject instanceof Fayde.XamlObjectCollection) - return subtree.Count; - if (subtree instanceof Fayde.UIElement) - return 1; - return 0; - }; - VisualTreeHelper.FindElementsInHostCoordinates = function (pos, uie) { - return minerva.findElementsInHostSpace(pos, uie.XamlNode.LayoutUpdater) - .map(function (upd) { return upd.getAttachedValue("$node").XObject; }); - }; - VisualTreeHelper.__Debug = function (ui, func) { - var uin; - if (ui instanceof Fayde.UIElement) { - uin = ui.XamlNode; - } - else if (ui instanceof Fayde.UINode) { - uin = ui; - } - else if (ui instanceof minerva.core.Updater) { - uin = ui.getAttachedValue("$node"); - } - var topNode; - if (!uin) { - var rv = Fayde.Application.Current.RootVisual; - topNode = (rv) ? rv.XamlNode : null; - } - else { - topNode = uin.GetVisualRoot(); - } - if (!topNode) - return "[No top node.]"; - if (!func) - func = VisualTreeHelper.__DebugUIElement; - return VisualTreeHelper.__DebugTree(topNode, uin, 1, func); - }; - VisualTreeHelper.__DebugTree = function (curNode, matchNode, tabIndex, func) { - var str = ""; - if (curNode === matchNode) { - for (var i = 0; i < tabIndex; i++) { - str += ">>>>>>>>"; - } - } - else { - for (var i = 0; i < tabIndex; i++) { - str += "\t"; - } - } - var cur = curNode.XObject; - str += cur.constructor.name; - var id = cur._ID; - if (id) - str += "[" + id + "]"; - var name = curNode.Name; - str += " ["; - var ns = curNode.NameScope; - if (!ns) - str += "^"; - else if (ns.IsRoot) - str += "+"; - else - str += "-"; - str += name + "]"; - if (func) - str += func(curNode, tabIndex); - str += "\n"; - var enumerator = curNode.GetVisualTreeEnumerator(); - if (!enumerator) - return str; - var childNode; - while (enumerator.moveNext()) { - childNode = enumerator.current; - str += VisualTreeHelper.__DebugTree(childNode, matchNode, tabIndex + 1, func); - } - return str; - }; - VisualTreeHelper.__DebugUIElement = function (uin, tabIndex) { - if (!uin) - return ""; - var uie = uin.XObject; - var str = "("; - if (uie.Visibility === Fayde.Visibility.Visible) - str += "Visible"; - else - str += "Collapsed"; - var lu = uin.LayoutUpdater; - if (lu) { - str += " "; - var ls = lu.assets.layoutSlot; - str += "(" + ls.x + "," + ls.y + ")(" + ls.width + "," + ls.height + ")"; - } - str += ")"; - var t = uie.TemplateOwner; - str += "$TO=" + (t ? t.constructor.name : "(null)"); - var gridStr = VisualTreeHelper.__DebugGrid(uin, tabIndex); - if (gridStr) - str += "\n" + gridStr; - return str; - }; - VisualTreeHelper.__DebugGrid = function (uin, tabIndex) { - var grid; - if (uin.XObject instanceof Fayde.Controls.Grid) - grid = uin.XObject; - if (!grid) - return ""; - var rds = grid.RowDefinitions; - var rcount = rds.Count; - var cds = grid.ColumnDefinitions; - var ccount = cds.Count; - var tabs = ""; - for (var i = 0; i < tabIndex; i++) { - tabs += "\t"; - } - var str = ""; - if (rcount > 0) { - str += tabs; - str += " Rows (" + rcount + "):\n"; - var rowdef; - for (var en = rds.getEnumerator(), i = 0; en.moveNext(); i++) { - rowdef = en.current; - str += tabs; - str += "\t[" + i + "] -> " + rowdef.ActualHeight + "\n"; - } - } - var enumerator2; - if (ccount > 0) { - str += tabs; - str += " Columns (" + ccount + "):\n"; - var coldef; - for (var en2 = cds.getEnumerator(), i = 0; en2.moveNext(); i++) { - coldef = en2.current; - str += tabs; - str += "\t[" + i + "] -> " + coldef.ActualWidth + "\n"; - } - } - return str; - }; - VisualTreeHelper.__DebugUIElementLayout = function (uin, tabIndex) { - if (!uin) - return ""; - return uin.LayoutUpdater._DebugLayout(); - }; - VisualTreeHelper.__DebugLayout = function (ui) { - return VisualTreeHelper.__Debug(ui, VisualTreeHelper.__DebugUIElementLayout); - }; - VisualTreeHelper.__GetById = function (id) { - var rv = Fayde.Application.Current.RootVisual; - var topNode = (rv) ? rv.XamlNode : null; - if (!topNode) - return; - var walker = Fayde.DeepTreeWalker(topNode); - var curNode; - while (curNode = walker.Step()) { - if (curNode.XObject._ID === id) - return curNode.XObject; - } - }; - return VisualTreeHelper; - })(); - Fayde.VisualTreeHelper = VisualTreeHelper; -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - (function (VisualTreeDirection) { - VisualTreeDirection[VisualTreeDirection["Logical"] = 0] = "Logical"; - VisualTreeDirection[VisualTreeDirection["Reverse"] = 1] = "Reverse"; - VisualTreeDirection[VisualTreeDirection["ZForward"] = 2] = "ZForward"; - VisualTreeDirection[VisualTreeDirection["ZReverse"] = 3] = "ZReverse"; - })(Fayde.VisualTreeDirection || (Fayde.VisualTreeDirection = {})); - var VisualTreeDirection = Fayde.VisualTreeDirection; - function mergeSetters(arr, dps, style) { - var enumerator = style.Setters.getEnumerator(true); - var setter; - while (enumerator.moveNext()) { - setter = enumerator.current; - if (!(setter instanceof Fayde.Setter)) - continue; - var propd = setter.Property; - if (!propd) - continue; - if (dps[propd._ID]) - continue; - dps[propd._ID] = setter; - arr.push(setter); - } - } - function SingleStyleWalker(style) { - var dps = []; - var flattenedSetters = []; - var cur = style; - while (cur) { - mergeSetters(flattenedSetters, dps, cur); - cur = cur.BasedOn; - } - flattenedSetters.sort(Fayde.Setter.Compare); - return { - Step: function () { - return flattenedSetters.shift(); - } - }; - } - Fayde.SingleStyleWalker = SingleStyleWalker; - function MultipleStylesWalker(styles) { - var flattenedSetters = []; - if (styles) { - var dps = []; - var stylesSeen = []; - var len = styles.length; - for (var i = 0; i < len; i++) { - var style = styles[i]; - while (style) { - if (stylesSeen.indexOf(style) > -1) - continue; - mergeSetters(flattenedSetters, dps, style); - stylesSeen.push(style); - style = style.BasedOn; - } - } - flattenedSetters.sort(Fayde.Setter.Compare); - } - return { - Step: function () { - return flattenedSetters.shift(); - } - }; - } - Fayde.MultipleStylesWalker = MultipleStylesWalker; - function DeepTreeWalker(topNode, direction) { - var last = undefined; - var dir = VisualTreeDirection.Logical; - var walkList = [topNode]; - if (direction) - dir = direction; - return { - Step: function () { - if (last) { - var enumerator = last.GetVisualTreeEnumerator(); - var insertIndex = 0; - while (enumerator.moveNext()) { - walkList.splice(insertIndex, 0, enumerator.current); - insertIndex++; - } - } - var next = walkList.shift(); - if (!next) { - last = undefined; - return; - } - return (last = next); - }, - SkipBranch: function () { - last = undefined; - } - }; - } - Fayde.DeepTreeWalker = DeepTreeWalker; - function compare(left, right) { - if (!left) - return !right ? 0 : -1; - if (!right) - return 1; - var v1 = left.XObject.TabIndex; - var v2 = right.XObject.TabIndex; - if (v1 == null) { - return v2 != null ? -1 : 0; - } - else if (v2 == null) { - return 1; - } - if (v1 > v2) - return 1; - return v1 === v2 ? 0 : -1; - } - function getParentNavigationMode(uin) { - while (uin) { - if (uin instanceof Fayde.Controls.ControlNode) - return uin.XObject.TabNavigation; - return Fayde.Input.KeyboardNavigationMode.Local; - } - return Fayde.Input.KeyboardNavigationMode.Local; - } - function getActiveNavigationMode(uin) { - while (uin) { - if (uin instanceof Fayde.Controls.ControlNode) - return uin.XObject.TabNavigation; - uin = uin.VisualParentNode; - } - return Fayde.Input.KeyboardNavigationMode.Local; - } - function walkChildren(root, cur, forwards) { - var walker = new TabNavigationWalker(root, cur, forwards); - return walker.FocusChild(); - } - var TabNavigationWalker = (function () { - function TabNavigationWalker(root, cur, forwards) { - this._Root = root; - this._Current = cur; - this._Forwards = forwards; - this._TabSorted = []; - } - TabNavigationWalker.prototype.FocusChild = function () { - var childNode; - var childIsControl; - var curIndex = -1; - var childWalker = DeepTreeWalker(this._Root); - while (childNode = childWalker.Step()) { - if (childNode === this._Root || !(childNode instanceof Fayde.Controls.ControlNode)) - continue; - this._TabSorted.push(childNode); - childWalker.SkipBranch(); - } - if (this._TabSorted.length > 1) { - this._TabSorted.sort(compare); - if (!this._Forwards) - this._TabSorted = this._TabSorted.reverse(); - } - var len = this._TabSorted.length; - for (var i = 0; i < len; i++) { - if (this._TabSorted[i] === this._Current) - curIndex = i; - } - if (curIndex !== -1 && getActiveNavigationMode(this._Root) === Fayde.Input.KeyboardNavigationMode.Once) { - if (!this._Forwards && this._Root instanceof Fayde.Controls.ControlNode) - return this._Root.TabTo(); - return false; - } - var len = this._TabSorted.length; - if (len > 0) { - for (var j = 0; j < len; j++) { - if ((j + curIndex + 1) === len && getActiveNavigationMode(this._Root) !== Fayde.Input.KeyboardNavigationMode.Cycle) - break; - childNode = this._TabSorted[(j + curIndex + 1) % len]; - childIsControl = childNode instanceof Fayde.Controls.ControlNode; - if (childIsControl && !childNode.XObject.IsEnabled) - continue; - if (!this._Forwards && walkChildren(childNode)) - return true; - if (childIsControl && childNode.TabTo()) - return true; - if (this._Forwards && walkChildren(childNode)) - return true; - } - } - if (curIndex !== -1 && !this._Forwards) { - if (this._Root instanceof Fayde.Controls.ControlNode) - return this._Root.TabTo(); - } - return false; - }; - TabNavigationWalker.Focus = function (uin, forwards) { - var focused = false; - var cur = uin; - var root = uin; - if ((root.VisualParentNode && getParentNavigationMode(root.VisualParentNode) === Fayde.Input.KeyboardNavigationMode.Once) - || (!forwards && root && root.VisualParentNode)) { - while (root = root.VisualParentNode) - if (root instanceof Fayde.Controls.ControlNode || !root.VisualParentNode) - break; - } - do { - focused = focused || walkChildren(root, cur, forwards); - if (!focused && getActiveNavigationMode(root) === Fayde.Input.KeyboardNavigationMode.Cycle) - return true; - cur = root; - root = root.VisualParentNode; - while (root && !(root instanceof Fayde.Controls.ControlNode) && root.VisualParentNode) - root = root.VisualParentNode; - } while (!focused && root); - if (!focused) - focused = focused || walkChildren(cur, null, forwards); - return focused; - }; - return TabNavigationWalker; - })(); - Fayde.TabNavigationWalker = TabNavigationWalker; -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Data; - (function (Data) { - var convert = nullstone.convertAnyToType; - Data.WarnBrokenPath = false; - var Binding = (function () { - function Binding(obj) { - this.BindsDirectlyToSource = false; - this.NotifyOnValidationError = false; - this.ValidatesOnExceptions = false; - this.ValidatesOnDataErrors = false; - this.ValidatesOnNotifyDataErrors = true; - if (obj instanceof Binding) { - var binding = obj; - this.StringFormat = binding.StringFormat; - this.FallbackValue = binding.FallbackValue; - this.TargetNullValue = binding.TargetNullValue; - this.BindsDirectlyToSource = binding.BindsDirectlyToSource; - this.Converter = binding.Converter; - this.ConverterParameter = binding.ConverterParameter; - this.ConverterCulture = binding.ConverterCulture; - this.ElementName = binding.ElementName; - this.Mode = binding.Mode; - this.NotifyOnValidationError = binding.NotifyOnValidationError; - this.RelativeSource = binding.RelativeSource ? binding.RelativeSource.Clone() : null; - this.Path = binding.Path; - this.Source = binding.Source; - this.UpdateSourceTrigger = binding.UpdateSourceTrigger; - this.ValidatesOnExceptions = binding.ValidatesOnExceptions; - this.ValidatesOnDataErrors = binding.ValidatesOnDataErrors; - this.ValidatesOnNotifyDataErrors = binding.ValidatesOnNotifyDataErrors; - } - else if (typeof obj === "string") { - this.Path = new Data.PropertyPath(obj); - } - else if (obj instanceof Data.PropertyPath) { - this.Path = obj; - } - else { - this.Path = new Data.PropertyPath(""); - } - } - Binding.prototype.init = function (val) { - this.Path = new Data.PropertyPath(val); - }; - Binding.prototype.transmute = function (os) { - this.$$coerce(); - Object.freeze(this); - return new Data.BindingExpression(this); - }; - Binding.prototype.$$coerce = function () { - this.StringFormat = this.StringFormat ? this.StringFormat.toString() : undefined; - this.BindsDirectlyToSource = convert(this.BindsDirectlyToSource, Boolean) || false; - this.Mode = Fayde.Enum.fromAny(Data.BindingMode, this.Mode); - this.NotifyOnValidationError = convert(this.NotifyOnValidationError, Boolean) || false; - this.Path = convert(this.Path, Data.PropertyPath); - this.UpdateSourceTrigger = Fayde.Enum.fromAny(Data.UpdateSourceTrigger, this.UpdateSourceTrigger); - this.ValidatesOnExceptions = convert(this.ValidatesOnExceptions, Boolean) || false; - this.ValidatesOnDataErrors = convert(this.ValidatesOnDataErrors, Boolean) || false; - this.ValidatesOnNotifyDataErrors = convert(this.ValidatesOnNotifyDataErrors, Boolean) !== false; - }; - Binding.prototype.Clone = function () { - return new Binding(this); - }; - Binding.fromData = function (data) { - var binding = new Binding(data.Path); - binding.StringFormat = data.StringFormat; - binding.FallbackValue = data.FallbackValue; - binding.TargetNullValue = data.TargetNullValue; - binding.BindsDirectlyToSource = data.BindsDirectlyToSource; - binding.Converter = data.Converter; - binding.ConverterParameter = data.ConverterParameter; - binding.ConverterCulture = data.ConverterCulture; - binding.ElementName = data.ElementName; - binding.Mode = data.Mode; - binding.NotifyOnValidationError = data.NotifyOnValidationError; - binding.RelativeSource = data.RelativeSource; - binding.Source = data.Source; - binding.UpdateSourceTrigger = data.UpdateSourceTrigger; - binding.ValidatesOnExceptions = data.ValidatesOnExceptions; - binding.ValidatesOnDataErrors = data.ValidatesOnDataErrors; - binding.ValidatesOnNotifyDataErrors = data.ValidatesOnNotifyDataErrors; - return binding; - }; - return Binding; - })(); - Data.Binding = Binding; - Fayde.CoreLibrary.add(Binding); - })(Data = Fayde.Data || (Fayde.Data = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Data; - (function (Data) { - var CollectionViewSource = (function (_super) { - __extends(CollectionViewSource, _super); - function CollectionViewSource() { - _super.apply(this, arguments); - } - CollectionViewSource.SourceProperty = DependencyProperty.Register("Source", function () { return Object; }, CollectionViewSource); - CollectionViewSource.ViewProperty = DependencyProperty.Register("View", function () { return Data.ICollectionView_; }, CollectionViewSource); - return CollectionViewSource; - })(Fayde.DependencyObject); - Data.CollectionViewSource = CollectionViewSource; - })(Data = Fayde.Data || (Fayde.Data = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Data; - (function (Data) { - var DataErrorsChangedEventArgs = (function () { - function DataErrorsChangedEventArgs(propertyName) { - this.PropertyName = propertyName; - Object.freeze(this); - } - return DataErrorsChangedEventArgs; - })(); - Data.DataErrorsChangedEventArgs = DataErrorsChangedEventArgs; - })(Data = Fayde.Data || (Fayde.Data = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Data; - (function (Data) { - (function (RelativeSourceMode) { - RelativeSourceMode[RelativeSourceMode["TemplatedParent"] = 0] = "TemplatedParent"; - RelativeSourceMode[RelativeSourceMode["Self"] = 1] = "Self"; - RelativeSourceMode[RelativeSourceMode["FindAncestor"] = 2] = "FindAncestor"; - RelativeSourceMode[RelativeSourceMode["ItemsControlParent"] = 3] = "ItemsControlParent"; - })(Data.RelativeSourceMode || (Data.RelativeSourceMode = {})); - var RelativeSourceMode = Data.RelativeSourceMode; - Fayde.CoreLibrary.addEnum(RelativeSourceMode, "RelativeSourceMode"); - (function (BindingMode) { - BindingMode[BindingMode["OneWay"] = 0] = "OneWay"; - BindingMode[BindingMode["TwoWay"] = 1] = "TwoWay"; - BindingMode[BindingMode["OneTime"] = 2] = "OneTime"; - BindingMode[BindingMode["OneWayToSource"] = 3] = "OneWayToSource"; - })(Data.BindingMode || (Data.BindingMode = {})); - var BindingMode = Data.BindingMode; - Fayde.CoreLibrary.addEnum(BindingMode, "BindingMode"); - (function (UpdateSourceTrigger) { - UpdateSourceTrigger[UpdateSourceTrigger["Default"] = 0] = "Default"; - UpdateSourceTrigger[UpdateSourceTrigger["PropertyChanged"] = 1] = "PropertyChanged"; - UpdateSourceTrigger[UpdateSourceTrigger["Explicit"] = 3] = "Explicit"; - })(Data.UpdateSourceTrigger || (Data.UpdateSourceTrigger = {})); - var UpdateSourceTrigger = Data.UpdateSourceTrigger; - Fayde.CoreLibrary.addEnum(UpdateSourceTrigger, "UpdateSourceTrigger"); - })(Data = Fayde.Data || (Fayde.Data = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Data; - (function (Data) { - Data.ICollectionView_ = new nullstone.Interface("ICollectionView"); - })(Data = Fayde.Data || (Fayde.Data = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Data; - (function (Data) { - Data.IDataErrorInfo_ = new nullstone.Interface("IDataErrorInfo"); - })(Data = Fayde.Data || (Fayde.Data = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Data; - (function (Data) { - Data.INotifyDataErrorInfo_ = new nullstone.Interface("INotifyDataErrorInfo"); - })(Data = Fayde.Data || (Fayde.Data = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Data; - (function (Data) { - Data.IValueConverter_ = new nullstone.Interface("IValueConverter"); - })(Data = Fayde.Data || (Fayde.Data = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Data; - (function (Data) { - var RelativeSource = (function () { - function RelativeSource(obj) { - this.AncestorType = null; - if (obj instanceof RelativeSource) { - var rs = obj; - this.Mode = rs.Mode; - this.AncestorLevel = rs.AncestorLevel; - this.AncestorType = rs.AncestorType; - } - } - RelativeSource.prototype.init = function (val) { - this.Mode = Data.RelativeSourceMode[val]; - }; - RelativeSource.prototype.resolveTypeFields = function (resolver) { - if (typeof this.AncestorType === "string") - this.AncestorType = resolver(this.AncestorType); - }; - RelativeSource.prototype.transmute = function (os) { - if (this.Mode == null && typeof this.AncestorType === "function") { - this.Mode = Data.RelativeSourceMode.FindAncestor; - } - else { - this.Mode = Fayde.Enum.fromAny(Data.RelativeSourceMode, this.Mode); - } - this.AncestorLevel = parseInt(this.AncestorLevel) || 1; - Object.freeze(this); - return this; - }; - RelativeSource.prototype.Clone = function () { - return new RelativeSource(this); - }; - RelativeSource.prototype.Find = function (target) { - switch (this.Mode) { - case Data.RelativeSourceMode.Self: - return target; - case Data.RelativeSourceMode.TemplatedParent: - return target.TemplateOwner; - case Data.RelativeSourceMode.FindAncestor: - return findAncestor(target, this); - case Data.RelativeSourceMode.ItemsControlParent: - return findItemsControlAncestor(target, this); - } - }; - return RelativeSource; - })(); - Data.RelativeSource = RelativeSource; - Fayde.CoreLibrary.add(RelativeSource); - function findAncestor(target, relSource) { - if (!(target instanceof Fayde.DependencyObject)) - return; - var ancestorType = relSource.AncestorType; - if (typeof ancestorType !== "function") { - console.warn("RelativeSourceMode.FindAncestor with no AncestorType specified."); - return; - } - var ancestorLevel = relSource.AncestorLevel; - if (isNaN(ancestorLevel)) { - console.warn("RelativeSourceMode.FindAncestor with no AncestorLevel specified."); - return; - } - for (var parent = Fayde.VisualTreeHelper.GetParent(target); parent != null; parent = Fayde.VisualTreeHelper.GetParent(parent)) { - if (parent instanceof ancestorType && --ancestorLevel < 1) - return parent; - } - } - function findItemsControlAncestor(target, relSource) { - if (!(target instanceof Fayde.DependencyObject)) - return; - var ancestorLevel = relSource.AncestorLevel; - ancestorLevel = ancestorLevel || 1; - for (var parent = Fayde.VisualTreeHelper.GetParent(target); parent != null; parent = Fayde.VisualTreeHelper.GetParent(parent)) { - if (!!parent.IsItemsControl && --ancestorLevel < 1) - return parent; - } - } - })(Data = Fayde.Data || (Fayde.Data = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Documents; - (function (Documents) { - function TextReaction(propd, callback, listen, sync, instance) { - var changed; - if (sync === false) { - changed = (listen === false) ? reaction(callback) : lReaction(callback); - } - else { - var name = propd.Name; - name = name.charAt(0).toLowerCase() + name.substr(1); - if (typeof sync !== "function") - changed = (listen === false) ? sReaction(callback, name) : slReaction(callback, name); - else - changed = (listen === false) ? sReaction(callback, name, sync) : slReaction(callback, name, sync); - } - if (instance) - propd.Store.ListenToChanged(instance, propd, changed, instance); - else - propd.ChangedCallback = changed; - } - Documents.TextReaction = TextReaction; - function reaction(callback) { - return function (te, args) { - callback && callback(te.TextUpdater, args.OldValue, args.NewValue, te); - }; - } - function sReaction(callback, name, syncer) { - return function (te, args) { - var ov = args.OldValue; - var nv = args.NewValue; - var upd = te.TextUpdater; - if (!syncer) - upd.assets[name] = nv; - else - syncer(nv, upd.assets[name]); - callback && callback(upd, ov, nv, te); - }; - } - function lReaction(callback) { - return function (te, args) { - var ov = args.OldValue; - var nv = args.NewValue; - var upd = te.TextUpdater; - Fayde.UnreactTo(ov, te); - callback && callback(upd, ov, nv, te); - Fayde.ReactTo(nv, te, function () { return callback(upd, nv, nv, te); }); - }; - } - function slReaction(callback, name, syncer) { - return function (te, args) { - var ov = args.OldValue; - var nv = args.NewValue; - var upd = te.TextUpdater; - Fayde.UnreactTo(ov, te); - if (!syncer) - upd.assets[name] = nv; - else - syncer(nv, upd.assets[name]); - callback && callback(upd, ov, nv, te); - Fayde.ReactTo(nv, te, function () { return callback && callback(upd, nv, nv, te); }); - }; - } - })(Documents = Fayde.Documents || (Fayde.Documents = {})); -})(Fayde || (Fayde = {})); -/// -/// -/// -var Fayde; -(function (Fayde) { - var Documents; - (function (Documents) { - var TextElementNode = (function (_super) { - __extends(TextElementNode, _super); - function TextElementNode(xobj, inheritedWalkProperty) { - _super.call(this, xobj); - this.InheritedWalkProperty = inheritedWalkProperty; - } - TextElementNode.prototype.GetInheritedEnumerator = function () { - if (!this.InheritedWalkProperty) - return nullstone.IEnumerator_.empty; - var coll = this.XObject[this.InheritedWalkProperty]; - if (coll) - return coll.GetNodeEnumerator(); - }; - return TextElementNode; - })(Fayde.DONode); - Documents.TextElementNode = TextElementNode; - function invalidateFont(upd, ov, nv, te) { - Fayde.Incite(te, { - type: 'font', - full: upd.invalidateFont() - }); - } - var TextElement = (function (_super) { - __extends(TextElement, _super); - function TextElement() { - _super.call(this); - this.TextUpdater = new minerva.text.TextUpdater(); - Documents.TextReaction(TextElement.ForegroundProperty, function (upd, ov, nv, te) { - Fayde.Incite(te, { - type: 'font', - full: upd.invalidateFont() - }); - }, true, true, this); - Documents.TextReaction(TextElement.FontFamilyProperty, invalidateFont, false, true, this); - Documents.TextReaction(TextElement.FontSizeProperty, invalidateFont, false, true, this); - Documents.TextReaction(TextElement.FontStretchProperty, invalidateFont, false, true, this); - Documents.TextReaction(TextElement.FontStyleProperty, invalidateFont, false, true, this); - Documents.TextReaction(TextElement.FontWeightProperty, invalidateFont, false, true, this); - } - TextElement.prototype.CreateNode = function () { - return new TextElementNode(this, null); - }; - TextElement.prototype.IsInheritable = function (propd) { - return TextElementInheritedProps.indexOf(propd) > -1; - }; - TextElement.prototype._SerializeText = function () { - return undefined; - }; - TextElement.prototype.Equals = function (te) { - if (this.FontFamily !== te.FontFamily) - return false; - if (this.FontSize !== te.FontSize) - return false; - if (this.FontStyle !== te.FontStyle) - return false; - if (this.FontWeight !== te.FontWeight) - return false; - if (this.FontStretch !== te.FontStretch) - return false; - if (!nullstone.equals(this.Foreground, te.Foreground)) - return false; - return true; - }; - TextElement.FontFamilyProperty = Fayde.InheritableOwner.FontFamilyProperty.ExtendTo(TextElement); - TextElement.FontSizeProperty = Fayde.InheritableOwner.FontSizeProperty.ExtendTo(TextElement); - TextElement.FontStretchProperty = Fayde.InheritableOwner.FontStretchProperty.ExtendTo(TextElement); - TextElement.FontStyleProperty = Fayde.InheritableOwner.FontStyleProperty.ExtendTo(TextElement); - TextElement.FontWeightProperty = Fayde.InheritableOwner.FontWeightProperty.ExtendTo(TextElement); - TextElement.ForegroundProperty = Fayde.InheritableOwner.ForegroundProperty.ExtendTo(TextElement); - TextElement.LanguageProperty = Fayde.InheritableOwner.LanguageProperty.ExtendTo(TextElement); - return TextElement; - })(Fayde.DependencyObject); - Documents.TextElement = TextElement; - Fayde.CoreLibrary.add(TextElement); - var TextElementInheritedProps = [ - TextElement.FontFamilyProperty, - TextElement.FontSizeProperty, - TextElement.FontStretchProperty, - TextElement.FontStyleProperty, - TextElement.FontWeightProperty, - TextElement.ForegroundProperty, - TextElement.LanguageProperty - ]; - })(Documents = Fayde.Documents || (Fayde.Documents = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Documents; - (function (Documents) { - var Block = (function (_super) { - __extends(Block, _super); - function Block() { - _super.apply(this, arguments); - } - return Block; - })(Documents.TextElement); - Documents.Block = Block; - Fayde.CoreLibrary.add(Block); - })(Documents = Fayde.Documents || (Fayde.Documents = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Documents; - (function (Documents) { - var BlockCollection = (function (_super) { - __extends(BlockCollection, _super); - function BlockCollection() { - _super.apply(this, arguments); - } - BlockCollection.prototype._RaiseItemAdded = function (value, index) { - Fayde.Incite(this, { - item: value, - index: index, - add: true - }); - }; - BlockCollection.prototype._RaiseItemRemoved = function (value, index) { - Fayde.Incite(this, { - item: value, - index: index, - add: false - }); - }; - return BlockCollection; - })(Fayde.XamlObjectCollection); - Documents.BlockCollection = BlockCollection; - Fayde.CoreLibrary.add(BlockCollection); - })(Documents = Fayde.Documents || (Fayde.Documents = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Documents; - (function (Documents) { - var Inline = (function (_super) { - __extends(Inline, _super); - function Inline() { - _super.call(this); - Documents.TextReaction(Inline.TextDecorationsProperty, function (upd, ov, nv, te) { - Fayde.Incite(te, { - type: 'font', - full: upd.invalidateFont() - }); - }, false, true, this); - } - Inline.prototype.Equals = function (inline) { - if (this.TextDecorations !== inline.TextDecorations) - return false; - return _super.prototype.Equals.call(this, inline); - }; - Inline.prototype.IsInheritable = function (propd) { - if (propd === Inline.TextDecorationsProperty) - return true; - return _super.prototype.IsInheritable.call(this, propd); - }; - Inline.TextDecorationsProperty = Fayde.InheritableOwner.TextDecorationsProperty.ExtendTo(Inline); - return Inline; - })(Documents.TextElement); - Documents.Inline = Inline; - Fayde.CoreLibrary.add(Inline); - })(Documents = Fayde.Documents || (Fayde.Documents = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Documents; - (function (Documents) { - var InlineCollection = (function (_super) { - __extends(InlineCollection, _super); - function InlineCollection() { - _super.apply(this, arguments); - } - InlineCollection.prototype._RaiseItemAdded = function (value, index) { - Fayde.Incite(this, { - item: value, - index: index, - add: true - }); - }; - InlineCollection.prototype._RaiseItemRemoved = function (value, index) { - Fayde.Incite(this, { - item: value, - index: index, - add: false - }); - }; - return InlineCollection; - })(Fayde.XamlObjectCollection); - Documents.InlineCollection = InlineCollection; - Fayde.CoreLibrary.add(InlineCollection); - })(Documents = Fayde.Documents || (Fayde.Documents = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Documents; - (function (Documents) { - var LineBreak = (function (_super) { - __extends(LineBreak, _super); - function LineBreak() { - _super.apply(this, arguments); - } - return LineBreak; - })(Documents.Inline); - Documents.LineBreak = LineBreak; - Fayde.CoreLibrary.add(LineBreak); - })(Documents = Fayde.Documents || (Fayde.Documents = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Documents; - (function (Documents) { - var Paragraph = (function (_super) { - __extends(Paragraph, _super); - function Paragraph() { - var _this = this; - _super.call(this); - var coll = Paragraph.InlinesProperty.Initialize(this); - coll.AttachTo(this); - Fayde.ReactTo(coll, this, function (obj) { return _this.InlinesChanged(obj.item, obj.add); }); - } - Paragraph.prototype.CreateNode = function () { - return new Documents.TextElementNode(this, "Inlines"); - }; - Paragraph.prototype.InlinesChanged = function (inline, isAdd) { - var _this = this; - if (isAdd) - Fayde.Providers.InheritedStore.PropagateInheritedOnAdd(this, inline.XamlNode); - if (isAdd) - Fayde.ReactTo(inline, this, function (obj) { return Fayde.Incite(_this, obj); }); - else - Fayde.UnreactTo(inline, this); - Fayde.Incite(this, { - type: 'text', - full: true - }); - }; - Paragraph.InlinesProperty = DependencyProperty.RegisterImmutable("Inlines", function () { return Documents.InlineCollection; }, Paragraph); - return Paragraph; - })(Documents.Block); - Documents.Paragraph = Paragraph; - Fayde.CoreLibrary.add(Paragraph); - Fayde.Markup.Content(Paragraph, Paragraph.InlinesProperty); - })(Documents = Fayde.Documents || (Fayde.Documents = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Documents; - (function (Documents) { - var Run = (function (_super) { - __extends(Run, _super); - function Run() { - _super.apply(this, arguments); - } - Run.prototype._SerializeText = function () { return this.Text; }; - Run.prototype.IsInheritable = function (propd) { - if (propd === Run.FlowDirectionProperty) - return true; - return _super.prototype.IsInheritable.call(this, propd); - }; - Run.FlowDirectionProperty = Fayde.InheritableOwner.FlowDirectionProperty.ExtendTo(Run); - Run.TextProperty = DependencyProperty.Register("Text", function () { return String; }, Run); - return Run; - })(Documents.Inline); - Documents.Run = Run; - Fayde.CoreLibrary.add(Run); - var reactions; - (function (reactions) { - Documents.TextReaction(Run.TextProperty, function (upd, ov, nv, run) { - Fayde.Incite(run, { - type: 'text', - full: true - }); - }, false); - })(reactions || (reactions = {})); - })(Documents = Fayde.Documents || (Fayde.Documents = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Documents; - (function (Documents) { - var Section = (function (_super) { - __extends(Section, _super); - function Section() { - var _this = this; - _super.call(this); - var coll = Section.BlocksProperty.Initialize(this); - coll.AttachTo(this); - Fayde.ReactTo(coll, this, function (obj) { return _this.BlocksChanged(obj.item, obj.add); }); - } - Section.prototype.CreateNode = function () { - return new Documents.TextElementNode(this, "Blocks"); - }; - Section.prototype.BlocksChanged = function (block, isAdd) { - var _this = this; - if (isAdd) - Fayde.Providers.InheritedStore.PropagateInheritedOnAdd(this, block.XamlNode); - if (isAdd) - Fayde.ReactTo(block, this, function (obj) { return Fayde.Incite(_this, obj); }); - else - Fayde.UnreactTo(block, this); - Fayde.Incite(this, { - type: 'text', - full: true - }); - }; - Section.BlocksProperty = DependencyProperty.RegisterImmutable("Blocks", function () { return Documents.BlockCollection; }, Section); - return Section; - })(Documents.TextElement); - Documents.Section = Section; - Fayde.CoreLibrary.add(Section); - Fayde.Markup.Content(Section, Section.BlocksProperty); - })(Documents = Fayde.Documents || (Fayde.Documents = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Documents; - (function (Documents) { - var Span = (function (_super) { - __extends(Span, _super); - function Span() { - var _this = this; - _super.call(this); - var coll = Span.InlinesProperty.Initialize(this); - coll.AttachTo(this); - Fayde.ReactTo(coll, this, function (obj) { return _this.InlinesChanged(obj.item, obj.add); }); - } - Span.prototype.CreateNode = function () { - return new Documents.TextElementNode(this, "Inlines"); - }; - Span.prototype._SerializeText = function () { - var str = ""; - var enumerator = this.Inlines.getEnumerator(); - while (enumerator.moveNext()) { - str += enumerator.current._SerializeText(); - } - return str; - }; - Span.prototype.InlinesChanged = function (inline, isAdd) { - var _this = this; - if (isAdd) - Fayde.Providers.InheritedStore.PropagateInheritedOnAdd(this, inline.XamlNode); - if (isAdd) - Fayde.ReactTo(inline, this, function (obj) { return Fayde.Incite(_this, obj); }); - else - Fayde.UnreactTo(inline, this); - Fayde.Incite(this, { - type: 'text', - full: true - }); - }; - Span.InlinesProperty = DependencyProperty.RegisterImmutable("Inlines", function () { return Documents.InlineCollection; }, Span); - return Span; - })(Documents.Inline); - Documents.Span = Span; - Fayde.CoreLibrary.add(Span); - Fayde.Markup.Content(Span, Span.InlinesProperty); - })(Documents = Fayde.Documents || (Fayde.Documents = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Documents; - (function (Documents) { - var Underline = (function (_super) { - __extends(Underline, _super); - function Underline() { - _super.apply(this, arguments); - } - return Underline; - })(Documents.Span); - Documents.Underline = Underline; - Fayde.CoreLibrary.add(Underline); - })(Documents = Fayde.Documents || (Fayde.Documents = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Application = (function (_super) { - __extends(Application, _super); - function Application() { - _super.call(this); - this.Loaded = new nullstone.Event(); - this.Address = null; - this.AllowNavigation = true; - this._IsRunning = false; - this._IsLoaded = false; - this._Storyboards = []; - this._ClockTimer = new Fayde.ClockTimer(); - this._RootVisual = null; - this.Resized = new Fayde.RoutedEvent(); - this.XamlNode.NameScope = new Fayde.NameScope(true); - var rd = Application.ResourcesProperty.Initialize(this); - this.MainSurface = new Fayde.Surface(this); - this.Address = new Fayde.Uri(document.URL); - } - Application.prototype.OnThemeNameChanged = function (oldThemeName, newThemeName) { - var _this = this; - if (!this._IsLoaded) - return; - Fayde.ThemeManager.LoadAsync(newThemeName) - .then(function () { return _this._ApplyTheme(); }, function (err) { return console.error("Could not load theme.", err); }); - }; - Application.prototype.OnZoomFactorChanged = function (oldZoom, newZoom) { - }; - Application.prototype._ApplyTheme = function () { - for (var walker = this.MainSurface.walkLayers(); walker.step();) { - for (var subwalker = walker.current.walkDeep(); subwalker.step();) { - var node = subwalker.current.getAttachedValue("$node"); - Fayde.Providers.ImplicitStyleBroker.Set(node.XObject, Fayde.Providers.StyleMask.Theme); - } - } - }; - Application.prototype.OnResized = function (oldSize, newSize) { - this.Resized.raise(this, new Fayde.SizeChangedEventArgs(oldSize, newSize)); - }; - Object.defineProperty(Application.prototype, "RootVisual", { - get: function () { - for (var walker = this.MainSurface.walkLayers(); walker.step();) { - var node = walker.current.getAttachedValue("$node"); - return node.XObject; - } - }, - enumerable: true, - configurable: true - }); - Application.prototype.$$SetRootVisual = function (value) { - this._RootVisual = value; - }; - Application.prototype.Attach = function (canvas) { - this.MainSurface.init(canvas); - this.MainSurface.Attach(this._RootVisual, true); - }; - Application.prototype.Start = function () { - this.Update(); - this.Render(); - this._ClockTimer.RegisterTimer(this); - this._IsLoaded = true; - this.Loaded.raiseAsync(this, null); - }; - Application.prototype.OnTicked = function (lastTime, nowTime) { - this.ProcessStoryboards(lastTime, nowTime); - this.Update(); - this.Render(); - }; - Application.prototype.StopEngine = function () { - this._ClockTimer.UnregisterTimer(this); - }; - Application.prototype.ProcessStoryboards = function (lastTime, nowTime) { - perfex.timer.start('StoryboardsProcess', this); - for (var i = 0, sbs = this._Storyboards; i < sbs.length; i++) { - sbs[i].Update(nowTime); - } - perfex.timer.stop(); - }; - Application.prototype.Update = function () { - if (this._IsRunning) - return; - this._IsRunning = true; - perfex.timer.start('UpdateLayout', this); - var updated = this.MainSurface.updateLayout(); - perfex.timer.stop(); - this._IsRunning = false; - }; - Application.prototype.Render = function () { - perfex.timer.start('Render', this); - this.MainSurface.render(); - perfex.timer.stop(); - }; - Application.prototype.RegisterStoryboard = function (storyboard) { - var sbs = this._Storyboards; - var index = sbs.indexOf(storyboard); - if (index === -1) - sbs.push(storyboard); - }; - Application.prototype.UnregisterStoryboard = function (storyboard) { - var sbs = this._Storyboards; - var index = sbs.indexOf(storyboard); - if (index !== -1) - sbs.splice(index, 1); - }; - Application.GetAsync = function (url) { - return Fayde.Markup.Resolve(url) - .then(function (appm) { - TimelineProfile.Parse(true, "App"); - var app = Fayde.Markup.Load(null, appm); - TimelineProfile.Parse(false, "App"); - if (!(app instanceof Application)) - throw new Error("Markup must be an Application."); - return app; - }); - }; - Application.ResourcesProperty = DependencyProperty.RegisterImmutable("Resources", function () { return Fayde.ResourceDictionary; }, Application); - Application.ThemeNameProperty = DependencyProperty.Register("ThemeName", function () { return String; }, Application, "Default", function (d, args) { return d.OnThemeNameChanged(args.OldValue, args.NewValue); }); - Application.ZoomFactorProperty = DependencyProperty.RegisterReadOnly("ZoomFactor", function () { return Number; }, Application, 1.0, function (d, args) { return d.OnZoomFactorChanged(args.OldValue, args.NewValue); }); - return Application; - })(Fayde.DependencyObject); - Fayde.Application = Application; - Fayde.CoreLibrary.add(Application); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var requestAnimFrame = (function () { - return window.requestAnimationFrame || - window.webkitRequestAnimationFrame || - window.mozRequestAnimationFrame || - window.oRequestAnimationFrame || - window.msRequestAnimationFrame || - function (callback) { - window.setTimeout(callback, 1000 / 200); - }; - })(); - var ClockTimer = (function () { - function ClockTimer() { - this._Listeners = []; - this._LastTime = 0; - } - ClockTimer.prototype.RegisterTimer = function (listener) { - var ls = this._Listeners; - var index = ls.indexOf(listener); - if (index > -1) - return; - ls.push(listener); - if (ls.length === 1) - this._RequestAnimationTick(); - }; - ClockTimer.prototype.UnregisterTimer = function (listener) { - var ls = this._Listeners; - var index = ls.indexOf(listener); - if (index > -1) - ls.splice(index, 1); - }; - ClockTimer.prototype._DoTick = function () { - var nowTime = new Date().getTime(); - var lastTime = this._LastTime; - this._LastTime = nowTime; - var ls = this._Listeners; - var len = ls.length; - if (len === 0) - return; - for (var i = 0; i < len; i++) { - ls[i].OnTicked(lastTime, nowTime); - } - this._RequestAnimationTick(); - }; - ClockTimer.prototype._RequestAnimationTick = function () { - var _this = this; - requestAnimFrame(function () { return _this._DoTick(); }); - }; - return ClockTimer; - })(); - Fayde.ClockTimer = ClockTimer; -})(Fayde || (Fayde = {})); -var Exception = (function () { - function Exception(message) { - this.Message = message; - } - Exception.prototype.toString = function () { - var typeName = this.constructor.name; - if (typeName) - return typeName + ": " + this.Message; - return this.Message; - }; - return Exception; -})(); -var ArgumentException = (function (_super) { - __extends(ArgumentException, _super); - function ArgumentException(message) { - _super.call(this, message); - } - return ArgumentException; -})(Exception); -var ArgumentNullException = (function (_super) { - __extends(ArgumentNullException, _super); - function ArgumentNullException(message) { - _super.call(this, message); - } - return ArgumentNullException; -})(Exception); -var InvalidOperationException = (function (_super) { - __extends(InvalidOperationException, _super); - function InvalidOperationException(message) { - _super.call(this, message); - } - return InvalidOperationException; -})(Exception); -var XamlParseException = (function (_super) { - __extends(XamlParseException, _super); - function XamlParseException(message) { - _super.call(this, message); - } - return XamlParseException; -})(Exception); -var XamlMarkupParseException = (function (_super) { - __extends(XamlMarkupParseException, _super); - function XamlMarkupParseException(message) { - _super.call(this, message); - } - return XamlMarkupParseException; -})(Exception); -var NotSupportedException = (function (_super) { - __extends(NotSupportedException, _super); - function NotSupportedException(message) { - _super.call(this, message); - } - return NotSupportedException; -})(Exception); -var IndexOutOfRangeException = (function (_super) { - __extends(IndexOutOfRangeException, _super); - function IndexOutOfRangeException(index) { - _super.call(this, index.toString()); - } - return IndexOutOfRangeException; -})(Exception); -var ArgumentOutOfRangeException = (function (_super) { - __extends(ArgumentOutOfRangeException, _super); - function ArgumentOutOfRangeException(msg) { - _super.call(this, msg); - } - return ArgumentOutOfRangeException; -})(Exception); -var AttachException = (function (_super) { - __extends(AttachException, _super); - function AttachException(message, data) { - _super.call(this, message); - this.Data = data; - } - return AttachException; -})(Exception); -var InvalidJsonException = (function (_super) { - __extends(InvalidJsonException, _super); - function InvalidJsonException(jsonText, innerException) { - _super.call(this, "Invalid json."); - this.JsonText = jsonText; - this.InnerException = innerException; - } - return InvalidJsonException; -})(Exception); -var TargetInvocationException = (function (_super) { - __extends(TargetInvocationException, _super); - function TargetInvocationException(message, innerException) { - _super.call(this, message); - this.InnerException = innerException; - } - return TargetInvocationException; -})(Exception); -var UnknownTypeException = (function (_super) { - __extends(UnknownTypeException, _super); - function UnknownTypeException(fullTypeName) { - _super.call(this, fullTypeName); - this.FullTypeName = fullTypeName; - } - return UnknownTypeException; -})(Exception); -var FormatException = (function (_super) { - __extends(FormatException, _super); - function FormatException(message) { - _super.call(this, message); - } - return FormatException; -})(Exception); -var Fayde; -(function (Fayde) { - var Engine; - (function (Engine) { - var FocusManager = (function () { - function FocusManager(state) { - this._ChangedEvents = []; - this._State = state; - } - FocusManager.prototype.GetFocusToRoot = function () { - if (!this.Node) - return null; - return elementPathToRoot(this.Node); - }; - FocusManager.prototype.OnNodeDetached = function (node) { - var f = this.Node; - while (f) { - if (f === node) { - this._FocusNode(); - return; - } - f = f.VisualParentNode; - } - }; - FocusManager.prototype.TabFocus = function (isShift) { - if (!this.Node) - return false; - Fayde.TabNavigationWalker.Focus(this.Node, !isShift); - return true; - }; - FocusManager.prototype.Focus = function (ctrlNode, recurse) { - recurse = recurse === undefined || recurse === true; - if (!ctrlNode.IsAttached) - return false; - var walker = Fayde.DeepTreeWalker(ctrlNode); - var uin; - while (uin = walker.Step()) { - if (uin.XObject.Visibility !== Fayde.Visibility.Visible) { - walker.SkipBranch(); - continue; - } - if (!(uin instanceof Fayde.Controls.ControlNode)) - continue; - var cn = uin; - var c = cn.XObject; - if (!c.IsEnabled) { - if (!recurse) - return false; - walker.SkipBranch(); - continue; - } - var loaded = ctrlNode.IsLoaded; - var check = ctrlNode; - while (!loaded && (check = check.VisualParentNode)) { - loaded = loaded || check.IsLoaded; - } - if (loaded && cn.LayoutUpdater.assets.totalIsRenderVisible && c.IsTabStop) - return this._FocusNode(cn); - if (!recurse) - return false; - } - return false; - }; - FocusManager.prototype._FocusNode = function (uin) { - if (uin === this.Node) - return true; - var fn = this.Node; - if (fn) { - this._ChangedEvents.push({ - LostFocus: elementPathToRoot(fn), - GotFocus: null - }); - } - this.Node = uin; - if (uin) { - this._ChangedEvents.push({ - LostFocus: null, - GotFocus: elementPathToRoot(uin) - }); - } - if (this._State.IsFirstUserInitiated) - this.EmitChangesAsync(); - return true; - }; - FocusManager.prototype.EmitChanges = function () { - var evts = this._ChangedEvents; - var cur; - while (cur = evts.shift()) { - this._EmitFocusList("lost", cur.LostFocus); - this._EmitFocusList("got", cur.GotFocus); - } - }; - FocusManager.prototype.EmitChangesAsync = function () { - var _this = this; - setTimeout(function () { return _this.EmitChanges(); }, 1); - }; - FocusManager.prototype._EmitFocusList = function (type, list) { - if (!list) - return; - var cur; - while (cur = list.shift()) { - cur._EmitFocusChange(type); - } - }; - FocusManager.prototype.FocusAnyLayer = function (walker) { - if (!this.Node) { - var top; - for (var node; walker.step();) { - node = walker.current.getAttachedValue("$node"); - if (!top) - top = node; - if (Fayde.TabNavigationWalker.Focus(node)) - break; - } - if (!this.Node && top) - this._FocusNode(top); - } - if (this._State.IsFirstUserInitiated) - this.EmitChangesAsync(); - }; - return FocusManager; - })(); - Engine.FocusManager = FocusManager; - function elementPathToRoot(source) { - var list = []; - while (source) { - list.push(source); - source = source.VisualParentNode; - } - return list; - } - })(Engine = Fayde.Engine || (Fayde.Engine = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Engine; - (function (Engine) { - var InputManager = (function () { - function InputManager(surface) { - this._Cursor = Fayde.CursorType.Default; - this.SetCursor = function (cursor) { }; - this._CurrentPos = null; - this._EmittingMouseEvent = false; - this._InputList = []; - this._Captured = null; - this._PendingCapture = null; - this._PendingReleaseCapture = false; - this._CapturedInputList = []; - this._Surface = surface; - this._KeyInterop = Fayde.Input.CreateKeyInterop(); - this._MouseInterop = Fayde.Input.CreateMouseInterop(); - this._TouchInterop = Fayde.Input.CreateTouchInterop(); - this._Focus = new Engine.FocusManager(this._State = { - IsUserInitiated: false, - IsFirstUserInitiated: false - }); - } - Object.defineProperty(InputManager.prototype, "FocusedNode", { - get: function () { return this._Focus.Node; }, - enumerable: true, - configurable: true - }); - InputManager.prototype.Focus = function (node, recurse) { return this._Focus.Focus(node, recurse); }; - InputManager.prototype.Register = function (canvas) { - var _this = this; - this.SetCursor = function (cursor) { return canvas.style.cursor = Fayde.CursorTypeMappings[Fayde.CursorType[_this._Cursor = cursor]]; }; - this._KeyInterop.RegisterEvents(this); - this._MouseInterop.RegisterEvents(this, canvas); - this._TouchInterop.Register(this, canvas); - }; - InputManager.prototype.OnNodeDetached = function (node) { - var il = this._InputList; - if (il[il.length - 1] === node) - this._InputList = []; - this._Focus.OnNodeDetached(node); - }; - InputManager.prototype.SetIsUserInitiatedEvent = function (value) { - this._Focus.EmitChanges(); - this._State.IsFirstUserInitiated = this._State.IsFirstUserInitiated || value; - this._State.IsUserInitiated = value; - }; - InputManager.prototype.HandleKeyDown = function (args) { - this.SetIsUserInitiatedEvent(true); - Fayde.Input.Keyboard.RefreshModifiers(args.Modifiers); - var focusToRoot = this._Focus.GetFocusToRoot(); - if (focusToRoot) - this._EmitKeyDown(focusToRoot, args); - if (!args.Handled && args.Key === Fayde.Input.Key.Tab) { - if (!this._Focus.TabFocus(args.Modifiers.Shift)) - this._Focus.FocusAnyLayer(this._Surface.walkLayers(true)); - args.Handled = true; - } - this.SetIsUserInitiatedEvent(false); - }; - InputManager.prototype._EmitKeyDown = function (list, args, endIndex) { - if (endIndex === 0) - return; - if (!endIndex || endIndex === -1) - endIndex = list.length; - var i = 0; - var cur = list.shift(); - while (cur && i < endIndex) { - cur._EmitKeyDown(args); - cur = list.shift(); - i++; - } - }; - InputManager.prototype.HandleMousePress = function (button, pos) { - this.SetIsUserInitiatedEvent(true); - var handled = this.HandleMouseEvent(Fayde.Input.MouseInputType.MouseDown, button, pos); - this.UpdateCursorFromInputList(); - this.SetIsUserInitiatedEvent(false); - return handled; - }; - InputManager.prototype.HandleMouseRelease = function (button, pos) { - this.SetIsUserInitiatedEvent(true); - this.HandleMouseEvent(Fayde.Input.MouseInputType.MouseUp, button, pos); - this.UpdateCursorFromInputList(); - this.SetIsUserInitiatedEvent(false); - if (this._Captured) - this._PerformReleaseCapture(); - }; - InputManager.prototype.HandleMouseEvent = function (type, button, pos, delta, emitLeave, emitEnter) { - this._CurrentPos = pos; - if (this._EmittingMouseEvent) - return false; - var newInputList = this.HitTestPoint(pos); - if (!newInputList) - return false; - this._EmittingMouseEvent = true; - var indices = { Index1: -1, Index2: -1 }; - findFirstCommonElement(this._InputList, newInputList, indices); - if (emitLeave === undefined || emitLeave === true) - this._EmitMouseList(Fayde.Input.MouseInputType.MouseLeave, button, pos, delta, this._InputList, indices.Index1); - if (emitEnter === undefined || emitEnter === true) - this._EmitMouseList(Fayde.Input.MouseInputType.MouseEnter, button, pos, delta, newInputList, indices.Index2); - var handled = false; - if (type !== Fayde.Input.MouseInputType.NoOp) - handled = this._EmitMouseList(type, button, pos, delta, this._Captured ? this._CapturedInputList : newInputList); - this._InputList = newInputList; - if (this._Surface.HitTestCallback) - this._Surface.HitTestCallback(newInputList); - if (this._PendingCapture) - this._PerformCapture(this._PendingCapture); - if (this._PendingReleaseCapture || (this._Captured && !this._Captured.CanCaptureMouse())) - this._PerformReleaseCapture(); - this._EmittingMouseEvent = false; - return handled; - }; - InputManager.prototype._EmitMouseList = function (type, button, pos, delta, list, endIndex) { - var handled = false; - if (endIndex === 0) - return handled; - if (!endIndex || endIndex === -1) - endIndex = list.length; - var args = this._MouseInterop.CreateEventArgs(type, pos, delta); - var node = list[0]; - if (node && args instanceof Fayde.RoutedEventArgs) - args.Source = node.XObject; - var isL = this._MouseInterop.IsLeftButton(button); - var isR = this._MouseInterop.IsRightButton(button); - if (Fayde.Engine.Inspection.TryHandle(type, isL, isR, args, list)) - return true; - for (var i = 0; i < endIndex; i++) { - node = list[i]; - if (type === Fayde.Input.MouseInputType.MouseLeave) - args.Source = node.XObject; - if (node._EmitMouseEvent(type, isL, isR, args)) - handled = true; - if (type === Fayde.Input.MouseInputType.MouseLeave) - args = this._MouseInterop.CreateEventArgs(type, pos, delta); - } - return handled; - }; - InputManager.prototype.HitTestPoint = function (pos) { - return this._Surface.hitTest(pos).map(function (upd) { return upd.getAttachedValue("$node"); }); - }; - InputManager.prototype.UpdateCursorFromInputList = function () { - var newCursor = Fayde.CursorType.Default; - var list = this._Captured ? this._CapturedInputList : this._InputList; - var len = list.length; - for (var i = 0; i < len; i++) { - newCursor = list[i].XObject.Cursor; - if (newCursor !== Fayde.CursorType.Default) - break; - } - this.SetCursor(newCursor); - }; - InputManager.prototype.SetMouseCapture = function (uin) { - if (this._Captured || this._PendingCapture) - return uin === this._Captured || uin === this._PendingCapture; - if (!this._EmittingMouseEvent) - return false; - this._PendingCapture = uin; - return true; - }; - InputManager.prototype.ReleaseMouseCapture = function (uin) { - if (uin !== this._Captured && uin !== this._PendingCapture) - return; - if (this._EmittingMouseEvent) - this._PendingReleaseCapture = true; - else - this._PerformReleaseCapture(); - }; - InputManager.prototype._PerformCapture = function (uin) { - this._Captured = uin; - var newInputList = []; - while (uin != null) { - newInputList.push(uin); - uin = uin.VisualParentNode; - } - this._CapturedInputList = newInputList; - this._PendingCapture = null; - }; - InputManager.prototype._PerformReleaseCapture = function () { - var oldCaptured = this._Captured; - this._Captured = null; - this._PendingReleaseCapture = false; - oldCaptured._EmitLostMouseCapture(this._CurrentPos); - this.HandleMouseEvent(Fayde.Input.MouseInputType.NoOp, null, this._CurrentPos, undefined, false, true); - }; - return InputManager; - })(); - Engine.InputManager = InputManager; - function findFirstCommonElement(list1, list2, outObj) { - var i = list1.length - 1; - var j = list2.length - 1; - outObj.Index1 = -1; - outObj.Index2 = -1; - while (i >= 0 && j >= 0) { - if (list1[i] !== list2[j]) - return; - outObj.Index1 = i--; - outObj.Index2 = j--; - } - } - })(Engine = Fayde.Engine || (Fayde.Engine = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Engine; - (function (Engine) { - var Inspection = (function () { - function Inspection() { - } - Inspection.TryHandle = function (type, isLeftButton, isRightButton, args, htlist) { - if (!Fayde.IsInspectionOn) - return false; - if (type !== Fayde.Input.MouseInputType.MouseDown) - return false; - if (!isRightButton) - return false; - if (!Fayde.Input.Keyboard.HasControl()) - return false; - var pos = args.AbsolutePos; - showMenu(pos, htlist); - return true; - }; - Inspection.Kill = function () { - if (menu) - menu.style.display = "none"; - }; - return Inspection; - })(); - Engine.Inspection = Inspection; - var menu = null; - function showMenu(pos, htlist) { - menu = menu || createMenu(); - fillMenu(htlist); - menu.style.left = pos.x.toString() + "px"; - menu.style.top = pos.y.toString() + "px"; - menu.style.display = ""; - } - function createMenu() { - var m = document.createElement("div"); - m.style.position = "absolute"; - m.style.display = "none"; - m.style.backgroundColor = "rgba(128,128,128,1.0)"; - m.style.padding = "5px"; - m.style.fontFamily = "Tahoma"; - m.oncontextmenu = function () { return false; }; - document.body.appendChild(m); - return m; - } - function fillMenu(htlist) { - menu.innerHTML = ""; - var len = htlist.length; - for (var i = 0; i < len; i++) { - menu.appendChild(createMenuItem(htlist[i])); - } - } - function createMenuItem(cur) { - var miDiv = document.createElement("div"); - miDiv.style.cursor = "pointer"; - miDiv.innerHTML = serializeUINode(cur); - miDiv.onclick = function () { return handleMenuItemClick(cur); }; - miDiv.onmouseenter = function () { return handleMenuItemEnter(miDiv); }; - miDiv.onmouseleave = function () { return handleMenuItemLeave(miDiv); }; - return miDiv; - } - function serializeUINode(uin) { - var cur = uin.XObject; - var str = ""; - var id = cur._ID; - if (id) - str += "[" + id + "] "; - str += cur.constructor.name; - var name = uin.Name; - if (name) { - str += " ["; - var ns = uin.NameScope; - if (!ns) - str += "^"; - else if (ns.IsRoot) - str += "+"; - else - str += "-"; - str += name + "]"; - } - return str; - } - function handleMenuItemClick(uin) { - menu.style.display = "none"; - } - function handleMenuItemEnter(mi) { - mi.style.textDecoration = "underline"; - } - function handleMenuItemLeave(mi) { - mi.style.textDecoration = "none"; - } - })(Engine = Fayde.Engine || (Fayde.Engine = {})); -})(Fayde || (Fayde = {})); -var resizeTimeout; -var Fayde; -(function (Fayde) { - var Surface = (function (_super) { - __extends(Surface, _super); - function Surface(app) { - _super.call(this); - this.$$root = null; - this.$$zoom = 1; - Object.defineProperty(this, "App", { value: app, writable: false }); - this.$$inputMgr = new Fayde.Engine.InputManager(this); - } - Surface.prototype.init = function (canvas) { - var _this = this; - _super.prototype.init.call(this, canvas); - this.$$updateZoom(); - this.$$stretchCanvas(); - document.body.onresize = function (e) { return _this.$$handleResize(window.event ? window.event : e); }; - window.onresize = function (e) { return _this.$$handleResize(window.event ? window.event : e); }; - this.$$inputMgr.Register(canvas); - }; - Surface.prototype.Attach = function (uie, root) { - if (root === true) { - if (!(uie instanceof Fayde.UIElement)) - throw new Exception("Unsupported top level element."); - if (this.$$root) - this.detachLayer(this.$$root.XamlNode.LayoutUpdater); - this.$$root = uie; - } - this.attachLayer(uie.XamlNode.LayoutUpdater, root); - }; - Surface.prototype.attachLayer = function (layer, root) { - _super.prototype.attachLayer.call(this, layer, root); - var node = layer.getAttachedValue("$node"); - node.SetIsLoaded(true); - node.SetIsAttached(true); - }; - Surface.prototype.Detach = function (uie) { - this.detachLayer(uie.XamlNode.LayoutUpdater); - }; - Surface.prototype.detachLayer = function (layer) { - var node = layer.getAttachedValue("$node"); - node.SetIsLoaded(false); - node.SetIsAttached(false); - _super.prototype.detachLayer.call(this, layer); - }; - Surface.prototype.updateLayout = function () { - var updated = _super.prototype.updateLayout.call(this); - if (updated) - this.$$onLayoutUpdated(); - return updated; - }; - Surface.prototype.$$onLayoutUpdated = function () { - for (var walker = this.walkLayers(); walker.step();) { - for (var subwalker = walker.current.walkDeep(); subwalker.step();) { - var upd = subwalker.current; - var node = upd.getAttachedValue("$node"); - var xobj = node.XObject; - xobj.LayoutUpdated.raise(xobj, null); - } - } - }; - Surface.prototype.Focus = function (node, recurse) { - return this.$$inputMgr.Focus(node, recurse); - }; - Surface.HasFocus = function (uie) { - var uin = uie.XamlNode; - var surface = uin.LayoutUpdater.tree.surface; - if (!surface) - return false; - var curNode = surface.$$inputMgr.FocusedNode; - while (curNode) { - if (curNode === uin) - return true; - curNode = curNode.VisualParentNode; - } - return false; - }; - Surface.Focus = function (uie, recurse) { - var uin = uie.XamlNode; - var surface = uin.LayoutUpdater.tree.surface; - if (!surface) - return false; - return surface.$$inputMgr.Focus(uin, recurse); - }; - Surface.GetFocusedElement = function (uie) { - var uin = uie.XamlNode; - var surface = uin.LayoutUpdater.tree.surface; - if (!surface) - return null; - var curNode = surface.$$inputMgr.FocusedNode; - return curNode.XObject; - }; - Surface.RemoveFocusFrom = function (uie) { - var node = uie.XamlNode; - var surface = node.LayoutUpdater.tree.surface; - if (!surface) - return false; - surface.$$inputMgr.OnNodeDetached(node); - return true; - }; - Surface.SetMouseCapture = function (uin) { - var surface = uin.LayoutUpdater.tree.surface; - if (!surface) - return false; - return surface.$$inputMgr.SetMouseCapture(uin); - }; - Surface.ReleaseMouseCapture = function (uin) { - var surface = uin.LayoutUpdater.tree.surface; - if (!surface) - return; - surface.$$inputMgr.ReleaseMouseCapture(uin); - }; - Surface.prototype.$$handleResize = function (evt) { - var _this = this; - if (resizeTimeout) - clearTimeout(resizeTimeout); - resizeTimeout = setTimeout(function () { - _this.$$updateZoom(); - _this.$$stretchCanvas(); - resizeTimeout = null; - }, 15); - }; - Surface.prototype.$$stretchCanvas = function () { - this.resize(Math.round(window.innerWidth * this.$$zoom), Math.round(window.innerHeight * this.$$zoom)); - }; - Surface.prototype.$$updateZoom = function () { - var oldZoom = this.$$zoom; - var newZoom = minerva.zoom.calc(); - if (oldZoom === newZoom) - return; - this.$$zoom = newZoom; - this.onZoomChanged(oldZoom, newZoom); - }; - Surface.prototype.onZoomChanged = function (oldZoom, newZoom) { - this.App.SetCurrentValue(Fayde.Application.ZoomFactorProperty, newZoom); - this.$$setScrollbars(newZoom > 1); - this.updateDpiRatio(); - }; - Surface.prototype.$$setScrollbars = function (show) { - var style = document.body.style; - style.overflowY = style.overflowX = show === true ? "" : "hidden"; - }; - return Surface; - })(minerva.engine.Surface); - Fayde.Surface = Surface; -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Theme = (function () { - function Theme(name, libUri) { - this.Resources = null; - this.$$loaded = false; - this.$$retrieved = false; - this.Name = name; - this.LibraryUri = libUri; - } - Theme.prototype.RetrieveAsync = function () { - var _this = this; - var reqUri = Fayde.ThemeConfig.GetRequestUri(this.LibraryUri, this.Name); - if (!reqUri || this.$$retrieved) - return Promise.resolve(reqUri); - return Fayde.Markup.Retrieve(reqUri) - .then(function () { - _this.$$retrieved = true; - return reqUri; - }); - }; - Theme.prototype.LoadAsync = function () { - var _this = this; - if (this.$$loaded) - return Promise.resolve(this); - return new Promise(function (resolve, reject) { - _this.RetrieveAsync() - .then(function (reqUri) { return Fayde.Markup.Resolve(reqUri, _this.LibraryUri); }) - .then(function (md) { - _this.$$loaded = true; - var rd = Fayde.Markup.Load(null, md); - if (!(rd instanceof Fayde.ResourceDictionary)) - throw new Error("Theme root must be a ResourceDictionary."); - Object.defineProperty(_this, "Resources", { value: rd, writable: false }); - resolve(_this); - }, function (err) { - if (Theme.WarnMissing) - console.warn("Failed to load Theme. [" + _this.LibraryUri + "][" + _this.Name + "]", err); - resolve(_this); - }); - }); - }; - Theme.prototype.GetImplicitStyle = function (type) { - var rd = this.Resources; - if (!rd) - return undefined; - var style = rd.Get(type); - if (style instanceof Fayde.Style) - return style; - return undefined; - }; - Theme.WarnMissing = false; - return Theme; - })(); - Fayde.Theme = Theme; - Fayde.CoreLibrary.add(Theme); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var ThemeConfig; - (function (ThemeConfig) { - var configs = {}; - var DEFAULT_TEMPLATE_URI = "lib//themes/.Theme.xml"; - function GetRequestUri(uri, name) { - if (Fayde.Uri.isNullOrEmpty(uri)) - return null; - var config = configs[uri.toString()]; - if (config && config.none) - return null; - var templateUri = ((config) ? config.requestTemplateUri : null) || DEFAULT_TEMPLATE_URI; - return processTemplate(uri, name, templateUri); - } - ThemeConfig.GetRequestUri = GetRequestUri; - function OverrideRequestUri(uri, templateUri) { - configs[uri.toString()] = { - requestTemplateUri: templateUri - }; - } - ThemeConfig.OverrideRequestUri = OverrideRequestUri; - function Set(libName, path) { - if (!libName) { - console.warn("Could not configure theme. No library specified."); - return; - } - var uri = new Fayde.Uri(libName); - if (uri.scheme !== "http") - uri = new Fayde.Uri("lib://" + libName); - if (path === undefined) - configs[uri.toString()] = null; - else if (path === null) - configs[uri.toString()] = { - none: true - }; - else - configs[uri.toString()] = { - requestTemplateUri: path - }; - } - ThemeConfig.Set = Set; - function processTemplate(uri, name, template) { - var libName = uri.host; - var rv = template; - rv = rv.replace("", libName); - rv = rv.replace("", name); - return rv; - } - OverrideRequestUri(new Fayde.Uri(Fayde.XMLNS), "lib/fayde/themes/.theme.xml"); - Set(Fayde.XMLNSX, "none"); - })(ThemeConfig = Fayde.ThemeConfig || (Fayde.ThemeConfig = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - Fayde.DEFAULT_THEME_NAME = "Metro"; - var ThemeManagerImpl = (function () { - function ThemeManagerImpl() { - this.$$libs = []; - this.$$activeThemeName = null; - Fayde.TypeManager.libResolver.libraryCreated.on(this.$$onLibraryCreated, this); - this.$$libs.push(Fayde.CoreLibrary); - } - ThemeManagerImpl.prototype.$$onLibraryCreated = function (sender, args) { - var tlib = args.library; - tlib.$$activeThemeName = this.$$activeThemeName; - this.$$libs.push(tlib); - }; - ThemeManagerImpl.prototype.LoadAsync = function (themeName) { - if (!themeName) - themeName = this.$$activeThemeName; - this.$$activeThemeName = themeName; - this.$$libs.forEach(function (lib) { return lib.setThemeName(themeName); }); - return Promise.all(this.$$libs - .filter(function (lib) { return lib.isLoaded; }) - .map(function (lib) { return lib.loadActiveTheme(); })); - }; - ThemeManagerImpl.prototype.FindStyle = function (defaultStyleKey) { - if (!defaultStyleKey) - return null; - var uri = defaultStyleKey.$$uri; - if (uri) { - var lib = this.$$findLib(uri); - if (lib && lib.activeTheme) - return lib.activeTheme.GetImplicitStyle(defaultStyleKey); - } - return null; - }; - ThemeManagerImpl.prototype.$$findLib = function (uri) { - for (var i = 0, libs = this.$$libs; i < libs.length; i++) { - var lib = libs[i]; - if (lib.uri.toString() === uri) - return lib; - } - }; - return ThemeManagerImpl; - })(); - Fayde.ThemeManager = new ThemeManagerImpl(); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Expression = (function () { - function Expression() { - this.IsUpdating = false; - this.IsAttached = false; - } - Expression.prototype.Seal = function (owner, prop) { - }; - Expression.prototype.OnAttached = function (target) { - this.IsAttached = true; - this.OnDataContextChanged(target.XamlNode.DataContext); - }; - Expression.prototype.OnDetached = function (target) { - this.IsAttached = false; - this.OnDataContextChanged(undefined); - }; - Expression.prototype.GetValue = function (propd) { - }; - Expression.prototype.OnDataContextChanged = function (newDataContext) { - }; - return Expression; - })(); - Fayde.Expression = Expression; -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Data; - (function (Data) { - var BindingExpressionBase = (function (_super) { - __extends(BindingExpressionBase, _super); - function BindingExpressionBase(binding) { - _super.call(this); - this._TwoWayLostFocusElement = null; - this._CurrentNotifyError = null; - this._CurrentError = null; - this._Cached = false; - this._CachedValue = undefined; - this._IsSealed = false; - if (!Object.isFrozen(binding)) - Object.freeze(binding); - Object.defineProperty(this, "ParentBinding", { - value: binding, - writable: false - }); - } - Object.defineProperty(BindingExpressionBase.prototype, "DataItem", { - get: function () { - return this.PropertyPathWalker.Source; - }, - enumerable: true, - configurable: true - }); - BindingExpressionBase.prototype.Seal = function (owner, prop) { - if (this._IsSealed) - return; - this._IsSealed = true; - Object.defineProperty(this, "Target", { - value: owner, - writable: false - }); - var propd = prop; - Object.defineProperty(this, "Property", { - value: propd, - writable: false - }); - var binding = this.ParentBinding; - var path = binding.Path.Path; - if ((!path || path === ".") && binding.Mode === Data.BindingMode.TwoWay) - throw new ArgumentException("TwoWay bindings require a non-empty Path."); - if (binding.Mode === Data.BindingMode.TwoWay && (owner instanceof Fayde.Controls.TextBox || owner instanceof Fayde.Controls.PasswordBox)) - this._TwoWayLostFocusElement = owner; - this._IsDataContextBound = !binding.ElementName && !binding.Source && !binding.RelativeSource; - var bindsToView = propd === Fayde.DependencyObject.DataContextProperty || propd.GetTargetType() === nullstone.IEnumerable_ || propd.GetTargetType() === Data.ICollectionView_; - var walker = this.PropertyPathWalker = new Data.PropertyPathWalker(binding.Path.ParsePath, binding.BindsDirectlyToSource, bindsToView, this._IsDataContextBound); - if (binding.Mode !== Data.BindingMode.OneTime) - walker.Listen(this); - }; - BindingExpressionBase.prototype.OnAttached = function (element) { - var _this = this; - if (this.IsAttached) - return; - if (this.Target && this.Target !== element) - throw new Error("Cannot attach BindingExpression to another DependencyObject."); - if (Fayde.Data.Debug && window.console) - console.log("[BINDING] OnAttached: [" + element.constructor.name + "] {Path=" + this.ParentBinding.Path.Path + "}"); - _super.prototype.OnAttached.call(this, element); - this._SourceAvailableMonitor = this.Target.XamlNode.MonitorIsAttached(function (newIsAttached) { return _this._OnSourceAvailable(); }); - var source = this._FindSource(); - this.PropertyPathWalker.Update(source); - if (this._TwoWayLostFocusElement) - this._TwoWayLostFocusElement.LostFocus.on(this._TargetLostFocus, this); - if (this.ParentBinding.Mode === Data.BindingMode.TwoWay && this.Property.IsCustom) { - this._PropertyListener = this.Property.Store.ListenToChanged(this.Target, this.Property, this._UpdateSourceCallback, this); - } - }; - BindingExpressionBase.prototype.GetValue = function (propd) { - if (this._Cached) - return this._CachedValue; - if (this.PropertyPathWalker.IsPathBroken) { - var target = this.Target; - if (Data.WarnBrokenPath && target && target.XamlNode.IsAttached) { - var fe = target instanceof Fayde.FrameworkElement ? target : null; - if (!fe || fe.XamlNode.IsLoaded) - console.warn("[BINDING] Path Broken --> Path='" + this.PropertyPathWalker.Path + "'"); - } - this._CachedValue = null; - } - else { - this._CachedValue = this.PropertyPathWalker.ValueInternal; - } - this._CachedValue = this._ConvertToType(propd, this._CachedValue); - this._Cached = true; - return this._CachedValue; - }; - BindingExpressionBase.prototype._OnSourceAvailable = function () { - this._SourceAvailableMonitor.Detach(); - var source = this._FindSource(); - if (source) - this.PropertyPathWalker.Update(source); - this._Invalidate(); - this.Target.SetValue(this.Property, this); - }; - BindingExpressionBase.prototype._FindSource = function () { - if (this.ParentBinding.Source) { - return this.ParentBinding.Source; - } - else if (this.ParentBinding.ElementName != null) { - return this._FindSourceByElementName(); - } - else if (this.ParentBinding.RelativeSource) { - return this.ParentBinding.RelativeSource.Find(this.Target); - } - return this._DataContext; - }; - BindingExpressionBase.prototype._FindSourceByElementName = function () { - var name = this.ParentBinding.ElementName; - var xobj = this.Target; - if (!xobj) - return undefined; - var source = xobj.FindName(name, true); - if (source) - return source; - return undefined; - }; - BindingExpressionBase.prototype.OnDetached = function (element) { - if (!this.IsAttached) - return; - if (Fayde.Data.Debug && window.console) - console.log("[BINDING] OnDetached: [" + element.constructor.name + "] {Path=" + this.ParentBinding.Path.Path + "}"); - _super.prototype.OnDetached.call(this, element); - if (this._TwoWayLostFocusElement) - this._TwoWayLostFocusElement.LostFocus.off(this._TargetLostFocus, this); - if (this._CurrentError != null) { - var fe = getMentor(element); - if (fe) - Fayde.Validation.RemoveError(fe, this._CurrentError); - this._CurrentError = null; - } - if (this._PropertyListener) { - this._PropertyListener.Detach(); - this._PropertyListener = null; - } - this.PropertyPathWalker.Update(null); - this.Target = undefined; - }; - BindingExpressionBase.prototype.IsBrokenChanged = function () { - this.Refresh(); - }; - BindingExpressionBase.prototype.ValueChanged = function () { - this.Refresh(); - }; - BindingExpressionBase.prototype.UpdateSource = function () { - return this._UpdateSourceObject(); - }; - BindingExpressionBase.prototype._TryUpdateSourceObject = function (value) { - if (this._ShouldUpdateSource()) - this._UpdateSourceObject(value); - }; - BindingExpressionBase.prototype._UpdateSourceCallback = function (sender, args) { - try { - if (this._ShouldUpdateSource()) - this._UpdateSourceObject(this.Target.GetValue(this.Property)); - } - catch (err) { - console.warn("[BINDING] UpdateSource: " + err.toString()); - } - }; - BindingExpressionBase.prototype._TargetLostFocus = function (sender, e) { - if (this.ParentBinding.UpdateSourceTrigger === Data.UpdateSourceTrigger.Explicit) - return; - this._UpdateSourceObject(); - }; - BindingExpressionBase.prototype._ShouldUpdateSource = function () { - if (this.IsUpdating) - return false; - if (!this._TwoWayLostFocusElement) - return this.ParentBinding.UpdateSourceTrigger !== Data.UpdateSourceTrigger.Explicit; - return this.ParentBinding.UpdateSourceTrigger === Data.UpdateSourceTrigger.PropertyChanged; - }; - BindingExpressionBase.prototype._UpdateSourceObject = function (value) { - if (value === undefined) - value = this.Target.GetValue(this.Property); - var binding = this.ParentBinding; - if (binding.Mode !== Data.BindingMode.TwoWay) - return; - var dataError = null; - var exception; - var oldUpdating = this.IsUpdating; - var walker = this.PropertyPathWalker; - var node = this.PropertyPathWalker.FinalNode; - try { - if (this.PropertyPathWalker.IsPathBroken) - return; - value = this._ConvertFromTargetToSource(binding, node, value); - if (this._CachedValue === undefined && value === undefined) - return; - this.IsUpdating = true; - node.SetValue(value); - this._CachedValue = value; - } - catch (err) { - if (binding.ValidatesOnExceptions) { - if (err instanceof TargetInvocationException) - exception = err.InnerException; - exception = err; - } - } - finally { - this.IsUpdating = oldUpdating; - if (binding.ValidatesOnDataErrors && !exception) { - dataError = getDataError(walker); - } - } - if (binding.ValidatesOnExceptions) - this._MaybeEmitError(null, exception); - else if (binding.ValidatesOnDataErrors) - this._MaybeEmitError(dataError, exception); - }; - BindingExpressionBase.prototype.OnDataContextChanged = function (newDataContext) { - if (Fayde.Data.Debug && window.console) - console.log("[BINDING] DataContextChanged: [" + this.Target._ID + ":" + this.Target.constructor.name + "] {Path=" + this.ParentBinding.Path.Path + "}"); - if (this._DataContext === newDataContext) - return; - this._DataContext = newDataContext; - if (!this._IsDataContextBound) - return; - if (Fayde.Data.IsCounterEnabled) - Fayde.Data.DataContextCounter++; - try { - this.PropertyPathWalker.Update(newDataContext); - if (this.ParentBinding.Mode === Data.BindingMode.OneTime) - this.Refresh(); - } - catch (err) { - console.warn("[BINDING] DataContextChanged Error: " + err.message); - } - }; - BindingExpressionBase.prototype._Invalidate = function () { - this._Cached = false; - this._CachedValue = undefined; - }; - BindingExpressionBase.prototype.Refresh = function () { - var dataError = null; - var exception; - if (!this.IsAttached) - return; - var walker = this.PropertyPathWalker; - this._AttachToNotifyError(walker.FinalNode.GetSource()); - var binding = this.ParentBinding; - if (!this.IsUpdating && binding.ValidatesOnDataErrors) - dataError = getDataError(walker); - var oldUpdating = this.IsUpdating; - try { - this.IsUpdating = true; - this._Invalidate(); - this.Target.SetValue(this.Property, this); - } - catch (err) { - if (binding.ValidatesOnExceptions) { - exception = err; - if (exception instanceof TargetInvocationException) - exception = exception.InnerException; - } - else { - console.warn(err); - } - } - finally { - this.IsUpdating = oldUpdating; - } - if (binding.ValidatesOnExceptions) - this._MaybeEmitError(null, exception); - else if (binding.ValidatesOnDataErrors) - this._MaybeEmitError(dataError, exception); - }; - BindingExpressionBase.prototype._ConvertFromTargetToSource = function (binding, node, value) { - if (binding.TargetNullValue && binding.TargetNullValue === value) - value = null; - var converter = binding.Converter; - if (converter) { - value = converter.ConvertBack(value, node.ValueType, binding.ConverterParameter, binding.ConverterCulture); - } - return value; - }; - BindingExpressionBase.prototype._ConvertToType = function (propd, value) { - var targetType = this.Property.GetTargetType(); - try { - var binding = this.ParentBinding; - if (!this.PropertyPathWalker.IsPathBroken && binding.Converter) { - value = binding.Converter.Convert(value, targetType, binding.ConverterParameter, binding.ConverterCulture); - } - if (value === DependencyProperty.UnsetValue || this.PropertyPathWalker.IsPathBroken) { - value = binding.FallbackValue; - if (value === undefined) - value = propd.DefaultValue; - } - else if (value == null) { - value = binding.TargetNullValue; - if (value == null && this._IsDataContextBound && !binding.Path.Path) - value = propd.DefaultValue; - } - else { - var format = binding.StringFormat; - if (format) { - if (format.indexOf("{0") < 0) - format = "{0:" + format + "}"; - value = Fayde.Localization.Format(format, value); - } - } - } - catch (err) { - console.warn("[BINDING]" + err.toString()); - value = binding.FallbackValue; - } - return nullstone.convertAnyToType(value, targetType); - }; - BindingExpressionBase.prototype._MaybeEmitError = function (message, exception) { - var fe = getMentor(this.Target); - if (!fe) - return; - var error = (exception instanceof Exception || exception instanceof Error) ? exception : null; - if (message === "") - message = null; - var oldError = this._CurrentError; - if (message != null) - this._CurrentError = new Fayde.Validation.ValidationError(message, null, this.PropertyPathWalker.FinalPropertyName); - else if (error) - this._CurrentError = new Fayde.Validation.ValidationError(null, error, this.PropertyPathWalker.FinalPropertyName); - else - this._CurrentError = null; - Fayde.Validation.Emit(fe, this.ParentBinding, oldError, this._CurrentError); - }; - BindingExpressionBase.prototype._AttachToNotifyError = function (element) { - if (!Data.INotifyDataErrorInfo_.is(element)) - return; - if (element === this._CurrentNotifyError || !this.ParentBinding.ValidatesOnNotifyDataErrors) - return; - var property = this.PropertyPathWalker.FinalPropertyName; - if (this._CurrentNotifyError) { - this._CurrentNotifyError.ErrorsChanged.off(this._NotifyErrorsChanged, this); - this._MaybeEmitError(null, null); - } - this._CurrentNotifyError = element; - if (element) { - element.ErrorsChanged.on(this._NotifyErrorsChanged, this); - if (element.HasErrors) { - var enu = element.GetErrors(property); - if (enu) { - for (var en = enu.getEnumerator(); en.moveNext();) { - this._MaybeEmitError(en.current, en.current); - } - } - } - else { - this._MaybeEmitError(null, null); - } - } - }; - BindingExpressionBase.prototype._NotifyErrorsChanged = function (sender, e) { - var property = this.PropertyPathWalker.FinalPropertyName; - if (e.PropertyName !== property) - return; - var errors = this._CurrentNotifyError ? this._CurrentNotifyError.GetErrors(property) : null; - if (!errors) { - this._MaybeEmitError(null, null); - return; - } - var arr = nullstone.IEnumerable_.toArray(errors); - if (arr.length <= 0) { - this._MaybeEmitError(null, null); - return; - } - for (var i = 0; i < arr.length; i++) { - var cur = arr[i]; - this._MaybeEmitError(cur, cur); - } - }; - return BindingExpressionBase; - })(Fayde.Expression); - Data.BindingExpressionBase = BindingExpressionBase; - function getMentor(dobj) { - for (var cur = dobj; cur; cur = cur.Parent) { - if (cur instanceof Fayde.FrameworkElement) - return cur; - } - return null; - } - function getDataError(walker) { - var info = Data.IDataErrorInfo_.as(walker.FinalNode.GetSource()); - var name = walker.FinalPropertyName; - return (info && name) ? info.GetError(name) : null; - } - })(Data = Fayde.Data || (Fayde.Data = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Data; - (function (Data) { - var BindingExpression = (function (_super) { - __extends(BindingExpression, _super); - function BindingExpression(binding) { - _super.call(this, binding); - } - return BindingExpression; - })(Data.BindingExpressionBase); - Data.BindingExpression = BindingExpression; - })(Data = Fayde.Data || (Fayde.Data = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var DeferredValueExpression = (function (_super) { - __extends(DeferredValueExpression, _super); - function DeferredValueExpression() { - _super.apply(this, arguments); - } - DeferredValueExpression.prototype.GetValue = function (propd) { - return undefined; - }; - DeferredValueExpression.prototype.toString = function () { return "DeferredValueExpression"; }; - return DeferredValueExpression; - })(Fayde.Expression); - Fayde.DeferredValueExpression = DeferredValueExpression; -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var EventBindingExpression = (function (_super) { - __extends(EventBindingExpression, _super); - function EventBindingExpression(eventBinding) { - _super.call(this); - this.IsUpdating = false; - this.IsAttached = false; - this._CommandWalker = null; - this._CommandParameterWalker = null; - this._Target = null; - this._Event = null; - this._EventName = null; - this._EventBinding = eventBinding; - var cb = this._EventBinding.CommandBinding; - if (cb) - this._CommandWalker = new Fayde.Data.PropertyPathWalker(cb.Path.ParsePath, cb.BindsDirectlyToSource, false, !cb.ElementName && !cb.Source && !cb.RelativeSource); - var cpb = this._EventBinding.CommandParameterBinding; - if (cpb) - this._CommandParameterWalker = new Fayde.Data.PropertyPathWalker(cpb.Path.ParsePath, cpb.BindsDirectlyToSource, false, !cpb.ElementName && !cpb.Source && !cpb.RelativeSource); - } - EventBindingExpression.prototype.Seal = function (owner, prop) { - }; - EventBindingExpression.prototype.Init = function (eventName) { - this._EventName = eventName; - }; - EventBindingExpression.prototype.GetValue = function (propd) { - }; - EventBindingExpression.prototype.OnAttached = function (target) { - if (this.IsAttached) - return; - this.IsAttached = true; - this._Target = target; - this._Event = target[this._EventName]; - if (this._Event) - this._Event.on(this._Callback, this); - }; - EventBindingExpression.prototype.OnDetached = function (target) { - if (!this.IsAttached) - return; - if (this._Event) - this._Event.off(this._Callback, this); - this._Event = null; - this.IsAttached = false; - }; - EventBindingExpression.prototype.OnDataContextChanged = function (newDataContext) { - }; - EventBindingExpression.prototype._Callback = function (sender, e) { - var target = this._Target; - var csource = findSource(target, this._EventBinding.CommandBinding); - var context = csource; - var etarget = context; - var cw = this._CommandWalker; - if (cw) { - etarget = cw.GetValue(etarget); - context = cw.GetContext(); - if (context == null) - context = csource; - } - if (!etarget) { - console.warn("[EVENTBINDING]: Could not find command target for event '" + this._EventName + "'."); - return; - } - var cargs = { - sender: sender, - args: e, - parameter: null - }; - var cpb = this._EventBinding.CommandParameterBinding; - if (cpb) { - var cpw = this._CommandParameterWalker; - var cpsource = findSource(target, cpb); - cargs.parameter = cpw.GetValue(cpsource); - } - if (typeof etarget === "function") { - etarget.call(context, cargs); - } - else { - var ecmd = Fayde.Input.ICommand_.as(etarget); - if (!ecmd) { - console.warn("[EVENTBINDING]: Could not find command target for event '" + this._EventName + "'."); - return; - } - ecmd = etarget; - if (ecmd.CanExecute.call(context, cargs)) - ecmd.Execute.call(context, cargs); - } - }; - return EventBindingExpression; - })(Fayde.Expression); - Fayde.EventBindingExpression = EventBindingExpression; - function findSource(target, binding) { - if (binding) { - if (binding.Source) - return binding.Source; - if (binding.ElementName != null) - return findSourceByElementName(target, binding.ElementName); - if (binding.RelativeSource) { - return binding.RelativeSource.Find(target); - } - } - return target.XamlNode.DataContext; - } - function findSourceByElementName(target, name) { - var xobj = target; - if (!xobj) - return undefined; - var source = xobj.FindName(name, true); - if (source) - return source; - return undefined; - } -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var TemplateBindingExpression = (function (_super) { - __extends(TemplateBindingExpression, _super); - function TemplateBindingExpression(sourceProperty) { - _super.call(this); - this._IsSealed = false; - this._SourcePropertyName = sourceProperty; - } - TemplateBindingExpression.prototype.Seal = function (owner, prop) { - if (this._IsSealed) - return; - this._IsSealed = true; - var to = owner.TemplateOwner; - if (!(to instanceof Fayde.DependencyObject)) - throw new Error("TemplateBinding must be applied to a DependencyObject within a template."); - this.SourceProperty = DependencyProperty.GetDependencyProperty(to.constructor, this._SourcePropertyName); - this.TargetProperty = prop; - }; - TemplateBindingExpression.prototype.GetValue = function (propd) { - var target = this._Target; - var source = target.TemplateOwner; - var value; - if (source) - value = source.GetValue(this.SourceProperty); - value = nullstone.convertAnyToType(value, this.TargetProperty.GetTargetType()); - return value; - }; - TemplateBindingExpression.prototype.OnAttached = function (dobj) { - _super.prototype.OnAttached.call(this, dobj); - this._Target = dobj; - this._DetachListener(); - var cc; - if (this._Target instanceof Fayde.Controls.ContentControl) - cc = this._Target; - this._AttachListener(); - }; - TemplateBindingExpression.prototype.OnDetached = function (dobj) { - _super.prototype.OnDetached.call(this, dobj); - var listener = this._Listener; - if (!listener) - return; - var cc; - if (this._Target instanceof Fayde.Controls.ContentControl) - cc = this._Target; - this._DetachListener(); - this._Target = null; - }; - TemplateBindingExpression.prototype.OnSourcePropertyChanged = function (sender, args) { - if (this.SourceProperty._ID !== args.Property._ID) - return; - try { - this.IsUpdating = true; - var targetProp = this.TargetProperty; - try { - this._Target.SetCurrentValue(targetProp, this.GetValue(null)); - } - catch (err2) { - var val = targetProp.DefaultValue; - this._Target.SetCurrentValue(targetProp, val); - } - } - catch (err) { - } - finally { - this.IsUpdating = false; - } - }; - TemplateBindingExpression.prototype._AttachListener = function () { - var _this = this; - var source = this._Target.TemplateOwner; - if (!source) - return; - this._Listener = this.SourceProperty.Store.ListenToChanged(source, this.SourceProperty, function (sender, args) { return _this.OnSourcePropertyChanged(sender, args); }, this); - }; - TemplateBindingExpression.prototype._DetachListener = function () { - var listener = this._Listener; - if (listener) { - this._Listener.Detach(); - this._Listener = null; - } - }; - return TemplateBindingExpression; - })(Fayde.Expression); - Fayde.TemplateBindingExpression = TemplateBindingExpression; -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Input; - (function (Input) { - Input.ICommand_ = new nullstone.Interface("ICommand"); - })(Input = Fayde.Input || (Fayde.Input = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Input; - (function (Input) { - var InteractionHelper; - (function (InteractionHelper) { - function GetLogicalKey(flowDirection, key) { - if (flowDirection !== Fayde.FlowDirection.RightToLeft) - return key; - switch (key) { - case Input.Key.Left: - return Input.Key.Right; - case Input.Key.Right: - return Input.Key.Left; - default: - return key; - } - } - InteractionHelper.GetLogicalKey = GetLogicalKey; - })(InteractionHelper = Input.InteractionHelper || (Input.InteractionHelper = {})); - })(Input = Fayde.Input || (Fayde.Input = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Input; - (function (Input) { - function CreateKeyInterop() { - if (navigator.appName === "Microsoft Internet Explorer") - return new IEKeyInterop(); - if (navigator.appName === "Netscape") { - if (!!navigator.userAgent.match(/Trident\//)) - return new IEKeyInterop(); - return new NetscapeKeyInterop(); - } - return new KeyInterop(); - } - Input.CreateKeyInterop = CreateKeyInterop; - var keyFromKeyCode = []; - keyFromKeyCode[8] = Input.Key.Back; - keyFromKeyCode[9] = Input.Key.Tab; - keyFromKeyCode[13] = Input.Key.Enter; - keyFromKeyCode[16] = Input.Key.Shift; - keyFromKeyCode[17] = Input.Key.Ctrl; - keyFromKeyCode[18] = Input.Key.Alt; - keyFromKeyCode[20] = Input.Key.CapsLock; - keyFromKeyCode[27] = Input.Key.Escape; - keyFromKeyCode[32] = Input.Key.Space; - keyFromKeyCode[33] = Input.Key.PageUp; - keyFromKeyCode[34] = Input.Key.PageDown; - keyFromKeyCode[35] = Input.Key.End; - keyFromKeyCode[36] = Input.Key.Home; - keyFromKeyCode[37] = Input.Key.Left; - keyFromKeyCode[38] = Input.Key.Up; - keyFromKeyCode[39] = Input.Key.Right; - keyFromKeyCode[40] = Input.Key.Down; - keyFromKeyCode[45] = Input.Key.Insert; - keyFromKeyCode[46] = Input.Key.Delete; - keyFromKeyCode[48] = Input.Key.D0; - keyFromKeyCode[49] = Input.Key.D1; - keyFromKeyCode[50] = Input.Key.D2; - keyFromKeyCode[51] = Input.Key.D3; - keyFromKeyCode[52] = Input.Key.D4; - keyFromKeyCode[53] = Input.Key.D5; - keyFromKeyCode[54] = Input.Key.D6; - keyFromKeyCode[55] = Input.Key.D7; - keyFromKeyCode[56] = Input.Key.D8; - keyFromKeyCode[57] = Input.Key.D9; - keyFromKeyCode[65] = Input.Key.A; - keyFromKeyCode[66] = Input.Key.B; - keyFromKeyCode[67] = Input.Key.C; - keyFromKeyCode[68] = Input.Key.D; - keyFromKeyCode[69] = Input.Key.E; - keyFromKeyCode[70] = Input.Key.F; - keyFromKeyCode[71] = Input.Key.G; - keyFromKeyCode[72] = Input.Key.H; - keyFromKeyCode[73] = Input.Key.I; - keyFromKeyCode[74] = Input.Key.J; - keyFromKeyCode[75] = Input.Key.K; - keyFromKeyCode[76] = Input.Key.L; - keyFromKeyCode[77] = Input.Key.M; - keyFromKeyCode[78] = Input.Key.N; - keyFromKeyCode[79] = Input.Key.O; - keyFromKeyCode[80] = Input.Key.P; - keyFromKeyCode[81] = Input.Key.Q; - keyFromKeyCode[82] = Input.Key.R; - keyFromKeyCode[83] = Input.Key.S; - keyFromKeyCode[84] = Input.Key.T; - keyFromKeyCode[85] = Input.Key.U; - keyFromKeyCode[86] = Input.Key.V; - keyFromKeyCode[87] = Input.Key.W; - keyFromKeyCode[88] = Input.Key.X; - keyFromKeyCode[89] = Input.Key.Y; - keyFromKeyCode[90] = Input.Key.Z; - keyFromKeyCode[96] = Input.Key.NumPad0; - keyFromKeyCode[97] = Input.Key.NumPad1; - keyFromKeyCode[98] = Input.Key.NumPad2; - keyFromKeyCode[99] = Input.Key.NumPad3; - keyFromKeyCode[100] = Input.Key.NumPad4; - keyFromKeyCode[101] = Input.Key.NumPad5; - keyFromKeyCode[102] = Input.Key.NumPad6; - keyFromKeyCode[103] = Input.Key.NumPad7; - keyFromKeyCode[104] = Input.Key.NumPad8; - keyFromKeyCode[105] = Input.Key.NumPad9; - keyFromKeyCode[106] = Input.Key.Multiply; - keyFromKeyCode[107] = Input.Key.Add; - keyFromKeyCode[109] = Input.Key.Subtract; - keyFromKeyCode[110] = Input.Key.Decimal; - keyFromKeyCode[111] = Input.Key.Divide; - keyFromKeyCode[112] = Input.Key.F1; - keyFromKeyCode[113] = Input.Key.F2; - keyFromKeyCode[114] = Input.Key.F3; - keyFromKeyCode[115] = Input.Key.F4; - keyFromKeyCode[116] = Input.Key.F5; - keyFromKeyCode[117] = Input.Key.F6; - keyFromKeyCode[118] = Input.Key.F7; - keyFromKeyCode[119] = Input.Key.F8; - keyFromKeyCode[120] = Input.Key.F9; - keyFromKeyCode[121] = Input.Key.F10; - keyFromKeyCode[122] = Input.Key.F11; - keyFromKeyCode[123] = Input.Key.F12; - var KeyInterop = (function () { - function KeyInterop() { - } - KeyInterop.prototype.RegisterEvents = function (input) { - var _this = this; - document.onkeypress = function (e) { - var args = _this.CreateArgsPress(e); - if (args) { - input.HandleKeyDown(args); - if (args.Handled) { - e.preventDefault(); - return false; - } - } - }; - document.onkeydown = function (e) { - var args = _this.CreateArgsDown(e); - if (args) { - input.HandleKeyDown(args); - if (args.Handled && _this.IsPreventable(args)) { - e.preventDefault(); - return false; - } - } - }; - }; - KeyInterop.prototype.CreateArgsPress = function (e) { - return undefined; - }; - KeyInterop.prototype.CreateArgsDown = function (e) { - return undefined; - }; - KeyInterop.prototype.IsPreventable = function (args) { - return true; - }; - return KeyInterop; - })(); - var udkie = []; - udkie[41] = 48; - udkie[33] = 49; - udkie[64] = 50; - udkie[35] = 51; - udkie[36] = 52; - udkie[37] = 53; - udkie[94] = 54; - udkie[38] = 55; - udkie[42] = 56; - udkie[34] = Input.Key.Unknown; - var IEKeyInterop = (function (_super) { - __extends(IEKeyInterop, _super); - function IEKeyInterop() { - _super.apply(this, arguments); - } - IEKeyInterop.prototype.CreateArgsPress = function (e) { - if (!e["char"]) - return; - var modifiers = { - Shift: e.shiftKey, - Ctrl: e.ctrlKey, - Alt: e.altKey - }; - var keyCode = e.keyCode; - var unshifted = udkie[keyCode]; - if (unshifted) - keyCode = unshifted; - var args = new Fayde.Input.KeyEventArgs(modifiers, keyCode, keyFromKeyCode[keyCode], e["char"]); - if (args.Key === Input.Key.Unknown && e.key) { - args.Char = e.key; - var code = args.Char.toUpperCase().charCodeAt(0); - args.Key = keyFromKeyCode[code]; - if (args.Key == null) - args.Key = Input.Key.Unknown; - } - return args; - }; - IEKeyInterop.prototype.CreateArgsDown = function (e) { - if (e["char"] && e.keyCode !== 8 && e.keyCode !== 9 && !e.ctrlKey) - return; - var modifiers = { - Shift: e.shiftKey, - Ctrl: e.ctrlKey, - Alt: e.altKey - }; - return new Fayde.Input.KeyEventArgs(modifiers, e.keyCode, keyFromKeyCode[e.keyCode]); - }; - return IEKeyInterop; - })(KeyInterop); - var sknet = []; - sknet[8] = Input.Key.Back; - sknet[9] = Input.Key.Tab; - sknet[20] = Input.Key.CapsLock; - sknet[27] = Input.Key.Escape; - sknet[33] = Input.Key.PageUp; - sknet[34] = Input.Key.PageDown; - sknet[35] = Input.Key.End; - sknet[36] = Input.Key.Home; - sknet[37] = Input.Key.Left; - sknet[38] = Input.Key.Up; - sknet[39] = Input.Key.Right; - sknet[40] = Input.Key.Down; - sknet[45] = Input.Key.Insert; - sknet[46] = Input.Key.Delete; - var udknet = []; - udknet[41] = 48; - udknet[33] = 49; - udknet[64] = 50; - udknet[35] = 51; - udknet[36] = 52; - udknet[37] = 53; - udknet[94] = 54; - udknet[38] = 55; - udknet[42] = 56; - udknet[34] = Input.Key.Unknown; - var NetscapeKeyInterop = (function (_super) { - __extends(NetscapeKeyInterop, _super); - function NetscapeKeyInterop() { - _super.apply(this, arguments); - } - NetscapeKeyInterop.prototype.CreateArgsPress = function (e) { - var modifiers = { - Shift: e.shiftKey, - Ctrl: e.ctrlKey, - Alt: e.altKey - }; - var keyCode = e.keyCode; - var unshifted = udknet[keyCode]; - if (unshifted) - keyCode = unshifted; - var args = new Fayde.Input.KeyEventArgs(modifiers, keyCode, keyFromKeyCode[keyCode], String.fromCharCode(e.which || e.keyCode)); - if (args.Char === "'") - args.Key = Input.Key.Unknown; - return args; - }; - NetscapeKeyInterop.prototype.CreateArgsDown = function (e) { - if (sknet[e.keyCode] === undefined && !e.ctrlKey) - return null; - var modifiers = { - Shift: e.shiftKey, - Ctrl: e.ctrlKey, - Alt: e.altKey - }; - return new Fayde.Input.KeyEventArgs(modifiers, e.keyCode, keyFromKeyCode[e.keyCode]); - }; - NetscapeKeyInterop.prototype.IsPreventable = function (args) { - if (args.Modifiers.Ctrl && args.Key === Input.Key.V) { - return false; - } - return true; - }; - return NetscapeKeyInterop; - })(KeyInterop); - })(Input = Fayde.Input || (Fayde.Input = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Input; - (function (Input) { - var KeyboardNavigation = (function () { - function KeyboardNavigation() { - } - KeyboardNavigation.GetAcceptsReturn = function (d) { return d.GetValue(KeyboardNavigation.AcceptsReturnProperty); }; - KeyboardNavigation.SetAcceptsReturn = function (d, value) { d.SetValue(KeyboardNavigation.AcceptsReturnProperty, value); }; - KeyboardNavigation.GetControlTabNavigation = function (d) { return d.GetValue(KeyboardNavigation.ControlTabNavigationProperty); }; - KeyboardNavigation.SetControlTabNavigation = function (d, value) { d.SetValue(KeyboardNavigation.ControlTabNavigationProperty, value); }; - KeyboardNavigation.GetDirectionalNavigation = function (d) { return d.GetValue(KeyboardNavigation.DirectionalNavigationProperty); }; - KeyboardNavigation.SetDirectionalNavigation = function (d, value) { d.SetValue(KeyboardNavigation.DirectionalNavigationProperty, value); }; - KeyboardNavigation.GetIsTabStop = function (d) { return d.GetValue(KeyboardNavigation.IsTabStopProperty); }; - KeyboardNavigation.SetIsTabStop = function (d, value) { d.SetValue(KeyboardNavigation.IsTabStopProperty, value); }; - KeyboardNavigation.GetTabIndex = function (d) { return d.GetValue(KeyboardNavigation.TabIndexProperty); }; - KeyboardNavigation.SetTabIndex = function (d, value) { d.SetValue(KeyboardNavigation.TabIndexProperty, value); }; - KeyboardNavigation.GetTabNavigation = function (d) { return d.GetValue(KeyboardNavigation.TabNavigationProperty); }; - KeyboardNavigation.SetTabNavigation = function (d, value) { d.SetValue(KeyboardNavigation.TabNavigationProperty, value); }; - KeyboardNavigation.AcceptsReturnProperty = DependencyProperty.RegisterAttached("AcceptsReturn", function () { return Boolean; }, KeyboardNavigation); - KeyboardNavigation.ControlTabNavigationProperty = DependencyProperty.RegisterAttached("ControlTabNavigation", function () { return new Fayde.Enum(Input.KeyboardNavigationMode); }, KeyboardNavigation); - KeyboardNavigation.DirectionalNavigationProperty = DependencyProperty.RegisterAttached("DirectionalNavigation", function () { return new Fayde.Enum(Input.KeyboardNavigationMode); }, KeyboardNavigation); - KeyboardNavigation.IsTabStopProperty = DependencyProperty.RegisterAttached("IsTabStop", function () { return Boolean; }, KeyboardNavigation); - KeyboardNavigation.TabIndexProperty = DependencyProperty.RegisterAttached("TabIndex", function () { return Number; }, KeyboardNavigation); - KeyboardNavigation.TabNavigationProperty = DependencyProperty.RegisterAttached("TabNavigation", function () { return new Fayde.Enum(Input.KeyboardNavigationMode); }, KeyboardNavigation); - return KeyboardNavigation; - })(); - Input.KeyboardNavigation = KeyboardNavigation; - Fayde.CoreLibrary.add(KeyboardNavigation); - })(Input = Fayde.Input || (Fayde.Input = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Input; - (function (Input) { - var MouseEventArgs = (function (_super) { - __extends(MouseEventArgs, _super); - function MouseEventArgs(absolutePos) { - _super.call(this); - Object.defineProperty(this, "AbsolutePos", { value: absolutePos, writable: false }); - } - MouseEventArgs.prototype.GetPosition = function (relativeTo) { - var p = this.AbsolutePos.Clone(); - if (!relativeTo) - return p; - if (!(relativeTo instanceof Fayde.UIElement)) - throw new ArgumentException("Specified relative object must be a UIElement."); - minerva.core.Updater.transformPoint(relativeTo.XamlNode.LayoutUpdater, p); - return p; - }; - return MouseEventArgs; - })(Fayde.RoutedEventArgs); - Input.MouseEventArgs = MouseEventArgs; - Fayde.CoreLibrary.add(MouseEventArgs); - var MouseButtonEventArgs = (function (_super) { - __extends(MouseButtonEventArgs, _super); - function MouseButtonEventArgs(absolutePos) { - _super.call(this, absolutePos); - } - return MouseButtonEventArgs; - })(MouseEventArgs); - Input.MouseButtonEventArgs = MouseButtonEventArgs; - Fayde.CoreLibrary.add(MouseButtonEventArgs); - var MouseWheelEventArgs = (function (_super) { - __extends(MouseWheelEventArgs, _super); - function MouseWheelEventArgs(absolutePos, delta) { - _super.call(this, absolutePos); - Object.defineProperty(this, "Delta", { value: delta, writable: false }); - } - return MouseWheelEventArgs; - })(MouseEventArgs); - Input.MouseWheelEventArgs = MouseWheelEventArgs; - Fayde.CoreLibrary.add(MouseWheelEventArgs); - })(Input = Fayde.Input || (Fayde.Input = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Input; - (function (Input) { - (function (MouseInputType) { - MouseInputType[MouseInputType["NoOp"] = 0] = "NoOp"; - MouseInputType[MouseInputType["MouseUp"] = 1] = "MouseUp"; - MouseInputType[MouseInputType["MouseDown"] = 2] = "MouseDown"; - MouseInputType[MouseInputType["MouseLeave"] = 3] = "MouseLeave"; - MouseInputType[MouseInputType["MouseEnter"] = 4] = "MouseEnter"; - MouseInputType[MouseInputType["MouseMove"] = 5] = "MouseMove"; - MouseInputType[MouseInputType["MouseWheel"] = 6] = "MouseWheel"; - })(Input.MouseInputType || (Input.MouseInputType = {})); - var MouseInputType = Input.MouseInputType; - function CreateMouseInterop() { - if (navigator.appName === "Microsoft Internet Explorer") - return new IEMouseInterop(); - if (navigator.appName === "Netscape") { - if (!!navigator.userAgent.match(/Trident\//)) - return new IEMouseInterop(); - return new NetscapeMouseInterop(); - } - return new MouseInterop(); - } - Input.CreateMouseInterop = CreateMouseInterop; - var MouseInterop = (function () { - function MouseInterop() { - this._CanvasOffset = null; - this._IsContextMenuDisabled = false; - } - MouseInterop.prototype.RegisterEvents = function (input, canvas) { - var _this = this; - this._Input = input; - this._CanvasOffset = this._CalcOffset(canvas); - canvas.addEventListener("contextmenu", function (e) { return _this._HandleContextMenu(window.event ? window.event : e); }); - canvas.addEventListener("mousedown", function (e) { return _this._HandleButtonPress(window.event ? window.event : e); }); - canvas.addEventListener("mouseup", function (e) { return _this._HandleButtonRelease(window.event ? window.event : e); }); - canvas.addEventListener("mouseout", function (e) { return _this._HandleOut(window.event ? window.event : e); }); - canvas.addEventListener("mousemove", function (e) { return _this._HandleMove(window.event ? window.event : e); }); - canvas.addEventListener("mousewheel", function (e) { return _this._HandleWheel(window.event ? window.event : e); }); - canvas.addEventListener("DOMMouseScroll", function (e) { return _this._HandleWheel(window.event ? window.event : e); }); - }; - MouseInterop.prototype._CalcOffset = function (canvas) { - var left = 0; - var top = 0; - var cur = canvas; - if (cur.offsetParent) { - do { - left += cur.offsetLeft; - top += cur.offsetTop; - } while (cur = cur.offsetParent); - } - return { left: left, top: top }; - }; - MouseInterop.prototype._GetMousePosition = function (evt) { - return new Point(evt.clientX + window.pageXOffset + this._CanvasOffset.left, evt.clientY + window.pageYOffset + this._CanvasOffset.top); - }; - MouseInterop.prototype.IsLeftButton = function (button) { - return button === 1; - }; - MouseInterop.prototype.IsRightButton = function (button) { - return button === 2; - }; - MouseInterop.prototype._HandleContextMenu = function (evt) { - if (!this._IsContextMenuDisabled) - return; - this._IsContextMenuDisabled = false; - evt.stopPropagation && evt.stopPropagation(); - evt.preventDefault && evt.preventDefault(); - evt.cancelBubble = true; - return false; - }; - MouseInterop.prototype._HandleButtonPress = function (evt) { - Fayde.Engine.Inspection.Kill(); - Input.Keyboard.RefreshModifiers(createModifiers(evt)); - var button = evt.which ? evt.which : evt.button; - var pos = this._GetMousePosition(evt); - if (this._Input.HandleMousePress(button, pos)) - this.DisableNextContextMenu(); - }; - MouseInterop.prototype._HandleButtonRelease = function (evt) { - Input.Keyboard.RefreshModifiers(createModifiers(evt)); - var button = evt.which ? evt.which : evt.button; - var pos = this._GetMousePosition(evt); - this._Input.HandleMouseRelease(button, pos); - }; - MouseInterop.prototype._HandleOut = function (evt) { - Input.Keyboard.RefreshModifiers(createModifiers(evt)); - var pos = this._GetMousePosition(evt); - this._Input.HandleMouseEvent(MouseInputType.MouseLeave, null, pos); - }; - MouseInterop.prototype._HandleMove = function (evt) { - Input.Keyboard.RefreshModifiers(createModifiers(evt)); - var pos = this._GetMousePosition(evt); - this._Input.HandleMouseEvent(MouseInputType.MouseMove, null, pos); - this._Input.UpdateCursorFromInputList(); - }; - MouseInterop.prototype._HandleWheel = function (evt) { - Input.Keyboard.RefreshModifiers(createModifiers(evt)); - var delta = 0; - if (evt.wheelDelta) - delta = evt.wheelDelta / 120; - else if (evt.detail) - delta = -evt.detail / 3; - if (evt.preventDefault) - evt.preventDefault(); - evt.returnValue = false; - this._Input.HandleMouseEvent(MouseInputType.MouseWheel, null, this._GetMousePosition(evt), delta); - this._Input.UpdateCursorFromInputList(); - }; - MouseInterop.prototype.CreateEventArgs = function (type, pos, delta) { - switch (type) { - case MouseInputType.MouseUp: - return new Fayde.Input.MouseButtonEventArgs(pos); - case MouseInputType.MouseDown: - return new Fayde.Input.MouseButtonEventArgs(pos); - case MouseInputType.MouseLeave: - return new Fayde.Input.MouseEventArgs(pos); - case MouseInputType.MouseEnter: - return new Fayde.Input.MouseEventArgs(pos); - case MouseInputType.MouseMove: - return new Fayde.Input.MouseEventArgs(pos); - case MouseInputType.MouseWheel: - return new Fayde.Input.MouseWheelEventArgs(pos, delta); - } - }; - MouseInterop.prototype.DisableNextContextMenu = function () { - this._IsContextMenuDisabled = true; - }; - return MouseInterop; - })(); - var IEMouseInterop = (function (_super) { - __extends(IEMouseInterop, _super); - function IEMouseInterop() { - _super.apply(this, arguments); - this.StopIEContextMenu = false; - } - IEMouseInterop.prototype.DisableNextContextMenu = function () { - _super.prototype.DisableNextContextMenu.call(this); - this.StopIEContextMenu = true; - }; - IEMouseInterop.prototype.RegisterEvents = function (input, canvas) { - var _this = this; - _super.prototype.RegisterEvents.call(this, input, canvas); - canvas.oncontextmenu = function (e) { return _this._HandleIEContextMenu(e); }; - }; - IEMouseInterop.prototype._HandleIEContextMenu = function (evt) { - if (this.StopIEContextMenu) { - this.StopIEContextMenu = false; - return false; - } - return true; - }; - return IEMouseInterop; - })(MouseInterop); - var NetscapeMouseInterop = (function (_super) { - __extends(NetscapeMouseInterop, _super); - function NetscapeMouseInterop() { - _super.apply(this, arguments); - } - NetscapeMouseInterop.prototype.IsRightButton = function (button) { - return button === 3; - }; - return NetscapeMouseInterop; - })(MouseInterop); - function createModifiers(e) { - return { - Shift: e.shiftKey, - Ctrl: e.ctrlKey, - Alt: e.altKey - }; - } - })(Input = Fayde.Input || (Fayde.Input = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Input; - (function (Input) { - var TouchEventArgs = (function (_super) { - __extends(TouchEventArgs, _super); - function TouchEventArgs(device) { - _super.call(this); - this.Device = device; - } - TouchEventArgs.prototype.GetTouchPoint = function (relativeTo) { - return this.Device.GetTouchPoint(relativeTo); - }; - return TouchEventArgs; - })(Fayde.RoutedEventArgs); - Input.TouchEventArgs = TouchEventArgs; - Fayde.CoreLibrary.add(TouchEventArgs); - })(Input = Fayde.Input || (Fayde.Input = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Input; - (function (Input) { - (function (TouchInputType) { - TouchInputType[TouchInputType["NoOp"] = 0] = "NoOp"; - TouchInputType[TouchInputType["TouchDown"] = 1] = "TouchDown"; - TouchInputType[TouchInputType["TouchUp"] = 2] = "TouchUp"; - TouchInputType[TouchInputType["TouchMove"] = 3] = "TouchMove"; - TouchInputType[TouchInputType["TouchEnter"] = 4] = "TouchEnter"; - TouchInputType[TouchInputType["TouchLeave"] = 5] = "TouchLeave"; - })(Input.TouchInputType || (Input.TouchInputType = {})); - var TouchInputType = Input.TouchInputType; - function CreateTouchInterop() { - if (navigator.msPointerEnabled || navigator.pointerEnabled) - return new Input.TouchInternal.PointerTouchInterop(); - if ("ontouchstart" in window) - return new Input.TouchInternal.NonPointerTouchInterop(); - return new DummyTouchInterop(); - } - Input.CreateTouchInterop = CreateTouchInterop; - var DummyTouchInterop = (function () { - function DummyTouchInterop() { - } - DummyTouchInterop.prototype.Register = function (input, canvas) { }; - return DummyTouchInterop; - })(); - })(Input = Fayde.Input || (Fayde.Input = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Input; - (function (Input) { - var TouchPoint = (function () { - function TouchPoint(position, force) { - Object.defineProperty(this, "Position", { value: position, writable: false }); - Object.defineProperty(this, "Force", { value: force, writable: false }); - } - return TouchPoint; - })(); - Input.TouchPoint = TouchPoint; - Fayde.CoreLibrary.add(TouchPoint); - })(Input = Fayde.Input || (Fayde.Input = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Input; - (function (Input) { - var keyboardInput; - var VirtualKeyboard = (function () { - function VirtualKeyboard() { - } - VirtualKeyboard.Init = function () { - keyboardInput = document.createElement('input'); - keyboardInput.type = "text"; - var style = keyboardInput.style; - style.opacity = "0"; - style.cssFloat = "left"; - style.width = "0"; - style.height = "0"; - style.borderWidth = "0"; - document.body.insertBefore(keyboardInput, document.body.firstElementChild); - }; - VirtualKeyboard.Launch = function () { - console.log("Launch"); - keyboardInput.focus(); - }; - return VirtualKeyboard; - })(); - Input.VirtualKeyboard = VirtualKeyboard; - })(Input = Fayde.Input || (Fayde.Input = {})); -})(Fayde || (Fayde = {})); -var TimeSpan = (function () { - function TimeSpan() { - var args = []; - for (var _i = 0; _i < arguments.length; _i++) { - args[_i - 0] = arguments[_i]; - } - this._Ticks = 0; - if (args.length === 0) - return; - if (args.length === 1) { - this._Ticks = args[0] || 0; - return; - } - var days = 0; - var hours = 0; - var minutes = 0; - var seconds = 0; - var milliseconds = 0; - if (args.length === 3) { - hours = args[0] || 0; - minutes = args[1] || 0; - seconds = args[2] || 0; - } - else { - days = args[0] || 0; - hours = args[1] || 0; - minutes = args[2] || 0; - seconds = args[3] || 0; - milliseconds = args[4] || 0; - } - this._Ticks = (days * TimeSpan._TicksPerDay) + (hours * TimeSpan._TicksPerHour) + (minutes * TimeSpan._TicksPerMinute) - + (seconds * TimeSpan._TicksPerSecond) + (milliseconds * TimeSpan._TicksPerMillisecond); - } - Object.defineProperty(TimeSpan, "Zero", { - get: function () { return new TimeSpan(); }, - enumerable: true, - configurable: true - }); - Object.defineProperty(TimeSpan, "MinValue", { - get: function () { return new TimeSpan(Number.MIN_VALUE); }, - enumerable: true, - configurable: true - }); - Object.defineProperty(TimeSpan, "MaxValue", { - get: function () { return new TimeSpan(Number.MAX_VALUE); }, - enumerable: true, - configurable: true - }); - TimeSpan.FromDays = function (value) { - return new TimeSpan(value * this._TicksPerDay); - }; - TimeSpan.FromHours = function (value) { - return new TimeSpan(value * this._TicksPerHour); - }; - TimeSpan.FromMinutes = function (value) { - return new TimeSpan(value * this._TicksPerMinute); - }; - TimeSpan.FromSeconds = function (value) { - return new TimeSpan(value * this._TicksPerSecond); - }; - TimeSpan.FromMilliseconds = function (value) { - return new TimeSpan(value * this._TicksPerMillisecond); - }; - Object.defineProperty(TimeSpan.prototype, "Days", { - get: function () { - return this._Ticks > 0 ? Math.floor(this._Ticks / TimeSpan._TicksPerDay) : Math.ceil(this._Ticks / TimeSpan._TicksPerDay); - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(TimeSpan.prototype, "Hours", { - get: function () { - var remTicks = this._Ticks % TimeSpan._TicksPerDay; - return remTicks > 0 ? Math.floor(remTicks / TimeSpan._TicksPerHour) : Math.ceil(remTicks / TimeSpan._TicksPerHour); - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(TimeSpan.prototype, "Minutes", { - get: function () { - var remTicks = this._Ticks % TimeSpan._TicksPerDay; - remTicks = remTicks % TimeSpan._TicksPerHour; - return remTicks > 0 ? Math.floor(remTicks / TimeSpan._TicksPerMinute) : Math.ceil(remTicks / TimeSpan._TicksPerMinute); - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(TimeSpan.prototype, "Seconds", { - get: function () { - var remTicks = this._Ticks % TimeSpan._TicksPerDay; - remTicks = remTicks % TimeSpan._TicksPerHour; - remTicks = remTicks % TimeSpan._TicksPerMinute; - return remTicks > 0 ? Math.floor(remTicks / TimeSpan._TicksPerSecond) : Math.ceil(remTicks / TimeSpan._TicksPerSecond); - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(TimeSpan.prototype, "Milliseconds", { - get: function () { - var remTicks = this._Ticks % TimeSpan._TicksPerDay; - remTicks = remTicks % TimeSpan._TicksPerHour; - remTicks = remTicks % TimeSpan._TicksPerMinute; - remTicks = remTicks % TimeSpan._TicksPerSecond; - return remTicks > 0 ? Math.floor(remTicks / TimeSpan._TicksPerMillisecond) : Math.ceil(remTicks / TimeSpan._TicksPerMillisecond); - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(TimeSpan.prototype, "Ticks", { - get: function () { return this._Ticks; }, - enumerable: true, - configurable: true - }); - Object.defineProperty(TimeSpan.prototype, "TotalDays", { - get: function () { return this._Ticks / TimeSpan._TicksPerDay; }, - enumerable: true, - configurable: true - }); - Object.defineProperty(TimeSpan.prototype, "TotalHours", { - get: function () { return this._Ticks / TimeSpan._TicksPerHour; }, - enumerable: true, - configurable: true - }); - Object.defineProperty(TimeSpan.prototype, "TotalMinutes", { - get: function () { return this._Ticks / TimeSpan._TicksPerMinute; }, - enumerable: true, - configurable: true - }); - Object.defineProperty(TimeSpan.prototype, "TotalSeconds", { - get: function () { return this._Ticks / TimeSpan._TicksPerSecond; }, - enumerable: true, - configurable: true - }); - Object.defineProperty(TimeSpan.prototype, "TotalMilliseconds", { - get: function () { return this._Ticks / TimeSpan._TicksPerMillisecond; }, - enumerable: true, - configurable: true - }); - TimeSpan.prototype.AddTicks = function (ticks) { - if (ticks == null) - return; - if (isNaN(ticks)) - return; - this._Ticks += ticks; - }; - TimeSpan.prototype.AddMilliseconds = function (milliseconds) { - this.AddTicks(milliseconds * TimeSpan._TicksPerMillisecond); - }; - TimeSpan.prototype.Add = function (ts2) { - var ts = new TimeSpan(); - ts._Ticks = this._Ticks + ts2._Ticks; - return ts; - }; - TimeSpan.prototype.Subtract = function (ts2) { - var ts = new TimeSpan(); - ts._Ticks = this._Ticks - ts2._Ticks; - return ts; - }; - TimeSpan.prototype.Multiply = function (v) { - var ts = new TimeSpan(); - ts._Ticks = Math.round(this._Ticks * v); - return ts; - }; - TimeSpan.prototype.Divide = function (ts2) { - var ts = new TimeSpan(); - ts._Ticks = this._Ticks / ts2._Ticks; - return ts; - }; - TimeSpan.prototype.CompareTo = function (ts2) { - if (this._Ticks === ts2._Ticks) - return 0; - return (this._Ticks > ts2._Ticks) ? 1 : -1; - }; - TimeSpan.prototype.IsZero = function () { - return this._Ticks === 0; - }; - TimeSpan.prototype.GetJsDelay = function () { - return this._Ticks * TimeSpan._TicksPerMillisecond; - }; - TimeSpan.prototype.toString = function (format) { - if (!format) - return Fayde.Localization.FormatSingle(this, "c"); - return Fayde.Localization.FormatSingle(this, format); - }; - TimeSpan.prototype.valueOf = function () { - return this.Ticks; - }; - TimeSpan._TicksPerMillisecond = 1; - TimeSpan._TicksPerSecond = 1000; - TimeSpan._TicksPerMinute = TimeSpan._TicksPerSecond * 60; - TimeSpan._TicksPerHour = TimeSpan._TicksPerMinute * 60; - TimeSpan._TicksPerDay = TimeSpan._TicksPerHour * 24; - return TimeSpan; -})(); -Fayde.CoreLibrary.addPrimitive(TimeSpan); -nullstone.registerTypeConverter(TimeSpan, function (val) { - if (val instanceof TimeSpan) - return val; - if (val instanceof Duration) { - var duration = val; - if (duration.HasTimeSpan) - return new TimeSpan(duration.TimeSpan.Ticks); - else - throw new Exception("Cannot convert " + duration.IsForever ? "Forever" : "Automatic" + - +" duration to TimeSpan"); - } - if (typeof val === "number") - return new TimeSpan(val); - val = val.toString(); - var tokens = val.split(":"); - if (tokens.length === 1) { - var ticks = parseFloat(val); - if (!isNaN(ticks)) - return new TimeSpan(ticks); - throw new Exception("Invalid TimeSpan format '" + val + "'."); - } - if (tokens.length !== 3) - throw new Exception("Invalid TimeSpan format '" + val + "'."); - var days = 0; - var hours; - var minutes; - var seconds; - var milliseconds = 0; - var daysplit = tokens[0].split("."); - if (daysplit.length === 2) { - days = parseInt(daysplit[0]); - hours = parseInt(daysplit[1]); - } - else if (daysplit.length === 1) { - hours = parseInt(daysplit[0]); - } - minutes = parseInt(tokens[1]); - seconds = parseFloat(tokens[2]); - milliseconds = seconds % 1; - seconds = seconds - milliseconds; - milliseconds *= 1000.0; - return new TimeSpan(days, hours, minutes, seconds, milliseconds); -}); -/// -var DayOfWeek; -(function (DayOfWeek) { - DayOfWeek[DayOfWeek["Sunday"] = 0] = "Sunday"; - DayOfWeek[DayOfWeek["Monday"] = 1] = "Monday"; - DayOfWeek[DayOfWeek["Tuesday"] = 2] = "Tuesday"; - DayOfWeek[DayOfWeek["Wednesday"] = 3] = "Wednesday"; - DayOfWeek[DayOfWeek["Thursday"] = 4] = "Thursday"; - DayOfWeek[DayOfWeek["Friday"] = 5] = "Friday"; - DayOfWeek[DayOfWeek["Saturday"] = 6] = "Saturday"; -})(DayOfWeek || (DayOfWeek = {})); -Fayde.CoreLibrary.addEnum(DayOfWeek, "DayOfWeek"); -var DateTimeKind; -(function (DateTimeKind) { - DateTimeKind[DateTimeKind["Unspecified"] = 0] = "Unspecified"; - DateTimeKind[DateTimeKind["Local"] = 1] = "Local"; - DateTimeKind[DateTimeKind["Utc"] = 2] = "Utc"; -})(DateTimeKind || (DateTimeKind = {})); -Fayde.CoreLibrary.addEnum(DateTimeKind, "DateTimeKind"); -var DateTime = (function () { - function DateTime() { - var args = []; - for (var _i = 0; _i < arguments.length; _i++) { - args[_i - 0] = arguments[_i]; - } - this._InternalDate = null; - var ticks = null; - var kind = DateTimeKind.Unspecified; - var year = 0; - var month = 0; - var day = 0; - var hour = 0; - var minute = 0; - var second = 0; - var millisecond = 0; - if (args.length === 1) { - var arg0 = args[0]; - if (arg0 instanceof Date) { - ticks = arg0.getTime(); - } - else { - ticks = args[0]; - } - } - else if (args.length === 2) { - var arg0 = args[0]; - if (arg0 instanceof Date) { - ticks = arg0.getTime(); - } - else { - ticks = args[0]; - } - kind = args[1]; - } - else if (args.length === 3) { - year = args[0]; - month = args[1]; - day = args[2]; - } - else if (args.length === 6) { - year = args[0]; - month = args[1]; - day = args[2]; - hour = args[3]; - minute = args[4]; - second = args[5]; - } - else if (args.length === 7) { - year = args[0]; - month = args[1]; - day = args[2]; - hour = args[3]; - minute = args[4]; - second = args[5]; - millisecond = args[6]; - } - else if (args.length === 8) { - year = args[0]; - month = args[1]; - day = args[2]; - hour = args[3]; - minute = args[4]; - second = args[5]; - millisecond = args[6]; - kind = args[7]; - } - else { - ticks = 0; - } - this._Kind = kind || DateTimeKind.Unspecified; - if (isNaN(ticks) || ticks < DateTime.MIN_TICKS || ticks > DateTime.MAX_TICKS) { - throw new Error("DateTime is out of range."); - } - if (ticks != null) { - this._InternalDate = new Date(ticks); - return; - } - var id = this._InternalDate = new Date(); - if (this._Kind === DateTimeKind.Utc) { - id.setUTCFullYear(year, month - 1, day); - id.setUTCHours(hour); - id.setUTCMinutes(minute); - id.setUTCSeconds(second); - id.setMilliseconds(millisecond); - } - else { - id.setFullYear(year, month - 1, day); - id.setHours(hour); - id.setMinutes(minute); - id.setSeconds(second); - id.setMilliseconds(millisecond); - } - } - Object.defineProperty(DateTime, "MinValue", { - get: function () { return new DateTime(DateTime.MIN_TICKS); }, - enumerable: true, - configurable: true - }); - Object.defineProperty(DateTime, "MaxValue", { - get: function () { return new DateTime(DateTime.MAX_TICKS); }, - enumerable: true, - configurable: true - }); - Object.defineProperty(DateTime, "Now", { - get: function () { return new DateTime(new Date().getTime(), DateTimeKind.Local); }, - enumerable: true, - configurable: true - }); - Object.defineProperty(DateTime, "Today", { - get: function () { return DateTime.Now.Date; }, - enumerable: true, - configurable: true - }); - DateTime.Compare = function (dt1, dt2) { - var t1 = dt1._InternalDate.getTime(); - var t2 = dt2._InternalDate.getTime(); - if (t1 < t2) - return -1; - if (t1 > t2) - return 1; - return 0; - }; - DateTime.DaysInMonth = function (year, month) { - var ticks = new Date(year, (month - 1) + 1, 1).getTime() - TimeSpan._TicksPerDay; - var dt = new DateTime(ticks); - return dt.Day; - }; - Object.defineProperty(DateTime.prototype, "Ticks", { - get: function () { return this._InternalDate.getTime(); }, - enumerable: true, - configurable: true - }); - Object.defineProperty(DateTime.prototype, "Kind", { - get: function () { return this._Kind; }, - enumerable: true, - configurable: true - }); - Object.defineProperty(DateTime.prototype, "Date", { - get: function () { - var t = this._InternalDate.getTime(); - var newid = new Date(t); - if (this._Kind === DateTimeKind.Utc) { - newid.setUTCHours(0); - newid.setUTCMinutes(0); - newid.setUTCSeconds(0); - newid.setUTCMilliseconds(0); - } - else { - newid.setHours(0); - newid.setMinutes(0); - newid.setSeconds(0); - newid.setMilliseconds(0); - } - return new DateTime(newid.getTime(), this._Kind); - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(DateTime.prototype, "Day", { - get: function () { - if (this._Kind === DateTimeKind.Utc) - return this._InternalDate.getUTCDate(); - return this._InternalDate.getDate(); - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(DateTime.prototype, "DayOfWeek", { - get: function () { - if (this._Kind === DateTimeKind.Utc) - return this._InternalDate.getUTCDay(); - return this._InternalDate.getDay(); - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(DateTime.prototype, "DayOfYear", { - get: function () { - var dt = this.Date; - var base = new DateTime(dt.Year, 1, 1, 0, 0, 0, 0, this.Kind); - var diff = new TimeSpan(dt.Ticks - base.Ticks); - return Math.floor(diff.TotalDays); - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(DateTime.prototype, "Hour", { - get: function () { - if (this._Kind === DateTimeKind.Utc) - return this._InternalDate.getUTCHours(); - return this._InternalDate.getHours(); - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(DateTime.prototype, "Millisecond", { - get: function () { - if (this._Kind === DateTimeKind.Utc) - return this._InternalDate.getUTCMilliseconds(); - return this._InternalDate.getMilliseconds(); - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(DateTime.prototype, "Minute", { - get: function () { - if (this._Kind === DateTimeKind.Utc) - return this._InternalDate.getUTCMinutes(); - return this._InternalDate.getMinutes(); - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(DateTime.prototype, "Month", { - get: function () { - if (this._Kind === DateTimeKind.Utc) - return this._InternalDate.getUTCMonth() + 1; - return this._InternalDate.getMonth() + 1; - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(DateTime.prototype, "Second", { - get: function () { - if (this._Kind === DateTimeKind.Utc) - return this._InternalDate.getUTCSeconds(); - return this._InternalDate.getSeconds(); - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(DateTime.prototype, "TimeOfDay", { - get: function () { - var id = this._InternalDate; - if (this._Kind === DateTimeKind.Utc) - return new TimeSpan(0, id.getUTCHours(), id.getUTCMinutes(), id.getUTCSeconds(), id.getUTCMilliseconds()); - return new TimeSpan(0, id.getHours(), id.getMinutes(), id.getSeconds(), id.getMilliseconds()); - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(DateTime.prototype, "Year", { - get: function () { - if (this._Kind === DateTimeKind.Utc) - return this._InternalDate.getUTCFullYear(); - return this._InternalDate.getFullYear(); - }, - enumerable: true, - configurable: true - }); - DateTime.prototype.AddYears = function (years) { - var newid = new Date(this._InternalDate.getTime()); - var wyears = Math.floor(years); - if (isNaN(wyears)) { - throw new ArgumentOutOfRangeException("years"); - } - if (this.Kind === DateTimeKind.Utc) { - newid.setUTCFullYear(newid.getUTCFullYear() + wyears); - } - else { - newid.setFullYear(newid.getFullYear() + wyears); - } - return new DateTime(newid, this.Kind); - }; - DateTime.prototype.AddMonths = function (months) { - var newid = new Date(this._InternalDate.getTime()); - var wmonths = Math.floor(months); - if (isNaN(wmonths)) { - throw new ArgumentOutOfRangeException("months"); - } - if (this.Kind === DateTimeKind.Utc) { - newid.setUTCMonth(newid.getUTCMonth() + wmonths); - } - else { - newid.setMonth(newid.getMonth() + wmonths); - } - return new DateTime(newid, this.Kind); - }; - DateTime.prototype.AddDays = function (value) { - return this.Add(TimeSpan.FromDays(value)); - }; - DateTime.prototype.AddHours = function (value) { - return this.Add(TimeSpan.FromHours(value)); - }; - DateTime.prototype.AddMinutes = function (value) { - return this.Add(TimeSpan.FromMinutes(value)); - }; - DateTime.prototype.AddSeconds = function (value) { - return this.Add(TimeSpan.FromSeconds(value)); - }; - DateTime.prototype.AddMilliseconds = function (value) { - return this.Add(TimeSpan.FromMilliseconds(value)); - }; - DateTime.prototype.Add = function (value) { - var newid = new Date(this._InternalDate.getTime()); - if (this.Kind === DateTimeKind.Utc) { - newid.setUTCDate(newid.getUTCDate() + value.Days); - newid.setUTCHours(newid.getUTCHours() + value.Hours); - newid.setUTCMinutes(newid.getUTCMinutes() + value.Minutes); - newid.setUTCSeconds(newid.getUTCSeconds() + value.Seconds); - newid.setUTCMilliseconds(newid.getUTCMilliseconds() + value.Milliseconds); - } - else { - newid.setDate(newid.getDate() + value.Days); - newid.setHours(newid.getHours() + value.Hours); - newid.setMinutes(newid.getMinutes() + value.Minutes); - newid.setSeconds(newid.getSeconds() + value.Seconds); - newid.setMilliseconds(newid.getMilliseconds() + value.Milliseconds); - } - return new DateTime(newid, this.Kind); - }; - DateTime.prototype.AddTicks = function (value) { - return new DateTime(this.Ticks + value, this.Kind); - }; - DateTime.prototype.Subtract = function (value) { - if (value instanceof DateTime) { - return new TimeSpan(this.Ticks - value.Ticks); - } - else if (value instanceof TimeSpan) { - return new DateTime(this.Ticks - value.Ticks, this.Kind); - } - return new DateTime(this.Ticks, this.Kind); - }; - DateTime.prototype.ToUniversalTime = function () { - if (this.Kind === DateTimeKind.Utc) - return new DateTime(this.Ticks, DateTimeKind.Utc); - var id = this._InternalDate; - return new DateTime(id.getUTCFullYear(), id.getUTCMonth() + 1, id.getUTCDate(), id.getUTCHours(), id.getUTCMinutes(), id.getUTCSeconds(), id.getUTCMilliseconds(), DateTimeKind.Utc); - }; - DateTime.prototype.toString = function (format) { - if (!format) - return Fayde.Localization.FormatSingle(this, "s"); - return Fayde.Localization.FormatSingle(this, format); - }; - DateTime.prototype.valueOf = function () { - return this.Ticks; - }; - DateTime.MAX_TICKS = 8640000000000000; - DateTime.MIN_TICKS = -8640000000000000; - return DateTime; -})(); -Fayde.CoreLibrary.addPrimitive(DateTime); -nullstone.registerTypeConverter(DateTime, function (value) { - if (value instanceof DateTime) - return value; - if (value instanceof Date) - return new DateTime(value); - if (typeof value === "string") - return new DateTime(Date.parse(value)); - if (typeof value === "number") - return new DateTime(value); - throw new Exception("Cannot parse DateTime value '" + value + "'"); -}); -/// -var Fayde; -(function (Fayde) { - var Localization; - (function (Localization) { - var Calendar = (function () { - function Calendar() { - this.ID = 1; - this.Eras = [1]; - this.EraNames = ["A.D."]; - this.CurrentEraValue = 1; - this.TwoDigitYearMax = 2029; - this.MaxSupportedDateTime = new DateTime(9999, 12, 31, 23, 59, 59, 999); - this.MinSupportedDateTime = new DateTime(1, 1, 1, 0, 0, 0, 0); - } - return Calendar; - })(); - Localization.Calendar = Calendar; - })(Localization = Fayde.Localization || (Fayde.Localization = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Localization; - (function (Localization) { - (function (CalendarWeekRule) { - CalendarWeekRule[CalendarWeekRule["FirstDay"] = 0] = "FirstDay"; - CalendarWeekRule[CalendarWeekRule["FirstFullWeek"] = 1] = "FirstFullWeek"; - CalendarWeekRule[CalendarWeekRule["FirstFourDayWeek"] = 2] = "FirstFourDayWeek"; - })(Localization.CalendarWeekRule || (Localization.CalendarWeekRule = {})); - var CalendarWeekRule = Localization.CalendarWeekRule; - var DateTimeFormatInfo = (function () { - function DateTimeFormatInfo() { - this.AbbreviatedDayNames = [ - "Sun", - "Mon", - "Tue", - "Wed", - "Thu", - "Fri", - "Sat" - ]; - this.AbbreviatedMonthGenitiveNames = [ - "Jan", - "Feb", - "Mar", - "Apr", - "May", - "Jun", - "Jul", - "Aug", - "Sep", - "Oct", - "Nov", - "Dec", - "" - ]; - this.AbbreviatedMonthNames = [ - "Jan", - "Feb", - "Mar", - "Apr", - "May", - "Jun", - "Jul", - "Aug", - "Sep", - "Oct", - "Nov", - "Dec" - ]; - this.AMDesignator = "AM"; - this.Calendar = new Localization.Calendar(); - this.CalendarWeekRule = CalendarWeekRule.FirstDay; - this.DateSeparator = "/"; - this.DayNames = [ - "Sunday", - "Monday", - "Tuesday", - "Wednesday", - "Thursday", - "Friday", - "Saturday" - ]; - this.FirstDayOfWeek = DayOfWeek.Sunday; - this.FullDateTimePattern = "dddd, MMMM dd, yyyy h:mm:ss tt"; - this.LongDatePattern = "dddd, MMMM dd, yyyy"; - this.LongTimePattern = "h:mm:ss tt"; - this.MonthDayPattern = "MMMM dd"; - this.MonthGenitiveNames = [ - "January", - "February", - "March", - "April", - "May", - "June", - "July", - "August", - "September", - "October", - "November", - "December", - "" - ]; - this.MonthNames = [ - "January", - "February", - "March", - "April", - "May", - "June", - "July", - "August", - "September", - "October", - "November", - "December" - ]; - this.PMDesignator = "PM"; - this.RFC1123Pattern = "ddd, dd MMM yyyy HH':'mm':'ss 'GMT'"; - this.ShortDatePattern = "M/d/yyyy"; - this.ShortestDayNames = [ - "Su", - "Mo", - "Tu", - "We", - "Th", - "Fr", - "Sa" - ]; - this.ShortTimePattern = "h:mm tt"; - this.SortableDateTimePattern = "yyyy'-'MM'-'dd'T'HH':'mm':'ss"; - this.TimeSeparator = ":"; - this.UniversalSortableDateTimePattern = "yyyy'-'MM'-'dd HH':'mm':'ss'Z'"; - this.YearMonthPattern = "MMMM, yyyy"; - this.HasForceTwoDigitYears = false; - } - DateTimeFormatInfo.prototype.GetEraName = function (era) { - if (era === 0) - era = this.Calendar.CurrentEraValue; - if (era < 0) - throw new ArgumentException("era"); - var eras = this.Calendar.EraNames; - if (era >= eras.length) - throw new ArgumentException("era"); - return eras[era]; - }; - DateTimeFormatInfo.ParseRepeatPattern = function (format, pos, patternChar) { - var length = format.length; - var index = pos + 1; - var code = patternChar.charCodeAt(0); - while (index < length && format.charCodeAt(index) === code) - ++index; - return index - pos; - }; - DateTimeFormatInfo.ParseNextChar = function (format, pos) { - if (pos >= format.length - 1) - return -1; - return format.charCodeAt(pos + 1); - }; - DateTimeFormatInfo.ParseQuoteString = function (format, pos, result) { - var length = format.length; - var num = pos; - var ch1 = format[pos++]; - var flag = false; - var special = String.fromCharCode(92); - while (pos < length) { - var ch2 = format[pos++]; - if (ch2 === ch1) { - flag = true; - break; - } - else if (ch2 === special) { - if (pos >= length) - throw new FormatException("Invalid format string."); - result.push(format[pos++]); - } - else - result.push(ch2); - } - if (flag) - return pos - num; - throw new FormatException("Bad quote: " + ch1); - }; - DateTimeFormatInfo.FormatDigits = function (sb, value, len, overrideLenLimit) { - if (!overrideLenLimit && len > 2) - len = 2; - var s = Math.floor(value).toString(); - while (s.length < len) - s = "0" + s; - sb.push(s); - }; - DateTimeFormatInfo.FormatMonth = function (month, repeat, info) { - if (repeat === 3) - return info.AbbreviatedMonthNames[month - 1]; - return info.MonthNames[month - 1]; - }; - DateTimeFormatInfo.FormatDayOfWeek = function (dayOfWeek, repeat, info) { - if (repeat === 3) - return info.AbbreviatedDayNames[dayOfWeek]; - return info.DayNames[dayOfWeek]; - }; - DateTimeFormatInfo.HebrewFormatDigits = function (sb, digits) { - console.warn("Hebrew not implemented"); - return digits.toString(); - }; - DateTimeFormatInfo.FormatHebrewMonthName = function (obj, month, repeat, info) { - console.warn("Hebrew not implemented"); - return DateTimeFormatInfo.FormatMonth(month, repeat, info); - if (month >= 7) - ++month; - if (repeat === 3) - return info.AbbreviatedMonthNames[month - 1]; - return info.MonthNames[month - 1]; - }; - DateTimeFormatInfo.Instance = new DateTimeFormatInfo(); - return DateTimeFormatInfo; - })(); - Localization.DateTimeFormatInfo = DateTimeFormatInfo; - })(Localization = Fayde.Localization || (Fayde.Localization = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Localization; - (function (Localization) { - function Format(format) { - var items = []; - for (var _i = 1; _i < arguments.length; _i++) { - items[_i - 1] = arguments[_i]; - } - var sb = []; - appendFormat(sb, format, items); - return sb.join(""); - } - Localization.Format = Format; - function FormatSingle(obj, format) { - return doFormattable(obj, format); - } - Localization.FormatSingle = FormatSingle; - function appendFormat(_this, format, args, provider) { - if (format == null || args == null) - throw new ArgumentNullException(format == null ? "format" : "args"); - var index1 = 0; - var length = format.length; - var ch = 0; - while (true) { - var flag = false; - var repeatCount = 0; - var breakout = false; - do { - if (index1 < length) { - ch = format.charCodeAt(index1); - ++index1; - if (ch === 125) { - if (index1 < length && format.charCodeAt(index1) === 125) - ++index1; - else - throw formatError(); - } - if (ch === 123) { - if (index1 >= length || format.charCodeAt(index1) !== 123) - --index1; - else { - breakout = true; - ++index1; - break; - } - } - else { - _this.push(String.fromCharCode(ch)); - breakout = true; - break; - } - } - if (index1 != length) { - var index2 = index1 + 1; - if (index2 === length || (ch = format.charCodeAt(index2)) < 48 || ch > 57) - throw formatError(); - var index3 = 0; - do { - index3 = index3 * 10 + ch - 48; - ++index2; - if (index2 == length) - throw formatError(); - ch = format.charCodeAt(index2); - } while (ch >= 48 && ch <= 57 && index3 < 1000000); - if (index3 >= args.length) - throw new FormatException("Index out of range."); - while (index2 < length && (ch = format.charCodeAt(index2)) === 32) - ++index2; - flag = false; - var num = 0; - if (ch === 44) { - ++index2; - while (index2 < length && format.charCodeAt(index2) === 32) - ++index2; - if (index2 == length) - throw formatError(); - ch = format.charCodeAt(index2); - if (ch === 45) { - flag = true; - ++index2; - if (index2 == length) - throw formatError(); - ch = format.charCodeAt(index2); - } - if (ch < 48 || ch > 57) - throw formatError(); - do { - num = num * 10 + ch - 48; - ++index2; - if (index2 == length) - throw formatError(); - ch = format.charCodeAt(index2); - } while (ch >= 48 && ch <= 57 && num < 1000000); - } - while (index2 < length && (ch = format.charCodeAt(index2)) === 32) - ++index2; - var obj = args[index3]; - var stringBuilder = null; - if (ch === 58) { - var index4 = index2 + 1; - while (true) { - if (index4 === length) - throw formatError(); - ch = format.charCodeAt(index4); - ++index4; - if (ch === 123) { - if (index4 < length && format.charCodeAt(index4) === 123) - ++index4; - else - throw formatError(); - } - else if (ch === 125) { - if (index4 < length && format.charCodeAt(index4) === 125) - ++index4; - else - break; - } - stringBuilder = stringBuilder || []; - stringBuilder.push(String.fromCharCode(ch)); - } - index2 = index4 - 1; - } - if (ch !== 125) - throw formatError(); - index1 = index2 + 1; - var str = formatItem(obj, stringBuilder, provider) || ""; - repeatCount = num - str.length; - if (!flag && repeatCount > 0) - pushMany(_this, ' ', repeatCount); - _this.push(str); - } - else - return; - } while (!flag || repeatCount <= 0); - if (!breakout) - pushMany(_this, ' ', repeatCount); - } - } - function formatItem(obj, stringBuilder, provider) { - var format1 = null; - var str = null; - if (str == null) { - if (format1 == null && stringBuilder != null) - format1 = stringBuilderToString(stringBuilder); - var formatted = format1 == null ? (obj == null ? "" : obj.toString()) : doFormattable(obj, format1, provider); - if (formatted !== undefined) - str = formatted; - } - return str; - } - function pushMany(arr, s, count) { - for (var i = count - 1; i >= 0; i--) { - arr.push(s); - } - } - function formatError() { - return new FormatException("Invalid format string."); - } - function stringBuilderToString(arr) { - return arr.join(""); - } - var formatters = []; - function RegisterFormattable(type, formatter) { - formatters[type] = formatter; - } - Localization.RegisterFormattable = RegisterFormattable; - function doFormattable(obj, format, provider) { - if (obj == null) - return undefined; - var type = obj.constructor; - var formatter = formatters[type]; - if (!formatter) - return undefined; - return formatter(obj, format, provider); - } - })(Localization = Fayde.Localization || (Fayde.Localization = {})); -})(Fayde || (Fayde = {})); -/// -/// -var Fayde; -(function (Fayde) { - var Localization; - (function (Localization) { - Localization.RegisterFormattable(DateTime, function (obj, format, provider) { - if (!format) - return undefined; - if (obj == null) - return null; - if (obj.constructor !== DateTime) - return null; - var res = tryStandardFormat(obj, format); - if (res != undefined) - return res; - return tryCustomFormat(obj, format, TimeSpan.MinValue); - }); - function tryStandardFormat(obj, format) { - if (format.length !== 1) - return undefined; - var ch = format[0]; - if (!ch) - return undefined; - var f = standardFormatters[ch]; - if (!f) - return undefined; - return f(obj); - } - var standardFormatters = []; - standardFormatters["d"] = function (obj) { - return [ - obj.Month.toString(), - obj.Day.toString(), - obj.Year.toString() - ].join("/"); - }; - standardFormatters["D"] = function (obj) { - var info = Localization.DateTimeFormatInfo.Instance; - return [ - info.DayNames[obj.DayOfWeek], - ", ", - info.MonthNames[obj.Month - 1], - " ", - obj.Day.toString(), - ", ", - obj.Year.toString() - ].join(""); - }; - standardFormatters["f"] = function (obj) { - return [ - standardFormatters["D"](obj), - standardFormatters["t"](obj) - ].join(" "); - }; - standardFormatters["F"] = function (obj) { - return [ - standardFormatters["D"](obj), - standardFormatters["T"](obj) - ].join(" "); - }; - standardFormatters["g"] = function (obj) { - return [ - standardFormatters["d"](obj), - standardFormatters["t"](obj) - ].join(" "); - }; - standardFormatters["G"] = function (obj) { - return [ - standardFormatters["d"](obj), - standardFormatters["T"](obj) - ].join(" "); - }; - standardFormatters["m"] = standardFormatters["M"] = function (obj) { - var info = Localization.DateTimeFormatInfo.Instance; - return [ - info.MonthNames[obj.Month - 1], - obj.Day - ].join(" "); - }; - standardFormatters["r"] = standardFormatters["R"] = function (obj) { - var utc = obj.ToUniversalTime(); - var info = Localization.DateTimeFormatInfo.Instance; - return [ - info.AbbreviatedDayNames[utc.DayOfWeek], - ", ", - utc.Day, - " ", - info.AbbreviatedMonthNames[utc.Month - 1], - " ", - utc.Year, - " ", - utc.Hour, - ":", - utc.Minute, - ":", - utc.Second, - " GMT" - ].join(""); - }; - standardFormatters["s"] = function (obj) { - return [ - obj.Year, - "-", - padded(obj.Month), - "-", - padded(obj.Day), - "T", - padded(obj.Hour), - ":", - padded(obj.Minute), - ":", - padded(obj.Second) - ].join(""); - }; - standardFormatters["t"] = function (obj) { - var info = Localization.DateTimeFormatInfo.Instance; - var hour = obj.Hour; - var desig = info.AMDesignator; - if (hour > 12) { - hour -= 12; - desig = info.PMDesignator; - } - return [ - hour.toString(), - ":", - obj.Minute.toString(), - " ", - desig - ].join(""); - }; - standardFormatters["T"] = function (obj) { - var info = Localization.DateTimeFormatInfo.Instance; - var hour = obj.Hour; - var desig = info.AMDesignator; - if (hour > 12) { - hour -= 12; - desig = info.PMDesignator; - } - return [ - hour.toString(), - ":", - obj.Minute.toString(), - ":", - obj.Second.toString(), - " ", - desig - ].join(""); - }; - standardFormatters["u"] = function (obj) { - return [ - obj.Year.toString(), - "-", - padded(obj.Month), - "-", - padded(obj.Day), - " ", - padded(obj.Hour), - ":", - padded(obj.Minute), - ":", - padded(obj.Second), - "Z" - ].join(""); - }; - standardFormatters["U"] = function (obj) { - var info = Localization.DateTimeFormatInfo.Instance; - var hour = obj.Hour; - var desig = info.AMDesignator; - if (hour > 12) { - hour -= 12; - desig = info.PMDesignator; - } - return [ - info.DayNames[obj.DayOfWeek], - ", ", - info.MonthNames[obj.Month - 1], - " ", - obj.Day.toString(), - ", ", - obj.Year.toString(), - " ", - hour.toString(), - ":", - obj.Minute.toString(), - ":", - obj.Second.toString(), - " ", - desig - ].join(""); - }; - standardFormatters["y"] = standardFormatters["Y"] = function (obj) { - var info = Localization.DateTimeFormatInfo.Instance; - return [ - info.MonthNames[obj.Month - 1], - obj.Year - ].join(", "); - }; - function padded(num) { - return num < 10 ? "0" + num.toString() : num.toString(); - } - function tryCustomFormat(obj, format, offset) { - var info = Localization.DateTimeFormatInfo.Instance; - var calendar = info.Calendar; - var stringBuilder = []; - var flag = calendar.ID === 8; - var timeOnly = true; - var index = 0; - var len; - while (index < format.length) { - var patternChar = format[index]; - switch (patternChar) { - case 'm': - len = Localization.DateTimeFormatInfo.ParseRepeatPattern(format, index, patternChar); - Localization.DateTimeFormatInfo.FormatDigits(stringBuilder, obj.Minute, len); - break; - case 's': - len = Localization.DateTimeFormatInfo.ParseRepeatPattern(format, index, patternChar); - Localization.DateTimeFormatInfo.FormatDigits(stringBuilder, obj.Second, len); - break; - case 't': - len = Localization.DateTimeFormatInfo.ParseRepeatPattern(format, index, patternChar); - if (len === 1) { - if (obj.Hour < 12) { - if (info.AMDesignator.length >= 1) { - stringBuilder.push(info.AMDesignator[0]); - break; - } - else - break; - } - else if (info.PMDesignator.length >= 1) { - stringBuilder.push(info.PMDesignator[0]); - break; - } - else - break; - } - else { - stringBuilder.push(obj.Hour < 12 ? info.AMDesignator : info.PMDesignator); - break; - } - case 'y': - var year = obj.Year; - len = Localization.DateTimeFormatInfo.ParseRepeatPattern(format, index, patternChar); - if (info.HasForceTwoDigitYears) - Localization.DateTimeFormatInfo.FormatDigits(stringBuilder, year, len <= 2 ? len : 2); - else if (calendar.ID === 8) - Localization.DateTimeFormatInfo.HebrewFormatDigits(stringBuilder, year); - else if (len <= 2) { - Localization.DateTimeFormatInfo.FormatDigits(stringBuilder, year % 100, len); - } - else { - stringBuilder.push(Localization.FormatSingle(year, "D" + len.toString())); - } - timeOnly = false; - break; - case 'z': - len = Localization.DateTimeFormatInfo.ParseRepeatPattern(format, index, patternChar); - console.warn("DateTime 'z' not implemented"); - break; - case 'K': - len = 1; - console.warn("DateTime 'K' not implemented"); - break; - case 'M': - len = Localization.DateTimeFormatInfo.ParseRepeatPattern(format, index, patternChar); - var month = obj.Month; - if (len <= 2) { - if (flag) - Localization.DateTimeFormatInfo.HebrewFormatDigits(stringBuilder, month); - else - Localization.DateTimeFormatInfo.FormatDigits(stringBuilder, month, len); - } - else if (flag) - stringBuilder.push(Localization.DateTimeFormatInfo.FormatHebrewMonthName(obj, month, len, info)); - else - stringBuilder.push(Localization.DateTimeFormatInfo.FormatMonth(month, len, info)); - timeOnly = false; - break; - case '\\': - var num2 = Localization.DateTimeFormatInfo.ParseNextChar(format, index); - if (num2 < 0) - throw formatError(); - stringBuilder.push(String.fromCharCode(num2)); - len = 2; - break; - case 'd': - len = Localization.DateTimeFormatInfo.ParseRepeatPattern(format, index, patternChar); - if (len <= 2) { - var dayOfMonth = obj.Day; - if (flag) - Localization.DateTimeFormatInfo.HebrewFormatDigits(stringBuilder, dayOfMonth); - else - Localization.DateTimeFormatInfo.FormatDigits(stringBuilder, dayOfMonth, len); - } - else { - var dayOfWeek = obj.DayOfWeek; - stringBuilder.push(Localization.DateTimeFormatInfo.FormatDayOfWeek(dayOfWeek, len, info)); - } - timeOnly = false; - break; - case 'f': - len = Localization.DateTimeFormatInfo.ParseRepeatPattern(format, index, patternChar); - if (len > 7) - throw formatError(); - stringBuilder.push(msf(obj.Millisecond, len)); - break; - case 'F': - len = Localization.DateTimeFormatInfo.ParseRepeatPattern(format, index, patternChar); - if (len > 7) - throw formatError(); - stringBuilder.push(msF(obj.Millisecond, len)); - break; - case 'g': - len = Localization.DateTimeFormatInfo.ParseRepeatPattern(format, index, patternChar); - stringBuilder.push(info.GetEraName(1)); - break; - case 'h': - len = Localization.DateTimeFormatInfo.ParseRepeatPattern(format, index, patternChar); - var num5 = obj.Hour % 12; - if (num5 === 0) - num5 = 12; - Localization.DateTimeFormatInfo.FormatDigits(stringBuilder, num5, len); - break; - case '/': - stringBuilder.push(info.DateSeparator); - len = 1; - break; - case ':': - stringBuilder.push(info.TimeSeparator); - len = 1; - break; - case 'H': - len = Localization.DateTimeFormatInfo.ParseRepeatPattern(format, index, patternChar); - Localization.DateTimeFormatInfo.FormatDigits(stringBuilder, obj.Hour, len); - break; - case '"': - case '\'': - len = Localization.DateTimeFormatInfo.ParseQuoteString(format, index, stringBuilder); - break; - case '%': - var num6 = Localization.DateTimeFormatInfo.ParseNextChar(format, index); - if (num6 < 0 || num6 === 37) - throw formatError(); - stringBuilder.push(tryCustomFormat(obj, String.fromCharCode(num6), offset)); - len = 2; - break; - default: - stringBuilder.push(patternChar); - len = 1; - break; - } - index += len; - } - return stringBuilder.join(""); - } - function msf(ms, len) { - var s = Math.abs(ms).toString(); - while (s.length < 3) - s = "0" + s; - s += "0000"; - return s.substr(0, len); - } - function msF(ms, len) { - var f = msf(ms, len); - var end = f.length - 1; - for (; end >= 0; end--) { - if (f[end] !== "0") - break; - } - return f.slice(0, end + 1); - } - function formatError() { - return new FormatException("Invalid format string."); - } - })(Localization = Fayde.Localization || (Fayde.Localization = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Localization; - (function (Localization) { - var NumberFormatInfo = (function () { - function NumberFormatInfo() { - this.CurrencyDecimalDigits = 2; - this.CurrencyDecimalSeparator = "."; - this.CurrencyGroupSeparator = ","; - this.CurrencyGroupSizes = [3]; - this.CurrencyNegativePattern = 0; - this.CurrencyPositivePattern = 0; - this.CurrencySymbol = "$"; - this.NaNSymbol = "NaN"; - this.NegativeInfinitySymbol = "-Infinity"; - this.PositiveInfinitySymbol = "Infinity"; - this.NegativeSign = "-"; - this.PositiveSign = "+"; - this.NumberDecimalDigits = 2; - this.NumberDecimalSeparator = "."; - this.NumberGroupSeparator = ","; - this.NumberGroupSizes = [3]; - this.NumberNegativePattern = 1; - this.PercentDecimalDigits = 2; - this.PercentDecimalSeparator = "."; - this.PercentGroupSeparator = ","; - this.PercentGroupSizes = [3]; - this.PercentNegativePattern = 0; - this.PercentPositivePattern = 0; - this.PercentSymbol = "%"; - this.PerMilleSymbol = "‰"; - } - NumberFormatInfo.prototype.FormatCurrency = function (num, precision) { - if (precision == null) - precision = this.CurrencyDecimalDigits; - var rawnum = this.FormatRawNumber(Math.abs(num), precision, this.CurrencyDecimalSeparator, this.CurrencyGroupSeparator, this.CurrencyGroupSizes); - if (num < 0) { - switch (this.CurrencyNegativePattern) { - case 0: - default: - return "(" + this.CurrencySymbol + rawnum + ")"; - case 1: - return [this.NegativeSign, this.CurrencySymbol, rawnum].join(""); - case 2: - return [this.CurrencySymbol, this.NegativeSign, rawnum].join(""); - case 3: - return [this.CurrencySymbol, rawnum, this.NegativeSign].join(""); - case 4: - return "(" + rawnum + this.CurrencySymbol + ")"; - case 5: - return [this.NegativeSign, rawnum, this.CurrencySymbol].join(""); - case 6: - return [rawnum, this.NegativeSign, this.CurrencySymbol].join(""); - case 7: - return [rawnum, this.CurrencySymbol, this.NegativeSign].join(""); - case 8: - return [this.NegativeSign, rawnum, " ", this.CurrencySymbol].join(""); - case 9: - return [this.NegativeSign, this.CurrencySymbol, " ", rawnum].join(""); - case 10: - return [rawnum, " ", this.CurrencySymbol, this.NegativeSign].join(""); - case 11: - return [this.CurrencySymbol, " ", rawnum, this.NegativeSign].join(""); - case 12: - return [this.CurrencySymbol, " ", this.NegativeSign, rawnum].join(""); - case 13: - return [rawnum, this.NegativeSign, " ", this.CurrencySymbol].join(""); - case 14: - return "(" + this.CurrencySymbol + " " + rawnum + ")"; - case 15: - return "(" + rawnum + " " + this.CurrencySymbol + ")"; - } - } - else { - switch (this.CurrencyPositivePattern) { - case 0: - default: - return [this.CurrencySymbol, rawnum].join(""); - case 1: - return [rawnum, this.CurrencySymbol].join(""); - case 2: - return [this.CurrencySymbol, rawnum].join(" "); - case 3: - return [rawnum, this.CurrencySymbol].join(" "); - } - } - }; - NumberFormatInfo.prototype.FormatNumber = function (num, precision, ignoreGroupSep) { - if (precision == null) - precision = this.NumberDecimalDigits; - var rawnum = this.FormatRawNumber(Math.abs(num), precision, this.NumberDecimalSeparator, ignoreGroupSep ? "" : this.NumberGroupSeparator, this.NumberGroupSizes); - if (num >= 0) - return rawnum; - switch (this.NumberNegativePattern) { - case 0: - return "(" + rawnum + ")"; - case 1: - default: - return [this.NegativeSign, rawnum].join(""); - case 2: - return [this.NegativeSign, rawnum].join(" "); - case 3: - return [rawnum, this.NegativeSign].join(""); - case 4: - return [rawnum, this.NegativeSign].join(" "); - } - }; - NumberFormatInfo.prototype.FormatPercent = function (num, precision) { - if (precision == null) - precision = this.PercentDecimalDigits; - var rawnum = this.FormatRawNumber(Math.abs(num * 100), precision, this.PercentDecimalSeparator, this.PercentGroupSeparator, this.PercentGroupSizes); - var sym = this.PercentSymbol; - if (num < 0) { - var sign = this.NegativeSign; - switch (this.PercentNegativePattern) { - case 0: - default: - return [sign, rawnum, " ", sym].join(""); - case 1: - return [sign, rawnum, sym].join(""); - case 2: - return [sign, sym, rawnum].join(""); - case 3: - return [sym, sign, rawnum].join(""); - case 4: - return [sym, rawnum, sign].join(""); - case 5: - return [rawnum, sign, sym].join(""); - case 6: - return [rawnum, sym, sign].join(""); - case 7: - return [sign, sym, " ", rawnum].join(""); - case 8: - return [sign, sym, " ", rawnum].join(""); - case 9: - return [sym, " ", rawnum, sign].join(""); - case 10: - return [sym, " ", sign, rawnum].join(""); - case 11: - return [rawnum, sign, " ", sym].join(""); - } - } - else { - switch (this.PercentPositivePattern) { - case 0: - default: - return [rawnum, this.PercentSymbol].join(" "); - case 1: - return [rawnum, this.PercentSymbol].join(""); - case 2: - return [this.PercentSymbol, rawnum].join(""); - case 3: - return [this.PercentSymbol, rawnum].join(" "); - } - } - }; - NumberFormatInfo.prototype.FormatGeneral = function (num, precision) { - if (precision == null) - precision = 6; - var sig = sigDigits(Math.abs(num), precision); - var rawnum = sig.toString(); - if (num >= 0) - return rawnum; - return this.NegativeSign + rawnum; - }; - NumberFormatInfo.prototype.FormatDecimal = function (num, precision) { - var rawnum = this.FormatRawNumber(Math.abs(num), 0, "", "", null); - var d = padded(rawnum, precision || 0, true); - if (num < 0) - d = this.NegativeSign + d; - return d; - }; - NumberFormatInfo.prototype.FormatExponential = function (num, precision) { - if (precision == null) - precision = 6; - var e = num.toExponential(precision); - var tokens = e.split("e+"); - return tokens[0] + "e" + this.PositiveSign + padded(tokens[1], 3, true); - }; - NumberFormatInfo.prototype.FormatHexadecimal = function (num, precision) { - if (precision == null) - precision = 2; - num = parseInt(num); - if (num >= 0) - return padded(num.toString(16), precision, true); - var us = (Math.pow(2, 32) + num).toString(16); - if (precision >= us.length) - return padded(us, precision, true); - var start = 0; - while (us.length - start > precision && us[start] === "f") { - start++; - } - return us.substr(start); - }; - NumberFormatInfo.prototype.FormatRawNumber = function (num, precision, decSep, groupSep, groupSizes) { - var rounded = round(num, precision); - var ip = Math.floor(rounded).toString(); - var fp = rounded.toString().split('.')[1]; - var pfp = padded(fp, precision); - if (!pfp) - return grouped(ip, groupSep); - return [ - grouped(ip, groupSep), - pfp - ].join(decSep); - }; - NumberFormatInfo.Instance = new NumberFormatInfo(); - return NumberFormatInfo; - })(); - Localization.NumberFormatInfo = NumberFormatInfo; - function grouped(s, sep) { - if (s.length < 4) - return s; - var offset = s.length % 3; - if (offset !== 0) { - offset = 3 - offset; - s = new Array(offset + 1).join("0") + s; - } - return s.match(/\d\d\d/g).join(sep).substr(offset); - } - function padded(s, precision, front) { - if (!s) - return new Array(precision + 1).join("0"); - if (s.length > precision) - return front ? s : s.substr(0, precision); - if (front) - return new Array(precision - s.length + 1).join("0") + s; - return s + new Array(precision - s.length + 1).join("0"); - } - function round(num, places) { - var factor = Math.pow(10, places); - return Math.round(num * factor) / factor; - } - function sigDigits(num, digits) { - var n = num.toString(); - var index = n.indexOf("."); - if (index > -1) - return round(num, digits - index); - return round(num, digits - n.length); - } - })(Localization = Fayde.Localization || (Fayde.Localization = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Localization; - (function (Localization) { - Localization.RegisterFormattable(Number, function (obj, format, provider) { - if (obj == null) - return null; - if (obj.constructor !== Number) - return null; - var res = tryStandardFormat(obj, format); - if (res != undefined) - return res; - return format; - }); - function tryStandardFormat(obj, format) { - var ch = format[0]; - if (!ch) - return undefined; - var lowerch = ch.toLowerCase(); - if (lowerch < "a" || lowerch > "z") - return undefined; - var prec = null; - if (format.length > 1) { - var prec = parseInt(format.substr(1)); - if (isNaN(prec)) - return undefined; - } - var f = standardFormatters[ch] || standardFormatters[lowerch]; - if (!f) - return undefined; - return f(obj, prec); - } - var standardFormatters = []; - standardFormatters["c"] = function (obj, precision) { - return Localization.NumberFormatInfo.Instance.FormatCurrency(obj, precision); - }; - standardFormatters["d"] = function (obj, precision) { - return Localization.NumberFormatInfo.Instance.FormatDecimal(obj, precision); - }; - standardFormatters["E"] = function (obj, precision) { - return Localization.NumberFormatInfo.Instance.FormatExponential(obj, precision).toUpperCase(); - }; - standardFormatters["e"] = function (obj, precision) { - return Localization.NumberFormatInfo.Instance.FormatExponential(obj, precision); - }; - standardFormatters["f"] = function (obj, precision) { - return Localization.NumberFormatInfo.Instance.FormatNumber(obj, precision, true); - }; - standardFormatters["g"] = function (obj, precision) { - return Localization.NumberFormatInfo.Instance.FormatGeneral(obj, precision); - }; - standardFormatters["n"] = function (obj, precision) { - return Localization.NumberFormatInfo.Instance.FormatNumber(obj, precision); - }; - standardFormatters["p"] = function (obj, precision) { - return Localization.NumberFormatInfo.Instance.FormatPercent(obj, precision); - }; - standardFormatters["X"] = function (obj, precision) { - return Localization.NumberFormatInfo.Instance.FormatHexadecimal(obj, precision).toUpperCase(); - }; - standardFormatters["x"] = function (obj, precision) { - return Localization.NumberFormatInfo.Instance.FormatHexadecimal(obj, precision); - }; - })(Localization = Fayde.Localization || (Fayde.Localization = {})); -})(Fayde || (Fayde = {})); -/// -/// -var Fayde; -(function (Fayde) { - var Localization; - (function (Localization) { - Localization.RegisterFormattable(TimeSpan, function (obj, format, provider) { - if (!format) - return undefined; - if (obj == null) - return null; - if (obj.constructor !== TimeSpan) - return null; - var res = tryStandardFormat(obj, format); - if (res != undefined) - return res; - return tryCustomFormat(obj, format); - }); - function tryStandardFormat(obj, format) { - if (format.length !== 1) - return undefined; - var ch = format[0]; - if (!ch) - return undefined; - var f = standardFormatters[ch]; - if (!f) - return undefined; - return f(obj); - } - var standardFormatters = []; - standardFormatters["c"] = standardFormatters["t"] = standardFormatters["T"] = function (obj) { - var info = Localization.DateTimeFormatInfo.Instance; - var s = [ - padded(obj.Hours), - padded(obj.Minutes), - padded(obj.Seconds) - ].join(info.TimeSeparator); - var days = obj.Days; - if (days) - s = Math.abs(days) + "." + s; - var ms = obj.Milliseconds; - if (ms) - s += "." + msf(ms, 7); - if (obj.Ticks < 0) - s = "-" + s; - return s; - }; - standardFormatters["g"] = function (obj) { - var info = Localization.DateTimeFormatInfo.Instance; - var s = [ - Math.abs(obj.Hours), - padded(obj.Minutes), - padded(obj.Seconds) - ].join(info.TimeSeparator); - var days = obj.Days; - if (days) - s = Math.abs(days) + ":" + s; - var ms = obj.Milliseconds; - if (ms) - s += "." + msF(ms, 7); - if (obj.Ticks < 0) - s = "-" + s; - return s; - }; - standardFormatters["G"] = function (obj) { - var info = Localization.DateTimeFormatInfo.Instance; - var s = [ - Math.abs(obj.Days), - padded(obj.Hours), - padded(obj.Minutes), - padded(obj.Seconds) - ].join(info.TimeSeparator); - var ms = obj.Milliseconds; - s += "." + msf(ms, 7); - if (obj.Ticks < 0) - s = "-" + s; - return s; - }; - function tryCustomFormat(obj, format) { - var days = Math.abs(obj.Days); - var hours = Math.abs(obj.Hours); - var minutes = Math.abs(obj.Minutes); - var seconds = Math.abs(obj.Seconds); - var ms = Math.abs(obj.Milliseconds); - var len; - var pos = 0; - var stringBuilder = []; - while (pos < format.length) { - var patternChar = format[pos]; - switch (patternChar) { - case 'm': - len = Localization.DateTimeFormatInfo.ParseRepeatPattern(format, pos, patternChar); - if (len > 2) - throw formatError(); - Localization.DateTimeFormatInfo.FormatDigits(stringBuilder, minutes, len); - break; - case 's': - len = Localization.DateTimeFormatInfo.ParseRepeatPattern(format, pos, patternChar); - if (len > 2) - throw formatError(); - Localization.DateTimeFormatInfo.FormatDigits(stringBuilder, seconds, len); - break; - case '\\': - var num7 = Localization.DateTimeFormatInfo.ParseNextChar(format, pos); - if (num7 < 0) - throw formatError(); - stringBuilder.push(String.fromCharCode(num7)); - len = 2; - break; - case 'd': - len = Localization.DateTimeFormatInfo.ParseRepeatPattern(format, pos, patternChar); - if (len > 8) - throw formatError(); - Localization.DateTimeFormatInfo.FormatDigits(stringBuilder, days, len, true); - break; - case 'f': - len = Localization.DateTimeFormatInfo.ParseRepeatPattern(format, pos, patternChar); - if (len > 7) - throw formatError(); - stringBuilder.push(msf(ms, len)); - break; - case 'F': - len = Localization.DateTimeFormatInfo.ParseRepeatPattern(format, pos, patternChar); - if (len > 7) - throw formatError(); - stringBuilder.push(msF(ms, len)); - break; - case 'h': - len = Localization.DateTimeFormatInfo.ParseRepeatPattern(format, pos, patternChar); - if (len > 2) - throw formatError(); - Localization.DateTimeFormatInfo.FormatDigits(stringBuilder, hours, len); - break; - case '"': - case '\'': - len = Localization.DateTimeFormatInfo.ParseQuoteString(format, pos, stringBuilder); - break; - case '%': - var num9 = Localization.DateTimeFormatInfo.ParseNextChar(format, pos); - if (num9 < 0 || num9 === 37) - throw formatError(); - stringBuilder.push(tryCustomFormat(obj, String.fromCharCode(num9))); - len = 2; - break; - default: - throw formatError(); - } - pos += len; - } - return stringBuilder.join(""); - } - function padded(num) { - var s = Math.abs(num).toString(); - return (s.length === 1) ? "0" + s : s; - } - function msf(ms, len) { - var s = Math.abs(ms).toString(); - while (s.length < 3) - s = "0" + s; - s += "0000"; - return s.substr(0, len); - } - function msF(ms, len) { - var f = msf(ms, len); - var end = f.length - 1; - for (; end >= 0; end--) { - if (f[end] !== "0") - break; - } - return f.slice(0, end + 1); - } - function formatError() { - return new FormatException("Invalid format string."); - } - })(Localization = Fayde.Localization || (Fayde.Localization = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var MVVM; - (function (MVVM) { - function AutoModel(typeOrModel) { - var obj = getApplier(typeOrModel); - var props = []; - var validators = []; - var applier = { - Notify: function () { - var properties = []; - for (var _i = 0; _i < arguments.length; _i++) { - properties[_i - 0] = arguments[_i]; - } - for (var i = 0; i < properties.length; i++) { - var prop = properties[i]; - if (typeof prop === "string") - props.push(prop); - else if (Array.isArray(prop)) - props = props.concat(prop); - } - return applier; - }, - Validate: function (propertyName) { - var validations = []; - for (var _i = 1; _i < arguments.length; _i++) { - validations[_i - 1] = arguments[_i]; - } - var cur = validators[propertyName]; - if (!cur) - validators[propertyName] = validations; - else - validators[propertyName] = cur.concat(validations); - return applier; - }, - Finish: function () { - for (var i = 0, uprops = unique(props), len = uprops.length; i < len; i++) { - var prop = uprops[i]; - applyProperty(obj, prop, validators[prop]); - } - return obj; - } - }; - return applier; - } - MVVM.AutoModel = AutoModel; - function getApplier(typeOrModel) { - if (typeof typeOrModel === "function") - return typeOrModel.prototype; - return typeOrModel; - } - function unique(arr) { - var re = []; - for (var i = 0; i < arr.length; i++) { - var cur = arr[i]; - if (re.indexOf(cur) > -1) - continue; - re.push(cur); - } - return re; - } - function applyProperty(obj, propertyName, validations) { - var initial = obj[propertyName]; - var backingName = "_$" + propertyName + "$_"; - obj[backingName] = initial; - if (validations && validations.length > 0) { - Object.defineProperty(obj, propertyName, { - get: function () { - return this[backingName]; - }, - set: function (value) { - this[backingName] = value; - doValidate(this, value, propertyName, validations); - this.OnPropertyChanged(propertyName); - } - }); - } - else { - Object.defineProperty(obj, propertyName, { - get: function () { - return this[backingName]; - }, - set: function (value) { - this[backingName] = value; - this.OnPropertyChanged(propertyName); - } - }); - } - } - function doValidate(entity, value, propertyName, validations) { - var errs = validate(entity, value, propertyName, validations); - entity.ClearErrors && entity.ClearErrors(propertyName); - if (!entity.AddError) - return; - for (var i = 0; i < errs.length; i++) { - entity.AddError(propertyName, errs[i]); - } - } - function validate(entity, value, propertyName, validations) { - var all = []; - for (var i = 0; i < validations.length; i++) { - var func = validations[i]; - var errors = func(value, propertyName, entity); - if (errors) - all = all.concat(errors); - } - return all; - } - })(MVVM = Fayde.MVVM || (Fayde.MVVM = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var MVVM; - (function (MVVM) { - function NotifyProperties(type, propNames) { - var len = propNames.length; - for (var i = 0; i < len; i++) { - (function () { - var propName = propNames[i]; - var backingName = "$" + propName + "$"; - Object.defineProperty(type.prototype, propName, { - get: function () { return this[backingName]; }, - set: function (value) { - this[backingName] = value; - this.OnPropertyChanged(propName); - } - }); - })(); - } - } - MVVM.NotifyProperties = NotifyProperties; - var ObservableObject = (function () { - function ObservableObject() { - this.PropertyChanged = new nullstone.Event(); - } - ObservableObject.prototype.OnPropertyChanged = function (propertyName) { - this.PropertyChanged.raise(this, new Fayde.PropertyChangedEventArgs(propertyName)); - }; - return ObservableObject; - })(); - MVVM.ObservableObject = ObservableObject; - Fayde.CoreLibrary.add(ObservableObject); - })(MVVM = Fayde.MVVM || (Fayde.MVVM = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var MVVM; - (function (MVVM) { - var ViewModelBase = (function (_super) { - __extends(ViewModelBase, _super); - function ViewModelBase() { - _super.apply(this, arguments); - } - return ViewModelBase; - })(MVVM.ObservableObject); - MVVM.ViewModelBase = ViewModelBase; - Fayde.CoreLibrary.add(ViewModelBase); - })(MVVM = Fayde.MVVM || (Fayde.MVVM = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var MVVM; - (function (MVVM) { - var DialogViewModel = (function (_super) { - __extends(DialogViewModel, _super); - function DialogViewModel(settings) { - var _this = this; - _super.call(this); - this.IsOpen = false; - this.OverlayDataContext = null; - this.RequestOpenCommand = new MVVM.RelayCommand(function (par) { return _this.RequestOpen_Execute(par); }, function (par) { return _this.RequestOpen_CanExecute(par); }); - this.ClosedCommand = new MVVM.RelayCommand(function (par) { return _this.Closed_Execute(par); }); - if (settings) { - this.AcceptAction = settings.AcceptAction; - this.CompleteAction = settings.CompleteAction; - this.ViewModelBuilder = settings.ViewModelBuilder; - this.CanOpen = settings.CanOpen; - } - } - DialogViewModel.prototype.Closed_Execute = function (parameter) { - if (parameter.Result === true) { - this.AcceptAction && this.AcceptAction(parameter.Data || undefined); - } - this.CompleteAction && this.CompleteAction(parameter); - }; - DialogViewModel.prototype.RequestOpen_Execute = function (parameter) { - if (this.ViewModelBuilder != null) { - var vm = this.ViewModelBuilder(parameter); - if (vm == null) - return; - this.OverlayDataContext = vm; - } - this.IsOpen = true; - }; - DialogViewModel.prototype.RequestOpen_CanExecute = function (parameter) { - return !this.CanOpen || this.CanOpen(parameter); - }; - return DialogViewModel; - })(MVVM.ViewModelBase); - MVVM.DialogViewModel = DialogViewModel; - MVVM.NotifyProperties(DialogViewModel, ["IsOpen", "OverlayDataContext", "RequestOpenCommand", "ClosedCommand"]); - })(MVVM = Fayde.MVVM || (Fayde.MVVM = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var MVVM; - (function (MVVM) { - var Entity = (function () { - function Entity() { - this.PropertyChanged = new nullstone.Event(); - this._Errors = {}; - this.ErrorsChanged = new nullstone.Event(); - } - Entity.prototype.OnPropertyChanged = function (propertyName) { - this.PropertyChanged.raise(this, new Fayde.PropertyChangedEventArgs(propertyName)); - }; - Object.defineProperty(Entity.prototype, "HasErrors", { - get: function () { - return Object.keys(this._Errors).length > 0; - }, - enumerable: true, - configurable: true - }); - Entity.prototype.AddError = function (propertyName, errorMessage) { - var errs = this._Errors[propertyName]; - if (!errs) { - this._Errors[propertyName] = [errorMessage]; - } - else { - errs.push(errorMessage); - } - this.ErrorsChanged.raise(this, new Fayde.Data.DataErrorsChangedEventArgs(propertyName)); - }; - Entity.prototype.RemoveError = function (propertyName, errorMessage) { - var errs = this._Errors[propertyName]; - if (!errs) - return; - var index = errs.indexOf(errorMessage); - if (index >= 0) - errs.splice(index, 1); - if (errs.length < 1) - delete this._Errors[propertyName]; - this.ErrorsChanged.raise(this, new Fayde.Data.DataErrorsChangedEventArgs(propertyName)); - }; - Entity.prototype.ClearErrors = function (propertyName) { - var errs = this._Errors[propertyName]; - if (!errs) - return; - delete this._Errors[propertyName]; - this.ErrorsChanged.raise(this, new Fayde.Data.DataErrorsChangedEventArgs(propertyName)); - }; - Entity.prototype.GetErrors = function (propertyName) { - var errs = this._Errors[propertyName]; - if (!errs) - return null; - return nullstone.IEnumerable_.fromArray(errs); - }; - Entity.ApplyTo = function (model) { - var out = model; - var proto = Entity.prototype; - Object.defineProperties(out, { - "_Errors": { value: {} }, - "HasErrors": { - get: function () { - return Object.keys(this._Errors).length > 0; - } - } - }); - out.PropertyChanged = new nullstone.Event(); - out.OnPropertyChanged = proto.OnPropertyChanged.bind(out); - out.ErrorsChanged = new nullstone.Event(); - out.AddError = proto.AddError.bind(out); - out.RemoveError = proto.RemoveError.bind(out); - out.ClearErrors = proto.ClearErrors.bind(out); - out.GetErrors = proto.GetErrors.bind(out); - Fayde.Data.INotifyDataErrorInfo_.mark(out); - return out; - }; - return Entity; - })(); - MVVM.Entity = Entity; - Fayde.Data.INotifyDataErrorInfo_.mark(Entity); - })(MVVM = Fayde.MVVM || (Fayde.MVVM = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Navigation; - (function (Navigation) { - var Route = (function () { - function Route(view, hashParams, dataContext) { - this.View = view; - this.HashParams = hashParams; - this.DataContext = dataContext; - } - return Route; - })(); - Navigation.Route = Route; - Fayde.CoreLibrary.add(Route); - })(Navigation = Fayde.Navigation || (Fayde.Navigation = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var MVVM; - (function (MVVM) { - MVVM.IViewModelProvider_ = new nullstone.Interface("IViewModelProvider"); - MVVM.IViewModelProvider_.is = function (o) { - return o && typeof o.ResolveViewModel === "function"; - }; - })(MVVM = Fayde.MVVM || (Fayde.MVVM = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var MVVM; - (function (MVVM) { - var RelayCommand = (function () { - function RelayCommand(execute, canExecute) { - this.CanExecuteChanged = new nullstone.Event(); - if (execute) - this.Execute = execute; - if (canExecute) - this.CanExecute = canExecute; - } - RelayCommand.prototype.Execute = function (parameter) { }; - RelayCommand.prototype.CanExecute = function (parameter) { return true; }; - RelayCommand.prototype.ForceCanExecuteChanged = function () { - this.CanExecuteChanged.raise(this, null); - }; - return RelayCommand; - })(); - MVVM.RelayCommand = RelayCommand; - Fayde.CoreLibrary.add(RelayCommand); - nullstone.addTypeInterfaces(RelayCommand, Fayde.Input.ICommand_); - })(MVVM = Fayde.MVVM || (Fayde.MVVM = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Markup; - (function (Markup) { - Markup.IEventFilter_ = new nullstone.Interface("IEventFilter"); - var EventBinding = (function () { - function EventBinding() { - this.CommandPath = null; - this.Command = null; - this.CommandParameter = null; - this.CommandBinding = null; - this.CommandParameterBinding = null; - this.Filter = null; - } - EventBinding.prototype.init = function (val) { - this.CommandPath = val; - }; - EventBinding.prototype.transmute = function (os) { - this.$$coerce(); - Object.freeze(this); - return new Fayde.EventBindingExpression(this); - }; - EventBinding.prototype.$$coerce = function () { - if (this.Command) { - this.CommandBinding = this.Command.ParentBinding.Clone(); - this.Command = null; - } - if (this.CommandPath) { - this.CommandBinding = new Fayde.Data.Binding(this.CommandPath); - } - if (this.CommandParameter) { - this.CommandParameterBinding = this.CommandParameter.ParentBinding.Clone(); - this.CommandParameter = null; - } - }; - return EventBinding; - })(); - Markup.EventBinding = EventBinding; - Fayde.CoreLibrary.add(EventBinding); - })(Markup = Fayde.Markup || (Fayde.Markup = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Markup; - (function (Markup) { - function Resolve(uri, excludeUri) { - return Markup.Retrieve(uri) - .tap(function (xm) { - var co = collector.create(excludeUri); - return Promise.all([ - xm.resolve(Fayde.TypeManager, co.collect, co.exclude), - co.resolve() - ]); - }); - } - Markup.Resolve = Resolve; - var collector; - (function (collector) { - function create(excludeUri) { - var rduris = []; - var coll = { - collect: function (ownerUri, ownerName, propName, val) { - if (ownerUri === Fayde.XMLNS && ownerName === "ResourceDictionary" && propName === "Source") - rduris.push(val); - }, - exclude: function (uri, name) { - return false; - }, - resolve: function () { - return Promise.all(rduris.map(Resolve)); - } - }; - if (!!excludeUri) - coll.exclude = function (uri, name) { return excludeUri.toString() === uri; }; - return coll; - } - collector.create = create; - })(collector || (collector = {})); - })(Markup = Fayde.Markup || (Fayde.Markup = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Markup; - (function (Markup) { - var XamlMarkup = nullstone.markup.xaml.XamlMarkup; - function Retrieve(uri) { - var xm = XamlMarkup.create(uri); - if (xm.isLoaded) - return Promise.resolve(xm); - return xm.loadAsync(); - } - Markup.Retrieve = Retrieve; - })(Markup = Fayde.Markup || (Fayde.Markup = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Markup; - (function (Markup) { - var StaticResource = (function () { - function StaticResource() { - } - StaticResource.prototype.init = function (val) { - this.ResourceKey = val; - }; - StaticResource.prototype.transmute = function (os) { - var res = this.$$resources; - this.$$resources = undefined; - var key = this.ResourceKey; - var rd; - for (var i = os.length - 1; i >= 0; i--) { - var cur = os[i]; - if (cur instanceof Fayde.FrameworkElement) { - rd = cur.ReadLocalValue(Fayde.FrameworkElement.ResourcesProperty); - if (rd === DependencyProperty.UnsetValue) - rd = undefined; - } - else if (cur instanceof Fayde.Application) { - rd = cur.Resources; - } - else if (cur instanceof Fayde.ResourceDictionary) { - rd = cur; - } - var o = rd ? rd.Get(key) : undefined; - if (o !== undefined) - return o; - } - for (var i = res ? (res.length - 1) : -1; i >= 0; i--) { - var o = res[i].Get(key); - if (o !== undefined) - return o; - } - if (this.$$app) { - var rd = this.$$app.Resources; - if (rd) { - var o = rd.Get(key); - if (o !== undefined) - return o; - } - } - throw new Error("Could not resolve StaticResource: '" + key + "'."); - }; - StaticResource.prototype.setContext = function (app, resources) { - this.$$app = app; - this.$$resources = resources; - }; - return StaticResource; - })(); - Markup.StaticResource = StaticResource; - Fayde.CoreLibrary.add(StaticResource); - })(Markup = Fayde.Markup || (Fayde.Markup = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Media; - (function (Media) { - var Brush = (function (_super) { - __extends(Brush, _super); - function Brush() { - _super.call(this); - this._CachedBounds = null; - this._CachedBrush = null; - Fayde.XamlNode.SetShareable(this.XamlNode); - } - Brush.prototype.isTransparent = function () { - return false; - }; - Brush.prototype.setupBrush = function (ctx, bounds) { - if (this._CachedBrush && this._CachedBounds && minerva.Rect.isEqual(this._CachedBounds, bounds)) - return; - this._CachedBounds = new minerva.Rect(bounds.x, bounds.y, bounds.width, bounds.height); - var transform = this.Transform; - if (transform) { - var transformedBounds = transform.TransformBounds(bounds); - var raw = transform.Value._Raw; - var tmpBrush = this.CreateBrush(ctx, bounds); - var fillExtents = new minerva.Rect(); - minerva.Rect.copyTo(bounds, fillExtents); - minerva.Rect.grow(fillExtents, raw[4], raw[5], 0, 0); - var tmpCanvas = document.createElement("canvas"); - tmpCanvas.width = Math.max(transformedBounds.width, bounds.width); - tmpCanvas.height = Math.max(transformedBounds.height, bounds.height); - var tmpCtx = tmpCanvas.getContext("2d"); - tmpCtx.setTransform(raw[0], raw[1], raw[2], raw[3], raw[4], raw[5]); - tmpCtx.fillStyle = tmpBrush; - tmpCtx.fillRect(fillExtents.x, fillExtents.y, fillExtents.width, fillExtents.height); - this._CachedBrush = ctx.createPattern(tmpCanvas, "no-repeat"); - } - else { - this._CachedBrush = this.CreateBrush(ctx, bounds); - } - }; - Brush.prototype.toHtml5Object = function () { - return this._CachedBrush; - }; - Brush.prototype.CreateBrush = function (ctx, bounds) { - return undefined; - }; - Brush.prototype.InvalidateBrush = function () { - this._CachedBrush = null; - this._CachedBounds = null; - Fayde.Incite(this); - }; - Brush.TransformProperty = DependencyProperty.RegisterCore("Transform", function () { return Media.Transform; }, Brush); - return Brush; - })(Fayde.DependencyObject); - Media.Brush = Brush; - Fayde.CoreLibrary.add(Brush); - var reactions; - (function (reactions) { - Fayde.DPReaction(Brush.TransformProperty, function (brush, ov, nv) { return brush.InvalidateBrush(); }); - })(reactions || (reactions = {})); - })(Media = Fayde.Media || (Fayde.Media = {})); -})(Fayde || (Fayde = {})); -/// -/// -var Fayde; -(function (Fayde) { - var Media; - (function (Media) { - var Geometry = (function (_super) { - __extends(Geometry, _super); - function Geometry() { - _super.call(this); - this._Path = null; - this._LocalBounds = new minerva.Rect(); - this._LocalBounds.width = Number.NEGATIVE_INFINITY; - this._LocalBounds.height = Number.NEGATIVE_INFINITY; - } - Geometry.prototype.GetBounds = function (pars) { - var compute = minerva.Rect.isEmpty(this._LocalBounds); - if (!this._Path) { - this._Path = this._Build(); - compute = true; - } - if (compute) - minerva.Rect.copyTo(this.ComputePathBounds(pars), this._LocalBounds); - var bounds = new minerva.Rect(); - minerva.Rect.copyTo(this._LocalBounds, bounds); - var transform = this.Transform; - if (transform != null) - bounds = transform.TransformBounds(bounds); - return bounds; - }; - Geometry.prototype.Draw = function (ctx) { - if (!this._Path) - return; - var raw = ctx.raw; - var transform = this.Transform; - if (transform != null) { - raw.save(); - ctx.apply(transform.Value._Raw); - } - this._Path.draw(raw); - if (transform != null) - raw.restore(); - }; - Geometry.prototype.ComputePathBounds = function (pars) { - if (!this._Path) - this._Path = this._Build(); - if (!this._Path) - return new minerva.Rect(); - return this._Path.calcBounds(pars); - }; - Geometry.prototype.InvalidateGeometry = function () { - this._Path = null; - var lb = this._LocalBounds; - lb.x = lb.y = 0; - lb.width = lb.height = Number.NEGATIVE_INFINITY; - Fayde.Incite(this); - }; - Geometry.prototype._Build = function () { - return undefined; - }; - Geometry.prototype.Serialize = function () { - var path = this._Path; - if (!path) - return; - return path.Serialize(); - }; - Geometry.TransformProperty = DependencyProperty.Register("Transform", function () { return Media.Transform; }, Geometry); - return Geometry; - })(Fayde.DependencyObject); - Media.Geometry = Geometry; - Fayde.CoreLibrary.add(Geometry); - var reactions; - (function (reactions) { - Fayde.DPReaction(Geometry.TransformProperty, function (geom, ov, nv) { return geom.InvalidateGeometry(); }); - })(reactions || (reactions = {})); - var GeometryCollection = (function (_super) { - __extends(GeometryCollection, _super); - function GeometryCollection() { - _super.apply(this, arguments); - } - GeometryCollection.prototype.AddingToCollection = function (value, error) { - var _this = this; - if (!_super.prototype.AddingToCollection.call(this, value, error)) - return false; - Fayde.ReactTo(value, this, function () { return Fayde.Incite(_this); }); - Fayde.Incite(this); - return true; - }; - GeometryCollection.prototype.RemovedFromCollection = function (value, isValueSafe) { - _super.prototype.RemovedFromCollection.call(this, value, isValueSafe); - Fayde.UnreactTo(value, this); - Fayde.Incite(this); - }; - return GeometryCollection; - })(Fayde.XamlObjectCollection); - Media.GeometryCollection = GeometryCollection; - Fayde.CoreLibrary.add(GeometryCollection); - })(Media = Fayde.Media || (Fayde.Media = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Media; - (function (Media) { - var EllipseGeometry = (function (_super) { - __extends(EllipseGeometry, _super); - function EllipseGeometry() { - _super.apply(this, arguments); - } - EllipseGeometry.prototype._Build = function () { - var rx = this.RadiusX; - var ry = this.RadiusY; - var center = this.Center; - var x = center ? center.x : 0.0; - var y = center ? center.y : 0.0; - var p = new minerva.path.Path(); - p.ellipse(x - rx, y - ry, rx * 2.0, ry * 2.0); - return p; - }; - EllipseGeometry.CenterProperty = DependencyProperty.Register("Center", function () { return Point; }, EllipseGeometry, undefined, function (d, args) { return d.InvalidateGeometry(); }); - EllipseGeometry.RadiusXProperty = DependencyProperty.Register("RadiusX", function () { return Number; }, EllipseGeometry, 0.0, function (d, args) { return d.InvalidateGeometry(); }); - EllipseGeometry.RadiusYProperty = DependencyProperty.Register("RadiusY", function () { return Number; }, EllipseGeometry, 0.0, function (d, args) { return d.InvalidateGeometry(); }); - return EllipseGeometry; - })(Media.Geometry); - Media.EllipseGeometry = EllipseGeometry; - Fayde.CoreLibrary.add(EllipseGeometry); - })(Media = Fayde.Media || (Fayde.Media = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Media; - (function (Media) { - var GeneralTransform = (function (_super) { - __extends(GeneralTransform, _super); - function GeneralTransform() { - _super.apply(this, arguments); - } - GeneralTransform.prototype.Transform = function (p) { - return new Point(p.x, p.y); - }; - GeneralTransform.prototype.TransformBounds = function (r) { - return r; - }; - GeneralTransform.prototype.TryTransform = function (inPoint, outPoint) { - return false; - }; - return GeneralTransform; - })(Fayde.DependencyObject); - Media.GeneralTransform = GeneralTransform; - Fayde.CoreLibrary.add(GeneralTransform); - var InternalTransform = (function (_super) { - __extends(InternalTransform, _super); - function InternalTransform(raw) { - _super.call(this); - this._Raw = raw; - } - Object.defineProperty(InternalTransform.prototype, "Inverse", { - get: function () { - return new InternalTransform(mat4.inverse(this._Raw, mat4.create())); - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(InternalTransform.prototype, "Value", { - get: function () { - return Media.Matrix3D.FromRaw(this._Raw); - }, - enumerable: true, - configurable: true - }); - InternalTransform.prototype.getRaw = function () { - return this._Raw; - }; - InternalTransform.prototype.Transform = function (p) { - var pi = vec4.create(p.x, p.y, 0.0, 1.0); - var po = vec4.create(0, 0, 0, 0); - mat4.transformVec4(this._Raw, pi, po); - if (po[3] !== 0.0) { - var w = 1.0 / po[3]; - return new Point(po[0] * w, po[1] * w); - } - return new Point(NaN, NaN); - }; - InternalTransform.prototype.TransformBounds = function (r) { - if (!r) - return undefined; - var copy = new minerva.Rect(); - minerva.Rect.copyTo(r, copy); - minerva.Rect.transform4(copy, this._Raw); - return copy; - }; - InternalTransform.prototype.CreateMatrix3DProjection = function () { - var projection = new Media.Matrix3DProjection(); - projection.ProjectionMatrix = this.Inverse.Value; - return projection; - }; - return InternalTransform; - })(GeneralTransform); - Media.InternalTransform = InternalTransform; - Fayde.CoreLibrary.add(InternalTransform); - })(Media = Fayde.Media || (Fayde.Media = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Shapes; - (function (Shapes) { - (function (ShapeFlags) { - ShapeFlags[ShapeFlags["None"] = 0] = "None"; - ShapeFlags[ShapeFlags["Empty"] = 1] = "Empty"; - ShapeFlags[ShapeFlags["Normal"] = 2] = "Normal"; - ShapeFlags[ShapeFlags["Degenerate"] = 4] = "Degenerate"; - ShapeFlags[ShapeFlags["Radii"] = 8] = "Radii"; - })(Shapes.ShapeFlags || (Shapes.ShapeFlags = {})); - var ShapeFlags = Shapes.ShapeFlags; - (function (PenLineCap) { - PenLineCap[PenLineCap["Flat"] = 0] = "Flat"; - PenLineCap[PenLineCap["Square"] = 1] = "Square"; - PenLineCap[PenLineCap["Round"] = 2] = "Round"; - PenLineCap[PenLineCap["Triangle"] = 3] = "Triangle"; - })(Shapes.PenLineCap || (Shapes.PenLineCap = {})); - var PenLineCap = Shapes.PenLineCap; - Fayde.CoreLibrary.addEnum(PenLineCap, "PenLineCap"); - (function (PenLineJoin) { - PenLineJoin[PenLineJoin["Miter"] = 0] = "Miter"; - PenLineJoin[PenLineJoin["Bevel"] = 1] = "Bevel"; - PenLineJoin[PenLineJoin["Round"] = 2] = "Round"; - })(Shapes.PenLineJoin || (Shapes.PenLineJoin = {})); - var PenLineJoin = Shapes.PenLineJoin; - Fayde.CoreLibrary.addEnum(PenLineJoin, "PenLineJoin"); - (function (FillRule) { - FillRule[FillRule["EvenOdd"] = 0] = "EvenOdd"; - FillRule[FillRule["NonZero"] = 1] = "NonZero"; - })(Shapes.FillRule || (Shapes.FillRule = {})); - var FillRule = Shapes.FillRule; - Fayde.CoreLibrary.addEnum(FillRule, "FillRule"); - (function (SweepDirection) { - SweepDirection[SweepDirection["Counterclockwise"] = 0] = "Counterclockwise"; - SweepDirection[SweepDirection["Clockwise"] = 1] = "Clockwise"; - })(Shapes.SweepDirection || (Shapes.SweepDirection = {})); - var SweepDirection = Shapes.SweepDirection; - Fayde.CoreLibrary.addEnum(SweepDirection, "SweepDirection"); - })(Shapes = Fayde.Shapes || (Fayde.Shapes = {})); -})(Fayde || (Fayde = {})); -/// -/// -var Fayde; -(function (Fayde) { - var Media; - (function (Media) { - var GeometryGroup = (function (_super) { - __extends(GeometryGroup, _super); - function GeometryGroup() { - var _this = this; - _super.call(this); - var coll = GeometryGroup.ChildrenProperty.Initialize(this); - coll.AttachTo(this); - Fayde.ReactTo(coll, this, function () { return _this.InvalidateGeometry(); }); - } - GeometryGroup.prototype.ComputePathBounds = function (pars) { - var bounds = new minerva.Rect(); - var cbounds; - for (var enumerator = this.Children.getEnumerator(); enumerator.moveNext();) { - cbounds = enumerator.current.GetBounds(pars); - if (cbounds.width <= 0 && cbounds.height <= 0) - continue; - if (bounds.width <= 0 && bounds.height <= 0) - minerva.Rect.copyTo(cbounds, bounds); - else - minerva.Rect.union(bounds, cbounds); - } - return bounds; - }; - GeometryGroup.prototype.Draw = function (ctx) { - var transform = this.Transform; - if (transform != null) { - ctx.save(); - ctx.apply(transform.Value._Raw); - } - var enumerator = this.Children.getEnumerator(); - while (enumerator.moveNext()) { - enumerator.current.Draw(ctx); - } - if (transform != null) - ctx.restore(); - }; - GeometryGroup.FillRulleProperty = DependencyProperty.Register("FillRule", function () { return new Fayde.Enum(Fayde.Shapes.FillRule); }, GeometryGroup, Fayde.Shapes.FillRule.EvenOdd); - GeometryGroup.ChildrenProperty = DependencyProperty.RegisterImmutable("Children", function () { return Media.GeometryCollection; }, GeometryGroup); - return GeometryGroup; - })(Media.Geometry); - Media.GeometryGroup = GeometryGroup; - Fayde.CoreLibrary.add(GeometryGroup); - })(Media = Fayde.Media || (Fayde.Media = {})); -})(Fayde || (Fayde = {})); -/// -/// -var Fayde; -(function (Fayde) { - var Media; - (function (Media) { - var GradientBrush = (function (_super) { - __extends(GradientBrush, _super); - function GradientBrush() { - var _this = this; - _super.call(this); - var coll = GradientBrush.GradientStopsProperty.Initialize(this); - coll.AttachTo(this); - Fayde.ReactTo(coll, this, function () { return _this.InvalidateBrush(); }); - } - GradientBrush.prototype.CreateBrush = function (ctx, bounds) { - var spread = this.SpreadMethod; - switch (spread) { - case Media.GradientSpreadMethod.Pad: - default: - return this.CreatePad(ctx, bounds); - case Media.GradientSpreadMethod.Repeat: - return this.CreateRepeat(ctx, bounds); - case Media.GradientSpreadMethod.Reflect: - return this.CreateReflect(ctx, bounds); - } - }; - GradientBrush.prototype.CreatePad = function (ctx, bounds) { }; - GradientBrush.prototype.CreateRepeat = function (ctx, bounds) { }; - GradientBrush.prototype.CreateReflect = function (ctx, bounds) { }; - GradientBrush.GradientStopsProperty = DependencyProperty.RegisterImmutable("GradientStops", function () { return Media.GradientStopCollection; }, GradientBrush); - GradientBrush.MappingModeProperty = DependencyProperty.Register("MappingMode", function () { return new Fayde.Enum(Media.BrushMappingMode); }, GradientBrush, Media.BrushMappingMode.RelativeToBoundingBox, function (d, args) { return d.InvalidateBrush(); }); - GradientBrush.SpreadMethodProperty = DependencyProperty.Register("SpreadMethod", function () { return new Fayde.Enum(Media.GradientSpreadMethod); }, GradientBrush, Media.GradientSpreadMethod.Pad, function (d, args) { return d.InvalidateBrush(); }); - return GradientBrush; - })(Media.Brush); - Media.GradientBrush = GradientBrush; - Fayde.CoreLibrary.add(GradientBrush); - Fayde.Markup.Content(GradientBrush, GradientBrush.GradientStopsProperty); - })(Media = Fayde.Media || (Fayde.Media = {})); -})(Fayde || (Fayde = {})); -/// -/// -var Fayde; -(function (Fayde) { - var Media; - (function (Media) { - var GradientStop = (function (_super) { - __extends(GradientStop, _super); - function GradientStop() { - _super.apply(this, arguments); - } - GradientStop.prototype.toString = function () { - return this.Color.toString() + " @ " + this.Offset.toString(); - }; - GradientStop.ColorProperty = DependencyProperty.Register("Color", function () { return Color; }, GradientStop, undefined, Fayde.Incite); - GradientStop.OffsetProperty = DependencyProperty.Register("Offset", function () { return Number; }, GradientStop, 0.0, Fayde.Incite); - return GradientStop; - })(Fayde.DependencyObject); - Media.GradientStop = GradientStop; - Fayde.CoreLibrary.add(GradientStop); - var GradientStopCollection = (function (_super) { - __extends(GradientStopCollection, _super); - function GradientStopCollection() { - _super.apply(this, arguments); - } - GradientStopCollection.prototype.AddingToCollection = function (value, error) { - var _this = this; - if (!_super.prototype.AddingToCollection.call(this, value, error)) - return false; - Fayde.ReactTo(value, this, function () { return Fayde.Incite(_this); }); - Fayde.Incite(this); - return true; - }; - GradientStopCollection.prototype.RemovedFromCollection = function (value, isValueSafe) { - if (!_super.prototype.RemovedFromCollection.call(this, value, isValueSafe)) - return false; - Fayde.UnreactTo(value, this); - Fayde.Incite(this); - }; - GradientStopCollection.prototype.getPaddedEnumerable = function () { - var minOffset = Number.MAX_VALUE; - var min = null; - var maxOffset = Number.MIN_VALUE; - var max = null; - for (var en = this.getEnumerator(); en.moveNext();) { - if (en.current.Offset < minOffset) { - min = en.current; - minOffset = en.current.Offset; - } - if (en.current.Offset > maxOffset) { - max = en.current; - maxOffset = en.current.Offset; - } - } - var arr = this._ht.slice(0); - if (!!min) - arr.unshift({ Offset: 0, Color: min.Color }); - if (!!max) - arr.push({ Offset: 1, Color: max.Color }); - return nullstone.IEnumerable_.fromArray(arr); - }; - return GradientStopCollection; - })(Fayde.XamlObjectCollection); - Media.GradientStopCollection = GradientStopCollection; - Fayde.CoreLibrary.add(GradientStopCollection); - })(Media = Fayde.Media || (Fayde.Media = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Media; - (function (Media) { - var LineGeometry = (function (_super) { - __extends(LineGeometry, _super); - function LineGeometry() { - _super.apply(this, arguments); - } - LineGeometry.prototype._Build = function () { - var p1 = this.StartPoint; - var p2 = this.EndPoint; - var p = new minerva.path.Path(); - p.move(p1.x, p1.y); - p.line(p2.x, p2.y); - return p; - }; - LineGeometry.StartPointProperty = DependencyProperty.Register("StartPoint", function () { return Point; }, LineGeometry, undefined, function (d, args) { return d.InvalidateGeometry(); }); - LineGeometry.EndPointProperty = DependencyProperty.Register("EndPoint", function () { return Point; }, LineGeometry, undefined, function (d, args) { return d.InvalidateGeometry(); }); - return LineGeometry; - })(Media.Geometry); - Media.LineGeometry = LineGeometry; - Fayde.CoreLibrary.add(LineGeometry); - })(Media = Fayde.Media || (Fayde.Media = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Media; - (function (Media) { - var LinearGradientBrush = (function (_super) { - __extends(LinearGradientBrush, _super); - function LinearGradientBrush() { - _super.apply(this, arguments); - } - LinearGradientBrush.prototype.CreatePad = function (ctx, bounds) { - var data = this._GetPointData(bounds); - var grd = ctx.createLinearGradient(data.start.x, data.start.y, data.end.x, data.end.y); - for (var en = this.GradientStops.getEnumerator(); en.moveNext();) { - var stop = en.current; - grd.addColorStop(stop.Offset, stop.Color.toString()); - } - return grd; - }; - LinearGradientBrush.prototype.CreateRepeat = function (ctx, bounds) { - var data = this._GetPointData(bounds); - return this.CreateInterpolated(ctx, Media.LinearGradient.createRepeatInterpolator(data.start, data.end, bounds)); - }; - LinearGradientBrush.prototype.CreateReflect = function (ctx, bounds) { - var data = this._GetPointData(bounds); - return this.CreateInterpolated(ctx, Media.LinearGradient.createReflectInterpolator(data.start, data.end, bounds)); - }; - LinearGradientBrush.prototype.CreateInterpolated = function (ctx, interpolator) { - var grd = ctx.createLinearGradient(interpolator.x0, interpolator.y0, interpolator.x1, interpolator.y1); - var allStops = this.GradientStops.getPaddedEnumerable(); - for (; interpolator.step();) { - for (var en = allStops.getEnumerator(); en.moveNext();) { - var stop = en.current; - var offset = interpolator.interpolate(stop.Offset); - if (offset >= 0 && offset <= 1) - grd.addColorStop(offset, stop.Color.toString()); - } - } - return grd; - }; - LinearGradientBrush.prototype._GetPointData = function (bounds) { - var start = this.StartPoint; - start = !start ? new Point(0.0, 0.0) : start.Clone(); - var end = this.EndPoint; - end = !end ? new Point(1.0, 1.0) : end.Clone(); - if (this.MappingMode !== Media.BrushMappingMode.Absolute) { - start.x *= bounds.width; - start.y *= bounds.height; - end.x *= bounds.width; - end.y *= bounds.height; - } - start.x += bounds.x; - start.y += bounds.y; - end.x += bounds.x; - end.y += bounds.y; - return { - start: start, - end: end - }; - }; - LinearGradientBrush.prototype.toString = function () { - var ser = []; - for (var en = this.GradientStops.getEnumerator(); en.moveNext();) { - ser.push(en.current.toString()); - } - return "LinearGradientBrush(" + this.StartPoint.toString() + " --> " + this.EndPoint.toString() + " [" + ser.toString() + "])"; - }; - LinearGradientBrush.StartPointProperty = DependencyProperty.RegisterCore("StartPoint", function () { return Point; }, LinearGradientBrush, undefined, function (d, args) { return d.InvalidateBrush(); }); - LinearGradientBrush.EndPointProperty = DependencyProperty.RegisterCore("EndPoint", function () { return Point; }, LinearGradientBrush, undefined, function (d, args) { return d.InvalidateBrush(); }); - return LinearGradientBrush; - })(Media.GradientBrush); - Media.LinearGradientBrush = LinearGradientBrush; - Fayde.CoreLibrary.add(LinearGradientBrush); - })(Media = Fayde.Media || (Fayde.Media = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Media; - (function (Media) { - var Matrix = (function () { - function Matrix(raw) { - this._Inverse = null; - this._Raw = raw || mat3.identity(); - } - Object.defineProperty(Matrix, "Identity", { - get: function () { - return new Matrix(mat3.identity()); - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(Matrix.prototype, "M11", { - get: function () { return this._Raw[0]; }, - set: function (val) { this._Raw[0] = val; this._OnChanged(); }, - enumerable: true, - configurable: true - }); - Object.defineProperty(Matrix.prototype, "M12", { - get: function () { return this._Raw[1]; }, - set: function (val) { this._Raw[1] = val; this._OnChanged(); }, - enumerable: true, - configurable: true - }); - Object.defineProperty(Matrix.prototype, "M21", { - get: function () { return this._Raw[2]; }, - set: function (val) { this._Raw[2] = val; this._OnChanged(); }, - enumerable: true, - configurable: true - }); - Object.defineProperty(Matrix.prototype, "M22", { - get: function () { return this._Raw[3]; }, - set: function (val) { this._Raw[3] = val; this._OnChanged(); }, - enumerable: true, - configurable: true - }); - Object.defineProperty(Matrix.prototype, "OffsetX", { - get: function () { return this._Raw[4]; }, - set: function (val) { this._Raw[4] = val; this._OnChanged(); }, - enumerable: true, - configurable: true - }); - Object.defineProperty(Matrix.prototype, "OffsetY", { - get: function () { return this._Raw[5]; }, - set: function (val) { this._Raw[5] = val; this._OnChanged(); }, - enumerable: true, - configurable: true - }); - Object.defineProperty(Matrix.prototype, "Inverse", { - get: function () { - var inverse = this._Inverse; - if (!inverse) { - inverse = new Matrix(); - inverse._Raw = mat3.inverse(this._Raw, mat3.identity()); - if (!inverse._Raw) - return undefined; - this._Inverse = inverse; - } - return inverse; - }, - enumerable: true, - configurable: true - }); - Matrix.prototype._OnChanged = function () { - this._Inverse = null; - Fayde.Incite(this); - }; - Matrix.prototype.Clone = function () { - if (!this._Raw) - return new Matrix(); - return new Matrix(mat3.create(this._Raw)); - }; - return Matrix; - })(); - Media.Matrix = Matrix; - Fayde.CoreLibrary.add(Matrix); - })(Media = Fayde.Media || (Fayde.Media = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Media; - (function (Media) { - var Matrix3D = (function () { - function Matrix3D() { - this._Inverse = null; - this._Listeners = []; - } - Matrix3D.FromRaw = function (raw) { - var r = new Matrix3D(); - r._Raw = raw; - return r; - }; - Object.defineProperty(Matrix3D.prototype, "M11", { - get: function () { return this._Raw[0]; }, - set: function (val) { this._Raw[0] = val; this._OnChanged(); }, - enumerable: true, - configurable: true - }); - Object.defineProperty(Matrix3D.prototype, "M12", { - get: function () { return this._Raw[1]; }, - set: function (val) { this._Raw[1] = val; this._OnChanged(); }, - enumerable: true, - configurable: true - }); - Object.defineProperty(Matrix3D.prototype, "M13", { - get: function () { return this._Raw[2]; }, - set: function (val) { this._Raw[2] = val; this._OnChanged(); }, - enumerable: true, - configurable: true - }); - Object.defineProperty(Matrix3D.prototype, "M14", { - get: function () { return this._Raw[3]; }, - set: function (val) { this._Raw[3] = val; this._OnChanged(); }, - enumerable: true, - configurable: true - }); - Object.defineProperty(Matrix3D.prototype, "M21", { - get: function () { return this._Raw[4]; }, - set: function (val) { this._Raw[4] = val; this._OnChanged(); }, - enumerable: true, - configurable: true - }); - Object.defineProperty(Matrix3D.prototype, "M22", { - get: function () { return this._Raw[5]; }, - set: function (val) { this._Raw[5] = val; this._OnChanged(); }, - enumerable: true, - configurable: true - }); - Object.defineProperty(Matrix3D.prototype, "M23", { - get: function () { return this._Raw[6]; }, - set: function (val) { this._Raw[6] = val; this._OnChanged(); }, - enumerable: true, - configurable: true - }); - Object.defineProperty(Matrix3D.prototype, "M24", { - get: function () { return this._Raw[7]; }, - set: function (val) { this._Raw[7] = val; this._OnChanged(); }, - enumerable: true, - configurable: true - }); - Object.defineProperty(Matrix3D.prototype, "M31", { - get: function () { return this._Raw[8]; }, - set: function (val) { this._Raw[8] = val; this._OnChanged(); }, - enumerable: true, - configurable: true - }); - Object.defineProperty(Matrix3D.prototype, "M32", { - get: function () { return this._Raw[9]; }, - set: function (val) { this._Raw[9] = val; this._OnChanged(); }, - enumerable: true, - configurable: true - }); - Object.defineProperty(Matrix3D.prototype, "M33", { - get: function () { return this._Raw[10]; }, - set: function (val) { this._Raw[10] = val; this._OnChanged(); }, - enumerable: true, - configurable: true - }); - Object.defineProperty(Matrix3D.prototype, "M34", { - get: function () { return this._Raw[11]; }, - set: function (val) { this._Raw[11] = val; this._OnChanged(); }, - enumerable: true, - configurable: true - }); - Object.defineProperty(Matrix3D.prototype, "OffsetX", { - get: function () { return this._Raw[12]; }, - set: function (val) { this._Raw[12] = val; this._OnChanged(); }, - enumerable: true, - configurable: true - }); - Object.defineProperty(Matrix3D.prototype, "OffsetY", { - get: function () { return this._Raw[13]; }, - set: function (val) { this._Raw[13] = val; this._OnChanged(); }, - enumerable: true, - configurable: true - }); - Object.defineProperty(Matrix3D.prototype, "OffsetZ", { - get: function () { return this._Raw[14]; }, - set: function (val) { this._Raw[14] = val; this._OnChanged(); }, - enumerable: true, - configurable: true - }); - Object.defineProperty(Matrix3D.prototype, "M44", { - get: function () { return this._Raw[15]; }, - set: function (val) { this._Raw[15] = val; this._OnChanged(); }, - enumerable: true, - configurable: true - }); - Object.defineProperty(Matrix3D.prototype, "Inverse", { - get: function () { - var inverse = this._Inverse; - if (!inverse) { - inverse = new Matrix3D(); - inverse._Raw = mat4.inverse(this._Raw, mat4.identity()); - if (!inverse._Raw) - return undefined; - this._Inverse = inverse; - } - return inverse; - }, - enumerable: true, - configurable: true - }); - Matrix3D.prototype.Listen = function (func) { - var listeners = this._Listeners; - var listener = { - Callback: func, - Detach: function () { - var index = listeners.indexOf(listener); - if (index > -1) - listeners.splice(index, 1); - } - }; - listeners.push(listener); - return listener; - }; - Matrix3D.prototype._OnChanged = function () { - this._Inverse = null; - var listeners = this._Listeners; - var len = listeners.length; - for (var i = 0; i < len; i++) { - listeners[i].Callback(this); - } - }; - return Matrix3D; - })(); - Media.Matrix3D = Matrix3D; - Fayde.CoreLibrary.add(Matrix3D); - })(Media = Fayde.Media || (Fayde.Media = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Media; - (function (Media) { - var Projection = (function (_super) { - __extends(Projection, _super); - function Projection() { - _super.apply(this, arguments); - this._ProjectionMatrix = null; - this._ObjectWidth = 0; - this._ObjectHeight = 0; - } - Object.defineProperty(Projection.prototype, "ObjectWidth", { - get: function () { - return this._ObjectWidth; - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(Projection.prototype, "ObjectHeight", { - get: function () { - return this._ObjectHeight; - }, - enumerable: true, - configurable: true - }); - Projection.prototype.setObjectSize = function (objectWidth, objectHeight) { - var w = Math.max(objectWidth, 1.0); - var h = Math.max(objectHeight, 1.0); - if (w !== this._ObjectWidth && h !== this._ObjectHeight) { - this._ObjectWidth = w; - this._ObjectHeight = h; - this._ProjectionMatrix = null; - } - }; - Projection.prototype.getDistanceFromXYPlane = function () { - return NaN; - }; - Projection.prototype.getTransform = function () { - var m3 = this._ProjectionMatrix; - if (!m3) - m3 = this._ProjectionMatrix = this.CreateProjectionMatrix(); - if (m3) - return mat4.create(m3._Raw); - return mat4.identity(); - }; - Projection.prototype.CreateProjectionMatrix = function () { - return null; - }; - Projection.prototype.InvalidateProjection = function () { - this._ProjectionMatrix = null; - Fayde.Incite(this); - }; - return Projection; - })(Fayde.DependencyObject); - Media.Projection = Projection; - Fayde.CoreLibrary.add(Projection); - })(Media = Fayde.Media || (Fayde.Media = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Media; - (function (Media) { - var Matrix3DProjection = (function (_super) { - __extends(Matrix3DProjection, _super); - function Matrix3DProjection() { - _super.apply(this, arguments); - } - Matrix3DProjection.prototype.CreateProjectionMatrix = function () { return this.ProjectionMatrix; }; - Matrix3DProjection.ProjectionMatrixProperty = DependencyProperty.Register("ProjectionMatrix", function () { return Media.Matrix3D; }, Matrix3DProjection, undefined, function (d, args) { return d.InvalidateProjection(); }); - return Matrix3DProjection; - })(Media.Projection); - Media.Matrix3DProjection = Matrix3DProjection; - Fayde.CoreLibrary.add(Matrix3DProjection); - })(Media = Fayde.Media || (Fayde.Media = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Media; - (function (Media) { - function ParseGeometry(val) { - return (new MediaParser(val)).ParseGeometryImpl(); - } - Media.ParseGeometry = ParseGeometry; - function ParseShapePoints(val) { - return (new MediaParser(val)).ParseShapePoints(); - } - Media.ParseShapePoints = ParseShapePoints; - var MediaParser = (function () { - function MediaParser(str) { - this.index = 0; - this.str = str; - this.len = str.length; - } - MediaParser.prototype.ParseGeometryImpl = function () { - var cp = new Point(); - var cp1, cp2, cp3; - var start = new Point(); - var fillRule = Fayde.Shapes.FillRule.EvenOdd; - var cbz = false; - var qbz = false; - var cbzp = new Point(); - var qbzp = new Point(); - var path = new minerva.path.Path(); - while (this.index < this.len) { - var c; - while (this.index < this.len && (c = this.str.charAt(this.index)) === ' ') { - this.index++; - } - this.index++; - var relative = false; - switch (c) { - case 'f': - case 'F': - c = this.str.charAt(this.index); - if (c === '0') - fillRule = Fayde.Shapes.FillRule.EvenOdd; - else if (c === '1') - fillRule = Fayde.Shapes.FillRule.NonZero; - else - return null; - this.index++; - c = this.str.charAt(this.index); - break; - case 'm': - relative = true; - case 'M': - cp1 = this.ParsePoint(); - if (cp1 == null) - break; - if (relative) { - cp1.x += cp.x; - cp1.y += cp.y; - } - path.move(cp1.x, cp1.y); - start.x = cp.x = cp1.x; - start.y = cp.y = cp1.y; - this.Advance(); - while (this.MorePointsAvailable()) { - if ((cp1 = this.ParsePoint()) == null) - break; - if (relative) { - cp1.x += cp.x; - cp1.y += cp.y; - } - path.line(cp1.x, cp1.y); - } - cp.x = cp1.x; - cp.y = cp1.y; - cbz = qbz = false; - break; - case 'l': - relative = true; - case 'L': - while (this.MorePointsAvailable()) { - if ((cp1 = this.ParsePoint()) == null) - break; - if (relative) { - cp1.x += cp.x; - cp1.y += cp.y; - } - path.line(cp1.x, cp1.y); - cp.x = cp1.x; - cp.y = cp1.y; - this.Advance(); - } - cbz = qbz = false; - break; - case 'h': - relative = true; - case 'H': - var x = this.ParseDouble(); - if (x == null) - break; - if (relative) - x += cp.x; - cp = new Point(x, cp.y); - path.line(cp.x, cp.y); - cbz = qbz = false; - break; - case 'v': - relative = true; - case 'V': - var y = this.ParseDouble(); - if (y == null) - break; - if (relative) - y += cp.y; - cp = new Point(cp.x, y); - path.line(cp.x, cp.y); - cbz = qbz = false; - break; - case 'c': - relative = true; - case 'C': - while (this.MorePointsAvailable()) { - if ((cp1 = this.ParsePoint()) == null) - break; - if (relative) { - cp1.x += cp.x; - cp1.y += cp.y; - } - this.Advance(); - if ((cp2 = this.ParsePoint()) == null) - break; - if (relative) { - cp2.x += cp.x; - cp2.y += cp.y; - } - this.Advance(); - if ((cp3 = this.ParsePoint()) == null) - break; - if (relative) { - cp3.x += cp.x; - cp3.y += cp.y; - } - this.Advance(); - path.cubicBezier(cp1.x, cp1.y, cp2.x, cp2.y, cp3.x, cp3.y); - cp1.x = cp3.x; - cp1.y = cp3.y; - } - cp.x = cp3.x; - cp.y = cp3.y; - cbz = true; - cbzp.x = cp2.x; - cbzp.y = cp2.y; - qbz = false; - break; - case 's': - relative = true; - case 'S': - while (this.MorePointsAvailable()) { - if ((cp2 = this.ParsePoint()) == null) - break; - if (relative) { - cp2.x += cp.x; - cp2.y += cp.y; - } - this.Advance(); - if ((cp3 = this.ParsePoint()) == null) - break; - if (relative) { - cp3.x += cp.x; - cp3.y += cp.y; - } - if (cbz) { - cp1.x = 2 * cp.x - cbzp.x; - cp1.y = 2 * cp.y - cbzp.y; - } - else - cp1 = cp; - path.cubicBezier(cp1.x, cp1.y, cp2.x, cp2.y, cp3.x, cp3.y); - cbz = true; - cbzp.x = cp2.x; - cbzp.y = cp2.y; - cp.x = cp3.x; - cp.y = cp3.y; - this.Advance(); - } - qbz = false; - break; - case 'q': - relative = true; - case 'Q': - while (this.MorePointsAvailable()) { - if ((cp1 = this.ParsePoint()) == null) - break; - if (relative) { - cp1.x += cp.x; - cp1.y += cp.y; - } - this.Advance(); - if ((cp2 = this.ParsePoint()) == null) - break; - if (relative) { - cp2.x += cp.x; - cp2.y += cp.y; - } - this.Advance(); - path.quadraticBezier(cp1.x, cp1.y, cp2.x, cp2.y); - cp.x = cp2.x; - cp.y = cp2.y; - } - qbz = true; - qbzp.x = cp1.x; - qbzp.y = cp1.y; - cbz = false; - break; - case 't': - relative = true; - case 'T': - while (this.MorePointsAvailable()) { - if ((cp2 = this.ParsePoint()) == null) - break; - if (relative) { - cp2.x += cp.x; - cp2.y += cp.y; - } - if (qbz) { - cp1.x = 2 * cp.x - qbzp.x; - cp1.y = 2 * cp.y - qbzp.y; - } - else - cp1 = cp; - path.quadraticBezier(cp1.x, cp1.y, cp2.x, cp2.y); - qbz = true; - qbzp.x = cp1.x; - qbzp.y = cp1.y; - cp.x = cp2.x; - cp.y = cp2.y; - this.Advance(); - } - cbz = false; - break; - case 'a': - relative = true; - case 'A': - while (this.MorePointsAvailable()) { - if ((cp1 = this.ParsePoint()) == null) - break; - var angle = this.ParseDouble(); - var is_large = this.ParseDouble() !== 0; - var sweep = minerva.SweepDirection.Counterclockwise; - if (this.ParseDouble() !== 0) - sweep = minerva.SweepDirection.Clockwise; - if ((cp2 = this.ParsePoint()) == null) - break; - if (relative) { - cp2.x += cp.x; - cp2.y += cp.y; - } - path.ellipticalArc(cp1.x, cp1.y, angle, is_large, sweep, cp2.x, cp2.y); - cp.x = cp2.x; - cp.y = cp2.y; - this.Advance(); - } - cbz = qbz = false; - break; - case 'z': - case 'Z': - path.close(); - cp.x = start.x; - cp.y = start.y; - cbz = qbz = false; - break; - default: - break; - } - } - var pg = new Media.PathGeometry(); - pg.OverridePath(path); - pg.FillRule = fillRule; - return pg; - }; - MediaParser.prototype.ParseShapePoints = function () { - var points = []; - var p; - while (this.MorePointsAvailable() && (p = this.ParsePoint()) != null) { - points.push(p); - } - return points; - }; - MediaParser.prototype.ParsePoint = function () { - var x = this.ParseDouble(); - if (x == null) - return null; - var c; - while (this.index < this.len && ((c = this.str.charAt(this.index)) === ' ' || c === ',')) { - this.index++; - } - if (this.index >= this.len) - return null; - var y = this.ParseDouble(); - if (y == null) - return null; - return new Point(x, y); - }; - MediaParser.prototype.ParseDouble = function () { - this.Advance(); - var isNegative = false; - if (this.Match('-')) { - isNegative = true; - this.index++; - } - else if (this.Match('+')) { - this.index++; - } - if (this.Match('Infinity')) { - this.index += 8; - return isNegative ? Number.NEGATIVE_INFINITY : Number.POSITIVE_INFINITY; - } - if (this.Match('NaN')) - return NaN; - var temp = ''; - while (this.index < this.len) { - var code = this.str.charCodeAt(this.index); - var c = this.str[this.index]; - if (code >= 48 && code <= 57) - temp += c; - else if (code === 46) - temp += c; - else if (c === 'E' || c === 'e') { - temp += c; - if (this.str[this.index + 1] === '-') { - temp += '-'; - this.index++; - } - } - else - break; - this.index++; - } - if (temp.length === 0) - return null; - var f = parseFloat(temp); - return isNegative ? -f : f; - }; - MediaParser.prototype.Match = function (matchStr) { - var c1; - var c2; - for (var i = 0; i < matchStr.length && (this.index + i) < this.len; i++) { - c1 = matchStr.charAt(i); - c2 = this.str.charAt(this.index + i); - if (c1 !== c2) - return false; - } - return true; - }; - MediaParser.prototype.Advance = function () { - var code; - var c; - while (this.index < this.len) { - code = this.str.charCodeAt(this.index); - if ((code >= 65 && code <= 90) || (code >= 97 && code <= 122) || (code >= 48 && code <= 57)) - break; - c = String.fromCharCode(code); - if (c === '.') - break; - if (c === '-') - break; - if (c === '+') - break; - this.index++; - } - }; - MediaParser.prototype.MorePointsAvailable = function () { - var c; - while (this.index < this.len && ((c = this.str.charAt(this.index)) === ',' || c === ' ')) { - this.index++; - } - if (this.index >= this.len) - return false; - if (c === '.' || c === '-' || c === '+') - return true; - var code = this.str.charCodeAt(this.index); - return code >= 48 && code <= 57; - }; - return MediaParser; - })(); - nullstone.registerTypeConverter(Media.Geometry, function (val) { - if (val instanceof Media.Geometry) - return val; - if (typeof val === "string") - return ParseGeometry(val); - return val; - }); - })(Media = Fayde.Media || (Fayde.Media = {})); -})(Fayde || (Fayde = {})); -/// -/// -var Fayde; -(function (Fayde) { - var Media; - (function (Media) { - var PathFigure = (function (_super) { - __extends(PathFigure, _super); - function PathFigure() { - var _this = this; - _super.call(this); - this._Path = null; - var coll = PathFigure.SegmentsProperty.Initialize(this); - coll.AttachTo(this); - Fayde.ReactTo(coll, this, function () { return _this.InvalidatePathFigure(); }); - } - PathFigure.prototype._OnSegmentsSourceChanged = function (args) { - this.Segments.SetSource(args.NewValue); - }; - PathFigure.prototype._Build = function () { - var p = new minerva.path.Path(); - var start = this.StartPoint; - p.move(start.x, start.y); - var enumerator = this.Segments.getEnumerator(); - while (enumerator.moveNext()) { - enumerator.current._Append(p); - } - if (this.IsClosed) - p.close(); - return p; - }; - PathFigure.prototype.InvalidatePathFigure = function () { - this._Path = null; - Fayde.Incite(this); - }; - PathFigure.prototype.MergeInto = function (rp) { - if (!this._Path) - this._Path = this._Build(); - minerva.path.Path.Merge(rp, this._Path); - }; - PathFigure.IsClosedProperty = DependencyProperty.RegisterCore("IsClosed", function () { return Boolean; }, PathFigure, false, function (d, args) { return d.InvalidatePathFigure(); }); - PathFigure.StartPointProperty = DependencyProperty.RegisterCore("StartPoint", function () { return Point; }, PathFigure, undefined, function (d, args) { return d.InvalidatePathFigure(); }); - PathFigure.IsFilledProperty = DependencyProperty.RegisterCore("IsFilled", function () { return Boolean; }, PathFigure, true, function (d, args) { return d.InvalidatePathFigure(); }); - PathFigure.SegmentsProperty = DependencyProperty.RegisterImmutable("Segments", function () { return Media.PathSegmentCollection; }, PathFigure); - PathFigure.SegmentsSourceProperty = DependencyProperty.Register("SegmentsSource", function () { return nullstone.IEnumerable_; }, PathFigure, undefined, function (d, args) { return d._OnSegmentsSourceChanged(args); }); - return PathFigure; - })(Fayde.DependencyObject); - Media.PathFigure = PathFigure; - Fayde.CoreLibrary.add(PathFigure); - Fayde.Markup.Content(PathFigure, PathFigure.SegmentsProperty); - var PathFigureCollection = (function (_super) { - __extends(PathFigureCollection, _super); - function PathFigureCollection() { - _super.apply(this, arguments); - } - PathFigureCollection.prototype.AddingToCollection = function (value, error) { - var _this = this; - if (!_super.prototype.AddingToCollection.call(this, value, error)) - return false; - Fayde.ReactTo(value, this, function () { return Fayde.Incite(_this); }); - Fayde.Incite(this); - return true; - }; - PathFigureCollection.prototype.RemovedFromCollection = function (value, isValueSafe) { - _super.prototype.RemovedFromCollection.call(this, value, isValueSafe); - Fayde.UnreactTo(value, this); - Fayde.Incite(this); - }; - return PathFigureCollection; - })(Fayde.XamlObjectCollection); - Media.PathFigureCollection = PathFigureCollection; - Fayde.CoreLibrary.add(PathFigureCollection); - })(Media = Fayde.Media || (Fayde.Media = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Media; - (function (Media) { - var PathGeometry = (function (_super) { - __extends(PathGeometry, _super); - function PathGeometry() { - var _this = this; - _super.call(this); - this._OverridePath = null; - var coll = PathGeometry.FiguresProperty.Initialize(this); - coll.AttachTo(this); - Fayde.ReactTo(coll, this, function () { return _this.InvalidateFigures(); }); - } - Object.defineProperty(PathGeometry.prototype, "fillRule", { - get: function () { - return this.FillRule; - }, - enumerable: true, - configurable: true - }); - PathGeometry.prototype.OverridePath = function (path) { - this._OverridePath = path; - }; - PathGeometry.prototype._Build = function () { - if (this._OverridePath) - return this._OverridePath; - var p = new minerva.path.Path(); - var figures = this.Figures; - if (!figures) - return; - var enumerator = figures.getEnumerator(); - while (enumerator.moveNext()) { - enumerator.current.MergeInto(p); - } - return p; - }; - PathGeometry.prototype.InvalidateFigures = function () { - this._OverridePath = null; - this.InvalidateGeometry(); - }; - PathGeometry.FillRuleProperty = DependencyProperty.Register("FillRule", function () { return new Fayde.Enum(Fayde.Shapes.FillRule); }, PathGeometry, Fayde.Shapes.FillRule.EvenOdd, function (d, args) { return d.InvalidateGeometry(); }); - PathGeometry.FiguresProperty = DependencyProperty.RegisterImmutable("Figures", function () { return Media.PathFigureCollection; }, PathGeometry); - return PathGeometry; - })(Media.Geometry); - Media.PathGeometry = PathGeometry; - Fayde.CoreLibrary.add(PathGeometry); - Fayde.Markup.Content(PathGeometry, PathGeometry.FiguresProperty); - })(Media = Fayde.Media || (Fayde.Media = {})); -})(Fayde || (Fayde = {})); -/// -/// -var Fayde; -(function (Fayde) { - var Media; - (function (Media) { - var PathSegment = (function (_super) { - __extends(PathSegment, _super); - function PathSegment() { - _super.apply(this, arguments); - } - PathSegment.prototype._Append = function (path) { - }; - return PathSegment; - })(Fayde.DependencyObject); - Media.PathSegment = PathSegment; - Fayde.CoreLibrary.add(PathSegment); - var PathSegmentCollection = (function (_super) { - __extends(PathSegmentCollection, _super); - function PathSegmentCollection() { - _super.apply(this, arguments); - this._Modifying = false; - this._Source = null; - } - PathSegmentCollection.prototype.AddingToCollection = function (value, error) { - var _this = this; - if (!this._Modifying && this._Source != null) { - console.warn("Cannot modify Path Segments Collection when bound to SegmentsSource."); - return false; - } - if (!_super.prototype.AddingToCollection.call(this, value, error)) - return false; - Fayde.ReactTo(value, this, function () { return Fayde.Incite(_this); }); - Fayde.Incite(this); - return true; - }; - PathSegmentCollection.prototype.RemovedFromCollection = function (value, isValueSafe) { - _super.prototype.RemovedFromCollection.call(this, value, isValueSafe); - Fayde.UnreactTo(value, this); - Fayde.Incite(this); - }; - PathSegmentCollection.prototype.SetSource = function (source) { - var onc = Fayde.Collections.INotifyCollectionChanged_.as(this._Source); - if (onc) - onc.CollectionChanged.off(this._OnSegmentsCollectionChanged, this); - var oen = nullstone.IEnumerable_.as(this._Source); - if (oen) { - this.Clear(); - } - this._Source = source; - var nen = nullstone.IEnumerable_.as(this._Source); - if (nen) { - this._Modifying = true; - try { - for (var en = nen.getEnumerator(); en.moveNext();) { - this.Add(en.current); - } - } - finally { - this._Modifying = false; - } - } - var nnc = Fayde.Collections.INotifyCollectionChanged_.as(this._Source); - if (nnc) - nnc.CollectionChanged.on(this._OnSegmentsCollectionChanged, this); - }; - PathSegmentCollection.prototype._OnSegmentsCollectionChanged = function (sender, args) { - this._Modifying = true; - try { - for (var i = 0, items = args.OldItems, len = items ? items.length : 0; i < len; i++) { - this.RemoveAt(i); - } - for (var i = 0, items = args.NewItems, len = items ? items.length : 0; i < len; i++) { - this.Insert(args.NewStartingIndex + i, items[i]); - } - } - finally { - this._Modifying = false; - } - }; - return PathSegmentCollection; - })(Fayde.XamlObjectCollection); - Media.PathSegmentCollection = PathSegmentCollection; - Fayde.CoreLibrary.add(PathSegmentCollection); - })(Media = Fayde.Media || (Fayde.Media = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Media; - (function (Media) { - var ArcSegment = (function (_super) { - __extends(ArcSegment, _super); - function ArcSegment() { - _super.apply(this, arguments); - } - ArcSegment.prototype._Append = function (path) { - var size = this.Size; - var width = size ? size.width : 0.0; - var height = size ? size.height : 0.0; - var endpt = this.Point; - var ex = endpt ? endpt.x : 0.0; - var ey = endpt ? endpt.y : 0.0; - path.ellipticalArc(width, height, this.RotationAngle, this.IsLargeArc, this.SweepDirection, ex, ey); - }; - ArcSegment.IsLargeArcProperty = DependencyProperty.RegisterCore("IsLargeArc", function () { return Boolean; }, ArcSegment, false, function (d, args) { return Fayde.Incite(d); }); - ArcSegment.PointProperty = DependencyProperty.Register("Point", function () { return Point; }, ArcSegment, undefined, function (d, args) { return Fayde.Incite(d); }); - ArcSegment.RotationAngleProperty = DependencyProperty.Register("RotationAngle", function () { return Number; }, ArcSegment, 0.0, function (d, args) { return Fayde.Incite(d); }); - ArcSegment.SizeProperty = DependencyProperty.Register("Size", function () { return minerva.Size; }, ArcSegment, undefined, function (d, args) { return Fayde.Incite(d); }); - ArcSegment.SweepDirectionProperty = DependencyProperty.Register("SweepDirection", function () { return new Fayde.Enum(Fayde.Shapes.SweepDirection); }, ArcSegment, Fayde.Shapes.SweepDirection.Counterclockwise, function (d, args) { return Fayde.Incite(d); }); - return ArcSegment; - })(Media.PathSegment); - Media.ArcSegment = ArcSegment; - Fayde.CoreLibrary.add(ArcSegment); - var BezierSegment = (function (_super) { - __extends(BezierSegment, _super); - function BezierSegment() { - _super.apply(this, arguments); - } - BezierSegment.prototype._Append = function (path) { - var p1 = this.Point1; - var p2 = this.Point2; - var p3 = this.Point3; - var x1 = p1 ? p1.x : 0.0; - var y1 = p1 ? p1.y : 0.0; - var x2 = p2 ? p2.x : 0.0; - var y2 = p2 ? p2.y : 0.0; - var x3 = p3 ? p3.x : 0.0; - var y3 = p3 ? p3.y : 0.0; - path.cubicBezier(x1, y1, x2, y2, x3, y3); - }; - BezierSegment.Point1Property = DependencyProperty.Register("Point1", function () { return Point; }, BezierSegment); - BezierSegment.Point2Property = DependencyProperty.Register("Point2", function () { return Point; }, BezierSegment); - BezierSegment.Point3Property = DependencyProperty.Register("Point3", function () { return Point; }, BezierSegment); - return BezierSegment; - })(Media.PathSegment); - Media.BezierSegment = BezierSegment; - Fayde.CoreLibrary.add(BezierSegment); - var LineSegment = (function (_super) { - __extends(LineSegment, _super); - function LineSegment() { - _super.apply(this, arguments); - } - LineSegment.prototype._Append = function (path) { - var p = this.Point; - var x = p ? p.x : 0.0; - var y = p ? p.y : 0.0; - path.line(x, y); - }; - LineSegment.PointProperty = DependencyProperty.Register("Point", function () { return Point; }, LineSegment); - return LineSegment; - })(Media.PathSegment); - Media.LineSegment = LineSegment; - Fayde.CoreLibrary.add(LineSegment); - var PolyBezierSegment = (function (_super) { - __extends(PolyBezierSegment, _super); - function PolyBezierSegment() { - _super.call(this); - PolyBezierSegment.PointsProperty.Initialize(this); - } - PolyBezierSegment.prototype._Append = function (path) { - var points = this.Points; - if (!points || (points.Count % 3) !== 0) - return; - var p1; - var p2; - var p3; - var enumerator = points.getEnumerator(); - while (enumerator.moveNext()) { - p1 = enumerator.current; - enumerator.moveNext(); - p2 = enumerator.current; - enumerator.moveNext(); - p3 = enumerator.current; - path.cubicBezier(p1.x, p1.y, p2.x, p2.y, p3.x, p3.y); - } - }; - PolyBezierSegment.PointsProperty = DependencyProperty.RegisterImmutable("Points", function () { return Fayde.Shapes.PointCollection; }, PolyBezierSegment); - return PolyBezierSegment; - })(Media.PathSegment); - Media.PolyBezierSegment = PolyBezierSegment; - Fayde.CoreLibrary.add(PolyBezierSegment); - Fayde.Markup.Content(PolyBezierSegment, PolyBezierSegment.PointsProperty); - var PolyLineSegment = (function (_super) { - __extends(PolyLineSegment, _super); - function PolyLineSegment() { - _super.call(this); - PolyLineSegment.PointsProperty.Initialize(this); - } - PolyLineSegment.prototype._Append = function (path) { - var p; - var enumerator = this.Points.getEnumerator(); - while (enumerator.moveNext()) { - p = enumerator.current; - path.line(p.x, p.y); - } - console.warn("PolyLineSegment._Append"); - }; - PolyLineSegment.PointsProperty = DependencyProperty.RegisterImmutable("Points", function () { return Fayde.Shapes.PointCollection; }, PolyLineSegment); - return PolyLineSegment; - })(Media.PathSegment); - Media.PolyLineSegment = PolyLineSegment; - Fayde.CoreLibrary.add(PolyLineSegment); - Fayde.Markup.Content(PolyLineSegment, PolyLineSegment.PointsProperty); - var PolyQuadraticBezierSegment = (function (_super) { - __extends(PolyQuadraticBezierSegment, _super); - function PolyQuadraticBezierSegment() { - _super.call(this); - PolyQuadraticBezierSegment.PointsProperty.Initialize(this); - } - PolyQuadraticBezierSegment.prototype._Append = function (path) { - var points = this.Points; - if (!points || (points.Count % 2) !== 0) - return; - var x0 = path.endX; - var y0 = path.endY; - var x1; - var y1; - var x2; - var y2; - var x3; - var y3; - var enumerator = points.getEnumerator(); - while (enumerator.moveNext()) { - x1 = enumerator.current.x; - y1 = enumerator.current.y; - enumerator.moveNext(); - x2 = enumerator.current.x; - y2 = enumerator.current.y; - x3 = x2; - y3 = y2; - x2 = x1 + (x2 - x1) / 3; - y2 = y1 + (y2 - y1) / 3; - x1 = x0 + 2 * (x1 - x0) / 3; - y1 = y0 + 2 * (y1 - y0) / 3; - path.cubicBezier(x1, y1, x2, y2, x3, y3); - x0 = x3; - y0 = y3; - } - }; - PolyQuadraticBezierSegment.PointsProperty = DependencyProperty.RegisterImmutable("Points", function () { return Fayde.Shapes.PointCollection; }, PolyQuadraticBezierSegment); - return PolyQuadraticBezierSegment; - })(Media.PathSegment); - Media.PolyQuadraticBezierSegment = PolyQuadraticBezierSegment; - Fayde.CoreLibrary.add(PolyQuadraticBezierSegment); - Fayde.Markup.Content(PolyQuadraticBezierSegment, PolyQuadraticBezierSegment.PointsProperty); - var QuadraticBezierSegment = (function (_super) { - __extends(QuadraticBezierSegment, _super); - function QuadraticBezierSegment() { - _super.apply(this, arguments); - } - QuadraticBezierSegment.prototype._Append = function (path) { - var p1 = this.Point1; - var p2 = this.Point2; - var x1 = p1 ? p1.x : 0.0; - var y1 = p1 ? p1.y : 0.0; - var x2 = p2 ? p2.x : 0.0; - var y2 = p2 ? p2.y : 0.0; - path.quadraticBezier(x1, y1, x2, y2); - }; - QuadraticBezierSegment.Point1Property = DependencyProperty.Register("Point1", function () { return Point; }, QuadraticBezierSegment); - QuadraticBezierSegment.Point2Property = DependencyProperty.Register("Point2", function () { return Point; }, QuadraticBezierSegment); - return QuadraticBezierSegment; - })(Media.PathSegment); - Media.QuadraticBezierSegment = QuadraticBezierSegment; - Fayde.CoreLibrary.add(QuadraticBezierSegment); - })(Media = Fayde.Media || (Fayde.Media = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Media; - (function (Media) { - var FIELD_OF_VIEW = 57.0 / 180 * Math.PI; - var CAMERA_DIST = 999.0; - var NEAR_VAL = 1.0; - var FAR_VAL = 65536.0; - var XY_PLANE_Z = (NEAR_VAL * FAR_VAL / (NEAR_VAL - FAR_VAL) * (1.0 - CAMERA_DIST)) / CAMERA_DIST; - var PI_OVER_180 = Math.PI / 180.0; - var PlaneProjection = (function (_super) { - __extends(PlaneProjection, _super); - function PlaneProjection() { - _super.apply(this, arguments); - } - PlaneProjection.prototype.getDistanceFromXYPlane = function () { - var w = Math.max(this.ObjectWidth, 1.0); - var h = Math.max(this.ObjectHeight, 1.0); - var p = [w / 2.0, h / 2.0, 0.0, 1.0]; - var m = this.getTransform(); - mat4.transformVec4(m, p, p); - if (p[3] === 0.0) - return NaN; - return XY_PLANE_Z - (p[2] / p[3]); - }; - PlaneProjection.prototype.CreateProjectionMatrix3D = function () { - var rotationX = this.RotationX; - var rotationY = this.RotationY; - var rotationZ = this.RotationZ; - var radiansX = (rotationX || 0.0) * PI_OVER_180; - var radiansY = (rotationY || 0.0) * PI_OVER_180; - var radiansZ = (rotationZ || 0.0) * PI_OVER_180; - var globalOffsetX = this.GlobalOffsetX; - var globalOffsetY = this.GlobalOffsetY; - var globalOffsetZ = this.GlobalOffsetZ; - var globalX = globalOffsetX || 0.0; - var globalY = globalOffsetY || 0.0; - var globalZ = globalOffsetZ || 0.0; - var localOffsetX = this.LocalOffsetX; - var localOffsetY = this.LocalOffsetY; - var localOffsetZ = this.LocalOffsetZ; - var localX = localOffsetX || 0.0; - var localY = localOffsetY || 0.0; - var localZ = localOffsetZ || 0.0; - var ow = this.ObjectWidth; - var oh = this.ObjectHeight; - var height = 2.0 * CAMERA_DIST * Math.tan(FIELD_OF_VIEW / 2.0); - var scale = height / oh; - var toCenter = mat4.createTranslate(-ow * this.CenterOfRotationX, -oh * this.CenterOfRotationY, -this.CenterOfRotationZ); - var invertY = mat4.createScale(1.0, -1.0, 1.0); - var localOffset = mat4.createTranslate(localX, -localY, localZ); - var rotateX = mat4.createRotateX(radiansX); - var rotateY = mat4.createRotateX(radiansY); - var rotateZ = mat4.createRotateX(radiansZ); - var toCamera = mat4.createTranslate(ow * (this.CenterOfRotationX - 0.5) + globalX, -oh * (this.CenterOfRotationY - 0.5) - globalY, this.CenterOfRotationZ - CAMERA_DIST + globalZ); - var perspective = mat4.createPerspective(FIELD_OF_VIEW, ow / oh, NEAR_VAL, FAR_VAL); - var zoom = mat4.createScale(scale, scale, 1.0); - var viewport = mat4.createViewport(ow, oh); - var m = mat4.multiply(toCenter, invertY); - mat4.multiply(m, localOffset, m); - mat4.multiply(m, rotateX, m); - mat4.multiply(m, rotateY, m); - mat4.multiply(m, rotateZ, m); - mat4.multiply(m, toCamera, m); - mat4.multiply(m, perspective, m); - mat4.multiply(m, zoom, m); - mat4.multiply(m, viewport, m); - var r = new Media.Matrix3D(); - r._Raw = m; - return r; - }; - PlaneProjection.CenterOfRotationXProperty = DependencyProperty.Register("CenterOfRotationX", function () { return Number; }, PlaneProjection, 0.5, function (d, args) { return d.InvalidateProjection(); }); - PlaneProjection.CenterOfRotationYProperty = DependencyProperty.Register("CenterOfRotationY", function () { return Number; }, PlaneProjection, 0.5, function (d, args) { return d.InvalidateProjection(); }); - PlaneProjection.CenterOfRotationZProperty = DependencyProperty.Register("CenterOfRotationZ", function () { return Number; }, PlaneProjection, 0.5, function (d, args) { return d.InvalidateProjection(); }); - PlaneProjection.GlobalOffsetXProperty = DependencyProperty.Register("GlobalOffsetX", function () { return Number; }, PlaneProjection, 0.0, function (d, args) { return d.InvalidateProjection(); }); - PlaneProjection.GlobalOffsetYProperty = DependencyProperty.Register("GlobalOffsetY", function () { return Number; }, PlaneProjection, 0.0, function (d, args) { return d.InvalidateProjection(); }); - PlaneProjection.GlobalOffsetZProperty = DependencyProperty.Register("GlobalOffsetZ", function () { return Number; }, PlaneProjection, 0.0, function (d, args) { return d.InvalidateProjection(); }); - PlaneProjection.LocalOffsetXProperty = DependencyProperty.Register("LocalOffsetX", function () { return Number; }, PlaneProjection, 0.0, function (d, args) { return d.InvalidateProjection(); }); - PlaneProjection.LocalOffsetYProperty = DependencyProperty.Register("LocalOffsetY", function () { return Number; }, PlaneProjection, 0.0, function (d, args) { return d.InvalidateProjection(); }); - PlaneProjection.LocalOffsetZProperty = DependencyProperty.Register("LocalOffsetZ", function () { return Number; }, PlaneProjection, 0.0, function (d, args) { return d.InvalidateProjection(); }); - PlaneProjection.RotationXProperty = DependencyProperty.Register("RotationX", function () { return Number; }, PlaneProjection, 0.0, function (d, args) { return d.InvalidateProjection(); }); - PlaneProjection.RotationYProperty = DependencyProperty.Register("RotationY", function () { return Number; }, PlaneProjection, 0.0, function (d, args) { return d.InvalidateProjection(); }); - PlaneProjection.RotationZProperty = DependencyProperty.Register("RotationZ", function () { return Number; }, PlaneProjection, 0.0, function (d, args) { return d.InvalidateProjection(); }); - return PlaneProjection; - })(Media.Projection); - Media.PlaneProjection = PlaneProjection; - Fayde.CoreLibrary.add(PlaneProjection); - })(Media = Fayde.Media || (Fayde.Media = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Media; - (function (Media) { - var tmpCanvas = document.createElement('canvas'); - var tmpCtx = tmpCanvas.getContext('2d'); - var epsilon = 1E-10; - var RadialGradientBrush = (function (_super) { - __extends(RadialGradientBrush, _super); - function RadialGradientBrush() { - _super.apply(this, arguments); - } - RadialGradientBrush.prototype.CreatePad = function (ctx, bounds) { - var data = this._GetPointData(bounds); - var grd = (!data.balanced ? tmpCtx : ctx).createRadialGradient(data.x0, data.y0, 0, data.x1, data.y1, data.r1); - for (var en = this.GradientStops.getEnumerator(); en.moveNext();) { - var stop = en.current; - grd.addColorStop(stop.Offset, stop.Color.toString()); - } - return this.FitPattern(ctx, grd, data, bounds); - }; - RadialGradientBrush.prototype.CreateRepeat = function (ctx, bounds) { - var data = this._GetPointData(bounds); - return this.CreateInterpolated(data, bounds, false); - }; - RadialGradientBrush.prototype.CreateReflect = function (ctx, bounds) { - var data = this._GetPointData(bounds); - return this.CreateInterpolated(data, bounds, true); - }; - RadialGradientBrush.prototype.CreateInterpolated = function (data, bounds, reflect) { - tmpCanvas.width = bounds.width; - tmpCanvas.height = bounds.height; - tmpCtx.save(); - if (!data.balanced) - tmpCtx.scale(data.sx, data.sy); - tmpCtx.globalCompositeOperation = "destination-over"; - var inverted = false; - var allStops = this.GradientStops.getPaddedEnumerable(); - for (var extender = Media.RadialGradient.createExtender(data, bounds); extender.step(); inverted = !inverted) { - var grd = extender.createGradient(tmpCtx); - for (var en = allStops.getEnumerator(); en.moveNext();) { - var offset = en.current.Offset; - if (reflect && inverted) - offset = 1 - offset; - grd.addColorStop(offset, en.current.Color.toString()); - } - tmpCtx.fillStyle = grd; - tmpCtx.beginPath(); - tmpCtx.arc(extender.x1, extender.y1, extender.r1, 0, 2 * Math.PI, false); - tmpCtx.closePath(); - tmpCtx.fill(); - } - var pattern = tmpCtx.createPattern(tmpCanvas, "no-repeat"); - tmpCtx.restore(); - return pattern; - }; - RadialGradientBrush.prototype.FitPattern = function (ctx, fill, data, bounds) { - if (data.balanced) - return fill; - tmpCanvas.width = bounds.width; - tmpCanvas.height = bounds.height; - tmpCtx.save(); - tmpCtx.scale(data.sx, data.sy); - tmpCtx.fillStyle = fill; - tmpCtx.fillRect(0, 0, data.side, data.side); - var pattern = ctx.createPattern(tmpCanvas, "no-repeat"); - tmpCtx.restore(); - return pattern; - }; - RadialGradientBrush.prototype._GetPointData = function (bounds) { - var center = this.Center; - center = !center ? new Point(0.5, 0.5) : center.Clone(); - var origin = this.GradientOrigin; - origin = !origin ? new Point(0.5, 0.5) : origin.Clone(); - var rx = this.RadiusX; - if (rx == null) - rx = 0.5; - var ry = this.RadiusY; - if (ry == null) - ry = 0.5; - if (this.MappingMode !== Media.BrushMappingMode.Absolute) { - center.x *= bounds.width; - center.y *= bounds.height; - origin.x *= bounds.width; - origin.y *= bounds.height; - rx *= bounds.width; - ry *= bounds.height; - } - center.x += bounds.x; - center.y += bounds.y; - origin.x += bounds.x; - origin.y += bounds.y; - var rad = Math.max(rx, ry); - var side = Math.max(bounds.width, bounds.height), sx = bounds.width / side, sy = bounds.height / side; - return { - x0: origin.x / sx, - y0: origin.y / sy, - x1: center.x / sx, - y1: center.y / sy, - r1: rad, - side: side, - sx: bounds.width / side, - sy: bounds.height / side, - balanced: Math.abs(rx - ry) < epsilon - }; - }; - RadialGradientBrush.CenterProperty = DependencyProperty.RegisterCore("Center", function () { return Point; }, RadialGradientBrush, undefined, function (d, args) { return d.InvalidateBrush(); }); - RadialGradientBrush.GradientOriginProperty = DependencyProperty.RegisterCore("GradientOrigin", function () { return Point; }, RadialGradientBrush, undefined, function (d, args) { return d.InvalidateBrush(); }); - RadialGradientBrush.RadiusXProperty = DependencyProperty.RegisterCore("RadiusX", function () { return Number; }, RadialGradientBrush, 0.5, function (d, args) { return d.InvalidateBrush(); }); - RadialGradientBrush.RadiusYProperty = DependencyProperty.RegisterCore("RadiusY", function () { return Number; }, RadialGradientBrush, 0.5, function (d, args) { return d.InvalidateBrush(); }); - return RadialGradientBrush; - })(Media.GradientBrush); - Media.RadialGradientBrush = RadialGradientBrush; - Fayde.CoreLibrary.add(RadialGradientBrush); - })(Media = Fayde.Media || (Fayde.Media = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Media; - (function (Media) { - var RectangleGeometry = (function (_super) { - __extends(RectangleGeometry, _super); - function RectangleGeometry() { - _super.apply(this, arguments); - } - RectangleGeometry.prototype._Build = function () { - var irect = this.Rect; - if (!irect) - return null; - var radiusX = this.RadiusX; - var radiusY = this.RadiusY; - var p = new minerva.path.Path(); - p.roundedRect(irect.x, irect.y, irect.width, irect.height, radiusX, radiusY); - return p; - }; - RectangleGeometry.RectProperty = DependencyProperty.RegisterCore("Rect", function () { return Rect; }, RectangleGeometry, undefined, function (d, args) { return d.InvalidateGeometry(); }); - RectangleGeometry.RadiusXProperty = DependencyProperty.RegisterCore("RadiusX", function () { return Number; }, RectangleGeometry, 0, function (d, args) { return d.InvalidateGeometry(); }); - RectangleGeometry.RadiusYProperty = DependencyProperty.RegisterCore("RadiusY", function () { return Number; }, RectangleGeometry, 0, function (d, args) { return d.InvalidateGeometry(); }); - return RectangleGeometry; - })(Media.Geometry); - Media.RectangleGeometry = RectangleGeometry; - Fayde.CoreLibrary.add(RectangleGeometry); - })(Media = Fayde.Media || (Fayde.Media = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Media; - (function (Media) { - var SolidColorBrush = (function (_super) { - __extends(SolidColorBrush, _super); - function SolidColorBrush() { - var args = []; - for (var _i = 0; _i < arguments.length; _i++) { - args[_i - 0] = arguments[_i]; - } - _super.call(this); - if (args && args.length === 1 && args[0] instanceof Color) - this.Color = args[0]; - } - SolidColorBrush.prototype.isTransparent = function () { - var color = this.Color; - return !color || (color.A <= 0); - }; - SolidColorBrush.FromColor = function (color) { - var scb = new SolidColorBrush(); - scb.Color = color; - return scb; - }; - SolidColorBrush.prototype.setupBrush = function (ctx, bounds) { - if (this._CachedBrush) - return; - this._CachedBrush = this.CreateBrush(ctx, bounds); - }; - SolidColorBrush.prototype.CreateBrush = function (ctx, bounds) { - var color = this.Color; - if (!color) - return "#000000"; - return color.toString(); - }; - SolidColorBrush.ColorProperty = DependencyProperty.Register("Color", function () { return Color; }, SolidColorBrush, undefined, function (d, args) { return d.InvalidateBrush(); }); - return SolidColorBrush; - })(Media.Brush); - Media.SolidColorBrush = SolidColorBrush; - Fayde.CoreLibrary.add(SolidColorBrush); - function brushConverter(val) { - if (!val || val instanceof Media.Brush) - return val; - var scb = new SolidColorBrush(); - scb.Color = nullstone.convertAnyToType(val, Color); - return scb; - } - nullstone.registerTypeConverter(Media.Brush, brushConverter); - nullstone.registerTypeConverter(SolidColorBrush, brushConverter); - })(Media = Fayde.Media || (Fayde.Media = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Media; - (function (Media) { - var TextOptions = (function () { - function TextOptions() { - } - TextOptions.GetTextHintingMode = function (d) { return d.GetValue(TextOptions.TextHintingModeProperty); }; - TextOptions.SetTextHintingMode = function (d, value) { d.SetValue(TextOptions.TextHintingModeProperty, value); }; - TextOptions.TextHintingModeProperty = DependencyProperty.RegisterAttached("TextHintingMode", function () { return new Fayde.Enum(Media.TextHintingMode); }, TextOptions); - return TextOptions; - })(); - Media.TextOptions = TextOptions; - Fayde.CoreLibrary.add(TextOptions); - })(Media = Fayde.Media || (Fayde.Media = {})); -})(Fayde || (Fayde = {})); -/// -/// -var Fayde; -(function (Fayde) { - var Media; - (function (Media) { - function computeImageMatrix(width, height, sw, sh, stretch, alignX, alignY) { - var sx = width / sw; - var sy = height / sh; - if (width === 0) - sx = 1.0; - if (height === 0) - sy = 1.0; - if (stretch === Media.Stretch.Fill) { - return mat3.createScale(sx, sy); - } - var scale = 1.0; - var dx = 0.0; - var dy = 0.0; - switch (stretch) { - case Media.Stretch.Uniform: - scale = sx < sy ? sx : sy; - break; - case Media.Stretch.UniformToFill: - scale = sx < sy ? sy : sx; - break; - case Media.Stretch.None: - break; - } - switch (alignX) { - case Media.AlignmentX.Left: - dx = 0.0; - break; - case Media.AlignmentX.Center: - dx = (width - (scale * sw)) / 2; - break; - case Media.AlignmentX.Right: - default: - dx = width - (scale * sw); - break; - } - switch (alignY) { - case Media.AlignmentY.Top: - dy = 0.0; - break; - case Media.AlignmentY.Center: - dy = (height - (scale * sh)) / 2; - break; - case Media.AlignmentY.Bottom: - default: - dy = height - (scale * sh); - break; - } - var m = mat3.createScale(scale, scale); - mat3.translate(m, dx, dy); - return m; - } - var TileBrush = (function (_super) { - __extends(TileBrush, _super); - function TileBrush() { - _super.apply(this, arguments); - } - TileBrush.prototype.CreateBrush = function (ctx, bounds) { - var imgExtents = this.GetTileExtents(); - var tmpCanvas = document.createElement("canvas"); - tmpCanvas.width = bounds.width; - tmpCanvas.height = bounds.height; - var tmpCtx = tmpCanvas.getContext("2d"); - var mat = computeImageMatrix(bounds.width, bounds.height, imgExtents.width, imgExtents.height, this.Stretch, this.AlignmentX, this.AlignmentY); - tmpCtx.setTransform(mat[0], mat[1], mat[2], mat[3], mat[4], mat[5]); - this.DrawTile(tmpCtx, bounds); - return ctx.createPattern(tmpCanvas, "no-repeat"); - }; - TileBrush.prototype.GetTileExtents = function () { return undefined; }; - TileBrush.prototype.DrawTile = function (canvasCtx, bounds) { }; - TileBrush.AlignmentXProperty = DependencyProperty.RegisterCore("AlignmentX", function () { return new Fayde.Enum(Media.AlignmentX); }, TileBrush, Media.AlignmentX.Center, function (d, args) { return d.InvalidateBrush(); }); - TileBrush.AlignmentYProperty = DependencyProperty.RegisterCore("AlignmentY", function () { return new Fayde.Enum(Media.AlignmentY); }, TileBrush, Media.AlignmentY.Center, function (d, args) { return d.InvalidateBrush(); }); - TileBrush.StretchProperty = DependencyProperty.RegisterCore("Stretch", function () { return new Fayde.Enum(Media.Stretch); }, TileBrush, Media.Stretch.Fill, function (d, args) { return d.InvalidateBrush(); }); - return TileBrush; - })(Media.Brush); - Media.TileBrush = TileBrush; - Fayde.CoreLibrary.add(TileBrush); - })(Media = Fayde.Media || (Fayde.Media = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Media; - (function (Media) { - var Transform = (function (_super) { - __extends(Transform, _super); - function Transform() { - _super.call(this); - Fayde.XamlNode.SetShareable(this.XamlNode); - } - Object.defineProperty(Transform.prototype, "Value", { - get: function () { - var val = this._Value; - if (!val) { - this._Value = val = new Media.Matrix(); - val._Raw = this._BuildValue(); - } - return val; - }, - enumerable: true, - configurable: true - }); - Transform.prototype.getRaw = function () { - return this.Value._Raw; - }; - Object.defineProperty(Transform.prototype, "Inverse", { - get: function () { - var inverse = this.Value.Inverse; - if (!inverse) - return null; - var mt = new MatrixTransform(); - mt.Matrix = inverse; - return mt; - }, - enumerable: true, - configurable: true - }); - Transform.prototype.Transform = function (p) { - var val = this.Value; - var v; - if (!val || !(v = val._Raw)) - return new Point(p.x, p.y); - v = mat3.transformVec2(v, vec2.create(p.x, p.y)); - return new Point(v[0], v[1]); - }; - Transform.prototype.TransformBounds = function (r) { - if (!r) - return undefined; - var v = this.Value; - var copy = new minerva.Rect(); - minerva.Rect.copyTo(r, copy); - if (!v || !v._Raw) - return copy; - return minerva.Rect.transform(copy, v._Raw); - }; - Transform.prototype.TryTransform = function (inPoint, outPoint) { - return false; - }; - Transform.prototype.InvalidateValue = function () { - if (this._Value !== undefined) - this._Value = undefined; - Fayde.Incite(this); - }; - Transform.prototype._BuildValue = function () { - return undefined; - }; - Transform.copyMatTo = function (t, mat) { - mat3.copyTo(t.Value._Raw, mat); - }; - return Transform; - })(Media.GeneralTransform); - Media.Transform = Transform; - Fayde.CoreLibrary.add(Transform); - var MatrixTransform = (function (_super) { - __extends(MatrixTransform, _super); - function MatrixTransform() { - _super.apply(this, arguments); - } - MatrixTransform.prototype._BuildValue = function () { - var m = this.Matrix; - if (m) - return m._Raw; - return mat3.identity(); - }; - MatrixTransform.prototype.Clone = function () { - var xform = new MatrixTransform(); - xform.Matrix = this.Matrix.Clone(); - return xform; - }; - MatrixTransform.MatrixProperty = DependencyProperty.RegisterFull("Matrix", function () { return Media.Matrix; }, MatrixTransform); - return MatrixTransform; - })(Transform); - Media.MatrixTransform = MatrixTransform; - Fayde.CoreLibrary.add(MatrixTransform); - var reactions; - (function (reactions) { - Fayde.DPReaction(MatrixTransform.MatrixProperty, function (mt, ov, nv) { return mt.InvalidateValue(); }); - })(reactions || (reactions = {})); - })(Media = Fayde.Media || (Fayde.Media = {})); -})(Fayde || (Fayde = {})); -/// -/// -var Fayde; -(function (Fayde) { - var Media; - (function (Media) { - var RotateTransform = (function (_super) { - __extends(RotateTransform, _super); - function RotateTransform() { - _super.apply(this, arguments); - } - RotateTransform.prototype._BuildValue = function () { - var cx = this.CenterX; - var cy = this.CenterY; - var angle = this.Angle; - var angleRad = Math.PI / 180 * angle; - var m = mat3.createRotate(angleRad); - if (cx === 0 && cy === 0) - return m; - mat3.multiply(mat3.createTranslate(-cx, -cy), m, m); - mat3.translate(m, cx, cy); - return m; - }; - RotateTransform.AngleProperty = DependencyProperty.Register("Angle", function () { return Number; }, RotateTransform, 0, function (d, args) { return d.InvalidateValue(); }); - RotateTransform.CenterXProperty = DependencyProperty.Register("CenterX", function () { return Number; }, RotateTransform, 0, function (d, args) { return d.InvalidateValue(); }); - RotateTransform.CenterYProperty = DependencyProperty.Register("CenterY", function () { return Number; }, RotateTransform, 0, function (d, args) { return d.InvalidateValue(); }); - return RotateTransform; - })(Media.Transform); - Media.RotateTransform = RotateTransform; - Fayde.CoreLibrary.add(RotateTransform); - var ScaleTransform = (function (_super) { - __extends(ScaleTransform, _super); - function ScaleTransform() { - _super.apply(this, arguments); - } - ScaleTransform.prototype._BuildValue = function () { - var cx = this.CenterX; - var cy = this.CenterY; - var m = mat3.createScale(this.ScaleX, this.ScaleY); - if (cx === 0 && cy === 0) - return m; - mat3.multiply(mat3.createTranslate(-cx, -cy), m, m); - mat3.translate(m, cx, cy); - return m; - }; - ScaleTransform.CenterXProperty = DependencyProperty.Register("CenterX", function () { return Number; }, ScaleTransform, 0, function (d, args) { return d.InvalidateValue(); }); - ScaleTransform.CenterYProperty = DependencyProperty.Register("CenterY", function () { return Number; }, ScaleTransform, 0, function (d, args) { return d.InvalidateValue(); }); - ScaleTransform.ScaleXProperty = DependencyProperty.Register("ScaleX", function () { return Number; }, ScaleTransform, 1.0, function (d, args) { return d.InvalidateValue(); }); - ScaleTransform.ScaleYProperty = DependencyProperty.Register("ScaleY", function () { return Number; }, ScaleTransform, 1.0, function (d, args) { return d.InvalidateValue(); }); - return ScaleTransform; - })(Media.Transform); - Media.ScaleTransform = ScaleTransform; - Fayde.CoreLibrary.add(ScaleTransform); - var SkewTransform = (function (_super) { - __extends(SkewTransform, _super); - function SkewTransform() { - _super.apply(this, arguments); - } - SkewTransform.prototype._BuildValue = function () { - var cx = this.CenterX; - var cy = this.CenterY; - var angleXRad = Math.PI / 180 * this.AngleX; - var angleYRad = Math.PI / 180 * this.AngleY; - var m = mat3.createSkew(angleXRad, angleYRad); - if (cx === 0 && cy === 0) - return m; - mat3.multiply(mat3.createTranslate(-cx, -cy), m, m); - mat3.translate(m, cx, cy); - return m; - }; - SkewTransform.AngleXProperty = DependencyProperty.Register("AngleX", function () { return Number; }, SkewTransform, 0, function (d, args) { return d.InvalidateValue(); }); - SkewTransform.AngleYProperty = DependencyProperty.Register("AngleY", function () { return Number; }, SkewTransform, 0, function (d, args) { return d.InvalidateValue(); }); - SkewTransform.CenterXProperty = DependencyProperty.Register("CenterX", function () { return Number; }, SkewTransform, 0, function (d, args) { return d.InvalidateValue(); }); - SkewTransform.CenterYProperty = DependencyProperty.Register("CenterY", function () { return Number; }, SkewTransform, 0, function (d, args) { return d.InvalidateValue(); }); - return SkewTransform; - })(Media.Transform); - Media.SkewTransform = SkewTransform; - Fayde.CoreLibrary.add(SkewTransform); - var TranslateTransform = (function (_super) { - __extends(TranslateTransform, _super); - function TranslateTransform() { - _super.apply(this, arguments); - } - TranslateTransform.prototype._BuildValue = function () { - return mat3.createTranslate(this.X, this.Y); - }; - TranslateTransform.XProperty = DependencyProperty.Register("X", function () { return Number; }, TranslateTransform, 0, function (d, args) { return d.InvalidateValue(); }); - TranslateTransform.YProperty = DependencyProperty.Register("Y", function () { return Number; }, TranslateTransform, 0, function (d, args) { return d.InvalidateValue(); }); - return TranslateTransform; - })(Media.Transform); - Media.TranslateTransform = TranslateTransform; - Fayde.CoreLibrary.add(TranslateTransform); - var TransformCollection = (function (_super) { - __extends(TransformCollection, _super); - function TransformCollection() { - _super.apply(this, arguments); - } - TransformCollection.prototype.AddingToCollection = function (value, error) { - var _this = this; - if (!_super.prototype.AddingToCollection.call(this, value, error)) - return false; - Fayde.ReactTo(value, this, function () { return Fayde.Incite(_this); }); - Fayde.Incite(this); - return true; - }; - TransformCollection.prototype.RemovedFromCollection = function (value, isValueSafe) { - if (!_super.prototype.RemovedFromCollection.call(this, value, isValueSafe)) - return false; - Fayde.UnreactTo(value, this); - Fayde.Incite(this); - }; - return TransformCollection; - })(Fayde.XamlObjectCollection); - Media.TransformCollection = TransformCollection; - Fayde.CoreLibrary.add(TransformCollection); - var TransformGroup = (function (_super) { - __extends(TransformGroup, _super); - function TransformGroup() { - var _this = this; - _super.call(this); - var coll = TransformGroup.ChildrenProperty.Initialize(this); - coll.AttachTo(this); - Fayde.ReactTo(coll, this, function () { return _this.InvalidateValue(); }); - } - TransformGroup.prototype._BuildValue = function () { - var enumerator = this.Children.getEnumerator(); - var cur = mat3.identity(); - while (enumerator.moveNext()) { - mat3.multiply(cur, enumerator.current.Value._Raw, cur); - } - return cur; - }; - TransformGroup.ChildrenProperty = DependencyProperty.RegisterImmutable("Children", function () { return TransformCollection; }, TransformGroup); - return TransformGroup; - })(Media.Transform); - Media.TransformGroup = TransformGroup; - Fayde.CoreLibrary.add(TransformGroup); - Fayde.Markup.Content(TransformGroup, TransformGroup.ChildrenProperty); - })(Media = Fayde.Media || (Fayde.Media = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Navigation; - (function (Navigation) { - function Navigate(source, targetName, navigateUri) { - if (!isExternalTarget(targetName)) { - if (tryInternalNavigate(source, navigateUri, targetName)) - return; - if (!isUriValidForExternalNav(navigateUri)) - throw new NotSupportedException("Navigation Failed"); - } - var app = source.App; - if (!app || !app.AllowNavigation) - throw new InvalidOperationException("Navigation is now allowed."); - var absoluteUri = getAbsoluteUri(navigateUri, app); - if (!absoluteUri.isAbsoluteUri) - throw new InvalidOperationException("Navigation Failed [" + absoluteUri.toString() + "]"); - launchDummyLink(targetName || "_self", absoluteUri.originalString); - } - Navigation.Navigate = Navigate; - function isExternalTarget(targetName) { - if (!targetName) - return false; - switch (targetName.toLowerCase()) { - case "_blank": - case "_media": - case "_search": - case "_parent": - case "_self": - case "_top": - return true; - default: - return false; - } - } - function tryInternalNavigate(source, navigateUri, targetName) { - var lastSubtree = source; - for (var en = walkUp(source); en.moveNext();) { - var cur = en.current; - if (cur && (Navigation.INavigate_.is(cur) || !Fayde.VisualTreeHelper.GetParent(cur))) { - var navigator = findNavigator(cur, lastSubtree, targetName); - if (navigator) - return navigator.Navigate(navigateUri); - lastSubtree = cur; - } - } - return false; - } - function findNavigator(root, lastSubtree, targetName) { - if (!root || root === lastSubtree) - return null; - var nav = Navigation.INavigate_.as(root); - if (nav && (!targetName || targetName === root.Name)) - return nav; - if (root instanceof Fayde.Controls.Primitives.Popup) { - return findNavigator(root.Child, lastSubtree, targetName); - } - else { - for (var i = 0, len = Fayde.VisualTreeHelper.GetChildrenCount(root); i < len; i++) { - var navigator = findNavigator(Fayde.VisualTreeHelper.GetChild(root, i), lastSubtree, targetName); - if (navigator) - return navigator; - } - } - return null; - } - function walkUp(xobj) { - var e = { - current: xobj, - moveNext: function () { - if (!e.current) - return false; - e.current = e.current.VisualParent || e.current.Parent; - return !!e.current; - } - }; - return e; - } - function isUriValidForExternalNav(navigateUri) { - if (!navigateUri.isAbsoluteUri) { - if (!!navigateUri.originalString && navigateUri.originalString[0] !== "/") - return false; - } - return true; - } - function getAbsoluteUri(navigateUri, app) { - var relativeUri = navigateUri; - if (!relativeUri.isAbsoluteUri) { - if (!!relativeUri.originalString && relativeUri.originalString[0] !== "/") - throw new NotSupportedException("HyperlinkButton_GetAbsoluteUri_PageRelativeUri"); - if (!app) - throw new NotSupportedException("HyperlinkButton_GetAbsoluteUri_NoApplication"); - relativeUri = new Fayde.Uri(app.Address, relativeUri); - } - return relativeUri; - } - var dummyLink; - function launchDummyLink(target, navigateUri) { - dummyLink = dummyLink || document.createElement('a'); - dummyLink.href = navigateUri; - dummyLink.target = target; - dummyLink.click(); - } - })(Navigation = Fayde.Navigation || (Fayde.Navigation = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Navigation; - (function (Navigation) { - var NavigationService = (function () { - function NavigationService() { - var _this = this; - this.LocationChanged = new nullstone.Event(); - this.Href = window.location.href; - this.Hash = window.location.hash; - if (this.Href[this.Href.length - 1] === '#') - this.Hash = "#"; - if (this.Hash) { - this.Hash = this.Hash.substr(1); - this.Href = this.Href.substring(0, this.Href.indexOf('#')); - } - window.onhashchange = function () { return _this._HandleFragmentChange(); }; - } - Object.defineProperty(NavigationService.prototype, "CurrentUri", { - get: function () { - return new Fayde.Uri(this.Href + "#" + this.Hash); - }, - enumerable: true, - configurable: true - }); - NavigationService.prototype.Navigate = function (uri) { - window.location.hash = uri.toString(); - return true; - }; - NavigationService.prototype._HandleFragmentChange = function () { - this.Hash = window.location.hash; - if (this.Hash) { - this.Hash = this.Hash.substr(1); - } - this.LocationChanged.raise(this, null); - }; - return NavigationService; - })(); - Navigation.NavigationService = NavigationService; - Fayde.CoreLibrary.add(NavigationService); - })(Navigation = Fayde.Navigation || (Fayde.Navigation = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Navigation; - (function (Navigation) { - var RouteMapper = (function (_super) { - __extends(RouteMapper, _super); - function RouteMapper() { - _super.call(this); - RouteMapper.RouteMappingsProperty.Initialize(this); - } - RouteMapper.prototype.MapUri = function (uri) { - var mapped; - for (var en = this.RouteMappings.getEnumerator(); en.moveNext();) { - mapped = en.current.MapUri(uri); - if (mapped) { - var vm = this.ViewModelProvider ? this.ViewModelProvider.ResolveViewModel(mapped) : null; - mapped.DataContext = vm; - return mapped; - } - } - return undefined; - }; - RouteMapper.RouteMappingsProperty = DependencyProperty.RegisterImmutable("RouteMappings", function () { return Fayde.XamlObjectCollection; }, RouteMapper); - RouteMapper.ViewModelProviderProperty = DependencyProperty.Register("ViewModelProvider", function () { return Fayde.MVVM.IViewModelProvider_; }, RouteMapper); - return RouteMapper; - })(Fayde.DependencyObject); - Navigation.RouteMapper = RouteMapper; - Fayde.CoreLibrary.add(RouteMapper); - Fayde.Markup.Content(RouteMapper, RouteMapper.RouteMappingsProperty); - })(Navigation = Fayde.Navigation || (Fayde.Navigation = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Navigation; - (function (Navigation) { - var RouteMapping = (function (_super) { - __extends(RouteMapping, _super); - function RouteMapping() { - _super.apply(this, arguments); - } - RouteMapping.prototype.MapUri = function (uri) { - var matcher = createUriMatcher(this.Uri.toString(), uri.toString()); - var result = matcher.Match(); - if (!result) - return undefined; - if (!this.View) - throw new InvalidOperationException("RouteMapping must have a view. (" + this.Uri.toString() + ")"); - var hashParams = {}; - for (var i = 0; i < result.length; i++) { - var key = result[i].Identifier; - var value = result[i].Value; - hashParams[key] = value; - } - return new Navigation.Route(this.View, hashParams, null); - }; - RouteMapping.ViewProperty = DependencyProperty.Register("View", function () { return Fayde.Uri; }, RouteMapping); - RouteMapping.UriProperty = DependencyProperty.Register("Uri", function () { return Fayde.Uri; }, RouteMapping); - return RouteMapping; - })(Fayde.DependencyObject); - Navigation.RouteMapping = RouteMapping; - Fayde.CoreLibrary.add(RouteMapping); - function createUriMatcher(matchTemplate, actual) { - var i = 0; - var j = 0; - function collectTokenInfo() { - var tokenInfo = { - Identifier: null, - Terminator: null, - Value: null - }; - var index = matchTemplate.indexOf('}', i); - if (index < 0) - throw new InvalidOperationException("Invalid Uri format. '{' needs a closing '}'."); - var len = index - i + 1; - tokenInfo.Identifier = matchTemplate.substr(i + 1, len - 2); - if (!tokenInfo.Identifier) - throw new InvalidOperationException("Invalid Uri format. '{}' must contain an identifier."); - i += len; - tokenInfo.Terminator = (i + 1) < matchTemplate.length ? matchTemplate[i] : '\0'; - return tokenInfo; - } - function findTokenValue(tokenInfo) { - if (tokenInfo.Terminator === '\0') { - tokenInfo.Value = actual.substr(j); - if (tokenInfo.Value) - j += tokenInfo.Value.length; - return tokenInfo; - } - tokenInfo.Value = ""; - while (j < actual.length) { - if (actual[j] == tokenInfo.Terminator) - return; - tokenInfo.Value += actual[j]; - j++; - } - } - return { - Match: function () { - var tokens = []; - if (matchTemplate.length === 0) { - if (actual.length === 0) - return tokens; - return null; - } - while (i < matchTemplate.length && j < actual.length) { - if (matchTemplate[i] === "{") { - tokens.push(findTokenValue(collectTokenInfo())); - continue; - } - if (matchTemplate[i] !== actual[i]) - return null; - i++; - j++; - } - return tokens; - } - }; - } - })(Navigation = Fayde.Navigation || (Fayde.Navigation = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Navigation; - (function (Navigation) { - var UriMapper = (function (_super) { - __extends(UriMapper, _super); - function UriMapper() { - _super.call(this); - UriMapper.UriMappingsProperty.Initialize(this); - } - UriMapper.prototype.MapUri = function (uri) { - var enumerator = this.UriMappings.getEnumerator(); - var mapped; - while (enumerator.moveNext()) { - mapped = enumerator.current.MapUri(uri); - if (mapped) - return mapped; - } - return uri; - }; - UriMapper.UriMappingsProperty = DependencyProperty.RegisterImmutable("UriMappings", function () { return Fayde.XamlObjectCollection; }, UriMapper); - return UriMapper; - })(Fayde.DependencyObject); - Navigation.UriMapper = UriMapper; - Fayde.CoreLibrary.add(UriMapper); - Fayde.Markup.Content(UriMapper, UriMapper.UriMappingsProperty); - })(Navigation = Fayde.Navigation || (Fayde.Navigation = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Navigation; - (function (Navigation) { - var UriMapping = (function (_super) { - __extends(UriMapping, _super); - function UriMapping() { - _super.apply(this, arguments); - } - UriMapping.prototype.MapUri = function (uri) { - var matcher = createUriMatcher(this.Uri.toString(), this.MappedUri.toString(), uri.toString()); - var result = matcher.Match(); - if (!result) - return undefined; - return new Fayde.Uri(result); - }; - UriMapping.MappedUriProperty = DependencyProperty.Register("MappedUri", function () { return Fayde.Uri; }, UriMapping); - UriMapping.UriProperty = DependencyProperty.Register("Uri", function () { return Fayde.Uri; }, UriMapping); - return UriMapping; - })(Fayde.DependencyObject); - Navigation.UriMapping = UriMapping; - Fayde.CoreLibrary.add(UriMapping); - function createUriMatcher(matchTemplate, outputTemplate, actual) { - var i = 0; - var j = 0; - function collectTokenInfo() { - var tokenInfo = { - Identifier: null, - Terminator: null, - Value: null - }; - var index = matchTemplate.indexOf('}', i); - if (index < 0) - throw new InvalidOperationException("Invalid Uri format. '{' needs a closing '}'."); - var len = index - i + 1; - tokenInfo.Identifier = matchTemplate.substr(i + 1, len - 2); - if (!tokenInfo.Identifier) - throw new InvalidOperationException("Invalid Uri format. '{}' must contain an identifier."); - i += len; - tokenInfo.Terminator = (i + 1) < matchTemplate.length ? matchTemplate[i] : '\0'; - return tokenInfo; - } - function findTokenValue(tokenInfo) { - if (tokenInfo.Terminator === '\0') { - tokenInfo.Value = actual.substr(j); - if (tokenInfo.Value) - j += tokenInfo.Value.length; - return tokenInfo; - } - tokenInfo.Value = ""; - while (j < actual.length) { - if (actual[j] == tokenInfo.Terminator) - return; - tokenInfo.Value += actual[j]; - j++; - } - } - function buildMappedUri(tokens) { - var cur = outputTemplate; - var len = tokens.length; - var token; - for (var a = 0; a < len; a++) { - token = tokens[a]; - cur = cur.replace("{" + token.Identifier + "}", token.Value); - } - return cur; - } - return { - Match: function () { - var tokens = []; - if (matchTemplate.length === 0) { - if (actual.length === 0) - return buildMappedUri(tokens); - return null; - } - while (i < matchTemplate.length && j < actual.length) { - if (matchTemplate[i] === "{") { - tokens.push(findTokenValue(collectTokenInfo())); - continue; - } - if (matchTemplate[i] !== actual[i]) - return null; - i++; - j++; - } - return buildMappedUri(tokens); - } - }; - } - })(Navigation = Fayde.Navigation || (Fayde.Navigation = {})); -})(Fayde || (Fayde = {})); -var Color = (function () { - function Color() { - this.R = 0; - this.G = 0; - this.B = 0; - this.A = 1.0; - } - Color.prototype.Add = function (color2) { - var c = new Color(); - c.R = this.R + color2.R; - c.G = this.G + color2.G; - c.B = this.B + color2.B; - c.A = this.A + color2.A; - return c; - }; - Color.prototype.Subtract = function (color2) { - var c = new Color(); - c.R = this.R - color2.R; - c.G = this.G - color2.G; - c.B = this.B - color2.B; - c.A = this.A - color2.A; - return c; - }; - Color.prototype.Multiply = function (factor) { - var c = new Color(); - c.R = this.R * factor; - c.G = this.G * factor; - c.B = this.B * factor; - c.A = this.A * factor; - return c; - }; - Color.prototype.Equals = function (other) { - return this.R === other.R - && this.G === other.G - && this.B === other.B - && this.A === other.A; - }; - Color.prototype.toString = function () { - var r = Math.round(this.R) || 0; - var g = Math.round(this.G) || 0; - var b = Math.round(this.B) || 0; - var a = this.A || 0; - return "rgba(" + r + ", " + g + ", " + b + ", " + a + ")"; - }; - Color.prototype.ToHexStringNoAlpha = function () { - return "#" + this.R.toString(16) + this.G.toString(16) + this.B.toString(16); - }; - Color.prototype.Clone = function () { - return Color.FromRgba(this.R, this.G, this.B, this.A); - }; - Color.LERP = function (start, end, p) { - var c = new Color(); - c.R = start.R + (end.R - start.R) * p; - c.G = start.G + (end.G - start.G) * p; - c.B = start.B + (end.B - start.B) * p; - c.A = start.A + (end.A - start.A) * p; - return c; - }; - Color.FromRgba = function (r, g, b, a) { - var c = new Color(); - c.R = r; - c.G = g; - c.B = b; - c.A = a; - return c; - }; - Color.FromHex = function (hex) { - var match; - var c = new Color(); - if ((match = Color.__AlphaRegex.exec(hex)) != null) { - c.A = parseInt(match[1], 16) / 255.0; - c.R = parseInt(match[2], 16); - c.G = parseInt(match[3], 16); - c.B = parseInt(match[4], 16); - } - else if ((match = Color.__NoAlphaRegex.exec(hex)) != null) { - c.A = 1.0; - c.R = parseInt(match[1], 16); - c.G = parseInt(match[2], 16); - c.B = parseInt(match[3], 16); - } - return c; - }; - Color.__NoAlphaRegex = /#([0-9a-fA-F][0-9a-fA-F]){1}([0-9a-fA-F][0-9a-fA-F]){1}([0-9a-fA-F][0-9a-fA-F]){1}/; - Color.__AlphaRegex = /#([0-9a-fA-F][0-9a-fA-F]){1}([0-9a-fA-F][0-9a-fA-F]){1}([0-9a-fA-F][0-9a-fA-F]){1}([0-9a-fA-F][0-9a-fA-F]){1}/; - Color.KnownColors = { - AliceBlue: Color.FromHex("#FFF0F8FF"), - AntiqueWhite: Color.FromHex("#FFFAEBD7"), - Aqua: Color.FromHex("#FF00FFFF"), - Aquamarine: Color.FromHex("#FF7FFFD4"), - Azure: Color.FromHex("#FFF0FFFF"), - Beige: Color.FromHex("#FFF5F5DC"), - Bisque: Color.FromHex("#FFFFE4C4"), - Black: Color.FromHex("#FF000000"), - BlanchedAlmond: Color.FromHex("#FFFFEBCD"), - Blue: Color.FromHex("#FF0000FF"), - BlueViolet: Color.FromHex("#FF8A2BE2"), - Brown: Color.FromHex("#FFA52A2A"), - BurlyWood: Color.FromHex("#FFDEB887"), - CadetBlue: Color.FromHex("#FF5F9EA0"), - Chartreuse: Color.FromHex("#FF7FFF00"), - Chocolate: Color.FromHex("#FFD2691E"), - Coral: Color.FromHex("#FFFF7F50"), - CornflowerBlue: Color.FromHex("#FF6495ED"), - Cornsilk: Color.FromHex("#FFFFF8DC"), - Crimson: Color.FromHex("#FFDC143C"), - Cyan: Color.FromHex("#FF00FFFF"), - DarkBlue: Color.FromHex("#FF00008B"), - DarkCyan: Color.FromHex("#FF008B8B"), - DarkGoldenrod: Color.FromHex("#FFB8860B"), - DarkGray: Color.FromHex("#FFA9A9A9"), - DarkGreen: Color.FromHex("#FF006400"), - DarkKhaki: Color.FromHex("#FFBDB76B"), - DarkMagenta: Color.FromHex("#FF8B008B"), - DarkOliveGreen: Color.FromHex("#FF556B2F"), - DarkOrange: Color.FromHex("#FFFF8C00"), - DarkOrchid: Color.FromHex("#FF9932CC"), - DarkRed: Color.FromHex("#FF8B0000"), - DarkSalmon: Color.FromHex("#FFE9967A"), - DarkSeaGreen: Color.FromHex("#FF8FBC8F"), - DarkSlateBlue: Color.FromHex("#FF483D8B"), - DarkSlateGray: Color.FromHex("#FF2F4F4F"), - DarkTurquoise: Color.FromHex("#FF00CED1"), - DarkViolet: Color.FromHex("#FF9400D3"), - DeepPink: Color.FromHex("#FFFF1493"), - DeepSkyBlue: Color.FromHex("#FF00BFFF"), - DimGray: Color.FromHex("#FF696969"), - DodgerBlue: Color.FromHex("#FF1E90FF"), - Firebrick: Color.FromHex("#FFB22222"), - FloralWhite: Color.FromHex("#FFFFFAF0"), - ForestGreen: Color.FromHex("#FF228B22"), - Fuchsia: Color.FromHex("#FFFF00FF"), - Gainsboro: Color.FromHex("#FFDCDCDC"), - GhostWhite: Color.FromHex("#FFF8F8FF"), - Gold: Color.FromHex("#FFFFD700"), - Goldenrod: Color.FromHex("#FFDAA520"), - Gray: Color.FromHex("#FF808080"), - Green: Color.FromHex("#FF008000"), - GreenYellow: Color.FromHex("#FFADFF2F"), - Honeydew: Color.FromHex("#FFF0FFF0"), - HotPink: Color.FromHex("#FFFF69B4"), - IndianRed: Color.FromHex("#FFCD5C5C"), - Indigo: Color.FromHex("#FF4B0082"), - Ivory: Color.FromHex("#FFFFFFF0"), - Khaki: Color.FromHex("#FFF0E68C"), - Lavender: Color.FromHex("#FFE6E6FA"), - LavenderBlush: Color.FromHex("#FFFFF0F5"), - LawnGreen: Color.FromHex("#FF7CFC00"), - LemonChiffon: Color.FromHex("#FFFFFACD"), - LightBlue: Color.FromHex("#FFADD8E6"), - LightCoral: Color.FromHex("#FFF08080"), - LightCyan: Color.FromHex("#FFE0FFFF"), - LightGoldenrodYellow: Color.FromHex("#FFFAFAD2"), - LightGray: Color.FromHex("#FFD3D3D3"), - LightGreen: Color.FromHex("#FF90EE90"), - LightPink: Color.FromHex("#FFFFB6C1"), - LightSalmon: Color.FromHex("#FFFFA07A"), - LightSeaGreen: Color.FromHex("#FF20B2AA"), - LightSkyBlue: Color.FromHex("#FF87CEFA"), - LightSlateGray: Color.FromHex("#FF778899"), - LightSteelBlue: Color.FromHex("#FFB0C4DE"), - LightYellow: Color.FromHex("#FFFFFFE0"), - Lime: Color.FromHex("#FF00FF00"), - LimeGreen: Color.FromHex("#FF32CD32"), - Linen: Color.FromHex("#FFFAF0E6"), - Magenta: Color.FromHex("#FFFF00FF"), - Maroon: Color.FromHex("#FF800000"), - MediumAquamarine: Color.FromHex("#FF66CDAA"), - MediumBlue: Color.FromHex("#FF0000CD"), - MediumOrchid: Color.FromHex("#FFBA55D3"), - MediumPurple: Color.FromHex("#FF9370DB"), - MediumSeaGreen: Color.FromHex("#FF3CB371"), - MediumSlateBlue: Color.FromHex("#FF7B68EE"), - MediumSpringGreen: Color.FromHex("#FF00FA9A"), - MediumTurquoise: Color.FromHex("#FF48D1CC"), - MediumVioletRed: Color.FromHex("#FFC71585"), - MidnightBlue: Color.FromHex("#FF191970"), - MintCream: Color.FromHex("#FFF5FFFA"), - MistyRose: Color.FromHex("#FFFFE4E1"), - Moccasin: Color.FromHex("#FFFFE4B5"), - NavajoWhite: Color.FromHex("#FFFFDEAD"), - Navy: Color.FromHex("#FF000080"), - OldLace: Color.FromHex("#FFFDF5E6"), - Olive: Color.FromHex("#FF808000"), - OliveDrab: Color.FromHex("#FF6B8E23"), - Orange: Color.FromHex("#FFFFA500"), - OrangeRed: Color.FromHex("#FFFF4500"), - Orchid: Color.FromHex("#FFDA70D6"), - PaleGoldenrod: Color.FromHex("#FFEEE8AA"), - PaleGreen: Color.FromHex("#FF98FB98"), - PaleTurquoise: Color.FromHex("#FFAFEEEE"), - PaleVioletRed: Color.FromHex("#FFDB7093"), - PapayaWhip: Color.FromHex("#FFFFEFD5"), - PeachPuff: Color.FromHex("#FFFFDAB9"), - Peru: Color.FromHex("#FFCD853F"), - Pink: Color.FromHex("#FFFFC0CB"), - Plum: Color.FromHex("#FFDDA0DD"), - PowderBlue: Color.FromHex("#FFB0E0E6"), - Purple: Color.FromHex("#FF800080"), - Red: Color.FromHex("#FFFF0000"), - RosyBrown: Color.FromHex("#FFBC8F8F"), - RoyalBlue: Color.FromHex("#FF4169E1"), - SaddleBrown: Color.FromHex("#FF8B4513"), - Salmon: Color.FromHex("#FFFA8072"), - SandyBrown: Color.FromHex("#FFF4A460"), - SeaGreen: Color.FromHex("#FF2E8B57"), - SeaShell: Color.FromHex("#FFFFF5EE"), - Sienna: Color.FromHex("#FFA0522D"), - Silver: Color.FromHex("#FFC0C0C0"), - SkyBlue: Color.FromHex("#FF87CEEB"), - SlateBlue: Color.FromHex("#FF6A5ACD"), - SlateGray: Color.FromHex("#FF708090"), - Snow: Color.FromHex("#FFFFFAFA"), - SpringGreen: Color.FromHex("#FF00FF7F"), - SteelBlue: Color.FromHex("#FF4682B4"), - Tan: Color.FromHex("#FFD2B48C"), - Teal: Color.FromHex("#FF008080"), - Thistle: Color.FromHex("#FFD8BFD8"), - Tomato: Color.FromHex("#FFFF6347"), - Transparent: Color.FromHex("#00FFFFFF"), - Turquoise: Color.FromHex("#FF40E0D0"), - Violet: Color.FromHex("#FFEE82EE"), - Wheat: Color.FromHex("#FFF5DEB3"), - White: Color.FromHex("#FFFFFFFF"), - WhiteSmoke: Color.FromHex("#FFF5F5F5"), - Yellow: Color.FromHex("#FFFFFF00"), - YellowGreen: Color.FromHex("#FF9ACD32") - }; - return Color; -})(); -Fayde.CoreLibrary.addPrimitive(Color); -nullstone.registerTypeConverter(Color, function (val) { - if (!val || val instanceof Color) - return val; - val = val.toString(); - if (val[0] !== "#") { - var color = Color.KnownColors[val]; - if (!color) - throw new NotSupportedException("Unknown Color: " + val); - return color; - } - return Color.FromHex(val); -}); -var CornerRadius = (function (_super) { - __extends(CornerRadius, _super); - function CornerRadius() { - _super.apply(this, arguments); - } - CornerRadius.prototype.Clone = function () { - return new CornerRadius(this.topLeft, this.topRight, this.bottomRight, this.bottomLeft); - }; - return CornerRadius; -})(minerva.CornerRadius); -Fayde.CoreLibrary.addPrimitive(CornerRadius); -nullstone.registerTypeConverter(CornerRadius, function (val) { - if (!val) - return new CornerRadius(); - if (val instanceof CornerRadius) - return val; - if (typeof val === "number") - return new CornerRadius(val, val, val, val); - var tokens = Fayde.splitCommaList(val.toString()); - var topLeft, topRight, bottomRight, bottomLeft; - if (tokens.length === 1) { - topLeft = topRight = bottomRight = bottomLeft = parseFloat(tokens[0]); - } - else if (tokens.length === 4) { - topLeft = parseFloat(tokens[0]); - topRight = parseFloat(tokens[1]); - bottomRight = parseFloat(tokens[2]); - bottomLeft = parseFloat(tokens[3]); - } - else { - throw new Exception("Cannot parse CornerRadius value '" + val + "'"); - } - return new CornerRadius(topLeft, topRight, bottomRight, bottomLeft); -}); -var DurationType; -(function (DurationType) { - DurationType[DurationType["Automatic"] = 0] = "Automatic"; - DurationType[DurationType["Forever"] = 1] = "Forever"; - DurationType[DurationType["TimeSpan"] = 2] = "TimeSpan"; -})(DurationType || (DurationType = {})); -var Duration = (function () { - function Duration(ts) { - this._Type = DurationType.TimeSpan; - this._TimeSpan = ts; - } - Duration.prototype.Clone = function () { - var dur = new Duration(); - dur._Type = this._Type; - dur._TimeSpan = this._TimeSpan; - return dur; - }; - Object.defineProperty(Duration.prototype, "Type", { - get: function () { return this._Type; }, - enumerable: true, - configurable: true - }); - Object.defineProperty(Duration.prototype, "TimeSpan", { - get: function () { - if (this._Type === DurationType.TimeSpan) - return this._TimeSpan; - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(Duration.prototype, "HasTimeSpan", { - get: function () { return this._Type === DurationType.TimeSpan; }, - enumerable: true, - configurable: true - }); - Object.defineProperty(Duration.prototype, "IsForever", { - get: function () { return this._Type === DurationType.Forever; }, - enumerable: true, - configurable: true - }); - Object.defineProperty(Duration.prototype, "IsAutomatic", { - get: function () { return this._Type === DurationType.Automatic; }, - enumerable: true, - configurable: true - }); - Object.defineProperty(Duration.prototype, "IsZero", { - get: function () { return this._Type === DurationType.TimeSpan && this._TimeSpan.Ticks === 0; }, - enumerable: true, - configurable: true - }); - Duration.Automatic = (function () { var d = new Duration(); d._Type = DurationType.Automatic; return d; })(); - Duration.Forever = (function () { var d = new Duration(); d._Type = DurationType.Forever; return d; })(); - return Duration; -})(); -Fayde.CoreLibrary.addPrimitive(Duration); -nullstone.registerTypeConverter(Duration, function (val) { - if (val instanceof Duration) - return val; - if (!val || val.toString().toLowerCase() === "automatic") - return Duration.Automatic; - if (val.toString().toLowerCase() === "forever") - return Duration.Forever; - var ts = nullstone.convertAnyToType(val, TimeSpan); - return new Duration(ts); -}); -var FontFamily = (function () { - function FontFamily(FamilyNames) { - this.FamilyNames = FamilyNames; - } - FontFamily.prototype.toString = function () { - return this.FamilyNames; - }; - FontFamily.prototype.Clone = function () { - return new FontFamily(this.FamilyNames); - }; - return FontFamily; -})(); -Fayde.CoreLibrary.addPrimitive(FontFamily); -nullstone.registerTypeConverter(FontFamily, function (val) { - if (!val) - return new FontFamily(minerva.Font.DEFAULT_FAMILY); - return new FontFamily(val.toString()); -}); -var KeyTime = (function () { - function KeyTime() { - this._IsPaced = false; - this._IsUniform = false; - this._TimeSpan = null; - this._Percent = null; - this.IsValid = true; - } - KeyTime.CreateUniform = function () { - var kt = new KeyTime(); - kt._IsUniform = true; - return kt; - }; - KeyTime.CreateTimeSpan = function (ts) { - var kt = new KeyTime(); - kt._TimeSpan = ts; - return kt; - }; - KeyTime.prototype.Clone = function () { - var kt = new KeyTime(); - kt._TimeSpan = this._TimeSpan; - kt._IsPaced = this._IsPaced; - kt._IsUniform = this._IsUniform; - kt._Percent = this._Percent; - return kt; - }; - Object.defineProperty(KeyTime.prototype, "IsPaced", { - get: function () { return this._IsPaced; }, - enumerable: true, - configurable: true - }); - Object.defineProperty(KeyTime.prototype, "IsUniform", { - get: function () { return this._IsUniform; }, - enumerable: true, - configurable: true - }); - Object.defineProperty(KeyTime.prototype, "HasTimeSpan", { - get: function () { return this._TimeSpan != null; }, - enumerable: true, - configurable: true - }); - Object.defineProperty(KeyTime.prototype, "TimeSpan", { - get: function () { return this._TimeSpan; }, - enumerable: true, - configurable: true - }); - Object.defineProperty(KeyTime.prototype, "HasPercent", { - get: function () { return this._Percent != null; }, - enumerable: true, - configurable: true - }); - Object.defineProperty(KeyTime.prototype, "Percent", { - get: function () { return this._Percent; }, - enumerable: true, - configurable: true - }); - return KeyTime; -})(); -Fayde.CoreLibrary.addPrimitive(KeyTime); -nullstone.registerTypeConverter(KeyTime, function (val) { - if (!val || val.toString().toLowerCase() === "uniform") - return KeyTime.CreateUniform(); - var ts = nullstone.convertAnyToType(val, TimeSpan); - return KeyTime.CreateTimeSpan(ts); -}); -var Length = (function () { - function Length() { - } - return Length; -})(); -Fayde.CoreLibrary.addPrimitive(Length); -nullstone.registerTypeConverter(Length, function (val) { - if (!val || val.toString().toLowerCase() === "auto") - return Number.NaN; - if (typeof val === "number") - return val; - return parseFloat(val.toString()); -}); -var Rect = (function (_super) { - __extends(Rect, _super); - function Rect() { - _super.apply(this, arguments); - } - Rect.prototype.Clone = function () { - return new Rect(this.x, this.y, this.width, this.height); - }; - return Rect; -})(minerva.Rect); -Fayde.CoreLibrary.addPrimitive(Rect); -nullstone.registerTypeConverter(Rect, function (val) { - if (!val) - return new Rect(); - if (val instanceof Rect) - return val; - var tokens = Fayde.splitCommaList(val.toString()); - if (tokens.length === 4) { - return new Rect(parseFloat(tokens[0]), parseFloat(tokens[1]), parseFloat(tokens[2]), parseFloat(tokens[3])); - } - throw new Error("Cannot parse Rect value '" + val + "'"); -}); -var Size = (function (_super) { - __extends(Size, _super); - function Size() { - _super.apply(this, arguments); - } - Size.prototype.Clone = function () { - return new Size(this.width, this.height); - }; - return Size; -})(minerva.Size); -Fayde.CoreLibrary.addPrimitive(Size); -nullstone.registerTypeConverter(Size, function (val) { - if (!val) - return new Size(); - if (val instanceof Size) - return val; - if (val instanceof minerva.Size) - return new Size(val.width, val.height); - var tokens = Fayde.splitCommaList(val.toString()); - if (tokens.length === 2) { - var w = parseFloat(tokens[0]); - var h = parseFloat(tokens[1]); - return new Size(w, h); - } - throw new Exception("Cannot parse Size value '" + val + "'"); -}); -var Thickness = (function (_super) { - __extends(Thickness, _super); - function Thickness() { - _super.apply(this, arguments); - } - Thickness.prototype.Clone = function () { - return new Thickness(this.left, this.top, this.right, this.bottom); - }; - Thickness.prototype.toString = function () { - var l = this.left || 0; - var t = this.top || 0; - var r = this.right || 0; - var b = this.bottom || 0; - return [l, t, r, b].join(','); - }; - return Thickness; -})(minerva.Thickness); -Fayde.CoreLibrary.addPrimitive(Thickness); -nullstone.registerTypeConverter(Thickness, function (val) { - if (!val) - return new Thickness(); - if (typeof val === "number") - return new Thickness(val, val, val, val); - if (val instanceof Thickness) { - var t = val; - return new Thickness(t.left, t.top, t.right, t.bottom); - } - var tokens = Fayde.splitCommaList(val.toString()); - var left, top, right, bottom; - if (tokens.length === 1) { - left = top = right = bottom = parseFloat(tokens[0]); - } - else if (tokens.length === 2) { - left = right = parseFloat(tokens[0]); - top = bottom = parseFloat(tokens[1]); - } - else if (tokens.length === 4) { - left = parseFloat(tokens[0]); - top = parseFloat(tokens[1]); - right = parseFloat(tokens[2]); - bottom = parseFloat(tokens[3]); - } - else { - throw new Exception("Cannot parse Thickness value '" + val + "'"); - } - return new Thickness(left, top, right, bottom); -}); -var Fayde; -(function (Fayde) { - function splitCommaList(str) { - var tokens = []; - for (var i = 0, arr = str.split(' ').join(',').split(','); i < arr.length; i++) { - var cur = arr[i]; - if (cur) - tokens.push(cur); - } - return tokens; - } - Fayde.splitCommaList = splitCommaList; -})(Fayde || (Fayde = {})); -var BError = (function () { - function BError() { - } - BError.prototype.ThrowException = function () { - var ex; - switch (this.Number) { - case BError.Attach: - ex = new AttachException(this.Message, this.Data); - break; - case BError.Argument: - ex = new ArgumentException(this.Message); - break; - case BError.InvalidOperation: - ex = new InvalidOperationException(this.Message); - break; - case BError.XamlParse: - ex = new XamlParseException(this.Message); - break; - default: - ex = new Exception(this.Message); - break; - } - throw ex; - }; - BError.Argument = 2; - BError.InvalidOperation = 3; - BError.XamlParse = 5; - BError.Attach = 6; - return BError; -})(); -var Fayde; -(function (Fayde) { - function Bootstrap(onLoaded) { - var url = document.body.getAttribute("fayde-app"); - if (!url) { - console.warn("No application specified."); - return; - } - var canvas = document.getElementsByTagName("canvas")[0]; - if (!canvas) - document.body.appendChild(canvas = document.createElement("canvas")); - bootstrap(url, canvas, onLoaded); - } - Fayde.Bootstrap = Bootstrap; - function bootstrap(url, canvas, onLoaded) { - var app; - function resolveConfig() { - perfex.phases.start('ResolveConfig'); - return new Promise(function (resolve, reject) { - Fayde.LoadConfigJson(function (config, err) { - if (err) - console.warn('Could not load fayde configuration file.', err); - resolve(); - }); - }); - } - function getApp() { - perfex.phases.start('RetrieveApp'); - return Fayde.Markup.Retrieve(url); - } - function resolveTheme(markup) { - perfex.phases.start('ResolveTheme'); - var root = markup.root; - var themeName = root.getAttribute("ThemeName") || Fayde.DEFAULT_THEME_NAME; - return Fayde.ThemeManager.LoadAsync(themeName); - } - function resolveApp() { - perfex.phases.start('ResolveApp'); - return Fayde.Application.GetAsync(url) - .then(function (result) { return Fayde.Application.Current = app = result; }); - } - function finishError(err) { - console.error("An error occurred retrieving the application.", err); - } - function startApp() { - perfex.phases.start('StartApp'); - app.Attach(canvas); - app.Start(); - loaded(); - } - function loaded() { - onLoaded && onLoaded(app); - perfex.phases.start('Running'); - } - resolveConfig() - .then(getApp, finishError) - .then(resolveTheme, finishError) - .then(resolveApp, finishError) - .then(startApp, finishError); - } -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var jsonFile = 'fayde.json'; - function LoadConfigJson(onComplete) { - require(['text!' + jsonFile], function (jsontext) { return configure(jsontext, onComplete); }, function (err) { return onComplete(err); }); - } - Fayde.LoadConfigJson = LoadConfigJson; - function configure(jsontext, onComplete) { - var json; - try { - json = JSON.parse(jsontext); - } - catch (err) { - return onComplete(null, err); - } - if (json) { - libs.configure(json.libs || {}); - themes.configure(json.themes || {}); - debug.configure(json.debug || {}); - } - onComplete(json); - } - var libs; - (function (libs_1) { - function configure(json) { - var libs = []; - for (var libName in json) { - libs.push(getLibConfig(libName, json[libName])); - } - for (var i = 0; i < libs.length; i++) { - setupLibraryConfig(libs[i]); - } - } - libs_1.configure = configure; - function getLibConfig(libName, libJson) { - return { - name: libName, - path: libJson.path, - base: libJson.base, - deps: libJson.deps, - exports: libJson.exports, - useMin: libJson.useMin - }; - } - function setupLibraryConfig(lib) { - var uri = new Fayde.Uri(lib.name); - if (uri.scheme !== "http") - uri = new Fayde.Uri("lib://" + lib.name); - var library = Fayde.TypeManager.resolveLibrary(uri.toString()); - if (!!lib.path) - library.sourcePath = lib.path; - if (!!lib.base) - library.basePath = lib.base; - if (!!lib.exports) - library.exports = lib.exports; - if (!!lib.deps) - library.deps = lib.deps; - library.useMin = (lib.useMin === true); - library.$configModule(); - } - })(libs || (libs = {})); - var themes; - (function (themes) { - function configure(json) { - for (var libName in json) { - var co = json[libName]; - var path = co === "none" ? null : (co.path ? co.path : undefined); - Fayde.ThemeConfig.Set(libName, path); - } - } - themes.configure = configure; - })(themes || (themes = {})); - var debug; - (function (debug) { - function configure(json) { - if (toBoolean(json.warnMissingThemes)) - Fayde.Theme.WarnMissing = true; - if (toBoolean(json.warnBrokenPath)) - Fayde.Data.WarnBrokenPath = true; - } - debug.configure = configure; - function toBoolean(val) { - return val === "true" - || val === true; - } - })(debug || (debug = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Render; - (function (Render) { - Render.Debug = false; - Render.DebugIndent = 0; - })(Render = Fayde.Render || (Fayde.Render = {})); - var Layout; - (function (Layout) { - Layout.Debug = false; - Layout.DebugIndent = 0; - })(Layout = Fayde.Layout || (Fayde.Layout = {})); - var Media; - (function (Media) { - var Animation; - (function (Animation) { - Animation.Log = false; - Animation.LogApply = false; - })(Animation = Media.Animation || (Media.Animation = {})); - var VSM; - (function (VSM) { - VSM.Debug = false; - })(VSM = Media.VSM || (Media.VSM = {})); - })(Media = Fayde.Media || (Fayde.Media = {})); - var Data; - (function (Data) { - Data.Debug = false; - Data.IsCounterEnabled = false; - Data.DataContextCounter = 0; - })(Data = Fayde.Data || (Fayde.Data = {})); - Fayde.IsInspectionOn = false; -})(Fayde || (Fayde = {})); -var NumberEx; -(function (NumberEx) { - var epsilon = 1.192093E-07; - var adjustment = 10; - function AreClose(val1, val2) { - if (val1 === val2) - return true; - var softdiff = (Math.abs(val1) + Math.abs(val2) + adjustment) * epsilon; - var diff = val1 - val2; - return -softdiff < diff && diff < softdiff; - } - NumberEx.AreClose = AreClose; - function IsLessThanClose(val1, val2) { - return val1 > val2 || !AreClose(val1, val2); - } - NumberEx.IsLessThanClose = IsLessThanClose; - function IsGreaterThanClose(val1, val2) { - return val1 > val2 || !AreClose(val1, val2); - } - NumberEx.IsGreaterThanClose = IsGreaterThanClose; -})(NumberEx || (NumberEx = {})); -var StringEx; -(function (StringEx) { - function Format(format) { - var items = []; - for (var _i = 1; _i < arguments.length; _i++) { - items[_i - 1] = arguments[_i]; - } - var args = arguments; - return format.replace(/{(\d+)}/g, function (match) { - var matches = []; - for (var _i = 1; _i < arguments.length; _i++) { - matches[_i - 1] = arguments[_i]; - } - var i = parseInt(matches[0]); - return typeof items[i] != 'undefined' - ? items[i] - : match; - }); - } - StringEx.Format = Format; -})(StringEx || (StringEx = {})); -var TimelineProfile = (function () { - function TimelineProfile() { - } - TimelineProfile.Parse = function (isStart, name) { - if (!isStart) - return TimelineProfile._FinishEvent("Parse", name); - TimelineProfile._Events.push({ - Type: "Parse", - Name: name, - Time: new Date().valueOf() - }); - }; - TimelineProfile.Navigate = function (isStart, name) { - if (!isStart) - return TimelineProfile._FinishEvent("Navigate", name); - TimelineProfile._Events.push({ - Type: "Navigate", - Name: name, - Time: new Date().valueOf(), - }); - }; - TimelineProfile.LayoutPass = function (isStart) { - if (!TimelineProfile.IsNextLayoutPassProfiled) - return; - if (!isStart) { - TimelineProfile.IsNextLayoutPassProfiled = false; - return TimelineProfile._FinishEvent("LayoutPass"); - } - TimelineProfile._Events.push({ - Type: "LayoutPass", - Name: "", - Time: new Date().valueOf(), - }); - }; - TimelineProfile._FinishEvent = function (type, name) { - var evts = TimelineProfile._Events; - var len = evts.length; - var evt; - for (var i = len - 1; i >= 0; i--) { - evt = evts[i]; - if (evt.Type === type && (!name || evt.Name === name)) { - evts.splice(i, 1); - break; - } - evt = null; - } - if (!evt) - return; - TimelineProfile.Groups.push({ - Type: evt.Type, - Data: evt.Name, - Start: evt.Time - TimelineProfile.TimelineStart, - Length: new Date().valueOf() - evt.Time - }); - }; - TimelineProfile._Events = []; - TimelineProfile.Groups = []; - TimelineProfile.TimelineStart = 0; - TimelineProfile.IsNextLayoutPassProfiled = true; - return TimelineProfile; -})(); -TimelineProfile.TimelineStart = new Date().valueOf(); -/// -var Fayde; -(function (Fayde) { - var Shapes; - (function (Shapes) { - var DoubleCollection = (function (_super) { - __extends(DoubleCollection, _super); - function DoubleCollection() { - _super.apply(this, arguments); - } - return DoubleCollection; - })(Fayde.XamlObjectCollection); - Shapes.DoubleCollection = DoubleCollection; - Fayde.CoreLibrary.add(DoubleCollection); - })(Shapes = Fayde.Shapes || (Fayde.Shapes = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Shapes; - (function (Shapes) { - var ShapeUpdater = minerva.shapes.shape.ShapeUpdater; - var Shape = (function (_super) { - __extends(Shape, _super); - function Shape() { - _super.call(this); - Fayde.FrameworkElement.WidthProperty.Store.ListenToChanged(this, Fayde.FrameworkElement.WidthProperty, onSizeChanged, this); - Fayde.FrameworkElement.HeightProperty.Store.ListenToChanged(this, Fayde.FrameworkElement.HeightProperty, onSizeChanged, this); - } - Shape.prototype.CreateLayoutUpdater = function () { - return new ShapeUpdater(); - }; - Shape.FillProperty = DependencyProperty.Register("Fill", function () { return Fayde.Media.Brush; }, Shape); - Shape.StretchProperty = DependencyProperty.Register("Stretch", function () { return new Fayde.Enum(Fayde.Media.Stretch); }, Shape, Fayde.Media.Stretch.None); - Shape.StrokeProperty = DependencyProperty.Register("Stroke", function () { return Fayde.Media.Brush; }, Shape); - Shape.StrokeThicknessProperty = DependencyProperty.RegisterFull("StrokeThickness", function () { return Number; }, Shape, 1.0, undefined, strokeThicknessCoercer); - Shape.StrokeDashArrayProperty = DependencyProperty.Register("StrokeDashArray", function () { return Shapes.DoubleCollection; }, Shape); - Shape.StrokeDashCapProperty = DependencyProperty.Register("StrokeDashCap", function () { return new Fayde.Enum(Shapes.PenLineCap); }, Shape, Shapes.PenLineCap.Flat); - Shape.StrokeDashOffsetProperty = DependencyProperty.Register("StrokeDashOffset", function () { return Number; }, Shape, 0.0); - Shape.StrokeEndLineCapProperty = DependencyProperty.Register("StrokeEndLineCap", function () { return new Fayde.Enum(Shapes.PenLineCap); }, Shape, Shapes.PenLineCap.Flat); - Shape.StrokeLineJoinProperty = DependencyProperty.Register("StrokeLineJoin", function () { return new Fayde.Enum(Shapes.PenLineJoin); }, Shape, Shapes.PenLineJoin.Miter); - Shape.StrokeMiterLimitProperty = DependencyProperty.Register("StrokeMiterLimit", function () { return Number; }, Shape, 10.0); - Shape.StrokeStartLineCapProperty = DependencyProperty.Register("StrokeStartLineCap", function () { return new Fayde.Enum(Shapes.PenLineCap); }, Shape, Shapes.PenLineCap.Flat); - return Shape; - })(Fayde.FrameworkElement); - Shapes.Shape = Shape; - Fayde.CoreLibrary.add(Shape); - function onSizeChanged(shape, args) { - var updater = shape.XamlNode.LayoutUpdater; - updater.invalidateMeasure(); - } - function strokeThicknessCoercer(dobj, propd, value) { - if (value instanceof Thickness) - return value.left; - return value; - } - var reactions; - (function (reactions) { - Fayde.UIReaction(Shape.StretchProperty, function (upd, ov, nv) { return upd.invalidateMeasure(); }, false); - Fayde.UIReaction(Shape.FillProperty, function (upd, ov, nv) { return upd.invalidateNaturalBounds(); }); - Fayde.UIReaction(Shape.StrokeProperty, function (upd, ov, nv) { return upd.invalidateNaturalBounds(); }); - Fayde.UIReaction(Shape.StrokeThicknessProperty, function (upd, ov, nv) { return upd.invalidateNaturalBounds(); }, false); - Fayde.UIReaction(Shape.StrokeDashArrayProperty, function (upd, ov, nv) { return upd.invalidateNaturalBounds(); }); - Fayde.UIReaction(Shape.StrokeDashCapProperty, function (upd, ov, nv) { return upd.invalidateNaturalBounds(); }, false); - Fayde.UIReaction(Shape.StrokeDashOffsetProperty, function (upd, ov, nv) { return upd.invalidateNaturalBounds(); }, false); - Fayde.UIReaction(Shape.StrokeEndLineCapProperty, function (upd, ov, nv) { return upd.invalidateNaturalBounds(); }, false); - Fayde.UIReaction(Shape.StrokeLineJoinProperty, function (upd, ov, nv) { return upd.invalidateNaturalBounds(); }, false); - Fayde.UIReaction(Shape.StrokeMiterLimitProperty, function (upd, ov, nv) { return upd.invalidateNaturalBounds(); }, false); - Fayde.UIReaction(Shape.StrokeStartLineCapProperty, function (upd, ov, nv) { return upd.invalidateNaturalBounds(); }, false); - })(reactions || (reactions = {})); - })(Shapes = Fayde.Shapes || (Fayde.Shapes = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Shapes; - (function (Shapes) { - var EllipseUpdater = minerva.shapes.ellipse.EllipseUpdater; - var Ellipse = (function (_super) { - __extends(Ellipse, _super); - function Ellipse() { - _super.call(this); - this.Stretch = Fayde.Media.Stretch.Fill; - } - Ellipse.prototype.CreateLayoutUpdater = function () { - return new EllipseUpdater(); - }; - return Ellipse; - })(Shapes.Shape); - Shapes.Ellipse = Ellipse; - Fayde.CoreLibrary.add(Ellipse); - })(Shapes = Fayde.Shapes || (Fayde.Shapes = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Shapes; - (function (Shapes) { - var LineUpdater = minerva.shapes.line.LineUpdater; - var Line = (function (_super) { - __extends(Line, _super); - function Line() { - _super.apply(this, arguments); - } - Line.prototype.CreateLayoutUpdater = function () { - return new LineUpdater(); - }; - Line.X1Property = DependencyProperty.Register("X1", function () { return Number; }, Line, 0.0); - Line.Y1Property = DependencyProperty.Register("Y1", function () { return Number; }, Line, 0.0); - Line.X2Property = DependencyProperty.Register("X2", function () { return Number; }, Line, 0.0); - Line.Y2Property = DependencyProperty.Register("Y2", function () { return Number; }, Line, 0.0); - return Line; - })(Shapes.Shape); - Shapes.Line = Line; - Fayde.CoreLibrary.add(Line); - var reactions; - (function (reactions) { - Fayde.UIReaction(Line.X1Property, function (upd, ov, nv) { return upd.invalidatePath(); }, false); - Fayde.UIReaction(Line.Y1Property, function (upd, ov, nv) { return upd.invalidatePath(); }, false); - Fayde.UIReaction(Line.X2Property, function (upd, ov, nv) { return upd.invalidatePath(); }, false); - Fayde.UIReaction(Line.Y2Property, function (upd, ov, nv) { return upd.invalidatePath(); }, false); - })(reactions || (reactions = {})); - })(Shapes = Fayde.Shapes || (Fayde.Shapes = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Shapes; - (function (Shapes) { - var PathUpdater = minerva.shapes.path.PathUpdater; - var Path = (function (_super) { - __extends(Path, _super); - function Path() { - _super.apply(this, arguments); - } - Path.prototype.CreateLayoutUpdater = function () { return new PathUpdater(); }; - Path._DataCoercer = function (dobj, propd, value) { - if (typeof value === "string") - return Fayde.Media.ParseGeometry(value); - return value; - }; - Path.DataProperty = DependencyProperty.RegisterFull("Data", function () { return Fayde.Media.Geometry; }, Path, undefined, undefined, Path._DataCoercer, undefined, undefined, false); - return Path; - })(Shapes.Shape); - Shapes.Path = Path; - Fayde.CoreLibrary.add(Path); - var reactions; - (function (reactions) { - Fayde.UIReaction(Path.DataProperty, function (upd, ov, nv) { return upd.invalidateNaturalBounds(); }); - })(reactions || (reactions = {})); - })(Shapes = Fayde.Shapes || (Fayde.Shapes = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Shapes; - (function (Shapes) { - var PointCollection = (function () { - function PointCollection() { - this._ht = []; - } - Object.defineProperty(PointCollection.prototype, "Count", { - get: function () { - return this._ht.length; - }, - enumerable: true, - configurable: true - }); - PointCollection.FromData = function (data) { - var pc = new PointCollection(); - pc._ht = pc._ht.concat(Fayde.Media.ParseShapePoints(data)); - return pc; - }; - PointCollection.FromArray = function (data) { - var pc = new PointCollection(); - pc._ht = pc._ht.concat(data); - return pc; - }; - PointCollection.prototype.GetValueAt = function (index) { - return this._ht[index]; - }; - PointCollection.prototype.SetValueAt = function (index, value) { - if (index < 0 || index >= this._ht.length) - return false; - var removed = this._ht[index]; - var added = value; - this._ht[index] = added; - Fayde.Incite(this); - }; - PointCollection.prototype.Add = function (value) { - this._ht.push(value); - Fayde.Incite(this); - }; - PointCollection.prototype.AddRange = function (points) { - this._ht.push.apply(this._ht, points); - Fayde.Incite(this); - }; - PointCollection.prototype.Insert = function (index, value) { - if (index < 0) - return; - var len = this._ht.length; - if (index > len) - index = len; - this._ht.splice(index, 0, value); - Fayde.Incite(this); - }; - PointCollection.prototype.Remove = function (value) { - var index = this.IndexOf(value); - if (index === -1) - return false; - this.RemoveAt(index); - Fayde.Incite(this); - return true; - }; - PointCollection.prototype.RemoveAt = function (index) { - if (index < 0 || index >= this._ht.length) - return; - var value = this._ht.splice(index, 1)[0]; - Fayde.Incite(this); - }; - PointCollection.prototype.Clear = function () { - this._ht = []; - Fayde.Incite(this); - }; - PointCollection.prototype.IndexOf = function (value) { - var count = this._ht.length; - for (var i = 0; i < count; i++) { - if (nullstone.equals(value, this._ht[i])) - return i; - } - return -1; - }; - PointCollection.prototype.Contains = function (value) { - return this.IndexOf(value) > -1; - }; - PointCollection.prototype.getEnumerator = function (reverse) { - return nullstone.IEnumerator_.fromArray(this._ht, reverse); - }; - return PointCollection; - })(); - Shapes.PointCollection = PointCollection; - Fayde.CoreLibrary.add(PointCollection); - nullstone.ICollection_.mark(PointCollection); - nullstone.registerTypeConverter(PointCollection, function (val) { - var pc = new PointCollection(); - pc.AddRange(Fayde.Media.ParseShapePoints(val)); - return pc; - }); - })(Shapes = Fayde.Shapes || (Fayde.Shapes = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Shapes; - (function (Shapes) { - var PolygonUpdater = minerva.shapes.polygon.PolygonUpdater; - var Polygon = (function (_super) { - __extends(Polygon, _super); - function Polygon() { - _super.call(this); - this.Points = new Shapes.PointCollection(); - } - Polygon.prototype.CreateLayoutUpdater = function () { - return new PolygonUpdater(); - }; - Polygon._PointsCoercer = function (dobj, propd, value) { - if (typeof value === "string") - value = Shapes.PointCollection.FromData(value); - if (value instanceof Array) - value = Shapes.PointCollection.FromArray(value); - return value; - }; - Polygon.FillRuleProperty = DependencyProperty.RegisterCore("FillRule", function () { return new Fayde.Enum(Shapes.FillRule); }, Polygon, Shapes.FillRule.EvenOdd); - Polygon.PointsProperty = DependencyProperty.RegisterFull("Points", function () { return Shapes.PointCollection; }, Polygon, undefined, undefined, Polygon._PointsCoercer); - return Polygon; - })(Shapes.Shape); - Shapes.Polygon = Polygon; - Fayde.CoreLibrary.add(Polygon); - var reactions; - (function (reactions) { - Fayde.UIReaction(Polygon.FillRuleProperty, function (upd, ov, nv) { return upd.invalidateFillRule(); }, false); - Fayde.UIReaction(Polygon.PointsProperty, function (upd, ov, nv) { - upd.assets.points = nv._ht; - upd.invalidatePath(); - }, true, false); - })(reactions || (reactions = {})); - })(Shapes = Fayde.Shapes || (Fayde.Shapes = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Shapes; - (function (Shapes) { - var PolylineUpdater = minerva.shapes.polyline.PolylineUpdater; - var Polyline = (function (_super) { - __extends(Polyline, _super); - function Polyline() { - _super.call(this); - this.Points = new Shapes.PointCollection(); - } - Polyline.prototype.CreateLayoutUpdater = function () { - return new PolylineUpdater(); - }; - Polyline._PointsCoercer = function (d, propd, value) { - if (typeof value === "string") - value = Shapes.PointCollection.FromData(value); - if (value instanceof Array) - value = Shapes.PointCollection.FromArray(value); - return value; - }; - Polyline.FillRuleProperty = DependencyProperty.RegisterCore("FillRule", function () { return new Fayde.Enum(Shapes.FillRule); }, Polyline, Shapes.FillRule.EvenOdd); - Polyline.PointsProperty = DependencyProperty.RegisterFull("Points", function () { return Shapes.PointCollection; }, Polyline, undefined, undefined, Polyline._PointsCoercer); - return Polyline; - })(Shapes.Shape); - Shapes.Polyline = Polyline; - Fayde.CoreLibrary.add(Polyline); - var reactions; - (function (reactions) { - Fayde.UIReaction(Polyline.FillRuleProperty, function (upd, ov, nv) { return upd.invalidateFillRule(); }, false); - Fayde.UIReaction(Polyline.PointsProperty, function (upd, ov, nv) { - upd.assets.points = nv._ht; - upd.invalidatePath(); - }, true, false); - })(reactions || (reactions = {})); - })(Shapes = Fayde.Shapes || (Fayde.Shapes = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Shapes; - (function (Shapes) { - var RectangleUpdater = minerva.shapes.rectangle.RectangleUpdater; - var Rectangle = (function (_super) { - __extends(Rectangle, _super); - function Rectangle() { - _super.call(this); - this.Stretch = Fayde.Media.Stretch.Fill; - } - Rectangle.prototype.CreateLayoutUpdater = function () { - return new RectangleUpdater(); - }; - Rectangle.RadiusXProperty = DependencyProperty.Register("RadiusX", function () { return Number; }, Rectangle, 0.0); - Rectangle.RadiusYProperty = DependencyProperty.Register("RadiusY", function () { return Number; }, Rectangle, 0.0); - return Rectangle; - })(Shapes.Shape); - Shapes.Rectangle = Rectangle; - Fayde.CoreLibrary.add(Rectangle); - var reactions; - (function (reactions) { - Fayde.UIReaction(Rectangle.RadiusXProperty, function (upd, ov, nv) { return upd.invalidate(); }, false); - Fayde.UIReaction(Rectangle.RadiusYProperty, function (upd, ov, nv) { return upd.invalidate(); }, false); - })(reactions || (reactions = {})); - })(Shapes = Fayde.Shapes || (Fayde.Shapes = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Text; - (function (Text) { - var Buffer; - (function (Buffer) { - function cut(text, start, len) { - if (!text) - return ""; - return text.slice(0, start) + text.slice(start + len); - } - Buffer.cut = cut; - function insert(text, index, str) { - if (!text) - return str; - return [text.slice(0, index), str, text.slice(index)].join(''); - } - Buffer.insert = insert; - function replace(text, start, len, str) { - if (!text) - return str; - return [text.slice(0, start), str, text.slice(start + len)].join(''); - } - Buffer.replace = replace; - })(Buffer = Text.Buffer || (Text.Buffer = {})); - })(Text = Fayde.Text || (Fayde.Text = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Text; - (function (Text) { - (function (EmitChangedType) { - EmitChangedType[EmitChangedType["NOTHING"] = 0] = "NOTHING"; - EmitChangedType[EmitChangedType["SELECTION"] = 1] = "SELECTION"; - EmitChangedType[EmitChangedType["TEXT"] = 2] = "TEXT"; - })(Text.EmitChangedType || (Text.EmitChangedType = {})); - var EmitChangedType = Text.EmitChangedType; - var Proxy = (function () { - function Proxy(eventsMask, maxUndoCount) { - this.selAnchor = 0; - this.selCursor = 0; - this.selText = ""; - this.text = ""; - this.maxLength = 0; - this.acceptsReturn = false; - this.$$batch = 0; - this.$$emit = EmitChangedType.NOTHING; - this.$$syncing = false; - this.$$eventsMask = eventsMask; - this.$$history = new Text.History.Tracker(maxUndoCount); - this.SyncSelectionStart = function (value) { - }; - this.SyncSelectionLength = function (value) { - }; - this.SyncText = function (value) { - }; - } - Proxy.prototype.setAnchorCursor = function (anchor, cursor) { - if (this.selAnchor === anchor && this.selCursor === cursor) - return false; - this.SyncSelectionStart(Math.min(anchor, cursor)); - this.SyncSelectionLength(Math.abs(cursor - anchor)); - this.selAnchor = anchor; - this.selCursor = cursor; - this.$$emit |= EmitChangedType.SELECTION; - return true; - }; - Proxy.prototype.enterText = function (newText, isPaste) { - var anchor = this.selAnchor; - var cursor = this.selCursor; - var length = Math.abs(cursor - anchor); - var start = Math.min(anchor, cursor); - if ((this.maxLength > 0 && this.text.length >= this.maxLength) || (newText === '\r') && !this.acceptsReturn) - return false; - if (length > 0) { - this.$$history.replace(anchor, cursor, this.text, start, length, newText); - this.text = Text.Buffer.replace(this.text, start, length, newText); - } - else { - if (!isPaste) - this.$$history.enter(anchor, cursor, start, newText); - else - this.$$history.insert(anchor, cursor, start, newText); - this.text = Text.Buffer.insert(this.text, start, newText); - } - this.$$emit |= EmitChangedType.TEXT; - cursor = start + newText.length; - anchor = cursor; - return this.setAnchorCursor(anchor, cursor); - }; - Proxy.prototype.removeText = function (start, length) { - if (length <= 0) - return false; - this.$$history.delete(this.selAnchor, this.selCursor, this.text, start, length); - this.text = Text.Buffer.cut(this.text, start, length); - this.$$emit |= EmitChangedType.TEXT; - return this.setAnchorCursor(start, start); - }; - Proxy.prototype.paste = function (text) { - return this.enterText(text, true); - }; - Proxy.prototype.undo = function () { - var action = this.$$history.undo(this); - if (!action) - return; - var anchor = action.SelectionAnchor; - var cursor = action.SelectionCursor; - this.$$batch++; - this.SyncSelectionStart(Math.min(anchor, cursor)); - this.SyncSelectionLength(Math.abs(cursor - anchor)); - this.$$emit = EmitChangedType.TEXT | EmitChangedType.SELECTION; - this.selAnchor = anchor; - this.selCursor = cursor; - this.$$batch--; - this.$syncEmit(); - }; - Proxy.prototype.redo = function () { - var anchor = this.$$history.redo(this); - if (anchor == null) - return; - var cursor = anchor; - this.$$batch++; - this.SyncSelectionStart(Math.min(anchor, cursor)); - this.SyncSelectionLength(Math.abs(cursor - anchor)); - this.$$emit = EmitChangedType.TEXT | EmitChangedType.SELECTION; - this.selAnchor = anchor; - this.selCursor = cursor; - this.$$batch--; - this.$syncEmit(); - }; - Proxy.prototype.begin = function () { - this.$$emit = EmitChangedType.NOTHING; - this.$$batch++; - }; - Proxy.prototype.end = function () { - this.$$batch--; - this.$syncEmit(); - }; - Proxy.prototype.beginSelect = function (cursor) { - this.$$batch++; - this.$$emit = EmitChangedType.NOTHING; - this.SyncSelectionStart(cursor); - this.SyncSelectionLength(0); - this.$$batch--; - this.$syncEmit(); - }; - Proxy.prototype.adjustSelection = function (cursor) { - var anchor = this.selAnchor; - this.$$batch++; - this.$$emit = EmitChangedType.NOTHING; - this.SyncSelectionStart(Math.min(anchor, cursor)); - this.SyncSelectionLength(Math.abs(cursor - anchor)); - this.selAnchor = anchor; - this.selCursor = cursor; - this.$$batch--; - this.$syncEmit(); - }; - Proxy.prototype.selectAll = function () { - this.select(0, this.text.length); - }; - Proxy.prototype.clearSelection = function (start) { - this.$$batch++; - this.SyncSelectionStart(start); - this.SyncSelectionLength(0); - this.$$batch--; - }; - Proxy.prototype.select = function (start, length) { - start = Math.min(Math.max(0, start), this.text.length); - length = Math.min(Math.max(0, length), this.text.length - start); - this.$$batch++; - this.SyncSelectionStart(start); - this.SyncSelectionLength(length); - this.$$batch--; - this.$syncEmit(); - return true; - }; - Proxy.prototype.setSelectionStart = function (value) { - var length = Math.abs(this.selCursor - this.selAnchor); - var start = value; - if (start > this.text.length) { - this.SyncSelectionStart(this.text.length); - return; - } - if (start + length > this.text.length) { - this.$$batch++; - length = this.text.length - start; - this.SyncSelectionLength(length); - this.$$batch--; - } - var changed = (this.selAnchor !== start); - this.selCursor = start + length; - this.selAnchor = start; - this.$$emit |= EmitChangedType.SELECTION; - this.$syncEmit(); - }; - Proxy.prototype.setSelectionLength = function (value) { - var start = Math.min(this.selAnchor, this.selCursor); - var length = value; - if (start + length > this.text.length) { - length = this.text.length - start; - this.SyncSelectionLength(length); - return; - } - var changed = (this.selCursor !== (start + length)); - this.selCursor = start + length; - this.selAnchor = start; - this.$$emit |= EmitChangedType.SELECTION; - this.$syncEmit(); - }; - Proxy.prototype.setText = function (value) { - var text = value || ""; - if (!this.$$syncing) { - if (this.text.length > 0) { - this.$$history.replace(this.selAnchor, this.selCursor, this.text, 0, this.text.length, text); - this.text = Text.Buffer.replace(this.text, 0, this.text.length, text); - } - else { - this.$$history.insert(this.selAnchor, this.selCursor, 0, text); - this.text = text + this.text; - } - this.$$emit |= EmitChangedType.TEXT; - this.clearSelection(0); - this.$syncEmit(false); - } - }; - Proxy.prototype.getSelectedText = function () { - var start = Math.min(this.selAnchor, this.selCursor); - var len = (Math.max(this.selAnchor, this.selCursor) - start); - if (len <= 0) - return ""; - return this.text.substr(start, len); - }; - Proxy.prototype.$syncEmit = function (syncText) { - syncText = syncText !== false; - if (this.$$batch !== 0 || this.$$emit === EmitChangedType.NOTHING) - return; - if (syncText && (this.$$emit & EmitChangedType.TEXT)) - this.$syncText(); - this.$$emit = EmitChangedType.NOTHING; - }; - Proxy.prototype.$syncText = function () { - this.$$syncing = true; - this.SyncText(this.text); - this.$$syncing = false; - }; - return Proxy; - })(); - Text.Proxy = Proxy; - })(Text = Fayde.Text || (Fayde.Text = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Validation; - (function (Validation) { - function Emit(fe, binding, oldError, error) { - if (oldError && error) { - Validation.AddError(fe, error); - Validation.RemoveError(fe, oldError); - if (binding.NotifyOnValidationError) { - raiseBindingValidationError(fe, new Validation.ValidationErrorEventArgs(Validation.ValidationErrorEventAction.Removed, oldError)); - raiseBindingValidationError(fe, new Validation.ValidationErrorEventArgs(Validation.ValidationErrorEventAction.Added, error)); - } - } - else if (oldError) { - Validation.RemoveError(fe, oldError); - if (binding.NotifyOnValidationError) - raiseBindingValidationError(fe, new Validation.ValidationErrorEventArgs(Validation.ValidationErrorEventAction.Removed, oldError)); - } - else if (error) { - Validation.AddError(fe, error); - if (binding.NotifyOnValidationError) - raiseBindingValidationError(fe, new Validation.ValidationErrorEventArgs(Validation.ValidationErrorEventAction.Added, error)); - } - } - Validation.Emit = Emit; - function raiseBindingValidationError(fe, args) { - args.OriginalSource = fe; - for (var cur = fe; cur && !args.Handled; cur = Fayde.VisualTreeHelper.GetParent(cur)) { - if (cur instanceof Fayde.FrameworkElement) - cur.OnBindingValidationError(args); - } - } - })(Validation = Fayde.Validation || (Fayde.Validation = {})); -})(Fayde || (Fayde = {})); -/// -/// -var Fayde; -(function (Fayde) { - var Validation; - (function (Validation_1) { - var ObservableCollection = Fayde.Collections.ObservableCollection; - var ReadOnlyObservableCollection = Fayde.Collections.ReadOnlyObservableCollection; - var Validation = (function (_super) { - __extends(Validation, _super); - function Validation() { - _super.apply(this, arguments); - } - return Validation; - })(Fayde.DependencyObject); - Fayde.CoreLibrary.add(Validation, "Validation"); - Validation_1.HasErrorProperty = DependencyProperty.RegisterAttached("HasError", function () { return Boolean; }, Validation); - Validation_1.ErrorsProperty = DependencyProperty.RegisterAttached("Errors", function () { return ReadOnlyObservableCollection; }, Validation); - var ErrorsCoreProperty = DependencyProperty.RegisterAttached("ErrorsCore", function () { return ObservableCollection; }, Validation); - function GetErrorsCore(dobj) { - if (!dobj) - throw new ArgumentNullException("element"); - var result = dobj.GetValue(ErrorsCoreProperty); - if (result == null) { - result = new ObservableCollection(); - dobj.SetValue(ErrorsCoreProperty, result); - } - return result; - } - function GetErrors(dobj) { - if (!dobj) - throw new ArgumentNullException("element"); - var result = dobj.GetValue(Validation_1.ErrorsProperty); - if (result == null) { - result = new ReadOnlyObservableCollection(GetErrorsCore(dobj)); - dobj.SetValue(Validation_1.ErrorsProperty, result); - } - return result; - } - Validation_1.GetErrors = GetErrors; - function GetHasError(dobj) { - if (dobj == null) - throw new ArgumentNullException("element"); - return dobj.GetValue(Validation_1.HasErrorProperty) === true; - } - Validation_1.GetHasError = GetHasError; - function SetHasError(dobj, value) { - dobj.SetValue(Validation_1.HasErrorProperty, value === true); - } - function AddError(element, error) { - var errors = GetErrorsCore(element); - GetErrors(element); - errors.Add(error); - if (errors.Count === 1) - SetHasError(element, true); - if (element instanceof Fayde.Controls.Control) - element.UpdateValidationState(false); - } - Validation_1.AddError = AddError; - function RemoveError(element, error) { - var errors = GetErrorsCore(element); - GetErrors(element); - if (errors.Remove(error)) { - if (errors.Count === 0) { - SetHasError(element, false); - if (element instanceof Fayde.Controls.Control) - element.UpdateValidationState(true); - } - } - } - Validation_1.RemoveError = RemoveError; - })(Validation = Fayde.Validation || (Fayde.Validation = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Validation; - (function (Validation) { - var ValidationError = (function () { - function ValidationError(content, exception, propertyName) { - this.ErrorContent = content; - this.Exception = exception; - this.PropertyName = propertyName; - if (this.Exception instanceof Exception) - this.ErrorContent = this.ErrorContent || exception.Message; - if (this.Exception instanceof Error) - this.ErrorContent = this.ErrorContent || exception.message; - Object.freeze(this); - } - return ValidationError; - })(); - Validation.ValidationError = ValidationError; - })(Validation = Fayde.Validation || (Fayde.Validation = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Validation; - (function (Validation) { - (function (ValidationErrorEventAction) { - ValidationErrorEventAction[ValidationErrorEventAction["Added"] = 0] = "Added"; - ValidationErrorEventAction[ValidationErrorEventAction["Removed"] = 1] = "Removed"; - })(Validation.ValidationErrorEventAction || (Validation.ValidationErrorEventAction = {})); - var ValidationErrorEventAction = Validation.ValidationErrorEventAction; - })(Validation = Fayde.Validation || (Fayde.Validation = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Validation; - (function (Validation) { - var ValidationErrorEventArgs = (function (_super) { - __extends(ValidationErrorEventArgs, _super); - function ValidationErrorEventArgs(action, error) { - _super.call(this); - Object.defineProperties(this, { - "Action": { - value: action, - writable: false - }, - "Error": { - value: error, - writable: false - } - }); - } - return ValidationErrorEventArgs; - })(Fayde.RoutedEventArgs); - Validation.ValidationErrorEventArgs = ValidationErrorEventArgs; - })(Validation = Fayde.Validation || (Fayde.Validation = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Controls; - (function (Controls) { - var Internal; - (function (Internal) { - var TextBoxCursorAdvancer = (function () { - function TextBoxCursorAdvancer($textOwner) { - this.$textOwner = $textOwner; - } - TextBoxCursorAdvancer.prototype.CursorDown = function (cursor, isPage) { - return cursor; - }; - TextBoxCursorAdvancer.prototype.CursorUp = function (cursor, isPage) { - return cursor; - }; - TextBoxCursorAdvancer.prototype.CursorNextWord = function (cursor) { - return cursor; - }; - TextBoxCursorAdvancer.prototype.CursorPrevWord = function (cursor) { - return cursor; - }; - TextBoxCursorAdvancer.prototype.CursorNextChar = function (cursor) { - var text = this.$textOwner.text; - if (text && text.charAt(cursor) === '\r' && text.charAt(cursor + 1) === '\n') - return cursor + 2; - return Math.min(text.length, cursor + 1); - }; - TextBoxCursorAdvancer.prototype.CursorPrevChar = function (cursor) { - var text = this.$textOwner.text; - if (cursor >= 2 && text && text.charAt(cursor - 2) === '\r' && text.charAt(cursor - 1) === '\n') - return cursor - 2; - return Math.max(0, cursor - 1); - }; - TextBoxCursorAdvancer.prototype.CursorLineBegin = function (cursor) { - var text = this.$textOwner.text; - var r = text.lastIndexOf("\r", cursor); - var n = text.lastIndexOf("\n", cursor); - return Math.max(r, n, 0); - }; - TextBoxCursorAdvancer.prototype.CursorLineEnd = function (cursor) { - var text = this.$textOwner.text; - var len = text.length; - var r = text.indexOf("\r", cursor); - if (r < 0) - r = len; - var n = text.indexOf("\n", cursor); - if (n < 0) - n = len; - return Math.min(r, n); - }; - TextBoxCursorAdvancer.prototype.CursorBegin = function (cursor) { - return 0; - }; - TextBoxCursorAdvancer.prototype.CursorEnd = function (cursor) { - return this.$textOwner.text.length; - }; - return TextBoxCursorAdvancer; - })(); - Internal.TextBoxCursorAdvancer = TextBoxCursorAdvancer; - var PasswordBoxCursorAdvancer = (function () { - function PasswordBoxCursorAdvancer($textOwner) { - this.$textOwner = $textOwner; - } - PasswordBoxCursorAdvancer.prototype.CursorDown = function (cursor, isPage) { - return this.CursorEnd(cursor); - }; - PasswordBoxCursorAdvancer.prototype.CursorUp = function (cursor, isPage) { - return this.CursorBegin(cursor); - }; - PasswordBoxCursorAdvancer.prototype.CursorNextWord = function (cursor) { - return this.CursorEnd(cursor); - }; - PasswordBoxCursorAdvancer.prototype.CursorPrevWord = function (cursor) { - return this.CursorBegin(cursor); - }; - PasswordBoxCursorAdvancer.prototype.CursorNextChar = function (cursor) { - var text = this.$textOwner.text; - if (text && text.charAt(cursor) === '\r' && text.charAt(cursor + 1) === '\n') - return cursor + 2; - return Math.min(text.length - 1, cursor + 1); - }; - PasswordBoxCursorAdvancer.prototype.CursorPrevChar = function (cursor) { - var text = this.$textOwner.text; - if (cursor >= 2 && text && text.charAt(cursor - 2) === '\r' && text.charAt(cursor - 1) === '\n') - return cursor - 2; - return Math.max(0, cursor - 1); - }; - PasswordBoxCursorAdvancer.prototype.CursorLineBegin = function (cursor) { - return this.CursorBegin(cursor); - }; - PasswordBoxCursorAdvancer.prototype.CursorLineEnd = function (cursor) { - return this.CursorEnd(cursor); - }; - PasswordBoxCursorAdvancer.prototype.CursorBegin = function (cursor) { - return this.$textOwner.text.length; - }; - PasswordBoxCursorAdvancer.prototype.CursorEnd = function (cursor) { - return 0; - }; - return PasswordBoxCursorAdvancer; - })(); - Internal.PasswordBoxCursorAdvancer = PasswordBoxCursorAdvancer; - })(Internal = Controls.Internal || (Controls.Internal = {})); - })(Controls = Fayde.Controls || (Fayde.Controls = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Controls; - (function (Controls) { - var Internal; - (function (Internal) { - var ItemContainersManager = (function () { - function ItemContainersManager(Owner) { - this.Owner = Owner; - this._Items = []; - this._Containers = []; - this._Cache = []; - } - Object.defineProperty(ItemContainersManager.prototype, "IsRecycling", { - get: function () { - var dobj = this.Owner; - if (dobj instanceof Fayde.DependencyObject) - return Controls.VirtualizingPanel.GetVirtualizationMode(dobj) === Controls.VirtualizationMode.Recycling; - return false; - }, - enumerable: true, - configurable: true - }); - ItemContainersManager.prototype.IndexFromContainer = function (container) { return this._Containers.indexOf(container); }; - ItemContainersManager.prototype.ContainerFromIndex = function (index) { return this._Containers[index]; }; - ItemContainersManager.prototype.ItemFromContainer = function (container) { - var index = this._Containers.indexOf(container); - if (index < 0) - return null; - return this._Items[index]; - }; - ItemContainersManager.prototype.ContainerFromItem = function (item) { - if (item == null) - return null; - var index = this._Items.indexOf(item); - if (index < 0) - return null; - return this._Containers[index]; - }; - ItemContainersManager.prototype.OnItemsAdded = function (index, newItems) { - var items = this._Items; - var containers = this._Containers; - for (var i = 0, len = newItems.length; i < len; i++) { - items.splice(index + i, 0, newItems[i]); - containers.splice(index + i, 0, null); - } - }; - ItemContainersManager.prototype.OnItemsRemoved = function (index, oldItems) { - this.DisposeContainers(index, oldItems.length); - this._Items.splice(index, oldItems.length); - this._Containers.splice(index, oldItems.length); - }; - ItemContainersManager.prototype.DisposeContainers = function (index, count) { - var containers = this._Containers; - var items = this._Items; - if (index == null) - index = 0; - if (count == null) - count = containers.length; - if (this.IsRecycling) { - for (var i = 0, cache = this._Cache, recycling = containers.slice(index, index + count), len = recycling.length; i < len; i++) { - var container = recycling[i]; - if (container) - cache.push(container); - } - } - var disposed = []; - var ic = this.Owner; - for (var i = index; i < index + count; i++) { - var container = containers[i]; - if (!container) - continue; - disposed.push(container); - var item = items[i]; - ic.ClearContainerForItem(container, item); - containers[i] = null; - } - return disposed; - }; - ItemContainersManager.prototype.CreateGenerator = function (index, count) { - var generator = { - IsCurrentNew: false, - Current: undefined, - CurrentItem: undefined, - CurrentIndex: index - 1, - GenerateIndex: -1, - Generate: function () { return false; } - }; - var ic = this.Owner; - var icm = this; - var containers = this._Containers; - var items = this._Items; - var cache = this._Cache; - generator.Generate = function () { - generator.GenerateIndex++; - generator.CurrentIndex++; - generator.IsCurrentNew = false; - if (generator.CurrentIndex < 0 || generator.GenerateIndex >= count || generator.CurrentIndex >= containers.length) { - generator.Current = undefined; - generator.CurrentItem = undefined; - return false; - } - generator.CurrentItem = items[generator.CurrentIndex]; - if ((generator.Current = containers[generator.CurrentIndex]) == null) { - if (ic.IsItemItsOwnContainer(generator.CurrentItem)) { - if (generator.CurrentItem instanceof Fayde.UIElement) - generator.Current = generator.CurrentItem; - generator.IsCurrentNew = true; - } - else if (cache.length > 0) { - generator.Current = cache.pop(); - generator.IsCurrentNew = true; - } - else { - generator.Current = ic.GetContainerForItem(); - generator.IsCurrentNew = true; - } - containers[generator.CurrentIndex] = generator.Current; - } - return true; - }; - return generator; - }; - ItemContainersManager.prototype.GetEnumerator = function (start, count) { - var carr = this._Containers; - var iarr = this._Items; - var index = (start || 0) - 1; - var len = count == null ? carr.length : count; - var i = 0; - var e = { moveNext: undefined, current: undefined, CurrentItem: undefined, CurrentIndex: -1 }; - e.moveNext = function () { - i++; - index++; - e.CurrentIndex = index; - if (i > len || index >= carr.length) { - e.current = undefined; - e.CurrentItem = undefined; - return false; - } - e.current = carr[index]; - e.CurrentItem = iarr[index]; - return true; - }; - return e; - }; - return ItemContainersManager; - })(); - Internal.ItemContainersManager = ItemContainersManager; - })(Internal = Controls.Internal || (Controls.Internal = {})); - })(Controls = Fayde.Controls || (Fayde.Controls = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Controls; - (function (Controls) { - var Internal; - (function (Internal) { - var RangeCoercer = (function () { - function RangeCoercer(Range, OnCoerceMaximum, OnCoerceValue) { - this.Range = Range; - this.OnCoerceMaximum = OnCoerceMaximum; - this.OnCoerceValue = OnCoerceValue; - this.InitialMax = 1; - this.InitialVal = 0; - this.RequestedMax = 1; - this.RequestedVal = 0; - this.PreCoercedMax = 1; - this.PreCoercedVal = 0; - this.CoerceDepth = 0; - this.PreCoercedMax = this.RequestedMax = this.InitialMax = Range.Maximum; - this.PreCoercedVal = this.RequestedVal = this.InitialVal = Range.Value; - } - Object.defineProperty(RangeCoercer.prototype, "Minimum", { - get: function () { return this.Range.Minimum; }, - enumerable: true, - configurable: true - }); - Object.defineProperty(RangeCoercer.prototype, "Maximum", { - get: function () { return this.Range.Maximum; }, - enumerable: true, - configurable: true - }); - Object.defineProperty(RangeCoercer.prototype, "Value", { - get: function () { return this.Range.Value; }, - enumerable: true, - configurable: true - }); - RangeCoercer.prototype.OnMinimumChanged = function (oldMinimum, newMinimum) { - if (this.CoerceDepth === 0) { - this.InitialMax = this.Maximum; - this.InitialVal = this.Value; - } - this.CoerceDepth++; - this.CoerceMaximum(); - this.CoerceValue(); - this.CoerceDepth--; - if (this.CoerceDepth > 0) - return; - this.Range.OnMinimumChanged(oldMinimum, newMinimum); - var max = this.Maximum; - if (!NumberEx.AreClose(this.InitialMax, max)) - this.Range.OnMaximumChanged(this.InitialMax, max); - var val = this.Value; - if (!NumberEx.AreClose(this.InitialVal, val)) - this.Range.OnValueChanged(this.InitialVal, val); - }; - RangeCoercer.prototype.OnMaximumChanged = function (oldMaximum, newMaximum) { - if (this.CoerceDepth === 0) { - this.RequestedMax = newMaximum; - this.InitialMax = oldMaximum; - this.InitialVal = this.Value; - } - this.CoerceDepth++; - this.CoerceMaximum(); - this.CoerceValue(); - this.CoerceDepth--; - if (this.CoerceDepth !== 0) - return; - this.PreCoercedMax = newMaximum; - var max = this.Maximum; - if (!NumberEx.AreClose(this.InitialMax, max)) - this.Range.OnMaximumChanged(this.InitialMax, max); - var val = this.Value; - if (!NumberEx.AreClose(this.InitialVal, val)) - this.Range.OnValueChanged(this.InitialVal, val); - }; - RangeCoercer.prototype.OnValueChanged = function (oldValue, newValue) { - if (this.CoerceDepth === 0) { - this.RequestedVal = newValue; - this.InitialVal = oldValue; - } - this.CoerceDepth++; - this.CoerceValue(); - this.CoerceDepth--; - if (this.CoerceDepth !== 0) - return; - this.PreCoercedVal = newValue; - var val = this.Value; - if (!NumberEx.AreClose(this.InitialVal, val)) - this.Range.OnValueChanged(this.InitialVal, val); - }; - RangeCoercer.prototype.CoerceMaximum = function () { - var min = this.Minimum; - var max = this.Maximum; - if (!NumberEx.AreClose(this.RequestedMax, max) && this.RequestedMax >= min) - this.OnCoerceMaximum(this.RequestedMax); - else if (max < min) - this.OnCoerceMaximum(min); - }; - RangeCoercer.prototype.CoerceValue = function () { - var min = this.Minimum; - var max = this.Maximum; - var val = this.Value; - if (!NumberEx.AreClose(this.RequestedVal, val) && this.RequestedVal >= min && this.RequestedVal <= max) - this.OnCoerceValue(this.RequestedVal); - else if (val < min) - this.OnCoerceValue(min); - else if (val > max) - this.OnCoerceValue(max); - }; - return RangeCoercer; - })(); - Internal.RangeCoercer = RangeCoercer; - })(Internal = Controls.Internal || (Controls.Internal = {})); - })(Controls = Fayde.Controls || (Fayde.Controls = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Controls; - (function (Controls) { - var Internal; - (function (Internal) { - var TextBoxContentProxy = (function () { - function TextBoxContentProxy() { - this.$$element = null; - } - TextBoxContentProxy.prototype.setElement = function (fe, view) { - this.$$element = fe; - if (!fe) - return; - if (fe instanceof Controls.ContentPresenter) { - fe.SetValue(Controls.ContentPresenter.ContentProperty, view); - } - else if (fe instanceof Controls.ContentControl) { - fe.SetValue(Controls.ContentControl.ContentProperty, view); - } - else if (fe instanceof Controls.Border) { - fe.SetValue(Controls.Border.ChildProperty, view); - } - else if (fe instanceof Controls.Panel) { - fe.Children.Add(view); - } - else { - console.warn("TextBox does not have a valid content element."); - } - }; - TextBoxContentProxy.prototype.setHorizontalScrollBar = function (sbvis) { - var ce = this.$$element; - if (!ce) - return; - var ceType = ce.constructor; - var propd = DependencyProperty.GetDependencyProperty(ceType, "HorizontalScrollBarVisibility", true); - if (!propd) - return; - ce.SetValueInternal(propd, sbvis); - }; - TextBoxContentProxy.prototype.setVerticalScrollBar = function (sbvis) { - var ce = this.$$element; - if (!ce) - return; - var ceType = ce.constructor; - var propd = DependencyProperty.GetDependencyProperty(ceType, "VerticalScrollBarVisibility", true); - if (!propd) - return; - ce.SetValueInternal(propd, sbvis); - }; - return TextBoxContentProxy; - })(); - Internal.TextBoxContentProxy = TextBoxContentProxy; - })(Internal = Controls.Internal || (Controls.Internal = {})); - })(Controls = Fayde.Controls || (Fayde.Controls = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Controls; - (function (Controls) { - var Internal; - (function (Internal) { - var TextBoxViewUpdater = minerva.controls.textboxview.TextBoxViewUpdater; - var TextBoxViewNode = (function (_super) { - __extends(TextBoxViewNode, _super); - function TextBoxViewNode() { - _super.apply(this, arguments); - } - return TextBoxViewNode; - })(Fayde.FENode); - Internal.TextBoxViewNode = TextBoxViewNode; - var TextBoxView = (function (_super) { - __extends(TextBoxView, _super); - function TextBoxView() { - _super.call(this); - this._AutoRun = new Fayde.Documents.Run(); - this.XamlNode.LayoutUpdater.tree.onTextAttached(this._AutoRun.TextUpdater); - Fayde.ReactTo(this._AutoRun, this, this._InlineChanged); - } - TextBoxView.prototype.CreateLayoutUpdater = function () { - return new TextBoxViewUpdater(); - }; - TextBoxView.prototype._InlineChanged = function (obj) { - var updater = this.XamlNode.LayoutUpdater; - switch (obj.type) { - case 'font': - updater.invalidateFont(obj.full); - break; - case 'text': - updater.invalidateTextMetrics(); - break; - } - }; - TextBoxView.prototype.setFontProperty = function (propd, value) { - this._AutoRun.SetValue(propd, value); - }; - TextBoxView.prototype.setFontAttr = function (attrName, value) { - var runUpdater = this._AutoRun; - var tu = runUpdater.TextUpdater; - tu.assets[attrName] = value; - }; - TextBoxView.prototype.setCaretBrush = function (value) { - var updater = this.XamlNode.LayoutUpdater; - updater.assets.caretBrush = value; - updater.invalidateCaret(); - }; - TextBoxView.prototype.setIsFocused = function (isFocused) { - var updater = this.XamlNode.LayoutUpdater; - if (updater.assets.isFocused === isFocused) - return; - updater.assets.isFocused = isFocused; - updater.resetCaretBlinker(false); - }; - TextBoxView.prototype.setIsReadOnly = function (isReadOnly) { - var updater = this.XamlNode.LayoutUpdater; - if (updater.assets.isReadOnly === isReadOnly) - return; - updater.assets.isReadOnly = isReadOnly; - updater.resetCaretBlinker(false); - }; - TextBoxView.prototype.setTextAlignment = function (textAlignment) { - var lu = this.XamlNode.LayoutUpdater; - if (lu.assets.textAlignment === textAlignment) - return; - lu.assets.textAlignment = textAlignment; - lu.invalidateMeasure(); - lu.updateBounds(true); - lu.invalidate(); - }; - TextBoxView.prototype.setTextWrapping = function (textWrapping) { - var lu = this.XamlNode.LayoutUpdater; - if (lu.assets.textWrapping === textWrapping) - return; - lu.assets.textWrapping = textWrapping; - lu.invalidateMeasure(); - lu.updateBounds(true); - lu.invalidate(); - }; - TextBoxView.prototype.setSelectionStart = function (selectionStart) { - var lu = this.XamlNode.LayoutUpdater; - if (lu.assets.selectionStart === selectionStart) - return; - lu.assets.selectionStart = selectionStart; - lu.invalidateSelectionStart(); - }; - TextBoxView.prototype.setSelectionLength = function (selectionLength) { - var lu = this.XamlNode.LayoutUpdater; - if (lu.assets.selectionLength === selectionLength) - return; - var switching = (lu.assets.selectionLength === 0) !== (selectionLength === 0); - lu.assets.selectionLength = selectionLength; - lu.invalidateSelectionLength(switching); - }; - TextBoxView.prototype.setText = function (text) { - this._AutoRun.Text = text || ""; - }; - TextBoxView.prototype.GetCursorFromPoint = function (point) { - return this.XamlNode.LayoutUpdater.getCursorFromPoint(point); - }; - return TextBoxView; - })(Fayde.FrameworkElement); - Internal.TextBoxView = TextBoxView; - Fayde.RegisterType(TextBoxView, Fayde.XMLNSINTERNAL); - })(Internal = Controls.Internal || (Controls.Internal = {})); - })(Controls = Fayde.Controls || (Fayde.Controls = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Controls; - (function (Controls) { - var Internal; - (function (Internal) { - var NO_GENERATOR = { - current: undefined, - generate: function () { - return false; - } - }; - var VirtualizingPanelContainerOwner = (function () { - function VirtualizingPanelContainerOwner($$panel) { - this.$$panel = $$panel; - } - Object.defineProperty(VirtualizingPanelContainerOwner.prototype, "itemCount", { - get: function () { - var panel = this.$$panel; - var ic = panel ? panel.ItemsControl : null; - return ic ? ic.Items.Count : 0; - }, - enumerable: true, - configurable: true - }); - VirtualizingPanelContainerOwner.prototype.createGenerator = function (index, count) { - var panel = this.$$panel; - var ic = panel ? panel.ItemsControl : null; - var icm = ic ? ic.ItemContainersManager : null; - if (!icm) - return NO_GENERATOR; - var icgen = icm.CreateGenerator(index, count); - var children = panel.Children; - return { - current: undefined, - generate: function () { - this.current = undefined; - if (!icgen.Generate()) - return false; - var child = icgen.Current; - if (icgen.IsCurrentNew) { - children.Insert(icgen.GenerateIndex, child); - ic.PrepareContainerForItem(child, icgen.CurrentItem); - } - this.current = child.XamlNode.LayoutUpdater; - return true; - } - }; - }; - VirtualizingPanelContainerOwner.prototype.remove = function (index, count) { - var panel = this.$$panel; - var ic = panel ? panel.ItemsControl : null; - var icm = ic ? ic.ItemContainersManager : null; - if (!icm) - return; - var old = icm.DisposeContainers(index, count); - var children = panel.Children; - for (var i = 0, len = old.length; i < len; i++) { - children.Remove(old[i]); - } - }; - return VirtualizingPanelContainerOwner; - })(); - Internal.VirtualizingPanelContainerOwner = VirtualizingPanelContainerOwner; - })(Internal = Controls.Internal || (Controls.Internal = {})); - })(Controls = Fayde.Controls || (Fayde.Controls = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Controls; - (function (Controls) { - var Primitives; - (function (Primitives) { - var DragCompletedEventArgs = (function (_super) { - __extends(DragCompletedEventArgs, _super); - function DragCompletedEventArgs(horizontal, vertical, canceled) { - _super.call(this); - Object.defineProperty(this, "HorizontalChange", { value: horizontal, writable: false }); - Object.defineProperty(this, "VerticalChange", { value: vertical, writable: false }); - Object.defineProperty(this, "Canceled", { value: canceled, writable: false }); - } - return DragCompletedEventArgs; - })(Fayde.RoutedEventArgs); - Primitives.DragCompletedEventArgs = DragCompletedEventArgs; - Fayde.CoreLibrary.add(DragCompletedEventArgs); - var DragDeltaEventArgs = (function (_super) { - __extends(DragDeltaEventArgs, _super); - function DragDeltaEventArgs(horizontal, vertical) { - _super.call(this); - Object.defineProperty(this, "HorizontalChange", { value: horizontal, writable: false }); - Object.defineProperty(this, "VerticalChange", { value: vertical, writable: false }); - } - return DragDeltaEventArgs; - })(Fayde.RoutedEventArgs); - Primitives.DragDeltaEventArgs = DragDeltaEventArgs; - Fayde.CoreLibrary.add(DragDeltaEventArgs); - var DragStartedEventArgs = (function (_super) { - __extends(DragStartedEventArgs, _super); - function DragStartedEventArgs(horizontal, vertical) { - _super.call(this); - Object.defineProperty(this, "HorizontalOffset", { value: horizontal, writable: false }); - Object.defineProperty(this, "VerticalOffset", { value: vertical, writable: false }); - } - return DragStartedEventArgs; - })(Fayde.RoutedEventArgs); - Primitives.DragStartedEventArgs = DragStartedEventArgs; - Fayde.CoreLibrary.add(DragStartedEventArgs); - })(Primitives = Controls.Primitives || (Controls.Primitives = {})); - })(Controls = Fayde.Controls || (Fayde.Controls = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Controls; - (function (Controls) { - var Primitives; - (function (Primitives) { - var OverlayUpdater = minerva.controls.overlay.OverlayUpdater; - var DEFAULT_MASK_BRUSH = "#33000000"; - var OverlayNode = (function (_super) { - __extends(OverlayNode, _super); - function OverlayNode() { - _super.apply(this, arguments); - this._Layer = null; - this._Mask = null; - } - OverlayNode.prototype.EnsureLayer = function () { - if (!this._Layer) { - this._Layer = new Controls.Panel(); - this.LayoutUpdater.setLayer(this._Layer.XamlNode.LayoutUpdater); - } - return this._Layer; - }; - OverlayNode.prototype.EnsureMask = function () { - if (!this._Mask) { - this._Mask = new Controls.Border(); - this._Mask.MouseLeftButtonDown.on(this._OnMaskMouseDown, this); - this.UpdateMask(); - } - return this._Mask; - }; - OverlayNode.prototype._OnMaskMouseDown = function (sender, args) { - this.XObject.SetCurrentValue(Overlay.IsOpenProperty, false); - }; - OverlayNode.prototype.UpdateMask = function () { - var mask = this._Mask; - if (mask) { - var mb = this.XObject.MaskBrush; - if (mb === undefined) - mb = nullstone.convertAnyToType(DEFAULT_MASK_BRUSH, Fayde.Media.Brush); - this._Mask.Background = mb; - } - }; - OverlayNode.prototype.OnIsAttachedChanged = function (newIsAttached) { - _super.prototype.OnIsAttachedChanged.call(this, newIsAttached); - this.RegisterInitiator(this.VisualParentNode.XObject); - if (newIsAttached) { - this.EnsureLayer().Children.Insert(0, this.EnsureMask()); - } - if (!newIsAttached && this.XObject.IsOpen) - this.XObject.IsOpen = false; - }; - OverlayNode.prototype.RegisterInitiator = function (initiator) { - if (!(initiator instanceof Fayde.UIElement)) - return; - this.LayoutUpdater.setInitiator(initiator.XamlNode.LayoutUpdater); - }; - return OverlayNode; - })(Fayde.FENode); - Primitives.OverlayNode = OverlayNode; - var Overlay = (function (_super) { - __extends(Overlay, _super); - function Overlay() { - _super.call(this); - this.Opened = new nullstone.Event(); - this.Closed = new nullstone.Event(); - this._ContentControlForUri = null; - this._IgnoreClose = false; - this.DefaultStyleKey = Overlay; - this.InitBindings(); - } - Overlay.prototype.CreateNode = function () { - return new OverlayNode(this); - }; - Overlay.prototype.CreateLayoutUpdater = function () { - return new OverlayUpdater(); - }; - Overlay.prototype.InitBindings = function () { - this.SetBinding(Overlay.VisualViewModelProperty, new Fayde.Data.Binding("OverlayDataContext")); - var binding = new Fayde.Data.Binding("IsOpen"); - binding.Mode = Fayde.Data.BindingMode.TwoWay; - this.SetBinding(Overlay.IsOpenProperty, binding); - this.SetBinding(Overlay.ClosedCommandProperty, new Fayde.Data.Binding("ClosedCommand")); - }; - Overlay.prototype._OnVisualChanged = function (args) { - if (this.VisualUri != null) - throw new Error("Cannot set Visual if VisualUri is set."); - var layer = this.XamlNode.EnsureLayer(); - if (args.OldValue) - layer.Children.Remove(args.OldValue); - if (args.NewValue) - layer.Children.Add(args.NewValue); - }; - Overlay.prototype._OnVisualUriChanged = function (args) { - if (this.Visual != null) - throw new Error("Cannot set VisualUri if Visual is set."); - if (args.NewValue) - this._SetVisualUri(args.NewValue); - else - this._ClearVisualUri(); - }; - Overlay.prototype._OnVisualViewModelChanged = function (args) { - var cc; - var visual; - if (!!(cc = this._ContentControlForUri)) - cc.DataContext = args.NewValue; - else if (!!(visual = this.Visual)) - visual.DataContext = args.NewValue; - }; - Overlay.prototype._SetVisualUri = function (uri) { - var cc = this._ContentControlForUri; - if (!cc) { - var layer = this.XamlNode.EnsureLayer(); - cc = this._ContentControlForUri = new Controls.ContentControl(); - cc.SetValue(OverlayOwnerProperty, this); - layer.Children.Add(cc); - } - cc.ContentUri = uri; - var vm = this.VisualViewModel; - if (vm !== undefined) - cc.DataContext = vm; - }; - Overlay.prototype._ClearVisualUri = function () { - var cc = this._ContentControlForUri; - if (!cc) - return; - var layer = this.XamlNode.EnsureLayer(); - layer.Children.Remove(cc); - cc.ContentUri = null; - cc.DataContext = undefined; - }; - Overlay.prototype._OnIsOpenChanged = function (args) { - var ov = args.OldValue || false; - var nv = args.NewValue || false; - if (ov === nv) - return; - if (nv === true) { - this._DoOpen(); - } - else { - this._DoClose(); - } - }; - Overlay.prototype._DoOpen = function () { - var upd = this.XamlNode.LayoutUpdater; - minerva.controls.overlay.reactTo.isOpen(upd, false, true); - this.Opened.raise(this, null); - }; - Overlay.prototype._DoClose = function (result) { - var upd = this.XamlNode.LayoutUpdater; - minerva.controls.overlay.reactTo.isOpen(upd, true, false); - if (result === undefined) - result = this._GetDialogResult(); - var parameter = { - Result: result, - Data: this.VisualViewModel - }; - var cmd = this.ClosedCommand; - if (cmd && (!cmd.CanExecute || cmd.CanExecute(parameter))) - cmd.Execute(parameter); - this.Closed.raise(this, new Primitives.OverlayClosedEventArgs(parameter.Result, parameter.Data)); - }; - Overlay.prototype.Open = function () { - this.IsOpen = true; - }; - Overlay.prototype.Close = function (result) { - if (this.IsOpen !== true) - return; - this._IgnoreClose = true; - try { - this.SetCurrentValue(Overlay.IsOpenProperty, false); - } - finally { - this._IgnoreClose = false; - } - this._DoClose(result); - }; - Overlay.prototype._GetDialogResult = function () { - var visual = this.Visual || this._ContentControlForUri; - if (!visual) - return undefined; - var dialog = Fayde.VisualTreeHelper.GetChildrenCount(visual) > 0 ? Fayde.VisualTreeHelper.GetChild(visual, 0) : null; - return (dialog instanceof Controls.Dialog) ? dialog.DialogResult : null; - }; - Overlay.FindOverlay = function (visual) { - for (var en = Fayde.VisualTreeEnum.GetAncestors(visual).getEnumerator(); en.moveNext();) { - var owner = en.current.GetValue(OverlayOwnerProperty); - if (owner instanceof Overlay) - return owner; - } - return undefined; - }; - Overlay.VisualProperty = DependencyProperty.Register("Visual", function () { return Fayde.UIElement; }, Overlay, undefined, function (d, args) { return d._OnVisualChanged(args); }); - Overlay.VisualUriProperty = DependencyProperty.Register("VisualUri", function () { return Fayde.Uri; }, Overlay, undefined, function (d, args) { return d._OnVisualUriChanged(args); }); - Overlay.VisualViewModelProperty = DependencyProperty.Register("VisualViewModel", function () { return Object; }, Overlay, undefined, function (d, args) { return d._OnVisualViewModelChanged(args); }); - Overlay.IsOpenProperty = DependencyProperty.Register("IsOpen", function () { return Boolean; }, Overlay, undefined, function (d, args) { return d._OnIsOpenChanged(args); }); - Overlay.MaskBrushProperty = DependencyProperty.Register("MaskBrush", function () { return Fayde.Media.Brush; }, Overlay); - Overlay.ClosedCommandProperty = DependencyProperty.Register("ClosedCommand", function () { return Fayde.Input.ICommand_; }, Overlay); - return Overlay; - })(Fayde.FrameworkElement); - Primitives.Overlay = Overlay; - Fayde.CoreLibrary.add(Overlay); - Fayde.Markup.Content(Overlay, Overlay.VisualProperty); - var reactions; - (function (reactions) { - Fayde.DPReaction(Overlay.MaskBrushProperty, function (overlay, ov, nv) { - overlay.XamlNode.UpdateMask(); - }); - })(reactions || (reactions = {})); - var OverlayOwnerProperty = DependencyProperty.RegisterAttached("OverlayOwner", function () { return Overlay; }, Overlay); - })(Primitives = Controls.Primitives || (Controls.Primitives = {})); - })(Controls = Fayde.Controls || (Fayde.Controls = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Controls; - (function (Controls) { - var Primitives; - (function (Primitives) { - var OverlayClosedEventArgs = (function () { - function OverlayClosedEventArgs(result, data) { - Object.defineProperties(this, { - "Result": { - value: result, - writable: false - }, - "Data": { - value: data, - writable: false - } - }); - } - return OverlayClosedEventArgs; - })(); - Primitives.OverlayClosedEventArgs = OverlayClosedEventArgs; - })(Primitives = Controls.Primitives || (Controls.Primitives = {})); - })(Controls = Fayde.Controls || (Fayde.Controls = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Controls; - (function (Controls) { - var Primitives; - (function (Primitives) { - var ScrollData = (function () { - function ScrollData() { - this.canHorizontallyScroll = false; - this.canVerticallyScroll = false; - this.offsetX = 0; - this.offsetY = 0; - this.cachedOffsetX = 0; - this.cachedOffsetY = 0; - this.viewportWidth = 0; - this.viewportHeight = 0; - this.extentWidth = 0; - this.extentHeight = 0; - this.maxDesiredWidth = 0; - this.maxDesiredHeight = 0; - this.scrollOwner = null; - } - ScrollData.prototype.invalidate = function () { - if (this.scrollOwner) - this.scrollOwner.InvalidateScrollInfo(); - }; - return ScrollData; - })(); - Primitives.ScrollData = ScrollData; - })(Primitives = Controls.Primitives || (Controls.Primitives = {})); - })(Controls = Fayde.Controls || (Fayde.Controls = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Controls; - (function (Controls) { - var Primitives; - (function (Primitives) { - (function (ScrollEventType) { - ScrollEventType[ScrollEventType["SmallDecrement"] = 0] = "SmallDecrement"; - ScrollEventType[ScrollEventType["SmallIncrement"] = 1] = "SmallIncrement"; - ScrollEventType[ScrollEventType["LargeDecrement"] = 2] = "LargeDecrement"; - ScrollEventType[ScrollEventType["LargeIncrement"] = 3] = "LargeIncrement"; - ScrollEventType[ScrollEventType["ThumbPosition"] = 4] = "ThumbPosition"; - ScrollEventType[ScrollEventType["ThumbTrack"] = 5] = "ThumbTrack"; - ScrollEventType[ScrollEventType["First"] = 6] = "First"; - ScrollEventType[ScrollEventType["Last"] = 7] = "Last"; - ScrollEventType[ScrollEventType["EndScroll"] = 8] = "EndScroll"; - })(Primitives.ScrollEventType || (Primitives.ScrollEventType = {})); - var ScrollEventType = Primitives.ScrollEventType; - Fayde.CoreLibrary.addEnum(ScrollEventType, "ScrollEventType"); - var ScrollEventArgs = (function (_super) { - __extends(ScrollEventArgs, _super); - function ScrollEventArgs(scrollEventType, value) { - _super.call(this); - Object.defineProperty(this, "ScrollEventType", { value: scrollEventType, writable: false }); - Object.defineProperty(this, "Value", { value: value, writable: false }); - } - return ScrollEventArgs; - })(Fayde.RoutedEventArgs); - Primitives.ScrollEventArgs = ScrollEventArgs; - Fayde.CoreLibrary.add(ScrollEventArgs); - })(Primitives = Controls.Primitives || (Controls.Primitives = {})); - })(Controls = Fayde.Controls || (Fayde.Controls = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Controls; - (function (Controls) { - var Primitives; - (function (Primitives) { - var SelectionChangedEventArgs = (function (_super) { - __extends(SelectionChangedEventArgs, _super); - function SelectionChangedEventArgs(oldValues, newValues) { - _super.call(this); - Object.defineProperty(this, "OldValues", { value: oldValues.slice(0), writable: false }); - Object.defineProperty(this, "NewValues", { value: newValues.slice(0), writable: false }); - } - return SelectionChangedEventArgs; - })(Fayde.RoutedEventArgs); - Primitives.SelectionChangedEventArgs = SelectionChangedEventArgs; - Fayde.CoreLibrary.add(SelectionChangedEventArgs); - })(Primitives = Controls.Primitives || (Controls.Primitives = {})); - })(Controls = Fayde.Controls || (Fayde.Controls = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Controls; - (function (Controls) { - var Primitives; - (function (Primitives) { - var SelectorSelection = (function () { - function SelectorSelection(owner) { - this._SelectedItems = []; - this._SelectedItem = null; - this._IsUpdating = false; - this._AnchorIndex = -1; - this.Mode = Controls.SelectionMode.Single; - this._Owner = owner; - this._Owner.SelectedItems.CollectionChanged.on(this._HandleOwnerSelectionChanged, this); - } - Object.defineProperty(SelectorSelection.prototype, "IsUpdating", { - get: function () { return this._IsUpdating; }, - enumerable: true, - configurable: true - }); - SelectorSelection.prototype._HandleOwnerSelectionChanged = function (sender, e) { - if (this._IsUpdating) - return; - if (this.Mode === Controls.SelectionMode.Single) - throw new InvalidOperationException("SelectedItems cannot be modified directly when in Single select mode"); - try { - var items = this._SelectedItems; - this._IsUpdating = true; - switch (e.Action) { - case Fayde.Collections.CollectionChangedAction.Add: - if (items.indexOf(e.NewItems[0]) < 0) - this.AddToSelected(e.NewItems[0]); - break; - case Fayde.Collections.CollectionChangedAction.Remove: - if (items.indexOf(e.OldItems[0]) > -1) - this.RemoveFromSelected(e.OldItems[0]); - break; - case Fayde.Collections.CollectionChangedAction.Replace: - if (items.indexOf(e.OldItems[0]) > -1) - this.RemoveFromSelected(e.OldItems[0]); - if (items.indexOf(e.NewItems[0]) < 0) - this.AddToSelected(e.NewItems[0]); - break; - case Fayde.Collections.CollectionChangedAction.Reset: - var ownerItems = this._Owner.SelectedItems; - var item; - var enumerator = ownerItems.getEnumerator(); - while (enumerator.moveNext()) { - item = enumerator.current; - if (ownerItems.Contains(item)) - continue; - if (items.indexOf(item) > -1) - this.RemoveFromSelected(item); - } - enumerator = ownerItems.getEnumerator(); - while (enumerator.moveNext()) { - item = enumerator.current; - if (items.indexOf(item) < 0) - this.AddToSelected(item); - } - break; - } - this._Owner._SelectedItemsIsInvalid = true; - } - finally { - this._IsUpdating = false; - } - }; - SelectorSelection.prototype.RepopulateSelectedItems = function () { - if (!this._IsUpdating) { - try { - this._IsUpdating = true; - var si = this._Owner.SelectedItems; - si.Clear(); - si.AddRange(this._SelectedItems); - } - finally { - this._IsUpdating = false; - } - } - }; - SelectorSelection.prototype.ClearSelection = function (ignoreSelectedValue) { - if (ignoreSelectedValue === undefined) - ignoreSelectedValue = false; - if (this._SelectedItems.length === 0) { - this.UpdateSelectorProperties(null, -1, ignoreSelectedValue ? this._Owner.SelectedValue : null); - return; - } - try { - this._IsUpdating = true; - var oldSelection = this._SelectedItems.slice(0); - this._SelectedItems = []; - this._SelectedItem = null; - this.UpdateSelectorProperties(null, -1, ignoreSelectedValue ? this._Owner.SelectedValue : null); - this._Owner._SelectedItemsIsInvalid = true; - this._Owner._RaiseSelectionChanged(oldSelection, []); - } - finally { - this._IsUpdating = false; - } - }; - SelectorSelection.prototype.Select = function (item) { - if (!this._Owner.Items.Contains(item)) - return; - var selIndex = this._SelectedItems.indexOf(item); - try { - this._IsUpdating = true; - switch (this.Mode) { - case Controls.SelectionMode.Single: - return this._SelectSingle(item, selIndex); - case Controls.SelectionMode.Extended: - return this._SelectExtended(item, selIndex); - case Controls.SelectionMode.Multiple: - return this._SelectMultiple(item, selIndex); - default: - throw new NotSupportedException("SelectionMode " + this.Mode + " is not supported."); - } - } - finally { - this._IsUpdating = false; - } - }; - SelectorSelection.prototype._SelectSingle = function (item, selIndex) { - if (selIndex === -1) - return this.ReplaceSelection(item); - }; - SelectorSelection.prototype._SelectExtended = function (item, selIndex) { - var itemsIndex = this._Owner.Items.IndexOf(item); - if (Fayde.Input.Keyboard.HasShift()) { - var items = this._Owner.Items; - var aIndex = this._AnchorIndex; - if (aIndex === -1) - aIndex = items.IndexOf(this._SelectedItem); - aIndex = Math.max(aIndex, 0); - var oIndex = items.IndexOf(item); - return this.SelectRange(Math.min(aIndex, oIndex), Math.max(aIndex, oIndex)); - } - this._AnchorIndex = selIndex; - if (Fayde.Input.Keyboard.HasControl()) { - if (selIndex > -1) - return this.RemoveFromSelected(item); - return this.AddToSelected(item); - } - return this.ReplaceSelection(item); - }; - SelectorSelection.prototype._SelectMultiple = function (item, selIndex) { - return (selIndex > -1) ? this.RemoveFromSelected(item) : this.AddToSelected(item); - }; - SelectorSelection.prototype.SelectRange = function (startIndex, endIndex) { - var ownerItems = this._Owner.Items; - var oldSelectedItems = this._SelectedItems; - this._SelectedItems = ownerItems.GetRange(startIndex, endIndex); - var toUnselect = except(oldSelectedItems, this._SelectedItems); - var toSelect = except(this._SelectedItems, oldSelectedItems); - if (this._SelectedItems.indexOf(this._SelectedItem) === -1) { - this._SelectedItem = this._SelectedItems[0]; - this.UpdateSelectorProperties(this._SelectedItem, this._SelectedItem == null ? -1 : ownerItems.IndexOf(this._SelectedItem), this._Owner._GetValueFromItem(this._SelectedItem)); - } - this._Owner._SelectedItemsIsInvalid = true; - this._Owner._RaiseSelectionChanged(toUnselect, toSelect); - }; - SelectorSelection.prototype.SelectAll = function (items) { - try { - this._IsUpdating = true; - if (this.Mode === Controls.SelectionMode.Single) - throw new NotSupportedException("Cannot call SelectAll when in Single select mode"); - var selectedItems = this._SelectedItems; - var select = except(items, selectedItems); - if (select.length === 0) - return; - var owner = this._Owner; - selectedItems.push(select); - if (this._SelectedItem == null) { - this._SelectedItem = select[0]; - this.UpdateSelectorProperties(this._SelectedItem, owner.Items.IndexOf(this._SelectedItem), owner._GetValueFromItem(this._SelectedItem)); - } - owner._SelectedItemsIsInvalid = true; - owner._RaiseSelectionChanged([], select); - } - finally { - this._IsUpdating = false; - } - }; - SelectorSelection.prototype.SelectOnly = function (item) { - if (this._SelectedItem === item && this._SelectedItems.length === 1) - return; - try { - this._IsUpdating = true; - this.ReplaceSelection(item); - } - finally { - this._IsUpdating = false; - } - }; - SelectorSelection.prototype.Unselect = function (item) { - if (this._SelectedItems.indexOf(item) < 0) - return; - try { - this._IsUpdating = true; - this.RemoveFromSelected(item); - } - finally { - this._IsUpdating = false; - } - }; - SelectorSelection.prototype.AddToSelected = function (item) { - this._SelectedItems.push(item); - var owner = this._Owner; - if (this._SelectedItems.length === 1) { - this._SelectedItem = item; - this.UpdateSelectorProperties(item, owner.Items.IndexOf(item), owner._GetValueFromItem(item)); - } - owner._SelectedItemsIsInvalid = true; - owner._RaiseSelectionChanged([], [item]); - }; - SelectorSelection.prototype.RemoveFromSelected = function (item) { - var selectedItems = this._SelectedItems; - var index = selectedItems.indexOf(item); - if (index > -1) - selectedItems.splice(index, 1); - var owner = this._Owner; - if (this._SelectedItem === item) { - var newItem = selectedItems[0]; - this._SelectedItem = newItem; - this.UpdateSelectorProperties(newItem, newItem == null ? -1 : owner.Items.IndexOf(newItem), owner._GetValueFromItem(item)); - } - owner._SelectedItemsIsInvalid = true; - owner._RaiseSelectionChanged([item], []); - }; - SelectorSelection.prototype.ReplaceSelection = function (item) { - var owner = this._Owner; - if (!this.UpdateCollectionView(item)) { - this.UpdateSelectorProperties(this._SelectedItem, owner.Items.IndexOf(this._SelectedItem), owner._GetValueFromItem(this._SelectedItem)); - return; - } - var oldItems = this._SelectedItems.slice(0); - var newItems = []; - var itemIndex = oldItems.indexOf(item); - if (itemIndex > -1) { - oldItems.splice(itemIndex, 1); - } - else { - newItems.push(item); - } - this._SelectedItems = [item]; - this._SelectedItem = item; - this.UpdateSelectorProperties(item, owner.Items.IndexOf(item), owner._GetValueFromItem(item)); - if (newItems.length !== 0 || oldItems.length !== 0) { - owner._SelectedItemsIsInvalid = true; - owner._RaiseSelectionChanged(oldItems, newItems); - } - }; - SelectorSelection.prototype.UpdateSelectorProperties = function (item, index, value) { - var owner = this._Owner; - if (owner.SelectedItem !== item) - owner.SelectedItem = item; - if (owner.SelectedIndex !== index) - owner.SelectedIndex = index; - if (owner.SelectedValue !== value) - owner.SelectedValue = value; - this.UpdateCollectionView(item); - }; - SelectorSelection.prototype.UpdateCollectionView = function (item) { - var icv = Fayde.Data.ICollectionView_.as(this._Owner.ItemsSource); - if (icv) { - icv.MoveCurrentTo(item); - return item === icv.CurrentItem; - } - return true; - }; - return SelectorSelection; - })(); - Primitives.SelectorSelection = SelectorSelection; - Fayde.CoreLibrary.add(SelectorSelection); - function except(arr1, arr2) { - var r = []; - var c; - for (var i = 0, len = arr1.length; i < len; i++) { - c = arr1[i]; - if (arr2.indexOf(c) < 0) - r.push(c); - } - return r; - } - })(Primitives = Controls.Primitives || (Controls.Primitives = {})); - })(Controls = Fayde.Controls || (Fayde.Controls = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Providers; - (function (Providers) { - (function (StyleIndex) { - StyleIndex[StyleIndex["VisualTree"] = 0] = "VisualTree"; - StyleIndex[StyleIndex["ApplicationResources"] = 1] = "ApplicationResources"; - StyleIndex[StyleIndex["Theme"] = 2] = "Theme"; - StyleIndex[StyleIndex["Count"] = 3] = "Count"; - })(Providers.StyleIndex || (Providers.StyleIndex = {})); - var StyleIndex = Providers.StyleIndex; - (function (StyleMask) { - StyleMask[StyleMask["None"] = 0] = "None"; - StyleMask[StyleMask["VisualTree"] = 1] = "VisualTree"; - StyleMask[StyleMask["ApplicationResources"] = 2] = "ApplicationResources"; - StyleMask[StyleMask["Theme"] = 4] = "Theme"; - StyleMask[StyleMask["All"] = 7] = "All"; - })(Providers.StyleMask || (Providers.StyleMask = {})); - var StyleMask = Providers.StyleMask; - var ImplicitStyleBroker = (function () { - function ImplicitStyleBroker() { - } - ImplicitStyleBroker.Set = function (fe, mask, styles) { - if (!styles) - styles = getImplicitStyles(fe, mask); - if (styles) { - var error = new BError(); - var len = StyleIndex.Count; - for (var i = 0; i < len; i++) { - var style = styles[i]; - if (!style) - continue; - if (!style.Validate(fe, error)) { - error.ThrowException(); - return; - } - } - } - ImplicitStyleBroker.SetImpl(fe, mask, styles); - }; - ImplicitStyleBroker.SetImpl = function (fe, mask, styles) { - if (!styles) - return; - var oldStyles = fe.XamlNode._ImplicitStyles; - var newStyles = [null, null, null]; - if (oldStyles) { - newStyles[StyleIndex.Theme] = oldStyles[StyleIndex.Theme]; - newStyles[StyleIndex.ApplicationResources] = oldStyles[StyleIndex.ApplicationResources]; - newStyles[StyleIndex.VisualTree] = oldStyles[StyleIndex.VisualTree]; - } - if (mask & StyleMask.Theme) - newStyles[StyleIndex.Theme] = styles[StyleIndex.Theme]; - if (mask & StyleMask.ApplicationResources) - newStyles[StyleIndex.ApplicationResources] = styles[StyleIndex.ApplicationResources]; - if (mask & StyleMask.VisualTree) - newStyles[StyleIndex.VisualTree] = styles[StyleIndex.VisualTree]; - ImplicitStyleBroker.ApplyStyles(fe, mask, styles); - }; - ImplicitStyleBroker.Clear = function (fe, mask) { - var holder = fe.XamlNode; - var oldStyles = holder._ImplicitStyles; - if (!oldStyles) - return; - var newStyles = oldStyles.slice(0); - if (mask & StyleMask.Theme) - newStyles[StyleIndex.Theme] = null; - if (mask & StyleMask.ApplicationResources) - newStyles[StyleIndex.ApplicationResources] = null; - if (mask & StyleMask.VisualTree) - newStyles[StyleIndex.VisualTree] = null; - ImplicitStyleBroker.ApplyStyles(fe, holder._StyleMask & ~mask, newStyles); - }; - ImplicitStyleBroker.ApplyStyles = function (fe, mask, styles) { - var holder = fe.XamlNode; - var oldStyles = holder._ImplicitStyles; - var isChanged = !oldStyles || mask !== holder._StyleMask; - if (!isChanged) { - for (var i = 0; i < StyleIndex.Count; i++) { - if (styles[i] !== oldStyles[i]) { - isChanged = true; - break; - } - } - } - if (!isChanged) - return; - Providers.SwapStyles(fe, Fayde.MultipleStylesWalker(oldStyles), Fayde.MultipleStylesWalker(styles), true); - holder._ImplicitStyles = styles; - holder._StyleMask = mask; - }; - return ImplicitStyleBroker; - })(); - Providers.ImplicitStyleBroker = ImplicitStyleBroker; - function getImplicitStyles(fe, mask) { - var styles = []; - if ((mask & StyleMask.Theme) != 0) { - styles[StyleIndex.Theme] = getThemeStyle(fe); - } - if ((mask & StyleMask.ApplicationResources) != 0) { - var app = Fayde.Application.Current; - if (app) - styles[StyleIndex.ApplicationResources] = getAppResourcesStyle(app, fe); - } - if ((mask & StyleMask.VisualTree) != 0) - styles[StyleIndex.VisualTree] = getVisualTreeStyle(fe); - return styles; - } - function getThemeStyle(fe) { - if (fe instanceof Fayde.Controls.Control) { - var style = fe.GetDefaultStyle(); - if (style) - return style; - } - return Fayde.ThemeManager.FindStyle(fe.DefaultStyleKey); - } - function getAppResourcesStyle(app, fe) { - return app.Resources.Get(fe.DefaultStyleKey); - } - function getVisualTreeStyle(fe) { - var key = fe.DefaultStyleKey; - var cur = fe; - var isControl = cur instanceof Fayde.Controls.Control; - var curNode = fe.XamlNode; - var rd; - while (curNode) { - cur = curNode.XObject; - if (cur.TemplateOwner && !fe.TemplateOwner) { - cur = cur.TemplateOwner; - curNode = cur.XamlNode; - continue; - } - if (!isControl && cur === fe.TemplateOwner) - break; - rd = cur.Resources; - if (rd) { - var style = rd.Get(key); - if (style) - return style; - } - curNode = curNode.VisualParentNode; - } - return undefined; - } - })(Providers = Fayde.Providers || (Fayde.Providers = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Providers; - (function (Providers) { - var LocalStyleBroker = (function () { - function LocalStyleBroker() { - } - LocalStyleBroker.Set = function (fe, newStyle) { - var holder = fe.XamlNode; - if (newStyle) - newStyle.Seal(); - Providers.SwapStyles(fe, Fayde.SingleStyleWalker(holder._LocalStyle), Fayde.SingleStyleWalker(newStyle), false); - holder._LocalStyle = newStyle; - }; - return LocalStyleBroker; - })(); - Providers.LocalStyleBroker = LocalStyleBroker; - })(Providers = Fayde.Providers || (Fayde.Providers = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Providers; - (function (Providers) { - function SwapStyles(fe, oldWalker, newWalker, isImplicit) { - var arr = fe._PropertyStorage; - var oldSetter = oldWalker.Step(); - var newSetter = newWalker.Step(); - var storage; - var value; - var propd; - while (oldSetter || newSetter) { - if (oldSetter && newSetter) { - switch (Fayde.Setter.Compare(oldSetter, newSetter)) { - case 0: - value = newSetter.ConvertedValue; - propd = newSetter.Property; - oldSetter = oldWalker.Step(); - newSetter = newWalker.Step(); - break; - case -1: - value = undefined; - propd = oldSetter.Property; - oldSetter = oldWalker.Step(); - break; - case 1: - value = newSetter.ConvertedValue; - propd = newSetter.Property; - newSetter = newWalker.Step(); - break; - } - } - else if (newSetter) { - value = newSetter.ConvertedValue; - propd = newSetter.Property; - newSetter = newWalker.Step(); - } - else { - value = undefined; - propd = oldSetter.Property; - oldSetter = oldWalker.Step(); - } - storage = arr[propd._ID]; - if (!storage) - storage = arr[propd._ID] = propd.Store.CreateStorage(fe, propd); - if (isImplicit) - propd.Store.SetImplicitStyle(storage, value); - else - propd.Store.SetLocalStyleValue(storage, value); - } - } - Providers.SwapStyles = SwapStyles; - })(Providers = Fayde.Providers || (Fayde.Providers = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Data; - (function (Data) { - var lookupNamespaces; - function lookupType(name) { - if (!lookupNamespaces) { - lookupNamespaces = [ - Fayde, - Fayde.Controls, - Fayde.Media, - Fayde.Controls.Primitives, - Fayde.Shapes, - window]; - } - var len = lookupNamespaces.length; - for (var i = 0; i < len; i++) { - var potentialType = lookupNamespaces[i][name]; - if (typeof potentialType === "function") - return potentialType; - } - return eval(name); - } - function handlePeriod(data) { - if (data.tickOpen) - return true; - if (data.res != null) { - var value = null; - if ((value = data.lu.GetValue(data.res)) == null) - return false; - if (!(value instanceof Fayde.DependencyObject)) - return false; - var newLu = value; - if (data.promotedValues && data.promotedValues[value._ID] == null && !(value instanceof Fayde.UIElement)) { - var clonedValue = Fayde.Clone(value); - if (clonedValue instanceof Fayde.DependencyObject) { - newLu = clonedValue; - data.lu.SetCurrentValue(data.res, clonedValue); - clonedValue = data.lu.GetValue(data.res); - data.promotedValues[clonedValue._ID] = clonedValue; - } - } - data.lu = newLu; - } - data.expressionFound = false; - data.prop = data.path.substr(data.index); - return true; - } - function handleLeftBracket(data) { - if (data.index >= data.end) - return; - var hasLeadingZeroes = false; - while (data.path.charAt(data.index) === '0') { - hasLeadingZeroes = true; - data.index++; - } - data.i = parseInt(data.path.substr(data.index), 10); - if (!isNaN(data.i)) - data.index += data.i.toString().length; - if (isNaN(data.i) && hasLeadingZeroes) - data.i = 0; - if (data.path.charAt(data.index) !== ']' || data.path.charAt(data.index + 1) !== '.') - return true; - data.prop = data.path = data.path.substr(data.index + 2); - data.index = 0; - data.end = data.path.length; - var value = null; - if (data.expressionFound) { - data.expressionFound = false; - if ((value = data.lu.GetValue(data.res)) == null) - return false; - } - if (value instanceof Fayde.XamlObjectCollection) { - data.collection = value; - } - else { - data.collection = null; - return false; - } - if ((value = data.collection.GetValueAt(data.i)) == null) - return false; - if (value instanceof Fayde.DependencyObject) { - data.lu = value; - } - else { - data.lu = null; - return false; - } - return true; - } - function handleDefault(data) { - var explicitType = false; - data.expressionFound = true; - var start = data.index - 1; - var c; - while (data.index < data.end) { - c = data.path.charAt(data.index); - if (!((c !== '.' || data.tickOpen) && (!data.parenOpen || c !== ')') && c !== '[')) - break; - data.index++; - if (c === '\'') { - data.tickOpen = !data.tickOpen; - if (!data.tickOpen) - break; - } - } - if (data.index === data.end) { - data.type = data.lu.constructor; - } - else { - c = data.path.charAt(data.index); - if (c === '.') { - if ((data.index - start) === 11 && data.path.substr(start, 11).toLowerCase() === "textelement") { - data.type = Fayde.Controls.TextBlock; - data.explicitType = true; - } - else { - var s = data.index; - if (data.path.charAt(data.index - 1) === '\'' && !data.tickOpen) { - s = data.index - 1; - } - var name = data.path.slice(start, s); - data.type = lookupType(name); - data.explicitType = true; - if (!data.type) - data.type = data.lu.constructor; - } - data.index++; - start = data.index; - while (data.index < data.end) { - c = data.path.charAt(data.index); - if (!((!data.parenOpen || c !== ')') && (c !== '.' || data.tickOpen))) - break; - data.index++; - if (c === '\'') { - data.tickOpen = !data.tickOpen; - if (!data.tickOpen) - break; - } - } - if (data.index === start) - return false; - } - else { - data.type = data.lu.constructor; - data.explicitType = false; - } - c = data.path.charAt(data.index); - if ((c !== ')' && data.parenOpen) || data.type == null) - return false; - } - name = data.path.slice(start, data.index); - if ((data.res = DependencyProperty.GetDependencyProperty(data.type, name)) == null && data.lu) - data.res = DependencyProperty.GetDependencyProperty(data.lu.constructor, name); - if (data.res == null) - return false; - if (!data.res.IsAttached && !(data.lu instanceof data.type)) { - if ((data.res = DependencyProperty.GetDependencyProperty(data.lu.constructor, name)) == null) - return false; - } - if (data.res.IsAttached && data.explicitType && !data.parenOpen) - return false; - return true; - } - var PropertyPath = (function () { - function PropertyPath(path, expandedPath) { - this._Propd = null; - this._Path = path; - this._ExpandedPath = expandedPath; - } - PropertyPath.CreateFromParameter = function (parameter) { - var p = new PropertyPath(); - if (parameter instanceof DependencyProperty) - p._Propd = parameter; - p._Path = null; - if (parameter instanceof String) - p._Path = parameter; - return p; - }; - PropertyPath.prototype.TryResolveDependencyProperty = function (refobj, promotedValues) { - if (this._Propd) - return this._Propd; - var ov = refobj.Value; - var propd = PropertyPath.ResolvePropertyPath(refobj, this, promotedValues); - if (ov === refobj.Value) - this._Propd = propd; - return propd; - }; - Object.defineProperty(PropertyPath.prototype, "Path", { - get: function () { return this._Path; }, - enumerable: true, - configurable: true - }); - Object.defineProperty(PropertyPath.prototype, "ExpandedPath", { - get: function () { return this._ExpandedPath; }, - enumerable: true, - configurable: true - }); - Object.defineProperty(PropertyPath.prototype, "ParsePath", { - get: function () { - if (this._Propd) - return "(0)"; - if (this._ExpandedPath) - return this._ExpandedPath; - return this._Path; - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(PropertyPath.prototype, "HasDependencyProperty", { - get: function () { return this._Propd != null; }, - enumerable: true, - configurable: true - }); - Object.defineProperty(PropertyPath.prototype, "DependencyProperty", { - get: function () { return this._Propd; }, - enumerable: true, - configurable: true - }); - PropertyPath.ResolvePropertyPath = function (refobj, propertyPath, promotedValues) { - var path = propertyPath.Path; - var expanded = propertyPath.ExpandedPath; - if (expanded != null) - path = expanded; - var data = { - index: 0, - i: 0, - end: path.length, - path: path, - parenOpen: false, - tickOpen: false, - prop: path, - res: null, - cloned: false, - expressionFound: false, - lu: refobj.Value, - collection: null, - promotedValues: promotedValues, - explicitType: false, - type: null, - }; - var success; - while (data.index < data.end) { - success = true; - var c = data.path.charAt(data.index); - data.index++; - if (c === '(') { - data.parenOpen = true; - } - else if (c === ')') { - data.parenOpen = false; - } - else if (c === '\'') { - if (!propertyPath.ExpandedPath) - console.warn("The ' character is not legal in property paths."); - else - data.tickOpen = !data.tickOpen; - } - else if (c === '.') { - success = handlePeriod(data); - } - else if (c === '[') { - success = handleLeftBracket(data); - } - else { - success = handleDefault(data); - } - if (!success) { - refobj.Value = null; - return null; - } - } - refobj.Value = data.lu; - return data.res; - }; - PropertyPath.prototype.Clone = function () { - return new PropertyPath(this._Path, this._ExpandedPath); - }; - return PropertyPath; - })(); - Data.PropertyPath = PropertyPath; - Fayde.CoreLibrary.add(PropertyPath); - nullstone.registerTypeConverter(PropertyPath, function (val) { - if (!val) - return new PropertyPath(); - if (val instanceof PropertyPath) - return val; - return new PropertyPath(val.toString()); - }); - })(Data = Fayde.Data || (Fayde.Data = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Data; - (function (Data) { - (function (PropertyNodeType) { - PropertyNodeType[PropertyNodeType["None"] = 0] = "None"; - PropertyNodeType[PropertyNodeType["AttachedProperty"] = 1] = "AttachedProperty"; - PropertyNodeType[PropertyNodeType["Indexed"] = 2] = "Indexed"; - PropertyNodeType[PropertyNodeType["Property"] = 3] = "Property"; - })(Data.PropertyNodeType || (Data.PropertyNodeType = {})); - var PropertyNodeType = Data.PropertyNodeType; - var PropertyPathParser = (function () { - function PropertyPathParser(path) { - this.Path = path; - } - PropertyPathParser.prototype.Step = function (data) { - var type = PropertyNodeType.None; - var path = this.Path; - if (path.length === 0) { - data.typeName = null; - data.propertyName = null; - data.index = null; - return type; - } - var end = 0; - if (path.charAt(0) === '(') { - type = PropertyNodeType.AttachedProperty; - end = path.indexOf(')'); - if (end === -1) - throw new ArgumentException("Invalid property path. Attached property is missing the closing bracket"); - var tickOpen = path.indexOf('\''); - var tickClose = 0; - var typeOpen; - var typeClose; - var propOpen; - var propClose; - typeOpen = path.indexOf('\''); - if (typeOpen > 0) { - typeOpen++; - typeClose = path.indexOf('\'', typeOpen + 1); - if (typeClose < 0) - throw new Exception("Invalid property path, Unclosed type name '" + path + "'."); - propOpen = path.indexOf('.', typeClose); - if (propOpen < 0) - throw new Exception("Invalid properth path, No property indexer found '" + path + "'."); - propOpen++; - } - else { - typeOpen = 1; - typeClose = path.indexOf('.', typeOpen); - if (typeClose < 0) - throw new Exception("Invalid property path, No property indexer found on '" + path + "'."); - propOpen = typeClose + 1; - } - propClose = end; - data.typeName = path.slice(typeOpen, typeClose); - data.propertyName = path.slice(propOpen, propClose); - data.index = null; - if (path.length > (end + 1) && path.charAt(end + 1) === '.') - end++; - path = path.substr(end + 1); - } - else if (path.charAt(0) === '[') { - type = PropertyNodeType.Indexed; - end = path.indexOf(']'); - data.typeName = null; - data.propertyName = null; - data.index = parseInt(path.substr(1, end - 1)); - path = path.substr(end + 1); - if (path.charAt(0) === '.') - path = path.substr(1); - } - else { - type = PropertyNodeType.Property; - end = indexOfAny(path, ['.', '[']); - if (end === -1) { - data.propertyName = path; - path = ""; - } - else { - data.propertyName = path.substr(0, end); - if (path.charAt(end) === '.') - path = path.substr(end + 1); - else - path = path.substr(end); - } - data.typeName = null; - data.index = null; - } - this.Path = path; - return type; - }; - return PropertyPathParser; - })(); - Data.PropertyPathParser = PropertyPathParser; - function indexOfAny(str, carr, start) { - if (!carr) - return -1; - if (!start) - start = 0; - for (var cur = start; cur < str.length; cur++) { - var c = str.charAt(cur); - for (var i = 0; i < carr.length; i++) { - if (c === carr[i]) - return cur; - } - } - return -1; - } - })(Data = Fayde.Data || (Fayde.Data = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Data; - (function (Data) { - var PropertyPathWalker = (function () { - function PropertyPathWalker(path, bindDirectlyToSource, bindsToView, isDataContextBound) { - bindDirectlyToSource = bindDirectlyToSource !== false; - bindsToView = bindsToView === true; - this.IsDataContextBound = isDataContextBound === true; - this.Path = path; - this.IsDataContextBound = isDataContextBound; - var lastCVNode = null; - if (!path || path === ".") { - lastCVNode = new CollectionViewNode(bindDirectlyToSource, bindsToView); - this.Node = lastCVNode; - this.FinalNode = lastCVNode; - } - else { - var data = { - typeName: undefined, - propertyName: undefined, - index: undefined - }; - var type; - var parser = new Data.PropertyPathParser(path); - while ((type = parser.Step(data)) !== Data.PropertyNodeType.None) { - var isViewProperty = false; - var node = lastCVNode = new CollectionViewNode(bindDirectlyToSource, isViewProperty); - switch (type) { - case Data.PropertyNodeType.AttachedProperty: - case Data.PropertyNodeType.Property: - node.Next = new StandardPropertyPathNode(data.typeName, data.propertyName); - break; - case Data.PropertyNodeType.Indexed: - node.Next = new IndexedPropertyPathNode(data.index); - break; - default: - break; - } - if (this.FinalNode) - this.FinalNode.Next = node; - else - this.Node = node; - this.FinalNode = node.Next; - } - } - lastCVNode.BindToView = lastCVNode.BindToView || bindsToView; - this.FinalNode.Listen(this); - } - Object.defineProperty(PropertyPathWalker.prototype, "IsPathBroken", { - get: function () { - var path = this.Path; - if (this.IsDataContextBound && (!path || path.length < 1)) - return false; - var node = this.Node; - while (node) { - if (node.IsBroken) - return true; - node = node.Next; - } - return false; - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(PropertyPathWalker.prototype, "FinalPropertyName", { - get: function () { - var final = this.FinalNode; - if (final instanceof StandardPropertyPathNode) - return final.PropertyInfo ? final.PropertyInfo.name : ""; - var lastName = ""; - for (var cur = this.Node; cur; cur = cur.Next) { - if (cur instanceof StandardPropertyPathNode) - lastName = cur.PropertyInfo ? cur.PropertyInfo.name : ""; - } - return lastName; - }, - enumerable: true, - configurable: true - }); - PropertyPathWalker.prototype.GetValue = function (item) { - this.Update(item); - var o = this.FinalNode.Value; - return o; - }; - PropertyPathWalker.prototype.Update = function (source) { - this.Source = source; - this.Node.SetSource(source); - }; - PropertyPathWalker.prototype.Listen = function (listener) { - this._Listener = listener; - }; - PropertyPathWalker.prototype.Unlisten = function (listener) { - if (this._Listener === listener) - this._Listener = null; - }; - PropertyPathWalker.prototype.IsBrokenChanged = function (node) { - this.ValueInternal = node.Value; - var listener = this._Listener; - if (listener) - listener.IsBrokenChanged(); - }; - PropertyPathWalker.prototype.ValueChanged = function (node) { - this.ValueInternal = node.Value; - var listener = this._Listener; - if (listener) - listener.ValueChanged(); - }; - PropertyPathWalker.prototype.GetContext = function () { - var context = null; - var cur = this.Node; - var final = this.FinalNode; - while (cur && cur !== final) { - context = cur; - cur = cur.Next; - } - if (!context) - return undefined; - return context.Value; - }; - return PropertyPathWalker; - })(); - Data.PropertyPathWalker = PropertyPathWalker; - var PropertyPathNode = (function () { - function PropertyPathNode() { - } - Object.defineProperty(PropertyPathNode.prototype, "IsBroken", { - get: function () { - return this._IsBroken; - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(PropertyPathNode.prototype, "Source", { - get: function () { - return this._Source; - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(PropertyPathNode.prototype, "Value", { - get: function () { - return this._Value; - }, - enumerable: true, - configurable: true - }); - PropertyPathNode.prototype.Listen = function (listener) { - this._NodeListener = listener; - }; - PropertyPathNode.prototype.Unlisten = function (listener) { - if (this._NodeListener === listener) - this._NodeListener = null; - }; - PropertyPathNode.prototype.OnSourceChanged = function (oldSource, newSource) { - }; - PropertyPathNode.prototype.OnSourcePropertyChanged = function (o, e) { - }; - PropertyPathNode.prototype.UpdateValue = function () { - throw new Exception("No override for abstract method: PropertyPathNode.UpdateValue"); - }; - PropertyPathNode.prototype.SetValue = function (value) { - throw new Exception("No override for abstract method: PropertyPathNode.SetValue"); - }; - PropertyPathNode.prototype.GetSource = function () { - return this._Source; - }; - PropertyPathNode.prototype.SetSource = function (value) { - if (value == null || value !== this._Source) { - var oldSource = this._Source; - var npc = Fayde.INotifyPropertyChanged_.as(oldSource); - if (npc) - npc.PropertyChanged.off(this.OnSourcePropertyChanged, this); - this._Source = value; - npc = Fayde.INotifyPropertyChanged_.as(this._Source); - if (npc) - npc.PropertyChanged.on(this.OnSourcePropertyChanged, this); - this.OnSourceChanged(oldSource, this._Source); - this.UpdateValue(); - if (this.Next) - this.Next.SetSource(this._Value); - } - }; - PropertyPathNode.prototype.UpdateValueAndIsBroken = function (newValue, isBroken) { - var emitBrokenChanged = this._IsBroken !== isBroken; - var emitValueChanged = !nullstone.equals(this.Value, newValue); - this._IsBroken = isBroken; - this._Value = newValue; - if (emitValueChanged) { - var listener = this._NodeListener; - if (listener) - listener.ValueChanged(this); - } - else if (emitBrokenChanged) { - var listener = this._NodeListener; - if (listener) - listener.IsBrokenChanged(this); - } - }; - PropertyPathNode.prototype._CheckIsBroken = function () { - return !this.Source || (!this.PropertyInfo && !this.DependencyProperty); - }; - return PropertyPathNode; - })(); - var StandardPropertyPathNode = (function (_super) { - __extends(StandardPropertyPathNode, _super); - function StandardPropertyPathNode(typeName, propertyName) { - _super.call(this); - this._STypeName = typeName; - this._PropertyName = propertyName; - } - StandardPropertyPathNode.prototype.SetValue = function (value) { - if (this.DependencyProperty) - this.Source.SetValue(this.DependencyProperty, value); - else if (this.PropertyInfo) - this.PropertyInfo.setValue(this.Source, value); - }; - StandardPropertyPathNode.prototype.UpdateValue = function () { - if (this.DependencyProperty) { - this.ValueType = this.DependencyProperty.GetTargetType(); - this.UpdateValueAndIsBroken(this.Source.GetValue(this.DependencyProperty), this._CheckIsBroken()); - } - else if (this.PropertyInfo) { - this.ValueType = null; - try { - this.UpdateValueAndIsBroken(this.PropertyInfo.getValue(this.Source), this._CheckIsBroken()); - } - catch (err) { - this.UpdateValueAndIsBroken(null, this._CheckIsBroken()); - } - } - else { - this.ValueType = null; - this.UpdateValueAndIsBroken(null, this._CheckIsBroken()); - } - }; - StandardPropertyPathNode.prototype.OnSourceChanged = function (oldSource, newSource) { - _super.prototype.OnSourceChanged.call(this, oldSource, newSource); - var oldDO; - var newDO; - if (oldSource instanceof Fayde.DependencyObject) - oldDO = oldSource; - if (newSource instanceof Fayde.DependencyObject) - newDO = newSource; - var listener = this._DPListener; - if (listener) { - listener.Detach(); - this._DPListener = listener = null; - } - this.DependencyProperty = null; - this.PropertyInfo = null; - if (!this.Source) - return; - var type = this.Source.constructor; - var typeName = this._STypeName; - if (typeName) { - if (typeName.indexOf(":") > -1) - console.warn("[Not supported] Cannot resolve type name outside of default namespace.", typeName); - var oresolve = { type: undefined, isPrimitive: false }; - if (Fayde.CoreLibrary.resolveType(null, typeName, oresolve)) - type = oresolve.type; - } - if (newDO) { - var propd = DependencyProperty.GetDependencyProperty(type, this._PropertyName, true); - if (propd) { - this.DependencyProperty = propd; - this._DPListener = listener = propd.Store.ListenToChanged(newDO, propd, this.OnPropertyChanged, this); - } - } - if (!this.DependencyProperty || !this.DependencyProperty.IsAttached) { - this.PropertyInfo = nullstone.PropertyInfo.find(this.Source, this._PropertyName); - } - }; - StandardPropertyPathNode.prototype.OnPropertyChanged = function (sender, args) { - try { - this.UpdateValue(); - if (this.Next) - this.Next.SetSource(this.Value); - } - catch (err) { - } - }; - StandardPropertyPathNode.prototype.OnSourcePropertyChanged = function (sender, e) { - if (e.PropertyName === this._PropertyName && this.PropertyInfo) { - this.UpdateValue(); - var next = this.Next; - if (next) - next.SetSource(this.Value); - } - }; - return StandardPropertyPathNode; - })(PropertyPathNode); - var CollectionViewNode = (function (_super) { - __extends(CollectionViewNode, _super); - function CollectionViewNode(bindsDirectlyToSource, bindToView) { - _super.call(this); - this.BindsDirectlyToSource = bindsDirectlyToSource === true; - this.BindToView = bindToView === true; - } - CollectionViewNode.prototype.OnSourceChanged = function (oldSource, newSource) { - _super.prototype.OnSourceChanged.call(this, oldSource, newSource); - this.DisconnectViewHandlers(); - this.ConnectViewHandlers(newSource, newSource); - }; - CollectionViewNode.prototype.ViewChanged = function (sender, e) { - this.DisconnectViewHandlers(true); - this.ConnectViewHandlers(null, e.NewValue); - this.ViewCurrentChanged(this, null); - }; - CollectionViewNode.prototype.ViewCurrentChanged = function (sender, e) { - this.UpdateValue(); - if (this.Next) - this.Next.SetSource(this.Value); - }; - CollectionViewNode.prototype.SetValue = function () { - throw new NotSupportedException("SetValue"); - }; - CollectionViewNode.prototype.UpdateValue = function () { - var src = this.Source; - if (!this.BindsDirectlyToSource) { - var view; - if (src instanceof Data.CollectionViewSource) - src = view = src.View; - else - view = Data.ICollectionView_.as(src); - if (view && !this.BindToView) - src = view.CurrentItem; - } - this.ValueType = src == null ? null : src.constructor; - this.UpdateValueAndIsBroken(src, this._CheckIsBroken()); - }; - CollectionViewNode.prototype._CheckIsBroken = function () { - return this.Source == null; - }; - CollectionViewNode.prototype.ConnectViewHandlers = function (source, view) { - if (source instanceof Data.CollectionViewSource) { - this._ViewPropertyListener = Data.CollectionViewSource.ViewProperty.Store.ListenToChanged(source, Data.CollectionViewSource.ViewProperty, this.ViewChanged, this); - view = source.View; - } - this._View = Data.ICollectionView_.as(view); - if (this._View) - this._View.CurrentChanged.on(this.ViewCurrentChanged, this); - }; - CollectionViewNode.prototype.DisconnectViewHandlers = function (onlyView) { - if (!onlyView) - onlyView = false; - if (this._ViewPropertyListener && !onlyView) { - this._ViewPropertyListener.Detach(); - this._ViewPropertyListener = null; - } - if (this._View) { - this._View.CurrentChanged.off(this.ViewCurrentChanged, this); - } - }; - return CollectionViewNode; - })(PropertyPathNode); - var IndexedPropertyPathNode = (function (_super) { - __extends(IndexedPropertyPathNode, _super); - function IndexedPropertyPathNode(index) { - _super.call(this); - this._IsBroken = false; - var val = parseInt(index, 10); - if (!isNaN(val)) - index = val; - Object.defineProperty(this, "Index", { value: index, writable: false }); - } - IndexedPropertyPathNode.prototype.UpdateValue = function () { - if (this.PropertyInfo == null) { - this._IsBroken = true; - this.ValueType = null; - this.UpdateValueAndIsBroken(null, this._IsBroken); - return; - } - try { - var newVal = this.PropertyInfo.getValue(this.Source, this.Index); - this._IsBroken = false; - this.ValueType = this.PropertyInfo.propertyType; - this.UpdateValueAndIsBroken(newVal, this._IsBroken); - } - catch (err) { - this._IsBroken = true; - this.ValueType = null; - this.UpdateValueAndIsBroken(null, this._IsBroken); - } - }; - IndexedPropertyPathNode.prototype.SetValue = function (value) { - if (this.PropertyInfo) - this.PropertyInfo.setValue(this.Source, this.Index, value); - }; - IndexedPropertyPathNode.prototype._CheckIsBroken = function () { - return this._IsBroken || _super.prototype._CheckIsBroken.call(this); - }; - IndexedPropertyPathNode.prototype.OnSourcePropertyChanged = function (o, e) { - this.UpdateValue(); - if (this.Next != null) - this.Next.SetSource(this.Value); - }; - IndexedPropertyPathNode.prototype.OnSourceChanged = function (oldSource, newSource) { - _super.prototype.OnSourceChanged.call(this, oldSource, newSource); - var cc = Fayde.Collections.INotifyCollectionChanged_.as(oldSource); - if (cc) - cc.CollectionChanged.off(this.CollectionChanged, this); - cc = Fayde.Collections.INotifyCollectionChanged_.as(newSource); - if (cc) - cc.CollectionChanged.on(this.CollectionChanged, this); - this._GetIndexer(); - }; - IndexedPropertyPathNode.prototype._GetIndexer = function () { - this.PropertyInfo = null; - if (this._Source != null) { - this.PropertyInfo = nullstone.IndexedPropertyInfo.find(this._Source); - } - }; - IndexedPropertyPathNode.prototype.CollectionChanged = function (o, e) { - this.UpdateValue(); - if (this.Next) - this.Next.SetSource(this.Value); - }; - return IndexedPropertyPathNode; - })(PropertyPathNode); - })(Data = Fayde.Data || (Fayde.Data = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Input; - (function (Input) { - var TouchInternal; - (function (TouchInternal) { - var ActiveTouchBase = (function () { - function ActiveTouchBase(touchHandler) { - var _this = this; - this.InputList = []; - this._IsEmitting = false; - this._PendingCapture = null; - this._PendingReleaseCapture = false; - this._Captured = null; - this._CapturedInputList = null; - Object.defineProperty(this, "Device", { value: this.CreateTouchDevice(), writable: false }); - this._FinishReleaseCaptureFunc = function () { return touchHandler.HandleTouches(Input.TouchInputType.NoOp, [_this], false, true); }; - } - ActiveTouchBase.prototype.Capture = function (uie) { - var uin = uie.XamlNode; - if (this._Captured === uin || this._PendingCapture === uin) - return true; - if (!this._IsEmitting) - return false; - this._PendingCapture = uin; - return true; - }; - ActiveTouchBase.prototype.ReleaseCapture = function (uie) { - var uin = uie.XamlNode; - if (this._Captured !== uin && this._PendingCapture !== uin) - return; - if (this._IsEmitting) - this._PendingReleaseCapture = true; - else - this._PerformReleaseCapture(); - }; - ActiveTouchBase.prototype._PerformCapture = function (uin) { - this._Captured = uin; - var newInputList = []; - while (uin != null) { - newInputList.push(uin); - uin = uin.VisualParentNode; - } - this._CapturedInputList = newInputList; - this._PendingCapture = null; - }; - ActiveTouchBase.prototype._PerformReleaseCapture = function () { - var oldCaptured = this._Captured; - this._Captured = null; - this._PendingReleaseCapture = false; - oldCaptured._EmitLostTouchCapture(new Input.TouchEventArgs(this.Device)); - this._FinishReleaseCaptureFunc(); - }; - ActiveTouchBase.prototype.Emit = function (type, newInputList, emitLeave, emitEnter) { - if (this._IsEmitting) - return; - this._IsEmitting = true; - var handled = false; - var indices = { Index1: -1, Index2: -1 }; - findFirstCommonElement(this.InputList, newInputList, indices); - if (emitLeave !== false) - this._EmitList(Input.TouchInputType.TouchLeave, this.InputList, indices.Index1); - if (emitEnter !== false) - this._EmitList(Input.TouchInputType.TouchEnter, newInputList, indices.Index2); - var handled = false; - if (type !== Input.TouchInputType.NoOp) - handled = this._EmitList(type, this._Captured ? this._CapturedInputList : newInputList); - this.InputList = newInputList; - if (this._PendingCapture) - this._PerformCapture(this._PendingCapture); - if (this._PendingReleaseCapture) - this._PerformReleaseCapture(); - this._IsEmitting = false; - return handled; - }; - ActiveTouchBase.prototype._EmitList = function (type, list, endIndex) { - var handled = false; - if (endIndex === 0) - return handled; - if (!endIndex || endIndex === -1) - endIndex = list.length; - var args = new Input.TouchEventArgs(this.Device); - var node = list[0]; - if (node && args instanceof Fayde.RoutedEventArgs) - args.Source = node.XObject; - for (var i = 0; i < endIndex; i++) { - node = list[i]; - if (type === Input.TouchInputType.TouchLeave) - args.Source = node.XObject; - if (node._EmitTouchEvent(type, args)) - handled = true; - if (type === Input.TouchInputType.TouchLeave) - args = new Input.TouchEventArgs(this.Device); - } - return handled; - }; - ActiveTouchBase.prototype.GetTouchPoint = function (relativeTo) { - if (!relativeTo) - return this.CreateTouchPoint(this.Position.Clone()); - if (!(relativeTo instanceof Fayde.UIElement)) - throw new ArgumentException("Specified relative object must be a UIElement."); - var p = this.Position.Clone(); - minerva.core.Updater.transformPoint(relativeTo.XamlNode.LayoutUpdater, p); - return this.CreateTouchPoint(p); - }; - ActiveTouchBase.prototype.CreateTouchPoint = function (p) { - return new Input.TouchPoint(p, 0); - }; - ActiveTouchBase.prototype.CreateTouchDevice = function () { - var _this = this; - var d = { - Identifier: null, - Captured: null, - Capture: function (uie) { return _this.Capture(uie); }, - ReleaseCapture: function (uie) { return _this.ReleaseCapture(uie); }, - GetTouchPoint: function (relativeTo) { return _this.GetTouchPoint(relativeTo); } - }; - Object.defineProperty(d, "Identifier", { get: function () { return _this.Identifier; } }); - Object.defineProperty(d, "Captured", { get: function () { return _this._Captured ? _this._Captured.XObject : null; } }); - return d; - }; - return ActiveTouchBase; - })(); - TouchInternal.ActiveTouchBase = ActiveTouchBase; - function findFirstCommonElement(list1, list2, outObj) { - var i = list1.length - 1; - var j = list2.length - 1; - outObj.Index1 = -1; - outObj.Index2 = -1; - while (i >= 0 && j >= 0) { - if (list1[i] !== list2[j]) - return; - outObj.Index1 = i--; - outObj.Index2 = j--; - } - } - })(TouchInternal = Input.TouchInternal || (Input.TouchInternal = {})); - })(Input = Fayde.Input || (Fayde.Input = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Input; - (function (Input) { - var TouchInternal; - (function (TouchInternal) { - var TouchInteropBase = (function () { - function TouchInteropBase() { - this.CanvasOffset = null; - this.ActiveTouches = []; - } - Object.defineProperty(TouchInteropBase.prototype, "CoordinateOffset", { - get: function () { - return { - left: window.pageXOffset + this.CanvasOffset.left, - top: window.pageYOffset + this.CanvasOffset.top - }; - }, - enumerable: true, - configurable: true - }); - TouchInteropBase.prototype.Register = function (input, canvas) { - this.Input = input; - this.CanvasOffset = this._CalcOffset(canvas); - }; - TouchInteropBase.prototype._CalcOffset = function (canvas) { - var left = 0; - var top = 0; - var cur = canvas; - if (cur.offsetParent) { - do { - left += cur.offsetLeft; - top += cur.offsetTop; - } while (cur = cur.offsetParent); - } - return { left: left, top: top }; - }; - TouchInteropBase.prototype.HandleTouches = function (type, touches, emitLeave, emitEnter) { - var touch; - var handled = false; - while (touch = touches.shift()) { - var inputList = this.Input.HitTestPoint(touch.Position); - if (inputList) - handled = handled || touch.Emit(type, inputList, emitLeave, emitEnter); - } - return handled; - }; - return TouchInteropBase; - })(); - TouchInternal.TouchInteropBase = TouchInteropBase; - })(TouchInternal = Input.TouchInternal || (Input.TouchInternal = {})); - })(Input = Fayde.Input || (Fayde.Input = {})); -})(Fayde || (Fayde = {})); -/// -/// -var Fayde; -(function (Fayde) { - var Input; - (function (Input) { - var TouchInternal; - (function (TouchInternal) { - var NonPointerActiveTouch = (function (_super) { - __extends(NonPointerActiveTouch, _super); - function NonPointerActiveTouch() { - _super.apply(this, arguments); - } - NonPointerActiveTouch.prototype.Init = function (t, offset) { - this.TouchObject = t; - this.Identifier = t.identifier; - this.Position = new Point(t.clientX + offset.left, t.clientY + offset.top); - }; - NonPointerActiveTouch.prototype.CreateTouchPoint = function (p) { - var to = this.TouchObject; - return new Input.TouchPoint(p, to.force); - }; - return NonPointerActiveTouch; - })(TouchInternal.ActiveTouchBase); - var NonPointerTouchInterop = (function (_super) { - __extends(NonPointerTouchInterop, _super); - function NonPointerTouchInterop() { - _super.apply(this, arguments); - } - NonPointerTouchInterop.prototype.Register = function (input, canvas) { - var _this = this; - _super.prototype.Register.call(this, input, canvas); - canvas.addEventListener("touchstart", function (e) { return _this._HandleTouchStart(window.event ? window.event : e); }); - canvas.addEventListener("touchend", function (e) { return _this._HandleTouchEnd(window.event ? window.event : e); }); - canvas.addEventListener("touchmove", function (e) { return _this._HandleTouchMove(window.event ? window.event : e); }); - canvas.addEventListener("touchenter", function (e) { return _this._HandleTouchEnter(window.event ? window.event : e); }); - canvas.addEventListener("touchleave", function (e) { return _this._HandleTouchLeave(window.event ? window.event : e); }); - }; - NonPointerTouchInterop.prototype._HandleTouchStart = function (e) { - e.preventDefault(); - Fayde.Engine.Inspection.Kill(); - var newTouches = this.TouchArrayFromList(e.changedTouches); - this.ActiveTouches = this.ActiveTouches.concat(newTouches); - this.Input.SetIsUserInitiatedEvent(true); - this.HandleTouches(Input.TouchInputType.TouchDown, newTouches); - this.Input.SetIsUserInitiatedEvent(false); - }; - NonPointerTouchInterop.prototype._HandleTouchEnd = function (e) { - var oldTouches = this.TouchArrayFromList(e.changedTouches); - this.Input.SetIsUserInitiatedEvent(true); - this.HandleTouches(Input.TouchInputType.TouchUp, oldTouches); - this.Input.SetIsUserInitiatedEvent(false); - removeFromArray(this.ActiveTouches, oldTouches); - }; - NonPointerTouchInterop.prototype._HandleTouchMove = function (e) { - var touches = this.TouchArrayFromList(e.changedTouches); - this.HandleTouches(Input.TouchInputType.TouchMove, touches); - }; - NonPointerTouchInterop.prototype._HandleTouchEnter = function (e) { - var touches = this.TouchArrayFromList(e.changedTouches); - this.HandleTouches(Input.TouchInputType.TouchEnter, touches); - }; - NonPointerTouchInterop.prototype._HandleTouchLeave = function (e) { - var touches = this.TouchArrayFromList(e.changedTouches); - this.HandleTouches(Input.TouchInputType.TouchLeave, touches); - }; - NonPointerTouchInterop.prototype.TouchArrayFromList = function (list) { - var len = list.length; - var touches = []; - var curto; - var cur; - for (var i = 0; i < len; i++) { - var curto = list.item(i); - cur = this.FindTouchInList(curto.identifier) || new NonPointerActiveTouch(this); - cur.Init(curto, this.CoordinateOffset); - touches.push(cur); - } - return touches; - }; - NonPointerTouchInterop.prototype.FindTouchInList = function (identifier) { - var at = this.ActiveTouches; - var len = at.length; - for (var i = 0; i < len; i++) { - if (at[i].Identifier === identifier) - return at[i]; - } - return null; - }; - return NonPointerTouchInterop; - })(TouchInternal.TouchInteropBase); - TouchInternal.NonPointerTouchInterop = NonPointerTouchInterop; - function removeFromArray(arr, toRemove) { - var len = toRemove.length; - for (var i = 0; i < len; i++) { - var index = arr.indexOf(toRemove[i]); - if (index > -1) - arr.splice(index, 1); - } - } - })(TouchInternal = Input.TouchInternal || (Input.TouchInternal = {})); - })(Input = Fayde.Input || (Fayde.Input = {})); -})(Fayde || (Fayde = {})); -/// -/// -var Fayde; -(function (Fayde) { - var Input; - (function (Input) { - var TouchInternal; - (function (TouchInternal) { - var PointerActiveTouch = (function (_super) { - __extends(PointerActiveTouch, _super); - function PointerActiveTouch() { - _super.apply(this, arguments); - } - PointerActiveTouch.prototype.Init = function (t, offset) { - this.TouchObject = t; - this.Identifier = t.pointerId; - this.Position = new Point(t.clientX + offset.left, t.clientY + offset.top); - }; - PointerActiveTouch.prototype.CreateTouchPoint = function (p) { - var to = this.TouchObject; - return new Input.TouchPoint(p, to.pressure); - }; - return PointerActiveTouch; - })(TouchInternal.ActiveTouchBase); - var PointerTouchInterop = (function (_super) { - __extends(PointerTouchInterop, _super); - function PointerTouchInterop() { - _super.apply(this, arguments); - } - PointerTouchInterop.prototype.Register = function (input, canvas) { - var _this = this; - _super.prototype.Register.call(this, input, canvas); - canvas.style.msTouchAction = "none"; - canvas.style.touchAction = "none"; - canvas.addEventListener("selectstart", function (e) { e.preventDefault(); }); - if (navigator.msPointerEnabled) { - canvas.addEventListener("MSPointerDown", function (e) { return _this._HandlePointerDown(window.event ? window.event : e); }); - canvas.addEventListener("MSPointerUp", function (e) { return _this._HandlePointerUp(window.event ? window.event : e); }); - canvas.addEventListener("MSPointerMove", function (e) { return _this._HandlePointerMove(window.event ? window.event : e); }); - canvas.addEventListener("MSPointerEnter", function (e) { return _this._HandlePointerEnter(window.event ? window.event : e); }); - canvas.addEventListener("MSPointerLeave", function (e) { return _this._HandlePointerLeave(window.event ? window.event : e); }); - } - else { - canvas.addEventListener("pointerdown", function (e) { return _this._HandlePointerDown(window.event ? window.event : e); }); - canvas.addEventListener("pointerup", function (e) { return _this._HandlePointerUp(window.event ? window.event : e); }); - canvas.addEventListener("pointermove", function (e) { return _this._HandlePointerMove(window.event ? window.event : e); }); - canvas.addEventListener("pointerenter", function (e) { return _this._HandlePointerEnter(window.event ? window.event : e); }); - canvas.addEventListener("pointerleave", function (e) { return _this._HandlePointerLeave(window.event ? window.event : e); }); - } - }; - PointerTouchInterop.prototype._HandlePointerDown = function (e) { - if (e.pointerType !== "touch") - return; - e.preventDefault(); - Fayde.Engine.Inspection.Kill(); - var cur = this.GetActiveTouch(e); - this.Input.SetIsUserInitiatedEvent(true); - this.HandleTouches(Input.TouchInputType.TouchDown, [cur]); - this.Input.SetIsUserInitiatedEvent(false); - }; - PointerTouchInterop.prototype._HandlePointerUp = function (e) { - if (e.pointerType !== "touch") - return; - var cur = this.GetActiveTouch(e); - this.Input.SetIsUserInitiatedEvent(true); - this.HandleTouches(Input.TouchInputType.TouchUp, [cur]); - this.Input.SetIsUserInitiatedEvent(false); - var index = this.ActiveTouches.indexOf(cur); - if (index > -1) - this.ActiveTouches.splice(index, 1); - }; - PointerTouchInterop.prototype._HandlePointerMove = function (e) { - if (e.pointerType !== "touch") - return; - var cur = this.GetActiveTouch(e); - this.HandleTouches(Input.TouchInputType.TouchMove, [cur]); - }; - PointerTouchInterop.prototype._HandlePointerEnter = function (e) { - if (e.pointerType !== "touch") - return; - var cur = this.GetActiveTouch(e); - this.HandleTouches(Input.TouchInputType.TouchEnter, [cur]); - }; - PointerTouchInterop.prototype._HandlePointerLeave = function (e) { - if (e.pointerType !== "touch") - return; - var cur = this.GetActiveTouch(e); - this.HandleTouches(Input.TouchInputType.TouchLeave, [cur]); - }; - PointerTouchInterop.prototype.GetActiveTouch = function (e) { - var existing = this.FindTouchInList(e.pointerId); - var cur = existing || new PointerActiveTouch(this); - if (!existing) - this.ActiveTouches.push(cur); - cur.Init(e, this.CoordinateOffset); - return cur; - }; - PointerTouchInterop.prototype.FindTouchInList = function (identifier) { - var at = this.ActiveTouches; - var len = at.length; - for (var i = 0; i < len; i++) { - if (at[i].Identifier === identifier) - return at[i]; - } - return null; - }; - return PointerTouchInterop; - })(TouchInternal.TouchInteropBase); - TouchInternal.PointerTouchInterop = PointerTouchInterop; - })(TouchInternal = Input.TouchInternal || (Input.TouchInternal = {})); - })(Input = Fayde.Input || (Fayde.Input = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Markup; - (function (Markup) { - var Internal; - (function (Internal) { - function createActiveObject(app, namescope, bindingSource) { - return { - obj: null, - xo: null, - dobj: null, - rd: null, - coll: null, - arr: null, - type: null, - set: function (obj) { - this.obj = obj; - this.type = obj ? obj.constructor : null; - this.rd = (obj instanceof Fayde.ResourceDictionary) ? obj : null; - if (this.rd) { - this.rd.App = app; - } - this.dobj = (obj instanceof Fayde.DependencyObject) ? obj : null; - var xo = this.xo = (obj instanceof Fayde.XamlObject) ? obj : null; - if (xo) { - xo.XamlNode.DocNameScope = namescope; - xo.TemplateOwner = bindingSource; - xo.App = app; - } - if (obj instanceof Fayde.Application) { - app = obj; - } - this.coll = nullstone.ICollection_.as(obj); - this.arr = (typeof obj === "array") ? obj : null; - }, - setName: function (name) { - if (this.xo) { - var xnode = this.xo.XamlNode; - namescope.RegisterName(name, xnode); - xnode.Name = name; - } - }, - getApp: function () { - return app; - } - }; - } - Internal.createActiveObject = createActiveObject; - })(Internal = Markup.Internal || (Markup.Internal = {})); - })(Markup = Fayde.Markup || (Fayde.Markup = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Markup; - (function (Markup) { - var Internal; - (function (Internal) { - function createObjectActor(pactor) { - var arr = []; - return { - start: function () { - var nstate = {}; - pactor.init(nstate); - arr.push(nstate); - }, - end: function () { - arr.pop(); - pactor.init(arr[arr.length - 1]); - } - }; - } - Internal.createObjectActor = createObjectActor; - })(Internal = Markup.Internal || (Markup.Internal = {})); - })(Markup = Fayde.Markup || (Fayde.Markup = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Markup; - (function (Markup) { - var Internal; - (function (Internal) { - function createPropertyActor(cur, extractType, extractDP) { - var state = { - visited: undefined, - coll: undefined, - arr: undefined, - propd: undefined, - prop: undefined, - eprop: undefined, - incontent: undefined, - content: { - count: 0, - coll: undefined, - arr: undefined, - rd: undefined, - propd: undefined, - app: undefined - } - }; - function verify(ownerType, name) { - var otype = ownerType || cur.type; - state.visited = state.visited || []; - var tvisited = state.visited[otype]; - if (!tvisited) { - tvisited = state.visited[otype] = []; - } - else { - if (tvisited.indexOf(name) > -1) - throw new XamlParseException("Cannot set [" + otype.name + "][" + name + "] more than once."); - } - tvisited.push(name); - } - function verifyContent() { - verify(cur.type, state.propd.Name); - } - function prepare(ownerType, name) { - if (state.coll || state.arr || state.propd || state.prop || state.eprop) - return true; - if (cur.dobj) { - var otype = ownerType || cur.type; - state.propd = DependencyProperty.GetDependencyProperty(otype, name, true); - if (!state.propd) { - var ev = cur.dobj[name]; - if (ev instanceof nullstone.Event) - state.eprop = name; - else - state.prop = name; - return true; - } - if (state.propd.IsImmutable) { - var co = cur.dobj.GetValue(state.propd); - state.coll = nullstone.ICollection_.as(co); - state.arr = (typeof co === "array") ? co : null; - } - else { - var tt = state.propd.GetTargetType(); - if (nullstone.ICollection_.is(tt.prototype)) - cur.dobj.SetValue(state.propd, state.coll = new tt()); - else if (tt === Array) - cur.dobj.SetValue(state.propd, state.arr = []); - } - return true; - } - else if (cur.rd && name === "MergedDictionaries") { - state.coll = cur.rd.MergedDictionaries; - return true; - } - else if (cur.obj) { - if (ownerType && cur.type !== ownerType) - throw new XamlParseException("Cannot set Attached Property on object that is not a DependencyObject."); - state.prop = name; - return true; - } - return false; - } - function prepareContent() { - var content = state.content = state.content || {}; - if (content.coll || content.arr || content.rd || content.propd) - return true; - var propd = content.propd = Markup.Content.Get(cur.type); - if (!propd) { - content.coll = nullstone.ICollection_.as(cur.obj); - content.arr = (typeof cur.obj === "array") ? cur.obj : null; - content.rd = cur.rd; - content.app = (cur.obj instanceof Fayde.Application) ? cur.obj : null; - if (content.coll || content.arr || content.rd || content.app) - return true; - throw new XamlParseException("Cannot set content for object of type '" + cur.type.name + "'."); - } - if (!propd.IsImmutable) - return true; - var co = cur.dobj.GetValue(propd); - if (!co) - return false; - content.coll = nullstone.ICollection_.as(co); - content.arr = (typeof co === "array") ? co : null; - return true; - } - function addContentObject(obj, key) { - if (cur.rd) { - key = key || getFallbackKey(obj); - if (!key) - throw new XamlParseException("Items in a ResourceDictionary must have a x:Key."); - cur.rd.Set(key, obj); - } - else if (cur.coll) { - cur.coll.Add(obj); - } - else if (cur.arr) { - cur.arr.push(obj); - } - else if (cur.dobj) { - if (state.content.coll) { - state.content.coll.Add(obj); - } - else if (state.content.arr) { - state.content.arr.push(obj); - } - else if (state.content.rd) { - key = key || getFallbackKey(obj); - if (!key) - throw new XamlParseException("Items in a ResourceDictionary must have a x:Key."); - state.content.rd.Set(obj, key); - } - else if (state.content.app) { - state.content.app.$$SetRootVisual(obj); - } - else { - if (state.content.count > 0) - throw new XamlParseException("Cannot set content more than once."); - cur.dobj.SetValue(state.content.propd, obj); - } - } - state.content.count++; - } - function addObject(obj, key) { - if (state.coll) { - state.coll.Add(obj); - } - else if (state.arr) { - state.arr.push(obj); - } - else if (state.propd) { - cur.dobj.SetValue(state.propd, convert(state.propd, obj)); - } - else if (state.prop) { - cur.obj[state.prop] = obj; - } - else if (state.eprop) { - subscribeEvent(state.eprop, obj); - } - } - function setAttrObject(ownerType, name, obj) { - if (cur.dobj) { - var otype = ownerType || cur.type; - var propd = DependencyProperty.GetDependencyProperty(otype, name, true); - if (!propd) { - var ev = cur.dobj[name]; - if (ev instanceof nullstone.Event) { - subscribeEvent(name, obj); - } - else { - cur.dobj[name] = obj; - } - return true; - } - if (propd.IsImmutable) { - return merge(convert(propd, obj), cur.dobj.GetValue(propd)); - } - else { - cur.dobj.SetValue(propd, convert(propd, obj)); - return true; - } - } - else if (cur.obj) { - var ev = cur.obj[name]; - if (ev instanceof nullstone.Event) { - subscribeEvent(name, obj); - } - else { - cur.obj[name] = obj; - } - return true; - } - return false; - } - function merge(src, target) { - var sarr; - var scoll = nullstone.ICollection_.as(src); - if (scoll) { - sarr = nullstone.IEnumerable_.toArray(scoll); - scoll.Clear(); - } - else if (typeof src === "array") { - sarr = src.slice(0); - src.length = 0; - } - else { - return false; - } - var sen = nullstone.IEnumerator_.fromArray(sarr); - var tcoll = nullstone.ICollection_.as(target); - var tarr = typeof target === "array" ? target : null; - if (tcoll) { - while (sen.moveNext()) { - tcoll.Add(sen.current); - } - } - else if (tarr) { - while (sen.moveNext()) { - tarr.push(sen.current); - } - } - else { - return false; - } - return true; - } - function getFallbackKey(obj) { - if (obj instanceof Fayde.XamlObject) { - var name = obj.XamlNode.Name; - if (name) - return name; - } - return getImplicitKey(obj); - } - function getImplicitKey(obj) { - if (obj instanceof Fayde.DataTemplate) { - var dt = obj.DataType; - if (!dt) - throw new XamlParseException("A DataTemplate in a ResourceDictionary must have x:Key or DataType."); - return dt; - } - else if (obj instanceof Fayde.Style) { - var tt = obj.TargetType; - if (!tt) - throw new XamlParseException("A Style in a ResourceDictionary must have x:Key or TargetType."); - return tt; - } - } - function convert(propd, obj) { - var tt = propd.GetTargetType(); - var val = obj; - if (typeof val === "string") { - if (tt === Fayde.IType_) - return extractType(val); - else if (propd === Fayde.Setter.PropertyProperty) - return extractDP(val); - } - else if (val instanceof Fayde.Expression) { - return val; - } - return nullstone.convertAnyToType(val, tt); - } - function subscribeEvent(name, ebe) { - if (!(ebe instanceof Fayde.EventBindingExpression)) - throw new XamlParseException("Cannot subscribe to event '" + name + "' without {EventBinding}."); - ebe.Init(name); - ebe.OnAttached(cur.dobj); - } - return { - init: function (nstate) { - state = nstate; - }, - start: function (ownerType, name) { - verify(ownerType, name); - prepare(ownerType, name); - }, - startContent: function () { - if (prepareContent()) { - if (state.content.count === 0) - verifyContent(); - state.incontent = true; - } - }, - end: function () { - state.incontent = false; - state.coll = state.arr = state.propd = state.prop = state.eprop = undefined; - }, - addObject: function (obj, key) { - if (state.incontent) { - addContentObject(obj, key); - state.content.count++; - } - else { - addObject(obj, key); - } - }, - setContentText: function (text) { - if (!cur.dobj) - return; - var tcprop = Markup.TextContent.Get(cur.type); - if (tcprop) { - verify(cur.type, tcprop.Name); - cur.dobj.SetValue(tcprop, text); - return; - } - var cprop = Markup.Content.Get(cur.type); - if (cprop) { - verify(cur.type, cprop.Name); - cur.dobj.SetValue(cprop, convert(cprop, text)); - } - }, - setObject: function (ownerType, name, obj) { - verify(ownerType, name); - setAttrObject(ownerType, name, obj); - }, - isNewResources: function () { - if (state.coll instanceof Fayde.ResourceDictionaryCollection) - return true; - return !cur.rd; - } - }; - } - Internal.createPropertyActor = createPropertyActor; - })(Internal = Markup.Internal || (Markup.Internal = {})); - })(Markup = Fayde.Markup || (Fayde.Markup = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Markup; - (function (Markup) { - var Internal; - (function (Internal) { - function createResourcesActor(cur, resources) { - var stack = []; - return { - start: function () { - if (cur.rd) - stack.push(cur.rd); - }, - end: function () { - if (cur.rd) - stack.pop(); - }, - get: function () { - var res = (resources) ? resources.concat(stack) : stack.slice(0); - if (cur.dobj instanceof Fayde.FrameworkElement) { - var crd = cur.dobj.ReadLocalValue(Fayde.FrameworkElement.ResourcesProperty); - if (crd !== DependencyProperty.UnsetValue) - res.push(crd); - } - return res; - } - }; - } - Internal.createResourcesActor = createResourcesActor; - })(Internal = Markup.Internal || (Markup.Internal = {})); - })(Markup = Fayde.Markup || (Fayde.Markup = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Media; - (function (Media) { - var Animation; - (function (Animation) { - (function (EasingMode) { - EasingMode[EasingMode["EaseOut"] = 0] = "EaseOut"; - EasingMode[EasingMode["EaseIn"] = 1] = "EaseIn"; - EasingMode[EasingMode["EaseInOut"] = 2] = "EaseInOut"; - })(Animation.EasingMode || (Animation.EasingMode = {})); - var EasingMode = Animation.EasingMode; - Fayde.CoreLibrary.addEnum(EasingMode, "EasingMode"); - (function (FillBehavior) { - FillBehavior[FillBehavior["HoldEnd"] = 0] = "HoldEnd"; - FillBehavior[FillBehavior["Stop"] = 1] = "Stop"; - })(Animation.FillBehavior || (Animation.FillBehavior = {})); - var FillBehavior = Animation.FillBehavior; - Fayde.CoreLibrary.addEnum(FillBehavior, "FillBehavior"); - })(Animation = Media.Animation || (Media.Animation = {})); - })(Media = Fayde.Media || (Fayde.Media = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Media; - (function (Media) { - var Animation; - (function (Animation) { - var RepeatBehavior = (function () { - function RepeatBehavior() { - this._Duration = null; - this._Count = null; - this.IsForever = false; - } - RepeatBehavior.FromRepeatDuration = function (duration) { - var rb = new RepeatBehavior(); - rb._Duration = duration; - return rb; - }; - RepeatBehavior.FromIterationCount = function (count) { - var rb = new RepeatBehavior(); - rb._Count = count; - return rb; - }; - Object.defineProperty(RepeatBehavior.prototype, "HasCount", { - get: function () { return this._Count != null; }, - enumerable: true, - configurable: true - }); - Object.defineProperty(RepeatBehavior.prototype, "Count", { - get: function () { return this._Count; }, - enumerable: true, - configurable: true - }); - Object.defineProperty(RepeatBehavior.prototype, "HasDuration", { - get: function () { return this._Duration != null; }, - enumerable: true, - configurable: true - }); - Object.defineProperty(RepeatBehavior.prototype, "Duration", { - get: function () { return this._Duration; }, - enumerable: true, - configurable: true - }); - RepeatBehavior.prototype.Clone = function () { - var rb = new RepeatBehavior(); - rb._Duration = this._Duration; - rb._Count = this._Count; - rb.IsForever = this.IsForever; - return rb; - }; - RepeatBehavior.Forever = (function () { var rb = new RepeatBehavior(); rb.IsForever = true; return rb; })(); - return RepeatBehavior; - })(); - Animation.RepeatBehavior = RepeatBehavior; - Fayde.CoreLibrary.add(RepeatBehavior); - nullstone.registerTypeConverter(RepeatBehavior, function (val) { - if (!val || val.toLowerCase() === "forever") - return RepeatBehavior.Forever; - if (val[val.length - 1] === "x") { - var d = parseInt(val.substr(0, val.length - 1)); - return RepeatBehavior.FromIterationCount(d); - } - var duration = new Duration(nullstone.convertAnyToType(val, TimeSpan)); - return RepeatBehavior.FromRepeatDuration(duration); - }); - })(Animation = Media.Animation || (Media.Animation = {})); - })(Media = Fayde.Media || (Fayde.Media = {})); -})(Fayde || (Fayde = {})); -/// -/// -/// -/// -var Fayde; -(function (Fayde) { - var Media; - (function (Media) { - var Animation; - (function (Animation) { - var Timeline = (function (_super) { - __extends(Timeline, _super); - function Timeline() { - _super.apply(this, arguments); - this.Completed = new nullstone.Event(); - this._IsPaused = false; - this._BeginPauseTime = 0; - this._TicksPaused = 0; - this._IsFirstUpdate = true; - this._HasBegun = false; - this._BeginTicks = undefined; - this._InitialStep = undefined; - this._HasCompleted = false; - this.ManualTarget = undefined; - } - Object.defineProperty(Timeline.prototype, "HasManualTarget", { - get: function () { - return this.ManualTarget !== undefined; - }, - enumerable: true, - configurable: true - }); - Timeline.prototype.Reset = function () { - this._TicksPaused = 0; - this._IsFirstUpdate = true; - this._BeginTicks = undefined; - this._HasBegun = false; - this._HasCompleted = false; - }; - Timeline.prototype.Pause = function () { - if (this._IsPaused) - return; - this._BeginPauseTime = new Date().getTime(); - this._IsPaused = true; - }; - Timeline.prototype.Resume = function () { - if (!this._IsPaused) - return; - this._IsPaused = false; - var nowTime = new Date().getTime(); - this._TicksPaused = nowTime - this._BeginPauseTime; - }; - Timeline.prototype.Stop = function () { - this.Reset(); - }; - Timeline.prototype.OnCompleted = function () { - this._HasCompleted = true; - var fill = this.FillBehavior; - switch (fill) { - case Animation.FillBehavior.HoldEnd: - this.HoldEnd(); - break; - case Animation.FillBehavior.Stop: - this.Stop(); - break; - } - this.Completed.raise(this, null); - }; - Timeline.prototype.Update = function (nowTime) { - var clockData = this.CreateClockData(nowTime); - if (!clockData || this._IsPaused || this._HasCompleted) - return; - this.UpdateInternal(clockData); - if (clockData.Completed) - this.OnCompleted(); - }; - Timeline.prototype.UpdateInternal = function (clockData) { - }; - Timeline.prototype.HoldEnd = function () { - }; - Timeline.prototype.CreateClockData = function (nowTime) { - if (this._IsFirstUpdate) { - this._InitialStep = nowTime; - this._HasBegun = false; - this._IsFirstUpdate = false; - } - if (!this._HasBegun) { - if (!this.IsAfterBeginTime(nowTime)) - return null; - this._BeginTicks = nowTime; - this._HasBegun = true; - } - var elapsedTicks = nowTime - this._BeginTicks - this._TicksPaused; - var currentTimeTicks = elapsedTicks; - var progress = 0.0; - var completed = false; - var duration = this.GetNaturalDuration(); - if (duration.IsAutomatic) { - progress = 1.0; - completed = true; - } - else if (duration.HasTimeSpan) { - var d = duration.TimeSpan.Ticks; - if (d === 0) { - progress = 1.0; - } - else if (this.AutoReverse === true) { - d = d / 2; - progress = 1 - (Math.abs((elapsedTicks % (d + d)) - d) / d); - } - else { - progress = (elapsedTicks / d) - Math.floor(elapsedTicks / d); - } - var repeat = this.RepeatBehavior || Timeline.DEFAULT_REPEAT_BEHAVIOR; - if (repeat.IsForever) { - } - else if (repeat.HasCount) { - if ((d === 0) || (Math.floor(elapsedTicks / d) >= repeat.Count)) { - progress = 1.0; - completed = true; - } - } - else if (repeat.HasDuration) { - if (elapsedTicks >= repeat.Duration.TimeSpan.Ticks) { - progress = 1.0; - completed = true; - } - } - if (d !== 0) - currentTimeTicks = progress * d; - } - return { - CurrentTime: new TimeSpan(currentTimeTicks), - Progress: progress, - Completed: completed - }; - }; - Timeline.prototype.IsAfterBeginTime = function (nowTime) { - var beginTime = this.BeginTime; - if (beginTime == null) - return true; - var beginTicks = beginTime.Ticks; - if (beginTicks <= 0) - return true; - var elapsedTicks = nowTime - this._InitialStep; - if (elapsedTicks < beginTicks) - return false; - return true; - }; - Timeline.prototype.GetNaturalDuration = function () { - var d = this.Duration; - if (!d || d.IsAutomatic) - return this.GetNaturalDurationCore(); - return d; - }; - Timeline.prototype.GetNaturalDurationCore = function () { - return Duration.Automatic; - }; - Timeline.prototype.GenerateFrom = function () { - return undefined; - }; - Timeline.prototype.GenerateTo = function (isEntering) { - return undefined; - }; - Timeline.DEFAULT_REPEAT_BEHAVIOR = Animation.RepeatBehavior.FromIterationCount(1); - Timeline.AutoReverseProperty = DependencyProperty.Register("AutoReverse", function () { return Boolean; }, Timeline, false); - Timeline.BeginTimeProperty = DependencyProperty.Register("BeginTime", function () { return TimeSpan; }, Timeline); - Timeline.DurationProperty = DependencyProperty.Register("Duration", function () { return Duration; }, Timeline); - Timeline.RepeatBehaviorProperty = DependencyProperty.Register("RepeatBehavior", function () { return Animation.RepeatBehavior; }, Timeline); - Timeline.SpeedRatioProperty = DependencyProperty.Register("SpeedRatio", function () { return Number; }, Timeline, 1.0); - Timeline.FillBehaviorProperty = DependencyProperty.Register("FillBehavior", function () { return new Fayde.Enum(Animation.FillBehavior); }, Timeline, Animation.FillBehavior.HoldEnd); - return Timeline; - })(Fayde.DependencyObject); - Animation.Timeline = Timeline; - Fayde.CoreLibrary.add(Timeline); - var TimelineCollection = (function (_super) { - __extends(TimelineCollection, _super); - function TimelineCollection() { - _super.apply(this, arguments); - } - return TimelineCollection; - })(Fayde.XamlObjectCollection); - Animation.TimelineCollection = TimelineCollection; - Fayde.CoreLibrary.add(TimelineCollection); - })(Animation = Media.Animation || (Media.Animation = {})); - })(Media = Fayde.Media || (Fayde.Media = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Media; - (function (Media) { - var Animation; - (function (Animation) { - var AnimationBase = (function (_super) { - __extends(AnimationBase, _super); - function AnimationBase() { - _super.call(this); - this._IsHolding = false; - } - AnimationBase.prototype.Resolve = function (target, propd) { return true; }; - AnimationBase.prototype.HoldEnd = function () { this._IsHolding = true; }; - AnimationBase.prototype.Stop = function () { - var animStorage = this._AnimStorage; - if (!animStorage) - return; - if (Animation.AnimationStore.Detach(animStorage) || animStorage.IsDisabled) - return; - Animation.AnimationStore.ApplyStop(animStorage); - }; - AnimationBase.prototype.UpdateInternal = function (clockData) { - if (this._IsHolding) - return; - var animStorage = this._AnimStorage; - if (!animStorage || animStorage.IsDisabled) - return; - var oldValue = animStorage.CurrentValue; - animStorage.CurrentValue = this.GetCurrentValue(animStorage.BaseValue, animStorage.StopValue !== undefined ? animStorage.StopValue : animStorage.BaseValue, clockData); - if (Animation.Log) - console.log(getLogMessage("AnimationBase.UpdateInternal", this, oldValue, animStorage.CurrentValue)); - if (oldValue === animStorage.CurrentValue || animStorage.CurrentValue === undefined) - return; - Animation.AnimationStore.ApplyCurrent(animStorage); - }; - AnimationBase.prototype.GetNaturalDurationCore = function () { return Duration.Automatic; }; - AnimationBase.prototype.GetCurrentValue = function (defaultOriginalValue, defaultDestinationValue, clockData) { return undefined; }; - AnimationBase.prototype._Hookup = function (promotedValues, error) { - this._IsHolding = false; - this.Reset(); - var resolution = Animation.Storyboard.ResolveTarget(this); - if (!resolution.Target) { - console.warn("Could not resolve storyboard target.", Animation.Storyboard.GetTargetName(this)); - } - var refobj = { Value: resolution.Target }; - var targetProperty = resolution.Property.TryResolveDependencyProperty(refobj, promotedValues); - resolution.Target = refobj.Value; - if (!targetProperty) { - error.Number = BError.XamlParse; - var name = Animation.Storyboard.GetTargetName(this); - error.Message = "Could not resolve property for storyboard. (" + name + ")->[" + resolution.Property.Path.toString() + "]"; - return false; - } - if (!this.Resolve(resolution.Target, targetProperty)) { - error.Number = BError.InvalidOperation; - error.Message = "Storyboard value could not be converted to the correct type"; - return false; - } - this._AnimStorage = Animation.AnimationStore.Create(resolution.Target, targetProperty); - this._AnimStorage.Animation = this; - Animation.AnimationStore.Attach(this._AnimStorage); - return true; - }; - return AnimationBase; - })(Animation.Timeline); - Animation.AnimationBase = AnimationBase; - Fayde.CoreLibrary.add(AnimationBase); - function getLogMessage(action, anim, oldValue, newValue) { - var msg = "ANIMATION:" + action + ":" + anim._ID + "[" + anim.constructor.name + "]"; - msg += ";" + (oldValue === undefined ? "(undefined)" : (oldValue === null ? "(null)" : oldValue.toString())); - msg += "->" + (newValue === undefined ? "(undefined)" : (newValue === null ? "(null)" : newValue.toString())); - return msg; - } - })(Animation = Media.Animation || (Media.Animation = {})); - })(Media = Fayde.Media || (Fayde.Media = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Media; - (function (Media) { - var Animation; - (function (Animation) { - var AnimationStore = (function () { - function AnimationStore() { - } - AnimationStore.Create = function (target, propd) { - var baseValue = target.GetValue(propd); - if (baseValue === undefined) { - var targetType = propd.GetTargetType(); - if (targetType === Number) - baseValue = 0; - else if (targetType === String) - baseValue = ""; - else - baseValue = new targetType(); - } - return { - ID: createId(), - Animation: undefined, - PropStorage: Fayde.Providers.GetStorage(target, propd), - IsDisabled: false, - BaseValue: baseValue, - CurrentValue: undefined, - StopValue: undefined, - }; - }; - AnimationStore.Attach = function (animStorage) { - var storage = animStorage.PropStorage; - var list = storage.Animations; - if (!list) - storage.Animations = list = []; - var prevStorage = list[list.length - 1]; - list.push(animStorage); - if (prevStorage) { - animStorage.StopValue = prevStorage.StopValue; - prevStorage.IsDisabled = true; - } - else { - animStorage.StopValue = storage.Local; - } - }; - AnimationStore.Detach = function (animStorage) { - var storage = animStorage.PropStorage; - var list = storage.Animations; - if (!list) - return false; - var len = list.length; - if (len < 1) - return false; - var i = list.lastIndexOf(animStorage); - if (i === (len - 1)) { - list.pop(); - if (len > 1) { - var last = list[len - 2]; - if (last.IsDisabled) { - last.IsDisabled = false; - AnimationStore.ApplyCurrent(last); - return true; - } - } - } - else { - list.splice(i, 1); - list[i].StopValue = animStorage.StopValue; - } - return false; - }; - AnimationStore.ApplyCurrent = function (animStorage) { - var val = animStorage.CurrentValue; - if (val === undefined) - return; - if (Animation.LogApply) - console.log(getLogMessage("ApplyCurrent", animStorage, val)); - var storage = animStorage.PropStorage; - storage.Property.Store.SetLocalValue(storage, animStorage.CurrentValue); - }; - AnimationStore.ApplyStop = function (animStorage) { - var val = animStorage.StopValue; - if (Animation.LogApply) - console.log(getLogMessage("ApplyStop", animStorage, val)); - var storage = animStorage.PropStorage; - storage.Property.Store.SetLocalValue(storage, val); - }; - return AnimationStore; - })(); - Animation.AnimationStore = AnimationStore; - function getLogMessage(action, animStorage, val) { - var anim = animStorage.Animation; - var name = Animation.Storyboard.GetTargetName(animStorage.Animation); - if (anim.HasManualTarget) - name = anim.ManualTarget.Name; - var prop = Animation.Storyboard.GetTargetProperty(anim); - var msg = "ANIMATION:" + action + ":" + animStorage.ID + "[" + name + "](" + prop.Path + ")->"; - msg += val === undefined ? "(undefined)" : (val === null ? "(null)" : val.toString()); - return msg; - } - var lastId = 0; - function createId() { - return lastId++; - } - })(Animation = Media.Animation || (Media.Animation = {})); - })(Media = Fayde.Media || (Fayde.Media = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Media; - (function (Media) { - var Animation; - (function (Animation) { - var AnimationUsingKeyFrames = (function (_super) { - __extends(AnimationUsingKeyFrames, _super); - function AnimationUsingKeyFrames() { - _super.call(this); - var coll = AnimationUsingKeyFrames.KeyFramesProperty.Initialize(this); - coll.AttachTo(this); - } - AnimationUsingKeyFrames.prototype.Resolve = function (target, propd) { - var keyFrames = this.KeyFrames; - var sortedList = Animation.KeyFrameCollection.ResolveKeyFrames(this, keyFrames); - var count = sortedList.length; - for (var j = 0; j < count; j++) { - if (!sortedList[j].KeyTime.IsValid) - return false; - } - return true; - }; - AnimationUsingKeyFrames.prototype.GetCurrentValue = function (defaultOriginValue, defaultDestinationValue, clockData) { - var keyFrames = this.KeyFrames; - var prevFrameRef = { Value: null }; - var currentKeyFrame = keyFrames.GetKeyFrameForTime(clockData.CurrentTime, prevFrameRef); - var prevFrame = prevFrameRef.Value; - if (!currentKeyFrame) - return null; - var baseValue; - var keyStartTime; - var keyEndTime = currentKeyFrame._ResolvedKeyTime; - if (!prevFrame) { - baseValue = defaultOriginValue; - keyStartTime = new TimeSpan(); - } - else { - if (prevFrame instanceof Animation.ObjectKeyFrame) { - baseValue = prevFrame.ConvertedValue; - } - else { - baseValue = prevFrame.Value; - } - keyStartTime = prevFrame._ResolvedKeyTime; - } - var progress; - if (clockData.CurrentTime.CompareTo(keyEndTime) >= 0) { - progress = 1.0; - } - else { - var keyDuration = keyEndTime.Ticks - keyStartTime.Ticks; - if (keyDuration <= 0) - progress = 1.0; - else - progress = (clockData.CurrentTime.Ticks - keyStartTime.Ticks) / keyDuration; - } - return currentKeyFrame.InterpolateValue(baseValue, progress); - }; - AnimationUsingKeyFrames.prototype.GetNaturalDurationCore = function () { - var keyFrames = this.KeyFrames; - var sortedList = Animation.KeyFrameCollection.ResolveKeyFrames(this, keyFrames); - var len = sortedList.length; - var ts; - if (len > 0) - ts = sortedList[len - 1]._ResolvedKeyTime; - else - ts = new TimeSpan(); - return new Duration(ts); - }; - AnimationUsingKeyFrames.prototype.AddKeyFrame = function (kf) { this.KeyFrames.Add(kf); }; - AnimationUsingKeyFrames.prototype.RemoveKeyFrame = function (kf) { this.KeyFrames.Remove(kf); }; - AnimationUsingKeyFrames.KeyFramesProperty = DependencyProperty.RegisterImmutable("KeyFrames", function () { return Animation.KeyFrameCollection; }, AnimationUsingKeyFrames); - return AnimationUsingKeyFrames; - })(Animation.AnimationBase); - Animation.AnimationUsingKeyFrames = AnimationUsingKeyFrames; - Fayde.CoreLibrary.add(AnimationUsingKeyFrames); - Fayde.Markup.Content(AnimationUsingKeyFrames, AnimationUsingKeyFrames.KeyFramesProperty); - })(Animation = Media.Animation || (Media.Animation = {})); - })(Media = Fayde.Media || (Fayde.Media = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Media; - (function (Media) { - var Animation; - (function (Animation) { - var BeginStoryboard = (function (_super) { - __extends(BeginStoryboard, _super); - function BeginStoryboard() { - _super.apply(this, arguments); - } - BeginStoryboard.prototype.Fire = function () { - var sb = this.Storyboard; - if (sb) - sb.Begin(); - }; - BeginStoryboard.StoryboardProperty = DependencyProperty.RegisterCore("Storyboard", function () { return Animation.Storyboard; }, BeginStoryboard); - return BeginStoryboard; - })(Fayde.TriggerAction); - Animation.BeginStoryboard = BeginStoryboard; - Fayde.CoreLibrary.add(BeginStoryboard); - Fayde.Markup.Content(BeginStoryboard, BeginStoryboard.StoryboardProperty); - })(Animation = Media.Animation || (Media.Animation = {})); - })(Media = Fayde.Media || (Fayde.Media = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Media; - (function (Media) { - var Animation; - (function (Animation) { - var ColorAnimation = (function (_super) { - __extends(ColorAnimation, _super); - function ColorAnimation() { - _super.call(this); - this._FromCached = null; - this._ToCached = null; - this._ByCached = null; - this._EasingCached = undefined; - } - ColorAnimation.prototype.GetCurrentValue = function (defaultOriginalValue, defaultDestinationValue, clockData) { - var start = new Color(); - if (this._FromCached) - start = this._FromCached; - else if (defaultOriginalValue instanceof Color) - start = defaultOriginalValue; - var end = start; - if (this._ToCached) - end = this._ToCached; - else if (this._ByCached) - end = start.Add(this._ByCached); - else if (defaultDestinationValue instanceof Color) - end = defaultDestinationValue; - var easingFunc = this._EasingCached; - if (easingFunc) - clockData.Progress = easingFunc.Ease(clockData.Progress); - return Color.LERP(start, end, clockData.Progress); - }; - ColorAnimation.prototype._FromChanged = function (args) { - this._FromCached = args.NewValue; - }; - ColorAnimation.prototype._ToChanged = function (args) { - this._ToCached = args.NewValue; - }; - ColorAnimation.prototype._ByChanged = function (args) { - this._ByCached = args.NewValue; - }; - ColorAnimation.prototype._EasingChanged = function (args) { - this._EasingCached = args.NewValue; - }; - ColorAnimation.prototype.GenerateFrom = function () { - return new ColorAnimation(); - }; - ColorAnimation.prototype.GenerateTo = function (isEntering) { - var val = this.From != null ? this.From : this.To; - if (val == null) - return null; - var ca = new ColorAnimation(); - ca.To = val; - return ca; - }; - ColorAnimation.ByProperty = DependencyProperty.Register("By", function () { return Color; }, ColorAnimation, null, function (d, args) { return d._ByChanged(args); }); - ColorAnimation.EasingFunctionProperty = DependencyProperty.Register("EasingFunction", function () { return Animation.EasingFunctionBase; }, ColorAnimation, undefined, function (d, args) { return d._EasingChanged(args); }); - ColorAnimation.FromProperty = DependencyProperty.Register("From", function () { return Color; }, ColorAnimation, null, function (d, args) { return d._FromChanged(args); }); - ColorAnimation.ToProperty = DependencyProperty.Register("To", function () { return Color; }, ColorAnimation, null, function (d, args) { return d._ToChanged(args); }); - return ColorAnimation; - })(Animation.AnimationBase); - Animation.ColorAnimation = ColorAnimation; - Fayde.CoreLibrary.add(ColorAnimation); - })(Animation = Media.Animation || (Media.Animation = {})); - })(Media = Fayde.Media || (Fayde.Media = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Media; - (function (Media) { - var Animation; - (function (Animation) { - var ColorAnimationUsingKeyFrames = (function (_super) { - __extends(ColorAnimationUsingKeyFrames, _super); - function ColorAnimationUsingKeyFrames() { - _super.apply(this, arguments); - } - ColorAnimationUsingKeyFrames.prototype.GenerateFrom = function () { - return new Animation.ColorAnimation(); - }; - ColorAnimationUsingKeyFrames.prototype.GenerateTo = function (isEntering) { - var kfs = this.KeyFrames; - if (kfs.Count === 0) - return null; - var val = (kfs.GetValueAt(isEntering ? 0 : kfs.Count - 1)).Value; - if (val == null) - return null; - var ca = new Animation.ColorAnimation(); - ca.To = val; - return ca; - }; - return ColorAnimationUsingKeyFrames; - })(Animation.AnimationUsingKeyFrames); - Animation.ColorAnimationUsingKeyFrames = ColorAnimationUsingKeyFrames; - Fayde.CoreLibrary.add(ColorAnimationUsingKeyFrames); - })(Animation = Media.Animation || (Media.Animation = {})); - })(Media = Fayde.Media || (Fayde.Media = {})); -})(Fayde || (Fayde = {})); -/// -/// -var Fayde; -(function (Fayde) { - var Media; - (function (Media) { - var Animation; - (function (Animation) { - var KeyFrame = (function (_super) { - __extends(KeyFrame, _super); - function KeyFrame() { - _super.apply(this, arguments); - this._ResolvedKeyTime = null; - this._Resolved = false; - } - KeyFrame.prototype.CoerceKeyTime = function (dobj, propd, value, coerced, error) { - if (!value) - coerced.Value = this.KeyTime; - else - coerced.Value = value; - return true; - }; - KeyFrame.prototype.InterpolateValue = function (baseValue, keyFrameProgress) { - return undefined; - }; - KeyFrame.prototype.CompareToTimeSpan = function (otherTs) { - return this._ResolvedKeyTime.CompareTo(otherTs); - }; - KeyFrame.prototype.Listen = function (listener) { this._Listener = listener; }; - KeyFrame.prototype.Unlisten = function (listener) { if (this._Listener === listener) - this._Listener = null; }; - KeyFrame.prototype.InvalidateKeyFrame = function () { - var listener = this._Listener; - if (listener) - listener.KeyFrameChanged(this); - }; - KeyFrame.Comparer = function (kf1, kf2) { - var ts1 = kf1._ResolvedKeyTime; - var ts2 = kf2._ResolvedKeyTime; - return ts1.CompareTo(ts2); - }; - KeyFrame.ResolveKeyFrames = function (animation, arr) { - var totalInterpolationTime; - var hasTimeSpanKeyFrame = false; - var highestKeyTimeTimeSpan = new TimeSpan(); - var keyFrame; - var len = arr.length; - var i; - for (i = 0; i < len; i++) { - keyFrame = arr[i]; - keyFrame._ResolvedKeyTime = new TimeSpan(); - keyFrame._Resolved = false; - } - var keyTime; - for (i = 0; i < len; i++) { - keyFrame = arr[i]; - keyTime = keyFrame.KeyTime; - if (keyTime.HasTimeSpan) { - hasTimeSpanKeyFrame = true; - var ts = keyTime.TimeSpan; - if (ts.CompareTo(highestKeyTimeTimeSpan) > 0) - highestKeyTimeTimeSpan = ts; - keyFrame._ResolvedKeyTime = ts; - keyFrame._Resolved = true; - } - } - var dur = animation.Duration; - if (dur && dur.HasTimeSpan) { - totalInterpolationTime = dur.TimeSpan; - } - else if (hasTimeSpanKeyFrame) { - totalInterpolationTime = highestKeyTimeTimeSpan; - } - else { - totalInterpolationTime = new TimeSpan(TimeSpan._TicksPerSecond); - } - for (i = 0; i < len; i++) { - keyFrame = arr[i]; - keyTime = keyFrame.KeyTime; - if (keyTime.HasPercent) { - keyFrame._ResolvedKeyTime = totalInterpolationTime.Multiply(keyTime.Percent); - keyFrame._Resolved = true; - } - } - if (len > 0) { - keyFrame = arr[len - 1]; - keyTime = keyFrame.KeyTime; - if (keyTime.IsPaced || keyTime.IsUniform) { - keyFrame._ResolvedKeyTime = totalInterpolationTime; - keyFrame._Resolved = true; - } - } - if (len > 0) { - keyFrame = arr[len - 1]; - keyTime = keyFrame.KeyTime; - if (!keyFrame._Resolved && keyTime.IsPaced) { - keyFrame._ResolvedKeyTime = new TimeSpan(); - keyFrame._Resolved = true; - } - } - return arr; - }; - KeyFrame.KeyTimeProperty = DependencyProperty.Register("KeyTime", function () { return KeyTime; }, KeyFrame, undefined, function (d, args) { return d.InvalidateKeyFrame(); }); - return KeyFrame; - })(Fayde.DependencyObject); - Animation.KeyFrame = KeyFrame; - Fayde.CoreLibrary.add(KeyFrame); - var KeyFrameCollection = (function (_super) { - __extends(KeyFrameCollection, _super); - function KeyFrameCollection() { - _super.apply(this, arguments); - this._Resolved = false; - this._SortedList = []; - } - KeyFrameCollection.prototype.GetKeyFrameForTime = function (t, prevFrameRef) { - var currentKeyFrame = null; - var previousKeyFrame = null; - var i; - var sortedList = this._SortedList; - if (sortedList.length == 0) { - prevFrameRef.Value = null; - return null; - } - var keyFrame; - var valuePropd; - for (i = 0; i < sortedList.length; i++) { - keyFrame = sortedList[i]; - if (keyFrame.CompareToTimeSpan(t) >= 0 || (i + 1) >= sortedList.length) - break; - } - for (; i >= 0; i--) { - keyFrame = sortedList[i]; - valuePropd = DependencyProperty.GetDependencyProperty(keyFrame.constructor, "Value"); - if (keyFrame.GetValue(valuePropd) !== undefined) { - currentKeyFrame = keyFrame; - break; - } - } - for (i--; i >= 0; i--) { - keyFrame = sortedList[i]; - valuePropd = DependencyProperty.GetDependencyProperty(keyFrame.constructor, "Value"); - if (keyFrame.GetValue(valuePropd) !== undefined) { - previousKeyFrame = keyFrame; - break; - } - } - prevFrameRef.Value = previousKeyFrame; - return currentKeyFrame; - }; - KeyFrameCollection.prototype.Clear = function () { - this._Resolved = false; - this._SortedList = []; - return _super.prototype.Clear.call(this); - }; - KeyFrameCollection.prototype.AddingToCollection = function (value, error) { - if (!_super.prototype.AddingToCollection.call(this, value, error)) - return false; - this._Resolved = false; - value.Listen(this); - return true; - }; - KeyFrameCollection.prototype.RemovedFromCollection = function (value, isValueSafe) { - _super.prototype.RemovedFromCollection.call(this, value, isValueSafe); - this._Resolved = false; - value.Unlisten(this); - }; - KeyFrameCollection.prototype.KeyFrameChanged = function (source) { - this._Resolved = false; - }; - KeyFrameCollection.ResolveKeyFrames = function (animation, coll) { - if (coll._Resolved) - return coll._SortedList; - coll._SortedList = KeyFrame.ResolveKeyFrames(animation, coll._ht).slice(0); - coll._SortedList.sort(KeyFrame.Comparer); - coll._Resolved = true; - return coll._SortedList; - }; - return KeyFrameCollection; - })(Fayde.XamlObjectCollection); - Animation.KeyFrameCollection = KeyFrameCollection; - Fayde.CoreLibrary.add(KeyFrameCollection); - })(Animation = Media.Animation || (Media.Animation = {})); - })(Media = Fayde.Media || (Fayde.Media = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Media; - (function (Media) { - var Animation; - (function (Animation) { - var ColorKeyFrame = (function (_super) { - __extends(ColorKeyFrame, _super); - function ColorKeyFrame() { - _super.apply(this, arguments); - } - ColorKeyFrame.ValueProperty = DependencyProperty.Register("Value", function () { return Color; }, ColorKeyFrame); - return ColorKeyFrame; - })(Animation.KeyFrame); - Animation.ColorKeyFrame = ColorKeyFrame; - Fayde.CoreLibrary.add(ColorKeyFrame); - var DiscreteColorKeyFrame = (function (_super) { - __extends(DiscreteColorKeyFrame, _super); - function DiscreteColorKeyFrame() { - _super.apply(this, arguments); - } - DiscreteColorKeyFrame.prototype.InterpolateValue = function (baseValue, keyFrameProgress) { - if (keyFrameProgress >= 1.0) - return this.Value; - return baseValue; - }; - return DiscreteColorKeyFrame; - })(ColorKeyFrame); - Animation.DiscreteColorKeyFrame = DiscreteColorKeyFrame; - Fayde.CoreLibrary.add(DiscreteColorKeyFrame); - var EasingColorKeyFrame = (function (_super) { - __extends(EasingColorKeyFrame, _super); - function EasingColorKeyFrame() { - _super.apply(this, arguments); - } - EasingColorKeyFrame.prototype.InterpolateValue = function (baseValue, keyFrameProgress) { - if (keyFrameProgress >= 1.0) - return this.Value; - var start = baseValue; - var end = this.Value; - var easingFunction = this.EasingFunction; - if (easingFunction) - keyFrameProgress = easingFunction.Ease(keyFrameProgress); - return Color.LERP(start, end, keyFrameProgress); - }; - EasingColorKeyFrame.EasingFunctionProperty = DependencyProperty.Register("EasingFunction", function () { return Animation.EasingFunctionBase; }, EasingColorKeyFrame); - return EasingColorKeyFrame; - })(ColorKeyFrame); - Animation.EasingColorKeyFrame = EasingColorKeyFrame; - Fayde.CoreLibrary.add(EasingColorKeyFrame); - var LinearColorKeyFrame = (function (_super) { - __extends(LinearColorKeyFrame, _super); - function LinearColorKeyFrame() { - _super.apply(this, arguments); - } - LinearColorKeyFrame.prototype.InterpolateValue = function (baseValue, keyFrameProgress) { - return Color.LERP(baseValue, this.Value, keyFrameProgress); - }; - return LinearColorKeyFrame; - })(ColorKeyFrame); - Animation.LinearColorKeyFrame = LinearColorKeyFrame; - Fayde.CoreLibrary.add(LinearColorKeyFrame); - var SplineColorKeyFrame = (function (_super) { - __extends(SplineColorKeyFrame, _super); - function SplineColorKeyFrame() { - _super.apply(this, arguments); - } - SplineColorKeyFrame.prototype.InterpolateValue = function (baseValue, keyFrameProgress) { - if (keyFrameProgress >= 1.0) - return this.Value; - var start = baseValue; - var end = this.Value; - var splineProgress = keyFrameProgress; - var keySpline = this.KeySpline; - if (keySpline) - splineProgress = keySpline.GetSplineProgress(keyFrameProgress); - return Color.LERP(start, end, splineProgress); - }; - SplineColorKeyFrame.KeySplineProperty = DependencyProperty.Register("KeySpline", function () { return Animation.KeySpline; }, SplineColorKeyFrame); - return SplineColorKeyFrame; - })(ColorKeyFrame); - Animation.SplineColorKeyFrame = SplineColorKeyFrame; - Fayde.CoreLibrary.add(SplineColorKeyFrame); - })(Animation = Media.Animation || (Media.Animation = {})); - })(Media = Fayde.Media || (Fayde.Media = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Media; - (function (Media) { - var Animation; - (function (Animation) { - var Curves = (function () { - function Curves() { - } - Curves.QuadraticArrayYForX = function (arr, x, count) { - for (var i = 0; i < count; i++) { - if (x < arr[i].c2.x) - return Curves.QuadraticYForX(x, arr[i]); - } - return 0.0; - }; - Curves.QuadraticYForX = function (x, src) { - var l = src.c2.x - src.c0.x; - if (l <= 0) - return 0.0; - x = (x - src.c0.x) / l; - return ((1 - x) * (1 - x)) * src.c0.y + ((2 * x) * (1 - x) * src.c1.y) + ((x * x) * src.c2.y); - }; - Curves.SubdivideCubicAtLevel = function (b, lvl, src) { - Curves.RecursiveSubdivide(b, lvl, 1, 0, src); - }; - Curves.RecursiveSubdivide = function (b, lvl, currentlvl, pos, src) { - var data = { b1: null, b2: null }; - Curves.SubdivideCubic(data, src); - var b1 = data.b1; - var b2 = data.b2; - if (currentlvl === lvl) { - b[pos] = b1; - b[pos + 1] = b2; - return pos + 2; - } - pos = Curves.RecursiveSubdivide(b, lvl, currentlvl + 1, pos, b1); - pos = Curves.RecursiveSubdivide(b, lvl, currentlvl + 1, pos, b2); - return pos; - }; - Curves.SubdivideCubic = function (data, src) { - var p01 = { x: 0, y: 0 }, p012 = { x: 0, y: 0 }, p0123 = { x: 0, y: 0 }; - var p12 = { x: 0, y: 0 }, p123 = { x: 0, y: 0 }; - var p23 = { x: 0, y: 0 }; - Curves.HalfLerpPoint(p01, src.c0, src.c1); - Curves.HalfLerpPoint(p12, src.c1, src.c2); - Curves.HalfLerpPoint(p23, src.c2, src.c3); - Curves.HalfLerpPoint(p012, p01, p12); - Curves.HalfLerpPoint(p123, p12, p23); - Curves.HalfLerpPoint(p0123, p012, p123); - data.b1 = { - c0: src.c0, - c1: p01, - c2: p012, - c3: p0123 - }; - data.b2 = { - c0: p0123, - c1: p123, - c2: p23, - c3: src.c3 - }; - }; - Curves.HalfLerpPoint = function (p, p1, p2) { - p.x = p1.x + (p2.x - p1.x) * 0.5; - p.y = p1.y + (p2.y - p1.y) * 0.5; - }; - Curves.ConvertCubicsToQuadratics = function (srcArray, count) { - var destArray = []; - for (var i = 0; i < count; i++) { - destArray.push(Curves.QuadraticFromCubic(srcArray[i])); - } - return destArray; - }; - Curves.QuadraticFromCubic = function (src) { - return { - c0: { - x: src.c0.x, - y: src.c0.y - }, - c1: { - x: (src.c1.x + src.c2.x) / 2.0, - y: (src.c1.y + src.c2.y) / 2.0 - }, - c2: { - x: src.c3.x, - y: src.c3.y - } - }; - }; - return Curves; - })(); - Animation.Curves = Curves; - })(Animation = Media.Animation || (Media.Animation = {})); - })(Media = Fayde.Media || (Fayde.Media = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Media; - (function (Media) { - var Animation; - (function (Animation) { - var DoubleAnimation = (function (_super) { - __extends(DoubleAnimation, _super); - function DoubleAnimation() { - _super.call(this); - this._FromCached = null; - this._ToCached = null; - this._ByCached = null; - this._EasingCached = undefined; - } - DoubleAnimation.prototype.GetCurrentValue = function (defaultOriginalValue, defaultDestinationValue, clockData) { - var start = 0.0; - if (this._FromCached != null) - start = this._FromCached; - else if (defaultOriginalValue != null && typeof defaultOriginalValue === "number") - start = defaultOriginalValue; - var end = start; - if (this._ToCached != null) - end = this._ToCached; - else if (this._ByCached != null) - end = start + this._ByCached; - else if (defaultDestinationValue != null && typeof defaultDestinationValue === "number") - end = defaultDestinationValue; - var easingFunc = this._EasingCached; - if (easingFunc != null) - clockData.Progress = easingFunc.Ease(clockData.Progress); - return start + ((end - start) * clockData.Progress); - }; - DoubleAnimation.prototype._FromChanged = function (args) { - this._FromCached = args.NewValue; - }; - DoubleAnimation.prototype._ToChanged = function (args) { - this._ToCached = args.NewValue; - }; - DoubleAnimation.prototype._ByChanged = function (args) { - this._ByCached = args.NewValue; - }; - DoubleAnimation.prototype._EasingChanged = function (args) { - this._EasingCached = args.NewValue; - }; - DoubleAnimation.prototype.GenerateFrom = function () { - return new DoubleAnimation(); - }; - DoubleAnimation.prototype.GenerateTo = function (isEntering) { - var val = (this.From != null) ? this.From : this.To; - if (val == null) - return null; - var da = new DoubleAnimation(); - da.To = val; - return da; - }; - DoubleAnimation.ByProperty = DependencyProperty.Register("By", function () { return Number; }, DoubleAnimation, null, function (d, args) { return d._ByChanged(args); }); - DoubleAnimation.EasingFunctionProperty = DependencyProperty.Register("EasingFunction", function () { return Animation.EasingFunctionBase; }, DoubleAnimation, undefined, function (d, args) { return d._EasingChanged(args); }); - DoubleAnimation.FromProperty = DependencyProperty.Register("From", function () { return Number; }, DoubleAnimation, null, function (d, args) { return d._FromChanged(args); }); - DoubleAnimation.ToProperty = DependencyProperty.Register("To", function () { return Number; }, DoubleAnimation, null, function (d, args) { return d._ToChanged(args); }); - return DoubleAnimation; - })(Animation.AnimationBase); - Animation.DoubleAnimation = DoubleAnimation; - Fayde.CoreLibrary.add(DoubleAnimation); - })(Animation = Media.Animation || (Media.Animation = {})); - })(Media = Fayde.Media || (Fayde.Media = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Media; - (function (Media) { - var Animation; - (function (Animation) { - var DoubleAnimationUsingKeyFrames = (function (_super) { - __extends(DoubleAnimationUsingKeyFrames, _super); - function DoubleAnimationUsingKeyFrames() { - _super.apply(this, arguments); - } - DoubleAnimationUsingKeyFrames.prototype.GenerateFrom = function () { - return new Animation.DoubleAnimation(); - }; - DoubleAnimationUsingKeyFrames.prototype.GenerateTo = function (isEntering) { - var kfs = this.KeyFrames; - if (kfs.Count === 0) - return null; - var val = (kfs.GetValueAt(isEntering ? 0 : kfs.Count - 1)).Value; - if (val == null) - return null; - var da = new Animation.DoubleAnimation(); - da.To = val; - return da; - }; - return DoubleAnimationUsingKeyFrames; - })(Animation.AnimationUsingKeyFrames); - Animation.DoubleAnimationUsingKeyFrames = DoubleAnimationUsingKeyFrames; - Fayde.CoreLibrary.add(DoubleAnimationUsingKeyFrames); - })(Animation = Media.Animation || (Media.Animation = {})); - })(Media = Fayde.Media || (Fayde.Media = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Media; - (function (Media) { - var Animation; - (function (Animation) { - var DoubleKeyFrame = (function (_super) { - __extends(DoubleKeyFrame, _super); - function DoubleKeyFrame() { - _super.apply(this, arguments); - } - DoubleKeyFrame.ValueProperty = DependencyProperty.Register("Value", function () { return Number; }, DoubleKeyFrame); - return DoubleKeyFrame; - })(Animation.KeyFrame); - Animation.DoubleKeyFrame = DoubleKeyFrame; - Fayde.CoreLibrary.add(DoubleKeyFrame); - var DiscreteDoubleKeyFrame = (function (_super) { - __extends(DiscreteDoubleKeyFrame, _super); - function DiscreteDoubleKeyFrame() { - _super.apply(this, arguments); - } - DiscreteDoubleKeyFrame.prototype.InterpolateValue = function (baseValue, keyFrameProgress) { - if (keyFrameProgress >= 1.0) - return this.Value; - return baseValue; - }; - return DiscreteDoubleKeyFrame; - })(DoubleKeyFrame); - Animation.DiscreteDoubleKeyFrame = DiscreteDoubleKeyFrame; - Fayde.CoreLibrary.add(DiscreteDoubleKeyFrame); - var EasingDoubleKeyFrame = (function (_super) { - __extends(EasingDoubleKeyFrame, _super); - function EasingDoubleKeyFrame() { - _super.apply(this, arguments); - } - EasingDoubleKeyFrame.prototype.InterpolateValue = function (baseValue, keyFrameProgress) { - if (keyFrameProgress >= 1.0) - return this.Value; - var start = baseValue; - var end = this.Value; - var easingFunction = this.EasingFunction; - if (easingFunction) - keyFrameProgress = easingFunction.Ease(keyFrameProgress); - if (isNaN(start)) - start = 0; - if (isNaN(end)) - end = 0; - return start + (end - start) * keyFrameProgress; - }; - EasingDoubleKeyFrame.EasingFunctionProperty = DependencyProperty.Register("EasingFunction", function () { return Animation.EasingFunctionBase; }, EasingDoubleKeyFrame); - return EasingDoubleKeyFrame; - })(DoubleKeyFrame); - Animation.EasingDoubleKeyFrame = EasingDoubleKeyFrame; - Fayde.CoreLibrary.add(EasingDoubleKeyFrame); - var LinearDoubleKeyFrame = (function (_super) { - __extends(LinearDoubleKeyFrame, _super); - function LinearDoubleKeyFrame() { - _super.apply(this, arguments); - } - LinearDoubleKeyFrame.prototype.InterpolateValue = function (baseValue, keyFrameProgress) { - var start = baseValue; - var end = this.Value; - if (isNaN(start)) - start = 0; - if (isNaN(end)) - end = 0; - return start + (end - start) * keyFrameProgress; - }; - return LinearDoubleKeyFrame; - })(DoubleKeyFrame); - Animation.LinearDoubleKeyFrame = LinearDoubleKeyFrame; - Fayde.CoreLibrary.add(LinearDoubleKeyFrame); - var SplineDoubleKeyFrame = (function (_super) { - __extends(SplineDoubleKeyFrame, _super); - function SplineDoubleKeyFrame() { - _super.apply(this, arguments); - } - SplineDoubleKeyFrame.prototype.InterpolateValue = function (baseValue, keyFrameProgress) { - if (keyFrameProgress >= 1.0) - return this.Value; - var start = baseValue; - var end = this.Value; - var splineProgress = keyFrameProgress; - var keySpline = this.KeySpline; - if (keySpline) - splineProgress = keySpline.GetSplineProgress(keyFrameProgress); - if (isNaN(start)) - start = 0; - if (isNaN(end)) - end = 0; - return start + (end - start) * splineProgress; - }; - SplineDoubleKeyFrame.KeySplineProperty = DependencyProperty.Register("KeySpline", function () { return Animation.KeySpline; }, SplineDoubleKeyFrame); - return SplineDoubleKeyFrame; - })(DoubleKeyFrame); - Animation.SplineDoubleKeyFrame = SplineDoubleKeyFrame; - Fayde.CoreLibrary.add(SplineDoubleKeyFrame); - })(Animation = Media.Animation || (Media.Animation = {})); - })(Media = Fayde.Media || (Fayde.Media = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Media; - (function (Media) { - var Animation; - (function (Animation) { - var EasingFunctionBase = (function (_super) { - __extends(EasingFunctionBase, _super); - function EasingFunctionBase() { - _super.apply(this, arguments); - } - EasingFunctionBase.prototype.Ease = function (normalizedTime) { - var easingMode = this.EasingMode; - switch (easingMode) { - case Animation.EasingMode.EaseIn: - return this.EaseInCore(normalizedTime); - case Animation.EasingMode.EaseOut: - return this.EaseInCore(1.0 - normalizedTime); - case Animation.EasingMode.EaseInOut: - return normalizedTime <= 0.5 ? - this.EaseInCore(normalizedTime * 2) * 0.5 : - 1.0 - this.EaseInCore(((1.0 - normalizedTime) * 2) * 0.5); - default: - return 0.0; - } - }; - EasingFunctionBase.prototype.EaseInCore = function (t) { - return t; - }; - EasingFunctionBase.EasingModeProperty = DependencyProperty.Register("EasingMode", function () { return new Fayde.Enum(Animation.EasingMode); }, EasingFunctionBase); - return EasingFunctionBase; - })(Fayde.DependencyObject); - Animation.EasingFunctionBase = EasingFunctionBase; - })(Animation = Media.Animation || (Media.Animation = {})); - })(Media = Fayde.Media || (Fayde.Media = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Media; - (function (Media) { - var Animation; - (function (Animation) { - var BackEase = (function (_super) { - __extends(BackEase, _super); - function BackEase() { - _super.apply(this, arguments); - } - BackEase.prototype.EaseInCore = function (t) { - var a = this.Amplitude; - return (t * t * t) - (t * a * Math.sin(t * Math.PI)); - }; - BackEase.AmplitudeProperty = DependencyProperty.Register("Amplitude", function () { return Number; }, BackEase); - return BackEase; - })(Animation.EasingFunctionBase); - Animation.BackEase = BackEase; - Fayde.CoreLibrary.add(BackEase); - var BounceEase = (function (_super) { - __extends(BounceEase, _super); - function BounceEase() { - _super.apply(this, arguments); - } - BounceEase.prototype.EaseInCore = function (t) { - t = 1 - t; - var bounces = this.Bounces; - var bounciness = this.Bounciness; - var r = -1; - var period = 2; - for (var i = 0; i <= bounces; i++) { - r += (period * Math.pow(1 + (bounciness / 2), -i)); - } - var x1 = -1.0; - var x2 = 0; - var r_sq = r * r; - var val = 100; - var p = 0; - while (val > 0.0) { - x2 = x1 + period * Math.pow(1 + (bounciness / 2), -p++); - val = r_sq * (t - x1 / r) * (t - x2 / r); - x1 = x2; - } - return -val; - }; - BounceEase.BouncesProperty = DependencyProperty.Register("Bounces", function () { return Number; }, BounceEase, 3); - BounceEase.BouncinessProperty = DependencyProperty.Register("Bounciness", function () { return Number; }, BounceEase, 2); - return BounceEase; - })(Animation.EasingFunctionBase); - Animation.BounceEase = BounceEase; - Fayde.CoreLibrary.add(BounceEase); - var CircleEase = (function (_super) { - __extends(CircleEase, _super); - function CircleEase() { - _super.apply(this, arguments); - } - CircleEase.prototype.EaseInCore = function (t) { - return 1 - Math.sqrt(1 - (t * t)); - }; - return CircleEase; - })(Animation.EasingFunctionBase); - Animation.CircleEase = CircleEase; - Fayde.CoreLibrary.add(CircleEase); - var CubicEase = (function (_super) { - __extends(CubicEase, _super); - function CubicEase() { - _super.apply(this, arguments); - } - CubicEase.prototype.EaseInCore = function (t) { - return t * t * t; - }; - return CubicEase; - })(Animation.EasingFunctionBase); - Animation.CubicEase = CubicEase; - Fayde.CoreLibrary.add(CubicEase); - var ElasticEase = (function (_super) { - __extends(ElasticEase, _super); - function ElasticEase() { - _super.apply(this, arguments); - } - ElasticEase.prototype.EaseInCore = function (t) { - var period = 1.0 / (this.Oscillations + .25); - var offset = period / 4; - t = t - 1; - return t * -Math.pow(2.0, this.Springiness * t) * Math.sin(((t - offset) * Math.PI * 2) / period); - }; - ElasticEase.OscillationsProperty = DependencyProperty.Register("Oscillations", function () { return Number; }, ElasticEase); - ElasticEase.SpringinessProperty = DependencyProperty.Register("Springiness", function () { return Number; }, ElasticEase); - return ElasticEase; - })(Animation.EasingFunctionBase); - Animation.ElasticEase = ElasticEase; - Fayde.CoreLibrary.add(ElasticEase); - var ExponentialEase = (function (_super) { - __extends(ExponentialEase, _super); - function ExponentialEase() { - _super.apply(this, arguments); - } - ExponentialEase.prototype.EaseInCore = function (t) { - var e = this.Exponent; - return (Math.exp(e * t) - 1) / (Math.exp(e) - 1); - }; - ExponentialEase.ExponentProperty = DependencyProperty.Register("Exponent", function () { return Number; }, ExponentialEase); - return ExponentialEase; - })(Animation.EasingFunctionBase); - Animation.ExponentialEase = ExponentialEase; - Fayde.CoreLibrary.add(ExponentialEase); - var PowerEase = (function (_super) { - __extends(PowerEase, _super); - function PowerEase() { - _super.apply(this, arguments); - } - PowerEase.prototype.EaseInCore = function (t) { - return Math.pow(t, this.Power); - }; - PowerEase.PowerProperty = DependencyProperty.Register("Power", function () { return Number; }, PowerEase); - return PowerEase; - })(Animation.EasingFunctionBase); - Animation.PowerEase = PowerEase; - Fayde.CoreLibrary.add(PowerEase); - var QuadraticEase = (function (_super) { - __extends(QuadraticEase, _super); - function QuadraticEase() { - _super.apply(this, arguments); - } - QuadraticEase.prototype.EaseInCore = function (t) { - return t * t; - }; - return QuadraticEase; - })(Animation.EasingFunctionBase); - Animation.QuadraticEase = QuadraticEase; - Fayde.CoreLibrary.add(QuadraticEase); - var QuarticEase = (function (_super) { - __extends(QuarticEase, _super); - function QuarticEase() { - _super.apply(this, arguments); - } - QuarticEase.prototype.EaseInCore = function (t) { - return t * t * t * t; - }; - return QuarticEase; - })(Animation.EasingFunctionBase); - Animation.QuarticEase = QuarticEase; - Fayde.CoreLibrary.add(QuarticEase); - var QuinticEase = (function (_super) { - __extends(QuinticEase, _super); - function QuinticEase() { - _super.apply(this, arguments); - } - QuinticEase.prototype.EaseInCore = function (t) { - return t * t * t * t * t; - }; - return QuinticEase; - })(Animation.EasingFunctionBase); - Animation.QuinticEase = QuinticEase; - Fayde.CoreLibrary.add(QuinticEase); - var SineEase = (function (_super) { - __extends(SineEase, _super); - function SineEase() { - _super.apply(this, arguments); - } - SineEase.prototype.EaseInCore = function (t) { - return 1 - (Math.sin(1 - t) * (Math.PI / 2)); - }; - return SineEase; - })(Animation.EasingFunctionBase); - Animation.SineEase = SineEase; - Fayde.CoreLibrary.add(SineEase); - })(Animation = Media.Animation || (Media.Animation = {})); - })(Media = Fayde.Media || (Fayde.Media = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Media; - (function (Media) { - var Animation; - (function (Animation) { - var KeySpline = (function (_super) { - __extends(KeySpline, _super); - function KeySpline() { - _super.apply(this, arguments); - this._QuadraticsArray = null; - } - KeySpline.prototype.GetSplineProgress = function (linearProgress) { - if (linearProgress >= 1.0) - return 1.0; - if (linearProgress <= 0.0) - return 0.0; - if (!this._QuadraticsArray) - this._RegenerateQuadratics(); - return Animation.Curves.QuadraticArrayYForX(this._QuadraticsArray, linearProgress, KeySpline.TOTAL_COUNT); - }; - KeySpline.prototype.InvalidateControlPoints = function () { - this._QuadraticsArray = null; - }; - KeySpline.prototype._RegenerateQuadratics = function () { - var c1 = this.ControlPoint1 || new Point(0, 0); - var c2 = this.ControlPoint2 || new Point(1.0, 1.0); - var src = { - c0: { x: 0.0, y: 0.0 }, - c1: { x: c1.x, y: c1.y }, - c2: { x: c2.x, y: c2.y }, - c3: { x: 1.0, y: 1.0 } - }; - var carr = []; - Animation.Curves.SubdivideCubicAtLevel(carr, KeySpline.PRECISION_LEVEL, src); - this._QuadraticsArray = Animation.Curves.ConvertCubicsToQuadratics(carr, KeySpline.TOTAL_COUNT); - }; - KeySpline.PRECISION_LEVEL = 4; - KeySpline.TOTAL_COUNT = Math.pow(2, KeySpline.PRECISION_LEVEL); - KeySpline.ControlPoint1Property = DependencyProperty.RegisterCore("ControlPoint1", function () { return Point; }, KeySpline, undefined, function (d, args) { return d.InvalidateControlPoints(); }); - KeySpline.ControlPoint2Property = DependencyProperty.RegisterCore("ControlPoint2", function () { return Point; }, KeySpline, undefined, function (d, args) { return d.InvalidateControlPoints(); }); - return KeySpline; - })(Fayde.DependencyObject); - Animation.KeySpline = KeySpline; - Fayde.CoreLibrary.add(KeySpline); - })(Animation = Media.Animation || (Media.Animation = {})); - })(Media = Fayde.Media || (Fayde.Media = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Media; - (function (Media) { - var Animation; - (function (Animation) { - var ObjectAnimationUsingKeyFrames = (function (_super) { - __extends(ObjectAnimationUsingKeyFrames, _super); - function ObjectAnimationUsingKeyFrames() { - _super.apply(this, arguments); - } - ObjectAnimationUsingKeyFrames.prototype.Resolve = function (target, propd) { - for (var en = this.KeyFrames.getEnumerator(); en.moveNext();) { - var keyFrame = en.current; - var value = keyFrame.Value; - if (value == null) { - keyFrame.ConvertedValue = undefined; - } - else { - var cv = convertKeyFrame(propd, value); - if (cv === BAD_CONVERSION) - return false; - keyFrame.ConvertedValue = cv; - } - } - return _super.prototype.Resolve.call(this, target, propd); - }; - return ObjectAnimationUsingKeyFrames; - })(Animation.AnimationUsingKeyFrames); - Animation.ObjectAnimationUsingKeyFrames = ObjectAnimationUsingKeyFrames; - Fayde.CoreLibrary.add(ObjectAnimationUsingKeyFrames); - var BAD_CONVERSION = {}; - function convertKeyFrame(propd, value) { - try { - return nullstone.convertAnyToType(value, propd.GetTargetType()); - } - catch (err) { - console.warn("Error resolving ObjectAnimation Value."); - return BAD_CONVERSION; - } - } - })(Animation = Media.Animation || (Media.Animation = {})); - })(Media = Fayde.Media || (Fayde.Media = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Media; - (function (Media) { - var Animation; - (function (Animation) { - var ObjectKeyFrame = (function (_super) { - __extends(ObjectKeyFrame, _super); - function ObjectKeyFrame() { - _super.apply(this, arguments); - this.ConvertedValue = undefined; - } - ObjectKeyFrame.ValueProperty = DependencyProperty.Register("Value", function () { return Object; }, ObjectKeyFrame); - return ObjectKeyFrame; - })(Animation.KeyFrame); - Animation.ObjectKeyFrame = ObjectKeyFrame; - Fayde.CoreLibrary.add(ObjectKeyFrame); - var DiscreteObjectKeyFrame = (function (_super) { - __extends(DiscreteObjectKeyFrame, _super); - function DiscreteObjectKeyFrame() { - _super.apply(this, arguments); - } - DiscreteObjectKeyFrame.prototype.InterpolateValue = function (baseValue, keyFrameProgress) { - if (keyFrameProgress >= 1.0) - return this.ConvertedValue; - return baseValue; - }; - return DiscreteObjectKeyFrame; - })(ObjectKeyFrame); - Animation.DiscreteObjectKeyFrame = DiscreteObjectKeyFrame; - Fayde.CoreLibrary.add(DiscreteObjectKeyFrame); - })(Animation = Media.Animation || (Media.Animation = {})); - })(Media = Fayde.Media || (Fayde.Media = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Media; - (function (Media) { - var Animation; - (function (Animation) { - var PointAnimation = (function (_super) { - __extends(PointAnimation, _super); - function PointAnimation() { - _super.call(this); - this._FromCached = null; - this._ToCached = null; - this._ByCached = null; - this._EasingCached = undefined; - } - PointAnimation.prototype.GetCurrentValue = function (defaultOriginalValue, defaultDestinationValue, clockData) { - var start = new Point(); - if (this._FromCached != null) - start = this._FromCached; - else if (defaultOriginalValue instanceof Point) - start = defaultOriginalValue; - var end = start; - if (this._ToCached != null) - end = this._ToCached; - else if (this._ByCached != null) - end = new Point(start.x + this._ByCached.x, start.y + this._ByCached.y); - else if (defaultDestinationValue instanceof Point) - end = defaultDestinationValue; - var easingFunc = this._EasingCached; - if (easingFunc != null) - clockData.Progress = easingFunc.Ease(clockData.Progress); - return Point.LERP(start, end, clockData.Progress); - }; - PointAnimation.prototype._FromChanged = function (args) { - this._FromCached = args.NewValue; - }; - PointAnimation.prototype._ToChanged = function (args) { - this._ToCached = args.NewValue; - }; - PointAnimation.prototype._ByChanged = function (args) { - this._ByCached = args.NewValue; - }; - PointAnimation.prototype._EasingChanged = function (args) { - this._EasingCached = args.NewValue; - }; - PointAnimation.prototype.GenerateFrom = function () { - return new PointAnimation(); - }; - PointAnimation.prototype.GenerateTo = function (isEntering) { - var val = (this.From != null) ? this.From : this.To; - if (val == null) - return null; - var pa = new PointAnimation(); - pa.To = val; - return pa; - }; - PointAnimation.ByProperty = DependencyProperty.Register("By", function () { return Point; }, PointAnimation, null, function (d, args) { return d._ByChanged(args); }); - PointAnimation.EasingFunctionProperty = DependencyProperty.Register("EasingFunction", function () { return Animation.EasingFunctionBase; }, PointAnimation, undefined, function (d, args) { return d._EasingChanged(args); }); - PointAnimation.FromProperty = DependencyProperty.Register("From", function () { return Point; }, PointAnimation, null, function (d, args) { return d._FromChanged(args); }); - PointAnimation.ToProperty = DependencyProperty.Register("To", function () { return Point; }, PointAnimation, null, function (d, args) { return d._ToChanged(args); }); - return PointAnimation; - })(Animation.AnimationBase); - Animation.PointAnimation = PointAnimation; - Fayde.CoreLibrary.add(PointAnimation); - })(Animation = Media.Animation || (Media.Animation = {})); - })(Media = Fayde.Media || (Fayde.Media = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Media; - (function (Media) { - var Animation; - (function (Animation) { - var PointAnimationUsingKeyFrames = (function (_super) { - __extends(PointAnimationUsingKeyFrames, _super); - function PointAnimationUsingKeyFrames() { - _super.apply(this, arguments); - } - PointAnimationUsingKeyFrames.prototype.GenerateFrom = function () { - return new Animation.PointAnimation(); - }; - PointAnimationUsingKeyFrames.prototype.GenerateTo = function (isEntering) { - var kfs = this.KeyFrames; - if (kfs.Count === 0) - return null; - var val = (kfs.GetValueAt(isEntering ? 0 : kfs.Count - 1)).Value; - if (val == null) - return null; - var pa = new Animation.PointAnimation(); - pa.To = val; - return pa; - }; - return PointAnimationUsingKeyFrames; - })(Animation.AnimationUsingKeyFrames); - Animation.PointAnimationUsingKeyFrames = PointAnimationUsingKeyFrames; - Fayde.CoreLibrary.add(PointAnimationUsingKeyFrames); - })(Animation = Media.Animation || (Media.Animation = {})); - })(Media = Fayde.Media || (Fayde.Media = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Media; - (function (Media) { - var Animation; - (function (Animation) { - var PointKeyFrame = (function (_super) { - __extends(PointKeyFrame, _super); - function PointKeyFrame() { - _super.apply(this, arguments); - } - PointKeyFrame.ValueProperty = DependencyProperty.Register("Value", function () { return Point; }, PointKeyFrame); - return PointKeyFrame; - })(Animation.KeyFrame); - Animation.PointKeyFrame = PointKeyFrame; - Fayde.CoreLibrary.add(PointKeyFrame); - var DiscretePointKeyFrame = (function (_super) { - __extends(DiscretePointKeyFrame, _super); - function DiscretePointKeyFrame() { - _super.apply(this, arguments); - } - DiscretePointKeyFrame.prototype.InterpolateValue = function (baseValue, keyFrameProgress) { - if (keyFrameProgress >= 1.0) - return this.Value; - return baseValue; - }; - return DiscretePointKeyFrame; - })(PointKeyFrame); - Animation.DiscretePointKeyFrame = DiscretePointKeyFrame; - Fayde.CoreLibrary.add(DiscretePointKeyFrame); - var EasingPointKeyFrame = (function (_super) { - __extends(EasingPointKeyFrame, _super); - function EasingPointKeyFrame() { - _super.apply(this, arguments); - } - EasingPointKeyFrame.prototype.InterpolateValue = function (baseValue, keyFrameProgress) { - if (keyFrameProgress >= 1.0) - return this.Value; - var start = baseValue; - var end = this.Value; - var easingFunction = this.EasingFunction; - if (easingFunction) - keyFrameProgress = easingFunction.Ease(keyFrameProgress); - return Point.LERP(start, end, keyFrameProgress); - }; - EasingPointKeyFrame.EasingFunctionProperty = DependencyProperty.Register("EasingFunction", function () { return Animation.EasingFunctionBase; }, EasingPointKeyFrame); - return EasingPointKeyFrame; - })(PointKeyFrame); - Animation.EasingPointKeyFrame = EasingPointKeyFrame; - Fayde.CoreLibrary.add(EasingPointKeyFrame); - var LinearPointKeyFrame = (function (_super) { - __extends(LinearPointKeyFrame, _super); - function LinearPointKeyFrame() { - _super.apply(this, arguments); - } - LinearPointKeyFrame.prototype.InterpolateValue = function (baseValue, keyFrameProgress) { - return Point.LERP(baseValue, this.Value, keyFrameProgress); - }; - return LinearPointKeyFrame; - })(PointKeyFrame); - Animation.LinearPointKeyFrame = LinearPointKeyFrame; - Fayde.CoreLibrary.add(LinearPointKeyFrame); - var SplinePointKeyFrame = (function (_super) { - __extends(SplinePointKeyFrame, _super); - function SplinePointKeyFrame() { - _super.apply(this, arguments); - } - SplinePointKeyFrame.prototype.InterpolateValue = function (baseValue, keyFrameProgress) { - if (keyFrameProgress >= 1.0) - return this.Value; - var start = baseValue; - var end = this.Value; - var splineProgress = keyFrameProgress; - var keySpline = this.KeySpline; - if (keySpline) - splineProgress = keySpline.GetSplineProgress(keyFrameProgress); - if (isNaN(start.x)) - start.x = 0; - if (isNaN(start.y)) - start.y = 0; - if (isNaN(end.x)) - end.x = 0; - if (isNaN(end.y)) - end.y = 0; - return Point.LERP(start, end, splineProgress); - }; - SplinePointKeyFrame.KeySplineProperty = DependencyProperty.Register("KeySpline", function () { return Animation.KeySpline; }, SplinePointKeyFrame); - return SplinePointKeyFrame; - })(PointKeyFrame); - Animation.SplinePointKeyFrame = SplinePointKeyFrame; - Fayde.CoreLibrary.add(SplinePointKeyFrame); - })(Animation = Media.Animation || (Media.Animation = {})); - })(Media = Fayde.Media || (Fayde.Media = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Media; - (function (Media) { - var Animation; - (function (Animation) { - var Storyboard = (function (_super) { - __extends(Storyboard, _super); - function Storyboard() { - _super.call(this); - var coll = Storyboard.ChildrenProperty.Initialize(this); - coll.AttachTo(this); - } - Storyboard.GetTargetName = function (d) { - return d.GetValue(Storyboard.TargetNameProperty); - }; - Storyboard.SetTargetName = function (d, value) { - return d.SetValue(Storyboard.TargetNameProperty, value); - }; - Storyboard.GetTargetProperty = function (d) { - return d.GetValue(Storyboard.TargetPropertyProperty); - }; - Storyboard.SetTargetProperty = function (d, value) { - return d.SetValue(Storyboard.TargetPropertyProperty, value); - }; - Storyboard.ResolveTarget = function (timeline) { - var res = { - Target: undefined, - Property: undefined - }; - if (timeline.HasManualTarget) { - res.Target = timeline.ManualTarget; - } - else { - var targetName = Storyboard.GetTargetName(timeline); - if (targetName) - res.Target = timeline.FindName(targetName, true); - } - res.Property = Storyboard.GetTargetProperty(timeline); - return res; - }; - Storyboard.SetTarget = function (timeline, target) { - timeline.ManualTarget = target; - }; - Storyboard.prototype.Begin = function () { - if (Animation.Log) - console.log(getLogMessage("Storyboard.Begin", this, true)); - this.Reset(); - var error = new BError(); - var promotedValues = []; - var enumerator = this.Children.getEnumerator(); - while (enumerator.moveNext()) { - var animation = enumerator.current; - if (!animation._Hookup(promotedValues, error)) - error.ThrowException(); - } - Fayde.Application.Current.RegisterStoryboard(this); - }; - Storyboard.prototype.Pause = function () { - _super.prototype.Pause.call(this); - for (var en = this.Children.getEnumerator(); en.moveNext();) { - en.current.Pause(); - } - }; - Storyboard.prototype.Resume = function () { - _super.prototype.Resume.call(this); - for (var en = this.Children.getEnumerator(); en.moveNext();) { - en.current.Resume(); - } - }; - Storyboard.prototype.Stop = function () { - if (Animation.Log) - console.log(getLogMessage("Storyboard.Stop", this, false)); - _super.prototype.Stop.call(this); - Fayde.Application.Current.UnregisterStoryboard(this); - for (var en = this.Children.getEnumerator(); en.moveNext();) { - en.current.Stop(); - } - }; - Storyboard.prototype.UpdateInternal = function (clockData) { - if (Animation.Log) - console.log(getLogMessage("Storyboard.UpdateInternal", this, false, clockData)); - for (var en = this.Children.getEnumerator(); en.moveNext();) { - en.current.Update(clockData.CurrentTime.Ticks); - } - }; - Storyboard.prototype.GetNaturalDurationCore = function () { - var fullTicks = 0; - for (var en = this.Children.getEnumerator(); en.moveNext();) { - var timeline = en.current; - var dur = timeline.GetNaturalDuration(); - if (dur.IsAutomatic) - continue; - if (dur.IsForever) - return Duration.Forever; - var spanTicks = dur.TimeSpan.Ticks; - var repeat = timeline.RepeatBehavior || Animation.Timeline.DEFAULT_REPEAT_BEHAVIOR; - if (repeat.IsForever) - return Duration.Forever; - if (repeat.HasCount) - spanTicks = spanTicks * repeat.Count; - if (timeline.AutoReverse) - spanTicks *= 2; - if (repeat.HasDuration) - spanTicks = repeat.Duration.TimeSpan.Ticks; - if (spanTicks !== 0) - spanTicks = spanTicks / timeline.SpeedRatio; - var bt = timeline.BeginTime; - if (bt) - spanTicks += bt.Ticks; - if (fullTicks === 0 || fullTicks <= spanTicks) - fullTicks = spanTicks; - } - if (!fullTicks) - return Duration.Automatic; - return new Duration(new TimeSpan(fullTicks)); - }; - Storyboard.TargetNameProperty = DependencyProperty.RegisterAttached("TargetName", function () { return String; }, Storyboard); - Storyboard.TargetPropertyProperty = DependencyProperty.RegisterAttached("TargetProperty", function () { return Fayde.Data.PropertyPath; }, Storyboard); - Storyboard.ChildrenProperty = DependencyProperty.RegisterImmutable("Children", function () { return Animation.TimelineCollection; }, Storyboard); - return Storyboard; - })(Animation.Timeline); - Animation.Storyboard = Storyboard; - Fayde.CoreLibrary.add(Storyboard); - Fayde.Markup.Content(Storyboard, Storyboard.ChildrenProperty); - function getLogMessage(action, storyboard, full, clockData) { - var anims = []; - var cur = ""; - var enumerator = storyboard.Children.getEnumerator(); - var animation; - while (enumerator.moveNext()) { - animation = enumerator.current; - cur = ""; - cur += "("; - cur += animation.constructor.name; - cur += ":"; - cur += Storyboard.GetTargetName(animation); - cur += ":"; - var path = Storyboard.GetTargetProperty(animation); - cur += path ? path.Path : ""; - cur += ")"; - anims.push(cur); - } - var msg = "ANIMATION:" + action + ":" + storyboard._ID; - if (clockData) - msg += "(" + (clockData.Progress * 100).toFixed(0) + "%)"; - if (full) - msg += "->[" + anims.join(",") + "]"; - return msg; - } - })(Animation = Media.Animation || (Media.Animation = {})); - })(Media = Fayde.Media || (Fayde.Media = {})); -})(Fayde || (Fayde = {})); -/// -/// -var Fayde; -(function (Fayde) { - var Media; - (function (Media) { - var Effects; - (function (Effects) { - var Effect = (function (_super) { - __extends(Effect, _super); - function Effect() { - _super.apply(this, arguments); - } - Effect.prototype.PreRender = function (ctx) { - }; - Effect.prototype.PostRender = function (ctx) { - }; - Effect.prototype.GetPadding = function (thickness) { - return false; - }; - Effect.EffectMappingProperty = DependencyProperty.Register("EffectMapping", function () { return Media.GeneralTransform; }, Effect); - return Effect; - })(Fayde.DependencyObject); - Effects.Effect = Effect; - Fayde.CoreLibrary.add(Effect); - var reactions; - (function (reactions) { - Fayde.DPReaction(Effect.EffectMappingProperty, function (dobj, ov, nv) { return Fayde.Incite(dobj); }); - })(reactions || (reactions = {})); - })(Effects = Media.Effects || (Media.Effects = {})); - })(Media = Fayde.Media || (Fayde.Media = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Media; - (function (Media) { - var Effects; - (function (Effects) { - var BlurEffect = (function (_super) { - __extends(BlurEffect, _super); - function BlurEffect() { - _super.apply(this, arguments); - } - BlurEffect.RadiusProperty = DependencyProperty.Register("Radius", function () { return Number; }, BlurEffect, undefined, Fayde.Incite); - return BlurEffect; - })(Effects.Effect); - Effects.BlurEffect = BlurEffect; - Fayde.CoreLibrary.add(BlurEffect); - })(Effects = Media.Effects || (Media.Effects = {})); - })(Media = Fayde.Media || (Fayde.Media = {})); -})(Fayde || (Fayde = {})); -/// -/// -var Fayde; -(function (Fayde) { - var Media; - (function (Media) { - var Effects; - (function (Effects) { - var DropShadowEffect = (function (_super) { - __extends(DropShadowEffect, _super); - function DropShadowEffect() { - _super.apply(this, arguments); - } - DropShadowEffect.prototype.GetPadding = function (thickness) { - var radius = Math.min(this.BlurRadius, DropShadowEffect.MAX_BLUR_RADIUS); - var depth = Math.min(Math.max(0, this.ShadowDepth), DropShadowEffect.MAX_SHADOW_DEPTH); - var direction = this.Direction * Math.PI / 180.0; - var width = Math.ceil(radius); - var offsetX = Math.cos(direction) * depth; - var offsetY = Math.sin(direction) * depth; - var left = -offsetX + width; - var top = offsetY + width; - var right = offsetX + width; - var bottom = -offsetY + width; - var l = left < 1.0 ? 1.0 : Math.ceil(left); - var t = top < 1.0 ? 1.0 : Math.ceil(top); - var r = right < 1.0 ? 1.0 : Math.ceil(right); - var b = bottom < 1.0 ? 1.0 : Math.ceil(bottom); - var changed = thickness.left !== l - || thickness.top !== t - || thickness.right !== r - || thickness.bottom !== b; - thickness.left = l; - thickness.top = t; - thickness.right = r; - thickness.bottom = b; - return changed; - }; - DropShadowEffect.prototype.PreRender = function (ctx) { - var color = this.Color; - var opacity = color.A * this.Opacity; - var radius = Math.min(this.BlurRadius, DropShadowEffect.MAX_BLUR_RADIUS); - var depth = Math.min(Math.max(0, this.ShadowDepth), DropShadowEffect.MAX_SHADOW_DEPTH); - var direction = this.Direction * Math.PI / 180.0; - var offsetX = Math.cos(direction) * depth; - var offsetY = -Math.sin(direction) * depth; - var raw = ctx.raw; - raw.shadowColor = "rgba(" + color.R + "," + color.G + "," + color.B + "," + opacity + ")"; - raw.shadowBlur = radius; - raw.shadowOffsetX = offsetX; - raw.shadowOffsetY = offsetY; - }; - DropShadowEffect.MAX_BLUR_RADIUS = 20; - DropShadowEffect.MAX_SHADOW_DEPTH = 300; - DropShadowEffect.BlurRadiusProperty = DependencyProperty.Register("BlurRadius", function () { return Number; }, DropShadowEffect, 5.0, Fayde.Incite); - DropShadowEffect.ColorProperty = DependencyProperty.Register("Color", function () { return Color; }, DropShadowEffect, Color.KnownColors.Black, Fayde.Incite); - DropShadowEffect.DirectionProperty = DependencyProperty.Register("Direction", function () { return Number; }, DropShadowEffect, 315.0, Fayde.Incite); - DropShadowEffect.OpacityProperty = DependencyProperty.Register("Opacity", function () { return Number; }, DropShadowEffect, 1.0, Fayde.Incite); - DropShadowEffect.ShadowDepthProperty = DependencyProperty.Register("ShadowDepth", function () { return Number; }, DropShadowEffect, 5.0, Fayde.Incite); - return DropShadowEffect; - })(Effects.Effect); - Effects.DropShadowEffect = DropShadowEffect; - Fayde.CoreLibrary.add(DropShadowEffect); - })(Effects = Media.Effects || (Media.Effects = {})); - })(Media = Fayde.Media || (Fayde.Media = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Media; - (function (Media) { - var Imaging; - (function (Imaging) { - var ImageSource = (function (_super) { - __extends(ImageSource, _super); - function ImageSource() { - _super.call(this); - this.$element = null; - } - Object.defineProperty(ImageSource.prototype, "pixelWidth", { - get: function () { - return this.GetValue(ImageSource.PixelWidthProperty); - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(ImageSource.prototype, "pixelHeight", { - get: function () { - return this.GetValue(ImageSource.PixelHeightProperty); - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(ImageSource.prototype, "isEmpty", { - get: function () { - return !this.$element; - }, - enumerable: true, - configurable: true - }); - ImageSource.prototype.draw = function (ctx) { - ctx.drawImage(this.$element, 0, 0); - }; - ImageSource.prototype.createPattern = function (ctx) { - ctx.rect(0, 0, this.pixelWidth, this.pixelHeight); - return ctx.createPattern(this.$element, "no-repeat"); - }; - ImageSource.prototype.reset = function () { - this.$element = this.createElement(); - this.setMetrics(0, 0); - }; - ImageSource.prototype.createElement = function () { - return undefined; - }; - ImageSource.prototype.setMetrics = function (pixelWidth, pixelHeight) { - this.SetCurrentValue(ImageSource.PixelWidthProperty, pixelWidth); - this.SetCurrentValue(ImageSource.PixelHeightProperty, pixelHeight); - }; - ImageSource.PixelWidthProperty = DependencyProperty.RegisterReadOnly("PixelWidth", function () { return Number; }, ImageSource, 0); - ImageSource.PixelHeightProperty = DependencyProperty.RegisterReadOnly("PixelHeight", function () { return Number; }, ImageSource, 0); - return ImageSource; - })(Fayde.DependencyObject); - Imaging.ImageSource = ImageSource; - Fayde.CoreLibrary.add(ImageSource); - })(Imaging = Media.Imaging || (Media.Imaging = {})); - })(Media = Fayde.Media || (Fayde.Media = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Media; - (function (Media) { - var Imaging; - (function (Imaging) { - var BitmapSource = (function (_super) { - __extends(BitmapSource, _super); - function BitmapSource() { - _super.apply(this, arguments); - this.$watchers = []; - } - BitmapSource.prototype.createElement = function () { - return new Image(); - }; - BitmapSource.prototype.reset = function () { - var _this = this; - _super.prototype.reset.call(this); - this.$element.onerror = function (e) { return _this.onImageErrored(e); }; - this.$element.onload = function (e) { - _this.onImageLoaded(); - _this.onImageChanged(); - }; - this.onImageChanged(); - }; - BitmapSource.prototype.watch = function (watcher) { - var watchers = this.$watchers; - watchers.push(watcher); - return { - dispose: function () { - var index = watchers.indexOf(watcher); - if (index > -1) - watchers.splice(index, 1); - } - }; - }; - BitmapSource.prototype.onImageLoaded = function () { - this.setMetrics(this.$element.naturalWidth, this.$element.naturalHeight); - for (var i = 0, watchers = this.$watchers; i < watchers.length; i++) { - watchers[i].onLoaded(this); - } - }; - BitmapSource.prototype.onImageErrored = function (e) { - console.warn("Failed to load: " + this.$element.src.toString()); - for (var i = 0, watchers = this.$watchers; i < watchers.length; i++) { - watchers[i].onErrored(this, e.error); - } - }; - BitmapSource.prototype.onImageChanged = function () { - for (var i = 0, watchers = this.$watchers; i < watchers.length; i++) { - watchers[i].onChanged(this); - } - }; - return BitmapSource; - })(Imaging.ImageSource); - Imaging.BitmapSource = BitmapSource; - Fayde.CoreLibrary.add(BitmapSource); - })(Imaging = Media.Imaging || (Media.Imaging = {})); - })(Media = Fayde.Media || (Fayde.Media = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Media; - (function (Media) { - var Imaging; - (function (Imaging) { - var BitmapImage = (function (_super) { - __extends(BitmapImage, _super); - function BitmapImage(uri) { - _super.call(this); - this.ImageFailed = new nullstone.Event(); - this.ImageOpened = new nullstone.Event(); - this._BackingBuffer = null; - if (uri) - this.UriSource = uri; - } - BitmapImage.prototype.OnUriSourceChanged = function (oldValue, newValue) { - if (Fayde.Uri.isNullOrEmpty(newValue)) { - this.reset(); - } - else { - if (!this.$element || !newValue) - this.reset(); - this.$element.src = Fayde.TypeManager.resolveResource(newValue); - this.onImageChanged(); - } - }; - BitmapImage.prototype.onImageErrored = function (e) { - _super.prototype.onImageErrored.call(this, e); - this.ImageFailed.raise(this, null); - }; - BitmapImage.prototype.onImageLoaded = function () { - _super.prototype.onImageLoaded.call(this); - this.ImageOpened.raise(this, null); - }; - BitmapImage.prototype.SetSource = function (buffer) { - this._BackingBuffer = buffer; - this.UriSource = Imaging.encodeImage(buffer); - }; - BitmapImage.UriSourceProperty = DependencyProperty.RegisterFull("UriSource", function () { return Fayde.Uri; }, BitmapImage, undefined, function (bi, args) { return bi.OnUriSourceChanged(args.OldValue, args.NewValue); }, undefined, true); - return BitmapImage; - })(Imaging.BitmapSource); - Imaging.BitmapImage = BitmapImage; - Fayde.CoreLibrary.add(BitmapImage); - nullstone.registerTypeConverter(Imaging.ImageSource, function (val) { - if (!val) - return null; - if (val instanceof Imaging.ImageSource) - return val; - if (val instanceof ArrayBuffer) { - var bi = new BitmapImage(); - bi.SetSource(val); - return bi; - } - var bi = new BitmapImage(); - bi.UriSource = nullstone.convertAnyToType(val, Fayde.Uri); - return bi; - }); - })(Imaging = Media.Imaging || (Media.Imaging = {})); - })(Media = Fayde.Media || (Fayde.Media = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Media; - (function (Media) { - var Imaging; - (function (Imaging) { - var ImageBrush = (function (_super) { - __extends(ImageBrush, _super); - function ImageBrush() { - _super.apply(this, arguments); - this.ImageFailed = new nullstone.Event(); - this.ImageOpened = new nullstone.Event(); - this.$watcher = null; - } - ImageBrush._SourceCoercer = function (d, propd, value) { - if (typeof value === "string") - return new Media.Imaging.BitmapImage(new Fayde.Uri(value)); - if (value instanceof Fayde.Uri) - return new Media.Imaging.BitmapImage(value); - return value; - }; - ImageBrush.prototype.setupBrush = function (ctx, bounds) { - var source = this.ImageSource; - if (source && !source.isEmpty) - _super.prototype.setupBrush.call(this, ctx, bounds); - }; - ImageBrush.prototype.GetTileExtents = function () { - var source = this.ImageSource; - return new minerva.Rect(0, 0, source.pixelWidth, source.pixelHeight); - }; - ImageBrush.prototype.DrawTile = function (canvasCtx, bounds) { - var source = this.ImageSource; - canvasCtx.fillStyle = source.createPattern(canvasCtx); - canvasCtx.fill(); - }; - ImageBrush.prototype._ImageSourceChanged = function (args) { - var _this = this; - if (this.$watcher) { - this.$watcher.dispose(); - this.$watcher = null; - } - if (args.NewValue instanceof Imaging.BitmapSource) { - this.$watcher = args.NewValue.watch({ - onErrored: function (source, error) { return _this.OnImageErrored(source, error); }, - onLoaded: function (source) { return _this.OnImageLoaded(source); }, - onChanged: function (source) { return _this.OnImageChanged(source); } - }); - } - this.InvalidateBrush(); - }; - ImageBrush.prototype.OnImageErrored = function (source, error) { - this.ImageFailed.raise(this, null); - }; - ImageBrush.prototype.OnImageLoaded = function (source) { - this.ImageOpened.raise(this, null); - }; - ImageBrush.prototype.OnImageChanged = function (source) { - this.InvalidateBrush(); - }; - ImageBrush.ImageSourceProperty = DependencyProperty.RegisterFull("ImageSource", function () { return Imaging.ImageSource; }, ImageBrush, undefined, function (d, args) { return d._ImageSourceChanged(args); }, ImageBrush._SourceCoercer); - return ImageBrush; - })(Media.TileBrush); - Imaging.ImageBrush = ImageBrush; - Fayde.CoreLibrary.add(ImageBrush); - })(Imaging = Media.Imaging || (Media.Imaging = {})); - })(Media = Fayde.Media || (Fayde.Media = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Media; - (function (Media) { - var Imaging; - (function (Imaging) { - function encodeImage(buffer) { - var bytes = new Uint8Array(buffer); - var data = convertToBase64(bytes); - var type = getImageType(bytes); - return new Fayde.Uri("data:" + type + ";base64," + data); - } - Imaging.encodeImage = encodeImage; - function getImageType(bytes) { - if (isJpg(bytes)) - return "image/jpeg"; - if (isPng(bytes)) - return "image/png"; - return "image/jpeg"; - } - function convertToBase64(bytes) { - var arr = []; - for (var i = 0; i < bytes.byteLength; i++) { - arr.push(String.fromCharCode(bytes[i])); - } - return window.btoa(arr.join('')); - } - function isJpg(bytes) { - return bytes[0] === 0xFF - && bytes[1] === 0xD8 - && bytes[bytes.length - 2] === 0xFF - && bytes[bytes.length - 1] === 0xD9; - } - function isPng(bytes) { - return bytes[0] === 0x89 - && bytes[1] === 0x50 - && bytes[2] === 0x4E - && bytes[3] === 0x47 - && bytes[4] === 0x0D - && bytes[5] === 0x0A - && bytes[6] === 0x1A - && bytes[7] === 0x0A; - } - })(Imaging = Media.Imaging || (Media.Imaging = {})); - })(Media = Fayde.Media || (Fayde.Media = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Media; - (function (Media) { - var LinearGradient; - (function (LinearGradient) { - function createRepeatInterpolator(start, end, bounds) { - var first = { x: start.x, y: start.y }; - var last = { x: end.x, y: end.y }; - var dir = { x: end.x - start.x, y: end.y - start.y }; - LinearGradient.calcMetrics(dir, first, last, bounds); - var numSteps = (last.x - first.x) / dir.x; - var stepSize = 1.0 / numSteps; - var cur = -stepSize; - return { - x0: first.x, - y0: first.y, - x1: last.x, - y1: last.y, - step: function () { - cur += stepSize; - return cur < 1; - }, - interpolate: function (offset) { - return cur + (offset / numSteps); - } - }; - } - LinearGradient.createRepeatInterpolator = createRepeatInterpolator; - function createReflectInterpolator(start, end, bounds) { - var first = { x: start.x, y: start.y }; - var last = { x: end.x, y: end.y }; - var dir = { x: end.x - start.x, y: end.y - start.y }; - LinearGradient.calcMetrics(dir, first, last, bounds); - var numSteps = (last.x - first.x) / dir.x; - var stepSize = 1.0 / numSteps; - var cur = -stepSize; - var inverted = Math.round((start.x - first.x) / dir.x) % 2 === 0; - return { - x0: first.x, - y0: first.y, - x1: last.x, - y1: last.y, - step: function () { - inverted = !inverted; - cur += stepSize; - return cur < 1; - }, - interpolate: function (offset) { - var norm = offset / numSteps; - return !inverted ? cur + norm : cur + (stepSize - norm); - } - }; - } - LinearGradient.createReflectInterpolator = createReflectInterpolator; - })(LinearGradient = Media.LinearGradient || (Media.LinearGradient = {})); - })(Media = Fayde.Media || (Fayde.Media = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Media; - (function (Media) { - var LinearGradient; - (function (LinearGradient) { - function calcMetrics(dir, first, last, bounds) { - if (dir.y === 0) { - if (dir.x < 0) - W(dir, first, last, bounds); - else if (dir.x !== 0) - E(dir, first, last, bounds); - } - else if (dir.x === 0) { - if (dir.y < 0) - N(dir, first, last, bounds); - else if (dir.y !== 0) - S(dir, first, last, bounds); - } - else if (dir.x < 0 && dir.y < 0) { - NW(dir, first, last, bounds); - } - else if (dir.x < 0 && dir.y > 0) { - SW(dir, first, last, bounds); - } - else if (dir.x > 0 && dir.y < 0) { - NE(dir, first, last, bounds); - } - else if (dir.x > 0 && dir.y > 0) { - SE(dir, first, last, bounds); - } - } - LinearGradient.calcMetrics = calcMetrics; - function E(dir, first, last, bounds) { - var maxX = bounds.x + bounds.width; - while (first.x >= bounds.x) - first.x -= dir.x; - while (last.x <= maxX) - last.x += dir.x; - } - function W(dir, first, last, bounds) { - var maxX = bounds.x + bounds.width; - while (first.x <= maxX) - first.x -= dir.x; - while (last.x >= bounds.x) - last.x += dir.x; - } - function S(dir, first, last, bounds) { - var maxY = bounds.y + bounds.height; - while (first.y >= bounds.y) - first.y -= dir.y; - while (last.y <= maxY) - last.y += dir.y; - } - function N(dir, first, last, bounds) { - var maxY = bounds.y + bounds.height; - while (first.y <= maxY) - first.y -= dir.y; - while (last.y >= bounds.y) - last.y += dir.y; - } - function NW(dir, first, last, bounds) { - var maxX = bounds.x + bounds.width; - var maxY = bounds.y + bounds.height; - while (first.x <= maxX && first.y <= maxY) { - first.x -= dir.x; - first.y -= dir.y; - } - while (last.x >= bounds.x && last.y >= bounds.y) { - last.x += dir.x; - last.y += dir.y; - } - } - function SW(dir, first, last, bounds) { - var maxX = bounds.x + bounds.width; - var maxY = bounds.y + bounds.height; - while (first.x <= maxX && first.y >= bounds.y) { - first.x -= dir.x; - first.y -= dir.y; - } - while (last.x >= bounds.x && last.y <= maxY) { - last.x += dir.x; - last.y += dir.y; - } - } - function NE(dir, first, last, bounds) { - var maxX = bounds.x + bounds.width; - var maxY = bounds.y + bounds.height; - while (first.x >= bounds.x && first.y <= maxY) { - first.x -= dir.x; - first.y -= dir.y; - } - while (last.x <= maxX && last.y >= bounds.y) { - last.x += dir.x; - last.y += dir.y; - } - } - function SE(dir, first, last, bounds) { - var maxX = bounds.x + bounds.width; - var maxY = bounds.y + bounds.height; - while (first.x >= bounds.x && first.y >= bounds.y) { - first.x -= dir.x; - first.y -= dir.y; - } - while (last.x <= maxX && last.y <= maxY) { - last.x += dir.x; - last.y += dir.y; - } - } - })(LinearGradient = Media.LinearGradient || (Media.LinearGradient = {})); - })(Media = Fayde.Media || (Fayde.Media = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Media; - (function (Media) { - var RadialGradient; - (function (RadialGradient) { - function createExtender(data, bounds) { - var started = false; - var dx = data.x1 - data.x0; - var dy = data.y1 - data.y0; - var rstep = data.r1; - var reached = false; - var ext = { - x0: data.x0, - y0: data.y0, - r0: 0, - x1: data.x1, - y1: data.y1, - r1: data.r1, - step: function () { - if (!started) { - started = true; - return true; - } - ext.x0 = ext.x1; - ext.y0 = ext.y1; - ext.r0 += rstep; - ext.r1 += rstep; - ext.x1 += dx; - ext.y1 += dy; - if (reached) - return false; - reached = exceedBounds(ext.x1, ext.y1, ext.r1, bounds); - return true; - }, - createGradient: function (ctx) { - return ctx.createRadialGradient(ext.x0, ext.y0, ext.r0, ext.x1, ext.y1, ext.r1); - } - }; - return ext; - } - RadialGradient.createExtender = createExtender; - function exceedBounds(cx, cy, radius, bounds) { - var ne = len(cx, cy, bounds.x, bounds.y); - var nw = len(cx, cy, bounds.x + bounds.width, bounds.y); - var sw = len(cx, cy, bounds.x + bounds.width, bounds.y + bounds.height); - var se = len(cx, cy, bounds.x, bounds.y + bounds.height); - return Math.max(ne, nw, sw, se) < radius; - } - function len(x1, y1, x2, y2) { - var dx = x2 - x1; - var dy = y2 - y1; - return Math.sqrt((dx * dx) + (dy * dy)); - } - })(RadialGradient = Media.RadialGradient || (Media.RadialGradient = {})); - })(Media = Fayde.Media || (Fayde.Media = {})); -})(Fayde || (Fayde = {})); -/// -/// -var Fayde; -(function (Fayde) { - var Media; - (function (Media) { - var VSM; - (function (VSM) { - var VisualState = (function (_super) { - __extends(VisualState, _super); - function VisualState() { - _super.apply(this, arguments); - } - VisualState.StoryboardProperty = DependencyProperty.Register("Storyboard", function () { return Media.Animation.Storyboard; }, VisualState); - return VisualState; - })(Fayde.DependencyObject); - VSM.VisualState = VisualState; - Fayde.CoreLibrary.add(VisualState); - Fayde.Markup.Content(VisualState, VisualState.StoryboardProperty); - var VisualStateCollection = (function (_super) { - __extends(VisualStateCollection, _super); - function VisualStateCollection() { - _super.apply(this, arguments); - } - return VisualStateCollection; - })(Fayde.XamlObjectCollection); - VSM.VisualStateCollection = VisualStateCollection; - Fayde.CoreLibrary.add(VisualStateCollection); - })(VSM = Media.VSM || (Media.VSM = {})); - })(Media = Fayde.Media || (Fayde.Media = {})); -})(Fayde || (Fayde = {})); -/// -/// -var Fayde; -(function (Fayde) { - var Media; - (function (Media) { - var VSM; - (function (VSM) { - var VisualStateChangedEventArgs = (function () { - function VisualStateChangedEventArgs(oldState, newState, control) { - Object.defineProperty(this, "OldState", { value: oldState, writable: false }); - Object.defineProperty(this, "NewState", { value: newState, writable: false }); - Object.defineProperty(this, "Control", { value: control, writable: false }); - } - return VisualStateChangedEventArgs; - })(); - VSM.VisualStateChangedEventArgs = VisualStateChangedEventArgs; - var VisualStateGroup = (function (_super) { - __extends(VisualStateGroup, _super); - function VisualStateGroup() { - _super.call(this); - this._CurrentStoryboards = []; - this.CurrentStateChanging = new nullstone.Event(); - this.CurrentStateChanged = new nullstone.Event(); - this.CurrentState = null; - VisualStateGroup.StatesProperty.Initialize(this); - VisualStateGroup.TransitionsProperty.Initialize(this); - } - Object.defineProperty(VisualStateGroup.prototype, "CurrentStoryboards", { - get: function () { - return this._CurrentStoryboards.slice(0); - }, - enumerable: true, - configurable: true - }); - VisualStateGroup.prototype.GetState = function (stateName) { - var enumerator = this.States.getEnumerator(); - var state; - while (enumerator.moveNext()) { - state = enumerator.current; - if (state.Name === stateName) - return state; - } - return null; - }; - VisualStateGroup.prototype.StartNewThenStopOld = function (element, newStoryboards) { - var i; - var storyboard; - var res = element.Resources; - for (i = 0; i < newStoryboards.length; i++) { - storyboard = newStoryboards[i]; - if (storyboard == null) - continue; - res.Set(storyboard._ID, storyboard); - try { - storyboard.Begin(); - } - catch (err) { - for (var j = 0; j <= i; j++) { - if (newStoryboards[j] != null) - res.Set(newStoryboards[j]._ID, undefined); - } - console.warn(err); - } - } - this.StopCurrentStoryboards(element); - var curStoryboards = this._CurrentStoryboards; - for (i = 0; i < newStoryboards.length; i++) { - if (newStoryboards[i] == null) - continue; - curStoryboards.push(newStoryboards[i]); - } - }; - VisualStateGroup.prototype.StopCurrentStoryboards = function (element) { - var curStoryboards = this._CurrentStoryboards; - var storyboard; - for (var en = nullstone.IEnumerator_.fromArray(curStoryboards); en.moveNext();) { - storyboard = en.current; - if (!storyboard) - continue; - element.Resources.Set(storyboard._ID, undefined); - storyboard.Stop(); - } - this._CurrentStoryboards = []; - }; - VisualStateGroup.prototype.Deactivate = function () { - for (var en = nullstone.IEnumerator_.fromArray(this._CurrentStoryboards); en.moveNext();) { - en.current && en.current.Pause(); - } - }; - VisualStateGroup.prototype.Activate = function () { - for (var en = nullstone.IEnumerator_.fromArray(this._CurrentStoryboards); en.moveNext();) { - en.current && en.current.Resume(); - } - }; - VisualStateGroup.prototype.RaiseCurrentStateChanging = function (element, oldState, newState, control) { - this.CurrentStateChanging.raise(this, new VisualStateChangedEventArgs(oldState, newState, control)); - }; - VisualStateGroup.prototype.RaiseCurrentStateChanged = function (element, oldState, newState, control) { - this.CurrentStateChanged.raise(this, new VisualStateChangedEventArgs(oldState, newState, control)); - }; - VisualStateGroup.StatesProperty = DependencyProperty.RegisterImmutable("States", function () { return VSM.VisualStateCollection; }, VisualStateGroup); - VisualStateGroup.TransitionsProperty = DependencyProperty.RegisterImmutable("Transitions", function () { return Fayde.XamlObjectCollection; }, VisualStateGroup); - return VisualStateGroup; - })(Fayde.DependencyObject); - VSM.VisualStateGroup = VisualStateGroup; - Fayde.CoreLibrary.add(VisualStateGroup); - Fayde.Markup.Content(VisualStateGroup, VisualStateGroup.StatesProperty); - var VisualStateGroupCollection = (function (_super) { - __extends(VisualStateGroupCollection, _super); - function VisualStateGroupCollection() { - _super.apply(this, arguments); - } - return VisualStateGroupCollection; - })(Fayde.XamlObjectCollection); - VSM.VisualStateGroupCollection = VisualStateGroupCollection; - Fayde.CoreLibrary.add(VisualStateGroupCollection); - })(VSM = Media.VSM || (Media.VSM = {})); - })(Media = Fayde.Media || (Fayde.Media = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Media; - (function (Media) { - var VSM; - (function (VSM) { - var VisualStateManager = (function (_super) { - __extends(VisualStateManager, _super); - function VisualStateManager() { - _super.apply(this, arguments); - } - VisualStateManager.GetVisualStateGroups = function (d) { return d.GetValue(VisualStateManager.VisualStateGroupsProperty); }; - VisualStateManager.SetVisualStateGroups = function (d, value) { d.SetValue(VisualStateManager.VisualStateGroupsProperty, value); }; - VisualStateManager.GetCustomVisualStateManager = function (d) { return d.GetValue(VisualStateManager.CustomVisualStateManagerProperty); }; - VisualStateManager.SetCustomVisualStateManager = function (d, value) { d.SetValue(VisualStateManager.CustomVisualStateManagerProperty, value); }; - VisualStateManager.GoToState = function (control, stateName, useTransitions) { - if (!control) - throw new ArgumentException("control"); - if (!stateName) - throw new ArgumentException("stateName"); - var root = VisualStateManager._GetTemplateRoot(control); - if (!root) - return false; - var groups = VisualStateManager.GetVisualStateGroups(root); - if (!groups) - return false; - var data = { group: null, state: null }; - if (!VisualStateManager._TryGetState(groups, stateName, data)) - return false; - var customVsm = VisualStateManager.GetCustomVisualStateManager(root); - if (customVsm) { - return customVsm.GoToStateCore(control, root, stateName, data.group, data.state, useTransitions); - } - else if (data.state != null) { - return VisualStateManager.GoToStateInternal(control, root, data.group, data.state, useTransitions); - } - return false; - }; - VisualStateManager.prototype.GoToStateCore = function (control, element, stateName, group, state, useTransitions) { - return VisualStateManager.GoToStateInternal(control, element, group, state, useTransitions); - }; - VisualStateManager.GoToStateInternal = function (control, element, group, state, useTransitions) { - var lastState = group.CurrentState; - if (lastState === state) - return true; - if (VSM.Debug && window.console) { - console.log("VSM:GoToState:[" + control._ID + "]" + (lastState ? lastState.Name : "()") + "-->" + state.Name); - } - var transition = useTransitions ? VisualStateManager._GetTransition(element, group, lastState, state) : null; - var storyboard; - if (transition == null || (transition.GeneratedDuration.IsZero && ((storyboard = transition.Storyboard) == null || storyboard.Duration.IsZero))) { - if (transition != null && storyboard != null) { - group.StartNewThenStopOld(element, [storyboard, state.Storyboard]); - } - else { - group.StartNewThenStopOld(element, [state.Storyboard]); - } - group.RaiseCurrentStateChanging(element, lastState, state, control); - group.RaiseCurrentStateChanged(element, lastState, state, control); - } - else { - var dynamicTransition = genDynamicTransAnimations(element, group, state, transition); - transition.DynamicStoryboardCompleted = false; - var dynamicCompleted = function (sender, e) { - if (transition.Storyboard == null || transition.ExplicitStoryboardCompleted === true) { - group.StartNewThenStopOld(element, [state.Storyboard]); - group.RaiseCurrentStateChanged(element, lastState, state, control); - } - transition.DynamicStoryboardCompleted = true; - }; - var eventClosure = {}; - dynamicTransition.Completed.on(dynamicCompleted, eventClosure); - if (transition.Storyboard != null && transition.ExplicitStoryboardCompleted === true) { - var transitionCompleted = function (sender, e) { - if (transition.DynamicStoryboardCompleted === true) { - group.StartNewThenStopOld(element, [state.Storyboard]); - group.RaiseCurrentStateChanged(element, lastState, state, control); - } - transition.Storyboard.Completed.off(transitionCompleted, eventClosure); - transition.ExplicitStoryboardCompleted = true; - }; - transition.ExplicitStoryboardCompleted = false; - transition.Storyboard.Completed.on(transitionCompleted, eventClosure); - } - group.StartNewThenStopOld(element, [transition.Storyboard, dynamicTransition]); - group.RaiseCurrentStateChanging(element, lastState, state, control); - } - group.CurrentState = state; - return true; - }; - VisualStateManager.DestroyStoryboards = function (control, root) { - if (!root) - return false; - var groups = VisualStateManager.GetVisualStateGroups(root); - if (!groups) - return false; - var enumerator = groups.getEnumerator(); - while (enumerator.moveNext()) { - enumerator.current.StopCurrentStoryboards(root); - } - }; - VisualStateManager.Deactivate = function (control, root) { - if (!root) - return false; - var groups = VisualStateManager.GetVisualStateGroups(root); - if (!groups) - return false; - for (var en = groups.getEnumerator(); en.moveNext();) { - en.current.Deactivate(); - } - }; - VisualStateManager.Activate = function (control, root) { - if (!root) - return false; - var groups = VisualStateManager.GetVisualStateGroups(root); - if (!groups) - return false; - for (var en = groups.getEnumerator(); en.moveNext();) { - en.current.Activate(); - } - }; - VisualStateManager._GetTemplateRoot = function (control) { - if (control instanceof Fayde.Controls.UserControl) - return control.XamlNode.TemplateRoot; - var enumerator = control.XamlNode.GetVisualTreeEnumerator(); - var node = null; - if (enumerator.moveNext()) { - node = enumerator.current; - if (!(node instanceof Fayde.FENode)) - node = null; - } - return (node) ? node.XObject : null; - }; - VisualStateManager.GetGroup = function (control, name) { - var root = VisualStateManager._GetTemplateRoot(control); - if (!root) - return null; - var groups = VisualStateManager.GetVisualStateGroups(root); - if (!groups) - return null; - var enumerator = groups.getEnumerator(); - while (enumerator.moveNext()) { - if (enumerator.current.Name === name) - return enumerator.current; - } - return null; - }; - VisualStateManager._TryGetState = function (groups, stateName, data) { - var enumerator = groups.getEnumerator(); - while (enumerator.moveNext()) { - data.group = enumerator.current; - data.state = data.group.GetState(stateName); - if (data.state) - return true; - } - data.group = null; - data.state = null; - return false; - }; - VisualStateManager._GetTransition = function (element, group, from, to) { - if (!element) - throw new ArgumentException("element"); - if (!group) - throw new ArgumentException("group"); - if (!to) - throw new ArgumentException("to"); - var best = null; - var defaultTransition = null; - var bestScore = -1; - var enumerator = group.Transitions.getEnumerator(); - var transition; - while (enumerator.moveNext()) { - transition = enumerator.current; - if (!defaultTransition && transition.IsDefault) { - defaultTransition = transition; - continue; - } - var score = -1; - var transFromState = group.GetState(transition.From); - var transToState = group.GetState(transition.To); - if (from === transFromState) - score += 1; - else if (transFromState != null) - continue; - if (to === transToState) - score += 2; - else if (transToState != null) - continue; - if (score > bestScore) { - bestScore = score; - best = transition; - } - } - if (best != null) - return best; - return defaultTransition; - }; - VisualStateManager.VisualStateGroupsProperty = DependencyProperty.RegisterAttachedCore("VisualStateGroups", function () { return VSM.VisualStateGroupCollection; }, VisualStateManager); - VisualStateManager.CustomVisualStateManagerProperty = DependencyProperty.RegisterAttachedCore("CustomVisualStateManager", function () { return VisualStateManager; }, VisualStateManager); - return VisualStateManager; - })(Fayde.DependencyObject); - VSM.VisualStateManager = VisualStateManager; - Fayde.CoreLibrary.add(VisualStateManager); - var Storyboard = Media.Animation.Storyboard; - function genDynamicTransAnimations(root, group, state, transition) { - var dynamic = new Media.Animation.Storyboard(); - if (transition != null) { - dynamic.Duration = transition.GeneratedDuration; - } - else { - dynamic.Duration = new Duration(new TimeSpan()); - } - var currentAnimations = flattenTimelines(group.CurrentStoryboards); - var transitionAnimations = flattenTimelines([transition != null ? transition.Storyboard : null]); - var newStateAnimations = flattenTimelines([state.Storyboard]); - for (var i = 0, len = transitionAnimations.length; i < len; i++) { - removeTuple(transitionAnimations[i], currentAnimations); - removeTuple(transitionAnimations[i], newStateAnimations); - } - var tuple; - for (var i = 0, len = newStateAnimations.length; i < len; i++) { - tuple = newStateAnimations[i]; - var toAnimation = genToAnimation(root, tuple.timeline, true); - if (toAnimation != null) { - ensureTarget(root, tuple.timeline, toAnimation); - toAnimation.Duration = dynamic.Duration; - dynamic.Children.Add(toAnimation); - } - removeTuple(tuple, currentAnimations); - } - for (var i = 0, len = currentAnimations.length; i < len; i++) { - tuple = currentAnimations[i]; - var fromAnimation = tuple.timeline.GenerateFrom(); - if (fromAnimation != null) { - ensureTarget(root, tuple.timeline, fromAnimation); - fromAnimation.Duration = dynamic.Duration; - var propertyName = Media.Animation.Storyboard.GetTargetProperty(tuple.timeline); - Media.Animation.Storyboard.SetTargetProperty(fromAnimation, propertyName); - dynamic.Children.Add(fromAnimation); - } - } - return dynamic; - } - function ensureTarget(root, source, dest) { - if (source.ManualTarget != null) { - Storyboard.SetTarget(dest, source.ManualTarget); - } - else { - var targetName = Storyboard.GetTargetName(source); - if (targetName) - Storyboard.SetTargetName(dest, targetName); - } - } - function genToAnimation(root, timeline, isEntering) { - var result = timeline.GenerateTo(isEntering); - if (!result) - return null; - var targetName = Storyboard.GetTargetName(timeline); - Storyboard.SetTargetName(result, targetName); - if (targetName) { - var target = root.FindName(targetName); - if (target instanceof Fayde.DependencyObject) - Storyboard.SetTarget(result, target); - } - Storyboard.SetTargetProperty(result, Storyboard.GetTargetProperty(timeline)); - return result; - } - function flattenTimelines(storyboards) { - var tuples = []; - for (var i = 0, len = storyboards.length; i < len; i++) { - flattenTimeline(function (tp) { return tuples.push(tp); }, storyboards[i], null, null); - } - return tuples; - } - function flattenTimeline(callback, timeline, targetObject, targetPropertyPath) { - if (!timeline) - return; - var resolution = Storyboard.ResolveTarget(timeline); - if (resolution.Target) - targetObject = resolution.Target; - if (resolution.Property) - targetPropertyPath = resolution.Property; - if (timeline instanceof Storyboard) { - for (var i = 0, children = timeline.Children, len = children.Count; i < len; i++) { - flattenTimeline(callback, children.GetValueAt(i), targetObject, targetPropertyPath); - } - } - else { - if (targetPropertyPath && targetObject) { - var oto = { Value: targetObject }; - var propd = Fayde.Data.PropertyPath.ResolvePropertyPath(oto, targetPropertyPath, []); - if (propd && oto.Value) - callback({ dobj: oto.Value, propd: propd, timeline: timeline }); - } - } - } - function removeTuple(tuple, list) { - for (var i = 0, len = list.length; i < len; i++) { - var l = list[i]; - if (l.dobj === tuple.dobj && l.propd === tuple.propd) - return list.splice(i, 1); - } - } - })(VSM = Media.VSM || (Media.VSM = {})); - })(Media = Fayde.Media || (Fayde.Media = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Media; - (function (Media) { - var VSM; - (function (VSM) { - var VisualTransition = (function (_super) { - __extends(VisualTransition, _super); - function VisualTransition() { - _super.apply(this, arguments); - this.From = null; - this.To = null; - this._GeneratedDuration = null; - this.DynamicStoryboardCompleted = true; - this.ExplicitStoryboardCompleted = true; - } - Object.defineProperty(VisualTransition.prototype, "GeneratedDuration", { - get: function () { return this._GeneratedDuration; }, - set: function (value) { this._GeneratedDuration = nullstone.convertAnyToType(value, Duration); }, - enumerable: true, - configurable: true - }); - Object.defineProperty(VisualTransition.prototype, "IsDefault", { - get: function () { return this.From == null && this.To == null; }, - enumerable: true, - configurable: true - }); - VisualTransition.StoryboardProperty = DependencyProperty.Register("Storyboard", function () { return Media.Animation.Storyboard; }, VisualTransition); - return VisualTransition; - })(Fayde.DependencyObject); - VSM.VisualTransition = VisualTransition; - Fayde.Markup.Content(VisualTransition, VisualTransition.StoryboardProperty); - Fayde.CoreLibrary.add(VisualTransition); - })(VSM = Media.VSM || (Media.VSM = {})); - })(Media = Fayde.Media || (Fayde.Media = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Media; - (function (Media) { - var Videos; - (function (Videos) { - var VideoSourceBase = (function (_super) { - __extends(VideoSourceBase, _super); - function VideoSourceBase() { - _super.apply(this, arguments); - this.$watchers = []; - this.$autoplay = true; - } - VideoSourceBase.prototype.createElement = function () { - return document.createElement("video"); - }; - VideoSourceBase.prototype.reset = function () { - var _this = this; - _super.prototype.reset.call(this); - this.setAutoPlay(this.$autoplay); - this.$element.onerror = function (e) { return _this.onVideoErrored(e); }; - this.$element.oncanplay = function (e) { return _this.onVideoCanPlay(); }; - this.onVideoChanged(); - }; - VideoSourceBase.prototype.watch = function (watcher) { - var watchers = this.$watchers; - watchers.push(watcher); - return { - dispose: function () { - var index = watchers.indexOf(watcher); - if (index > -1) - watchers.splice(index, 1); - } - }; - }; - VideoSourceBase.prototype.setAutoPlay = function (value) { - this.$autoplay = value; - if (!value) - this.$element.removeAttribute("autoplay"); - else - this.$element.setAttribute("autoplay", "autoplay"); - }; - VideoSourceBase.prototype.getIsPlaying = function () { - var video = this.$element; - return !!video && !video.paused && !video.ended; - }; - VideoSourceBase.prototype.Play = function () { - this.$element.play(); - }; - VideoSourceBase.prototype.Pause = function () { - this.$element.pause(); - }; - VideoSourceBase.prototype.onVideoErrored = function (e) { - console.info("Failed to load: " + this.$element.src.toString()); - for (var i = 0, watchers = this.$watchers; i < watchers.length; i++) { - watchers[i].onErrored(this, e.error); - } - }; - VideoSourceBase.prototype.onVideoCanPlay = function () { - this.setMetrics(this.$element.videoWidth, this.$element.videoHeight); - for (var i = 0, watchers = this.$watchers; i < watchers.length; i++) { - watchers[i].onCanPlay(this); - } - }; - VideoSourceBase.prototype.onVideoChanged = function () { - for (var i = 0, watchers = this.$watchers; i < watchers.length; i++) { - watchers[i].onChanged(this); - } - }; - return VideoSourceBase; - })(Media.Imaging.ImageSource); - Videos.VideoSourceBase = VideoSourceBase; - Fayde.CoreLibrary.add(VideoSourceBase); - })(Videos = Media.Videos || (Media.Videos = {})); - })(Media = Fayde.Media || (Fayde.Media = {})); -})(Fayde || (Fayde = {})); -/// -var Fayde; -(function (Fayde) { - var Media; - (function (Media) { - var Videos; - (function (Videos) { - var VideoSource = (function (_super) { - __extends(VideoSource, _super); - function VideoSource(uri) { - _super.call(this); - this.VideoFailed = new nullstone.Event(); - this.VideoOpened = new nullstone.Event(); - if (uri) - this.UriSource = uri; - } - VideoSource.prototype._UriSourceChanged = function (args) { - var uri = args.NewValue; - if (Fayde.Uri.isNullOrEmpty(uri)) - this.reset(); - else - this.OnUriSourceChanged(args.OldValue, uri); - }; - VideoSource.prototype.OnUriSourceChanged = function (oldValue, newValue) { - if (!this.$element || !newValue) - this.reset(); - this.$element.src = Fayde.TypeManager.resolveResource(newValue); - this.$element.load(); - this.onVideoChanged(); - }; - VideoSource.prototype.onVideoErrored = function (e) { - _super.prototype.onVideoErrored.call(this, e); - this.VideoFailed.raise(this, null); - }; - VideoSource.UriSourceProperty = DependencyProperty.RegisterFull("UriSource", function () { return Fayde.Uri; }, VideoSource, undefined, function (bi, args) { return bi._UriSourceChanged(args); }, undefined, true); - return VideoSource; - })(Videos.VideoSourceBase); - Videos.VideoSource = VideoSource; - Fayde.CoreLibrary.add(VideoSource); - })(Videos = Media.Videos || (Media.Videos = {})); - })(Media = Fayde.Media || (Fayde.Media = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Text; - (function (Text) { - var History; - (function (History) { - var DeleteAction = (function () { - function DeleteAction(selectionAnchor, selectionCursor, buffer, start, length) { - this.SelectionAnchor = selectionAnchor; - this.SelectionCursor = selectionCursor; - this.Start = start; - this.Text = buffer.substr(start, length); - } - DeleteAction.prototype.Undo = function (bo) { - bo.text = Text.Buffer.insert(bo.text, this.Start, this.Text); - }; - DeleteAction.prototype.Redo = function (bo) { - bo.text = Text.Buffer.cut(bo.text, this.Start, this.Text.length); - return this.Start; - }; - return DeleteAction; - })(); - History.DeleteAction = DeleteAction; - })(History = Text.History || (Text.History = {})); - })(Text = Fayde.Text || (Fayde.Text = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Text; - (function (Text) { - var History; - (function (History) { - var InsertAction = (function () { - function InsertAction(selectionAnchor, selectionCursor, start, inserted, isAtomic) { - this.SelectionAnchor = selectionAnchor; - this.SelectionCursor = selectionCursor; - this.Start = start; - this.Text = inserted; - this.IsGrowable = isAtomic !== true; - } - InsertAction.prototype.Undo = function (bo) { - bo.text = Text.Buffer.cut(bo.text, this.Start, this.Text.length); - }; - InsertAction.prototype.Redo = function (bo) { - bo.text = Text.Buffer.insert(bo.text, this.Start, this.Text); - return this.Start + this.Text.length; - }; - InsertAction.prototype.Insert = function (start, text) { - if (!this.IsGrowable || start !== (this.Start + this.Text.length)) - return false; - this.Text += text; - return true; - }; - return InsertAction; - })(); - History.InsertAction = InsertAction; - })(History = Text.History || (Text.History = {})); - })(Text = Fayde.Text || (Fayde.Text = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Text; - (function (Text) { - var History; - (function (History) { - var ReplaceAction = (function () { - function ReplaceAction(selectionAnchor, selectionCursor, buffer, start, length, inserted) { - this.SelectionAnchor = selectionAnchor; - this.SelectionCursor = selectionCursor; - this.Start = start; - this.Length = length; - this.Deleted = buffer.substr(start, length); - this.Inserted = inserted; - } - ReplaceAction.prototype.Undo = function (bo) { - bo.text = Text.Buffer.cut(bo.text, this.Start, this.Inserted.length); - bo.text = Text.Buffer.insert(bo.text, this.Start, this.Deleted); - }; - ReplaceAction.prototype.Redo = function (bo) { - bo.text = Text.Buffer.cut(bo.text, this.Start, this.Length); - bo.text = Text.Buffer.insert(bo.text, this.Start, this.Inserted); - return this.Start + this.Inserted.length; - }; - return ReplaceAction; - })(); - History.ReplaceAction = ReplaceAction; - })(History = Text.History || (Text.History = {})); - })(Text = Fayde.Text || (Fayde.Text = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - var Text; - (function (Text) { - var History; - (function (History) { - var Tracker = (function () { - function Tracker(maxUndoCount) { - this.$$undo = []; - this.$$redo = []; - this.$$maxUndoCount = maxUndoCount; - } - Object.defineProperty(Tracker.prototype, "canUndo", { - get: function () { - return this.$$undo.length > 0; - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(Tracker.prototype, "canRedo", { - get: function () { - return this.$$redo.length > 0; - }, - enumerable: true, - configurable: true - }); - Tracker.prototype.undo = function (bufferholder) { - if (this.$$undo.length < 1) - return null; - var action = this.$$undo.pop(); - if (this.$$redo.push(action) > this.$$maxUndoCount) - this.$$redo.shift(); - action.Undo(bufferholder); - return action; - }; - Tracker.prototype.redo = function (bufferholder) { - if (this.$$redo.length < 1) - return; - var action = this.$$redo.pop(); - if (this.$$undo.push(action) > this.$$maxUndoCount) - this.$$undo.shift(); - return action.Redo(bufferholder); - }; - Tracker.prototype.enter = function (anchor, cursor, start, newText) { - var action = this.$$undo[this.$$undo.length - 1]; - if (!(action instanceof History.InsertAction) || !action.Insert(start, newText)) - return this.insert(anchor, cursor, start, newText); - if (this.$$redo.length > 0) - this.$$redo = []; - }; - Tracker.prototype.insert = function (anchor, cursor, start, newText) { - this.$doAction(new History.InsertAction(anchor, cursor, start, newText)); - }; - Tracker.prototype.replace = function (anchor, cursor, text, start, length, newText) { - this.$doAction(new History.ReplaceAction(anchor, cursor, text, start, length, newText)); - }; - Tracker.prototype.delete = function (anchor, cursor, text, start, length) { - this.$doAction(new Text.History.DeleteAction(anchor, cursor, text, start, length)); - }; - Tracker.prototype.$doAction = function (action) { - this.$$undo.push(action); - if (this.$$undo.length > this.$$maxUndoCount) - this.$$undo.shift(); - this.$$redo = []; - }; - return Tracker; - })(); - History.Tracker = Tracker; - })(History = Text.History || (Text.History = {})); - })(Text = Fayde.Text || (Fayde.Text = {})); -})(Fayde || (Fayde = {})); -var Fayde; -(function (Fayde) { - function debugLayers() { - var arr = []; - var app = Fayde.Application.Current; - for (var walker = app.MainSurface.walkLayers(); walker.step();) { - arr.push(sexify(walker.current)); - } - return arr; - } - Fayde.debugLayers = debugLayers; - function sexify(updater) { - var node = updater.getAttachedValue("$node"); - var xobj = node.XObject; - var ctor = new Function("return function " + xobj.constructor.name + "() { }")(); - var obj = new ctor(); - obj.assets = updater.assets; - obj.dirtyFlags = sexyflags(updater.assets.dirtyFlags); - obj.uiFlags = sexyuiflags(updater.assets.uiFlags); - obj.children = []; - obj.id = xobj._ID; - obj.node = node; - for (var walker = updater.tree.walk(); walker.step();) { - obj.children.push(sexify(walker.current)); - } - return obj; - } - Fayde.sexify = sexify; - function sexyflags(flags) { - var all = Object.keys(minerva.DirtyFlags) - .map(function (i) { return parseInt(i); }) - .filter(function (key) { return !isNaN(key); }) - .filter(isPowerOf2) - .sort(function (a, b) { return (a === b) ? 0 : (a < b ? -1 : 1); }) - .reverse(); - var remaining = flags; - return all - .filter(function (cur) { - if ((remaining & cur) === 0) - return false; - remaining &= ~cur; - return true; - }) - .map(function (cur) { return minerva.DirtyFlags[cur]; }) - .join("|"); - } - function sexyuiflags(flags) { - var all = Object.keys(minerva.UIFlags) - .map(function (i) { return parseInt(i); }) - .filter(function (key) { return !isNaN(key); }) - .filter(isPowerOf2) - .sort(function (a, b) { return (a === b) ? 0 : (a < b ? -1 : 1); }) - .reverse(); - var remaining = flags; - return all - .filter(function (cur) { - if ((remaining & cur) === 0) - return false; - remaining &= ~cur; - return true; - }) - .map(function (cur) { return minerva.UIFlags[cur]; }) - .join("|"); - } - function isPowerOf2(num) { - var y = Math.log2(num); - return Math.abs(Math.round(y) - y) < 0.000001; - } - function debugLayersRaw() { - var app = Fayde.Application.Current; - var output = ""; - for (var walker = app.MainSurface.walkLayers(); walker.step();) { - output += stringify(walker.current); - } - return output; - } - Fayde.debugLayersRaw = debugLayersRaw; - function stringify(updater, level) { - if (level === void 0) { level = 0; } - var node = updater.getAttachedValue("$node"); - var xobj = node.XObject; - var output = ""; - for (var i = 0; i < level; i++) { - output += "\t"; - } - output += xobj.constructor.name; - output += "[" + xobj._ID + "]"; - var ns = node.NameScope; - var nsr = !ns ? "^" : (ns.IsRoot ? "+" : "-"); - output += " [" + nsr + node.Name + "]"; - output += "\n"; - for (var walker = updater.tree.walk(); walker.step();) { - output += stringify(walker.current, level + 1); - } - return output; - } - function getById(id) { - var app = Fayde.Application.Current; - for (var walker = app.MainSurface.walkLayers(); walker.step();) { - for (var subwalker = walker.current.walkDeep(); subwalker.step();) { - var upd = subwalker.current; - var node = upd.getAttachedValue("$node"); - var xobj = node.XObject; - if (xobj._ID === id) { - return { - obj: xobj, - node: node, - updater: upd, - flags: sexyflags(upd.assets.dirtyFlags), - uiflags: sexyuiflags(upd.assets.uiFlags) - }; - } - } - } - } - Fayde.getById = getById; - function debugLayersFlatten() { - var arr = []; - var app = Fayde.Application.Current; - for (var walker = app.MainSurface.walkLayers(); walker.step();) { - for (var subwalker = walker.current.walkDeep(); subwalker.step();) { - arr.push(subwalker.current); - } - } - return arr; - } - Fayde.debugLayersFlatten = debugLayersFlatten; -})(Fayde || (Fayde = {})); - -//# sourceMappingURL=fayde.js.map \ No newline at end of file diff --git a/dist/fayde.js.map b/dist/fayde.js.map deleted file mode 100644 index b0cc8e2d..00000000 --- a/dist/fayde.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["_version.ts","polyfill/Function_bind.ts","polyfill/perfex.ts","Engine/ThemedLibrary.ts","Engine/ThemedLibraryResolver.ts","_Types.ts","Clipboard/BasicClipboard.ts","Clipboard/Create.ts","Clipboard/IClipboard.ts","Clipboard/NetscapeClipboard.ts","Collections/CollectionChangedEventArgs.ts","Collections/INotifyCollectionChanged.ts","Core/INotifyPropertyChanged.ts","Collections/ObservableCollection.ts","Collections/DeepObservableCollection.ts","Collections/FilteredCollection.ts","Collections/ItemPropertyChangedEventArgs.ts","Collections/ReadOnlyObservableCollection.ts","Core/XamlNode.ts","Core/XamlObject.ts","Core/Providers/PropertyStore.ts","Core/Providers/ImmutableStore.ts","Core/DependencyProperty.ts","Core/Providers/DataContextStore.ts","Core/DPReaction.ts","Runtime/React.ts","Core/DependencyObject.ts","Core/UIReaction.ts","Core/UIReactionAttached.ts","Core/Providers/InheritedStore.ts","Core/Enums.ts","Primitives/Font.ts","Core/InheritableOwner.ts","Core/UIElement.ts","Core/Providers/ResourcesStore.ts","Core/Providers/ActualSizeStore.ts","Core/FrameworkElement.ts","Markup/ContentAnnotation.ts","Controls/Border.ts","Core/Providers/IsEnabledStore.ts","Input/Keyboard.ts","Controls/Control.ts","Controls/ContentControl.ts","Controls/Enums.ts","Controls/Primitives/ButtonBase.ts","Controls/Button.ts","Core/XamlObjectCollection.ts","Controls/Panel.ts","Controls/Canvas.ts","Controls/Primitives/ToggleButton.ts","Controls/CheckBox.ts","Controls/ColumnDefinition.ts","Controls/ItemsControl.ts","Controls/Primitives/Selector.ts","Markup/Creator.ts","Controls/ContentPresenter.ts","Controls/Primitives/Popup.ts","Controls/Primitives/IScrollInfo.ts","Controls/ScrollContentPresenter.ts","Controls/Primitives/RangeBase.ts","Controls/Primitives/RepeatButton.ts","Controls/Primitives/Thumb.ts","Controls/Primitives/ScrollBar.ts","Controls/ScrollViewer.ts","Controls/ComboBox.ts","Controls/ListBoxItem.ts","Controls/ComboBoxItem.ts","Markup/Loader.ts","Controls/ControlTemplate.ts","Controls/Dialog.ts","Controls/UserControl.ts","Controls/Page.ts","Navigation/INavigate.ts","Controls/Frame.ts","Controls/Grid.ts","Controls/GridLength.ts","Controls/HeaderedContentControl.ts","Controls/HyperlinkButton.ts","Media/Enums.ts","Controls/Image.ts","Controls/ItemCollection.ts","Controls/ItemsPanelTemplate.ts","Controls/ItemsPresenter.ts","Controls/ListBox.ts","Controls/MediaElement.ts","Core/RoutedEventArgs.ts","Input/KeyEventArgs.ts","Controls/TextBoxBase.ts","Controls/PasswordBox.ts","Controls/ProgressBar.ts","Controls/RadioButton.ts","Controls/RichTextBox.ts","Controls/RowDefinition.ts","Controls/Slider.ts","Controls/StackPanel.ts","Controls/TextBlock.ts","Controls/TextBox.ts","Controls/ToolTip.ts","Primitives/Point.ts","Controls/ToolTipService.ts","Controls/VirtualizingPanel.ts","Controls/VirtualizingStackPanel.ts","Core/Clone.ts","Core/DataTemplate.ts","Core/DependencyPropertyChangedEventArgs.ts","Core/HierarchicalDataTemplate.ts","Core/LayoutInformation.ts","Core/NameScope.ts","Core/ResourceDictionary.ts","Core/RoutedEvent.ts","Core/RoutedPropertyChangedEvent.ts","Core/RoutedPropertyChangingEvent.ts","Core/Setter.ts","Core/SizeChangedEventArgs.ts","Core/Style.ts","Core/TemplateBinding.ts","Core/Triggers.ts","Core/VisualTreeEnum.ts","Core/VisualTreeHelper.ts","Core/Walkers.ts","Data/Binding.ts","Data/CollectionViewSource.ts","Data/DataErrorsChangedEventArgs.ts","Data/Enums.ts","Data/ICollectionView.ts","Data/IDataErrorInfo.ts","Data/INotifyDataErrorInfo.ts","Data/IValueConverter.ts","Data/RelativeSource.ts","Documents/TextReaction.ts","Documents/TextElement.ts","Documents/Block.ts","Documents/BlockCollection.ts","Documents/Inline.ts","Documents/InlineCollection.ts","Documents/LineBreak.ts","Documents/Paragraph.ts","Documents/Run.ts","Documents/Section.ts","Documents/Span.ts","Documents/Underline.ts","Engine/Application.ts","Engine/ClockTimer.ts","Engine/Exceptions.ts","Engine/FocusManager.ts","Engine/InputManager.ts","Engine/Inspection.ts","Engine/Surface.ts","Engine/Theme.ts","Engine/ThemeConfig.ts","Engine/ThemeManager.ts","Expressions/Expression.ts","Expressions/BindingExpressionBase.ts","Expressions/BindingExpression.ts","Expressions/DeferredValueExpression.ts","Expressions/EventBindingExpression.ts","Expressions/TemplateBindingExpression.ts","Input/ICommand.ts","Input/InteractionHelper.ts","Input/KeyInterop.ts","Input/KeyboardNavigation.ts","Input/MouseEventArgs.ts","Input/MouseInterop.ts","Input/TouchEventArgs.ts","Input/TouchInterop.ts","Input/TouchPoint.ts","Input/VirtualKeyboard.ts","Primitives/TimeSpan.ts","Primitives/DateTime.ts","Localization/Calendar.ts","Localization/DateTimeFormatInfo.ts","Localization/Format.ts","Localization/DateTimeFormatter.ts","Localization/NumberFormatInfo.ts","Localization/NumberFormatter.ts","Localization/TimeSpanFormatter.ts","MVVM/AutoModel.ts","MVVM/ObservableObject.ts","MVVM/ViewModelBase.ts","MVVM/DialogViewModel.ts","MVVM/Entity.ts","Navigation/Route.ts","MVVM/IViewModelProvider.ts","MVVM/RelayCommand.ts","Markup/EventBinding.ts","Markup/Resolver.ts","Markup/Retriever.ts","Markup/StaticResource.ts","Media/Brush.ts","Media/Geometry.ts","Media/EllipseGeometry.ts","Media/GeneralTransform.ts","Shapes/Enums.ts","Media/GeometryGroup.ts","Media/GradientBrush.ts","Media/GradientStop.ts","Media/LineGeometry.ts","Media/LinearGradientBrush.ts","Media/Matrix.ts","Media/Matrix3D.ts","Media/Projection.ts","Media/Matrix3DProjection.ts","Media/MediaParser.ts","Media/PathFigure.ts","Media/PathGeometry.ts","Media/PathSegment.ts","Media/PathSegments.ts","Media/PlaneProjection.ts","Media/RadialGradientBrush.ts","Media/RectangleGeometry.ts","Media/SolidColorBrush.ts","Media/TextOptions.ts","Media/TileBrush.ts","Media/Transform.ts","Media/Transforms.ts","Navigation/NavigationHelper.ts","Navigation/NavigationService.ts","Navigation/RouteMapper.ts","Navigation/RouteMapping.ts","Navigation/UriMapper.ts","Navigation/UriMapping.ts","Primitives/Color.ts","Primitives/CornerRadius.ts","Primitives/Duration.ts","Primitives/FontFamily.ts","Primitives/KeyTime.ts","Primitives/Length.ts","Primitives/Rect.ts","Primitives/Size.ts","Primitives/Thickness.ts","Primitives/TypeConversion.ts","Runtime/BError.ts","Runtime/Bootstrap.ts","Runtime/Configure.ts","Runtime/Debug.ts","Runtime/NumberEx.ts","Runtime/StringEx.ts","Runtime/TimelineProfile.ts","Shapes/DoubleCollection.ts","Shapes/Shape.ts","Shapes/Ellipse.ts","Shapes/Line.ts","Shapes/Path.ts","Shapes/PointCollection.ts","Shapes/Polygon.ts","Shapes/Polyline.ts","Shapes/Rectangle.ts","Text/Buffer.ts","Text/Proxy.ts","Validation/Emit.ts","Validation/Validation.ts","Validation/ValidationError.ts","Validation/ValidationErrorEventAction.ts","Validation/ValidationErrorEventArgs.ts","Controls/Internal/CursorAdvancer.ts","Controls/Internal/ItemContainersManager.ts","Controls/Internal/RangeCoercer.ts","Controls/Internal/TextBoxContentProxy.ts","Controls/Internal/TextBoxView.ts","Controls/Internal/VirtualizingPanelContainerOwner.ts","Controls/Primitives/DragEventArgs.ts","Controls/Primitives/Overlay.ts","Controls/Primitives/OverlayClosedEventArgs.ts","Controls/Primitives/ScrollData.ts","Controls/Primitives/ScrollEventArgs.ts","Controls/Primitives/SelectionChangedEventArgs.ts","Controls/Primitives/SelectorSelection.ts","Core/Providers/ImplicitStyleBroker.ts","Core/Providers/LocalStyleBroker.ts","Core/Providers/StyleSwapper.ts","Data/Property/PropertyPath.ts","Data/Property/PropertyPathParser.ts","Data/Property/PropertyPathWalker.ts","Input/TouchInternal/ActiveTouchBase.ts","Input/TouchInternal/TouchInteropBase.ts","Input/TouchInternal/NonPointerTouchInterop.ts","Input/TouchInternal/PointerTouchInterop.ts","Markup/Internal/ActiveObject.ts","Markup/Internal/ObjectActor.ts","Markup/Internal/PropertyActor.ts","Markup/Internal/ResourcesActor.ts","Media/Animation/Enums.ts","Media/Animation/RepeatBehavior.ts","Media/Animation/Timeline.ts","Media/Animation/AnimationBase.ts","Media/Animation/AnimationStore.ts","Media/Animation/AnimationUsingKeyFrames.ts","Media/Animation/BeginStoryboard.ts","Media/Animation/ColorAnimation.ts","Media/Animation/ColorAnimationUsingKeyFrames.ts","Media/Animation/KeyFrame.ts","Media/Animation/ColorKeyFrame.ts","Media/Animation/Curves.ts","Media/Animation/DoubleAnimation.ts","Media/Animation/DoubleAnimationUsingKeyFrames.ts","Media/Animation/DoubleKeyFrame.ts","Media/Animation/EasingFunctionBase.ts","Media/Animation/EasingFunctions.ts","Media/Animation/KeySpline.ts","Media/Animation/ObjectAnimationUsingKeyFrames.ts","Media/Animation/ObjectKeyFrame.ts","Media/Animation/PointAnimation.ts","Media/Animation/PointAnimationUsingKeyFrames.ts","Media/Animation/PointKeyFrame.ts","Media/Animation/Storyboard.ts","Media/Effects/Effect.ts","Media/Effects/BlurEffect.ts","Media/Effects/DropShadowEffect.ts","Media/Imaging/ImageSource.ts","Media/Imaging/BitmapSource.ts","Media/Imaging/BitmapImage.ts","Media/Imaging/ImageBrush.ts","Media/Imaging/ImageDecoder.ts","Media/LinearGradient/Interpolator.ts","Media/LinearGradient/Metrics.ts","Media/RadialGradient/Extender.ts","Media/VSM/VisualState.ts","Media/VSM/VisualStateGroup.ts","Media/VSM/VisualStateManager.ts","Media/VSM/VisualTransition.ts","Media/Videos/VideoSourceBase.ts","Media/Videos/VideoSource.ts","Text/History/DeleteAction.ts","Text/History/InsertAction.ts","Text/History/ReplaceAction.ts","Text/History/Tracker.ts","_Debug.ts"],"names":["Fayde","reset","start","stop","Fayde.ThemedLibrary","Fayde.ThemedLibrary.constructor","Fayde.ThemedLibrary.activeTheme","Fayde.ThemedLibrary.isActiveThemeInvalid","Fayde.ThemedLibrary.loadAsync","Fayde.ThemedLibrary.retrieveTheme","Fayde.ThemedLibrary.ensureThemeLoaded","Fayde.ThemedLibrary.getTheme","Fayde.ThemedLibrary.setThemeName","Fayde.ThemedLibrary.loadActiveTheme","Fayde.ThemedLibraryResolver","Fayde.ThemedLibraryResolver.constructor","Fayde.ThemedLibraryResolver.createLibrary","Fayde.ResourceTypeManager","Fayde.ResourceTypeManager.constructor","Fayde.ResourceTypeManager.createLibResolver","Fayde.ResourceTypeManager.resolveResource","Fayde.joinPaths","Fayde.RegisterType","Fayde.RegisterEnum","Fayde.Clipboard","Fayde.Clipboard.BasicClipboard","Fayde.Clipboard.BasicClipboard.constructor","Fayde.Clipboard.BasicClipboard.CopyText","Fayde.Clipboard.BasicClipboard.GetTextContents","Fayde.Clipboard.Create","Fayde.Clipboard.memoizePlaceholder","Fayde.Clipboard.NetscapeClipboard","Fayde.Clipboard.NetscapeClipboard.constructor","Fayde.Clipboard.NetscapeClipboard.CopyText","Fayde.Clipboard.NetscapeClipboard.GetTextContents","Fayde.Clipboard.selectContent","Fayde.Clipboard.tryRequestPrivilege","Fayde.Collections","Fayde.Collections.CollectionChangedAction","Fayde.Collections.CollectionChangedEventArgs","Fayde.Collections.CollectionChangedEventArgs.constructor","Fayde.Collections.CollectionChangedEventArgs.Reset","Fayde.Collections.CollectionChangedEventArgs.Replace","Fayde.Collections.CollectionChangedEventArgs.Add","Fayde.Collections.CollectionChangedEventArgs.AddRange","Fayde.Collections.CollectionChangedEventArgs.Remove","Fayde.PropertyChangedEventArgs","Fayde.PropertyChangedEventArgs.constructor","Fayde.Collections.ObservableCollection","Fayde.Collections.ObservableCollection.constructor","Fayde.Collections.ObservableCollection.getEnumerator","Fayde.Collections.ObservableCollection.Count","Fayde.Collections.ObservableCollection.ToArray","Fayde.Collections.ObservableCollection.GetValueAt","Fayde.Collections.ObservableCollection.SetValueAt","Fayde.Collections.ObservableCollection.Add","Fayde.Collections.ObservableCollection.AddRange","Fayde.Collections.ObservableCollection.Insert","Fayde.Collections.ObservableCollection.IndexOf","Fayde.Collections.ObservableCollection.Contains","Fayde.Collections.ObservableCollection.Remove","Fayde.Collections.ObservableCollection.RemoveAt","Fayde.Collections.ObservableCollection.Clear","Fayde.Collections.ObservableCollection._RaisePropertyChanged","Fayde.Collections.DeepObservableCollection","Fayde.Collections.DeepObservableCollection.constructor","Fayde.Collections.DeepObservableCollection._OnCollectionChanged","Fayde.Collections.DeepObservableCollection._OnItemPropertyChanged","Fayde.Collections.FilteredCollection","Fayde.Collections.FilteredCollection.constructor","Fayde.Collections.FilteredCollection.Source","Fayde.Collections.FilteredCollection.Filter","Fayde.Collections.FilteredCollection._SetSource","Fayde.Collections.FilteredCollection._OnSourceCollectionChanged","Fayde.Collections.FilteredCollection._OnSourceItemPropertyChanged","Fayde.Collections.FilteredCollection.Update","Fayde.Collections.ItemPropertyChangedEventArgs","Fayde.Collections.ItemPropertyChangedEventArgs.constructor","Fayde.Collections.ReadOnlyObservableCollection","Fayde.Collections.ReadOnlyObservableCollection.constructor","Fayde.Collections.ReadOnlyObservableCollection.Count","Fayde.Collections.ReadOnlyObservableCollection.GetValueAt","Fayde.Collections.ReadOnlyObservableCollection.getEnumerator","Fayde.Collections.ReadOnlyObservableCollection.ToArray","Fayde.Collections.ReadOnlyObservableCollection.IndexOf","Fayde.Collections.ReadOnlyObservableCollection.Contains","Fayde.Collections.ReadOnlyObservableCollection._OnCollectionChanged","Fayde.Collections.ReadOnlyObservableCollection._OnPropertyChanged","Fayde.Collections.ReadOnlyObservableCollection.SetValueAt","Fayde.Collections.ReadOnlyObservableCollection.Insert","Fayde.Collections.ReadOnlyObservableCollection.Add","Fayde.Collections.ReadOnlyObservableCollection.Remove","Fayde.Collections.ReadOnlyObservableCollection.RemoveAt","Fayde.Collections.ReadOnlyObservableCollection.Clear","Fayde.XamlNode","Fayde.XamlNode.constructor","Fayde.XamlNode.DataContext","Fayde.XamlNode.OnDataContextChanged","Fayde.XamlNode.IsEnabled","Fayde.XamlNode.OnIsEnabledChanged","Fayde.XamlNode.FindName","Fayde.XamlNode.SetName","Fayde.XamlNode.FindNameScope","Fayde.XamlNode.SetIsAttached","Fayde.XamlNode.OnIsAttachedChanged","Fayde.XamlNode.MonitorIsAttached","Fayde.XamlNode.AttachTo","Fayde.XamlNode.Detach","Fayde.XamlNode.OnParentChanged","Fayde.XamlNode.GetInheritedEnumerator","Fayde.XamlNode.SetShareable","Fayde.XamlObject","Fayde.XamlObject.constructor","Fayde.XamlObject.CreateNode","Fayde.XamlObject.Name","Fayde.XamlObject.Parent","Fayde.XamlObject.FindName","Fayde.XamlObject.Clone","Fayde.XamlObject.CloneCore","Fayde.XamlObject.IsInheritable","Fayde.Providers","Fayde.Providers.PropertyPrecedence","Fayde.Providers.GetStorage","Fayde.Providers.PropertyStore","Fayde.Providers.PropertyStore.constructor","Fayde.Providers.PropertyStore.GetValue","Fayde.Providers.PropertyStore.GetValuePrecedence","Fayde.Providers.PropertyStore.SetLocalValue","Fayde.Providers.PropertyStore.SetLocalStyleValue","Fayde.Providers.PropertyStore.SetImplicitStyle","Fayde.Providers.PropertyStore.ClearValue","Fayde.Providers.PropertyStore.OnPropertyChanged","Fayde.Providers.PropertyStore.ListenToChanged","Fayde.Providers.PropertyStore.CreateStorage","Fayde.Providers.PropertyStore.Clone","Fayde.Providers.ImmutableStore","Fayde.Providers.ImmutableStore.constructor","Fayde.Providers.ImmutableStore.GetValue","Fayde.Providers.ImmutableStore.GetValuePrecedence","Fayde.Providers.ImmutableStore.SetLocalValue","Fayde.Providers.ImmutableStore.ClearValue","Fayde.Providers.ImmutableStore.ListenToChanged","Fayde.Providers.ImmutableStore.Clone","DependencyProperty","DependencyProperty.constructor","DependencyProperty.Register","DependencyProperty.RegisterReadOnly","DependencyProperty.RegisterAttached","DependencyProperty.RegisterCore","DependencyProperty.RegisterReadOnlyCore","DependencyProperty.RegisterAttachedCore","DependencyProperty.RegisterImmutable","DependencyProperty.RegisterInheritable","DependencyProperty.RegisterFull","DependencyProperty.FinishRegister","DependencyProperty.ExtendTo","DependencyProperty.ValidateSetValue","DependencyProperty.GetDependencyProperty","ImmutableDependencyProperty","ImmutableDependencyProperty.constructor","ImmutableDependencyProperty.Initialize","Fayde.Providers.DataContextStore","Fayde.Providers.DataContextStore.constructor","Fayde.Providers.DataContextStore.GetValue","Fayde.Providers.DataContextStore.GetValuePrecedence","Fayde.Providers.DataContextStore.OnInheritedChanged","Fayde.Providers.DataContextStore.CreateStorage","Fayde.Providers.DataContextStore.OnPropertyChanged","Fayde.Providers.DataContextStore.TryUpdateDataContextExpression","Fayde.DPReaction","Fayde.reaction","Fayde.lReaction","Fayde.Incite","Fayde.ReactTo","Fayde.UnreactTo","Fayde.DONode","Fayde.DONode.constructor","Fayde.DONode.OnParentChanged","Fayde.DONode.DataContext","Fayde.DONode.OnDataContextChanged","Fayde.DependencyObject","Fayde.DependencyObject.constructor","Fayde.DependencyObject.CreateNode","Fayde.DependencyObject.GetValue","Fayde.DependencyObject.SetValue","Fayde.DependencyObject.SetValueInternal","Fayde.DependencyObject.SetCurrentValue","Fayde.DependencyObject.ClearValue","Fayde.DependencyObject.ReadLocalValue","Fayde.DependencyObject.ReadLocalValueInternal","Fayde.DependencyObject._AddExpression","Fayde.DependencyObject._RemoveExpression","Fayde.DependencyObject._HasDeferredValueExpression","Fayde.DependencyObject.GetBindingExpression","Fayde.DependencyObject.HasValueOrExpression","Fayde.DependencyObject.SetBinding","Fayde.DependencyObject.CloneCore","Fayde.DependencyObject.ListenToChanged","Fayde.UIReaction","Fayde.sReaction","Fayde.slReaction","Fayde.UIReactionAttached","Fayde.Providers.InheritedStore","Fayde.Providers.InheritedStore.constructor","Fayde.Providers.InheritedStore.GetValue","Fayde.Providers.InheritedStore.GetValuePrecedence","Fayde.Providers.InheritedStore.OnPropertyChanged","Fayde.Providers.InheritedStore.CreateStorage","Fayde.Providers.InheritedStore.PropagateInheritedOnAdd","Fayde.Providers.InheritedStore.ClearInheritedOnRemove","Fayde.Providers.InheritedStore.Propagate","Fayde.Providers.InheritedStore.SetInheritedValue","Fayde.Orientation","Fayde.Visibility","Fayde.CursorType","Fayde.HorizontalAlignment","Fayde.VerticalAlignment","Fayde.FlowDirection","Fayde.FontWeight","Fayde.TextAlignment","Fayde.TextDecorations","Fayde.LineStackingStrategy","Fayde.InheritableOwner","Fayde.InheritableOwner.constructor","Fayde.reactions","Fayde.UINode","Fayde.UINode.constructor","Fayde.UINode.GetVisualRoot","Fayde.UINode.SetIsLoaded","Fayde.UINode.OnVisualChildAttached","Fayde.UINode.OnVisualChildDetached","Fayde.UINode.SetVisualParentNode","Fayde.UINode.Focus","Fayde.UINode._EmitFocusChange","Fayde.UINode._EmitLostFocus","Fayde.UINode._EmitGotFocus","Fayde.UINode._EmitKeyDown","Fayde.UINode._EmitKeyUp","Fayde.UINode._EmitLostMouseCapture","Fayde.UINode._EmitMouseEvent","Fayde.UINode._EmitTouchEvent","Fayde.UINode._EmitGotTouchCapture","Fayde.UINode._EmitLostTouchCapture","Fayde.UINode.CanCaptureMouse","Fayde.UINode.CaptureMouse","Fayde.UINode.ReleaseMouseCapture","Fayde.UINode.IsAncestorOf","Fayde.UINode.TransformToVisual","Fayde.UIElement","Fayde.UIElement.constructor","Fayde.UIElement.CreateNode","Fayde.UIElement.CreateLayoutUpdater","Fayde.UIElement.IsItemsControl","Fayde.UIElement.VisualParent","Fayde.UIElement.IsInheritable","Fayde.UIElement.IsMouseOver","Fayde.UIElement.DesiredSize","Fayde.UIElement.RenderSize","Fayde.UIElement.Focus","Fayde.UIElement.CaptureMouse","Fayde.UIElement.ReleaseMouseCapture","Fayde.UIElement.IsAncestorOf","Fayde.UIElement.TransformToVisual","Fayde.UIElement.InvalidateMeasure","Fayde.UIElement.Measure","Fayde.UIElement.InvalidateArrange","Fayde.UIElement.Arrange","Fayde.UIElement.OnGotFocus","Fayde.UIElement.OnLostFocus","Fayde.UIElement.OnLostMouseCapture","Fayde.UIElement.OnKeyDown","Fayde.UIElement.OnKeyUp","Fayde.UIElement.OnMouseEnter","Fayde.UIElement.OnMouseLeave","Fayde.UIElement.OnMouseLeftButtonDown","Fayde.UIElement.OnMouseLeftButtonUp","Fayde.UIElement.OnMouseMove","Fayde.UIElement.OnMouseRightButtonDown","Fayde.UIElement.OnMouseRightButtonUp","Fayde.UIElement.OnMouseWheel","Fayde.UIElement.OnTouchDown","Fayde.UIElement.OnTouchUp","Fayde.UIElement.OnTouchEnter","Fayde.UIElement.OnTouchLeave","Fayde.UIElement.OnTouchMove","Fayde.UIElement.OnGotTouchCapture","Fayde.UIElement.OnLostTouchCapture","Fayde.UIElement._TriggersChanged","Fayde.Providers.ResourcesStore","Fayde.Providers.ResourcesStore.constructor","Fayde.Providers.ResourcesStore.GetValue","Fayde.Providers.ResourcesStore.GetValuePrecedence","Fayde.Providers.ResourcesStore.SetLocalValue","Fayde.Providers.ResourcesStore.SetLocalStyleValue","Fayde.Providers.ResourcesStore.SetImplicitStyle","Fayde.Providers.ResourcesStore.ClearValue","Fayde.Providers.ActualSizeStore","Fayde.Providers.ActualSizeStore.constructor","Fayde.Providers.ActualSizeStore.GetValue","Fayde.Providers.ActualSizeStore.GetValuePrecedence","Fayde.Providers.ActualSizeStore.SetLocalValue","Fayde.Providers.ActualSizeStore.SetLocalStyleValue","Fayde.Providers.ActualSizeStore.SetImplicitStyle","Fayde.Providers.ActualSizeStore.ClearValue","Fayde.FENode","Fayde.FENode.constructor","Fayde.FENode.constructor.setActualWidth","Fayde.FENode.constructor.setActualHeight","Fayde.FENode.constructor.onSizeChanged","Fayde.FENode.SetSubtreeNode","Fayde.FENode.GetInheritedEnumerator","Fayde.FENode.GetVisualTreeEnumerator","Fayde.FENode.SetIsLoaded","Fayde.FENode.OnIsLoadedChanged","Fayde.FENode.InvokeLoaded","Fayde.FENode.AttachVisualChild","Fayde.FENode.DetachVisualChild","Fayde.FENode.ApplyTemplateWithError","Fayde.FENode.DoApplyTemplateWithError","Fayde.FENode.FinishApplyTemplateWithError","Fayde.FENode.UpdateLayout","Fayde.FENode.DetachFromVisualParent","Fayde.FrameworkElement","Fayde.FrameworkElement.constructor","Fayde.FrameworkElement.CreateNode","Fayde.FrameworkElement.IsInheritable","Fayde.FrameworkElement.OnApplyTemplate","Fayde.FrameworkElement.OnBindingValidationError","Fayde.FrameworkElement.UpdateLayout","Fayde.Markup","ca","tca","Fayde.Controls","Fayde.Controls.Border","Fayde.Controls.Border.constructor","Fayde.Controls.Border.CreateLayoutUpdater","Fayde.Providers.IsEnabledStore","Fayde.Providers.IsEnabledStore.constructor","Fayde.Providers.IsEnabledStore.GetValue","Fayde.Providers.IsEnabledStore.GetValuePrecedence","Fayde.Providers.IsEnabledStore.SetLocalValue","Fayde.Providers.IsEnabledStore.OnPropertyChanged","Fayde.Providers.IsEnabledStore.CreateStorage","Fayde.Providers.IsEnabledStore.EmitInheritedChanged","Fayde.Input","Fayde.Input.KeyboardNavigationMode","Fayde.Input.ModifierKeys","Fayde.Input.Keyboard","Fayde.Input.Keyboard.constructor","Fayde.Input.Keyboard.RefreshModifiers","Fayde.Input.Keyboard.HasControl","Fayde.Input.Keyboard.HasAlt","Fayde.Input.Keyboard.HasShift","Fayde.Controls.ControlNode","Fayde.Controls.ControlNode.constructor","Fayde.Controls.ControlNode.TabTo","Fayde.Controls.ControlNode.ApplyTemplateWithError","Fayde.Controls.ControlNode.DoApplyTemplateWithError","Fayde.Controls.ControlNode.GetDefaultVisualTree","Fayde.Controls.ControlNode.OnIsAttachedChanged","Fayde.Controls.ControlNode.OnParentChanged","Fayde.Controls.ControlNode.OnTemplateChanged","Fayde.Controls.ControlNode.IsEnabled","Fayde.Controls.ControlNode.OnIsEnabledChanged","Fayde.Controls.ControlNode.Focus","Fayde.Controls.ControlNode.CanCaptureMouse","Fayde.Controls.Control","Fayde.Controls.Control.constructor","Fayde.Controls.Control.CreateNode","Fayde.Controls.Control.CreateLayoutUpdater","Fayde.Controls.Control.IsInheritable","Fayde.Controls.Control.IsFocused","Fayde.Controls.Control.GetTemplateChild","Fayde.Controls.Control.ApplyTemplate","Fayde.Controls.Control.GetDefaultStyle","Fayde.Controls.Control.OnIsEnabledChanged","Fayde.Controls.Control.OnGotFocus","Fayde.Controls.Control.OnLostFocus","Fayde.Controls.Control.UpdateVisualState","Fayde.Controls.Control.GoToStates","Fayde.Controls.Control.GoToStateCommon","Fayde.Controls.Control.GoToStateFocus","Fayde.Controls.Control.GoToStateSelection","Fayde.Controls.Control.UpdateValidationState","Fayde.Controls.Control.GoToStateValidation","Fayde.Controls.ContentControlNode","Fayde.Controls.ContentControlNode.constructor","Fayde.Controls.ContentControlNode.GetDefaultVisualTree","Fayde.Controls.ContentControlNode.OnContentChanged","Fayde.Controls.ContentControlNode.OnTemplateChanged","Fayde.Controls.ContentControlNode.CleanOldContent","Fayde.Controls.ContentControl","Fayde.Controls.ContentControl.constructor","Fayde.Controls.ContentControl.CreateNode","Fayde.Controls.ContentControl.OnContentPropertyChanged","Fayde.Controls.ContentControl.OnContentUriPropertyChanged","Fayde.Controls.ContentControl.OnContentChanged","Fayde.Controls.ContentControl.OnContentTemplateChanged","Fayde.Controls.ContentControl.OnContentUriChanged","Fayde.Controls.ContentControl._OnLoadedUri","Fayde.Controls.ContentControl._OnErroredUri","Fayde.Controls.TextWrapping","Fayde.Controls.ScrollBarVisibility","Fayde.Controls.TextTrimming","Fayde.Controls.ClickMode","Fayde.Controls.PlacementMode","Fayde.Controls.SelectionMode","Fayde.Controls.MediaElementState","Fayde.Controls.SelectionOnFocus","Fayde.Controls.Primitives","Fayde.Controls.Primitives.ButtonBase","Fayde.Controls.Primitives.ButtonBase.constructor","Fayde.Controls.Primitives.ButtonBase.OnIsPressedChanged","Fayde.Controls.Primitives.ButtonBase.OnIsEnabledChanged","Fayde.Controls.Primitives.ButtonBase.OnMouseEnter","Fayde.Controls.Primitives.ButtonBase.OnMouseLeave","Fayde.Controls.Primitives.ButtonBase.OnMouseMove","Fayde.Controls.Primitives.ButtonBase.OnMouseLeftButtonDown","Fayde.Controls.Primitives.ButtonBase.OnMouseLeftButtonUp","Fayde.Controls.Primitives.ButtonBase.OnGotFocus","Fayde.Controls.Primitives.ButtonBase.OnLostFocus","Fayde.Controls.Primitives.ButtonBase.OnTouchMove","Fayde.Controls.Primitives.ButtonBase.OnTouchDown","Fayde.Controls.Primitives.ButtonBase.OnTouchUp","Fayde.Controls.Primitives.ButtonBase.OnClick","Fayde.Controls.Primitives.ButtonBase._DoWithSuspend","Fayde.Controls.Primitives.ButtonBase.UpdateVisualState","Fayde.Controls.Primitives.ButtonBase.GoToStateCommon","Fayde.Controls.Primitives.ButtonBase._CaptureMouseInternal","Fayde.Controls.Primitives.ButtonBase._ReleaseMouseCaptureInternal","Fayde.Controls.Primitives.ButtonBase._IsValidPosition","Fayde.Controls.Primitives.ButtonBase.OnCommandChanged","Fayde.Controls.Primitives.ButtonBase.OnCommandCanExecuteChanged","Fayde.Controls.Primitives.ButtonBase.OnCommandParameterChanged","Fayde.Controls.Button","Fayde.Controls.Button.constructor","Fayde.Controls.Button.OnApplyTemplate","Fayde.Controls.Button.OnIsEnabledChanged","Fayde.XamlObjectCollection","Fayde.XamlObjectCollection.constructor","Fayde.XamlObjectCollection.AttachTo","Fayde.XamlObjectCollection.Count","Fayde.XamlObjectCollection.GetRange","Fayde.XamlObjectCollection.GetValueAt","Fayde.XamlObjectCollection.SetValueAt","Fayde.XamlObjectCollection.Add","Fayde.XamlObjectCollection.Insert","Fayde.XamlObjectCollection.Remove","Fayde.XamlObjectCollection.RemoveAt","Fayde.XamlObjectCollection.Clear","Fayde.XamlObjectCollection.IndexOf","Fayde.XamlObjectCollection.Contains","Fayde.XamlObjectCollection.CanAdd","Fayde.XamlObjectCollection.AddingToCollection","Fayde.XamlObjectCollection.RemovedFromCollection","Fayde.XamlObjectCollection.getEnumerator","Fayde.XamlObjectCollection.GetNodeEnumerator","Fayde.XamlObjectCollection._RaiseItemAdded","Fayde.XamlObjectCollection._RaiseItemRemoved","Fayde.XamlObjectCollection._RaiseItemReplaced","Fayde.XamlObjectCollection._RaiseCleared","Fayde.XamlObjectCollection.CloneCore","Fayde.XamlObjectCollection.ToArray","Fayde.Controls.PanelChildrenCollection","Fayde.Controls.PanelChildrenCollection.constructor","Fayde.Controls.PanelChildrenCollection.AddingToCollection","Fayde.Controls.PanelChildrenCollection.RemovedFromCollection","Fayde.Controls.PanelChildrenCollection._RaiseCleared","Fayde.Controls.PanelChildrenCollection._RaiseItemAdded","Fayde.Controls.PanelChildrenCollection._RaiseItemRemoved","Fayde.Controls.PanelChildrenCollection._RaiseItemReplaced","Fayde.Controls.PanelNode","Fayde.Controls.PanelNode.constructor","Fayde.Controls.PanelNode.AttachVisualChild","Fayde.Controls.PanelNode.DetachVisualChild","Fayde.Controls.Panel","Fayde.Controls.Panel.constructor","Fayde.Controls.Panel.CreateNode","Fayde.Controls.Panel.CreateLayoutUpdater","Fayde.Controls.Panel.GetZIndex","Fayde.Controls.Panel.SetZIndex","Fayde.Controls.reactions","Fayde.Controls.Canvas","Fayde.Controls.Canvas.constructor","Fayde.Controls.Canvas.CreateLayoutUpdater","Fayde.Controls.Canvas.GetTop","Fayde.Controls.Canvas.SetTop","Fayde.Controls.Canvas.GetLeft","Fayde.Controls.Canvas.SetLeft","Fayde.Controls.Primitives.ToggleButton","Fayde.Controls.Primitives.ToggleButton.constructor","Fayde.Controls.Primitives.ToggleButton.OnApplyTemplate","Fayde.Controls.Primitives.ToggleButton.OnContentChanged","Fayde.Controls.Primitives.ToggleButton.OnClick","Fayde.Controls.Primitives.ToggleButton.UpdateVisualState","Fayde.Controls.Primitives.ToggleButton.OnIsCheckedChanged","Fayde.Controls.Primitives.ToggleButton.OnToggle","Fayde.Controls.CheckBox","Fayde.Controls.CheckBox.constructor","Fayde.Controls.ColumnDefinition","Fayde.Controls.ColumnDefinition.constructor","Fayde.Controls.ColumnDefinition.setActualWidth","Fayde.Controls.ConvertColumnDefinition","Fayde.Controls.ColumnDefinitionCollection","Fayde.Controls.ColumnDefinitionCollection.constructor","Fayde.Controls.ColumnDefinitionCollection._RaiseItemAdded","Fayde.Controls.ColumnDefinitionCollection._RaiseItemRemoved","Fayde.Controls.ConvertColumnDefinitionCollection","Fayde.Controls.ItemsControlNode","Fayde.Controls.ItemsControlNode.constructor","Fayde.Controls.ItemsControlNode.GetDefaultVisualTree","Fayde.Controls.ItemsControl","Fayde.Controls.ItemsControl.constructor","Fayde.Controls.ItemsControl.CreateNode","Fayde.Controls.ItemsControl.IsItemsControl","Fayde.Controls.ItemsControl.GetIsItemsHost","Fayde.Controls.ItemsControl.SetIsItemsHost","Fayde.Controls.ItemsControl.OnDisplayMemberPathChanged","Fayde.Controls.ItemsControl.OnItemsSourceChanged","Fayde.Controls.ItemsControl.OnItemTemplateChanged","Fayde.Controls.ItemsControl.ItemContainersManager","Fayde.Controls.ItemsControl.PrepareContainerForItem","Fayde.Controls.ItemsControl.ClearContainerForItem","Fayde.Controls.ItemsControl.GetContainerForItem","Fayde.Controls.ItemsControl.IsItemItsOwnContainer","Fayde.Controls.ItemsControl._OnItemsUpdated","Fayde.Controls.ItemsControl._OnItemsSourceUpdated","Fayde.Controls.ItemsControl.OnItemsChanged","Fayde.Controls.ItemsControl.OnItemsAdded","Fayde.Controls.ItemsControl.OnItemsRemoved","Fayde.Controls.ItemsControl.UpdateContainerTemplate","Fayde.Controls.ItemsControl._GetDisplayMemberTemplate","Fayde.Controls.toArray","Fayde.Controls.DisplayTemplate","Fayde.Controls.DisplayTemplate.create","Fayde.Controls.Primitives.Selector","Fayde.Controls.Primitives.Selector.constructor","Fayde.Controls.Primitives.Selector.SynchronizeWithCurrentItem","Fayde.Controls.Primitives.Selector.SelectedItems","Fayde.Controls.Primitives.Selector._OnIsSynchronizedWithCurrentItemChanged","Fayde.Controls.Primitives.Selector._OnSelectedIndexChanged","Fayde.Controls.Primitives.Selector._OnSelectedItemChanged","Fayde.Controls.Primitives.Selector._OnSelectedValueChanged","Fayde.Controls.Primitives.Selector._OnSelectedValuePathChanged","Fayde.Controls.Primitives.Selector._OnSelectionModeChanged","Fayde.Controls.Primitives.Selector.OnApplyTemplate","Fayde.Controls.Primitives.Selector.OnItemsChanged","Fayde.Controls.Primitives.Selector.OnItemsSourceChanged","Fayde.Controls.Primitives.Selector.OnItemContainerStyleChanged","Fayde.Controls.Primitives.Selector.ClearContainerForItem","Fayde.Controls.Primitives.Selector.PrepareContainerForItem","Fayde.Controls.Primitives.Selector._GetValueFromItem","Fayde.Controls.Primitives.Selector._SelectItemFromValue","Fayde.Controls.Primitives.Selector.SelectAll","Fayde.Controls.Primitives.Selector._OnCurrentItemChanged","Fayde.Controls.Primitives.Selector._RaiseSelectionChanged","Fayde.Controls.Primitives.Selector.OnSelectionChanged","Fayde.Controls.Primitives.Selector.NotifyListItemClicked","Fayde.Controls.Primitives.Selector.NotifyListItemLoaded","Fayde.Controls.Primitives.Selector.NotifyListItemGotFocus","Fayde.Controls.Primitives.Selector.NotifyListItemLostFocus","Fayde.Markup.CreateXaml","Fayde.Controls.getFallbackTemplate","Fayde.Controls.ContentPresenterNode","Fayde.Controls.ContentPresenterNode.constructor","Fayde.Controls.ContentPresenterNode.ContentRoot","Fayde.Controls.ContentPresenterNode.DoApplyTemplateWithError","Fayde.Controls.ContentPresenterNode.ClearRoot","Fayde.Controls.ContentPresenterNode._ContentChanged","Fayde.Controls.ContentPresenterNode._ContentTemplateChanged","Fayde.Controls.ContentPresenterNode._ShouldInvalidateImplicitTemplate","Fayde.Controls.ContentPresenterNode._GetContentTemplate","Fayde.Controls.ContentPresenter","Fayde.Controls.ContentPresenter.constructor","Fayde.Controls.ContentPresenter.CreateNode","Fayde.Controls.Primitives.PopupNode","Fayde.Controls.Primitives.PopupNode.constructor","Fayde.Controls.Primitives.PopupNode.OnIsAttachedChanged","Fayde.Controls.Primitives.PopupNode.EnsureOverlay","Fayde.Controls.Primitives.PopupNode.EnsureCatcher","Fayde.Controls.Primitives.PopupNode.UpdateCatcher","Fayde.Controls.Primitives.PopupNode._RaiseClickedOutside","Fayde.Controls.Primitives.PopupNode.RegisterInitiator","Fayde.Controls.Primitives.Popup","Fayde.Controls.Primitives.Popup.constructor","Fayde.Controls.Primitives.Popup.CreateNode","Fayde.Controls.Primitives.Popup.CreateLayoutUpdater","Fayde.Controls.Primitives.Popup.WatchOutsideClick","Fayde.Controls.Primitives.reactions","Fayde.Controls.ScrollContentPresenter","Fayde.Controls.ScrollContentPresenter.constructor","Fayde.Controls.ScrollContentPresenter.CreateLayoutUpdater","Fayde.Controls.ScrollContentPresenter.ScrollOwner","Fayde.Controls.ScrollContentPresenter.CanHorizontallyScroll","Fayde.Controls.ScrollContentPresenter.CanVerticallyScroll","Fayde.Controls.ScrollContentPresenter.ExtentWidth","Fayde.Controls.ScrollContentPresenter.ExtentHeight","Fayde.Controls.ScrollContentPresenter.ViewportWidth","Fayde.Controls.ScrollContentPresenter.ViewportHeight","Fayde.Controls.ScrollContentPresenter.HorizontalOffset","Fayde.Controls.ScrollContentPresenter.VerticalOffset","Fayde.Controls.ScrollContentPresenter.LineUp","Fayde.Controls.ScrollContentPresenter.LineDown","Fayde.Controls.ScrollContentPresenter.LineLeft","Fayde.Controls.ScrollContentPresenter.LineRight","Fayde.Controls.ScrollContentPresenter.MouseWheelUp","Fayde.Controls.ScrollContentPresenter.MouseWheelDown","Fayde.Controls.ScrollContentPresenter.MouseWheelLeft","Fayde.Controls.ScrollContentPresenter.MouseWheelRight","Fayde.Controls.ScrollContentPresenter.PageUp","Fayde.Controls.ScrollContentPresenter.PageDown","Fayde.Controls.ScrollContentPresenter.PageLeft","Fayde.Controls.ScrollContentPresenter.PageRight","Fayde.Controls.ScrollContentPresenter.MakeVisible","Fayde.Controls.ScrollContentPresenter.SetHorizontalOffset","Fayde.Controls.ScrollContentPresenter.SetVerticalOffset","Fayde.Controls.ScrollContentPresenter.OnApplyTemplate","Fayde.Controls.computeScrollOffsetWithMinimalScroll","Fayde.Controls.Primitives.RangeBase","Fayde.Controls.Primitives.RangeBase.constructor","Fayde.Controls.Primitives.RangeBase.OnMinimumChanged","Fayde.Controls.Primitives.RangeBase.OnMaximumChanged","Fayde.Controls.Primitives.RangeBase.OnValueChanged","Fayde.Controls.Primitives.numberValidator","Fayde.Controls.Primitives.changeValidator","Fayde.Controls.Primitives.RepeatButton","Fayde.Controls.Primitives.RepeatButton.constructor","Fayde.Controls.Primitives.RepeatButton.OnApplyTemplate","Fayde.Controls.Primitives.RepeatButton.OnDelayChanged","Fayde.Controls.Primitives.RepeatButton.OnIntervalChanged","Fayde.Controls.Primitives.RepeatButton.OnIsEnabledChanged","Fayde.Controls.Primitives.RepeatButton.OnKeyDown","Fayde.Controls.Primitives.RepeatButton.OnKeyUp","Fayde.Controls.Primitives.RepeatButton.OnLostFocus","Fayde.Controls.Primitives.RepeatButton.OnMouseEnter","Fayde.Controls.Primitives.RepeatButton.OnMouseLeave","Fayde.Controls.Primitives.RepeatButton.OnMouseLeftButtonDown","Fayde.Controls.Primitives.RepeatButton.OnMouseLeftButtonUp","Fayde.Controls.Primitives.RepeatButton.OnMouseMove","Fayde.Controls.Primitives.RepeatButton._UpdateMousePosition","Fayde.Controls.Primitives.RepeatButton._UpdateRepeatState","Fayde.Controls.Primitives.RepeatButton._StartRepeatingAfterDelay","Fayde.Controls.Primitives.RepeatButton._OnTimeout","Fayde.Controls.Primitives.Thumb","Fayde.Controls.Primitives.Thumb.constructor","Fayde.Controls.Primitives.Thumb.OnApplyTemplate","Fayde.Controls.Primitives.Thumb.OnDraggingChanged","Fayde.Controls.Primitives.Thumb.OnGotFocus","Fayde.Controls.Primitives.Thumb.OnLostFocus","Fayde.Controls.Primitives.Thumb._FocusChanged","Fayde.Controls.Primitives.Thumb.OnLostMouseCapture","Fayde.Controls.Primitives.Thumb.OnMouseEnter","Fayde.Controls.Primitives.Thumb.OnMouseLeave","Fayde.Controls.Primitives.Thumb.OnMouseLeftButtonDown","Fayde.Controls.Primitives.Thumb.OnMouseMove","Fayde.Controls.Primitives.Thumb.OnLostTouchCapture","Fayde.Controls.Primitives.Thumb.OnTouchEnter","Fayde.Controls.Primitives.Thumb.OnTouchLeave","Fayde.Controls.Primitives.Thumb.OnTouchDown","Fayde.Controls.Primitives.Thumb.OnTouchUp","Fayde.Controls.Primitives.Thumb.OnTouchMove","Fayde.Controls.Primitives.Thumb.CancelDrag","Fayde.Controls.Primitives.Thumb._RaiseDragStarted","Fayde.Controls.Primitives.Thumb._RaiseDragDelta","Fayde.Controls.Primitives.Thumb._RaiseDragCompleted","Fayde.Controls.Primitives.Thumb.GoToStateCommon","Fayde.Controls.Primitives.ScrollBar","Fayde.Controls.Primitives.ScrollBar.constructor","Fayde.Controls.Primitives.ScrollBar.IsDragging","Fayde.Controls.Primitives.ScrollBar.OnApplyTemplate","Fayde.Controls.Primitives.ScrollBar.OnMaximumChanged","Fayde.Controls.Primitives.ScrollBar.OnMinimumChanged","Fayde.Controls.Primitives.ScrollBar.OnValueChanged","Fayde.Controls.Primitives.ScrollBar._OnThumbDragStarted","Fayde.Controls.Primitives.ScrollBar._OnThumbDragDelta","Fayde.Controls.Primitives.ScrollBar._OnThumbDragCompleted","Fayde.Controls.Primitives.ScrollBar._SmallDecrement","Fayde.Controls.Primitives.ScrollBar._SmallIncrement","Fayde.Controls.Primitives.ScrollBar._LargeDecrement","Fayde.Controls.Primitives.ScrollBar._LargeIncrement","Fayde.Controls.Primitives.ScrollBar._HandleSizeChanged","Fayde.Controls.Primitives.ScrollBar._OnOrientationChanged","Fayde.Controls.Primitives.ScrollBar._UpdateTrackLayout","Fayde.Controls.Primitives.ScrollBar._UpdateThumbSize","Fayde.Controls.Primitives.ScrollBar._GetTrackLength","Fayde.Controls.Primitives.ScrollBar._ConvertViewportSizeToDisplayUnits","Fayde.Controls.Primitives.ScrollBar._RaiseScroll","Fayde.Controls.ScrollViewer","Fayde.Controls.ScrollViewer.constructor","Fayde.Controls.ScrollViewer._ScrollBarVisibilityChanged","Fayde.Controls.ScrollViewer.GetHorizontalScrollBarVisibility","Fayde.Controls.ScrollViewer.SetHorizontalScrollBarVisibility","Fayde.Controls.ScrollViewer.HorizontalScrollBarVisibility","Fayde.Controls.ScrollViewer.GetVerticalScrollBarVisibility","Fayde.Controls.ScrollViewer.SetVerticalScrollBarVisibility","Fayde.Controls.ScrollViewer.VerticalScrollBarVisibility","Fayde.Controls.ScrollViewer.ScrollInfo","Fayde.Controls.ScrollViewer.InvalidateScrollInfo","Fayde.Controls.ScrollViewer._UpdateScrollBarVisibility","Fayde.Controls.ScrollViewer._UpdateScrollBar","Fayde.Controls.ScrollViewer.OnApplyTemplate","Fayde.Controls.ScrollViewer.OnMouseLeftButtonDown","Fayde.Controls.ScrollViewer.OnMouseWheel","Fayde.Controls.ScrollViewer.OnTouchDown","Fayde.Controls.ScrollViewer.OnTouchUp","Fayde.Controls.ScrollViewer.OnTouchMove","Fayde.Controls.ScrollViewer.OnKeyDown","Fayde.Controls.ScrollViewer.ScrollInDirection","Fayde.Controls.ScrollViewer.ScrollToHorizontalOffset","Fayde.Controls.ScrollViewer.ScrollToVerticalOffset","Fayde.Controls.ScrollViewer.LineUp","Fayde.Controls.ScrollViewer.LineDown","Fayde.Controls.ScrollViewer.LineLeft","Fayde.Controls.ScrollViewer.LineRight","Fayde.Controls.ScrollViewer.PageHome","Fayde.Controls.ScrollViewer.PageEnd","Fayde.Controls.ScrollViewer.PageUp","Fayde.Controls.ScrollViewer.PageDown","Fayde.Controls.ScrollViewer.PageLeft","Fayde.Controls.ScrollViewer.PageRight","Fayde.Controls.ScrollViewer._HandleScroll","Fayde.Controls.ScrollViewer._HandleHorizontalScroll","Fayde.Controls.ScrollViewer._HandleVerticalScroll","Fayde.Controls.ComboBox","Fayde.Controls.ComboBox.constructor","Fayde.Controls.ComboBox._IsDropDownOpenChanged","Fayde.Controls.ComboBox._MaxDropDownHeightChanged","Fayde.Controls.ComboBox._GetChildOfType","Fayde.Controls.ComboBox.OnApplyTemplate","Fayde.Controls.ComboBox.OnItemContainerStyleChanged","Fayde.Controls.ComboBox.IsItemItsOwnContainer","Fayde.Controls.ComboBox.GetContainerForItem","Fayde.Controls.ComboBox.PrepareContainerForItem","Fayde.Controls.ComboBox.GoToStateFocus","Fayde.Controls.ComboBox.OnIsEnabledChanged","Fayde.Controls.ComboBox.OnMouseLeftButtonDown","Fayde.Controls.ComboBox.OnMouseEnter","Fayde.Controls.ComboBox.OnMouseLeave","Fayde.Controls.ComboBox.OnKeyDown","Fayde.Controls.ComboBox.OnGotFocus","Fayde.Controls.ComboBox.OnLostFocus","Fayde.Controls.ComboBox._OnChildKeyDown","Fayde.Controls.ComboBox.OnSelectionChanged","Fayde.Controls.ComboBox._OnToggleChecked","Fayde.Controls.ComboBox._OnToggleUnchecked","Fayde.Controls.ComboBox._PopupClickedOutside","Fayde.Controls.ComboBox._UpdateDisplayedItem","Fayde.Controls.ComboBox._UpdatePopupSizeAndPosition","Fayde.Controls.ComboBox._UpdatePopupMaxHeight","Fayde.Controls.ListBoxItem","Fayde.Controls.ListBoxItem.constructor","Fayde.Controls.ListBoxItem.ParentSelector","Fayde.Controls.ListBoxItem.OnApplyTemplate","Fayde.Controls.ListBoxItem.OnMouseLeftButtonDown","Fayde.Controls.ListBoxItem.OnMouseEnter","Fayde.Controls.ListBoxItem.OnMouseLeave","Fayde.Controls.ListBoxItem.OnGotFocus","Fayde.Controls.ListBoxItem.OnLostFocus","Fayde.Controls.ListBoxItem.GoToStateSelection","Fayde.Controls.ListBoxItem.OnIsSelectedChanged","Fayde.Controls.ComboBoxItem","Fayde.Controls.ComboBoxItem.constructor","Fayde.Controls.ComboBoxItem.OnMouseLeftButtonUp","Fayde.Markup.FrameworkTemplate","Fayde.Markup.FrameworkTemplate.constructor","Fayde.Markup.FrameworkTemplate.Validate","Fayde.Markup.FrameworkTemplate.GetVisualTree","Fayde.Markup.setTemplateRoot","Fayde.Markup.setResources","Fayde.Markup.LoadXaml","Fayde.Markup.Load","Fayde.Markup.LoadImpl","Fayde.Markup.LoadImpl.extractType","Fayde.Markup.LoadImpl.extractDP","Fayde.Controls.ControlTemplate","Fayde.Controls.ControlTemplate.constructor","Fayde.Controls.ControlTemplate.Validate","Fayde.Controls.clickResultPropertyChanged","Fayde.Controls.buttonClicked","Fayde.Controls.Dialog","Fayde.Controls.Dialog.constructor","Fayde.Controls.Dialog.OnDialogResultChanged","Fayde.Controls.Dialog.GetClickResult","Fayde.Controls.Dialog.SetClickResult","Fayde.Controls.UserControl","Fayde.Controls.UserControl.constructor","Fayde.Controls.UserControl.CreateLayoutUpdater","Fayde.Controls.UserControl.InitializeComponent","Fayde.Controls.Page","Fayde.Controls.Page.constructor","Fayde.Controls.Page.GetAsync","Fayde.Navigation","Fayde.Controls.createErrorDoc","Fayde.Controls.getErrorPage","Fayde.Controls.Frame","Fayde.Controls.Frame.constructor","Fayde.Controls.Frame.OnIsLoadingChanged","Fayde.Controls.Frame.GoToStates","Fayde.Controls.Frame.GoToStateLoading","Fayde.Controls.Frame.Navigate","Fayde.Controls.Frame.GoForward","Fayde.Controls.Frame.GoBackward","Fayde.Controls.Frame.StopLoading","Fayde.Controls.Frame._FrameLoaded","Fayde.Controls.Frame._HandleDeepLink","Fayde.Controls.Frame._LoadContent","Fayde.Controls.Frame._HandleSuccess","Fayde.Controls.Frame._HandleError","Fayde.Controls.Frame._SetPage","Fayde.Controls.Frame.SourcePropertyChanged","Fayde.Controls.GridNode","Fayde.Controls.GridNode.constructor","Fayde.Controls.GridNode.ColumnDefinitionsChanged","Fayde.Controls.GridNode.RowDefinitionsChanged","Fayde.Controls.Grid","Fayde.Controls.Grid.constructor","Fayde.Controls.Grid.CreateNode","Fayde.Controls.Grid.CreateLayoutUpdater","Fayde.Controls.Grid.GetColumn","Fayde.Controls.Grid.SetColumn","Fayde.Controls.Grid.GetColumnSpan","Fayde.Controls.Grid.SetColumnSpan","Fayde.Controls.Grid.GetRow","Fayde.Controls.Grid.SetRow","Fayde.Controls.Grid.GetRowSpan","Fayde.Controls.Grid.SetRowSpan","Fayde.Controls.GridLength","Fayde.Controls.GridLength.constructor","Fayde.Controls.GridLength.Equals","Fayde.Controls.GridLength.Clone","Fayde.Controls.HeaderedContentControl","Fayde.Controls.HeaderedContentControl.constructor","Fayde.Controls.HeaderedContentControl.OnHeaderChanged","Fayde.Controls.HeaderedContentControl.OnHeaderTemplateChanged","Fayde.Controls.HyperlinkButton","Fayde.Controls.HyperlinkButton.constructor","Fayde.Controls.HyperlinkButton.OnApplyTemplate","Fayde.Controls.HyperlinkButton.OnClick","Fayde.Media","Fayde.Media.BrushMappingMode","Fayde.Media.GradientSpreadMethod","Fayde.Media.Stretch","Fayde.Media.AlignmentX","Fayde.Media.AlignmentY","Fayde.Media.TextHintingMode","Fayde.Controls.Image","Fayde.Controls.Image.constructor","Fayde.Controls.Image.CreateLayoutUpdater","Fayde.Controls.Image._SourceCoercer","Fayde.Controls.Image.OnImageErrored","Fayde.Controls.Image.OnImageLoaded","Fayde.Controls.Image.OnImageChanged","Fayde.Controls.Image.OnSourceChanged","Fayde.Controls.ItemCollection","Fayde.Controls.ItemCollection.constructor","Fayde.Controls.ItemCollection.ToArray","Fayde.Controls.ItemCollection.Count","Fayde.Controls.ItemCollection.GetValueAt","Fayde.Controls.ItemCollection.GetRange","Fayde.Controls.ItemCollection.SetValueAt","Fayde.Controls.ItemCollection.SetValueAtImpl","Fayde.Controls.ItemCollection.Add","Fayde.Controls.ItemCollection.AddImpl","Fayde.Controls.ItemCollection.AddRange","Fayde.Controls.ItemCollection.AddRangeImpl","Fayde.Controls.ItemCollection.Insert","Fayde.Controls.ItemCollection.InsertImpl","Fayde.Controls.ItemCollection.IndexOf","Fayde.Controls.ItemCollection.Contains","Fayde.Controls.ItemCollection.Remove","Fayde.Controls.ItemCollection.RemoveImpl","Fayde.Controls.ItemCollection.RemoveAt","Fayde.Controls.ItemCollection.RemoveAtImpl","Fayde.Controls.ItemCollection.Clear","Fayde.Controls.ItemCollection.ClearImpl","Fayde.Controls.ItemCollection._ValidateReadOnly","Fayde.Controls.ItemsPanelTemplate","Fayde.Controls.ItemsPanelTemplate.constructor","Fayde.Controls.ItemsPanelTemplate.GetVisualTree","Fayde.Controls.ItemsPresenterNode","Fayde.Controls.ItemsPresenterNode.constructor","Fayde.Controls.ItemsPresenterNode.ElementRoot","Fayde.Controls.ItemsPresenterNode.DoApplyTemplateWithError","Fayde.Controls.ItemsPresenter","Fayde.Controls.ItemsPresenter.constructor","Fayde.Controls.ItemsPresenter.CreateNode","Fayde.Controls.ItemsPresenter.ItemsControl","Fayde.Controls.ItemsPresenter.Panel","Fayde.Controls.ItemsPresenter.Get","Fayde.Controls.ItemsPresenter.OnItemsAdded","Fayde.Controls.ItemsPresenter.OnItemsRemoved","Fayde.Controls.ListBox","Fayde.Controls.ListBox.constructor","Fayde.Controls.ListBox.ScrollIntoView","Fayde.Controls.ListBox._NavigateByPage","Fayde.Controls.ListBox._ScrollInDirection","Fayde.Controls.ListBox._IsOnCurrentPage","Fayde.Controls.ListBox._GetFirstItemOnCurrentPage","Fayde.Controls.ListBox.OnItemContainerStyleChanged","Fayde.Controls.ListBox.OnKeyDown","Fayde.Controls.ListBox._GetIsVerticalOrientation","Fayde.Controls.ListBox.IsItemItsOwnContainer","Fayde.Controls.ListBox.GetContainerForItem","Fayde.Controls.ListBox.PrepareContainerForItem","Fayde.Controls.ListBox.OnGotFocus","Fayde.Controls.ListBox.OnLostFocus","Fayde.Controls.ListBox.NotifyListItemGotFocus","Fayde.Controls.ListBox.NotifyListItemLostFocus","Fayde.Controls.MediaElement","Fayde.Controls.MediaElement.constructor","Fayde.Controls.MediaElement.CreateLayoutUpdater","Fayde.Controls.MediaElement._SourceCoercer","Fayde.Controls.MediaElement.OnAutoPlayChanged","Fayde.Controls.MediaElement.OnSourceChanged","Fayde.Controls.MediaElement.OnVideoErrored","Fayde.Controls.MediaElement.OnVideoCanPlay","Fayde.Controls.MediaElement.OnVideoChanged","Fayde.Controls.MediaElement.Play","Fayde.Controls.MediaElement.Pause","Fayde.RoutedEventArgs","Fayde.RoutedEventArgs.constructor","Fayde.Input.Key","Fayde.Input.KeyboardEventArgs","Fayde.Input.KeyboardEventArgs.constructor","Fayde.Input.KeyEventArgs","Fayde.Input.KeyEventArgs.constructor","Fayde.Controls.TextBoxBase","Fayde.Controls.TextBoxBase.constructor","Fayde.Controls.TextBoxBase._SyncFont","Fayde.Controls.TextBoxBase.CreateView","Fayde.Controls.TextBoxBase.Cursor","Fayde.Controls.TextBoxBase.selectBasedonSelectionMode","Fayde.Controls.TextBoxBase.OnApplyTemplate","Fayde.Controls.TextBoxBase.OnLostFocus","Fayde.Controls.TextBoxBase.OnGotFocus","Fayde.Controls.TextBoxBase.OnMouseLeftButtonDown","Fayde.Controls.TextBoxBase.OnMouseLeftButtonUp","Fayde.Controls.TextBoxBase.OnMouseMove","Fayde.Controls.TextBoxBase.OnTouchDown","Fayde.Controls.TextBoxBase.OnTouchUp","Fayde.Controls.TextBoxBase.OnTouchMove","Fayde.Controls.TextBoxBase.OnKeyDown","Fayde.Controls.TextBoxBase.PostOnKeyDown","Fayde.Controls.TextBoxBase._KeyDownBackSpace","Fayde.Controls.TextBoxBase._KeyDownDelete","Fayde.Controls.TextBoxBase._KeyDownPageDown","Fayde.Controls.TextBoxBase._KeyDownPageUp","Fayde.Controls.TextBoxBase._KeyDownHome","Fayde.Controls.TextBoxBase._KeyDownEnd","Fayde.Controls.TextBoxBase._KeyDownLeft","Fayde.Controls.TextBoxBase._KeyDownRight","Fayde.Controls.TextBoxBase._KeyDownDown","Fayde.Controls.TextBoxBase._KeyDownUp","Fayde.Controls.positiveIntValidator","Fayde.Controls.PasswordBox","Fayde.Controls.PasswordBox.constructor","Fayde.Controls.PasswordBox.DisplayText","Fayde.Controls.ProgressBar","Fayde.Controls.ProgressBar.constructor","Fayde.Controls.ProgressBar.OnIsIndeterminateChanged","Fayde.Controls.ProgressBar.OnMinimumChanged","Fayde.Controls.ProgressBar.OnMaximumChanged","Fayde.Controls.ProgressBar.OnValueChanged","Fayde.Controls.ProgressBar.OnApplyTemplate","Fayde.Controls.ProgressBar.GoToStates","Fayde.Controls.ProgressBar._OnTrackSizeChanged","Fayde.Controls.ProgressBar._UpdateIndicator","Fayde.Controls.RadioButton","Fayde.Controls.RadioButton.constructor","Fayde.Controls.RadioButton.OnGroupNameChanged","Fayde.Controls.RadioButton.OnIsCheckedChanged","Fayde.Controls.RadioButton.OnToggle","Fayde.Controls.RadioButton.UpdateRadioButtonGroup","Fayde.Controls.register","Fayde.Controls.unregister","Fayde.Controls._RichTextBoxView","Fayde.Controls._RichTextBoxView.constructor","Fayde.Controls.RichTextBox","Fayde.Controls.RichTextBox.constructor","Fayde.Controls.RowDefinition","Fayde.Controls.RowDefinition.constructor","Fayde.Controls.RowDefinition.setActualHeight","Fayde.Controls.ConvertRowDefinition","Fayde.Controls.RowDefinitionCollection","Fayde.Controls.RowDefinitionCollection.constructor","Fayde.Controls.RowDefinitionCollection._RaiseItemAdded","Fayde.Controls.RowDefinitionCollection._RaiseItemRemoved","Fayde.Controls.ConvertRowDefinitionCollection","Fayde.Controls.Slider","Fayde.Controls.Slider.constructor","Fayde.Controls.Slider.OnApplyTemplate","Fayde.Controls.Slider.OnIsEnabledChanged","Fayde.Controls.Slider.OnMinimumChanged","Fayde.Controls.Slider.OnMaximumChanged","Fayde.Controls.Slider.OnValueChanged","Fayde.Controls.Slider._HandleSizeChanged","Fayde.Controls.Slider._OnOrientationChanged","Fayde.Controls.Slider._UpdateTrackLayout","Fayde.Controls.Slider._OnThumbDragStarted","Fayde.Controls.Slider._OnThumbDragDelta","Fayde.Controls.Slider.OnMouseEnter","Fayde.Controls.Slider.OnMouseLeave","Fayde.Controls.Slider.OnMouseLeftButtonDown","Fayde.Controls.Slider.OnLostMouseCapture","Fayde.Controls.Slider.OnKeyDown","Fayde.Controls.Slider.OnGotFocus","Fayde.Controls.Slider.OnLostFocus","Fayde.Controls.StackPanel","Fayde.Controls.StackPanel.constructor","Fayde.Controls.StackPanel.CreateLayoutUpdater","Fayde.Controls.TextBlockNode","Fayde.Controls.TextBlockNode.constructor","Fayde.Controls.TextBlockNode.GetInheritedEnumerator","Fayde.Controls.TextBlockNode.TextChanged","Fayde.Controls.TextBlockNode.InlinesChanged","Fayde.Controls.TextBlockNode.InlineChanged","Fayde.Controls.TextBlock","Fayde.Controls.TextBlock.constructor","Fayde.Controls.TextBlock.CreateNode","Fayde.Controls.TextBlock.CreateLayoutUpdater","Fayde.Controls.TextBlock.IsInheritable","Fayde.Controls.TextBox","Fayde.Controls.TextBox.constructor","Fayde.Controls.TextBox.OnApplyTemplate","Fayde.Controls.TextBox.DisplayText","Fayde.Controls.TextBox.OnMouseEnter","Fayde.Controls.TextBox.OnMouseLeave","Fayde.Controls.TextBox.OnGotFocus","Fayde.Controls.TextBox.OnLostFocus","Fayde.Controls.TextBox.GoToStateCommon","Fayde.Controls.TextBox.SelectAll","Fayde.Controls.TextBox.Select","Fayde.Controls.ToolTip","Fayde.Controls.ToolTip.constructor","Fayde.Controls.ToolTip.TooltipParent","Fayde.Controls.ToolTip.OnApplyTemplate","Fayde.Controls.ToolTip.OnHorizontalOffsetChanged","Fayde.Controls.ToolTip.OnVerticalOffsetChanged","Fayde.Controls.ToolTip.OnIsOpenChanged","Fayde.Controls.ToolTip.OnOffsetChanged","Fayde.Controls.ToolTip.OnLayoutUpdated","Fayde.Controls.ToolTip.OnTooltipParentDataContextChanged","Fayde.Controls.ToolTip.HookupParentPopup","Fayde.Controls.ToolTip.OnPopupOpened","Fayde.Controls.ToolTip.OnPopupClosed","Fayde.Controls.ToolTip.PerformPlacement","Fayde.Controls.ToolTip.GoToStates","Point","Point.constructor","Point.Clone","Point.LERP","Fayde.Controls.toolTipChanged","Fayde.Controls.ToolTipService","Fayde.Controls.ToolTipService.constructor","Fayde.Controls.ToolTipService.GetToolTip","Fayde.Controls.ToolTipService.SetToolTip","Fayde.Controls.ToolTipService.GetPlacement","Fayde.Controls.ToolTipService.SetPlacement","Fayde.Controls.ToolTipService.GetPlacementTarget","Fayde.Controls.ToolTipService.SetPlacementTarget","Fayde.Controls.ToolTipService.MousePosition","Fayde.Controls.ToolTipServiceSlave","Fayde.Controls.ToolTipServiceSlave.constructor","Fayde.Controls.ToolTipServiceSlave.SetRootVisual","Fayde.Controls.ToolTipServiceSlave.OnRootMouseMove","Fayde.Controls.ToolTipServiceSlave.RegisterTooltip","Fayde.Controls.ToolTipServiceSlave.UnregisterTooltip","Fayde.Controls.ToolTipServiceSlave.OnOwnerMouseEnter","Fayde.Controls.ToolTipServiceSlave.OnOwnerMouseLeave","Fayde.Controls.ToolTipServiceSlave.OnOwnerMouseLeftButtonDown","Fayde.Controls.ToolTipServiceSlave.OnOwnerKeyDown","Fayde.Controls.ToolTipServiceSlave.OnOwnerMouseEnterInternal","Fayde.Controls.ToolTipServiceSlave.ConvertToToolTip","Fayde.Controls.ToolTipServiceSlave.OpenAutomaticToolTip","Fayde.Controls.ToolTipServiceSlave.CloseAutomaticToolTip","Fayde.Controls.isSpecialKey","Fayde.Controls.VirtualizationMode","Fayde.Controls.VirtualizingPanel","Fayde.Controls.VirtualizingPanel.constructor","Fayde.Controls.VirtualizingPanel.GetVirtualizationMode","Fayde.Controls.VirtualizingPanel.SetVirtualizationMode","Fayde.Controls.VirtualizingPanel.GetIsVirtualizing","Fayde.Controls.VirtualizingPanel.SetIsVirtualizing","Fayde.Controls.VirtualizingPanel.ItemsControl","Fayde.Controls.VirtualizingPanel.OnItemsAdded","Fayde.Controls.VirtualizingPanel.OnItemsRemoved","Fayde.Controls.VirtualizingStackPanel","Fayde.Controls.VirtualizingStackPanel.constructor","Fayde.Controls.VirtualizingStackPanel.CreateLayoutUpdater","Fayde.Controls.VirtualizingStackPanel.ScrollOwner","Fayde.Controls.VirtualizingStackPanel.CanHorizontallyScroll","Fayde.Controls.VirtualizingStackPanel.CanVerticallyScroll","Fayde.Controls.VirtualizingStackPanel.ExtentWidth","Fayde.Controls.VirtualizingStackPanel.ExtentHeight","Fayde.Controls.VirtualizingStackPanel.ViewportWidth","Fayde.Controls.VirtualizingStackPanel.ViewportHeight","Fayde.Controls.VirtualizingStackPanel.HorizontalOffset","Fayde.Controls.VirtualizingStackPanel.VerticalOffset","Fayde.Controls.VirtualizingStackPanel.LineUp","Fayde.Controls.VirtualizingStackPanel.LineDown","Fayde.Controls.VirtualizingStackPanel.LineLeft","Fayde.Controls.VirtualizingStackPanel.LineRight","Fayde.Controls.VirtualizingStackPanel.MouseWheelUp","Fayde.Controls.VirtualizingStackPanel.MouseWheelDown","Fayde.Controls.VirtualizingStackPanel.MouseWheelLeft","Fayde.Controls.VirtualizingStackPanel.MouseWheelRight","Fayde.Controls.VirtualizingStackPanel.PageUp","Fayde.Controls.VirtualizingStackPanel.PageDown","Fayde.Controls.VirtualizingStackPanel.PageLeft","Fayde.Controls.VirtualizingStackPanel.PageRight","Fayde.Controls.VirtualizingStackPanel.MakeVisible","Fayde.Controls.VirtualizingStackPanel.SetHorizontalOffset","Fayde.Controls.VirtualizingStackPanel.SetVerticalOffset","Fayde.Controls.VirtualizingStackPanel.OnItemsAdded","Fayde.Controls.VirtualizingStackPanel.OnItemsRemoved","Fayde.Clone","Fayde.extend","Fayde.DataTemplate","Fayde.DataTemplate.constructor","DependencyPropertyChangedEventArgs","DependencyPropertyChangedEventArgs.constructor","Fayde.HierarchicalDataTemplate","Fayde.HierarchicalDataTemplate.constructor","Fayde.LayoutInformation","Fayde.LayoutInformation.constructor","Fayde.LayoutInformation.GetLayoutClip","Fayde.LayoutInformation.GetLayoutSlot","Fayde.NameScope","Fayde.NameScope.constructor","Fayde.NameScope.FindName","Fayde.NameScope.RegisterName","Fayde.NameScope.UnregisterName","Fayde.NameScope.Absorb","Fayde.ResourceDictionaryCollection","Fayde.ResourceDictionaryCollection.constructor","Fayde.ResourceDictionaryCollection.Get","Fayde.ResourceDictionaryCollection.AddingToCollection","Fayde.ResourceDictionaryCollection._AssertNoCycles","Fayde.ResourceDictionary","Fayde.ResourceDictionary.constructor","Fayde.ResourceDictionary.MergedDictionaries","Fayde.ResourceDictionary.Count","Fayde.ResourceDictionary.AttachTo","Fayde.ResourceDictionary.Contains","Fayde.ResourceDictionary.Get","Fayde.ResourceDictionary.Set","Fayde.ResourceDictionary.Remove","Fayde.ResourceDictionary.getEnumerator","Fayde.ResourceDictionary.GetNodeEnumerator","Fayde.ResourceDictionary._GetFromSource","Fayde.RoutedEvent","Fayde.RoutedEvent.constructor","Fayde.RoutedPropertyChangedEvent","Fayde.RoutedPropertyChangedEvent.constructor","Fayde.RoutedPropertyChangedEventArgs","Fayde.RoutedPropertyChangedEventArgs.constructor","Fayde.RoutedPropertyChangingEvent","Fayde.RoutedPropertyChangingEvent.constructor","Fayde.RoutedPropertyChangingEventArgs","Fayde.RoutedPropertyChangingEventArgs.constructor","Fayde.RoutedPropertyChangingEventArgs.IsCancellable","Fayde.RoutedPropertyChangingEventArgs.Cancel","Fayde.SetterCollection","Fayde.SetterCollection.constructor","Fayde.SetterCollection.Seal","Fayde.SetterCollection.AddingToCollection","Fayde.SetterCollection._ValidateSetter","Fayde.Setter","Fayde.Setter.constructor","Fayde.Setter.Seal","Fayde.Setter.Compare","Fayde.SizeChangedEventArgs","Fayde.SizeChangedEventArgs.constructor","Fayde.Style","Fayde.Style.constructor","Fayde.Style.Seal","Fayde.Style.Validate","Fayde.TemplateBinding","Fayde.TemplateBinding.constructor","Fayde.TemplateBinding.init","Fayde.TemplateBinding.transmute","Fayde.TriggerAction","Fayde.TriggerAction.constructor","Fayde.TriggerAction.Fire","Fayde.TriggerActionCollection","Fayde.TriggerActionCollection.constructor","Fayde.TriggerActionCollection.Fire","Fayde.TriggerBase","Fayde.TriggerBase.constructor","Fayde.TriggerBase.Attach","Fayde.TriggerBase.Detach","Fayde.EventTrigger","Fayde.EventTrigger.constructor","Fayde.EventTrigger.Attach","Fayde.EventTrigger.Detach","Fayde.EventTrigger._FireActions","Fayde.EventTrigger._ParseEventName","Fayde.TriggerCollection","Fayde.TriggerCollection.constructor","Fayde.TriggerCollection.ParentXamlObject","Fayde.TriggerCollection.AddingToCollection","Fayde.TriggerCollection.RemovedFromCollection","Fayde.TriggerCollection.AttachTarget","Fayde.TriggerCollection.DetachTarget","Fayde.VisualTreeEnum","Fayde.VisualTreeEnum.constructor","Fayde.VisualTreeEnum.GetAncestors","Fayde.AncestorsEnumerable","Fayde.AncestorsEnumerable.constructor","Fayde.AncestorsEnumerable.getEnumerator","Fayde.AncestorsEnumerable.getEnumerator.moveNext","Fayde.VisualTreeHelper","Fayde.VisualTreeHelper.constructor","Fayde.VisualTreeHelper.GetParent","Fayde.VisualTreeHelper.GetParentOfType","Fayde.VisualTreeHelper.GetRoot","Fayde.VisualTreeHelper.GetChild","Fayde.VisualTreeHelper.GetChildrenCount","Fayde.VisualTreeHelper.FindElementsInHostCoordinates","Fayde.VisualTreeHelper.___Debug","Fayde.VisualTreeHelper.___DebugTree","Fayde.VisualTreeHelper.___DebugUIElement","Fayde.VisualTreeHelper.___DebugGrid","Fayde.VisualTreeHelper.___DebugUIElementLayout","Fayde.VisualTreeHelper.___DebugLayout","Fayde.VisualTreeHelper.___GetById","Fayde.VisualTreeDirection","Fayde.mergeSetters","Fayde.SingleStyleWalker","Fayde.MultipleStylesWalker","Fayde.DeepTreeWalker","Fayde.compare","Fayde.getParentNavigationMode","Fayde.getActiveNavigationMode","Fayde.walkChildren","Fayde.TabNavigationWalker","Fayde.TabNavigationWalker.constructor","Fayde.TabNavigationWalker.FocusChild","Fayde.TabNavigationWalker.Focus","Fayde.Data","Fayde.Data.Binding","Fayde.Data.Binding.constructor","Fayde.Data.Binding.init","Fayde.Data.Binding.transmute","Fayde.Data.Binding.$$coerce","Fayde.Data.Binding.Clone","Fayde.Data.Binding.fromData","Fayde.Data.CollectionViewSource","Fayde.Data.CollectionViewSource.constructor","Fayde.Data.DataErrorsChangedEventArgs","Fayde.Data.DataErrorsChangedEventArgs.constructor","Fayde.Data.RelativeSourceMode","Fayde.Data.BindingMode","Fayde.Data.UpdateSourceTrigger","Fayde.Data.RelativeSource","Fayde.Data.RelativeSource.constructor","Fayde.Data.RelativeSource.init","Fayde.Data.RelativeSource.resolveTypeFields","Fayde.Data.RelativeSource.transmute","Fayde.Data.RelativeSource.Clone","Fayde.Data.RelativeSource.Find","Fayde.Data.findAncestor","Fayde.Data.findItemsControlAncestor","Fayde.Documents","Fayde.Documents.TextReaction","Fayde.Documents.reaction","Fayde.Documents.sReaction","Fayde.Documents.lReaction","Fayde.Documents.slReaction","Fayde.Documents.TextElementNode","Fayde.Documents.TextElementNode.constructor","Fayde.Documents.TextElementNode.GetInheritedEnumerator","Fayde.Documents.invalidateFont","Fayde.Documents.TextElement","Fayde.Documents.TextElement.constructor","Fayde.Documents.TextElement.CreateNode","Fayde.Documents.TextElement.IsInheritable","Fayde.Documents.TextElement._SerializeText","Fayde.Documents.TextElement.Equals","Fayde.Documents.Block","Fayde.Documents.Block.constructor","Fayde.Documents.BlockCollection","Fayde.Documents.BlockCollection.constructor","Fayde.Documents.BlockCollection._RaiseItemAdded","Fayde.Documents.BlockCollection._RaiseItemRemoved","Fayde.Documents.Inline","Fayde.Documents.Inline.constructor","Fayde.Documents.Inline.Equals","Fayde.Documents.Inline.IsInheritable","Fayde.Documents.InlineCollection","Fayde.Documents.InlineCollection.constructor","Fayde.Documents.InlineCollection._RaiseItemAdded","Fayde.Documents.InlineCollection._RaiseItemRemoved","Fayde.Documents.LineBreak","Fayde.Documents.LineBreak.constructor","Fayde.Documents.Paragraph","Fayde.Documents.Paragraph.constructor","Fayde.Documents.Paragraph.CreateNode","Fayde.Documents.Paragraph.InlinesChanged","Fayde.Documents.Run","Fayde.Documents.Run.constructor","Fayde.Documents.Run._SerializeText","Fayde.Documents.Run.IsInheritable","Fayde.Documents.reactions","Fayde.Documents.Section","Fayde.Documents.Section.constructor","Fayde.Documents.Section.CreateNode","Fayde.Documents.Section.BlocksChanged","Fayde.Documents.Span","Fayde.Documents.Span.constructor","Fayde.Documents.Span.CreateNode","Fayde.Documents.Span._SerializeText","Fayde.Documents.Span.InlinesChanged","Fayde.Documents.Underline","Fayde.Documents.Underline.constructor","Fayde.Application","Fayde.Application.constructor","Fayde.Application.OnThemeNameChanged","Fayde.Application.OnZoomFactorChanged","Fayde.Application._ApplyTheme","Fayde.Application.OnResized","Fayde.Application.RootVisual","Fayde.Application.$$SetRootVisual","Fayde.Application.Attach","Fayde.Application.Start","Fayde.Application.OnTicked","Fayde.Application.StopEngine","Fayde.Application.ProcessStoryboards","Fayde.Application.Update","Fayde.Application.Render","Fayde.Application.RegisterStoryboard","Fayde.Application.UnregisterStoryboard","Fayde.Application.GetAsync","Fayde.ClockTimer","Fayde.ClockTimer.constructor","Fayde.ClockTimer.RegisterTimer","Fayde.ClockTimer.UnregisterTimer","Fayde.ClockTimer._DoTick","Fayde.ClockTimer._RequestAnimationTick","Exception","Exception.constructor","Exception.toString","ArgumentException","ArgumentException.constructor","ArgumentNullException","ArgumentNullException.constructor","InvalidOperationException","InvalidOperationException.constructor","XamlParseException","XamlParseException.constructor","XamlMarkupParseException","XamlMarkupParseException.constructor","NotSupportedException","NotSupportedException.constructor","IndexOutOfRangeException","IndexOutOfRangeException.constructor","ArgumentOutOfRangeException","ArgumentOutOfRangeException.constructor","AttachException","AttachException.constructor","InvalidJsonException","InvalidJsonException.constructor","TargetInvocationException","TargetInvocationException.constructor","UnknownTypeException","UnknownTypeException.constructor","FormatException","FormatException.constructor","Fayde.Engine","Fayde.Engine.FocusManager","Fayde.Engine.FocusManager.constructor","Fayde.Engine.FocusManager.GetFocusToRoot","Fayde.Engine.FocusManager.OnNodeDetached","Fayde.Engine.FocusManager.TabFocus","Fayde.Engine.FocusManager.Focus","Fayde.Engine.FocusManager._FocusNode","Fayde.Engine.FocusManager.EmitChanges","Fayde.Engine.FocusManager.EmitChangesAsync","Fayde.Engine.FocusManager._EmitFocusList","Fayde.Engine.FocusManager.FocusAnyLayer","Fayde.Engine.elementPathToRoot","Fayde.Engine.InputManager","Fayde.Engine.InputManager.constructor","Fayde.Engine.InputManager.FocusedNode","Fayde.Engine.InputManager.Focus","Fayde.Engine.InputManager.Register","Fayde.Engine.InputManager.OnNodeDetached","Fayde.Engine.InputManager.SetIsUserInitiatedEvent","Fayde.Engine.InputManager.HandleKeyDown","Fayde.Engine.InputManager._EmitKeyDown","Fayde.Engine.InputManager.HandleMousePress","Fayde.Engine.InputManager.HandleMouseRelease","Fayde.Engine.InputManager.HandleMouseEvent","Fayde.Engine.InputManager._EmitMouseList","Fayde.Engine.InputManager.HitTestPoint","Fayde.Engine.InputManager.UpdateCursorFromInputList","Fayde.Engine.InputManager.SetMouseCapture","Fayde.Engine.InputManager.ReleaseMouseCapture","Fayde.Engine.InputManager._PerformCapture","Fayde.Engine.InputManager._PerformReleaseCapture","Fayde.Engine.findFirstCommonElement","Fayde.Engine.Inspection","Fayde.Engine.Inspection.constructor","Fayde.Engine.Inspection.TryHandle","Fayde.Engine.Inspection.Kill","Fayde.Engine.showMenu","Fayde.Engine.createMenu","Fayde.Engine.fillMenu","Fayde.Engine.createMenuItem","Fayde.Engine.serializeUINode","Fayde.Engine.handleMenuItemClick","Fayde.Engine.handleMenuItemEnter","Fayde.Engine.handleMenuItemLeave","Fayde.Surface","Fayde.Surface.constructor","Fayde.Surface.init","Fayde.Surface.Attach","Fayde.Surface.attachLayer","Fayde.Surface.Detach","Fayde.Surface.detachLayer","Fayde.Surface.updateLayout","Fayde.Surface.$$onLayoutUpdated","Fayde.Surface.Focus","Fayde.Surface.HasFocus","Fayde.Surface.GetFocusedElement","Fayde.Surface.RemoveFocusFrom","Fayde.Surface.SetMouseCapture","Fayde.Surface.ReleaseMouseCapture","Fayde.Surface.$$handleResize","Fayde.Surface.$$stretchCanvas","Fayde.Surface.$$updateZoom","Fayde.Surface.onZoomChanged","Fayde.Surface.$$setScrollbars","Fayde.Theme","Fayde.Theme.constructor","Fayde.Theme.RetrieveAsync","Fayde.Theme.LoadAsync","Fayde.Theme.GetImplicitStyle","Fayde.ThemeConfig","Fayde.ThemeConfig.GetRequestUri","Fayde.ThemeConfig.OverrideRequestUri","Fayde.ThemeConfig.Set","Fayde.ThemeConfig.processTemplate","Fayde.ThemeManagerImpl","Fayde.ThemeManagerImpl.constructor","Fayde.ThemeManagerImpl.$$onLibraryCreated","Fayde.ThemeManagerImpl.LoadAsync","Fayde.ThemeManagerImpl.FindStyle","Fayde.ThemeManagerImpl.$$findLib","Fayde.Expression","Fayde.Expression.constructor","Fayde.Expression.Seal","Fayde.Expression.OnAttached","Fayde.Expression.OnDetached","Fayde.Expression.GetValue","Fayde.Expression.OnDataContextChanged","Fayde.Data.BindingExpressionBase","Fayde.Data.BindingExpressionBase.constructor","Fayde.Data.BindingExpressionBase.DataItem","Fayde.Data.BindingExpressionBase.Seal","Fayde.Data.BindingExpressionBase.OnAttached","Fayde.Data.BindingExpressionBase.GetValue","Fayde.Data.BindingExpressionBase._OnSourceAvailable","Fayde.Data.BindingExpressionBase._FindSource","Fayde.Data.BindingExpressionBase._FindSourceByElementName","Fayde.Data.BindingExpressionBase.OnDetached","Fayde.Data.BindingExpressionBase.IsBrokenChanged","Fayde.Data.BindingExpressionBase.ValueChanged","Fayde.Data.BindingExpressionBase.UpdateSource","Fayde.Data.BindingExpressionBase._TryUpdateSourceObject","Fayde.Data.BindingExpressionBase._UpdateSourceCallback","Fayde.Data.BindingExpressionBase._TargetLostFocus","Fayde.Data.BindingExpressionBase._ShouldUpdateSource","Fayde.Data.BindingExpressionBase._UpdateSourceObject","Fayde.Data.BindingExpressionBase.OnDataContextChanged","Fayde.Data.BindingExpressionBase._Invalidate","Fayde.Data.BindingExpressionBase.Refresh","Fayde.Data.BindingExpressionBase._ConvertFromTargetToSource","Fayde.Data.BindingExpressionBase._ConvertToType","Fayde.Data.BindingExpressionBase._MaybeEmitError","Fayde.Data.BindingExpressionBase._AttachToNotifyError","Fayde.Data.BindingExpressionBase._NotifyErrorsChanged","Fayde.Data.getMentor","Fayde.Data.getDataError","Fayde.Data.BindingExpression","Fayde.Data.BindingExpression.constructor","Fayde.DeferredValueExpression","Fayde.DeferredValueExpression.constructor","Fayde.DeferredValueExpression.GetValue","Fayde.DeferredValueExpression.toString","Fayde.EventBindingExpression","Fayde.EventBindingExpression.constructor","Fayde.EventBindingExpression.Seal","Fayde.EventBindingExpression.Init","Fayde.EventBindingExpression.GetValue","Fayde.EventBindingExpression.OnAttached","Fayde.EventBindingExpression.OnDetached","Fayde.EventBindingExpression.OnDataContextChanged","Fayde.EventBindingExpression._Callback","Fayde.findSource","Fayde.findSourceByElementName","Fayde.TemplateBindingExpression","Fayde.TemplateBindingExpression.constructor","Fayde.TemplateBindingExpression.Seal","Fayde.TemplateBindingExpression.GetValue","Fayde.TemplateBindingExpression.OnAttached","Fayde.TemplateBindingExpression.OnDetached","Fayde.TemplateBindingExpression.OnSourcePropertyChanged","Fayde.TemplateBindingExpression._AttachListener","Fayde.TemplateBindingExpression._DetachListener","Fayde.Input.InteractionHelper","Fayde.Input.InteractionHelper.GetLogicalKey","Fayde.Input.CreateKeyInterop","Fayde.Input.KeyInterop","Fayde.Input.KeyInterop.constructor","Fayde.Input.KeyInterop.RegisterEvents","Fayde.Input.KeyInterop.CreateArgsPress","Fayde.Input.KeyInterop.CreateArgsDown","Fayde.Input.KeyInterop.IsPreventable","Fayde.Input.IEKeyInterop","Fayde.Input.IEKeyInterop.constructor","Fayde.Input.IEKeyInterop.CreateArgsPress","Fayde.Input.IEKeyInterop.CreateArgsDown","Fayde.Input.NetscapeKeyInterop","Fayde.Input.NetscapeKeyInterop.constructor","Fayde.Input.NetscapeKeyInterop.CreateArgsPress","Fayde.Input.NetscapeKeyInterop.CreateArgsDown","Fayde.Input.NetscapeKeyInterop.IsPreventable","Fayde.Input.KeyboardNavigation","Fayde.Input.KeyboardNavigation.constructor","Fayde.Input.KeyboardNavigation.GetAcceptsReturn","Fayde.Input.KeyboardNavigation.SetAcceptsReturn","Fayde.Input.KeyboardNavigation.GetControlTabNavigation","Fayde.Input.KeyboardNavigation.SetControlTabNavigation","Fayde.Input.KeyboardNavigation.GetDirectionalNavigation","Fayde.Input.KeyboardNavigation.SetDirectionalNavigation","Fayde.Input.KeyboardNavigation.GetIsTabStop","Fayde.Input.KeyboardNavigation.SetIsTabStop","Fayde.Input.KeyboardNavigation.GetTabIndex","Fayde.Input.KeyboardNavigation.SetTabIndex","Fayde.Input.KeyboardNavigation.GetTabNavigation","Fayde.Input.KeyboardNavigation.SetTabNavigation","Fayde.Input.MouseEventArgs","Fayde.Input.MouseEventArgs.constructor","Fayde.Input.MouseEventArgs.GetPosition","Fayde.Input.MouseButtonEventArgs","Fayde.Input.MouseButtonEventArgs.constructor","Fayde.Input.MouseWheelEventArgs","Fayde.Input.MouseWheelEventArgs.constructor","Fayde.Input.MouseInputType","Fayde.Input.CreateMouseInterop","Fayde.Input.MouseInterop","Fayde.Input.MouseInterop.constructor","Fayde.Input.MouseInterop.RegisterEvents","Fayde.Input.MouseInterop._CalcOffset","Fayde.Input.MouseInterop._GetMousePosition","Fayde.Input.MouseInterop.IsLeftButton","Fayde.Input.MouseInterop.IsRightButton","Fayde.Input.MouseInterop._HandleContextMenu","Fayde.Input.MouseInterop._HandleButtonPress","Fayde.Input.MouseInterop._HandleButtonRelease","Fayde.Input.MouseInterop._HandleOut","Fayde.Input.MouseInterop._HandleMove","Fayde.Input.MouseInterop._HandleWheel","Fayde.Input.MouseInterop.CreateEventArgs","Fayde.Input.MouseInterop.DisableNextContextMenu","Fayde.Input.IEMouseInterop","Fayde.Input.IEMouseInterop.constructor","Fayde.Input.IEMouseInterop.DisableNextContextMenu","Fayde.Input.IEMouseInterop.RegisterEvents","Fayde.Input.IEMouseInterop._HandleIEContextMenu","Fayde.Input.NetscapeMouseInterop","Fayde.Input.NetscapeMouseInterop.constructor","Fayde.Input.NetscapeMouseInterop.IsRightButton","Fayde.Input.createModifiers","Fayde.Input.TouchEventArgs","Fayde.Input.TouchEventArgs.constructor","Fayde.Input.TouchEventArgs.GetTouchPoint","Fayde.Input.TouchInputType","Fayde.Input.CreateTouchInterop","Fayde.Input.DummyTouchInterop","Fayde.Input.DummyTouchInterop.constructor","Fayde.Input.DummyTouchInterop.Register","Fayde.Input.TouchPoint","Fayde.Input.TouchPoint.constructor","Fayde.Input.VirtualKeyboard","Fayde.Input.VirtualKeyboard.constructor","Fayde.Input.VirtualKeyboard.Init","Fayde.Input.VirtualKeyboard.Launch","TimeSpan","TimeSpan.constructor","TimeSpan.Zero","TimeSpan.MinValue","TimeSpan.MaxValue","TimeSpan.FromDays","TimeSpan.FromHours","TimeSpan.FromMinutes","TimeSpan.FromSeconds","TimeSpan.FromMilliseconds","TimeSpan.Days","TimeSpan.Hours","TimeSpan.Minutes","TimeSpan.Seconds","TimeSpan.Milliseconds","TimeSpan.Ticks","TimeSpan.TotalDays","TimeSpan.TotalHours","TimeSpan.TotalMinutes","TimeSpan.TotalSeconds","TimeSpan.TotalMilliseconds","TimeSpan.AddTicks","TimeSpan.AddMilliseconds","TimeSpan.Add","TimeSpan.Subtract","TimeSpan.Multiply","TimeSpan.Divide","TimeSpan.CompareTo","TimeSpan.IsZero","TimeSpan.GetJsDelay","TimeSpan.toString","TimeSpan.valueOf","DayOfWeek","DateTimeKind","DateTime","DateTime.constructor","DateTime.MinValue","DateTime.MaxValue","DateTime.Now","DateTime.Today","DateTime.Compare","DateTime.DaysInMonth","DateTime.Ticks","DateTime.Kind","DateTime.Date","DateTime.Day","DateTime.DayOfWeek","DateTime.DayOfYear","DateTime.Hour","DateTime.Millisecond","DateTime.Minute","DateTime.Month","DateTime.Second","DateTime.TimeOfDay","DateTime.Year","DateTime.AddYears","DateTime.AddMonths","DateTime.AddDays","DateTime.AddHours","DateTime.AddMinutes","DateTime.AddSeconds","DateTime.AddMilliseconds","DateTime.Add","DateTime.AddTicks","DateTime.Subtract","DateTime.ToUniversalTime","DateTime.toString","DateTime.valueOf","Fayde.Localization","Fayde.Localization.Calendar","Fayde.Localization.Calendar.constructor","Fayde.Localization.CalendarWeekRule","Fayde.Localization.DateTimeFormatInfo","Fayde.Localization.DateTimeFormatInfo.constructor","Fayde.Localization.DateTimeFormatInfo.GetEraName","Fayde.Localization.DateTimeFormatInfo.ParseRepeatPattern","Fayde.Localization.DateTimeFormatInfo.ParseNextChar","Fayde.Localization.DateTimeFormatInfo.ParseQuoteString","Fayde.Localization.DateTimeFormatInfo.FormatDigits","Fayde.Localization.DateTimeFormatInfo.FormatMonth","Fayde.Localization.DateTimeFormatInfo.FormatDayOfWeek","Fayde.Localization.DateTimeFormatInfo.HebrewFormatDigits","Fayde.Localization.DateTimeFormatInfo.FormatHebrewMonthName","Fayde.Localization.Format","Fayde.Localization.FormatSingle","Fayde.Localization.appendFormat","Fayde.Localization.formatItem","Fayde.Localization.pushMany","Fayde.Localization.formatError","Fayde.Localization.stringBuilderToString","Fayde.Localization.RegisterFormattable","Fayde.Localization.doFormattable","Fayde.Localization.tryStandardFormat","Fayde.Localization.padded","Fayde.Localization.tryCustomFormat","Fayde.Localization.msf","Fayde.Localization.msF","Fayde.Localization.NumberFormatInfo","Fayde.Localization.NumberFormatInfo.constructor","Fayde.Localization.NumberFormatInfo.FormatCurrency","Fayde.Localization.NumberFormatInfo.FormatNumber","Fayde.Localization.NumberFormatInfo.FormatPercent","Fayde.Localization.NumberFormatInfo.FormatGeneral","Fayde.Localization.NumberFormatInfo.FormatDecimal","Fayde.Localization.NumberFormatInfo.FormatExponential","Fayde.Localization.NumberFormatInfo.FormatHexadecimal","Fayde.Localization.NumberFormatInfo.FormatRawNumber","Fayde.Localization.grouped","Fayde.Localization.round","Fayde.Localization.sigDigits","Fayde.MVVM","Fayde.MVVM.AutoModel","Fayde.MVVM.AutoModel.Notify","Fayde.MVVM.AutoModel.Validate","Fayde.MVVM.AutoModel.Finish","Fayde.MVVM.getApplier","Fayde.MVVM.unique","Fayde.MVVM.applyProperty","Fayde.MVVM.doValidate","Fayde.MVVM.validate","Fayde.MVVM.NotifyProperties","Fayde.MVVM.ObservableObject","Fayde.MVVM.ObservableObject.constructor","Fayde.MVVM.ObservableObject.OnPropertyChanged","Fayde.MVVM.ViewModelBase","Fayde.MVVM.ViewModelBase.constructor","Fayde.MVVM.DialogViewModel","Fayde.MVVM.DialogViewModel.constructor","Fayde.MVVM.DialogViewModel.Closed_Execute","Fayde.MVVM.DialogViewModel.RequestOpen_Execute","Fayde.MVVM.DialogViewModel.RequestOpen_CanExecute","Fayde.MVVM.Entity","Fayde.MVVM.Entity.constructor","Fayde.MVVM.Entity.OnPropertyChanged","Fayde.MVVM.Entity.HasErrors","Fayde.MVVM.Entity.AddError","Fayde.MVVM.Entity.RemoveError","Fayde.MVVM.Entity.ClearErrors","Fayde.MVVM.Entity.GetErrors","Fayde.MVVM.Entity.ApplyTo","Fayde.Navigation.Route","Fayde.Navigation.Route.constructor","Fayde.MVVM.RelayCommand","Fayde.MVVM.RelayCommand.constructor","Fayde.MVVM.RelayCommand.Execute","Fayde.MVVM.RelayCommand.CanExecute","Fayde.MVVM.RelayCommand.ForceCanExecuteChanged","Fayde.Markup.EventBinding","Fayde.Markup.EventBinding.constructor","Fayde.Markup.EventBinding.init","Fayde.Markup.EventBinding.transmute","Fayde.Markup.EventBinding.$$coerce","Fayde.Markup.Resolve","Fayde.Markup.collector","Fayde.Markup.collector.create","Fayde.Markup.collector.create.collect","Fayde.Markup.collector.create.exclude","Fayde.Markup.collector.create.resolve","Fayde.Markup.Retrieve","Fayde.Markup.StaticResource","Fayde.Markup.StaticResource.constructor","Fayde.Markup.StaticResource.init","Fayde.Markup.StaticResource.transmute","Fayde.Markup.StaticResource.setContext","Fayde.Media.Brush","Fayde.Media.Brush.constructor","Fayde.Media.Brush.isTransparent","Fayde.Media.Brush.setupBrush","Fayde.Media.Brush.toHtml5Object","Fayde.Media.Brush.CreateBrush","Fayde.Media.Brush.InvalidateBrush","Fayde.Media.reactions","Fayde.Media.Geometry","Fayde.Media.Geometry.constructor","Fayde.Media.Geometry.GetBounds","Fayde.Media.Geometry.Draw","Fayde.Media.Geometry.ComputePathBounds","Fayde.Media.Geometry.InvalidateGeometry","Fayde.Media.Geometry._Build","Fayde.Media.Geometry.Serialize","Fayde.Media.GeometryCollection","Fayde.Media.GeometryCollection.constructor","Fayde.Media.GeometryCollection.AddingToCollection","Fayde.Media.GeometryCollection.RemovedFromCollection","Fayde.Media.EllipseGeometry","Fayde.Media.EllipseGeometry.constructor","Fayde.Media.EllipseGeometry._Build","Fayde.Media.GeneralTransform","Fayde.Media.GeneralTransform.constructor","Fayde.Media.GeneralTransform.Transform","Fayde.Media.GeneralTransform.TransformBounds","Fayde.Media.GeneralTransform.TryTransform","Fayde.Media.InternalTransform","Fayde.Media.InternalTransform.constructor","Fayde.Media.InternalTransform.Inverse","Fayde.Media.InternalTransform.Value","Fayde.Media.InternalTransform.getRaw","Fayde.Media.InternalTransform.Transform","Fayde.Media.InternalTransform.TransformBounds","Fayde.Media.InternalTransform.CreateMatrix3DProjection","Fayde.Shapes","Fayde.Shapes.ShapeFlags","Fayde.Shapes.PenLineCap","Fayde.Shapes.PenLineJoin","Fayde.Shapes.FillRule","Fayde.Shapes.SweepDirection","Fayde.Media.GeometryGroup","Fayde.Media.GeometryGroup.constructor","Fayde.Media.GeometryGroup.ComputePathBounds","Fayde.Media.GeometryGroup.Draw","Fayde.Media.GradientBrush","Fayde.Media.GradientBrush.constructor","Fayde.Media.GradientBrush.CreateBrush","Fayde.Media.GradientBrush.CreatePad","Fayde.Media.GradientBrush.CreateRepeat","Fayde.Media.GradientBrush.CreateReflect","Fayde.Media.GradientStop","Fayde.Media.GradientStop.constructor","Fayde.Media.GradientStop.toString","Fayde.Media.GradientStopCollection","Fayde.Media.GradientStopCollection.constructor","Fayde.Media.GradientStopCollection.AddingToCollection","Fayde.Media.GradientStopCollection.RemovedFromCollection","Fayde.Media.GradientStopCollection.getPaddedEnumerable","Fayde.Media.LineGeometry","Fayde.Media.LineGeometry.constructor","Fayde.Media.LineGeometry._Build","Fayde.Media.LinearGradientBrush","Fayde.Media.LinearGradientBrush.constructor","Fayde.Media.LinearGradientBrush.CreatePad","Fayde.Media.LinearGradientBrush.CreateRepeat","Fayde.Media.LinearGradientBrush.CreateReflect","Fayde.Media.LinearGradientBrush.CreateInterpolated","Fayde.Media.LinearGradientBrush._GetPointData","Fayde.Media.LinearGradientBrush.toString","Fayde.Media.Matrix","Fayde.Media.Matrix.constructor","Fayde.Media.Matrix.Identity","Fayde.Media.Matrix.M11","Fayde.Media.Matrix.M12","Fayde.Media.Matrix.M21","Fayde.Media.Matrix.M22","Fayde.Media.Matrix.OffsetX","Fayde.Media.Matrix.OffsetY","Fayde.Media.Matrix.Inverse","Fayde.Media.Matrix._OnChanged","Fayde.Media.Matrix.Clone","Fayde.Media.Matrix3D","Fayde.Media.Matrix3D.constructor","Fayde.Media.Matrix3D.FromRaw","Fayde.Media.Matrix3D.M11","Fayde.Media.Matrix3D.M12","Fayde.Media.Matrix3D.M13","Fayde.Media.Matrix3D.M14","Fayde.Media.Matrix3D.M21","Fayde.Media.Matrix3D.M22","Fayde.Media.Matrix3D.M23","Fayde.Media.Matrix3D.M24","Fayde.Media.Matrix3D.M31","Fayde.Media.Matrix3D.M32","Fayde.Media.Matrix3D.M33","Fayde.Media.Matrix3D.M34","Fayde.Media.Matrix3D.OffsetX","Fayde.Media.Matrix3D.OffsetY","Fayde.Media.Matrix3D.OffsetZ","Fayde.Media.Matrix3D.M44","Fayde.Media.Matrix3D.Inverse","Fayde.Media.Matrix3D.Listen","Fayde.Media.Matrix3D._OnChanged","Fayde.Media.Projection","Fayde.Media.Projection.constructor","Fayde.Media.Projection.ObjectWidth","Fayde.Media.Projection.ObjectHeight","Fayde.Media.Projection.setObjectSize","Fayde.Media.Projection.getDistanceFromXYPlane","Fayde.Media.Projection.getTransform","Fayde.Media.Projection.CreateProjectionMatrix","Fayde.Media.Projection.InvalidateProjection","Fayde.Media.Matrix3DProjection","Fayde.Media.Matrix3DProjection.constructor","Fayde.Media.Matrix3DProjection.CreateProjectionMatrix","Fayde.Media.ParseGeometry","Fayde.Media.ParseShapePoints","Fayde.Media.MediaParser","Fayde.Media.MediaParser.constructor","Fayde.Media.MediaParser.ParseGeometryImpl","Fayde.Media.MediaParser.ParseShapePoints","Fayde.Media.MediaParser.ParsePoint","Fayde.Media.MediaParser.ParseDouble","Fayde.Media.MediaParser.Match","Fayde.Media.MediaParser.Advance","Fayde.Media.MediaParser.MorePointsAvailable","Fayde.Media.PathFigure","Fayde.Media.PathFigure.constructor","Fayde.Media.PathFigure._OnSegmentsSourceChanged","Fayde.Media.PathFigure._Build","Fayde.Media.PathFigure.InvalidatePathFigure","Fayde.Media.PathFigure.MergeInto","Fayde.Media.PathFigureCollection","Fayde.Media.PathFigureCollection.constructor","Fayde.Media.PathFigureCollection.AddingToCollection","Fayde.Media.PathFigureCollection.RemovedFromCollection","Fayde.Media.PathGeometry","Fayde.Media.PathGeometry.constructor","Fayde.Media.PathGeometry.fillRule","Fayde.Media.PathGeometry.OverridePath","Fayde.Media.PathGeometry._Build","Fayde.Media.PathGeometry.InvalidateFigures","Fayde.Media.PathSegment","Fayde.Media.PathSegment.constructor","Fayde.Media.PathSegment._Append","Fayde.Media.PathSegmentCollection","Fayde.Media.PathSegmentCollection.constructor","Fayde.Media.PathSegmentCollection.AddingToCollection","Fayde.Media.PathSegmentCollection.RemovedFromCollection","Fayde.Media.PathSegmentCollection.SetSource","Fayde.Media.PathSegmentCollection._OnSegmentsCollectionChanged","Fayde.Media.ArcSegment","Fayde.Media.ArcSegment.constructor","Fayde.Media.ArcSegment._Append","Fayde.Media.BezierSegment","Fayde.Media.BezierSegment.constructor","Fayde.Media.BezierSegment._Append","Fayde.Media.LineSegment","Fayde.Media.LineSegment.constructor","Fayde.Media.LineSegment._Append","Fayde.Media.PolyBezierSegment","Fayde.Media.PolyBezierSegment.constructor","Fayde.Media.PolyBezierSegment._Append","Fayde.Media.PolyLineSegment","Fayde.Media.PolyLineSegment.constructor","Fayde.Media.PolyLineSegment._Append","Fayde.Media.PolyQuadraticBezierSegment","Fayde.Media.PolyQuadraticBezierSegment.constructor","Fayde.Media.PolyQuadraticBezierSegment._Append","Fayde.Media.QuadraticBezierSegment","Fayde.Media.QuadraticBezierSegment.constructor","Fayde.Media.QuadraticBezierSegment._Append","Fayde.Media.PlaneProjection","Fayde.Media.PlaneProjection.constructor","Fayde.Media.PlaneProjection.getDistanceFromXYPlane","Fayde.Media.PlaneProjection.CreateProjectionMatrix3D","Fayde.Media.RadialGradientBrush","Fayde.Media.RadialGradientBrush.constructor","Fayde.Media.RadialGradientBrush.CreatePad","Fayde.Media.RadialGradientBrush.CreateRepeat","Fayde.Media.RadialGradientBrush.CreateReflect","Fayde.Media.RadialGradientBrush.CreateInterpolated","Fayde.Media.RadialGradientBrush.FitPattern","Fayde.Media.RadialGradientBrush._GetPointData","Fayde.Media.RectangleGeometry","Fayde.Media.RectangleGeometry.constructor","Fayde.Media.RectangleGeometry._Build","Fayde.Media.SolidColorBrush","Fayde.Media.SolidColorBrush.constructor","Fayde.Media.SolidColorBrush.isTransparent","Fayde.Media.SolidColorBrush.FromColor","Fayde.Media.SolidColorBrush.setupBrush","Fayde.Media.SolidColorBrush.CreateBrush","Fayde.Media.brushConverter","Fayde.Media.TextOptions","Fayde.Media.TextOptions.constructor","Fayde.Media.TextOptions.GetTextHintingMode","Fayde.Media.TextOptions.SetTextHintingMode","Fayde.Media.computeImageMatrix","Fayde.Media.TileBrush","Fayde.Media.TileBrush.constructor","Fayde.Media.TileBrush.CreateBrush","Fayde.Media.TileBrush.GetTileExtents","Fayde.Media.TileBrush.DrawTile","Fayde.Media.Transform","Fayde.Media.Transform.constructor","Fayde.Media.Transform.Value","Fayde.Media.Transform.getRaw","Fayde.Media.Transform.Inverse","Fayde.Media.Transform.Transform","Fayde.Media.Transform.TransformBounds","Fayde.Media.Transform.TryTransform","Fayde.Media.Transform.InvalidateValue","Fayde.Media.Transform._BuildValue","Fayde.Media.Transform.copyMatTo","Fayde.Media.MatrixTransform","Fayde.Media.MatrixTransform.constructor","Fayde.Media.MatrixTransform._BuildValue","Fayde.Media.MatrixTransform.Clone","Fayde.Media.RotateTransform","Fayde.Media.RotateTransform.constructor","Fayde.Media.RotateTransform._BuildValue","Fayde.Media.ScaleTransform","Fayde.Media.ScaleTransform.constructor","Fayde.Media.ScaleTransform._BuildValue","Fayde.Media.SkewTransform","Fayde.Media.SkewTransform.constructor","Fayde.Media.SkewTransform._BuildValue","Fayde.Media.TranslateTransform","Fayde.Media.TranslateTransform.constructor","Fayde.Media.TranslateTransform._BuildValue","Fayde.Media.TransformCollection","Fayde.Media.TransformCollection.constructor","Fayde.Media.TransformCollection.AddingToCollection","Fayde.Media.TransformCollection.RemovedFromCollection","Fayde.Media.TransformGroup","Fayde.Media.TransformGroup.constructor","Fayde.Media.TransformGroup._BuildValue","Fayde.Navigation.Navigate","Fayde.Navigation.isExternalTarget","Fayde.Navigation.tryInternalNavigate","Fayde.Navigation.findNavigator","Fayde.Navigation.walkUp","Fayde.Navigation.walkUp.moveNext","Fayde.Navigation.isUriValidForExternalNav","Fayde.Navigation.getAbsoluteUri","Fayde.Navigation.launchDummyLink","Fayde.Navigation.NavigationService","Fayde.Navigation.NavigationService.constructor","Fayde.Navigation.NavigationService.CurrentUri","Fayde.Navigation.NavigationService.Navigate","Fayde.Navigation.NavigationService._HandleFragmentChange","Fayde.Navigation.RouteMapper","Fayde.Navigation.RouteMapper.constructor","Fayde.Navigation.RouteMapper.MapUri","Fayde.Navigation.RouteMapping","Fayde.Navigation.RouteMapping.constructor","Fayde.Navigation.RouteMapping.MapUri","Fayde.Navigation.createUriMatcher","Fayde.Navigation.createUriMatcher.collectTokenInfo","Fayde.Navigation.createUriMatcher.findTokenValue","Fayde.Navigation.UriMapper","Fayde.Navigation.UriMapper.constructor","Fayde.Navigation.UriMapper.MapUri","Fayde.Navigation.UriMapping","Fayde.Navigation.UriMapping.constructor","Fayde.Navigation.UriMapping.MapUri","Fayde.Navigation.createUriMatcher.buildMappedUri","Color","Color.constructor","Color.Add","Color.Subtract","Color.Multiply","Color.Equals","Color.toString","Color.ToHexStringNoAlpha","Color.Clone","Color.LERP","Color.FromRgba","Color.FromHex","CornerRadius","CornerRadius.constructor","CornerRadius.Clone","DurationType","Duration","Duration.constructor","Duration.Clone","Duration.Type","Duration.TimeSpan","Duration.HasTimeSpan","Duration.IsForever","Duration.IsAutomatic","Duration.IsZero","FontFamily","FontFamily.constructor","FontFamily.toString","FontFamily.Clone","KeyTime","KeyTime.constructor","KeyTime.CreateUniform","KeyTime.CreateTimeSpan","KeyTime.Clone","KeyTime.IsPaced","KeyTime.IsUniform","KeyTime.HasTimeSpan","KeyTime.TimeSpan","KeyTime.HasPercent","KeyTime.Percent","Length","Length.constructor","Rect","Rect.constructor","Rect.Clone","Size","Size.constructor","Size.Clone","Thickness","Thickness.constructor","Thickness.Clone","Thickness.toString","Fayde.splitCommaList","BError","BError.constructor","BError.ThrowException","Fayde.Bootstrap","Fayde.bootstrap","Fayde.bootstrap.resolveConfig","Fayde.bootstrap.getApp","Fayde.bootstrap.resolveTheme","Fayde.bootstrap.resolveApp","Fayde.bootstrap.finishError","Fayde.bootstrap.startApp","Fayde.bootstrap.loaded","Fayde.LoadConfigJson","Fayde.configure","Fayde.libs","Fayde.libs.configure","Fayde.libs.getLibConfig","Fayde.libs.setupLibraryConfig","Fayde.themes","Fayde.themes.configure","Fayde.debug","Fayde.debug.configure","Fayde.debug.toBoolean","Fayde.Render","Fayde.Layout","Fayde.Media.Animation","Fayde.Media.VSM","NumberEx","NumberEx.AreClose","NumberEx.IsLessThanClose","NumberEx.IsGreaterThanClose","StringEx","StringEx.Format","TimelineProfile","TimelineProfile.constructor","TimelineProfile.Parse","TimelineProfile.Navigate","TimelineProfile.LayoutPass","TimelineProfile._FinishEvent","Fayde.Shapes.DoubleCollection","Fayde.Shapes.DoubleCollection.constructor","Fayde.Shapes.Shape","Fayde.Shapes.Shape.constructor","Fayde.Shapes.Shape.CreateLayoutUpdater","Fayde.Shapes.onSizeChanged","Fayde.Shapes.strokeThicknessCoercer","Fayde.Shapes.reactions","Fayde.Shapes.Ellipse","Fayde.Shapes.Ellipse.constructor","Fayde.Shapes.Ellipse.CreateLayoutUpdater","Fayde.Shapes.Line","Fayde.Shapes.Line.constructor","Fayde.Shapes.Line.CreateLayoutUpdater","Fayde.Shapes.Path","Fayde.Shapes.Path.constructor","Fayde.Shapes.Path.CreateLayoutUpdater","Fayde.Shapes.Path._DataCoercer","Fayde.Shapes.PointCollection","Fayde.Shapes.PointCollection.constructor","Fayde.Shapes.PointCollection.Count","Fayde.Shapes.PointCollection.FromData","Fayde.Shapes.PointCollection.FromArray","Fayde.Shapes.PointCollection.GetValueAt","Fayde.Shapes.PointCollection.SetValueAt","Fayde.Shapes.PointCollection.Add","Fayde.Shapes.PointCollection.AddRange","Fayde.Shapes.PointCollection.Insert","Fayde.Shapes.PointCollection.Remove","Fayde.Shapes.PointCollection.RemoveAt","Fayde.Shapes.PointCollection.Clear","Fayde.Shapes.PointCollection.IndexOf","Fayde.Shapes.PointCollection.Contains","Fayde.Shapes.PointCollection.getEnumerator","Fayde.Shapes.Polygon","Fayde.Shapes.Polygon.constructor","Fayde.Shapes.Polygon.CreateLayoutUpdater","Fayde.Shapes.Polygon._PointsCoercer","Fayde.Shapes.Polyline","Fayde.Shapes.Polyline.constructor","Fayde.Shapes.Polyline.CreateLayoutUpdater","Fayde.Shapes.Polyline._PointsCoercer","Fayde.Shapes.Rectangle","Fayde.Shapes.Rectangle.constructor","Fayde.Shapes.Rectangle.CreateLayoutUpdater","Fayde.Text","Fayde.Text.Buffer","Fayde.Text.Buffer.cut","Fayde.Text.Buffer.insert","Fayde.Text.Buffer.replace","Fayde.Text.EmitChangedType","Fayde.Text.Proxy","Fayde.Text.Proxy.constructor","Fayde.Text.Proxy.setAnchorCursor","Fayde.Text.Proxy.enterText","Fayde.Text.Proxy.removeText","Fayde.Text.Proxy.paste","Fayde.Text.Proxy.undo","Fayde.Text.Proxy.redo","Fayde.Text.Proxy.begin","Fayde.Text.Proxy.end","Fayde.Text.Proxy.beginSelect","Fayde.Text.Proxy.adjustSelection","Fayde.Text.Proxy.selectAll","Fayde.Text.Proxy.clearSelection","Fayde.Text.Proxy.select","Fayde.Text.Proxy.setSelectionStart","Fayde.Text.Proxy.setSelectionLength","Fayde.Text.Proxy.setText","Fayde.Text.Proxy.getSelectedText","Fayde.Text.Proxy.$syncEmit","Fayde.Text.Proxy.$syncText","Fayde.Validation","Fayde.Validation.Emit","Fayde.Validation.raiseBindingValidationError","Fayde.Validation.Validation","Fayde.Validation.Validation.constructor","Fayde.Validation.GetErrorsCore","Fayde.Validation.GetErrors","Fayde.Validation.GetHasError","Fayde.Validation.SetHasError","Fayde.Validation.AddError","Fayde.Validation.RemoveError","Fayde.Validation.ValidationError","Fayde.Validation.ValidationError.constructor","Fayde.Validation.ValidationErrorEventAction","Fayde.Validation.ValidationErrorEventArgs","Fayde.Validation.ValidationErrorEventArgs.constructor","Fayde.Controls.Internal","Fayde.Controls.Internal.TextBoxCursorAdvancer","Fayde.Controls.Internal.TextBoxCursorAdvancer.constructor","Fayde.Controls.Internal.TextBoxCursorAdvancer.CursorDown","Fayde.Controls.Internal.TextBoxCursorAdvancer.CursorUp","Fayde.Controls.Internal.TextBoxCursorAdvancer.CursorNextWord","Fayde.Controls.Internal.TextBoxCursorAdvancer.CursorPrevWord","Fayde.Controls.Internal.TextBoxCursorAdvancer.CursorNextChar","Fayde.Controls.Internal.TextBoxCursorAdvancer.CursorPrevChar","Fayde.Controls.Internal.TextBoxCursorAdvancer.CursorLineBegin","Fayde.Controls.Internal.TextBoxCursorAdvancer.CursorLineEnd","Fayde.Controls.Internal.TextBoxCursorAdvancer.CursorBegin","Fayde.Controls.Internal.TextBoxCursorAdvancer.CursorEnd","Fayde.Controls.Internal.PasswordBoxCursorAdvancer","Fayde.Controls.Internal.PasswordBoxCursorAdvancer.constructor","Fayde.Controls.Internal.PasswordBoxCursorAdvancer.CursorDown","Fayde.Controls.Internal.PasswordBoxCursorAdvancer.CursorUp","Fayde.Controls.Internal.PasswordBoxCursorAdvancer.CursorNextWord","Fayde.Controls.Internal.PasswordBoxCursorAdvancer.CursorPrevWord","Fayde.Controls.Internal.PasswordBoxCursorAdvancer.CursorNextChar","Fayde.Controls.Internal.PasswordBoxCursorAdvancer.CursorPrevChar","Fayde.Controls.Internal.PasswordBoxCursorAdvancer.CursorLineBegin","Fayde.Controls.Internal.PasswordBoxCursorAdvancer.CursorLineEnd","Fayde.Controls.Internal.PasswordBoxCursorAdvancer.CursorBegin","Fayde.Controls.Internal.PasswordBoxCursorAdvancer.CursorEnd","Fayde.Controls.Internal.ItemContainersManager","Fayde.Controls.Internal.ItemContainersManager.constructor","Fayde.Controls.Internal.ItemContainersManager.IsRecycling","Fayde.Controls.Internal.ItemContainersManager.IndexFromContainer","Fayde.Controls.Internal.ItemContainersManager.ContainerFromIndex","Fayde.Controls.Internal.ItemContainersManager.ItemFromContainer","Fayde.Controls.Internal.ItemContainersManager.ContainerFromItem","Fayde.Controls.Internal.ItemContainersManager.OnItemsAdded","Fayde.Controls.Internal.ItemContainersManager.OnItemsRemoved","Fayde.Controls.Internal.ItemContainersManager.DisposeContainers","Fayde.Controls.Internal.ItemContainersManager.CreateGenerator","Fayde.Controls.Internal.ItemContainersManager.GetEnumerator","Fayde.Controls.Internal.RangeCoercer","Fayde.Controls.Internal.RangeCoercer.constructor","Fayde.Controls.Internal.RangeCoercer.Minimum","Fayde.Controls.Internal.RangeCoercer.Maximum","Fayde.Controls.Internal.RangeCoercer.Value","Fayde.Controls.Internal.RangeCoercer.OnMinimumChanged","Fayde.Controls.Internal.RangeCoercer.OnMaximumChanged","Fayde.Controls.Internal.RangeCoercer.OnValueChanged","Fayde.Controls.Internal.RangeCoercer.CoerceMaximum","Fayde.Controls.Internal.RangeCoercer.CoerceValue","Fayde.Controls.Internal.TextBoxContentProxy","Fayde.Controls.Internal.TextBoxContentProxy.constructor","Fayde.Controls.Internal.TextBoxContentProxy.setElement","Fayde.Controls.Internal.TextBoxContentProxy.setHorizontalScrollBar","Fayde.Controls.Internal.TextBoxContentProxy.setVerticalScrollBar","Fayde.Controls.Internal.TextBoxViewNode","Fayde.Controls.Internal.TextBoxViewNode.constructor","Fayde.Controls.Internal.TextBoxView","Fayde.Controls.Internal.TextBoxView.constructor","Fayde.Controls.Internal.TextBoxView.CreateLayoutUpdater","Fayde.Controls.Internal.TextBoxView._InlineChanged","Fayde.Controls.Internal.TextBoxView.setFontProperty","Fayde.Controls.Internal.TextBoxView.setFontAttr","Fayde.Controls.Internal.TextBoxView.setCaretBrush","Fayde.Controls.Internal.TextBoxView.setIsFocused","Fayde.Controls.Internal.TextBoxView.setIsReadOnly","Fayde.Controls.Internal.TextBoxView.setTextAlignment","Fayde.Controls.Internal.TextBoxView.setTextWrapping","Fayde.Controls.Internal.TextBoxView.setSelectionStart","Fayde.Controls.Internal.TextBoxView.setSelectionLength","Fayde.Controls.Internal.TextBoxView.setText","Fayde.Controls.Internal.TextBoxView.GetCursorFromPoint","Fayde.Controls.Internal.VirtualizingPanelContainerOwner","Fayde.Controls.Internal.VirtualizingPanelContainerOwner.constructor","Fayde.Controls.Internal.VirtualizingPanelContainerOwner.itemCount","Fayde.Controls.Internal.VirtualizingPanelContainerOwner.createGenerator","Fayde.Controls.Internal.VirtualizingPanelContainerOwner.remove","Fayde.Controls.Primitives.DragCompletedEventArgs","Fayde.Controls.Primitives.DragCompletedEventArgs.constructor","Fayde.Controls.Primitives.DragDeltaEventArgs","Fayde.Controls.Primitives.DragDeltaEventArgs.constructor","Fayde.Controls.Primitives.DragStartedEventArgs","Fayde.Controls.Primitives.DragStartedEventArgs.constructor","Fayde.Controls.Primitives.OverlayNode","Fayde.Controls.Primitives.OverlayNode.constructor","Fayde.Controls.Primitives.OverlayNode.EnsureLayer","Fayde.Controls.Primitives.OverlayNode.EnsureMask","Fayde.Controls.Primitives.OverlayNode._OnMaskMouseDown","Fayde.Controls.Primitives.OverlayNode.UpdateMask","Fayde.Controls.Primitives.OverlayNode.OnIsAttachedChanged","Fayde.Controls.Primitives.OverlayNode.RegisterInitiator","Fayde.Controls.Primitives.Overlay","Fayde.Controls.Primitives.Overlay.constructor","Fayde.Controls.Primitives.Overlay.CreateNode","Fayde.Controls.Primitives.Overlay.CreateLayoutUpdater","Fayde.Controls.Primitives.Overlay.InitBindings","Fayde.Controls.Primitives.Overlay._OnVisualChanged","Fayde.Controls.Primitives.Overlay._OnVisualUriChanged","Fayde.Controls.Primitives.Overlay._OnVisualViewModelChanged","Fayde.Controls.Primitives.Overlay._SetVisualUri","Fayde.Controls.Primitives.Overlay._ClearVisualUri","Fayde.Controls.Primitives.Overlay._OnIsOpenChanged","Fayde.Controls.Primitives.Overlay._DoOpen","Fayde.Controls.Primitives.Overlay._DoClose","Fayde.Controls.Primitives.Overlay.Open","Fayde.Controls.Primitives.Overlay.Close","Fayde.Controls.Primitives.Overlay._GetDialogResult","Fayde.Controls.Primitives.Overlay.FindOverlay","Fayde.Controls.Primitives.OverlayClosedEventArgs","Fayde.Controls.Primitives.OverlayClosedEventArgs.constructor","Fayde.Controls.Primitives.ScrollData","Fayde.Controls.Primitives.ScrollData.constructor","Fayde.Controls.Primitives.ScrollData.invalidate","Fayde.Controls.Primitives.ScrollEventType","Fayde.Controls.Primitives.ScrollEventArgs","Fayde.Controls.Primitives.ScrollEventArgs.constructor","Fayde.Controls.Primitives.SelectionChangedEventArgs","Fayde.Controls.Primitives.SelectionChangedEventArgs.constructor","Fayde.Controls.Primitives.SelectorSelection","Fayde.Controls.Primitives.SelectorSelection.constructor","Fayde.Controls.Primitives.SelectorSelection.IsUpdating","Fayde.Controls.Primitives.SelectorSelection._HandleOwnerSelectionChanged","Fayde.Controls.Primitives.SelectorSelection.RepopulateSelectedItems","Fayde.Controls.Primitives.SelectorSelection.ClearSelection","Fayde.Controls.Primitives.SelectorSelection.Select","Fayde.Controls.Primitives.SelectorSelection._SelectSingle","Fayde.Controls.Primitives.SelectorSelection._SelectExtended","Fayde.Controls.Primitives.SelectorSelection._SelectMultiple","Fayde.Controls.Primitives.SelectorSelection.SelectRange","Fayde.Controls.Primitives.SelectorSelection.SelectAll","Fayde.Controls.Primitives.SelectorSelection.SelectOnly","Fayde.Controls.Primitives.SelectorSelection.Unselect","Fayde.Controls.Primitives.SelectorSelection.AddToSelected","Fayde.Controls.Primitives.SelectorSelection.RemoveFromSelected","Fayde.Controls.Primitives.SelectorSelection.ReplaceSelection","Fayde.Controls.Primitives.SelectorSelection.UpdateSelectorProperties","Fayde.Controls.Primitives.SelectorSelection.UpdateCollectionView","Fayde.Controls.Primitives.except","Fayde.Providers.StyleIndex","Fayde.Providers.StyleMask","Fayde.Providers.ImplicitStyleBroker","Fayde.Providers.ImplicitStyleBroker.constructor","Fayde.Providers.ImplicitStyleBroker.Set","Fayde.Providers.ImplicitStyleBroker.SetImpl","Fayde.Providers.ImplicitStyleBroker.Clear","Fayde.Providers.ImplicitStyleBroker.ApplyStyles","Fayde.Providers.getImplicitStyles","Fayde.Providers.getThemeStyle","Fayde.Providers.getAppResourcesStyle","Fayde.Providers.getVisualTreeStyle","Fayde.Providers.LocalStyleBroker","Fayde.Providers.LocalStyleBroker.constructor","Fayde.Providers.LocalStyleBroker.Set","Fayde.Providers.SwapStyles","Fayde.Data.lookupType","Fayde.Data.handlePeriod","Fayde.Data.handleLeftBracket","Fayde.Data.handleDefault","Fayde.Data.PropertyPath","Fayde.Data.PropertyPath.constructor","Fayde.Data.PropertyPath.CreateFromParameter","Fayde.Data.PropertyPath.TryResolveDependencyProperty","Fayde.Data.PropertyPath.Path","Fayde.Data.PropertyPath.ExpandedPath","Fayde.Data.PropertyPath.ParsePath","Fayde.Data.PropertyPath.HasDependencyProperty","Fayde.Data.PropertyPath.DependencyProperty","Fayde.Data.PropertyPath.ResolvePropertyPath","Fayde.Data.PropertyPath.Clone","Fayde.Data.PropertyNodeType","Fayde.Data.PropertyPathParser","Fayde.Data.PropertyPathParser.constructor","Fayde.Data.PropertyPathParser.Step","Fayde.Data.indexOfAny","Fayde.Data.PropertyPathWalker","Fayde.Data.PropertyPathWalker.constructor","Fayde.Data.PropertyPathWalker.IsPathBroken","Fayde.Data.PropertyPathWalker.FinalPropertyName","Fayde.Data.PropertyPathWalker.GetValue","Fayde.Data.PropertyPathWalker.Update","Fayde.Data.PropertyPathWalker.Listen","Fayde.Data.PropertyPathWalker.Unlisten","Fayde.Data.PropertyPathWalker.IsBrokenChanged","Fayde.Data.PropertyPathWalker.ValueChanged","Fayde.Data.PropertyPathWalker.GetContext","Fayde.Data.PropertyPathNode","Fayde.Data.PropertyPathNode.constructor","Fayde.Data.PropertyPathNode.IsBroken","Fayde.Data.PropertyPathNode.Source","Fayde.Data.PropertyPathNode.Value","Fayde.Data.PropertyPathNode.Listen","Fayde.Data.PropertyPathNode.Unlisten","Fayde.Data.PropertyPathNode.OnSourceChanged","Fayde.Data.PropertyPathNode.OnSourcePropertyChanged","Fayde.Data.PropertyPathNode.UpdateValue","Fayde.Data.PropertyPathNode.SetValue","Fayde.Data.PropertyPathNode.GetSource","Fayde.Data.PropertyPathNode.SetSource","Fayde.Data.PropertyPathNode.UpdateValueAndIsBroken","Fayde.Data.PropertyPathNode._CheckIsBroken","Fayde.Data.StandardPropertyPathNode","Fayde.Data.StandardPropertyPathNode.constructor","Fayde.Data.StandardPropertyPathNode.SetValue","Fayde.Data.StandardPropertyPathNode.UpdateValue","Fayde.Data.StandardPropertyPathNode.OnSourceChanged","Fayde.Data.StandardPropertyPathNode.OnPropertyChanged","Fayde.Data.StandardPropertyPathNode.OnSourcePropertyChanged","Fayde.Data.CollectionViewNode","Fayde.Data.CollectionViewNode.constructor","Fayde.Data.CollectionViewNode.OnSourceChanged","Fayde.Data.CollectionViewNode.ViewChanged","Fayde.Data.CollectionViewNode.ViewCurrentChanged","Fayde.Data.CollectionViewNode.SetValue","Fayde.Data.CollectionViewNode.UpdateValue","Fayde.Data.CollectionViewNode._CheckIsBroken","Fayde.Data.CollectionViewNode.ConnectViewHandlers","Fayde.Data.CollectionViewNode.DisconnectViewHandlers","Fayde.Data.IndexedPropertyPathNode","Fayde.Data.IndexedPropertyPathNode.constructor","Fayde.Data.IndexedPropertyPathNode.UpdateValue","Fayde.Data.IndexedPropertyPathNode.SetValue","Fayde.Data.IndexedPropertyPathNode._CheckIsBroken","Fayde.Data.IndexedPropertyPathNode.OnSourcePropertyChanged","Fayde.Data.IndexedPropertyPathNode.OnSourceChanged","Fayde.Data.IndexedPropertyPathNode._GetIndexer","Fayde.Data.IndexedPropertyPathNode.CollectionChanged","Fayde.Input.TouchInternal","Fayde.Input.TouchInternal.ActiveTouchBase","Fayde.Input.TouchInternal.ActiveTouchBase.constructor","Fayde.Input.TouchInternal.ActiveTouchBase.Capture","Fayde.Input.TouchInternal.ActiveTouchBase.ReleaseCapture","Fayde.Input.TouchInternal.ActiveTouchBase._PerformCapture","Fayde.Input.TouchInternal.ActiveTouchBase._PerformReleaseCapture","Fayde.Input.TouchInternal.ActiveTouchBase.Emit","Fayde.Input.TouchInternal.ActiveTouchBase._EmitList","Fayde.Input.TouchInternal.ActiveTouchBase.GetTouchPoint","Fayde.Input.TouchInternal.ActiveTouchBase.CreateTouchPoint","Fayde.Input.TouchInternal.ActiveTouchBase.CreateTouchDevice","Fayde.Input.TouchInternal.findFirstCommonElement","Fayde.Input.TouchInternal.TouchInteropBase","Fayde.Input.TouchInternal.TouchInteropBase.constructor","Fayde.Input.TouchInternal.TouchInteropBase.CoordinateOffset","Fayde.Input.TouchInternal.TouchInteropBase.Register","Fayde.Input.TouchInternal.TouchInteropBase._CalcOffset","Fayde.Input.TouchInternal.TouchInteropBase.HandleTouches","Fayde.Input.TouchInternal.NonPointerActiveTouch","Fayde.Input.TouchInternal.NonPointerActiveTouch.constructor","Fayde.Input.TouchInternal.NonPointerActiveTouch.Init","Fayde.Input.TouchInternal.NonPointerActiveTouch.CreateTouchPoint","Fayde.Input.TouchInternal.NonPointerTouchInterop","Fayde.Input.TouchInternal.NonPointerTouchInterop.constructor","Fayde.Input.TouchInternal.NonPointerTouchInterop.Register","Fayde.Input.TouchInternal.NonPointerTouchInterop._HandleTouchStart","Fayde.Input.TouchInternal.NonPointerTouchInterop._HandleTouchEnd","Fayde.Input.TouchInternal.NonPointerTouchInterop._HandleTouchMove","Fayde.Input.TouchInternal.NonPointerTouchInterop._HandleTouchEnter","Fayde.Input.TouchInternal.NonPointerTouchInterop._HandleTouchLeave","Fayde.Input.TouchInternal.NonPointerTouchInterop.TouchArrayFromList","Fayde.Input.TouchInternal.NonPointerTouchInterop.FindTouchInList","Fayde.Input.TouchInternal.removeFromArray","Fayde.Input.TouchInternal.PointerActiveTouch","Fayde.Input.TouchInternal.PointerActiveTouch.constructor","Fayde.Input.TouchInternal.PointerActiveTouch.Init","Fayde.Input.TouchInternal.PointerActiveTouch.CreateTouchPoint","Fayde.Input.TouchInternal.PointerTouchInterop","Fayde.Input.TouchInternal.PointerTouchInterop.constructor","Fayde.Input.TouchInternal.PointerTouchInterop.Register","Fayde.Input.TouchInternal.PointerTouchInterop._HandlePointerDown","Fayde.Input.TouchInternal.PointerTouchInterop._HandlePointerUp","Fayde.Input.TouchInternal.PointerTouchInterop._HandlePointerMove","Fayde.Input.TouchInternal.PointerTouchInterop._HandlePointerEnter","Fayde.Input.TouchInternal.PointerTouchInterop._HandlePointerLeave","Fayde.Input.TouchInternal.PointerTouchInterop.GetActiveTouch","Fayde.Input.TouchInternal.PointerTouchInterop.FindTouchInList","Fayde.Markup.Internal","Fayde.Markup.Internal.createActiveObject","Fayde.Markup.Internal.createActiveObject.set","Fayde.Markup.Internal.createActiveObject.setName","Fayde.Markup.Internal.createActiveObject.getApp","Fayde.Markup.Internal.createObjectActor","Fayde.Markup.Internal.createObjectActor.start","Fayde.Markup.Internal.createObjectActor.end","Fayde.Markup.Internal.createPropertyActor","Fayde.Markup.Internal.createPropertyActor.verify","Fayde.Markup.Internal.createPropertyActor.verifyContent","Fayde.Markup.Internal.createPropertyActor.prepare","Fayde.Markup.Internal.createPropertyActor.prepareContent","Fayde.Markup.Internal.createPropertyActor.addContentObject","Fayde.Markup.Internal.createPropertyActor.addObject","Fayde.Markup.Internal.createPropertyActor.setAttrObject","Fayde.Markup.Internal.createPropertyActor.merge","Fayde.Markup.Internal.createPropertyActor.getFallbackKey","Fayde.Markup.Internal.createPropertyActor.getImplicitKey","Fayde.Markup.Internal.createPropertyActor.convert","Fayde.Markup.Internal.createPropertyActor.subscribeEvent","Fayde.Markup.Internal.createPropertyActor.init","Fayde.Markup.Internal.createPropertyActor.start","Fayde.Markup.Internal.createPropertyActor.startContent","Fayde.Markup.Internal.createPropertyActor.end","Fayde.Markup.Internal.createPropertyActor.setContentText","Fayde.Markup.Internal.createPropertyActor.setObject","Fayde.Markup.Internal.createPropertyActor.isNewResources","Fayde.Markup.Internal.createResourcesActor","Fayde.Markup.Internal.createResourcesActor.start","Fayde.Markup.Internal.createResourcesActor.end","Fayde.Markup.Internal.createResourcesActor.get","Fayde.Media.Animation.EasingMode","Fayde.Media.Animation.FillBehavior","Fayde.Media.Animation.RepeatBehavior","Fayde.Media.Animation.RepeatBehavior.constructor","Fayde.Media.Animation.RepeatBehavior.FromRepeatDuration","Fayde.Media.Animation.RepeatBehavior.FromIterationCount","Fayde.Media.Animation.RepeatBehavior.HasCount","Fayde.Media.Animation.RepeatBehavior.Count","Fayde.Media.Animation.RepeatBehavior.HasDuration","Fayde.Media.Animation.RepeatBehavior.Duration","Fayde.Media.Animation.RepeatBehavior.Clone","Fayde.Media.Animation.Timeline","Fayde.Media.Animation.Timeline.constructor","Fayde.Media.Animation.Timeline.HasManualTarget","Fayde.Media.Animation.Timeline.Reset","Fayde.Media.Animation.Timeline.Pause","Fayde.Media.Animation.Timeline.Resume","Fayde.Media.Animation.Timeline.Stop","Fayde.Media.Animation.Timeline.OnCompleted","Fayde.Media.Animation.Timeline.Update","Fayde.Media.Animation.Timeline.UpdateInternal","Fayde.Media.Animation.Timeline.HoldEnd","Fayde.Media.Animation.Timeline.CreateClockData","Fayde.Media.Animation.Timeline.IsAfterBeginTime","Fayde.Media.Animation.Timeline.GetNaturalDuration","Fayde.Media.Animation.Timeline.GetNaturalDurationCore","Fayde.Media.Animation.Timeline.GenerateFrom","Fayde.Media.Animation.Timeline.GenerateTo","Fayde.Media.Animation.TimelineCollection","Fayde.Media.Animation.TimelineCollection.constructor","Fayde.Media.Animation.AnimationBase","Fayde.Media.Animation.AnimationBase.constructor","Fayde.Media.Animation.AnimationBase.Resolve","Fayde.Media.Animation.AnimationBase.HoldEnd","Fayde.Media.Animation.AnimationBase.Stop","Fayde.Media.Animation.AnimationBase.UpdateInternal","Fayde.Media.Animation.AnimationBase.GetNaturalDurationCore","Fayde.Media.Animation.AnimationBase.GetCurrentValue","Fayde.Media.Animation.AnimationBase._Hookup","Fayde.Media.Animation.getLogMessage","Fayde.Media.Animation.AnimationStore","Fayde.Media.Animation.AnimationStore.constructor","Fayde.Media.Animation.AnimationStore.Create","Fayde.Media.Animation.AnimationStore.Attach","Fayde.Media.Animation.AnimationStore.Detach","Fayde.Media.Animation.AnimationStore.ApplyCurrent","Fayde.Media.Animation.AnimationStore.ApplyStop","Fayde.Media.Animation.createId","Fayde.Media.Animation.AnimationUsingKeyFrames","Fayde.Media.Animation.AnimationUsingKeyFrames.constructor","Fayde.Media.Animation.AnimationUsingKeyFrames.Resolve","Fayde.Media.Animation.AnimationUsingKeyFrames.GetCurrentValue","Fayde.Media.Animation.AnimationUsingKeyFrames.GetNaturalDurationCore","Fayde.Media.Animation.AnimationUsingKeyFrames.AddKeyFrame","Fayde.Media.Animation.AnimationUsingKeyFrames.RemoveKeyFrame","Fayde.Media.Animation.BeginStoryboard","Fayde.Media.Animation.BeginStoryboard.constructor","Fayde.Media.Animation.BeginStoryboard.Fire","Fayde.Media.Animation.ColorAnimation","Fayde.Media.Animation.ColorAnimation.constructor","Fayde.Media.Animation.ColorAnimation.GetCurrentValue","Fayde.Media.Animation.ColorAnimation._FromChanged","Fayde.Media.Animation.ColorAnimation._ToChanged","Fayde.Media.Animation.ColorAnimation._ByChanged","Fayde.Media.Animation.ColorAnimation._EasingChanged","Fayde.Media.Animation.ColorAnimation.GenerateFrom","Fayde.Media.Animation.ColorAnimation.GenerateTo","Fayde.Media.Animation.ColorAnimationUsingKeyFrames","Fayde.Media.Animation.ColorAnimationUsingKeyFrames.constructor","Fayde.Media.Animation.ColorAnimationUsingKeyFrames.GenerateFrom","Fayde.Media.Animation.ColorAnimationUsingKeyFrames.GenerateTo","Fayde.Media.Animation.KeyFrame","Fayde.Media.Animation.KeyFrame.constructor","Fayde.Media.Animation.KeyFrame.CoerceKeyTime","Fayde.Media.Animation.KeyFrame.InterpolateValue","Fayde.Media.Animation.KeyFrame.CompareToTimeSpan","Fayde.Media.Animation.KeyFrame.Listen","Fayde.Media.Animation.KeyFrame.Unlisten","Fayde.Media.Animation.KeyFrame.InvalidateKeyFrame","Fayde.Media.Animation.KeyFrame.Comparer","Fayde.Media.Animation.KeyFrame.ResolveKeyFrames","Fayde.Media.Animation.KeyFrameCollection","Fayde.Media.Animation.KeyFrameCollection.constructor","Fayde.Media.Animation.KeyFrameCollection.GetKeyFrameForTime","Fayde.Media.Animation.KeyFrameCollection.Clear","Fayde.Media.Animation.KeyFrameCollection.AddingToCollection","Fayde.Media.Animation.KeyFrameCollection.RemovedFromCollection","Fayde.Media.Animation.KeyFrameCollection.KeyFrameChanged","Fayde.Media.Animation.KeyFrameCollection.ResolveKeyFrames","Fayde.Media.Animation.ColorKeyFrame","Fayde.Media.Animation.ColorKeyFrame.constructor","Fayde.Media.Animation.DiscreteColorKeyFrame","Fayde.Media.Animation.DiscreteColorKeyFrame.constructor","Fayde.Media.Animation.DiscreteColorKeyFrame.InterpolateValue","Fayde.Media.Animation.EasingColorKeyFrame","Fayde.Media.Animation.EasingColorKeyFrame.constructor","Fayde.Media.Animation.EasingColorKeyFrame.InterpolateValue","Fayde.Media.Animation.LinearColorKeyFrame","Fayde.Media.Animation.LinearColorKeyFrame.constructor","Fayde.Media.Animation.LinearColorKeyFrame.InterpolateValue","Fayde.Media.Animation.SplineColorKeyFrame","Fayde.Media.Animation.SplineColorKeyFrame.constructor","Fayde.Media.Animation.SplineColorKeyFrame.InterpolateValue","Fayde.Media.Animation.Curves","Fayde.Media.Animation.Curves.constructor","Fayde.Media.Animation.Curves.QuadraticArrayYForX","Fayde.Media.Animation.Curves.QuadraticYForX","Fayde.Media.Animation.Curves.SubdivideCubicAtLevel","Fayde.Media.Animation.Curves.RecursiveSubdivide","Fayde.Media.Animation.Curves.SubdivideCubic","Fayde.Media.Animation.Curves.HalfLerpPoint","Fayde.Media.Animation.Curves.ConvertCubicsToQuadratics","Fayde.Media.Animation.Curves.QuadraticFromCubic","Fayde.Media.Animation.DoubleAnimation","Fayde.Media.Animation.DoubleAnimation.constructor","Fayde.Media.Animation.DoubleAnimation.GetCurrentValue","Fayde.Media.Animation.DoubleAnimation._FromChanged","Fayde.Media.Animation.DoubleAnimation._ToChanged","Fayde.Media.Animation.DoubleAnimation._ByChanged","Fayde.Media.Animation.DoubleAnimation._EasingChanged","Fayde.Media.Animation.DoubleAnimation.GenerateFrom","Fayde.Media.Animation.DoubleAnimation.GenerateTo","Fayde.Media.Animation.DoubleAnimationUsingKeyFrames","Fayde.Media.Animation.DoubleAnimationUsingKeyFrames.constructor","Fayde.Media.Animation.DoubleAnimationUsingKeyFrames.GenerateFrom","Fayde.Media.Animation.DoubleAnimationUsingKeyFrames.GenerateTo","Fayde.Media.Animation.DoubleKeyFrame","Fayde.Media.Animation.DoubleKeyFrame.constructor","Fayde.Media.Animation.DiscreteDoubleKeyFrame","Fayde.Media.Animation.DiscreteDoubleKeyFrame.constructor","Fayde.Media.Animation.DiscreteDoubleKeyFrame.InterpolateValue","Fayde.Media.Animation.EasingDoubleKeyFrame","Fayde.Media.Animation.EasingDoubleKeyFrame.constructor","Fayde.Media.Animation.EasingDoubleKeyFrame.InterpolateValue","Fayde.Media.Animation.LinearDoubleKeyFrame","Fayde.Media.Animation.LinearDoubleKeyFrame.constructor","Fayde.Media.Animation.LinearDoubleKeyFrame.InterpolateValue","Fayde.Media.Animation.SplineDoubleKeyFrame","Fayde.Media.Animation.SplineDoubleKeyFrame.constructor","Fayde.Media.Animation.SplineDoubleKeyFrame.InterpolateValue","Fayde.Media.Animation.EasingFunctionBase","Fayde.Media.Animation.EasingFunctionBase.constructor","Fayde.Media.Animation.EasingFunctionBase.Ease","Fayde.Media.Animation.EasingFunctionBase.EaseInCore","Fayde.Media.Animation.BackEase","Fayde.Media.Animation.BackEase.constructor","Fayde.Media.Animation.BackEase.EaseInCore","Fayde.Media.Animation.BounceEase","Fayde.Media.Animation.BounceEase.constructor","Fayde.Media.Animation.BounceEase.EaseInCore","Fayde.Media.Animation.CircleEase","Fayde.Media.Animation.CircleEase.constructor","Fayde.Media.Animation.CircleEase.EaseInCore","Fayde.Media.Animation.CubicEase","Fayde.Media.Animation.CubicEase.constructor","Fayde.Media.Animation.CubicEase.EaseInCore","Fayde.Media.Animation.ElasticEase","Fayde.Media.Animation.ElasticEase.constructor","Fayde.Media.Animation.ElasticEase.EaseInCore","Fayde.Media.Animation.ExponentialEase","Fayde.Media.Animation.ExponentialEase.constructor","Fayde.Media.Animation.ExponentialEase.EaseInCore","Fayde.Media.Animation.PowerEase","Fayde.Media.Animation.PowerEase.constructor","Fayde.Media.Animation.PowerEase.EaseInCore","Fayde.Media.Animation.QuadraticEase","Fayde.Media.Animation.QuadraticEase.constructor","Fayde.Media.Animation.QuadraticEase.EaseInCore","Fayde.Media.Animation.QuarticEase","Fayde.Media.Animation.QuarticEase.constructor","Fayde.Media.Animation.QuarticEase.EaseInCore","Fayde.Media.Animation.QuinticEase","Fayde.Media.Animation.QuinticEase.constructor","Fayde.Media.Animation.QuinticEase.EaseInCore","Fayde.Media.Animation.SineEase","Fayde.Media.Animation.SineEase.constructor","Fayde.Media.Animation.SineEase.EaseInCore","Fayde.Media.Animation.KeySpline","Fayde.Media.Animation.KeySpline.constructor","Fayde.Media.Animation.KeySpline.GetSplineProgress","Fayde.Media.Animation.KeySpline.InvalidateControlPoints","Fayde.Media.Animation.KeySpline._RegenerateQuadratics","Fayde.Media.Animation.ObjectAnimationUsingKeyFrames","Fayde.Media.Animation.ObjectAnimationUsingKeyFrames.constructor","Fayde.Media.Animation.ObjectAnimationUsingKeyFrames.Resolve","Fayde.Media.Animation.convertKeyFrame","Fayde.Media.Animation.ObjectKeyFrame","Fayde.Media.Animation.ObjectKeyFrame.constructor","Fayde.Media.Animation.DiscreteObjectKeyFrame","Fayde.Media.Animation.DiscreteObjectKeyFrame.constructor","Fayde.Media.Animation.DiscreteObjectKeyFrame.InterpolateValue","Fayde.Media.Animation.PointAnimation","Fayde.Media.Animation.PointAnimation.constructor","Fayde.Media.Animation.PointAnimation.GetCurrentValue","Fayde.Media.Animation.PointAnimation._FromChanged","Fayde.Media.Animation.PointAnimation._ToChanged","Fayde.Media.Animation.PointAnimation._ByChanged","Fayde.Media.Animation.PointAnimation._EasingChanged","Fayde.Media.Animation.PointAnimation.GenerateFrom","Fayde.Media.Animation.PointAnimation.GenerateTo","Fayde.Media.Animation.PointAnimationUsingKeyFrames","Fayde.Media.Animation.PointAnimationUsingKeyFrames.constructor","Fayde.Media.Animation.PointAnimationUsingKeyFrames.GenerateFrom","Fayde.Media.Animation.PointAnimationUsingKeyFrames.GenerateTo","Fayde.Media.Animation.PointKeyFrame","Fayde.Media.Animation.PointKeyFrame.constructor","Fayde.Media.Animation.DiscretePointKeyFrame","Fayde.Media.Animation.DiscretePointKeyFrame.constructor","Fayde.Media.Animation.DiscretePointKeyFrame.InterpolateValue","Fayde.Media.Animation.EasingPointKeyFrame","Fayde.Media.Animation.EasingPointKeyFrame.constructor","Fayde.Media.Animation.EasingPointKeyFrame.InterpolateValue","Fayde.Media.Animation.LinearPointKeyFrame","Fayde.Media.Animation.LinearPointKeyFrame.constructor","Fayde.Media.Animation.LinearPointKeyFrame.InterpolateValue","Fayde.Media.Animation.SplinePointKeyFrame","Fayde.Media.Animation.SplinePointKeyFrame.constructor","Fayde.Media.Animation.SplinePointKeyFrame.InterpolateValue","Fayde.Media.Animation.Storyboard","Fayde.Media.Animation.Storyboard.constructor","Fayde.Media.Animation.Storyboard.GetTargetName","Fayde.Media.Animation.Storyboard.SetTargetName","Fayde.Media.Animation.Storyboard.GetTargetProperty","Fayde.Media.Animation.Storyboard.SetTargetProperty","Fayde.Media.Animation.Storyboard.ResolveTarget","Fayde.Media.Animation.Storyboard.SetTarget","Fayde.Media.Animation.Storyboard.Begin","Fayde.Media.Animation.Storyboard.Pause","Fayde.Media.Animation.Storyboard.Resume","Fayde.Media.Animation.Storyboard.Stop","Fayde.Media.Animation.Storyboard.UpdateInternal","Fayde.Media.Animation.Storyboard.GetNaturalDurationCore","Fayde.Media.Effects","Fayde.Media.Effects.Effect","Fayde.Media.Effects.Effect.constructor","Fayde.Media.Effects.Effect.PreRender","Fayde.Media.Effects.Effect.PostRender","Fayde.Media.Effects.Effect.GetPadding","Fayde.Media.Effects.reactions","Fayde.Media.Effects.BlurEffect","Fayde.Media.Effects.BlurEffect.constructor","Fayde.Media.Effects.DropShadowEffect","Fayde.Media.Effects.DropShadowEffect.constructor","Fayde.Media.Effects.DropShadowEffect.GetPadding","Fayde.Media.Effects.DropShadowEffect.PreRender","Fayde.Media.Imaging","Fayde.Media.Imaging.ImageSource","Fayde.Media.Imaging.ImageSource.constructor","Fayde.Media.Imaging.ImageSource.pixelWidth","Fayde.Media.Imaging.ImageSource.pixelHeight","Fayde.Media.Imaging.ImageSource.isEmpty","Fayde.Media.Imaging.ImageSource.draw","Fayde.Media.Imaging.ImageSource.createPattern","Fayde.Media.Imaging.ImageSource.reset","Fayde.Media.Imaging.ImageSource.createElement","Fayde.Media.Imaging.ImageSource.setMetrics","Fayde.Media.Imaging.BitmapSource","Fayde.Media.Imaging.BitmapSource.constructor","Fayde.Media.Imaging.BitmapSource.createElement","Fayde.Media.Imaging.BitmapSource.reset","Fayde.Media.Imaging.BitmapSource.watch","Fayde.Media.Imaging.BitmapSource.watch.dispose","Fayde.Media.Imaging.BitmapSource.onImageLoaded","Fayde.Media.Imaging.BitmapSource.onImageErrored","Fayde.Media.Imaging.BitmapSource.onImageChanged","Fayde.Media.Imaging.BitmapImage","Fayde.Media.Imaging.BitmapImage.constructor","Fayde.Media.Imaging.BitmapImage.OnUriSourceChanged","Fayde.Media.Imaging.BitmapImage.onImageErrored","Fayde.Media.Imaging.BitmapImage.onImageLoaded","Fayde.Media.Imaging.BitmapImage.SetSource","Fayde.Media.Imaging.ImageBrush","Fayde.Media.Imaging.ImageBrush.constructor","Fayde.Media.Imaging.ImageBrush._SourceCoercer","Fayde.Media.Imaging.ImageBrush.setupBrush","Fayde.Media.Imaging.ImageBrush.GetTileExtents","Fayde.Media.Imaging.ImageBrush.DrawTile","Fayde.Media.Imaging.ImageBrush._ImageSourceChanged","Fayde.Media.Imaging.ImageBrush.OnImageErrored","Fayde.Media.Imaging.ImageBrush.OnImageLoaded","Fayde.Media.Imaging.ImageBrush.OnImageChanged","Fayde.Media.Imaging.encodeImage","Fayde.Media.Imaging.getImageType","Fayde.Media.Imaging.convertToBase64","Fayde.Media.Imaging.isJpg","Fayde.Media.Imaging.isPng","Fayde.Media.LinearGradient","Fayde.Media.LinearGradient.createRepeatInterpolator","Fayde.Media.LinearGradient.createRepeatInterpolator.step","Fayde.Media.LinearGradient.createRepeatInterpolator.interpolate","Fayde.Media.LinearGradient.createReflectInterpolator","Fayde.Media.LinearGradient.createReflectInterpolator.step","Fayde.Media.LinearGradient.createReflectInterpolator.interpolate","Fayde.Media.LinearGradient.calcMetrics","Fayde.Media.LinearGradient.E","Fayde.Media.LinearGradient.W","Fayde.Media.LinearGradient.S","Fayde.Media.LinearGradient.N","Fayde.Media.LinearGradient.NW","Fayde.Media.LinearGradient.SW","Fayde.Media.LinearGradient.NE","Fayde.Media.LinearGradient.SE","Fayde.Media.RadialGradient","Fayde.Media.RadialGradient.createExtender","Fayde.Media.RadialGradient.createExtender.step","Fayde.Media.RadialGradient.createExtender.createGradient","Fayde.Media.RadialGradient.exceedBounds","Fayde.Media.RadialGradient.len","Fayde.Media.VSM.VisualState","Fayde.Media.VSM.VisualState.constructor","Fayde.Media.VSM.VisualStateCollection","Fayde.Media.VSM.VisualStateCollection.constructor","Fayde.Media.VSM.VisualStateChangedEventArgs","Fayde.Media.VSM.VisualStateChangedEventArgs.constructor","Fayde.Media.VSM.VisualStateGroup","Fayde.Media.VSM.VisualStateGroup.constructor","Fayde.Media.VSM.VisualStateGroup.CurrentStoryboards","Fayde.Media.VSM.VisualStateGroup.GetState","Fayde.Media.VSM.VisualStateGroup.StartNewThenStopOld","Fayde.Media.VSM.VisualStateGroup.StopCurrentStoryboards","Fayde.Media.VSM.VisualStateGroup.Deactivate","Fayde.Media.VSM.VisualStateGroup.Activate","Fayde.Media.VSM.VisualStateGroup.RaiseCurrentStateChanging","Fayde.Media.VSM.VisualStateGroup.RaiseCurrentStateChanged","Fayde.Media.VSM.VisualStateGroupCollection","Fayde.Media.VSM.VisualStateGroupCollection.constructor","Fayde.Media.VSM.VisualStateManager","Fayde.Media.VSM.VisualStateManager.constructor","Fayde.Media.VSM.VisualStateManager.GetVisualStateGroups","Fayde.Media.VSM.VisualStateManager.SetVisualStateGroups","Fayde.Media.VSM.VisualStateManager.GetCustomVisualStateManager","Fayde.Media.VSM.VisualStateManager.SetCustomVisualStateManager","Fayde.Media.VSM.VisualStateManager.GoToState","Fayde.Media.VSM.VisualStateManager.GoToStateCore","Fayde.Media.VSM.VisualStateManager.GoToStateInternal","Fayde.Media.VSM.VisualStateManager.DestroyStoryboards","Fayde.Media.VSM.VisualStateManager.Deactivate","Fayde.Media.VSM.VisualStateManager.Activate","Fayde.Media.VSM.VisualStateManager._GetTemplateRoot","Fayde.Media.VSM.VisualStateManager.GetGroup","Fayde.Media.VSM.VisualStateManager._TryGetState","Fayde.Media.VSM.VisualStateManager._GetTransition","Fayde.Media.VSM.genDynamicTransAnimations","Fayde.Media.VSM.ensureTarget","Fayde.Media.VSM.genToAnimation","Fayde.Media.VSM.flattenTimelines","Fayde.Media.VSM.flattenTimeline","Fayde.Media.VSM.removeTuple","Fayde.Media.VSM.VisualTransition","Fayde.Media.VSM.VisualTransition.constructor","Fayde.Media.VSM.VisualTransition.GeneratedDuration","Fayde.Media.VSM.VisualTransition.IsDefault","Fayde.Media.Videos","Fayde.Media.Videos.VideoSourceBase","Fayde.Media.Videos.VideoSourceBase.constructor","Fayde.Media.Videos.VideoSourceBase.createElement","Fayde.Media.Videos.VideoSourceBase.reset","Fayde.Media.Videos.VideoSourceBase.watch","Fayde.Media.Videos.VideoSourceBase.watch.dispose","Fayde.Media.Videos.VideoSourceBase.setAutoPlay","Fayde.Media.Videos.VideoSourceBase.getIsPlaying","Fayde.Media.Videos.VideoSourceBase.Play","Fayde.Media.Videos.VideoSourceBase.Pause","Fayde.Media.Videos.VideoSourceBase.onVideoErrored","Fayde.Media.Videos.VideoSourceBase.onVideoCanPlay","Fayde.Media.Videos.VideoSourceBase.onVideoChanged","Fayde.Media.Videos.VideoSource","Fayde.Media.Videos.VideoSource.constructor","Fayde.Media.Videos.VideoSource._UriSourceChanged","Fayde.Media.Videos.VideoSource.OnUriSourceChanged","Fayde.Media.Videos.VideoSource.onVideoErrored","Fayde.Text.History","Fayde.Text.History.DeleteAction","Fayde.Text.History.DeleteAction.constructor","Fayde.Text.History.DeleteAction.Undo","Fayde.Text.History.DeleteAction.Redo","Fayde.Text.History.InsertAction","Fayde.Text.History.InsertAction.constructor","Fayde.Text.History.InsertAction.Undo","Fayde.Text.History.InsertAction.Redo","Fayde.Text.History.InsertAction.Insert","Fayde.Text.History.ReplaceAction","Fayde.Text.History.ReplaceAction.constructor","Fayde.Text.History.ReplaceAction.Undo","Fayde.Text.History.ReplaceAction.Redo","Fayde.Text.History.Tracker","Fayde.Text.History.Tracker.constructor","Fayde.Text.History.Tracker.canUndo","Fayde.Text.History.Tracker.canRedo","Fayde.Text.History.Tracker.undo","Fayde.Text.History.Tracker.redo","Fayde.Text.History.Tracker.enter","Fayde.Text.History.Tracker.insert","Fayde.Text.History.Tracker.replace","Fayde.Text.History.Tracker.delete","Fayde.Text.History.Tracker.$doAction","Fayde.debugLayers","Fayde.sexify","Fayde.sexyflags","Fayde.sexyuiflags","Fayde.isPowerOf2","Fayde.debugLayersRaw","Fayde.stringify","Fayde.getById","Fayde.debugLayersFlatten"],"mappings":"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MAAMA,CAACA,KAAKA,CAACA,CAACA,CAACA;QAEnDP,iCAAgBA,GAAhBA,UAAiBA,IAAYA;YACzBQ,EAAEA,CAACA,CAACA,IAAIA,KAAKA,KAAKA,CAACA;gBACfA,IAAIA,CAACA,aAAaA,EAAEA,CAACA;YACzBA,IAAIA,CAACA,EAAEA,CAACA,CAACA,IAAIA,KAAKA,MAAMA,CAACA;gBACrBA,IAAIA,CAACA,cAAcA,EAAEA,CAACA;QAC9BA,CAACA;QACOR,+BAAcA,GAAtBA;YACIS,IAAIA,CAACA,GAAGA,IAAIA,KAAKA,CAACA,eAAeA,EAAEA,CAACA;YACpCA,IAAIA,CAACA,GAAGA,IAAIA,CAACA,OAAOA,CAACA;YACrBA,CAACA,CAACA,WAAWA,CAACA,CAACA,CAACA,CAACA;YACjBA,CAACA,CAACA,SAASA,CAACA,KAAKA,CAACA,CAACA,EAAEA,CAACA,CAACA,CAACA;QAC5BA,CAACA;QACOT,8BAAaA,GAArBA;YACIU,IAAIA,CAACA,GAAGA,IAAIA,KAAKA,CAACA,eAAeA,EAAEA,CAACA;YACpCA,IAAIA,CAACA,GAAGA,IAAIA,CAACA,OAAOA,CAACA;YACrBA,CAACA,CAACA,UAAUA,CAACA,CAACA,CAACA,CAACA;YAChBA,CAACA,CAACA,QAAQA,CAACA,KAAKA,CAACA,CAACA,EAAEA,CAACA,CAACA,CAACA;QAC3BA,CAACA;QACDV,6BAAYA,GAAZA,UAAaA,IAA8BA;YACvCW,IAAIA,CAACA,GAAGA,IAAIA,CAACA,OAAOA,CAACA;YACrBA,CAACA,CAACA,SAASA,CAACA,IAAIA,CAACA,CAACA;YAClBA,CAACA,CAACA,OAAOA,CAACA,KAAKA,CAACA,CAACA,EAAEA,IAAIA,CAACA,CAACA;QAC7BA,CAACA;QACDX,2BAAUA,GAAVA,UAAWA,IAA8BA;YACrCY,IAAIA,CAACA,GAAGA,IAAIA,CAACA,OAAOA,CAACA;YACrBA,CAACA,CAACA,OAAOA,CAACA,IAAIA,CAACA,CAACA;YAChBA,CAACA,CAACA,KAAKA,CAACA,KAAKA,CAACA,CAACA,EAAEA,IAAIA,CAACA,CAACA;QAC3BA,CAACA;QACDZ,sCAAqBA,GAArBA,UAAsBA,GAAUA;YAC5Ba,IAAIA,CAACA,GAAGA,IAAIA,CAACA,OAAOA,CAACA;YACrBA,IAAIA,CAACA,GAAGA,IAAIA,WAAKA,CAACA,cAAcA,CAACA,GAAGA,CAACA,CAACA;YACtCA,CAACA,CAACA,kBAAkBA,CAACA,CAACA,CAACA,CAACA;YACxBA,CAACA,CAACA,gBAAgBA,CAACA,KAAKA,CAACA,CAACA,EAAEA,CAACA,CAACA,CAACA;QACnCA,CAACA;QACDb,gCAAeA,GAAfA,UAAgBA,IAA0BA,EAAEA,YAAqBA,EAAEA,aAAsBA,EAAEA,IAA0BA;YACjHc,IAAIA,CAACA,GAAGA,IAAIA,CAACA,OAAOA,CAACA;YACrBA,MAAMA,CAACA,CAACA,IAAIA,CAACA,CAACA,CAACA;gBACXA,KAAKA,WAAKA,CAACA,cAAcA,CAACA,OAAOA;oBAC7BA,EAAEA,CAACA,CAACA,YAAYA,CAACA,CAACA,CAACA;wBACfA,CAACA,CAACA,mBAAmBA,CAA6BA,IAAIA,CAACA,CAACA;wBACxDA,CAACA,CAACA,iBAAiBA,CAACA,KAAKA,CAACA,CAACA,EAAEA,IAAIA,CAACA,CAACA;oBACvCA,CAACA;oBAACA,IAAIA,CAACA,EAAEA,CAACA,CAACA,aAAaA,CAACA,CAACA,CAACA;wBACvBA,CAACA,CAACA,oBAAoBA,CAA6BA,IAAIA,CAACA,CAACA;wBACzDA,CAACA,CAACA,kBAAkBA,CAACA,KAAKA,CAACA,CAACA,EAAEA,IAAIA,CAACA,CAACA;oBACxCA,CAACA;oBACDA,KAAKA,CAACA;gBACVA,KAAKA,WAAKA,CAACA,cAAcA,CAACA,SAASA;oBAC/BA,EAAEA,CAACA,CAACA,YAAYA,CAACA,CAACA,CAACA;wBACfA,CAACA,CAACA,qBAAqBA,CAA6BA,IAAIA,CAACA,CAACA;wBAC1DA,CAACA,CAACA,mBAAmBA,CAACA,KAAKA,CAACA,CAACA,EAAEA,IAAIA,CAACA,CAACA;oBACzCA,CAACA;oBAACA,IAAIA,CAACA,EAAEA,CAACA,CAACA,aAAaA,CAACA,CAACA,CAACA;wBACvBA,CAACA,CAACA,sBAAsBA,CAA6BA,IAAIA,CAACA,CAACA;wBAC3DA,CAACA,CAACA,oBAAoBA,CAACA,KAAKA,CAACA,CAACA,EAAEA,IAAIA,CAACA,CAACA;oBAC1CA,CAACA;oBACDA,KAAKA,CAACA;gBACVA,KAAKA,WAAKA,CAACA,cAAcA,CAACA,UAAUA;oBAChCA,IAAIA,CAACA,WAAWA,GAAGA,KAAKA,CAACA;oBACzBA,CAACA,CAACA,YAAYA,CAACA,IAAIA,CAACA,CAACA;oBACrBA,CAACA,CAACA,UAAUA,CAACA,KAAKA,CAACA,CAACA,EAAEA,IAAIA,CAACA,CAACA;oBAC5BA,KAAKA,CAACA;gBACVA,KAAKA,WAAKA,CAACA,cAAcA,CAACA,UAAUA;oBAChCA,IAAIA,CAACA,WAAWA,GAAGA,IAAIA,CAACA;oBACxBA,CAACA,CAACA,YAAYA,CAACA,IAAIA,CAACA,CAACA;oBACrBA,CAACA,CAACA,UAAUA,CAACA,KAAKA,CAACA,CAACA,EAAEA,IAAIA,CAACA,CAACA;oBAC5BA,KAAKA,CAACA;gBACVA,KAAKA,WAAKA,CAACA,cAAcA,CAACA,SAASA;oBAC/BA,CAACA,CAACA,WAAWA,CAACA,IAAIA,CAACA,CAACA;oBACpBA,CAACA,CAACA,SAASA,CAACA,KAAKA,CAACA,CAACA,EAAEA,IAAIA,CAACA,CAACA;oBAC3BA,KAAKA,CAACA;gBACVA,KAAKA,WAAKA,CAACA,cAAcA,CAACA,UAAUA;oBAChCA,CAACA,CAACA,YAAYA,CAA4BA,IAAIA,CAACA,CAACA;oBAChDA,CAACA,CAACA,UAAUA,CAACA,KAAKA,CAACA,CAACA,EAA6BA,IAAIA,CAACA,CAACA;oBACvDA,KAAKA,CAACA;gBACVA;oBACIA,MAAMA,CAACA,KAAKA,CAACA;YACrBA,CAACA;YACDA,MAAMA,CAACA,IAAIA,CAACA,OAAOA,CAACA;QACxBA,CAACA;QACDd,gCAAeA,GAAfA,UAAgBA,IAA0BA,EAAEA,IAA0BA;YAClEe,IAAIA,CAACA,GAAGA,IAAIA,CAACA,OAAOA,CAACA;YACrBA,MAAMA,CAACA,CAACA,IAAIA,CAACA,CAACA,CAACA;gBACXA,KAAKA,WAAKA,CAACA,cAAcA,CAACA,SAASA;oBAC/BA,CAACA,CAACA,WAAWA,CAACA,IAAIA,CAACA,CAACA;oBACpBA,CAACA,CAACA,SAASA,CAACA,KAAKA,CAACA,CAACA,EAAEA,IAAIA,CAACA,CAACA;oBAC3BA,KAAKA,CAACA;gBACVA,KAAKA,WAAKA,CAACA,cAAcA,CAACA,OAAOA;oBAC7BA,CAACA,CAACA,SAASA,CAACA,IAAIA,CAACA,CAACA;oBAClBA,CAACA,CAACA,OAAOA,CAACA,KAAKA,CAACA,CAACA,EAAEA,IAAIA,CAACA,CAACA;oBACzBA,KAAKA,CAACA;gBACVA,KAAKA,WAAKA,CAACA,cAAcA,CAACA,SAASA;oBAC/BA,CAACA,CAACA,WAAWA,CAACA,IAAIA,CAACA,CAACA;oBACpBA,CAACA,CAACA,SAASA,CAACA,KAAKA,CAACA,CAACA,EAAEA,IAAIA,CAACA,CAACA;oBAC3BA,KAAKA,CAACA;gBACVA,KAAKA,WAAKA,CAACA,cAAcA,CAACA,UAAUA;oBAChCA,CAACA,CAACA,YAAYA,CAACA,IAAIA,CAACA,CAACA;oBACrBA,CAACA,CAACA,UAAUA,CAACA,KAAKA,CAACA,CAACA,EAAEA,IAAIA,CAACA,CAACA;oBAC5BA,KAAKA,CAACA;gBACVA,KAAKA,WAAKA,CAACA,cAAcA,CAACA,UAAUA;oBAChCA,CAACA,CAACA,YAAYA,CAACA,IAAIA,CAACA,CAACA;oBACrBA,CAACA,CAACA,UAAUA,CAACA,KAAKA,CAACA,CAACA,EAAEA,IAAIA,CAACA,CAACA;oBAC5BA,KAAKA,CAACA;gBACVA;oBACIA,MAAMA,CAACA,KAAKA,CAACA;YACrBA,CAACA;YACDA,MAAMA,CAACA,IAAIA,CAACA,OAAOA,CAACA;QACxBA,CAACA;QACDf,qCAAoBA,GAApBA,UAAqBA,CAAuBA;YACxCgB,IAAIA,CAACA,GAAGA,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wBA,CAACA,KAAKA,CAACA,EAAEA,CAACA,IAAIA,CAACA,eAAeA,EAAEA,IAAIA,CAACA,CAACA;oBACvEA,CAACA;oBACDA,EAAEA,CAACA,CAACA,IAAIA,CAACA,wBAAwBA,CAACA,CAACA,CAACA;wBAChCA,IAAIA,CAACA,wBAAwBA,CAACA,KAAKA,CAACA,EAAEA,CAACA,IAAIA,CAACA,eAAeA,EAAEA,IAAIA,CAACA,CAACA;oBACvEA,CAACA;oBACDA,EAAEA,CAACA,CAACA,IAAIA,CAACA,wBAAwBA,CAACA,CAACA,CAACA;wBAChCA,IAAIA,CAACA,wBAAwBA,CAACA,KAAKA,CAACA,EAAEA,CAACA,IAAIA,CAACA,eAAeA,EAAEA,IAAIA,CAACA,CAACA;oBACvEA,CAACA;oBACDA,EAAEA,CAACA,CAACA,IAAIA,CAACA,wBAAwBA,CAACA,CAACA,CAACA;wBAChCA,IAAIA,CAACA,wBAAwBA,CAACA,KAAKA,CAACA,EAAEA,CAACA,IAAIA,CAACA,eAAeA,EAAEA,IAAIA,CAACA,CAACA;oBACvEA,CAACA;oBACDA,EAAEA,CAACA,CAACA,IAAIA,CAACA,cAAcA,CAACA,CAACA,CAACA;wBACtBA,IAAIA,CAACA,cAAcA,CAACA,WAAWA,CAACA,EAAEA,CAACA,IAAIA,CAACA,mBAAmBA,EAAEA,IAAIA,CAACA,CAACA;wBACnEA,IAAIA,CAACA,cAAcA,CAACA,SAASA,CAACA,EAAEA,CAACA,IAAIA,CAACA,iBAAiBA,EAAEA,IAAIA,CAACA,CAACA;wBAC/DA,IAAIA,CAACA,cAAcA,CAACA,aAAaA,CAACA,EAAEA,CAACA,IAAIA,CAACA,qBAAqBA,EAAEA,IAAIA,CAACA,CAACA;oBAC3EA,CAACA;oBACDA,EAAEA,CAACA,CAACA,IAAIA,CAACA,sBAAsBA,CAACA,CAACA,CAACA;wBAC9BA,IAAIA,CAACA,sBAAsBA,CAACA,KAAKA,CAACA,EAAEA,CAACA,IAAIA,CAACA,eAAeA,EAAEA,IAAIA,CAACA,CAACA;oBACrEA,CAACA;oBACDA,EAAEA,CAACA,CAACA,IA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AGA,CAACA,CAACA,CAACA;QAC3BA,cAAcA,CAACA,EAAEA,CAACA,GAAGA,SAAGA,CAACA,CAACA,CAACA;QAC3BA,cAAcA,CAACA,EAAEA,CAACA,GAAGA,SAAGA,CAACA,CAACA,CAACA;QAC3BA,cAAcA,CAACA,EAAEA,CAACA,GAAGA,SAAGA,CAACA,CAACA,CAACA;QAC3BA,cAAcA,CAACA,EAAEA,CAACA,GAAGA,SAAGA,CAACA,CAACA,CAACA;QAC3BA,cAAcA,CAACA,EAAEA,CAACA,GAAGA,SAAGA,CAACA,CAACA,CAACA;QAC3BA,cAAcA,CAACA,EAAEA,CAACA,GAAGA,SAAGA,CAACA,CAACA,CAACA;QAC3BA,cAAcA,CAACA,EAAEA,CAACA,GAAGA,SAAGA,CAACA,CAACA,CAACA;QAC3BA,cAAcA,CAACA,EAAEA,CAACA,GAAGA,SAAGA,CAACA,CAACA,CAACA;QAC3BA,cAAcA,CAACA,EAAEA,CAACA,GAAGA,SAAGA,CAACA,CAACA,CAACA;QAC3BA,cAAcA,CAACA,EAAEA,CAACA,GAAGA,SAAGA,CAACA,CAACA,CAACA;QAC3BA,cAAcA,CAACA,EAAEA,CAACA,GAAGA,SAAGA,CAACA,CAACA,CAACA;QAC3BA,cAAcA,CAACA,EAAEA,CAACA,GAAGA,SAAGA,CAACA,CAACA,CAACA;QAC3BA,cAAcA,CAACA,EAAEA,CAACA,GAAGA,SAAGA,CAACA,CAACA,CAACA;QAC3BA,cAAcA,CAACA,EAAEA,CAACA,GAAGA,SAAGA,CAACA,CAACA,CAACA;QAC3BA,cAAcA,CAACA,EAAEA,CAACA,GAAGA,SAAGA,CAACA,CAACA,CAACA;QAC3BA,cAAcA,CAACA,EAAEA,CAACA,GAAGA,SAAGA,CAACA,CAACA,CAACA;QAC3BA,cAAcA,CAACA,EAAEA,CAACA,GAAGA,SAAGA,CAACA,CAACA,CAACA;QAC3BA,cAAcA,CAACA,EAAEA,CAACA,GAAGA,SAAGA,CAACA,CAACA,CAACA;QAC3BA,cAAcA,CAACA,EAAEA,CAACA,GAAGA,SAAGA,CAACA,CAACA,CAACA;QAC3BA,cAAcA,CAACA,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ACA,CAACA;QACbA,IAAIA,KAAKA,GAAGA,CAACA,CAACA;QACdA,IAAIA,GAAGA,GAAGA,CAACA,CAACA;QACZA,IAAIA,IAAIA,GAAGA,CAACA,CAACA;QACbA,IAAIA,MAAMA,GAAGA,CAACA,CAACA;QACfA,IAAIA,MAAMA,GAAGA,CAACA,CAACA;QACfA,IAAIA,WAAWA,GAAGA,CAACA,CAACA;QAEpBA,EAAEA,CAACA,CAACA,IAAIA,CAACA,MAAMA,KAAKA,CAACA,CAACA,CAACA,CAACA;YACpBA,IAAIA,IAAIA,GAAGA,IAAIA,CAACA,CAACA,CAACA,CAACA;YACnBA,EAAEA,CAACA,CAACA,IAAIA,YAAYA,IAAIA,CAACA,CAACA,CAACA;gBACvBA,KAAKA,GAAGA,IAAIA,CAACA,OAAOA,EAAEA,CAACA;YAC3BA,CAACA;YAACA,IAAIA,CAACA,CAACA;gBACJA,KAAKA,GAAGA,IAAIA,CAACA,CAACA,CAACA,CAACA;YACpBA,CAACA;QACLA,CAACA;QAACA,IAAIA,CAACA,EAAEA,CAACA,CAACA,IAAIA,CAACA,MAAMA,KAAKA,CAACA,CAACA,CAACA,CAACA;YAC3BA,IAAIA,IAAIA,GAAGA,IAAIA,CAACA,CAACA,CAACA,CAACA;YACnBA,EAAEA,CAACA,CAACA,IAAIA,YAAYA,IAAIA,CAACA,CAACA,CAACA;gBACvBA,KAAKA,GAAGA,IAAIA,CAACA,OAAOA,EAAEA,CAACA;YAC3BA,CAACA;YAACA,IAAIA,CAACA,CAACA;gBACJA,KAAKA,GAAGA,IAAIA,CAACA,CAACA,CAACA,CAACA;YACpBA,CAACA;YACDA,IAAIA,GAAGA,IAAIA,CAACA,CAACA,CAACA,CAACA;QACnBA,CAACA;QAACA,IAAIA,CAACA,EAAEA,CAACA,CAACA,IAAIA,CAACA,MAAMA,KAAKA,CAACA,CAACA,CAACA,CAACA;YAC3BA,IAAIA,GAAGA,IAAIA,CAACA,CAACA,CAACA,CAACA;YACfA,KAAKA,GAAGA,IAAIA,CAACA,CAACA,CAACA,CAACA;YAChBA,GAAGA,GAAGA,IAAIA,CAACA,CAACA,CAACA,CAACA;QAClBA,CAACA;QAACA,IAAIA,CAACA,EAAEA,CAACA,CAACA,IAAIA,CAACA,MAAMA,KAAKA,CAACA,CAACA,CAACA,CAACA;YAC3BA,IAAIA,GAAGA,IAAIA,CAACA,CAACA,CAACA,CAACA;YACfA,KAAKA,GAAGA,IAAIA,CAACA,CAACA,CAACA,CAACA;YAChBA,GAAGA,GAAGA,IAAIA,CAACA,CAACA,CAACA,CAACA;YACdA,IAAIA,GAAGA,IAAIA,CAACA,CAACA,CAACA,CAACA;YACfA,MAAMA,GAAGA,IAAIA,CAACA,CAACA,CAACA,CAACA;YACjBA,MAAMA,GAAGA,IAAIA,CAACA,CAACA,CAACA,CAACA;QACrBA,CAACA;QAACA,IAAIA,CAACA,EAAEA,CAACA,CAACA,IAAIA,CAACA,MAAMA,KAAKA,CAACA,CAACA,CAACA,CAACA;YAC3BA,IAAIA,GAAGA,IAAIA,CAACA,CAACA,CAACA,CAACA;YACfA,KAAKA,GAAGA,IAAIA,CAACA,CAACA,CAACA,CAACA;YAChBA,GAAGA,GAAGA,IAAIA,CAACA,CAACA,CAACA,CAACA;YACdA,IAAIA,GAAGA,IAAIA,CAACA,CAACA,CAACA,CAACA;YACfA,MAAMA,GAAGA,IAAIA,CAACA,CAACA,CAACA,CAACA;YACjBA,MAAMA,GAAGA,IAAIA,CAACA,CAACA,CAACA,CAACA;YACjBA,WAAWA,GAAGA,IAAIA,CAACA,CAACA,CAACA,CAACA;QAC1BA,CAACA;QAACA,IAAIA,CAACA,EAAEA,CAACA,CAACA,IAAIA,CAACA,MAAMA,KAAKA,CAACA,CAACA,CAACA,CAACA;YAC3BA,IAAIA,GAAGA,IAAIA,CAACA,CAACA,CAACA,CAACA;YACfA,KAAKA,GAAGA,IAAIA,CAACA,CAACA,CAACA,CAACA;YAChBA,GAAGA,GAAGA,IAAIA,CAACA,CAACA,CAACA,CAACA;YACdA,IAAIA,GAAGA,IAAIA,CAACA,CAACA,CAACA,CAACA;YACfA,MAAMA,GAAGA,IAAIA,CAACA,CAACA,CAACA,CAACA;YACjBA,MAAMA,GAAGA,I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A,CAACA,CAACA,GAAGA,CAACA,EAAEA,CAACA,CAACA,CAACA,OAAOA,EAAEA,GAAGA,QAAQA,CAACA,YAAYA,CAACA;QACjFA,IAAIA,EAAEA,GAAGA,IAAIA,QAAQA,CAACA,KAAKA,CAACA,CAACA;QAC7BA,MAAMA,CAACA,EAAEA,CAACA,GAAGA,CAACA;IAClBA,CAACA;IAgGDP,sBAAIA,2BAAKA;aAATA,cAAsBQ,MAAMA,CAACA,IAAIA,CAACA,aAAaA,CAACA,OAAOA,EAAEA,CAACA,CAACA,CAACA;;;OAAAR;IAC5DA,sBAAIA,0BAAIA;aAARA,cAA2BS,MAAMA,CAACA,IAAIA,CAACA,KAAKA,CAACA,CAACA,CAACA;;;OAAAT;IAC/CA,sBAAIA,0BAAIA;aAARA;YACIU,IAAIA,CAACA,GAAGA,IAAIA,CAACA,aAAaA,CAACA,OAAOA,EAAEA,CAACA;YACrCA,IAAIA,KAAKA,GAAGA,IAAIA,IAAIA,CAACA,CAACA,CAACA,CAACA;YACxBA,EAAEA,CAACA,CAACA,IAAIA,CAACA,KAAKA,KAAKA,YAAYA,CAACA,GAAGA,CAACA,CAACA,CAACA;gBAClCA,KAAKA,CAACA,WAAWA,CAACA,CAACA,CAACA,CAACA;gBACrBA,KAAKA,CAACA,aAAaA,CAACA,CAACA,CAACA,CAACA;gBACvBA,KAAKA,CAACA,aAAaA,CAACA,CAACA,CAACA,CAACA;gBACvBA,KAAKA,CAACA,kBAAkBA,CAACA,CAACA,CAACA,CAACA;YAChCA,CAACA;YAACA,IAAIA,CAACA,CAACA;gBACJA,KAAKA,CAACA,QAAQA,CAACA,CAACA,CAACA,CAACA;gBAClBA,KAAKA,CAACA,UAAUA,CAACA,CAACA,CAACA,CAACA;gBACpBA,KAAKA,CAACA,UAAUA,CAACA,CAACA,CAACA,CAACA;gBACpBA,KAAKA,CAACA,eAAeA,CAACA,CAACA,CAACA,CAACA;YAC7BA,CAACA;YACDA,MAAMA,CAACA,IAAIA,QAAQA,CAACA,KAAKA,CAACA,OAAOA,EAAEA,EAAEA,IAAIA,CAACA,KAAKA,CAACA,CAACA;QACrDA,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A,CAACA,YAAYA,CAACA,IAAIA,CAACA,EAAEA,MAAMA,CAACA,CAACA,CAACA;wBAC5EA,GAAGA,GAAGA,CAACA,CAACA;wBACRA,KAAKA,CAACA;oBACVA;wBACIA,aAAaA,CAACA,IAAIA,CAACA,WAAWA,CAACA,CAACA;wBAChCA,GAAGA,GAAGA,CAACA,CAACA;wBACRA,KAAKA,CAACA;gBACdA,CAACA;gBACDA,KAAKA,IAAIA,GAAGA,CAACA;YACjBA,CAACA;YACDA,MAAMA,CAACA,aAAaA,CAACA,IAAIA,CAACA,EAAEA,CAACA,CAACA;QAClCA,CAACA;QAED1B,aAAaA,EAAUA,EAAEA,GAAWA;YAChC2B,IAAIA,CAACA,GAAGA,IAAIA,CAACA,GAAGA,CAACA,EAAEA,CAACA,CAACA,QAAQA,EAAEA,CAACA;YAChCA,OAAOA,CAACA,CAACA,MAAMA,GAAGA,CAACA;gBACfA,CAACA,GAAGA,GAAGA,GAAGA,CAACA,CAACA;YAChBA,CAACA,IAAIA,MAAMA,CAACA;YACZA,MAAMA,CAACA,CAACA,CAACA,MAAMA,CAACA,CAACA,EAAEA,GAAGA,CAACA,CAACA;QAC5BA,CAACA;QACD3B,aAAaA,EAAUA,EAAEA,GAAWA;YAChC4B,IAAIA,CAACA,GAAGA,GAAGA,CAACA,EAAEA,EAAEA,GAAGA,CAACA,CAACA;YACrBA,IAAIA,GAAGA,GAAGA,CAACA,CAACA,MAAMA,GAAGA,CAACA,CAACA;YACvBA,GAAGA,CAACA,CAACA,EAAEA,GAAGA,IAAIA,CAACA,EAAEA,GAAGA,EAAEA,EAAEA,CAACA;gBACrBA,EAAEA,CAACA,CAACA,CAACA,CAACA,GAAGA,CAACA,KAAKA,GAAGA,CAACA;oBACfA,KAAKA,CAACA;YACdA,CAACA;YACDA,MAAMA,CAACA,CAACA,CAACA,KAAKA,CAACA,CAACA,EAAEA,GAAGA,GAAGA,CAACA,CAACA,CAACA;QAC/BA,CAACA;QAED5B;YACIoB,MAAMA,CAACA,IAAIA,eAAeA,CAACA,wBAAwBA,CAACA,CAACA;QACzDA,CAACA;IACLpB,CAACA,EA1YYz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A,CAACA,CAACA,CAACA,CAACA,CAACA,CAACA;wBACRA,KAAKA,GAAGA,CAACA;wBACTA,KAAKA,GAAGA;4BACJA,CAACA,GAAGA,IAAIA,CAACA,GAAGA,CAACA,MAAMA,CAACA,IAAIA,CAACA,KAAKA,CAACA,CAACA;4BAChCA,EAAEA,CAACA,CAACA,CAACA,KAAKA,GAAGA,CAACA;gCACVA,QAAQA,GAAGA,YAAMA,CAACA,QAAQA,CAACA,OAAOA,CAACA;4BACvCA,IAAIA,CAACA,EAAEA,CAACA,CAACA,CAACA,KAAKA,GAAGA,CAACA;gCACfA,QAAQA,GAAGA,YAAMA,CAACA,QAAQA,CAACA,OAAOA,CAACA;4BACvCA,IAAIA;gCACAA,MAAMA,CAACA,IAAIA,CAACA;4BAChBA,IAAIA,CAACA,KAAKA,EAAEA,CAACA;4BACbA,CAACA,GAAGA,IAAIA,CAACA,GAAGA,CAACA,MAAMA,CAACA,IAAIA,CAACA,KAAKA,CAACA,CAACA;4BAChCA,KAAKA,CAACA;wBACVA,KAAKA,GAAGA;4BACJA,QAAQA,GAAGA,IAAIA,CAACA;wBACpBA,KAAKA,GAAGA;4BACJA,GAAGA,GAAGA,IAAIA,CAACA,UAAUA,EAAEA,CAACA;4BACxBA,EAAEA,CAACA,CAACA,GAAGA,IAAIA,IAAIA,CAACA;gCACZA,KAAKA,CAACA;4BACVA,EAAEA,CAACA,CAACA,QAAQA,CAACA,CAACA,CAACA;gCACXA,GAAGA,CAACA,CAACA,IAAIA,EAAEA,CAACA,CAACA,CAACA;gCACdA,GAAGA,CAACA,CAACA,IAAIA,EAAEA,CAACA,CAACA,CAACA;4BAClBA,CAACA;4BACDA,IAAIA,CAACA,IAAIA,CAACA,GAAGA,CAACA,CAACA,EAAEA,GAAGA,CAACA,CAACA,CAACA,CAACA;4BACxBA,KAAKA,CAACA,CAACA,GAAGA,EAAEA,CAACA,CAACA,GAAGA,GAAGA,CAACA,CAACA,CAACA;4BACvBA,KAAKA,CAACA,CAACA,GAAGA,EAAEA,CAACA,CAACA,GAAGA,GAAGA,CAACA,CAACA,CAACA;4BACvBA,IAAIA,CAACA,OAAOA,EAAEA,CAACA;4BACfA,OAAOA,IAAIA,CAACA,mBAAmBA,EAAEA,EAAEA,CAACA;gCAChCA,EAAEA,CAACA,CAACA,CAACA,GAAGA,GAAGA,IAAIA,CAACA,UAAUA,EAAEA,CAACA,IAAIA,IAAIA,CAACA;oCAClCA,KAAKA,CAACA;gCACVA,EAAEA,CAACA,CAACA,QAAQA,CAACA,CAACA,CAACA;oCACXA,GAAGA,CAACA,CAACA,IAAIA,EAAEA,CAACA,CAACA,CAACA;oCACdA,GAAGA,CAACA,CAACA,IAAIA,EAAEA,CAACA,CAACA,CAACA;gCAClBA,CAACA;gCACDA,IAAIA,CAACA,IAAIA,CAACA,GAAGA,CAACA,CAACA,EAAEA,GAAGA,CAACA,CAACA,CAACA,CAACA;4BAC5BA,CAACA;4BACDA,EAAEA,CAACA,CAACA,GAAGA,GAAGA,CAACA,CAACA,CAACA;4BACbA,EAAEA,CAACA,CAACA,GAAGA,GAAGA,CAACA,CAACA,CAACA;4BACbA,GAAGA,GAAGA,GAAGA,GAAGA,KAAKA,CAACA;4BAClBA,KAAKA,CAACA;wBACVA,KAAKA,GAAGA;4BACJA,QAAQA,GAAGA,IAAIA,CAACA;wBACpBA,KAAKA,GAAGA;4BACJA,OAAOA,IAAIA,CAACA,mBAAmBA,EAAEA,EAAEA,CAACA;gCAChCA,EAAEA,CAACA,CAACA,CAACA,GAAGA,GAAGA,IAAIA,CAACA,UAAUA,EAAEA,CAACA,IAAIA,IAAIA,CAACA;oCAClCA,KAAKA,CAACA;gCAEVA,EAAEA,CAACA,CAACA,QAAQA,CAACA,CAACA,CAACA;oCACXA,GAAGA,CAACA,CAACA,IAAIA,EAAEA,CAACA,CAACA,CAACA;oCACdA,GAAGA,CAACA,CAACA,IAAIA,EAAEA,CAACA,CAACA,CAACA;gCAClBA,CAACA;gCAEDA,IAAIA,CAACA,IAAIA,CAACA,GAAGA,CAACA,CAACA,EAAEA,GAAGA,CAACA,CAACA,CAACA,CAACA;gCAExBA,EAAEA,CAACA,CAACA,GAAGA,GAAGA,CAACA,CAACA,CAACA;gCACbA,EAAEA,CAACA,CAACA,GAAGA,GAAGA,CAACA,CAACA,CAACA;gCACbA,IAAIA,CAACA,OAAOA,EAAEA,CAACA;4BACnBA,CAACA;4BACDA,GAAGA,GAAGA,GAAGA,GAAGA,KAAKA,CAACA;4BAClBA,KAAKA,CAACA;wBACVA,KAAKA,GAAGA;4BACJA,QAAQA,GAAGA,IAAIA,CAACA;wBACpBA,KAAKA,GAAGA;4BACJA,IAAIA,CAACA,GAAGA,IAAIA,CAACA,WAAWA,EAAEA,CAACA;4BAC3BA,EAAEA,CAACA,CAACA,CAACA,IAAIA,IAAIA,CAACA;gCACVA,KAAKA,CAACA;4BAEVA,EAAEA,CAACA,CAACA,QAAQA,CAACA;gCACTA,CAACA,IAAIA,EAAEA,CAACA,CAACA,CAACA;4BACdA,EAAEA,GAAGA,IAAIA,KAAKA,CAACA,CAACA,EAAEA,EAAEA,CAACA,CAACA,CAACA,CAACA;4BAExBA,IAAIA,CAACA,IAAIA,CAACA,EAAEA,CAACA,CAACA,EAAEA,EAAEA,CAACA,CAACA,CAACA,CAACA;4BACtBA,GAAGA,GAAGA,GAAGA,GAAGA,KAAKA,CAACA;4BAClBA,KAAKA,CAACA;wBACVA,KAAKA,GAAGA;4BACJA,QAAQA,GAAGA,IAAIA,CAACA;wBACpBA,KAAKA,GAAGA;4BACJA,IAAIA,CAACA,GAAGA,IAAIA,CAACA,WAAWA,EAAEA,CAACA;4BAC3BA,EAAEA,CAACA,CAACA,CAACA,IAAIA,IAAIA,CAACA;gCACVA,KAAKA,CAACA;4BAEVA,EAAEA,CAACA,CAACA,QAAQA,CAACA;gCACTA,CAACA,IAAIA,EAAEA,CAACA,CAACA,CAACA;4BACdA,EAAEA,GAAGA,IAAIA,KAAKA,CAACA,EAAEA,CAACA,CAACA,EAAEA,CAACA,CAACA,CAACA;4BAExBA,IAAIA,CAACA,IAAIA,CAACA,EAAEA,CAACA,CAACA,EAAEA,EAAEA,CAACA,CAACA,CAACA,CAACA;4BACtBA,GAAGA,GAAGA,GAAGA,GAAGA,KAAKA,CAACA;4BAClBA,KAAKA,CAACA;wBACVA,KAAKA,GAAGA;4BACJA,QAAQA,GAAGA,IAAIA,CAACA;wBACpBA,KAAKA,GAAGA;4BACJA,OAAOA,IAAIA,CAACA,mBAAmBA,EAAEA,EAAEA,CAACA;gCAChCA,EAAEA,CAACA,CAACA,CAACA,GAAGA,GAAGA,IAAIA,CAACA,UAAUA,EAAEA,CAACA,IAAIA,IAAIA,CAACA;oCAClCA,KAAKA,CAACA;gCACVA,EAAEA,CAACA,CAACA,QAAQA,CAACA,CAACA,CAACA;oCACXA,GAAGA,CAACA,CAACA,IAAIA,EAAEA,CAACA,CAACA,CAACA;oCACdA,GAAGA,CAACA,CAACA,IAAIA,EAAEA,CAACA,CAACA,CAACA;gCAClBA,CAACA;gCACDA,IAAIA,CAACA,OAAOA,EAAEA,CAACA;gCACfA,EAAEA,CAACA,CAACA,CAACA,GAAGA,GAAGA,IAAIA,CAACA,UAAUA,EAAEA,CAACA,IAAIA,IAAIA,CAACA;oCAClCA,KAAKA,CAACA;gCACVA,EAAEA,CAACA,CAACA,QAAQA,CAACA,CAACA,CAACA;oCACXA,GAAGA,CAACA,CAACA,IAAIA,EAAEA,CAACA,CAACA,CAACA;oCACdA,GAAGA,CAACA,CAACA,IAAIA,EAAEA,CAACA,CAACA,CAACA;gCAClBA,CAACA;gCACDA,IAAIA,CAACA,OAAOA,EAAEA,CAACA;gCACfA,EAAEA,CAACA,CAACA,CAACA,GAAGA,GAAGA,IAAIA,CAACA,UAAUA,EAAEA,CAACA,IAAIA,IAAIA,CAACA;oCAClCA,KAAKA,CAACA;gCACVA,EAAEA,CAACA,CAACA,QAAQA,CAACA,CAACA,CAACA;oCACXA,GAAGA,CAACA,CAACA,IAAIA,EAAEA,CAACA,CAACA,CAACA;oCACdA,GAAGA,CAACA,CAACA,IAAIA,EAAEA,CAACA,CAACA,CAACA;gCAClBA,CAACA;gCACDA,IAAIA,CAACA,OAAOA,EAAEA,CAACA;gCAEfA,IAAIA,CAACA,WAAWA,CAACA,GAAGA,CAACA,CAACA,EAAEA,GAAGA,CAACA,CAACA,EAAEA,GAAGA,CAACA,CAACA,EAAEA,GAAGA,CAACA,CAACA,EAAEA,GAAGA,CAACA,CAACA,EAAEA,GAAGA,CAACA,CAACA,CAACA,CAACA;gCAE3DA,GAAGA,CAACA,CAACA,GAAGA,GAAGA,CAACA,CAACA,CAACA;gCACdA,GAAGA,CAACA,CAACA,GAAGA,GAAGA,CAACA,CAACA,CAACA;4BAClBA,CAACA;4BACDA,EAAEA,CAACA,CAACA,GAAGA,GAAGA,CAACA,CAACA,CAACA;4BACbA,EAAEA,CAACA,CAACA,GAAGA,GAAGA,CAACA,CAACA,CAACA;4BACbA,GAAGA,GAAGA,IAAIA,CAACA;4BACXA,IAAIA,CAACA,CAACA,GAAGA,GAAGA,CAACA,CAACA,CAACA;4BACfA,IAAIA,CAACA,CAACA,GAAGA,GAAGA,CAACA,CAACA,CAACA;4BACfA,GAAGA,GAAGA,KAAKA,CAACA;4BACZA,KAAKA,CAACA;wBACVA,KAAKA,GAAGA;4BACJA,QAAQA,GAAGA,IAAIA,CAACA;wBACpBA,KAAKA,GAAGA;4BACJA,OAAOA,IAAIA,CAACA,mBAAmBA,EAAEA,EAAEA,CAACA;gCAChCA,EAAEA,CAACA,CAACA,CAACA,GAAGA,GAAGA,IAAIA,CAACA,UAAUA,EAAEA,CAACA,IAAIA,IAAIA,CAACA;oCAClCA,KAAKA,CAACA;gCACVA,EAAEA,CAACA,CAACA,QAAQA,CAACA,CAACA,CAACA;oCACXA,GAAGA,CAACA,CAACA,IAAIA,EAAEA,CAACA,CAACA,CAACA;oCACdA,GAAGA,CAACA,CAACA,IAAIA,EAAEA,CAACA,CAACA,CAACA;gCAClBA,CAACA;gCACDA,IAAIA,CAACA,OAAOA,EAAEA,CAACA;gCACfA,EAAEA,CAACA,CAACA,CAACA,GAAGA,GAAGA,IAAIA,CAACA,UAAUA,EAAEA,CAACA,IAAIA,IAAIA,CAACA;oCAClCA,KAAKA,CAACA;gCACVA,EAAEA,CAACA,CAACA,QAAQA,CAACA,CAACA,CAACA;oCACXA,GAAGA,CAACA,CAACA,IAAIA,EAAEA,CAACA,CAACA,CAACA;oCACdA,GAAGA,CAACA,CAACA,IAAIA,EAAEA,CAACA,CAACA,CAACA;gCAClBA,CAACA;gCAEDA,EAAEA,CAACA,CAACA,GAAGA,CAACA,CAACA,CAACA;oCACNA,GAAGA,CAACA,CAACA,GAAGA,CAACA,GAAGA,EAAEA,CAACA,CAACA,GAAGA,IAAIA,CAACA,CAACA,CAACA;oCAC1BA,GAAGA,CAACA,CAACA,GAAGA,CAACA,GAAGA,EAAEA,CAACA,CAACA,GAAGA,IAAIA,CAACA,CAACA,CAACA;gCAC9BA,CAACA;gCAACA,IAAIA;oCACFA,GAAGA,GAAGA,EAAEA,CAACA;gCAEbA,IAAIA,CAACA,WAAWA,CAACA,GAAGA,CAACA,CAACA,EAAEA,GAAGA,CAACA,CAACA,EAAEA,GAAGA,CAACA,CAACA,EAAEA,GAAGA,CAACA,CAACA,EAAEA,GAAGA,CAACA,CAACA,EAAEA,GAAGA,CAACA,CAACA,CAACA,CAACA;gCAE3DA,GAAGA,GAAGA,IAAIA,CAACA;gCACXA,IAAIA,CAACA,CAACA,GAAGA,GAAGA,CAACA,CAACA,CAACA;gCACfA,IAAIA,CAACA,CAACA,GAAGA,GAAGA,CAACA,CAACA,CAACA;gCAEfA,EAAEA,CAACA,CAACA,GAAGA,GAAGA,CAACA,CAACA,CAACA;gCACbA,EAAEA,CAACA,CAACA,GAAGA,GAAGA,CAACA,CAACA,CAACA;gCAEbA,IAAIA,CAACA,OAAOA,EAAEA,CAACA;4BACnBA,CAACA;4BACDA,GAAGA,GAAGA,KAAKA,CAACA;4BACZA,KAAKA,CAACA;wBACVA,KAAKA,GAAGA;4BACJA,QAAQA,GAAGA,IAAIA,CAACA;wBACpBA,KAAKA,GAAGA;4BACJA,OAAOA,IAAIA,CAACA,mBAAmBA,EAAEA,EAAEA,CAACA;gCAChCA,EAAEA,CAACA,CAACA,CAACA,GAAGA,GAAGA,IAAIA,CAACA,UAAUA,EAAEA,CAACA,IAAIA,IAAIA,CAACA;oCAClCA,KAAKA,CAACA;gCACVA,EAAEA,CAACA,CAACA,QAAQA,CAACA,CAACA,CAACA;oCACXA,GAAGA,CAACA,CAACA,IAAIA,EAAEA,CAACA,CAACA,CAACA;oCACdA,GAAGA,CAACA,CAACA,IAAIA,EAAEA,CAACA,CAACA,CAACA;gCAClBA,CAACA;gCACDA,IAAIA,CAACA,OAAOA,EAAEA,CAACA;gCACfA,EAAEA,CAACA,CAACA,CAACA,GAAGA,GAAGA,IAAIA,CAACA,UAAUA,EAAEA,CAACA,IAAIA,IAAIA,CAACA;oCAClCA,KAAKA,CAACA;gCACVA,EAAEA,CAACA,CAACA,QAAQA,CAACA,CAACA,CAACA;oCACXA,GAAGA,CAACA,CAACA,IAAIA,EAAEA,CAACA,CAACA,CAACA;oCACdA,GAAGA,CAACA,CAACA,IAAIA,EAAEA,CAACA,CAACA,CAACA;gCAClBA,CAACA;gCACDA,IAAIA,CAACA,OAAOA,EAAEA,CAACA;gCAEfA,IAAIA,CAACA,eAAeA,CAACA,GAAGA,CAACA,CAACA,EAAEA,GAAGA,CAACA,CAACA,EAAEA,GAAGA,CAACA,CAACA,EAAEA,GAAGA,CAACA,CAACA,CAACA,CAACA;gCAEjDA,EAAEA,CAACA,CAACA,GAAGA,GAAGA,CAACA,CAACA,CAACA;gCACbA,EAAEA,CAACA,CAACA,GAAGA,GAAGA,CAACA,CAACA,CAACA;4BACjBA,CAACA;4BACDA,GAAGA,GAAGA,IAAIA,CAACA;4BACXA,IAAIA,CAACA,CAACA,GAAGA,GAAGA,CAACA,CAACA,CAACA;4BACfA,IAAIA,CAACA,CAACA,GAAGA,GAAGA,CAACA,CAACA,CAACA;4BACfA,GAAGA,GAAGA,KAAKA,CAACA;4BACZA,KAAKA,CAACA;wBACVA,KAAKA,GAAGA;4BACJA,QAAQA,GAAGA,IAAIA,CAACA;wBACpBA,KAAKA,GAAGA;4BACJA,OAAOA,IAAIA,CAACA,mBAAmBA,EAAEA,EAAEA,CAACA;gCAChCA,EAAEA,CAACA,CAACA,CAACA,GAAGA,GAAGA,IAAIA,CAACA,UAAUA,EAAEA,CAACA,IAAIA,IAAIA,CAACA;oCAClCA,KAAKA,CAACA;gCACVA,EAAEA,CAACA,CAACA,QAAQA,CAACA,CAACA,CAACA;oCACXA,GAAGA,CAACA,CAACA,IAAIA,EAAEA,CAACA,CAACA,CAACA;oCACdA,GAAGA,CAACA,CAACA,IAAIA,EAAEA,CAACA,CAACA,CAACA;g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ACA;gBACxBA,SAASA,CAACA,UAAUA,GAAGA,aAAaA,CAACA,MAAMA,CAACA,CAACA,GAAGA,CAACA,EAAEA,GAAGA,GAAGA,CAACA,CAACA,CAACA;gBAC5DA,EAAEA,CAACA,CAACA,CAACA,SAASA,CAACA,UAAUA,CAACA;oBACtBA,MAAMA,IAAIA,yBAAyBA,CAACA,sDAAsDA,CAACA,CAACA;gBAChGA,CAACA,IAAIA,GAAGA,CAACA;gBACTA,SAASA,CAACA,UAAUA,GAAGA,CAACA,CAACA,GAAGA,CAACA,CAACA,GAAGA,aAAaA,CAACA,MAAMA,GAAGA,aAAaA,CAACA,CAACA,CAACA,GAAGA,IAAIA,CAACA;gBAChFA,MAAMA,CAACA,SAASA,CAACA;YACrBA,CAACA;YACDD,wBAAwBA,SAAqBA;gBACzCE,EAAEA,CAACA,CAACA,SAASA,CAACA,UAAUA,KAAKA,IAAIA,CAACA,CAACA,CAACA;oBAChCA,SAASA,CAACA,KAAKA,GAAGA,MAAMA,CAACA,MAAMA,CAACA,CAACA,CAACA,CAACA;oBACnCA,EAAEA,CAACA,CAACA,SAASA,CAACA,KAAKA,CAACA;wBAChBA,CAACA,IAAIA,SAASA,CAACA,KAAKA,CAACA,MAAMA,CAACA;oBAChCA,MAAMA,CAACA,SAASA,CAACA;gBACrBA,CAACA;gBACDA,SAASA,CAACA,KAAKA,GAAGA,EAAEA,CAACA;gBACrBA,OAAOA,CAACA,GAAGA,MAAMA,CAACA,MAAMA,EAAEA,CAACA;oBACvBA,EAAEA,CAACA,CAACA,MAAMA,CAACA,CAACA,CAACA,IAAIA,SAASA,CAACA,UAAUA,CAACA;wBAClCA,MAAMA,CAACA;oBACXA,SAASA,CAACA,KAAKA,IAAIA,MAAMA,CAACA,CAACA,CAACA,CAACA;oBAC7BA,CAACA,EAAEA,CAACA;gBACRA,CAACA;YACLA,CAACA;YACDF,wBAAwBA,MAAoBA;gBACxCS,IAAIA,GAAGA,GAAGA,cAAcA,CAACA;gBACzBA,IAAIA,GAAGA,GAAGA,MAAMA,CAACA,MAAMA,CAACA;gBACxBA,IAAIA,KAAiBA,CAACA;gBACtBA,GAAGA,CAACA,CAACA,GAAGA,CAACA,CAACA,GAAGA,CAACA,EAAEA,CAACA,GAAGA,GAAGA,EAAEA,CAACA,EAAEA,EAAEA,CAACA;oBAC3BA,KAAKA,GAAGA,MAAMA,CAACA,CAACA,CAACA,CAACA;oBAClBA,GAAGA,GAAGA,GAAGA,CAACA,OAAOA,CAACA,GAAGA,GAAGA,KAAKA,CAACA,UAAUA,GAAGA,GAAGA,EAAEA,KAAKA,CAACA,KAAKA,CAACA,CAACA;gBACjEA,CAACA;gBACDA,MAAMA,CAACA,GAAGA,CAACA;YACfA,CAACA;YAEDT,MAAMA,CAACA;gBACHA,KAAKA,EAAEA;oBACH,IAAI,MAAM,GAAiB,EAAE,CAAC;oBAC9B,EAAE,CAAC,CAAC,aAAa,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC;wBAC7B,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,CAAC;4BACpB,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;wBAClC,MAAM,CAAC,IAAI,CAAC;oBAChB,CAAC;oBAED,OAAO,CAAC,GAAG,aAAa,CAAC,MAAM,IAAI,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;wBACnD,EAAE,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;4BAC3B,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC;4BAChD,QAAQ,CAAC;wBACb,CAAC;wBACD,EAAE,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC,CAAC;4BAC/B,MAAM,CAAC,IAAI,CAAC;wBAChB,CAAC,EAAE,CAAC;wBACJ,CAAC,EAAE,CAAC;oBACR,CAAC;oBACD,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;gBAClC,CAAC;aACJA,CAACA;QACNA,CAACA;IACLtsC,CAACA,EA/FYvxB,UAAUA,GAAVA,gBAAUA,KAAVA,gBAAUA,QA+FtBA;AAADA,CAACA,EA/FM,KAAK,KAAL,KAAK,QA+FX;ACjGD;IAAAu+D;QAIIC,MAACA,GAAWA,CAACA,CAACA;QACdA,MAACA,GAAWA,CAACA,CAACA;QACdA,MAACA,GAAWA,CAACA,CAACA;QACdA,MAACA,GAAWA,GAAGA,CAACA;IA+NpBA,CAACA;IA7NGD,mBAAGA,GAAHA,UAAIA,MAAaA;QACbE,IAAIA,CAACA,GAAGA,IAAIA,KAAKA,EAAEA,CAACA;QACpBA,CAACA,CAACA,CAACA,GAAGA,IAAIA,CAACA,CAACA,GAAGA,MAAMA,CAACA,CAACA,CAACA;QACxBA,CAACA,CAACA,CAACA,GAAGA,IAAIA,CAACA,CAACA,GAAGA,MAAMA,CAACA,CAACA,CAACA;QACxBA,CAACA,CAACA,CAACA,GAAGA,IAAIA,CAACA,CAACA,GAAGA,MAAMA,CAACA,CAACA,CAACA;QACxBA,CAACA,CAACA,CAACA,GAAGA,IAAIA,CAACA,CAACA,GAAGA,MAAMA,CAACA,CAACA,CAACA;QACxBA,MAAMA,CAACA,CAACA,CAACA;IACbA,CAACA;IACDF,wBAAQA,GAARA,UAASA,MAAaA;QAClBG,IAAIA,CAACA,GAAGA,IAAIA,KAAKA,EAAEA,CAACA;QACpBA,CAACA,CAACA,CAACA,GAAGA,IAAIA,CAACA,CAACA,GAAGA,MAAMA,CAACA,CAACA,CAACA;QACxBA,CAACA,CAACA,CAACA,GAAGA,IAAIA,CAACA,CAACA,GAAGA,MAAMA,CAACA,CAACA,CAACA;QACxBA,CAACA,CAACA,CAACA,GAAGA,IAAIA,CAACA,CAACA,GAAGA,MAAMA,CAACA,CAACA,CAACA;QACxBA,CAACA,CAACA,CAACA,GAAGA,IAAIA,CAACA,CAACA,GAAGA,MAAMA,CAACA,CAACA,CAACA;QACxBA,MAAMA,CAACA,CAACA,CAACA;IACbA,CAACA;IACDH,wBAAQA,GAARA,UAASA,MAAcA;QACnBI,IAAIA,CAACA,GAAGA,IAAIA,KAAKA,EAAEA,CAACA;QACpBA,CAACA,CAACA,CAACA,GAAGA,IAAIA,CAACA,CAACA,GAAGA,MAAMA,CAACA;QACtBA,CAACA,CAACA,CAACA,GAAGA,IAAIA,CAACA,CAACA,GAAGA,MAAMA,CAACA;QACtBA,CAACA,CAACA,CAACA,GAAGA,IAAIA,CAACA,CAACA,GAAGA,MAAMA,CAACA;QACtBA,CAACA,CAACA,CAACA,GAAGA,IAAIA,CAACA,CAACA,GAAGA,MAAMA,CAACA;QACtBA,MAAMA,CAACA,CAACA,CAACA;IACbA,CAACA;IACDJ,sBAAMA,GAANA,UAAOA,KAAYA;QACfK,MAAMA,CAACA,IAAIA,CAACA,CAACA,KAAKA,KAAKA,CAACA,CAACA;eAClBA,IAAIA,CAACA,CAACA,KAAKA,KAAKA,CAACA,CAACA;eAClBA,IAAIA,CAACA,CAACA,KAAKA,KAAKA,CAACA,CAACA;eAClBA,IAAIA,CAACA,CAACA,KAAKA,KAAKA,CAACA,CAACA,CAACA;IAC9BA,CAACA;IACDL,wBAAQA,GAARA;QACIM,IAAIA,CAACA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,IAAIA,CAACA,CAACA,CAACA,IAAIA,CAACA,CAACA;QAChCA,IAAIA,CAACA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,IAAIA,CAACA,CAACA,CAACA,IAAIA,CAACA,CAACA;QAChCA,IAAIA,CAACA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,IAAIA,CAACA,CAACA,CAACA,IAAIA,CAACA,CAACA;QAChCA,IAAIA,CAACA,GAAGA,IAAIA,CAACA,CAACA,IAAIA,CAACA,CAACA;QACpBA,MAAMA,CAACA,UAAQA,CAACA,UAAKA,CAACA,UAAKA,CAACA,UAAKA,CAACA,MAAGA,CAACA;IAC1CA,CAACA;IACDN,kCAAkBA,GAAlBA;QACIO,MAAMA,CAACA,GAAGA,GAAGA,IAAIA,CAACA,CAACA,CAACA,QAAQA,CAACA,EAAEA,CAACA,GAAGA,IAAIA,CAACA,CAACA,CAACA,QAAQA,CAACA,EAAEA,CAACA,GAAGA,IAAIA,CAACA,CAACA,CAACA,QAAQA,CAACA,EAAEA,CAACA,CAACA;IACjFA,CAACA;IAEDP,qBAAKA,GAALA;QACIQ,MAAMA,CAACA,KAAKA,CAACA,QAAQA,CAACA,IAAIA,CAACA,CAACA,EAAEA,IAAIA,CAACA,CAACA,EAAEA,IAAIA,CAACA,CAACA,EAAEA,IAAIA,CAACA,CAACA,CAACA,CAACA;IAC1DA,CAACA;IAEMR,UAAIA,GAAXA,UAAYA,KAAYA,EAAEA,GAAUA,EAAEA,CAASA;QAC3CS,IAAIA,CAACA,GAAGA,IAAIA,KAAKA,EAAEA,CAACA;QACpBA,CAACA,CAACA,CAACA,GAAGA,KAAKA,CAACA,CAACA,GAAGA,CAACA,GAAGA,CAACA,CAACA,GAAGA,KAAKA,CAACA,CAACA,CAACA,GAAGA,CAACA,CAACA;QACtCA,CAACA,CAACA,CAACA,GAAGA,KAAKA,CAACA,CAACA,GAAGA,CAACA,GAAGA,CAACA,CAACA,GAAGA,KAAKA,CAACA,CAACA,CAACA,GAAGA,CAACA,CAACA;QACtCA,CAACA,CAACA,CAACA,GAAGA,KAAKA,CAACA,CAACA,GAAGA,CAACA,GAAGA,CAACA,CAACA,GAAGA,KAAKA,CAACA,CAACA,CAACA,GAAGA,CAACA,CAACA;QACtCA,CAACA,CAACA,CAACA,GAAGA,KAAKA,CAACA,CAACA,GAAGA,CAACA,GAAGA,CAACA,CAACA,GAAGA,KAAKA,CAACA,CAACA,CAACA,GAAGA,CAACA,CAACA;QACtCA,MAAMA,CAACA,CAACA,CAACA;IACbA,CAACA;IACMT,cAAQA,GAAfA,UAAgBA,CAASA,EAAEA,CAASA,EAAEA,CAASA,EAAEA,CAASA;QACtDU,IAAIA,CAACA,GAAGA,IAAIA,KAAKA,EAAEA,CAACA;QACpBA,CAACA,CAACA,CAACA,GAAGA,CAACA,CAACA;QACRA,CAACA,CAACA,CAACA,GAAGA,CAACA,CAACA;QACRA,CAACA,CAACA,CAACA,GAAGA,CAACA,CAACA;QACRA,CAACA,CAACA,CAACA,GAAGA,CAACA,CAACA;QACRA,MAAMA,CAACA,CAACA,CAACA;IACbA,CAACA;IACMV,aAAOA,GAAdA,UAAeA,GAAWA;QACtBW,IAAIA,KAAKA,CAACA;QACVA,IAAIA,CAACA,GAAGA,IAAIA,KAAKA,EAAEA,CAACA;QACpBA,EAAEA,CAACA,CAACA,CAACA,KAAKA,GAAGA,KAAKA,CAACA,YAAYA,CAACA,IAAIA,CAACA,GAAGA,CAACA,CAACA,IAAIA,IAAIA,CAACA,CAACA,CAACA;YACjDA,CAACA,CAACA,CAACA,GAAGA,QAAQA,CAACA,KAAKA,CAACA,CAACA,CAACA,EAAEA,EAAEA,CAACA,GAAGA,KAAKA,CAACA;YACrCA,CAACA,CAACA,CAACA,GAAGA,QAAQA,CAACA,KAAKA,CAACA,CAACA,CAACA,EAAEA,EAAEA,CAACA,CAACA;YAC7BA,CAACA,CAACA,CAACA,GAAGA,QAAQA,CAACA,KAAKA,CAACA,CAACA,CAACA,EAAEA,EAAEA,CAACA,CAACA;YAC7BA,CAACA,CAACA,CAACA,GAAGA,QAAQA,CAACA,KAAKA,CAACA,CAACA,CAACA,EAAEA,EAAEA,CAACA,CAACA;QACjCA,CAACA;QAACA,IAAIA,CAACA,EAAEA,CAACA,CAACA,CAACA,KAAKA,GAAGA,KAAKA,CAACA,cAAcA,CAACA,IAAIA,CAACA,GAAGA,CAACA,CAACA,IAAIA,IAAIA,CAACA,CAACA,CAACA;YAC1DA,CAACA,CAACA,CAACA,GAAGA,GAAGA,CAACA;YACVA,CAACA,CAACA,CAACA,GAAGA,QAAQA,CAACA,KAAKA,CAACA,CAACA,CAACA,EAAEA,EAAEA,CAACA,CAACA;YAC7BA,CAACA,CAACA,CAACA,GAAGA,QAAQA,CAACA,KAAKA,CAACA,CAACA,CAACA,EAAEA,EAAEA,CAACA,CAACA;YAC7BA,CAACA,CAACA,CAACA,GAAGA,QAAQA,CAACA,KAAKA,CAACA,CAACA,CAACA,EAAEA,EAAEA,CAACA,CAACA;QACjCA,CAACA;QACDA,MAAMA,CAACA,CAACA,CAACA;IACbA,CAACA;IApFcX,oBAAcA,GAAGA,oFAAoFA,CAACA;IACtGA,kBAAYA,GAAGA,+GAA+GA,CAACA;IAqFvIA,iBAAWA,GAAGA;QACjBA,SAASA,EAAEA,KAAKA,CAACA,OAAOA,CAACA,WAAWA,CAACA;QACrCA,YAAYA,EAAEA,KAAKA,CAACA,OAAOA,CAACA,WAAWA,CAACA;QA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IA,CAACA,CAACA;gBAC5FA,CAACA;gBALDD,sBAAIA,yCAAUA;yBAAdA,cAA4BE,MAAMA,CAACA,IAAIA,CAACA,WAAWA,CAACA,CAACA,CAACA;;;mBAAAF;gBAO9CA,wDAA4BA,GAApCA,UAAqCA,MAAMA,EAAEA,CAAyCA;oBAClFG,EAAEA,CAACA,CAACA,IAAIA,CAACA,WAAWA,CAACA;wBACjBA,MAAMA,CAACA;oBACXA,EAAEA,CAACA,CAACA,IAAIA,CAACA,IAAIA,KAAKA,sBAAaA,CAACA,MAAMA,CAACA;wBACnCA,MAAMA,IAAIA,yBAAyBA,CAACA,sEAAsEA,CAACA,CAACA;oBAChHA,IAAIA,CAACA;wBACDA,IAAIA,KAAKA,GAAGA,IAAIA,CAACA,cAAcA,CAACA;wBAChCA,IAAIA,CAACA,WAAWA,GAAGA,IAAIA,CAACA;wBACxBA,MAAMA,CAACA,CAACA,CAACA,CAACA,MAAMA,CAACA,CAACA,CAACA;4BACfA,KAAKA,iBAAWA,CAACA,uBAAuBA,CAACA,GAAGA;gCACxCA,EAAEA,CAACA,CAACA,KAAKA,CAACA,OAAOA,CAACA,CAACA,CAACA,QAAQA,CAACA,CAACA,CAACA,CAACA,GAAGA,CAACA,CAACA;oCACjCA,IAAIA,CAACA,aAAaA,CAACA,CAACA,CAACA,QAAQA,CAACA,CAACA,CAACA,CAACA,CAACA;gCACtCA,KAAKA,CAACA;4BACVA,KAAKA,iBAAWA,CAACA,uBAAuBA,CAACA,MAAMA;gCAC3CA,EAAEA,CAACA,CAACA,KAAKA,CAACA,OAAOA,CAACA,CAACA,CAACA,QAAQA,CAACA,CAACA,CAACA,CAACA,GAAGA,CAACA,CAACA,CAACA;oCAClCA,IAAIA,CAACA,kBAAkBA,CAACA,CAACA,CAACA,QAAQA,CAACA,CAACA,CAACA,CAACA,CAACA;gCAC3CA,KAAKA,CAACA;4BACVA,KAAKA,iBAAWA,CAACA,uBAAuBA,CAACA,OAAOA;gCAC5CA,EAAEA,CAACA,CAACA,KAAKA,CAACA,OAAOA,CAACA,CAACA,CAACA,QAAQA,CAACA,CAACA,CAACA,CAACA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CA;gBAEDJ,0BAA2BA,GAAQA,EAAEA,GAAQA;oBACzCK,EAAEA,CAACA,CAACA,GAAGA,CAACA,EAAEA,CAACA,CAACA,CAACA;wBACTA,GAAGA,GAAGA,GAAGA,IAAIA,cAAcA,CAACA,GAAGA,CAACA,CAACA;wBACjCA,EAAEA,CAACA,CAACA,CAACA,GAAGA,CAACA;4BACLA,MAAMA,IAAIA,kBAAkBA,CAACA,kDAAkDA,CAACA,CAACA;wBACrFA,GAAGA,CAACA,EAAEA,CAACA,GAAGA,CAACA,GAAGA,EAAEA,GAAGA,CAACA,CAACA;oBACzBA,CAACA;oBAACA,IAAIA,CAACA,EAAEA,CAACA,CAACA,GAAGA,CAACA,IAAIA,CAACA,CAACA,CAACA;wBAClBA,GAAGA,CAACA,IAAIA,CAACA,GAAGA,CAACA,GAAGA,CAACA,CAACA;oBACtBA,CAACA;oBAACA,IAAIA,CAACA,EAAEA,CAACA,CAACA,GAAGA,CAACA,GAAGA,CAACA,CAACA,CAACA;wBACjBA,GAAGA,CAACA,GAAGA,CAACA,IAAIA,CAACA,GAAGA,CAACA,CAACA;oBACtBA,CAACA;oBAACA,IAAIA,CAACA,EAAEA,CAACA,CAACA,GAAGA,CAACA,IAAIA,CAACA,CAACA,CAACA;wBAClBA,EAAEA,CAACA,CAACA,KAAKA,CAACA,OAAOA,CAACA,IAAIA,CAACA,CAACA,CAACA;4BACrBA,KAAKA,CAACA,OAAOA,CAACA,IAAIA,CAACA,GAAGA,CAACA,GAAGA,CAACA,CAACA;wBAChCA,CAACA;wBAACA,IAAIA,CAACA,EAAEA,CAACA,CAACA,KAAKA,CAACA,OAAOA,CAACA,GAAGA,CAACA,CAACA,CAACA;4BAC3BA,KAAKA,CAACA,OAAOA,CAACA,GAAGA,CAACA,IAAIA,CAACA,GAAGA,CAACA,CAACA;wBAChCA,CAACA;wBAACA,IAAIA,CAACA,EAAEA,CAACA,CAACA,KAAKA,CAACA,OAAOA,CAACA,EAAEA,CAACA,CAACA,CAACA;4BAC1BA,GAAGA,GAAGA,GAAGA,IAAIA,cAAcA,CAACA,GAAGA,CAACA,CAACA;4BACjCA,EAAEA,CAACA,CAACA,CAACA,GAAGA,CAACA;gCACLA,MAAMA,IAAIA,kBAAkBA,CAACA,kDAAkDA,CAACA,CAACA;4BACrFA,KAAKA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAAGA,CAACA,GAAGA,EAAEA,GAAGA,CAACA,CAACA;wBACnCA,CAACA;wBAACA,IAAIA,CAACA,EAAEA,CAACA,CAACA,KAAKA,CAACA,OAAOA,CAACA,GAAGA,CAACA,CAACA,CAACA;4BAC3BA,KAAKA,CAACA,OAAOA,CAACA,GAAGA,CAACA,eAAeA,CAACA,GAAGA,CAACA,CAACA;wBAC3CA,CAACA;wBAACA,IAAIA,CAACA,CAACA;4BACJA,EAAEA,CAACA,CAACA,KAAKA,CAACA,OAAOA,CAACA,KAAKA,GAAGA,CAACA,CAACA;gCACxBA,MAAMA,IAAIA,kBAAkBA,CAACA,oCAAoCA,CAACA,CAACA;4BACvEA,GAAGA,CAACA,IAAIA,CAACA,QAAQA,CAACA,KAAKA,CAACA,OAAOA,CAACA,KAAKA,EAAEA,GAAGA,CAACA,CAACA;wBAChDA,CAACA;oBACLA,CAACA;oBACDA,KAAKA,CAACA,OAAOA,CAACA,KAAKA,EAAEA,CAACA;gBAC1BA,CAACA;gBAEDL,mBAAoBA,GAAQA,EAAEA,GAAQA;oBAClCM,EAAEA,CAACA,CAACA,KAAKA,CAACA,IAAIA,CAACA,CAACA,CAACA;wBACbA,KAAKA,CAACA,IAAIA,CAACA,GAAGA,CAACA,GAAGA,CAACA,CAACA;oBACxBA,CAACA;oBAACA,IAAIA,CAACA,EAAEA,CAACA,CAACA,KAAKA,CAACA,GAAGA,CAACA,CAACA,CAACA;wBACnBA,KAAKA,CAACA,GAAGA,CAACA,IAAIA,CAACA,GAAGA,CAACA,CAACA;oBACxBA,CAACA;oBAACA,IAAIA,CAACA,EAAEA,CAACA,CAACA,KAAKA,CAACA,KAAKA,CAACA,CAACA,CAACA;wBACrBA,GAAGA,CAACA,IAAIA,CAACA,QAAQA,CAACA,KAAKA,CAACA,KAAKA,EAAEA,OAAOA,CAACA,KAAKA,CAACA,KAAKA,EAAEA,GAAGA,CAACA,CAACA,CAACA;oBAC9DA,CAACA;oBAACA,IAAIA,CAACA,EAAEA,CAACA,CAACA,KAAKA,CAACA,IAAIA,CAACA,CAACA,CAACA;wBACpBA,GAAGA,CAACA,GAAGA,CAACA,KAAKA,CAACA,IAAIA,CAACA,GAAGA,GAAGA,CAACA;oBAC9BA,CAACA;oBAACA,IAAIA,CAACA,EAAEA,CAACA,CAACA,KAAKA,CAACA,KAAKA,CAACA,CAACA,CAACA;wBACrBA,cAAcA,CAACA,KAAKA,CAACA,KAAKA,EAAEA,GAAGA,CAACA,CAACA;oBACrCA,CAACA;gBACLA,CAACA;gBAEDN,uBAAwBA,SAAcA,EAAEA,IAAYA,EAAEA,GAAQA;oBAC1DO,EAAEA,CAACA,CAACA,GAAGA,CAACA,IAAIA,CAACA,CAACA,CAACA;wBACXA,IAAIA,KAAKA,GAAGA,SAASA,IAAIA,GAAGA,CAACA,IAAIA,CAACA;wBAClCA,IAAIA,KAAKA,GAAGA,kBAAkBA,CAACA,qBAAqBA,CAACA,KAAKA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA,CAACA;wBACxEA,EAAEA,CAACA,CAACA,CAACA,KAAKA,CAACA,CAACA,CAACA;4BACTA,IAAIA,EAAEA,GAAGA,GAAGA,CAACA,IAAIA,CAACA,IAAIA,CAACA,CAACA;4BACxBA,EAAEA,CAACA,CAACA,EAAEA,YAAYA,SAASA,CAACA,KAAKA,CAACA,CAACA,CAACA;gCAChCA,cAAcA,CAACA,IAAIA,EAAEA,GAAGA,CAACA,CAACA;4BAC9BA,CAACA;4BAACA,IAAIA,CAACA,CAACA;gCACJA,GAAGA,CAACA,IAAIA,CAACA,IAAIA,CAACA,GAAGA,GAAGA,CAACA;4BACzBA,CAACA;4BACDA,MAAMA,CAACA,IAAIA,CAACA;wBAChBA,CAACA;wBACDA,EAAEA,CAACA,CAACA,KAAKA,CAACA,WAAWA,CAACA,CAACA,CAACA;4BACpBA,MAAMA,CAACA,KAAKA,CAACA,OAAOA,CAACA,KAAKA,EAAEA,GAAGA,CAACA,EAAEA,GAAGA,CAACA,IAAIA,CAACA,QAAQA,CAACA,KAAKA,CAACA,CAACA,CAACA;wBAChEA,CAACA;wBAACA,IAAIA,CAACA,CAACA;4BACJA,GAAGA,CAACA,IAAIA,CAACA,QAAQA,CAACA,KAAKA,EAAEA,OAAOA,CAACA,KAAKA,EAAEA,GAAGA,CAACA,CAACA,CAACA;4BAC9CA,MAAMA,CAACA,IAAIA,CAACA;wBAChBA,CAACA;oBACLA,CAACA;oBAACA,IAAIA,CAACA,EAAEA,CAACA,CAACA,GAAGA,CAACA,GAAGA,CAACA,CAACA,CAACA;wBACjBA,IAAIA,EAAEA,GAAGA,GAAGA,CAACA,GAAGA,CAACA,IAAIA,CAACA,CAACA;wBACvBA,EAAEA,CAACA,CAACA,EAAEA,YAAYA,SAASA,CAACA,KAAKA,CAACA,CAACA,CAACA;4BAChCA,cAAcA,CAACA,IAAIA,EAAEA,GAAGA,CAACA,CAACA;wBAC9BA,CAACA;wBAACA,IAAIA,CAACA,CAACA;4BACJA,GAAGA,CAACA,GAAGA,CAACA,IAAIA,CAACA,GAAGA,GAAGA,CAACA;wBACxBA,CAACA;wBACDA,MAAMA,CAACA,IAAIA,CAACA;oBAChBA,CAACA;oBACDA,MAAMA,CAACA,KAAKA,CAACA;gBACjBA,CAACA;gBAEDP,eAAgBA,GAAQA,EAAEA,MAAWA;oBACjCQ,IAAIA,IAAWA,CAACA;oBAChBA,IAAIA,KAAKA,GAA+BA,SAASA,CAACA,YAAYA,CAACA,EAAEA,CAACA,GAAGA,CAACA,CAACA;oBACvEA,EAAEA,CAACA,CAACA,KAAKA,CAACA,CAACA,CAACA;wBACRA,IAAIA,GAAGA,SAASA,CAACA,YAAYA,CAACA,OAAOA,CAACA,KAAKA,CAACA,CAACA;wBAC7CA,KAAKA,CAACA,KAAKA,EAAEA,CAACA;oBAClBA,CAACA;oBAACA,IAAIA,CAACA,EAAEA,CAACA,CAACA,OAAOA,GAAGA,KAAKA,OAAOA,CAACA,CAACA,CAACA;wBAChCA,IAAIA,GAAGA,GAAGA,CAACA,KAAKA,CAACA,CAACA,CAACA,CAACA;wBACpBA,GAAGA,CAACA,MAAMA,GAAGA,CAACA,CAACA;oB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,EAAEA,CAACA;wBACXA,EAAEA,CAACA,CAACA,GAAGA,GAAGA,CAACA,CAACA,CAACA,CAACA;4BACVA,IAAIA,IAAIA,GAAGA,IAAIA,CAACA,GAAGA,GAAGA,CAACA,CAACA,CAACA;4BACzBA,EAAEA,CAACA,CAACA,IAAIA,CAACA,UAAUA,CAACA,CAACA,CAACA;gCAClBA,IAAIA,CAACA,UAAUA,GAAGA,KAAKA,CAACA;gCACxBA,cAAcA,CAACA,YAAYA,CAACA,IAAIA,CAACA,CAACA;gCAClCA,MAAMA,CAACA,IAAIA,CAACA;4BAChBA,CAACA;wBACLA,CAACA;oBACLA,CAACA;oBAACA,IAAIA,CAACA,CAACA;wBACJA,IAAIA,CAACA,MAAMA,CAACA,CAACA,EAAEA,CAACA,CAACA,CAACA;wBAClBA,IAAIA,CAACA,CAACA,CAACA,CAACA,SAASA,GAAGA,WAAWA,CAACA,SAASA,CAACA;oBAC9CA,CAACA;oBACDA,MAAMA,CAACA,KAAKA,CAACA;gBACjBA,CAACA;gBACMJ,2BAAYA,GAAnBA,UAAoBA,WAA8BA;oBAC9CK,IAAIA,GAAGA,GAAGA,WAAWA,CAACA,YAAYA,CAACA;oBACnCA,EAAEA,CAACA,CAACA,GAAGA,KAAKA,SAASA,CAACA;wBAClBA,MAAMA,CAACA;oBACXA,EAAEA,CAACA,CAACA,SAASA,CAACA,QAAQA,CAACA;wBACnBA,OAAOA,CAACA,GAAGA,CAACA,aAAaA,CAACA,cAAcA,EAAEA,WAAWA,EAAEA,GAAGA,CAACA,CAACA,CAACA;oBACjEA,IAAIA,OAAOA,GAAGA,WAAWA,CAACA,WAAWA,CAACA;oBACtCA,OAAOA,CAACA,QAAQA,CAACA,KAAKA,CAACA,aAAaA,CAACA,OAAOA,EAAEA,WAAWA,CAACA,YAAYA,CAACA,CAACA;gBAC5EA,CAACA;gBACML,wBAASA,GAAhBA,UAAiBA,WAA8BA;oBAC3CM,IAAIA,GAAGA,GAAGA,WAAWA,CAACA,SAASA,CAACA;oBAChCA,EAAEA,CAACA,CAACA,SAASA,CAACA,QAAQA,CAACA;wBACnBA,OAAOA,CAACA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CAACA,CAACA,GAAGA,CAACA,CAACA,GAAGA,CAACA,CAACA;wBACVA,CAACA,CAACA,GAAGA,EAAEA,KAAKA,EAAEA,IAAIA,EAAEA,MAAMA,CAACA,CAACA;oBAChCA,IAAIA,CAACA,EAAEA,CAACA,CAACA,GAAGA,CAACA,CAACA,KAAKA,CAACA,CAACA;wBACjBA,CAACA,CAACA,GAAGA,EAAEA,KAAKA,EAAEA,IAAIA,EAAEA,MAAMA,CAACA,CAACA;gBACpCA,CAACA;gBAACA,IAAIA,CAACA,EAAEA,CAACA,CAACA,GAAGA,CAACA,CAACA,KAAKA,CAACA,CAACA,CAACA,CAACA;oBACrBA,EAAEA,CAACA,CAACA,GAAGA,CAACA,CAACA,GAAGA,CAACA,CAACA;wBACVA,CAACA,CAACA,GAAGA,EAAEA,KAAKA,EAAEA,IAAIA,EAAEA,MAAMA,CAACA,CAACA;oBAChCA,IAAIA,CAACA,EAAEA,CAACA,CAACA,GAAGA,CAACA,CAACA,KAAKA,CAACA,CAACA;wBACjBA,CAACA,CAACA,GAAGA,EAAEA,KAAKA,EAAEA,IAAIA,EAAEA,MAAMA,CAACA,CAACA;gBACpCA,CAACA;gBAACA,IAAIA,CAACA,EAAEA,CAACA,CAACA,GAAGA,CAACA,CAACA,GAAGA,CAACA,IAAIA,GAAGA,CAACA,CAACA,GAAGA,CAACA,CAACA,CAACA,CAACA;oBAChCA,EAAEA,CAACA,GAAGA,EAAEA,KAAKA,EAAEA,IAAIA,EAAEA,MAAMA,CAACA,CAACA;gBACjCA,CAACA;gBAACA,IAAIA,CAACA,EAAEA,CAACA,CAACA,GAAGA,CAACA,CAACA,GAAGA,CAACA,IAAIA,GAAGA,CAACA,CAACA,GAAGA,CAACA,CAACA,CAACA,CAACA;oBAChCA,EAAEA,CAACA,GAAGA,EAAEA,KAAKA,EAAEA,IAAIA,EAAEA,MAAMA,CAACA,CAACA;gBACjCA,CAACA;gBAACA,IAAIA,CAACA,EAAEA,CAACA,CAACA,GAAGA,CAACA,CAACA,GAAGA,CAACA,IAAIA,GAAGA,CAACA,CAACA,GAAGA,CAACA,CAACA,CAACA,CA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","file":"fayde.js","sourcesContent":["module Fayde {\r\n export var version = '0.19.6';\r\n}",null,null,"module Fayde {\r\n interface IThemesHash {\r\n [name: string]: Theme;\r\n }\r\n\r\n export class ThemedLibrary extends nullstone.Library {\r\n private $$themes: IThemesHash = {};\r\n private $$activeTheme: Theme = null;\r\n private $$activeThemeName: string = null;\r\n\r\n get activeTheme(): Theme {\r\n return this.$$activeTheme;\r\n }\r\n\r\n get isActiveThemeInvalid(): boolean {\r\n return !this.$$activeTheme || this.$$activeTheme.Name !== this.$$activeThemeName;\r\n }\r\n\r\n loadAsync(): Promise {\r\n return Promise.resolve(this)\r\n .tap(lib => Promise.all([\r\n super.loadAsync(),\r\n this.retrieveTheme()\r\n ]))\r\n .tap(() => this.ensureThemeLoaded());\r\n }\r\n\r\n protected retrieveTheme(): Promise {\r\n if (this.isActiveThemeInvalid || !this.$$activeThemeName)\r\n return Promise.resolve(null);\r\n var theme = this.getTheme(this.$$activeThemeName);\r\n return theme.RetrieveAsync();\r\n }\r\n\r\n protected ensureThemeLoaded(): Promise {\r\n if (!this.isActiveThemeInvalid)\r\n return Promise.resolve(this.$$activeTheme);\r\n if (!this.$$activeThemeName)\r\n return Promise.resolve(null);\r\n return this.loadActiveTheme();\r\n }\r\n\r\n getTheme(name: string): Theme {\r\n var theme = this.$$themes[name];\r\n if (!theme)\r\n theme = this.$$themes[name] = new Theme(name, this.uri);\r\n return theme;\r\n }\r\n\r\n setThemeName(name: string) {\r\n this.$$activeThemeName = name;\r\n }\r\n\r\n loadActiveTheme(): Promise {\r\n var theme = this.getTheme(this.$$activeThemeName);\r\n return theme.LoadAsync()\r\n .then(() => this.$$activeTheme = theme);\r\n }\r\n }\r\n}","/// \r\n\r\nmodule Fayde {\r\n export class ThemedLibraryResolver extends nullstone.LibraryResolver {\r\n createLibrary(uri: string): nullstone.ILibrary {\r\n return new ThemedLibrary(uri);\r\n }\r\n }\r\n}","/// \r\n\r\nmodule Fayde {\r\n export var XMLNS = \"http://schemas.wsick.com/fayde\";\r\n export var XMLNSX = \"http://schemas.wsick.com/fayde/x\";\r\n export var XMLNSINTERNAL = \"http://schemas.wsick.com/fayde/internal\";\r\n\r\n export var Enum = nullstone.Enum;\r\n export interface Enum {\r\n new(): nullstone.Enum;\r\n }\r\n\r\n export var Uri = nullstone.Uri;\r\n export interface Uri extends nullstone.Uri {\r\n }\r\n\r\n export class ResourceTypeManager extends nullstone.TypeManager {\r\n createLibResolver (): nullstone.ILibraryResolver {\r\n return new ThemedLibraryResolver();\r\n }\r\n\r\n resolveResource (uri: Uri): string {\r\n if (uri.scheme === \"lib\") {\r\n var res = uri.resource;\r\n var full = uri.toString();\r\n var base = full.replace(res, \"\");\r\n var lib = this.resolveLibrary(base);\r\n if (!lib)\r\n throw new Error(`Could not find library when resolving resource [${full}].`);\r\n return joinPaths(lib.basePath, res.length > 1 ? res.substr(1) : \"\");\r\n }\r\n return uri.toString();\r\n }\r\n }\r\n export var TypeManager = new ResourceTypeManager(XMLNS, XMLNSX);\r\n\r\n function joinPaths (base: string, rel: string): string {\r\n if (base[base.length - 1] !== \"/\")\r\n base += \"/\";\r\n return base + (rel[0] === \"/\" ? rel.substr(1) : rel);\r\n }\r\n\r\n export var CoreLibrary = TypeManager.resolveLibrary(XMLNS);\r\n (CoreLibrary).$$module = Fayde;\r\n (CoreLibrary).$$loaded = true;\r\n export var XLibrary = TypeManager.resolveLibrary(XMLNSX);\r\n (XLibrary).$$module = Fayde;\r\n (XLibrary).$$loaded = true;\r\n\r\n export function RegisterType (type: Function, uri: string, name?: string) {\r\n name = name || nullstone.getTypeName(type);\r\n TypeManager.add(uri, name, type);\r\n }\r\n\r\n export function RegisterEnum (enu: any, uri: string, name: string) {\r\n TypeManager.addEnum(uri, name, enu);\r\n }\r\n\r\n export var IType_ = new nullstone.Interface(\"IType\");\r\n IType_.is = function (o): boolean {\r\n return typeof o === \"function\";\r\n };\r\n}","module Fayde.Clipboard {\n export class BasicClipboard implements IClipboard {\n CopyText(text: string) {\n var res = (window).clipboardData.setData(\"Text\", text);\n if (!res)\n alert(\"Your browser do not allow copy to the clipboard.\");\n }\n\n GetTextContents(callback: (text: string) => void) {\n var text = (window).clipboardData.getData(\"Text\");\n callback(text);\n }\n }\n}","module Fayde.Clipboard {\n export function Create(): IClipboard {\n if ((window).clipboardData)\n return new BasicClipboard();\n return new NetscapeClipboard();\n }\n}","module Fayde.Clipboard {\n export interface IClipboard {\n CopyText(text: string);\n GetTextContents(callback: (text: string) => void);\n }\n\n var cp = new nullstone.Memoizer((key) => {\n var div = document.createElement(\"div\");\n div.id = key;\n ((style: CSSStyleDeclaration) => {\n style.opacity = \"0.0\";\n style.position = \"absolute\";\n style.left = \"-300px\";\n //style.top = \"-150px\";\n })(div.style);\n document.body.appendChild(div);\n div.contentEditable = \"true\";\n return div;\n });\n\n export function memoizePlaceholder(key: string): HTMLDivElement {\n return cp.memoize(key);\n }\n}","/// \n\nmodule Fayde.Clipboard {\n export class NetscapeClipboard implements IClipboard {\n private $$fn: (text: string) => void = null;\n\n constructor() {\n document.body.contentEditable = \"true\";\n document.body.style.cursor = \"default\";\n document.body.addEventListener(\"paste\", this.$$notify);\n }\n\n CopyText(text: string) {\n var div = memoizePlaceholder(\"special_copy\");\n div.textContent = text;\n selectContent(div);\n\n tryRequestPrivilege();\n // Copy the selected content to the clipboard\n // Works in Firefox and in Safari before version 5\n if (!document.execCommand(\"copy\", false, null))\n alert(\"Your browser does not allow copy to the clipboard. This feature will not function\");\n }\n\n GetTextContents(callback: (text: string) => void) {\n this.$$fn = callback;\n }\n\n private $$notify = (e: any) => {\n if (!this.$$fn)\n return;\n var ev = e.originalEvent || e;\n var dt = ev.clipboardData;\n this.$$fn(dt.getData('text/plain'));\n this.$$fn = null;\n }\n }\n\n function selectContent(element: HTMLDivElement) {\n var rangeToSelect = document.createRange();\n rangeToSelect.selectNodeContents(element);\n\n // select the contents\n var selection = window.getSelection();\n selection.removeAllRanges();\n selection.addRange(rangeToSelect);\n }\n\n function tryRequestPrivilege() {\n var netscape = window ? (window).netscape : null;\n if (netscape && netscape.security) {\n netscape.security.PrivilegeManager.enablePrivilege(\"UniversalXPConnect\");\n }\n }\n}","module Fayde.Collections {\r\n export enum CollectionChangedAction {\r\n Add = 1,\r\n Remove = 2,\r\n Replace = 3,\r\n Reset = 4,\r\n }\r\n Fayde.CoreLibrary.addEnum(CollectionChangedAction, \"NotifyCollectionChangedAction\");\r\n\r\n export class CollectionChangedEventArgs implements nullstone.IEventArgs {\r\n Action: CollectionChangedAction;\r\n OldStartingIndex: number;\r\n NewStartingIndex: number;\r\n OldItems: any[];\r\n NewItems: any[];\r\n\r\n static Reset(allValues: any[]): CollectionChangedEventArgs {\r\n var args = new CollectionChangedEventArgs();\r\n Object.defineProperty(args, \"Action\", { value: CollectionChangedAction.Reset, writable: false });\r\n Object.defineProperty(args, \"OldStartingIndex\", { value: 0, writable: false });\r\n Object.defineProperty(args, \"NewStartingIndex\", { value: -1, writable: false });\r\n Object.defineProperty(args, \"OldItems\", { value: allValues, writable: false });\r\n Object.defineProperty(args, \"NewItems\", { value: null, writable: false });\r\n return args;\r\n }\r\n static Replace(newValue: any, oldValue: any, index: number): CollectionChangedEventArgs {\r\n var args = new CollectionChangedEventArgs();\r\n Object.defineProperty(args, \"Action\", { value: CollectionChangedAction.Replace, writable: false });\r\n Object.defineProperty(args, \"OldStartingIndex\", { value: -1, writable: false });\r\n Object.defineProperty(args, \"NewStartingIndex\", { value: index, writable: false });\r\n Object.defineProperty(args, \"OldItems\", { value: [oldValue], writable: false });\r\n Object.defineProperty(args, \"NewItems\", { value: [newValue], writable: false });\r\n return args;\r\n }\r\n static Add(newValue: any, index: number): CollectionChangedEventArgs {\r\n var args = new CollectionChangedEventArgs();\r\n Object.defineProperty(args, \"Action\", { value: CollectionChangedAction.Add, writable: false });\r\n Object.defineProperty(args, \"OldStartingIndex\", { value: -1, writable: false });\r\n Object.defineProperty(args, \"NewStartingIndex\", { value: index, writable: false });\r\n Object.defineProperty(args, \"OldItems\", { value: null, writable: false });\r\n Object.defineProperty(args, \"NewItems\", { value: [newValue], writable: false });\r\n return args;\r\n }\r\n static AddRange(newValues: any[], index: number): CollectionChangedEventArgs {\r\n var args = new CollectionChangedEventArgs();\r\n Object.defineProperty(args, \"Action\", { value: CollectionChangedAction.Add, writable: false });\r\n Object.defineProperty(args, \"OldStartingIndex\", { value: -1, writable: false });\r\n Object.defineProperty(args, \"NewStartingIndex\", { value: index, writable: false });\r\n Object.defineProperty(args, \"OldItems\", { value: null, writable: false });\r\n Object.defineProperty(args, \"NewItems\", { value: newValues, writable: false });\r\n return args;\r\n }\r\n static Remove(oldValue: any, index: number): CollectionChangedEventArgs {\r\n var args = new CollectionChangedEventArgs();\r\n Object.defineProperty(args, \"Action\", { value: CollectionChangedAction.Remove, writable: false });\r\n Object.defineProperty(args, \"OldStartingIndex\", { value: index, writable: false });\r\n Object.defineProperty(args, \"NewStartingIndex\", { value: -1, writable: false });\r\n Object.defineProperty(args, \"OldItems\", { value: [oldValue], writable: false });\r\n Object.defineProperty(args, \"NewItems\", { value: null, writable: false });\r\n return args;\r\n }\r\n }\r\n}","module Fayde.Collections {\r\n export interface INotifyCollectionChanged {\r\n CollectionChanged: nullstone.Event;\r\n }\r\n export var INotifyCollectionChanged_ = new nullstone.Interface(\"INotifyCollectionChanged\");\r\n INotifyCollectionChanged_.is = (o: any): boolean => {\r\n return o && o.CollectionChanged instanceof nullstone.Event;\r\n };\r\n}","module Fayde {\r\n export class PropertyChangedEventArgs implements nullstone.IEventArgs {\r\n PropertyName: string;\r\n constructor(propertyName: string) {\r\n Object.defineProperty(this, \"PropertyName\", { value: propertyName, writable: false });\r\n }\r\n }\r\n Fayde.CoreLibrary.add(PropertyChangedEventArgs);\r\n\r\n export interface INotifyPropertyChanged {\r\n PropertyChanged: nullstone.Event;\r\n }\r\n export var INotifyPropertyChanged_ = new nullstone.Interface(\"INotifyPropertyChanged\");\r\n INotifyPropertyChanged_.is = (o: any): boolean => {\r\n return o && o.PropertyChanged instanceof nullstone.Event;\r\n };\r\n}","/// \r\n/// \r\n\r\nmodule Fayde.Collections {\r\n export class ObservableCollection implements nullstone.IEnumerable, nullstone.ICollection, INotifyCollectionChanged, INotifyPropertyChanged {\r\n private _ht: T[] = [];\r\n\r\n getEnumerator (): nullstone.IEnumerator {\r\n return nullstone.IEnumerator_.fromArray(this._ht);\r\n }\r\n\r\n CollectionChanged = new nullstone.Event();\r\n PropertyChanged = new nullstone.Event();\r\n\r\n get Count (): number {\r\n return this._ht.length;\r\n }\r\n\r\n ToArray (): T[] {\r\n return this._ht.slice(0);\r\n }\r\n\r\n GetValueAt (index: number): T {\r\n var ht = this._ht;\r\n if (index < 0 || index >= ht.length)\r\n throw new IndexOutOfRangeException(index);\r\n return ht[index];\r\n }\r\n\r\n SetValueAt (index: number, value: T) {\r\n var ht = this._ht;\r\n if (index < 0 || index >= ht.length)\r\n throw new IndexOutOfRangeException(index);\r\n var oldValue = ht[index];\r\n ht[index] = value;\r\n this.CollectionChanged.raise(this, CollectionChangedEventArgs.Replace(value, oldValue, index));\r\n }\r\n\r\n Add (value: T) {\r\n var index = this._ht.push(value) - 1;\r\n this.CollectionChanged.raise(this, CollectionChangedEventArgs.Add(value, index));\r\n this._RaisePropertyChanged(\"Count\");\r\n }\r\n\r\n AddRange (values: T[]) {\r\n var index = this._ht.length;\r\n var len = values.length;\r\n for (var i = 0; i < len; i++) {\r\n this._ht.push(values[i]);\r\n }\r\n this.CollectionChanged.raise(this, CollectionChangedEventArgs.AddRange(values, index));\r\n this._RaisePropertyChanged(\"Count\");\r\n }\r\n\r\n Insert (index: number, value: T) {\r\n var ht = this._ht;\r\n if (index < 0 || index > ht.length)\r\n throw new IndexOutOfRangeException(index);\r\n if (index >= ht.length)\r\n ht.push(value);\r\n else\r\n ht.splice(index, 0, value);\r\n this.CollectionChanged.raise(this, CollectionChangedEventArgs.Add(value, index));\r\n this._RaisePropertyChanged(\"Count\");\r\n }\r\n\r\n IndexOf (value: T): number {\r\n return this._ht.indexOf(value);\r\n }\r\n\r\n Contains (value: T): boolean {\r\n return this._ht.indexOf(value) > -1;\r\n }\r\n\r\n Remove (value: T): boolean {\r\n var index = this._ht.indexOf(value);\r\n if (index < 0)\r\n return false;\r\n this._ht.splice(index, 1);\r\n this.CollectionChanged.raise(this, CollectionChangedEventArgs.Remove(value, index));\r\n this._RaisePropertyChanged(\"Count\");\r\n return true;\r\n }\r\n\r\n RemoveAt (index: number) {\r\n if (index < 0 || index >= this._ht.length)\r\n throw new IndexOutOfRangeException(index);\r\n var item = this._ht.splice(index, 1)[0];\r\n this.CollectionChanged.raise(this, CollectionChangedEventArgs.Remove(item, index));\r\n this._RaisePropertyChanged(\"Count\");\r\n }\r\n\r\n Clear () {\r\n var old = this._ht;\r\n this._ht = [];\r\n this.CollectionChanged.raise(this, CollectionChangedEventArgs.Reset(old));\r\n this._RaisePropertyChanged(\"Count\");\r\n }\r\n\r\n private _RaisePropertyChanged (propertyName: string) {\r\n this.PropertyChanged.raise(this, new PropertyChangedEventArgs(propertyName));\r\n }\r\n }\r\n Fayde.CoreLibrary.add(ObservableCollection);\r\n nullstone.ICollection_.mark(ObservableCollection);\r\n}","/// \r\n\r\nmodule Fayde.Collections {\r\n export class DeepObservableCollection extends ObservableCollection {\r\n ItemPropertyChanged = new nullstone.Event>();\r\n constructor() {\r\n super();\r\n this.CollectionChanged.on(this._OnCollectionChanged, this);\r\n }\r\n\r\n private _OnCollectionChanged(sender: any, e: CollectionChangedEventArgs) {\r\n if (e.NewItems) {\r\n for (var i = 0; i < e.NewItems.length; i++) {\r\n var notify = INotifyPropertyChanged_.as(e.NewItems[i]);\r\n if (notify)\r\n notify.PropertyChanged.on(this._OnItemPropertyChanged, this);\r\n }\r\n }\r\n if (e.OldItems) {\r\n for (var i = 0; i < e.OldItems.length; i++) {\r\n var notify = INotifyPropertyChanged_.as(e.OldItems[i]);\r\n if (notify)\r\n notify.PropertyChanged.off(this._OnItemPropertyChanged, this);\r\n }\r\n }\r\n }\r\n private _OnItemPropertyChanged(sender: T, e: PropertyChangedEventArgs) {\r\n this.ItemPropertyChanged.raise(this, new ItemPropertyChangedEventArgs(sender, e.PropertyName));\r\n }\r\n }\r\n} ","module Fayde.Collections {\r\n export interface IFilterItemFunc {\r\n (item: T): boolean;\r\n }\r\n export interface IFilterItemIndexFunc {\r\n (item: T, index: number): boolean;\r\n }\r\n\r\n export class FilteredCollection extends DeepObservableCollection {\r\n private _Source: DeepObservableCollection;\r\n get Source () { return this._Source; }\r\n set Source (value: DeepObservableCollection) { this._SetSource(value); }\r\n\r\n private _Filter: IFilterItemIndexFunc;\r\n get Filter () {\r\n return this._Filter;\r\n }\r\n\r\n set Filter (value: IFilterItemIndexFunc) {\r\n this._Filter = value;\r\n this.Update();\r\n }\r\n\r\n constructor (filter?: IFilterItemFunc, source?: DeepObservableCollection);\r\n constructor (filter?: IFilterItemIndexFunc, source?: DeepObservableCollection);\r\n constructor (filter?: IFilterItemIndexFunc, source?: DeepObservableCollection) {\r\n super();\r\n this.Filter = filter;\r\n this._SetSource(source || new DeepObservableCollection());\r\n }\r\n\r\n private _SetSource (source: DeepObservableCollection) {\r\n if (this._Source) {\r\n this._Source.CollectionChanged.off(this._OnSourceCollectionChanged, this);\r\n this._Source.ItemPropertyChanged.off(this._OnSourceItemPropertyChanged, this);\r\n }\r\n this._Source = source;\r\n if (source) {\r\n source.CollectionChanged.on(this._OnSourceCollectionChanged, this);\r\n source.ItemPropertyChanged.on(this._OnSourceItemPropertyChanged, this);\r\n }\r\n this.Update();\r\n }\r\n\r\n private _OnSourceCollectionChanged (sender: any, e: CollectionChangedEventArgs) {\r\n this.Update();\r\n }\r\n\r\n private _OnSourceItemPropertyChanged (sender: any, e: ItemPropertyChangedEventArgs) {\r\n this.Update();\r\n var index = this.Source.IndexOf(e.Item);\r\n if (this.Filter && this.Filter(e.Item, index))\r\n this.ItemPropertyChanged.raise(this, e);\r\n }\r\n\r\n Update () {\r\n if (!this._Source)\r\n return;\r\n var filter = this.Filter || ((item: T) => true);\r\n for (var i = 0, j = 0, enumerator = this._Source.getEnumerator(); enumerator.moveNext(); i++) {\r\n var isIncluded = filter(enumerator.current, i);\r\n var isCurrent = j < this.Count && this.GetValueAt(j) === enumerator.current;\r\n if (isIncluded && !isCurrent)\r\n this.Insert(j, enumerator.current);\r\n else if (!isIncluded && isCurrent)\r\n this.RemoveAt(j);\r\n if (isIncluded)\r\n j++;\r\n }\r\n }\r\n }\r\n}","/// \r\n\r\nmodule Fayde.Collections {\r\n export class ItemPropertyChangedEventArgs extends PropertyChangedEventArgs {\r\n Item: T;\r\n constructor(item: T, propertyName: string) {\r\n super(propertyName);\r\n Object.defineProperty(this, \"Item\", { value: item, writable: false });\r\n }\r\n }\r\n}","module Fayde.Collections {\r\n export class ReadOnlyObservableCollection implements nullstone.ICollection, INotifyCollectionChanged, INotifyPropertyChanged {\r\n get Count (): number {\r\n return this._Source.Count;\r\n }\r\n\r\n private _Source: ObservableCollection;\r\n\r\n CollectionChanged = new nullstone.Event();\r\n PropertyChanged = new nullstone.Event();\r\n\r\n constructor (source: ObservableCollection) {\r\n this._Source = source;\r\n this._Source.CollectionChanged.on(this._OnCollectionChanged, this);\r\n this._Source.PropertyChanged.on(this._OnPropertyChanged, this);\r\n }\r\n\r\n GetValueAt (index: number) {\r\n return this._Source.GetValueAt(index);\r\n }\r\n\r\n getEnumerator (): nullstone.IEnumerator {\r\n return this._Source.getEnumerator();\r\n }\r\n\r\n ToArray (): T[] {\r\n return this._Source.ToArray();\r\n }\r\n\r\n IndexOf (value: T): number {\r\n return this._Source.IndexOf(value);\r\n }\r\n\r\n Contains (value: T): boolean {\r\n return this._Source.Contains(value);\r\n }\r\n\r\n private _OnCollectionChanged (sender: any, args: CollectionChangedEventArgs) {\r\n this.CollectionChanged.raise(this, args);\r\n }\r\n\r\n private _OnPropertyChanged (sender: any, args: PropertyChangedEventArgs) {\r\n this.PropertyChanged.raise(this, args);\r\n }\r\n\r\n SetValueAt (index: number, value: T) {\r\n throw new Error(\"Collection is read only.\");\r\n }\r\n\r\n Insert (index: number, value: T) {\r\n throw new Error(\"Collection is read only.\");\r\n }\r\n\r\n Add (value: T) {\r\n throw new Error(\"Collection is read only.\");\r\n }\r\n\r\n Remove (value: T): boolean {\r\n throw new Error(\"Collection is read only.\");\r\n }\r\n\r\n RemoveAt (index: number) {\r\n throw new Error(\"Collection is read only.\");\r\n }\r\n\r\n Clear () {\r\n throw new Error(\"Collection is read only.\");\r\n }\r\n }\r\n Fayde.CoreLibrary.add(ObservableCollection);\r\n nullstone.addTypeInterfaces(ReadOnlyObservableCollection, nullstone.ICollection_, INotifyCollectionChanged_, INotifyPropertyChanged_);\r\n}","module Fayde {\r\n export interface IIsAttachedMonitor {\r\n Callback: (newIsAttached: boolean) => void;\r\n Detach();\r\n }\r\n\r\n export class XamlNode {\r\n XObject: XamlObject;\r\n ParentNode: XamlNode = null;\r\n Name: string = \"\";\r\n NameScope: NameScope = null;\r\n DocNameScope: NameScope = null;\r\n private IsShareable: boolean = false;\r\n private _OwnerNameScope: NameScope = null;\r\n private _LogicalChildren: XamlNode[] = [];\r\n\r\n private _IAMonitors: IIsAttachedMonitor[] = null;\r\n\r\n constructor(xobj: XamlObject) {\r\n this.XObject = xobj;\r\n }\r\n\r\n private _DataContext: any = undefined;\r\n get DataContext(): any { return this._DataContext; }\r\n set DataContext(value: any) {\r\n var old = this._DataContext;\r\n if (old === value)\r\n return;\r\n this._DataContext = value;\r\n this.OnDataContextChanged(old, value);\r\n }\r\n OnDataContextChanged(oldDataContext: any, newDataContext: any) {\r\n var childNodes = this._LogicalChildren;\r\n var len = childNodes.length;\r\n var childNode: XamlNode = null;\r\n for (var i = 0; i < len; i++) {\r\n childNode = childNodes[i];\r\n childNode.DataContext = newDataContext;\r\n }\r\n }\r\n\r\n private _IsEnabled: boolean = true;\r\n get IsEnabled(): boolean { return this._IsEnabled; }\r\n set IsEnabled(value: boolean) {\r\n value = value !== false;\r\n var old = this._IsEnabled;\r\n if (old === value)\r\n return;\r\n this._IsEnabled = value;\r\n this.OnIsEnabledChanged(old, value);\r\n }\r\n OnIsEnabledChanged(oldValue: boolean, newValue: boolean) {\r\n var childNodes = this._LogicalChildren;\r\n var len = childNodes.length;\r\n var childNode: XamlNode = null;\r\n for (var i = 0; i < len; i++) {\r\n childNode = childNodes[i];\r\n childNode.IsEnabled = newValue;\r\n }\r\n }\r\n\r\n FindName(name: string, doc?: boolean): XamlNode {\r\n var scope = this.FindNameScope();\r\n var node: XamlNode;\r\n if (scope)\r\n node = scope.FindName(name);\r\n var docscope: NameScope;;\r\n if (!node && doc && (docscope = this.DocNameScope))\r\n node = docscope.FindName(name);\r\n return node;\r\n }\r\n SetName(name: string) {\r\n this.Name = name;\r\n var ns = this.FindNameScope();\r\n if (ns)\r\n ns.RegisterName(name, this);\r\n }\r\n FindNameScope(): NameScope {\r\n if (this._OwnerNameScope)\r\n return this._OwnerNameScope;\r\n\r\n var curNode = this;\r\n var ns;\r\n while (curNode) {\r\n ns = curNode.NameScope;\r\n if (ns) {\r\n this._OwnerNameScope = ns;\r\n return ns;\r\n }\r\n curNode = curNode.ParentNode;\r\n }\r\n return undefined;\r\n }\r\n\r\n IsAttached: boolean = false;\r\n SetIsAttached(value: boolean) {\r\n if (this.IsAttached === value)\r\n return;\r\n this.IsAttached = value;\r\n this.OnIsAttachedChanged(value);\r\n }\r\n OnIsAttachedChanged(newIsAttached: boolean) {\r\n var xobj = this.XObject;\r\n if (newIsAttached && this.ParentNode && !xobj.App) {\r\n xobj.App = this.ParentNode.XObject.App;\r\n }\r\n\r\n var childNodes = this._LogicalChildren;\r\n var len = childNodes.length;\r\n var childNode: XamlNode = null;\r\n for (var i = 0; i < len; i++) {\r\n childNode = childNodes[i];\r\n childNode.SetIsAttached(newIsAttached);\r\n }\r\n\r\n for (var i = 0, monitors = (this._IAMonitors || []).slice(0), len = monitors.length; i < len; i++) {\r\n monitors[i].Callback(newIsAttached);\r\n }\r\n\r\n if (!newIsAttached)\r\n this._OwnerNameScope = undefined;\r\n }\r\n MonitorIsAttached(func: (newIsAttached: boolean) => void ): IIsAttachedMonitor {\r\n var monitors = this._IAMonitors;\r\n if (!monitors) this._IAMonitors = monitors = [];\r\n var monitor: IIsAttachedMonitor = {\r\n Callback: func,\r\n Detach: null\r\n };\r\n monitor.Detach = function () {\r\n var index = monitors.indexOf(monitor);\r\n if (index > -1) monitors.splice(index, 1);\r\n };\r\n this._IAMonitors.push(monitor);\r\n return monitor;\r\n }\r\n\r\n AttachTo(parentNode: XamlNode, error: BError): boolean {\r\n if (this.ParentNode && this.IsShareable)\r\n return true;\r\n var data = {\r\n ParentNode: parentNode,\r\n ChildNode: this,\r\n Name: \"\"\r\n };\r\n var curNode = parentNode;\r\n while (curNode) {\r\n if (curNode === this) {\r\n error.Message = \"Cycle found.\";\r\n error.Data = data;\r\n error.Number = BError.Attach;\r\n return false;\r\n }\r\n curNode = curNode.ParentNode;\r\n }\r\n\r\n if (this.ParentNode) {\r\n if (this.ParentNode === parentNode)\r\n return true;\r\n error.Message = \"Element is already a child of another element.\";\r\n error.Data = data;\r\n error.Number = BError.Attach;\r\n return false;\r\n }\r\n\r\n var parentScope = parentNode.FindNameScope();\r\n var thisScope = this.NameScope;\r\n if (thisScope) {\r\n if (!thisScope.IsRoot) {\r\n parentScope.Absorb(thisScope);\r\n this.NameScope = null;\r\n this._OwnerNameScope = parentScope;\r\n }\r\n } else if (parentScope) {\r\n var name = this.Name;\r\n if (name) {\r\n var existing = parentScope.FindName(name);\r\n if (existing && existing !== this) {\r\n error.Message = \"Name is already registered in parent namescope.\";\r\n data.Name = name;\r\n error.Data = data;\r\n error.Number = BError.Attach;\r\n return false;\r\n }\r\n parentScope.RegisterName(name, this);\r\n }\r\n this._OwnerNameScope = parentScope;\r\n }\r\n\r\n var old = this.ParentNode;\r\n this.ParentNode = parentNode;\r\n this.OnParentChanged(old, parentNode);\r\n \r\n parentNode._LogicalChildren.push(this);\r\n this.SetIsAttached(parentNode.IsAttached);\r\n\r\n return true;\r\n }\r\n Detach() {\r\n var name = this.Name;\r\n if (name && !this.NameScope) {\r\n var ns = this.FindNameScope();\r\n if (ns) ns.UnregisterName(this.Name);\r\n }\r\n this._OwnerNameScope = null;\r\n this.SetIsAttached(false);\r\n var old = this.ParentNode;\r\n this.ParentNode = null;\r\n if (old) {\r\n var index = old._LogicalChildren.indexOf(this);\r\n if (index > -1) old._LogicalChildren.splice(index, 1);\r\n this.OnParentChanged(old, null);\r\n }\r\n }\r\n OnParentChanged(oldParentNode: XamlNode, newParentNode: XamlNode) { }\r\n\r\n GetInheritedEnumerator(): nullstone.IEnumerator { return undefined; }\r\n\r\n static SetShareable(xn: XamlNode) {\r\n xn.IsShareable = true;\r\n }\r\n }\r\n}","module Fayde {\r\n export class XamlObject implements Providers.IIsPropertyInheritable {\r\n private static _LastID: number = 0;\r\n private _ID: number;\r\n XamlNode: Fayde.XamlNode;\r\n TemplateOwner: DependencyObject = null;\r\n App: Application = null;\r\n\r\n constructor() {\r\n this._ID = XamlObject._LastID++;\r\n this.XamlNode = this.CreateNode();\r\n }\r\n CreateNode(): XamlNode {\r\n return new XamlNode(this);\r\n }\r\n get Name() { return this.XamlNode.Name; }\r\n get Parent(): XamlObject {\r\n var pn = this.XamlNode.ParentNode;\r\n if (!pn) return;\r\n return pn.XObject;\r\n }\r\n\r\n FindName(name: string, doc?: boolean): XamlObject {\r\n var n = this.XamlNode.FindName(name, doc);\r\n return n ? n.XObject : undefined;\r\n }\r\n\r\n Clone(): XamlObject {\r\n var xobj: XamlObject = new (this).constructor();\r\n xobj.CloneCore(this);\r\n return xobj;\r\n }\r\n CloneCore(source: XamlObject) { }\r\n\r\n IsInheritable(propd: DependencyProperty): boolean { return false; }\r\n }\r\n Fayde.CoreLibrary.add(XamlObject);\r\n}","\r\nmodule Fayde.Providers {\r\n export enum PropertyPrecedence {\r\n IsEnabled = 0,\r\n LocalValue = 1,\r\n LocalStyle = 2,\r\n ImplicitStyle = 3,\r\n Inherited = 4,\r\n InheritedDataContext = 5,\r\n DefaultValue = 6,\r\n\r\n Lowest = 6,\r\n Highest = 0,\r\n Count = 7,\r\n }\r\n \r\n export interface IPropertyChangedListener {\r\n Property: DependencyProperty;\r\n OnPropertyChanged(sender: DependencyObject, args: IDependencyPropertyChangedEventArgs);\r\n Detach();\r\n }\r\n\r\n export interface IPropertyStorage {\r\n OwnerNode: DONode;\r\n Property: DependencyProperty;\r\n Precedence: PropertyPrecedence;\r\n Animations: Media.Animation.IAnimationStorage[];\r\n Local: any;\r\n LocalStyleValue: any;\r\n ImplicitStyleValue: any;\r\n PropListeners: IPropertyChangedListener[];\r\n }\r\n\r\n export interface IPropertyStorageOwner {\r\n _PropertyStorage: IPropertyStorage[];\r\n }\r\n\r\n export function GetStorage(dobj: DependencyObject, propd: DependencyProperty): IPropertyStorage {\r\n var arr = (dobj)._PropertyStorage;\r\n var storage = arr[propd._ID];\r\n if (!storage) arr[propd._ID] = storage = propd.Store.CreateStorage(dobj, propd);\r\n return storage;\r\n }\r\n\r\n export class PropertyStore {\r\n static Instance: PropertyStore;\r\n GetValue(storage: IPropertyStorage): any {\r\n var val: any;\r\n if ((val = storage.Local) !== undefined)\r\n return val;\r\n if ((val = storage.LocalStyleValue) !== undefined)\r\n return val;\r\n if ((val = storage.ImplicitStyleValue) !== undefined)\r\n return val;\r\n return storage.Property.DefaultValue;\r\n }\r\n GetValuePrecedence(storage: IPropertyStorage): PropertyPrecedence {\r\n if (storage.Local !== undefined)\r\n return PropertyPrecedence.LocalValue;\r\n if (storage.LocalStyleValue !== undefined)\r\n return PropertyPrecedence.LocalStyle;\r\n if (storage.ImplicitStyleValue !== undefined)\r\n return PropertyPrecedence.ImplicitStyle;\r\n return PropertyPrecedence.DefaultValue;\r\n }\r\n\r\n SetLocalValue(storage: Providers.IPropertyStorage, newValue: any) {\r\n if (newValue === undefined || newValue === DependencyProperty.UnsetValue) {\r\n this.ClearValue(storage);\r\n return;\r\n }\r\n\r\n var propd = storage.Property;\r\n if (newValue && propd.GetTargetType() === String) {\r\n if (typeof newValue !== \"string\")\r\n newValue = newValue.toString();\r\n //TODO: More type checks\r\n }\r\n\r\n var isValidOut = { IsValid: false };\r\n newValue = propd.ValidateSetValue(storage.OwnerNode.XObject, newValue, isValidOut);\r\n if (!isValidOut.IsValid)\r\n return;\r\n\r\n \r\n var precDiff = storage.Precedence - PropertyPrecedence.LocalValue;\r\n if (!propd.AlwaysChange && precDiff < 0) {\r\n storage.Local = newValue;\r\n return;\r\n }\r\n\r\n var oldValue = undefined;\r\n if (precDiff > 0)\r\n oldValue = this.GetValue(storage);\r\n else\r\n oldValue = storage.Local;\r\n storage.Local = newValue;\r\n this.OnPropertyChanged(storage, PropertyPrecedence.LocalValue, oldValue, newValue);\r\n }\r\n SetLocalStyleValue(storage: IPropertyStorage, newValue: any) {\r\n var precDiff = storage.Precedence - PropertyPrecedence.LocalStyle;\r\n if (precDiff < 0) {\r\n storage.LocalStyleValue = newValue;\r\n return;\r\n }\r\n\r\n var oldValue = undefined;\r\n if (precDiff > 0)\r\n oldValue = this.GetValue(storage);\r\n else\r\n oldValue = storage.LocalStyleValue;\r\n storage.LocalStyleValue = newValue;\r\n this.OnPropertyChanged(storage, PropertyPrecedence.LocalStyle, oldValue, newValue);\r\n }\r\n SetImplicitStyle(storage: IPropertyStorage, newValue: any) {\r\n var precDiff = storage.Precedence - PropertyPrecedence.ImplicitStyle;\r\n if (precDiff < 0) {\r\n storage.ImplicitStyleValue = newValue;\r\n return;\r\n }\r\n\r\n var oldValue = undefined;\r\n if (precDiff > 0)\r\n oldValue = this.GetValue(storage);\r\n else\r\n oldValue = storage.ImplicitStyleValue;\r\n storage.ImplicitStyleValue = newValue;\r\n this.OnPropertyChanged(storage, PropertyPrecedence.ImplicitStyle, oldValue, newValue);\r\n }\r\n\r\n ClearValue(storage: Providers.IPropertyStorage) {\r\n var oldLocal = storage.Local;\r\n if (oldLocal === undefined)\r\n return;\r\n storage.Local = undefined;\r\n this.OnPropertyChanged(storage, PropertyPrecedence.LocalValue, oldLocal, undefined);\r\n }\r\n\r\n OnPropertyChanged(storage: IPropertyStorage, effectivePrecedence: PropertyPrecedence, oldValue: any, newValue: any): IDependencyPropertyChangedEventArgs {\r\n var propd = storage.Property;\r\n if (newValue === undefined) {\r\n effectivePrecedence = this.GetValuePrecedence(storage);\r\n newValue = this.GetValue(storage);\r\n }\r\n \r\n storage.Precedence = effectivePrecedence;\r\n if (!propd.AlwaysChange && oldValue === newValue)\r\n return undefined;\r\n\r\n if (!storage.Property.IsCustom) {\r\n if (oldValue instanceof XamlObject)\r\n (oldValue).XamlNode.Detach();\r\n if (newValue instanceof XamlObject) {\r\n var error = new BError();\r\n if (!(newValue).XamlNode.AttachTo(storage.OwnerNode, error))\r\n error.ThrowException();\r\n }\r\n }\r\n\r\n var args = {\r\n Property: propd,\r\n OldValue: oldValue,\r\n NewValue: newValue\r\n };\r\n var sender = storage.OwnerNode.XObject;\r\n if (propd.ChangedCallback)\r\n propd.ChangedCallback(sender, args);\r\n var listeners = storage.PropListeners;\r\n if (listeners) {\r\n var len = listeners.length;\r\n for (var i = 0; i < len; i++) {\r\n listeners[i].OnPropertyChanged(sender, args);\r\n }\r\n }\r\n return args;\r\n }\r\n ListenToChanged(target: DependencyObject, propd: DependencyProperty, func: (sender, args: IDependencyPropertyChangedEventArgs) => void , closure: any): Providers.IPropertyChangedListener {\r\n var storage = GetStorage(target, propd);\r\n var listeners = storage.PropListeners;\r\n if (!listeners) listeners = storage.PropListeners = [];\r\n\r\n var listener = {\r\n Detach: function () {\r\n var index = listeners.indexOf(listener);\r\n if (index > -1)\r\n listeners.splice(index, 1);\r\n },\r\n Property: propd,\r\n OnPropertyChanged: function (sender: DependencyObject, args: IDependencyPropertyChangedEventArgs) { func.call(closure, sender, args); }\r\n };\r\n listeners.push(listener);\r\n return listener;\r\n }\r\n\r\n CreateStorage(dobj: DependencyObject, propd: DependencyProperty): IPropertyStorage {\r\n return {\r\n OwnerNode: dobj.XamlNode,\r\n Property: propd,\r\n Precedence: PropertyPrecedence.DefaultValue,\r\n Animations: undefined,\r\n Local: undefined,\r\n LocalStyleValue: undefined,\r\n ImplicitStyleValue: undefined,\r\n PropListeners: undefined,\r\n };\r\n }\r\n Clone(dobj: DependencyObject, sourceStorage: IPropertyStorage): IPropertyStorage {\r\n var newStorage = this.CreateStorage(dobj, sourceStorage.Property);\r\n newStorage.Precedence = sourceStorage.Precedence;\r\n //newStorage.ImplicitStyleValue = undefined;\r\n //newStorage.LocalStyleValue = undefined;\r\n newStorage.Local = Fayde.Clone(sourceStorage.Local);\r\n var anims = newStorage.Animations = sourceStorage.Animations;\r\n if (anims) {\r\n for (var i = 0; i < anims.length; i++) {\r\n anims[i].PropStorage = newStorage;\r\n }\r\n }\r\n //TODO: Copy over property listeners?\r\n return newStorage;\r\n }\r\n }\r\n PropertyStore.Instance = new PropertyStore();\r\n}","/// \r\n\r\nmodule Fayde.Providers {\r\n export class ImmutableStore extends PropertyStore {\r\n static Instance: ImmutableStore;\r\n\r\n GetValue(storage: IPropertyStorage): any {\r\n return storage.Local;\r\n }\r\n GetValuePrecedence(storage: IPropertyStorage): PropertyPrecedence {\r\n return PropertyPrecedence.LocalValue;\r\n }\r\n SetLocalValue(storage: Providers.IPropertyStorage, newValue: any) {\r\n console.warn(\"Trying to set value for immutable property.\");\r\n }\r\n ClearValue(storage: Providers.IPropertyStorage) {\r\n console.warn(\"Trying to clear value for immutable property.\");\r\n }\r\n ListenToChanged(target: DependencyObject, propd: DependencyProperty, func: (sender, args: IDependencyPropertyChangedEventArgs) => void, closure: any): Providers.IPropertyChangedListener {\r\n return {\r\n Property: propd,\r\n OnPropertyChanged: function (sender: DependencyObject, args: IDependencyPropertyChangedEventArgs) { },\r\n Detach: function () { }\r\n };\r\n }\r\n Clone(dobj: DependencyObject, sourceStorage: IPropertyStorage): IPropertyStorage {\r\n if (sourceStorage.Local instanceof XamlObjectCollection) {\r\n var newStorage = Providers.GetStorage(dobj, sourceStorage.Property);\r\n var newColl = >newStorage.Local;\r\n newColl.CloneCore(>sourceStorage.Local);\r\n var anims = newStorage.Animations = sourceStorage.Animations;\r\n if (anims) {\r\n for (var i = 0; i < anims.length; i++) {\r\n anims[i].PropStorage = newStorage;\r\n }\r\n }\r\n return newStorage;\r\n } else {\r\n console.warn(\"Cloning Immutable improperly\");\r\n return super.Clone(dobj, sourceStorage);\r\n }\r\n }\r\n }\r\n ImmutableStore.Instance = new ImmutableStore();\r\n}","/// \r\n\r\ninterface IOutIsValid {\r\n IsValid: boolean;\r\n}\r\n\r\ninterface IType {\r\n}\r\n\r\nclass DependencyProperty {\r\n static UnsetValue = {};\r\n\r\n private static _IDs: DependencyProperty[] = [];\r\n private static _LastID: number = 0;\r\n\r\n _ID: number;\r\n Name: string;\r\n GetTargetType: () => IType;\r\n OwnerType: any;\r\n DefaultValue: any;\r\n IsReadOnly: boolean = false;\r\n IsCustom: boolean = true;\r\n IsAttached: boolean = false;\r\n IsInheritable: boolean = false;\r\n IsImmutable: boolean = false;\r\n ChangedCallback: (dobj: Fayde.DependencyObject, args: DependencyPropertyChangedEventArgs) => void;\r\n AlwaysChange: boolean = false;\r\n Store: Fayde.Providers.PropertyStore;\r\n private _Coercer: (dobj: Fayde.DependencyObject, propd: DependencyProperty, value: any) => any = null;\r\n private _Validator: (dobj: Fayde.DependencyObject, propd: DependencyProperty, value: any, original: any) => boolean = null;\r\n\r\n static Register (name: string, getTargetType: () => IType, ownerType: any, defaultValue?: any, changedCallback?: (dobj: Fayde.DependencyObject, args: DependencyPropertyChangedEventArgs) => void) {\r\n var propd = new DependencyProperty();\r\n propd.Name = name;\r\n propd.GetTargetType = getTargetType;\r\n propd.OwnerType = ownerType;\r\n propd.DefaultValue = defaultValue;\r\n propd.ChangedCallback = changedCallback;\r\n propd.Store = Fayde.Providers.PropertyStore.Instance;\r\n propd.FinishRegister();\r\n return propd;\r\n }\r\n\r\n static RegisterReadOnly (name: string, getTargetType: () => IType, ownerType: any, defaultValue?: any, changedCallback?: (dobj: Fayde.DependencyObject, args: DependencyPropertyChangedEventArgs) => void) {\r\n var propd = new DependencyProperty();\r\n propd.Name = name;\r\n propd.GetTargetType = getTargetType;\r\n propd.OwnerType = ownerType;\r\n propd.DefaultValue = defaultValue;\r\n propd.ChangedCallback = changedCallback;\r\n propd.IsReadOnly = true;\r\n propd.Store = Fayde.Providers.PropertyStore.Instance;\r\n propd.FinishRegister();\r\n return propd;\r\n }\r\n\r\n static RegisterAttached (name: string, getTargetType: () => IType, ownerType: any, defaultValue?: any, changedCallback?: (dobj: Fayde.DependencyObject, args: DependencyPropertyChangedEventArgs) => void) {\r\n var propd = new DependencyProperty();\r\n propd.Name = name;\r\n propd.GetTargetType = getTargetType;\r\n propd.OwnerType = ownerType;\r\n propd.DefaultValue = defaultValue;\r\n propd.ChangedCallback = changedCallback;\r\n propd.IsAttached = true;\r\n propd.Store = Fayde.Providers.PropertyStore.Instance;\r\n propd.FinishRegister();\r\n return propd;\r\n }\r\n\r\n static RegisterCore (name: string, getTargetType: () => IType, ownerType: any, defaultValue?: any, changedCallback?: (dobj: Fayde.DependencyObject, args: DependencyPropertyChangedEventArgs) => void) {\r\n var propd = new DependencyProperty();\r\n propd.Name = name;\r\n propd.GetTargetType = getTargetType;\r\n propd.OwnerType = ownerType;\r\n propd.DefaultValue = defaultValue;\r\n propd.ChangedCallback = changedCallback;\r\n propd.IsCustom = false;\r\n propd.Store = Fayde.Providers.PropertyStore.Instance;\r\n propd.FinishRegister();\r\n return propd;\r\n }\r\n\r\n static RegisterReadOnlyCore (name: string, getTargetType: () => IType, ownerType: any, defaultValue?: any, changedCallback?: (dobj: Fayde.DependencyObject, args: DependencyPropertyChangedEventArgs) => void) {\r\n var propd = new DependencyProperty();\r\n propd.Name = name;\r\n propd.GetTargetType = getTargetType;\r\n propd.OwnerType = ownerType;\r\n propd.DefaultValue = defaultValue;\r\n propd.ChangedCallback = changedCallback;\r\n propd.IsCustom = false;\r\n propd.IsReadOnly = true;\r\n propd.Store = Fayde.Providers.PropertyStore.Instance;\r\n propd.FinishRegister();\r\n return propd;\r\n }\r\n\r\n static RegisterAttachedCore (name: string, getTargetType: () => IType, ownerType: any, defaultValue?: any, changedCallback?: (dobj: Fayde.DependencyObject, args: DependencyPropertyChangedEventArgs) => void) {\r\n var propd = new DependencyProperty();\r\n propd.Name = name;\r\n propd.GetTargetType = getTargetType;\r\n propd.OwnerType = ownerType;\r\n propd.DefaultValue = defaultValue;\r\n propd.ChangedCallback = changedCallback;\r\n propd.IsCustom = false;\r\n propd.IsAttached = true;\r\n propd.Store = Fayde.Providers.PropertyStore.Instance;\r\n propd.FinishRegister();\r\n return propd;\r\n }\r\n\r\n static RegisterImmutable(name: string, getTargetType: () => IType, ownerType: any): ImmutableDependencyProperty {\r\n var propd = new ImmutableDependencyProperty();\r\n propd.Name = name;\r\n propd.GetTargetType = getTargetType;\r\n propd.OwnerType = ownerType;\r\n propd.DefaultValue = undefined;\r\n propd.IsImmutable = true;\r\n propd.Store = Fayde.Providers.ImmutableStore.Instance;\r\n propd.FinishRegister();\r\n return propd;\r\n }\r\n\r\n static RegisterInheritable (name: string, getTargetType: () => IType, ownerType: any, defaultValue?: any, changedCallback?: (dobj: Fayde.DependencyObject, args: DependencyPropertyChangedEventArgs) => void) {\r\n var propd = new DependencyProperty();\r\n propd.Name = name;\r\n propd.GetTargetType = getTargetType;\r\n propd.OwnerType = ownerType;\r\n propd.DefaultValue = defaultValue;\r\n propd.ChangedCallback = changedCallback;\r\n propd.IsCustom = true;\r\n propd.IsInheritable = true;\r\n propd.Store = Fayde.Providers.InheritedStore.Instance;\r\n propd.FinishRegister();\r\n return propd;\r\n }\r\n\r\n static RegisterFull (name: string, getTargetType: () => IType, ownerType: any, defaultValue?: any, changedCallback?: (dobj: Fayde.DependencyObject, args: DependencyPropertyChangedEventArgs) => void, coercer?: (dobj: Fayde.DependencyObject, propd: DependencyProperty, value: any) => any, alwaysChange?: boolean, validator?: (dobj: Fayde.DependencyObject, propd: DependencyProperty, value: any) => boolean, isCustom?: boolean, isReadOnly?: boolean, isAttached?: boolean): DependencyProperty {\r\n var propd = new DependencyProperty();\r\n propd.Name = name;\r\n propd.GetTargetType = getTargetType;\r\n propd.OwnerType = ownerType;\r\n propd.DefaultValue = defaultValue;\r\n propd.ChangedCallback = changedCallback;\r\n propd._Coercer = coercer;\r\n propd.AlwaysChange = alwaysChange;\r\n propd._Validator = validator;\r\n propd.IsCustom = isCustom !== false;\r\n propd.IsReadOnly = isReadOnly === true;\r\n propd.IsAttached = isAttached === true;\r\n propd.Store = Fayde.Providers.PropertyStore.Instance;\r\n propd.FinishRegister();\r\n return propd;\r\n }\r\n\r\n private FinishRegister () {\r\n var name = this.Name;\r\n var ownerType = this.OwnerType;\r\n if (!ownerType || typeof ownerType !== \"function\")\r\n throw new InvalidOperationException(\"DependencyProperty does not have a valid OwnerType.\");\r\n var registeredDPs = (ownerType)._RegisteredDPs;\r\n if (!registeredDPs) {\r\n var registeredDPs: any = {};\r\n Object.defineProperty(ownerType, \"_RegisteredDPs\", {\r\n value: registeredDPs,\r\n enumerable: false,\r\n writable: false\r\n });\r\n }\r\n if (registeredDPs[name] !== undefined)\r\n throw new InvalidOperationException(\"Dependency Property is already registered. [\" + name + \"]\");\r\n registeredDPs[name] = this;\r\n this._ID = DependencyProperty._LastID = DependencyProperty._LastID + 1;\r\n DependencyProperty._IDs[this._ID] = this;\r\n\r\n if (this.IsImmutable)\r\n return;\r\n\r\n var propd = this;\r\n var getter = function () {\r\n return (this).GetValue(propd);\r\n };\r\n var setter = function (value) {\r\n (this).SetValue(propd, value);\r\n };\r\n if (this.IsReadOnly)\r\n setter = function (value) {\r\n throw new Exception(\"Property [\" + propd.Name + \"] is readonly.\");\r\n };\r\n Object.defineProperty(ownerType.prototype, this.Name, {\r\n get: getter,\r\n set: setter,\r\n configurable: true\r\n });\r\n }\r\n\r\n ExtendTo (type: any): DependencyProperty {\r\n var registeredDPs = type._RegisteredDPs;\r\n if (!registeredDPs) {\r\n var registeredDPs: any = {};\r\n Object.defineProperty(type, \"_RegisteredDPs\", {\r\n value: registeredDPs,\r\n enumerable: false,\r\n writable: false\r\n });\r\n }\r\n registeredDPs[this.Name] = this;\r\n\r\n var propd = this;\r\n var getter = function () {\r\n return (this).GetValue(propd);\r\n };\r\n var setter = function (value) {\r\n (this).SetValue(propd, value);\r\n };\r\n Object.defineProperty(type.prototype, this.Name, {\r\n get: getter,\r\n set: setter,\r\n configurable: true\r\n });\r\n return this;\r\n }\r\n\r\n ValidateSetValue (dobj: Fayde.DependencyObject, value: any, isValidOut: IOutIsValid) {\r\n var coerced = value;\r\n if (this._Coercer)\r\n coerced = this._Coercer(dobj, this, coerced);\r\n /* TODO: Handle Type Problems\r\n if (!this._IsValueValid(dobj, coerced))\r\n return coerced;\r\n */\r\n isValidOut.IsValid = true;\r\n if (this._Validator)\r\n isValidOut.IsValid = !!this._Validator(dobj, this, coerced, value);\r\n return coerced;\r\n }\r\n\r\n static GetDependencyProperty (ownerType: any, name: string, noError?: boolean): DependencyProperty {\r\n if (!ownerType)\r\n return undefined;\r\n var reg: DependencyProperty[] = (ownerType)._RegisteredDPs;\r\n var propd: DependencyProperty;\r\n if (reg)\r\n propd = reg[name];\r\n if (!propd)\r\n propd = DependencyProperty.GetDependencyProperty(nullstone.getTypeParent(ownerType), name, true);\r\n if (!propd && !noError)\r\n throw new Exception(\"Cannot locate dependency property [\" + (ownerType).name + \"].[\" + name + \"]\");\r\n return propd;\r\n }\r\n}\r\nFayde.CoreLibrary.add(DependencyProperty);\r\n\r\nclass ImmutableDependencyProperty extends DependencyProperty {\r\n IsImmutable: boolean = true;\r\n\r\n Initialize (dobj: Fayde.DependencyObject): T {\r\n var storage = Fayde.Providers.GetStorage(dobj, this);\r\n storage.Precedence = Fayde.Providers.PropertyPrecedence.LocalValue;\r\n var type = this.GetTargetType();\r\n var obj: T = new type();\r\n Object.defineProperty(dobj, this.Name, {\r\n value: obj,\r\n writable: false\r\n });\r\n return storage.Local = obj;\r\n }\r\n}","/// \r\n\r\nmodule Fayde.Providers {\r\n export interface IDataContextStorage extends IPropertyStorage {\r\n InheritedValue: any;\r\n }\r\n\r\n export class DataContextStore extends PropertyStore {\r\n static Instance: DataContextStore;\r\n GetValue(storage: IDataContextStorage): any {\r\n var val = super.GetValue(storage);\r\n if (val === undefined)\r\n val = storage.InheritedValue;\r\n return val;\r\n }\r\n GetValuePrecedence(storage: IDataContextStorage): PropertyPrecedence {\r\n var prec = super.GetValuePrecedence(storage);\r\n if (prec < PropertyPrecedence.InheritedDataContext)\r\n return prec;\r\n if (storage.InheritedValue !== undefined)\r\n return PropertyPrecedence.InheritedDataContext;\r\n return PropertyPrecedence.DefaultValue;\r\n }\r\n OnInheritedChanged(storage: IDataContextStorage, newInherited?: any) {\r\n var oldInherited = storage.InheritedValue;\r\n storage.InheritedValue = newInherited;\r\n if (storage.Precedence >= PropertyPrecedence.InheritedDataContext && oldInherited !== newInherited)\r\n this.OnPropertyChanged(storage, PropertyPrecedence.InheritedDataContext, oldInherited, newInherited);\r\n }\r\n\r\n CreateStorage(dobj: DependencyObject, propd: DependencyProperty): IDataContextStorage {\r\n return {\r\n OwnerNode: dobj.XamlNode,\r\n Property: propd,\r\n Precedence: PropertyPrecedence.DefaultValue,\r\n Animations: undefined,\r\n Local: undefined,\r\n LocalStyleValue: undefined,\r\n ImplicitStyleValue: undefined,\r\n InheritedValue: undefined,\r\n PropListeners: undefined,\r\n };\r\n }\r\n\r\n OnPropertyChanged(storage: IDataContextStorage, effectivePrecedence: PropertyPrecedence, oldValue: any, newValue: any): IDependencyPropertyChangedEventArgs {\r\n var args = super.OnPropertyChanged(storage, effectivePrecedence, oldValue, newValue);\r\n if (args) {\r\n if (effectivePrecedence > PropertyPrecedence.LocalValue && this.TryUpdateDataContextExpression(storage, args.NewValue))\r\n return;\r\n storage.OwnerNode.OnDataContextChanged(args.OldValue, args.NewValue);\r\n }\r\n return args;\r\n }\r\n\r\n private TryUpdateDataContextExpression(storage: IDataContextStorage, newDataContext: any): boolean {\r\n var val = storage.InheritedValue;\r\n var exprs = (storage.OwnerNode.XObject)._Expressions;\r\n var dcexpr = exprs[storage.Property._ID];\r\n if (!dcexpr)\r\n return false;\r\n dcexpr.OnDataContextChanged(newDataContext);\r\n return true;\r\n }\r\n }\r\n DataContextStore.Instance = new DataContextStore();\r\n}","module Fayde {\r\n export interface IDPReactionCallback {\r\n (dobj: DependencyObject, ov: T, nv: T): void;\r\n }\r\n\r\n export function DPReaction(propd: DependencyProperty, callback?: IDPReactionCallback, listen?: boolean) {\r\n if (listen === false) {\r\n propd.ChangedCallback = reaction(callback);\r\n } else {\r\n propd.ChangedCallback = lReaction(callback);\r\n }\r\n }\r\n\r\n function reaction(callback: IDPReactionCallback) {\r\n return (dobj: DependencyObject, args: DependencyPropertyChangedEventArgs) => {\r\n callback && callback(dobj, args.OldValue, args.NewValue);\r\n };\r\n }\r\n\r\n function lReaction(callback: IDPReactionCallback) {\r\n return (dobj: DependencyObject, args: DependencyPropertyChangedEventArgs) => {\r\n var ov = args.OldValue;\r\n var nv = args.NewValue;\r\n UnreactTo(ov, dobj);\r\n callback && callback(dobj, ov, nv);\r\n ReactTo(nv, dobj, () => callback(dobj, nv, nv));\r\n };\r\n }\r\n}","module Fayde {\r\n interface IReactable {\r\n $$reaction_sources: any[];\r\n $$reactions: IReaction[];\r\n }\r\n interface IReaction {\r\n (val?: any);\r\n }\r\n\r\n export function Incite (obj: any, val?: any) {\r\n if (!obj)\r\n return;\r\n var reactions = (obj).$$reactions;\r\n if (!reactions)\r\n return;\r\n var rs = (obj).$$reaction_sources;\r\n for (var i = 0; i < reactions.length; i++) {\r\n reactions[i].call(rs[i], val);\r\n }\r\n }\r\n\r\n export function ReactTo (obj: any, scope: any, changed: (val?: any) => any) {\r\n if (!obj)\r\n return;\r\n var rs = obj.$$reaction_sources;\r\n if (!rs) {\r\n rs = [];\r\n Object.defineProperty(obj, \"$$reaction_sources\", {value: rs, enumerable: false});\r\n }\r\n rs.push(scope);\r\n var reactions = obj.$$reactions;\r\n if (!reactions) {\r\n reactions = [];\r\n Object.defineProperty(obj, \"$$reactions\", {value: reactions, enumerable: false});\r\n }\r\n reactions.push(changed);\r\n }\r\n\r\n export function UnreactTo (obj: any, scope: any) {\r\n if (!obj)\r\n return;\r\n var reactions = obj.$$reactions;\r\n if (!reactions)\r\n return;\r\n var rs = obj.$$reaction_sources;\r\n var index = rs.indexOf(scope);\r\n if (index < 0)\r\n return;\r\n rs.splice(index, 1);\r\n reactions.splice(index, 1);\r\n }\r\n}","/// \r\n/// \r\n/// \r\n/// \r\n/// \r\n/// \r\n/// \r\n\r\nmodule Fayde {\r\n export class DONode extends XamlNode {\r\n XObject: DependencyObject;\r\n constructor(xobj: DependencyObject) {\r\n super(xobj);\r\n }\r\n\r\n OnParentChanged(oldParentNode: XamlNode, newParentNode: XamlNode) {\r\n super.OnParentChanged(oldParentNode, newParentNode);\r\n var propd = DependencyObject.DataContextProperty;\r\n var storage = Providers.GetStorage(this.XObject, propd);\r\n var newInherited = newParentNode ? newParentNode.DataContext : undefined;\r\n (propd.Store).OnInheritedChanged(storage, newInherited);\r\n }\r\n\r\n get DataContext(): any { return this.XObject.DataContext; }\r\n set DataContext(value: any) {\r\n var propd = DependencyObject.DataContextProperty;\r\n var storage = Providers.GetStorage(this.XObject, propd);\r\n (propd.Store).OnInheritedChanged(storage, value);\r\n }\r\n OnDataContextChanged(oldDataContext: any, newDataContext: any) {\r\n var dcpid = DependencyObject.DataContextProperty._ID.toString();\r\n var exprs = (this.XObject)._Expressions;\r\n var expr: Expression;\r\n for (var id in exprs) {\r\n expr = exprs[id];\r\n if (!(expr instanceof Expression))\r\n continue;\r\n //DataContextProperty expressions are updated in DataContextStore\r\n if (id === dcpid)\r\n continue;\r\n expr.OnDataContextChanged(newDataContext);\r\n }\r\n super.OnDataContextChanged(oldDataContext, newDataContext);\r\n }\r\n }\r\n\r\n export class DependencyObject extends XamlObject implements ICloneable, Providers.IPropertyStorageOwner {\r\n private _Expressions: Expression[] = [];\r\n _PropertyStorage: Providers.IPropertyStorage[] = [];\r\n\r\n static DataContextProperty = DependencyProperty.Register(\"DataContext\", () => Object, DependencyObject);\r\n DataContext: any;\r\n\r\n constructor() {\r\n super();\r\n }\r\n XamlNode: DONode;\r\n CreateNode(): DONode { return new DONode(this); }\r\n\r\n GetValue(propd: DependencyProperty): any {\r\n if (!propd)\r\n throw new ArgumentException(\"No property specified.\");\r\n var storage = Providers.GetStorage(this, propd);\r\n return propd.Store.GetValue(storage);\r\n }\r\n SetValue(propd: DependencyProperty, value: any) {\r\n if (!propd)\r\n throw new ArgumentException(\"No property specified.\");\r\n if (propd.IsReadOnly)\r\n throw new InvalidOperationException(\"DependencyProperty '\" + (propd.OwnerType).name + \".\" + propd.Name + \"' is read only.\");\r\n this.SetValueInternal(propd, value);\r\n }\r\n SetValueInternal(propd: DependencyProperty, value: any) {\r\n var expression: Expression;\r\n if (value instanceof Expression) {\r\n expression = value;\r\n expression.Seal(this, propd);\r\n }\r\n\r\n var existing = this._Expressions[propd._ID];\r\n\r\n var updateTwoWay = false;\r\n var addingExpression = false;\r\n if (expression) {\r\n if (expression !== existing) {\r\n if (expression.IsAttached)\r\n throw new ArgumentException(\"Cannot attach the same Expression to multiple FrameworkElements\");\r\n\r\n if (existing)\r\n this._RemoveExpression(propd);\r\n this._AddExpression(propd, expression);\r\n }\r\n addingExpression = true;\r\n value = expression.GetValue(propd);\r\n } else if (existing) {\r\n if (existing instanceof Data.BindingExpressionBase) {\r\n var binding = (existing).ParentBinding;\r\n if (binding.Mode === Data.BindingMode.TwoWay) {\r\n updateTwoWay = !existing.IsUpdating && !propd.IsCustom;\r\n } else if (!existing.IsUpdating || binding.Mode === Data.BindingMode.OneTime) {\r\n this._RemoveExpression(propd);\r\n }\r\n } else if (!existing.IsUpdating) {\r\n this._RemoveExpression(propd);\r\n }\r\n }\r\n\r\n var storage = Providers.GetStorage(this, propd);\r\n try {\r\n propd.Store.SetLocalValue(storage, value);\r\n if (updateTwoWay)\r\n (existing)._TryUpdateSourceObject(value);\r\n } catch (err) {\r\n if (!addingExpression)\r\n throw err;\r\n var msg = \"Error setting value: \" + err.toString();\r\n msg += err.stack;\r\n console.warn(msg);\r\n propd.Store.SetLocalValue(storage, propd.DefaultValue);\r\n if (updateTwoWay)\r\n (existing)._TryUpdateSourceObject(value);\r\n }\r\n }\r\n SetCurrentValue(propd: DependencyProperty, value: any) {\r\n var storage = Providers.GetStorage(this, propd);\r\n propd.Store.SetLocalValue(storage, value);\r\n\r\n var expr = this._Expressions[propd._ID];\r\n if (expr instanceof Data.BindingExpressionBase)\r\n expr._TryUpdateSourceObject(value);\r\n }\r\n ClearValue(propd: DependencyProperty) {\r\n if (!propd)\r\n throw new ArgumentException(\"No dependency property.\");\r\n if (propd.IsReadOnly && !propd.IsCustom)\r\n throw new ArgumentException(\"This property is readonly.\");\r\n this._RemoveExpression(propd);\r\n\r\n var storage = Providers.GetStorage(this, propd);\r\n var anims = storage.Animations;\r\n if (anims && anims.length > 0)\r\n return;\r\n propd.Store.ClearValue(storage);\r\n }\r\n ReadLocalValue(propd: DependencyProperty): any {\r\n if (!propd)\r\n throw new ArgumentException(\"No property specified.\");\r\n var expr = this._Expressions[propd._ID];\r\n var val: any;\r\n if (expr)\r\n val = expr.GetValue(propd);\r\n else\r\n val = this.ReadLocalValueInternal(propd);\r\n if (val === undefined)\r\n return DependencyProperty.UnsetValue;\r\n return val;\r\n }\r\n ReadLocalValueInternal(propd: DependencyProperty): any {\r\n var storage = Providers.GetStorage(this, propd);\r\n return storage.Local;\r\n }\r\n\r\n private _AddExpression(propd: DependencyProperty, expr: Expression) {\r\n this._Expressions[propd._ID] = expr;\r\n expr.OnAttached(this);\r\n }\r\n private _RemoveExpression(propd: DependencyProperty) {\r\n var expr = this._Expressions[propd._ID];\r\n if (expr) {\r\n this._Expressions[propd._ID] = undefined;\r\n expr.OnDetached(this);\r\n }\r\n }\r\n _HasDeferredValueExpression(propd: DependencyProperty) {\r\n var expr = this._Expressions[propd._ID];\r\n return expr instanceof DeferredValueExpression;\r\n }\r\n GetBindingExpression(propd: DependencyProperty): Data.BindingExpressionBase {\r\n var expr = this._Expressions[propd._ID];\r\n if (expr instanceof Data.BindingExpressionBase)\r\n return expr;\r\n }\r\n HasValueOrExpression(propd: DependencyProperty): boolean {\r\n if (this._Expressions[propd._ID] instanceof Expression)\r\n return true;\r\n return this.ReadLocalValueInternal(propd) !== undefined;\r\n }\r\n SetBinding(propd: DependencyProperty, binding: Data.Binding): Data.BindingExpressionBase {\r\n if (!propd)\r\n throw new ArgumentException(\"propd\");\r\n if (!binding)\r\n throw new ArgumentException(\"binding\");\r\n\r\n var e = new Data.BindingExpression(binding);\r\n this.SetValueInternal(propd, e);\r\n return e;\r\n }\r\n\r\n CloneCore(source: DependencyObject) {\r\n var sarr = source._PropertyStorage;\r\n var darr = this._PropertyStorage;\r\n if (!darr)\r\n darr = this._PropertyStorage = [];\r\n for (var id in sarr) {\r\n var storage: Providers.IPropertyStorage = sarr[id];\r\n darr[id] = storage.Property.Store.Clone(this, storage);\r\n }\r\n }\r\n\r\n ListenToChanged (propd: DependencyProperty, func: (sender, args: IDependencyPropertyChangedEventArgs) => void, closure?: any): Providers.IPropertyChangedListener {\r\n return propd.Store.ListenToChanged(this, propd, func, closure);\r\n }\r\n }\r\n Fayde.CoreLibrary.add(DependencyObject);\r\n\r\n DependencyObject.DataContextProperty.Store = Fayde.Providers.DataContextStore.Instance;\r\n}","module Fayde {\r\n export interface IUIReactionCallback {\r\n (updater: minerva.core.Updater, ov: T, nv: T, uie?: UIElement): void;\r\n }\r\n\r\n export function UIReaction(propd: DependencyProperty, callback?: IUIReactionCallback, listen?: boolean, sync?: (src: TValue, dest: TValue) => void, instance?: any);\r\n\r\n export function UIReaction(propd: DependencyProperty, callback?: IUIReactionCallback, listen?: boolean, sync?: boolean, instance?: any);\r\n\r\n export function UIReaction(propd: DependencyProperty, callback?: IUIReactionCallback, listen?: boolean, sync?: any, instance?: any) {\r\n var changed: Function;\r\n if (sync === false) {\r\n changed = (listen === false) ? reaction(callback) : lReaction(callback);\r\n } else {\r\n var name = propd.Name;\r\n name = name.charAt(0).toLowerCase() + name.substr(1);\r\n if (typeof sync !== \"function\")\r\n changed = (listen === false) ? sReaction(callback, name) : slReaction(callback, name);\r\n else\r\n changed = (listen === false) ? sReaction(callback, name, sync) : slReaction(callback, name, sync);\r\n }\r\n if (instance)\r\n propd.Store.ListenToChanged(instance, propd, changed, instance);\r\n else\r\n propd.ChangedCallback = changed;\r\n }\r\n\r\n function reaction(callback: IUIReactionCallback) {\r\n return (uie: UIElement, args: DependencyPropertyChangedEventArgs) => {\r\n callback && callback(uie.XamlNode.LayoutUpdater, args.OldValue, args.NewValue, uie);\r\n };\r\n }\r\n\r\n function sReaction(callback: IUIReactionCallback, name: string, syncer?: (src: T, dest: T) => void) {\r\n return (uie: UIElement, args: DependencyPropertyChangedEventArgs) => {\r\n var ov = args.OldValue;\r\n var nv = args.NewValue;\r\n var upd = uie.XamlNode.LayoutUpdater;\r\n if (!syncer)\r\n upd.assets[name] = nv;\r\n else\r\n syncer(nv, upd.assets[name]);\r\n callback && callback(upd, ov, nv, uie);\r\n };\r\n }\r\n\r\n function lReaction(callback: IUIReactionCallback) {\r\n return (uie: UIElement, args: DependencyPropertyChangedEventArgs) => {\r\n var ov = args.OldValue;\r\n var nv = args.NewValue;\r\n var upd = uie.XamlNode.LayoutUpdater;\r\n UnreactTo(ov, uie);\r\n callback && callback(upd, ov, nv, uie);\r\n ReactTo(nv, uie, () => callback(upd, nv, nv, uie));\r\n };\r\n }\r\n\r\n function slReaction(callback: IUIReactionCallback, name: string, syncer?: (src: T, dest: T) => void) {\r\n return (uie: UIElement, args: DependencyPropertyChangedEventArgs) => {\r\n var ov = args.OldValue;\r\n var nv = args.NewValue;\r\n var upd = uie.XamlNode.LayoutUpdater;\r\n UnreactTo(ov, uie);\r\n if (!syncer)\r\n upd.assets[name] = nv;\r\n else\r\n syncer(nv, upd.assets[name]);\r\n callback && callback(upd, ov, nv, uie);\r\n ReactTo(nv, uie, () => callback && callback(upd, nv, nv, uie));\r\n };\r\n }\r\n}","module Fayde {\r\n export function UIReactionAttached(propd: DependencyProperty, callback?: IUIReactionCallback) {\r\n propd.ChangedCallback = reaction(nullstone.getTypeName(propd.OwnerType) + '.' + propd.Name, callback);\r\n }\r\n\r\n function reaction(name: string, callback?: IUIReactionCallback) {\r\n return (uie: UIElement, args: DependencyPropertyChangedEventArgs) => {\r\n var ov = args.OldValue;\r\n var nv = args.NewValue;\r\n var upd = uie.XamlNode.LayoutUpdater;\r\n upd.setAttachedValue(name, nv);\r\n callback && callback(upd, ov, nv, uie);\r\n };\r\n }\r\n}","/// \r\n\r\nmodule Fayde.Providers {\r\n export interface IInheritedStorage extends IPropertyStorage {\r\n InheritedValue: any;\r\n }\r\n\r\n export interface IIsPropertyInheritable {\r\n IsInheritable(propd: DependencyProperty): boolean;\r\n }\r\n\r\n export class InheritedStore extends PropertyStore {\r\n static Instance: InheritedStore;\r\n GetValue(storage: IInheritedStorage): any {\r\n var val: any;\r\n if ((val = storage.Local) !== undefined)\r\n return val;\r\n if ((val = storage.LocalStyleValue) !== undefined)\r\n return val;\r\n if ((val = storage.ImplicitStyleValue) !== undefined)\r\n return val;\r\n if ((val = storage.InheritedValue) !== undefined)\r\n return val;\r\n return storage.Property.DefaultValue;\r\n }\r\n GetValuePrecedence(storage: IInheritedStorage): PropertyPrecedence {\r\n var prec = super.GetValuePrecedence(storage);\r\n if (prec < PropertyPrecedence.Inherited)\r\n return prec;\r\n if (storage.InheritedValue !== undefined)\r\n return PropertyPrecedence.Inherited;\r\n return PropertyPrecedence.DefaultValue;\r\n }\r\n\r\n OnPropertyChanged(storage: IPropertyStorage, effectivePrecedence: PropertyPrecedence, oldValue: any, newValue: any): IDependencyPropertyChangedEventArgs {\r\n var args = super.OnPropertyChanged(storage, effectivePrecedence, oldValue, newValue);\r\n if (effectivePrecedence <= PropertyPrecedence.Inherited)\r\n this.Propagate(storage.OwnerNode, storage.Property, newValue);\r\n return args;\r\n }\r\n\r\n CreateStorage(dobj: DependencyObject, propd: DependencyProperty): IInheritedStorage {\r\n return {\r\n OwnerNode: dobj.XamlNode,\r\n Property: propd,\r\n Precedence: PropertyPrecedence.DefaultValue,\r\n Animations: undefined,\r\n Local: undefined,\r\n LocalStyleValue: undefined,\r\n ImplicitStyleValue: undefined,\r\n InheritedValue: undefined,\r\n PropListeners: undefined,\r\n };\r\n }\r\n\r\n static PropagateInheritedOnAdd(dobj: DependencyObject, subtreeNode: DONode) {\r\n var destination = subtreeNode.XObject;\r\n var store: InheritedStore = InheritedStore.Instance;\r\n var arr = (destination)._PropertyStorage;\r\n var storage: IPropertyStorage;\r\n\r\n var allProps = InheritableOwner.AllInheritedProperties;\r\n var len = allProps.length;\r\n var propd: DependencyProperty;\r\n var newValue: any;\r\n var sourceNode: XamlNode;\r\n for (var i = 0; i < len; i++) {\r\n propd = allProps[i];\r\n sourceNode = dobj.XamlNode;\r\n while (sourceNode && !((sourceNode.XObject).IsInheritable(propd))) {\r\n sourceNode = sourceNode.ParentNode;\r\n }\r\n if (!sourceNode)\r\n continue;\r\n newValue = (sourceNode.XObject).GetValue(propd);\r\n if (newValue === propd.DefaultValue)\r\n continue;\r\n\r\n storage = arr[propd._ID];\r\n if (!storage) storage = arr[propd._ID] = store.CreateStorage(destination, propd);\r\n if (!store.SetInheritedValue(subtreeNode, propd, newValue))\r\n store.Propagate(subtreeNode, propd, newValue);\r\n }\r\n }\r\n static ClearInheritedOnRemove(dobj: DependencyObject, subtreeNode: DONode) {\r\n var store: InheritedStore = InheritedStore.Instance;\r\n var allProps = InheritableOwner.AllInheritedProperties;\r\n var len = allProps.length;\r\n var propd: DependencyProperty;\r\n for (var i = 0; i < len; i++) {\r\n propd = allProps[i];\r\n if (!store.SetInheritedValue(subtreeNode, propd, undefined))\r\n store.Propagate(subtreeNode, propd, undefined);\r\n }\r\n }\r\n private Propagate(ownerNode: XamlNode, propd: DependencyProperty, newValue: any) {\r\n var enumerator = ownerNode.GetInheritedEnumerator();\r\n var uin: UINode;\r\n while (enumerator.moveNext()) {\r\n uin = enumerator.current;\r\n if (!this.SetInheritedValue(uin, propd, newValue))\r\n this.Propagate(uin, propd, newValue);\r\n }\r\n }\r\n private SetInheritedValue(don: DONode, propd: DependencyProperty, newValue: any): boolean {\r\n /// Returns false if object doesn't understand this inheritable property\r\n var dobj = don.XObject;\r\n if (!(dobj).IsInheritable(propd))\r\n return false;\r\n var storage = GetStorage(dobj, propd);\r\n if (storage.Precedence < PropertyPrecedence.Inherited) {\r\n //Overriden locally, don't propagate\r\n storage.InheritedValue = newValue;\r\n return true;\r\n }\r\n var oldValue = storage.InheritedValue;\r\n if (oldValue === undefined) oldValue = propd.DefaultValue;\r\n storage.InheritedValue = newValue;\r\n storage.Precedence = PropertyPrecedence.Inherited;\r\n this.OnPropertyChanged(storage, PropertyPrecedence.Inherited, oldValue, newValue);\r\n return true;\r\n }\r\n }\r\n InheritedStore.Instance = new InheritedStore();\r\n}","module Fayde {\r\n export enum Orientation {\r\n Horizontal = 0,\r\n Vertical = 1,\r\n }\r\n Fayde.CoreLibrary.addEnum(Orientation, \"Orientation\");\r\n\r\n export enum Visibility {\r\n Visible = 0,\r\n Collapsed = 1,\r\n }\r\n Fayde.CoreLibrary.addEnum(Visibility, \"Visibility\");\r\n nullstone.registerEnumConverter(Visibility, function (val: any): any {\r\n if (val === \"true\" || val === true || val === Visibility.Visible || val === \"Visible\")\r\n return Visibility.Visible;\r\n return Visibility.Collapsed;\r\n });\r\n\r\n export enum CursorType {\r\n Default,\r\n Hand,\r\n IBeam,\r\n Wait,\r\n SizeNESW,\r\n SizeNWSE,\r\n SizeNS,\r\n SizeWE\r\n //TODO: Add cursor types\r\n }\r\n Fayde.CoreLibrary.addEnum(CursorType, \"CursorType\");\r\n export var CursorTypeMappings = {\r\n Default: \"\",\r\n Hand: \"pointer\",\r\n IBeam: \"text\",\r\n Wait: \"wait\",\r\n SizeNESW: \"ne-resize\",\r\n SizeNWSE: \"nw-resize\",\r\n SizeNS: \"n-resize\",\r\n SizeWE: \"w-resize\"\r\n //TODO: Add cursor types\r\n }\r\n\r\n export enum HorizontalAlignment {\r\n Left = 0,\r\n Center = 1,\r\n Right = 2,\r\n Stretch = 3,\r\n }\r\n Fayde.CoreLibrary.addEnum(HorizontalAlignment, \"HorizontalAlignment\");\r\n\r\n export enum VerticalAlignment {\r\n Top = 0,\r\n Center = 1,\r\n Bottom = 2,\r\n Stretch = 3,\r\n }\r\n Fayde.CoreLibrary.addEnum(VerticalAlignment, \"VerticalAlignment\");\r\n\r\n export enum FlowDirection {\r\n LeftToRight = 0,\r\n RightToLeft = 1,\r\n }\r\n Fayde.CoreLibrary.addEnum(FlowDirection, \"FlowDirection\");\r\n\r\n export enum FontWeight {\r\n Thin = 100,\r\n ExtraLight = 200,\r\n Light = 300,\r\n Normal = 400,\r\n Medium = 500,\r\n SemiBold = 600,\r\n Bold = 700,\r\n ExtraBold = 800,\r\n Black = 900,\r\n ExtraBlack = 950,\r\n }\r\n Fayde.CoreLibrary.addEnum(FontWeight, \"FontWeight\");\r\n\r\n export enum TextAlignment {\r\n Left = 0,\r\n Center = 1,\r\n Right = 2,\r\n Justify = 3,\r\n }\r\n Fayde.CoreLibrary.addEnum(TextAlignment, \"TextAlignment\");\r\n\r\n //FLAGS\r\n export enum TextDecorations {\r\n None = 0,\r\n Underline = 1,\r\n }\r\n Fayde.CoreLibrary.addEnum(TextDecorations, \"TextDecorations\");\r\n\r\n export enum LineStackingStrategy {\r\n MaxHeight = 0,\r\n BlockLineHeight = 1,\r\n }\r\n Fayde.CoreLibrary.addEnum(LineStackingStrategy, \"LineStackingStrategy\");\r\n}","module Fayde {\r\n export var FontStyle = minerva.FontStyle;\r\n export var FontStretch = minerva.FontStretch;\r\n Fayde.CoreLibrary.addEnum(FontStretch, \"FontStretch\");\r\n export var Font = minerva.Font;\r\n Fayde.CoreLibrary.add(minerva.Font);\r\n}","/// \r\n/// \r\n/// \r\n\r\nmodule Fayde {\r\n export class InheritableOwner {\r\n static UseLayoutRoundingProperty = DependencyProperty.RegisterInheritable(\"UseLayoutRounding\", () => Boolean, InheritableOwner, true);\r\n static FlowDirectionProperty = DependencyProperty.RegisterInheritable(\"FlowDirection\", () => new Enum(minerva.FlowDirection), InheritableOwner, minerva.FlowDirection.LeftToRight);\r\n\r\n static ForegroundProperty = DependencyProperty.RegisterInheritable(\"Foreground\", () => Media.Brush, InheritableOwner);\r\n static FontFamilyProperty = DependencyProperty.RegisterInheritable(\"FontFamily\", () => String, InheritableOwner, Font.DEFAULT_FAMILY);\r\n static FontSizeProperty = DependencyProperty.RegisterInheritable(\"FontSize\", () => Number, InheritableOwner, Font.DEFAULT_SIZE);\r\n static FontStretchProperty = DependencyProperty.RegisterInheritable(\"FontStretch\", () => String, InheritableOwner, Font.DEFAULT_STRETCH);\r\n static FontStyleProperty = DependencyProperty.RegisterInheritable(\"FontStyle\", () => String, InheritableOwner, Font.DEFAULT_STYLE);\r\n static FontWeightProperty = DependencyProperty.RegisterInheritable(\"FontWeight\", () => new Enum(FontWeight), InheritableOwner, Font.DEFAULT_WEIGHT);\r\n static TextDecorationsProperty = DependencyProperty.RegisterInheritable(\"TextDecorations\", () => new Enum(TextDecorations), InheritableOwner, TextDecorations.None);\r\n static LanguageProperty = DependencyProperty.RegisterInheritable(\"Language\", () => String, InheritableOwner);\r\n\r\n static AllInheritedProperties: DependencyProperty[];\r\n }\r\n InheritableOwner.AllInheritedProperties = [\r\n InheritableOwner.ForegroundProperty,\r\n InheritableOwner.FontFamilyProperty,\r\n InheritableOwner.FontStretchProperty,\r\n InheritableOwner.FontStyleProperty,\r\n InheritableOwner.FontWeightProperty,\r\n InheritableOwner.FontSizeProperty,\r\n InheritableOwner.LanguageProperty,\r\n InheritableOwner.FlowDirectionProperty,\r\n InheritableOwner.UseLayoutRoundingProperty,\r\n InheritableOwner.TextDecorationsProperty\r\n ];\r\n Fayde.CoreLibrary.add(InheritableOwner);\r\n\r\n module reactions {\r\n UIReaction(InheritableOwner.UseLayoutRoundingProperty, minerva.core.reactTo.useLayoutRounding, false);\r\n UIReaction(InheritableOwner.FlowDirectionProperty, minerva.core.reactTo.flowDirection, false);\r\n }\r\n}","/// \r\n/// \r\n/// \r\n/// \r\n/// \r\n/// \r\n\r\nmodule Fayde {\r\n export class UINode extends DONode {\r\n XObject: UIElement;\r\n LayoutUpdater: minerva.core.Updater;\r\n IsMouseOver: boolean = false;\r\n\r\n constructor(xobj: UIElement) {\r\n super(xobj);\r\n var upd = this.LayoutUpdater = xobj.CreateLayoutUpdater();\r\n upd.setAttachedValue(\"$node\", this);\r\n upd.setAttachedValue(\"$id\", (this.XObject)._ID);\r\n }\r\n\r\n VisualParentNode: UINode;\r\n GetVisualRoot(): UINode {\r\n var curNode = this;\r\n var vpNode: UINode;\r\n while (vpNode = curNode.VisualParentNode) {\r\n curNode = vpNode;\r\n }\r\n return curNode;\r\n }\r\n\r\n IsLoaded: boolean = false;\r\n SetIsLoaded(value: boolean) { }\r\n\r\n OnVisualChildAttached(uie: UIElement) {\r\n var un = uie.XamlNode;\r\n Providers.InheritedStore.PropagateInheritedOnAdd(this.XObject, un);\r\n un.SetVisualParentNode(this);\r\n }\r\n OnVisualChildDetached(uie: UIElement) {\r\n var un = uie.XamlNode;\r\n un.SetVisualParentNode(null);\r\n Providers.InheritedStore.ClearInheritedOnRemove(this.XObject, un);\r\n }\r\n\r\n private SetVisualParentNode(visualParentNode: UINode) {\r\n if (this.VisualParentNode === visualParentNode)\r\n return;\r\n this.VisualParentNode = visualParentNode;\r\n this.LayoutUpdater.setVisualParent(visualParentNode ? visualParentNode.LayoutUpdater : null);\r\n }\r\n\r\n Focus(recurse?: boolean): boolean { return false; }\r\n\r\n _EmitFocusChange(type: string) {\r\n if (type === \"got\")\r\n this._EmitGotFocus();\r\n else if (type === \"lost\")\r\n this._EmitLostFocus();\r\n }\r\n private _EmitLostFocus() {\r\n var e = new Fayde.RoutedEventArgs();\r\n var x = this.XObject;\r\n x.OnLostFocus(e);\r\n x.LostFocus.raise(x, e);\r\n }\r\n private _EmitGotFocus() {\r\n var e = new Fayde.RoutedEventArgs();\r\n var x = this.XObject;\r\n x.OnGotFocus(e);\r\n x.GotFocus.raise(x, e);\r\n }\r\n _EmitKeyDown(args: Fayde.Input.KeyEventArgs) {\r\n var x = this.XObject;\r\n x.OnKeyDown(args);\r\n x.KeyDown.raise(x, args);\r\n }\r\n _EmitKeyUp(args: Fayde.Input.KeyEventArgs) {\r\n var x = this.XObject;\r\n x.OnKeyUp(args);\r\n x.KeyUp.raise(x, args);\r\n }\r\n _EmitLostMouseCapture(pos: Point) {\r\n var x = this.XObject;\r\n var e = new Input.MouseEventArgs(pos);\r\n x.OnLostMouseCapture(e);\r\n x.LostMouseCapture.raise(x, e);\r\n }\r\n _EmitMouseEvent(type: Input.MouseInputType, isLeftButton: boolean, isRightButton: boolean, args: Input.MouseEventArgs): boolean {\r\n var x = this.XObject;\r\n switch (type) {\r\n case Input.MouseInputType.MouseUp:\r\n if (isLeftButton) {\r\n x.OnMouseLeftButtonUp(args);\r\n x.MouseLeftButtonUp.raise(x, args);\r\n } else if (isRightButton) {\r\n x.OnMouseRightButtonUp(args);\r\n x.MouseRightButtonUp.raise(x, args);\r\n }\r\n break;\r\n case Input.MouseInputType.MouseDown:\r\n if (isLeftButton) {\r\n x.OnMouseLeftButtonDown(args);\r\n x.MouseLeftButtonDown.raise(x, args);\r\n } else if (isRightButton) {\r\n x.OnMouseRightButtonDown(args);\r\n x.MouseRightButtonDown.raise(x, args);\r\n }\r\n break;\r\n case Input.MouseInputType.MouseLeave:\r\n this.IsMouseOver = false;\r\n x.OnMouseLeave(args);\r\n x.MouseLeave.raise(x, args);\r\n break;\r\n case Input.MouseInputType.MouseEnter:\r\n this.IsMouseOver = true;\r\n x.OnMouseEnter(args);\r\n x.MouseEnter.raise(x, args);\r\n break;\r\n case Input.MouseInputType.MouseMove:\r\n x.OnMouseMove(args);\r\n x.MouseMove.raise(x, args);\r\n break;\r\n case Input.MouseInputType.MouseWheel:\r\n x.OnMouseWheel(args);\r\n x.MouseWheel.raise(x, args);\r\n break;\r\n default:\r\n return false;\r\n }\r\n return args.Handled;\r\n }\r\n _EmitTouchEvent(type: Input.TouchInputType, args: Input.TouchEventArgs) {\r\n var x = this.XObject;\r\n switch (type) {\r\n case Input.TouchInputType.TouchDown:\r\n x.OnTouchDown(args);\r\n x.TouchDown.raise(x, args);\r\n break;\r\n case Input.TouchInputType.TouchUp:\r\n x.OnTouchUp(args);\r\n x.TouchUp.raise(x, args);\r\n break;\r\n case Input.TouchInputType.TouchMove:\r\n x.OnTouchMove(args);\r\n x.TouchMove.raise(x, args);\r\n break;\r\n case Input.TouchInputType.TouchEnter:\r\n x.OnTouchEnter(args);\r\n x.TouchEnter.raise(x, args);\r\n break;\r\n case Input.TouchInputType.TouchLeave:\r\n x.OnTouchLeave(args);\r\n x.TouchLeave.raise(x, args);\r\n break;\r\n default:\r\n return false;\r\n }\r\n return args.Handled;\r\n }\r\n _EmitGotTouchCapture(e: Input.TouchEventArgs) {\r\n var x = this.XObject;\r\n x.OnGotTouchCapture(e);\r\n x.GotTouchCapture.raise(this, e);\r\n }\r\n _EmitLostTouchCapture(e: Input.TouchEventArgs) {\r\n var x = this.XObject;\r\n x.OnLostTouchCapture(e);\r\n x.LostTouchCapture.raise(this, e);\r\n }\r\n\r\n CanCaptureMouse(): boolean { return true; }\r\n CaptureMouse(): boolean {\r\n if (!this.IsAttached)\r\n return false;\r\n Surface.SetMouseCapture(this);\r\n return true;\r\n }\r\n ReleaseMouseCapture() {\r\n if (!this.IsAttached)\r\n return;\r\n Surface.ReleaseMouseCapture(this);\r\n }\r\n\r\n IsAncestorOf(uin: UINode) {\r\n var vpNode = uin;\r\n while (vpNode && vpNode !== this)\r\n vpNode = vpNode.VisualParentNode;\r\n return vpNode === this;\r\n }\r\n\r\n TransformToVisual (uin?: UINode): Media.GeneralTransform {\r\n var raw = minerva.core.Updater.transformToVisual(this.LayoutUpdater, uin ? uin.LayoutUpdater : null);\r\n if (!raw)\r\n throw new ArgumentException(\"UIElement not attached.\");\r\n var mt = new Media.MatrixTransform();\r\n mt.SetCurrentValue(Media.MatrixTransform.MatrixProperty, new Media.Matrix(raw));\r\n return mt;\r\n }\r\n }\r\n\r\n export class UIElement extends DependencyObject implements Providers.IIsPropertyInheritable {\r\n XamlNode: UINode;\r\n CreateNode(): UINode { return new UINode(this); }\r\n CreateLayoutUpdater(): minerva.core.Updater { return new minerva.core.Updater(); }\r\n\r\n get IsItemsControl(): boolean { return false; }\r\n\r\n get VisualParent() {\r\n var vpNode = this.XamlNode.VisualParentNode;\r\n if (vpNode) return vpNode.XObject;\r\n return undefined;\r\n }\r\n\r\n static AllowDropProperty: DependencyProperty;\r\n static CacheModeProperty: DependencyProperty;\r\n static ClipProperty = DependencyProperty.RegisterCore(\"Clip\", () => Media.Geometry, UIElement);\r\n static EffectProperty = DependencyProperty.Register(\"Effect\", () => Media.Effects.Effect, UIElement);\r\n static IsHitTestVisibleProperty = DependencyProperty.RegisterCore(\"IsHitTestVisible\", () => Boolean, UIElement, true);\r\n static OpacityMaskProperty = DependencyProperty.RegisterCore(\"OpacityMask\", () => Media.Brush, UIElement);\r\n static OpacityProperty = DependencyProperty.RegisterCore(\"Opacity\", () => Number, UIElement, 1.0);\r\n static RenderTransformProperty = DependencyProperty.RegisterCore(\"RenderTransform\", () => Media.Transform, UIElement);\r\n static RenderTransformOriginProperty = DependencyProperty.Register(\"RenderTransformOrigin\", () => Point, UIElement);\r\n static TagProperty = DependencyProperty.Register(\"Tag\", () => Object, UIElement);\r\n static TriggersProperty: DependencyProperty = DependencyProperty.RegisterCore(\"Triggers\", () => TriggerCollection, UIElement, undefined, (d, args) => (d)._TriggersChanged(args));\r\n static UseLayoutRoundingProperty = InheritableOwner.UseLayoutRoundingProperty.ExtendTo(UIElement);\r\n static VisibilityProperty = DependencyProperty.RegisterCore(\"Visibility\", () => new Enum(Visibility), UIElement, Visibility.Visible);\r\n\r\n IsInheritable(propd: DependencyProperty): boolean {\r\n return propd === UIElement.UseLayoutRoundingProperty;\r\n }\r\n\r\n get IsMouseOver() { return this.XamlNode.IsMouseOver; }\r\n get DesiredSize(): minerva.Size {\r\n var ds = this.XamlNode.LayoutUpdater.assets.desiredSize;\r\n return new minerva.Size(ds.width, ds.height);\r\n }\r\n get RenderSize(): minerva.Size {\r\n var ds = this.XamlNode.LayoutUpdater.assets.renderSize;\r\n return new minerva.Size(ds.width, ds.height);\r\n }\r\n\r\n //AllowDrop: boolean;\r\n //CacheMode;\r\n Clip: Media.Geometry;\r\n Effect: Media.Effects.Effect;\r\n IsHitTestVisible: boolean;\r\n Cursor: CursorType;\r\n OpacityMask: Media.Brush;\r\n Opacity: number;\r\n //Projection: Media.Projection;\r\n RenderTransform: Media.Transform;\r\n RenderTransformOrigin: Point;\r\n Tag: any;\r\n Triggers: TriggerCollection;\r\n UseLayoutRounding: boolean;\r\n Visibility: Visibility;\r\n\r\n Focus(): boolean { return this.XamlNode.Focus(); }\r\n CaptureMouse():boolean { return this.XamlNode.CaptureMouse(); }\r\n ReleaseMouseCapture() { this.XamlNode.ReleaseMouseCapture(); }\r\n\r\n IsAncestorOf(uie: UIElement): boolean {\r\n if (!uie) return false;\r\n return this.XamlNode.IsAncestorOf(uie.XamlNode);\r\n }\r\n TransformToVisual(uie: UIElement): Media.GeneralTransform {\r\n var uin = (uie) ? uie.XamlNode : null;\r\n return this.XamlNode.TransformToVisual(uin);\r\n }\r\n\r\n InvalidateMeasure() { this.XamlNode.LayoutUpdater.invalidateMeasure(); }\r\n Measure(availableSize: minerva.Size) {\r\n this.XamlNode.LayoutUpdater.measure(availableSize);\r\n }\r\n InvalidateArrange() { this.XamlNode.LayoutUpdater.invalidateArrange(); }\r\n Arrange(finalRect: minerva.Rect) {\r\n this.XamlNode.LayoutUpdater.arrange(finalRect);\r\n }\r\n\r\n LostFocus = new RoutedEvent();\r\n GotFocus = new RoutedEvent();\r\n LostMouseCapture = new RoutedEvent();\r\n KeyDown = new RoutedEvent();\r\n KeyUp = new RoutedEvent();\r\n MouseLeftButtonUp = new RoutedEvent();\r\n MouseRightButtonUp = new RoutedEvent();\r\n MouseLeftButtonDown = new RoutedEvent();\r\n MouseRightButtonDown = new RoutedEvent();\r\n MouseLeave = new RoutedEvent();\r\n MouseEnter = new RoutedEvent();\r\n MouseMove = new RoutedEvent();\r\n MouseWheel = new RoutedEvent();\r\n TouchDown = new RoutedEvent();\r\n TouchUp = new RoutedEvent();\r\n TouchEnter = new RoutedEvent();\r\n TouchLeave = new RoutedEvent();\r\n TouchMove = new RoutedEvent();\r\n GotTouchCapture = new RoutedEvent();\r\n LostTouchCapture = new RoutedEvent();\r\n\r\n OnGotFocus(e: RoutedEventArgs) { }\r\n OnLostFocus(e: RoutedEventArgs) { }\r\n OnLostMouseCapture(e: Input.MouseEventArgs) { }\r\n OnKeyDown(e: Input.KeyEventArgs) { }\r\n OnKeyUp(e: Input.KeyEventArgs) { }\r\n OnMouseEnter(e: Input.MouseEventArgs) { }\r\n OnMouseLeave(e: Input.MouseEventArgs) { }\r\n OnMouseLeftButtonDown(e: Input.MouseButtonEventArgs) { }\r\n OnMouseLeftButtonUp(e: Input.MouseButtonEventArgs) { }\r\n OnMouseMove(e: Input.MouseEventArgs) { }\r\n OnMouseRightButtonDown(e: Input.MouseButtonEventArgs) { }\r\n OnMouseRightButtonUp(e: Input.MouseButtonEventArgs) { }\r\n OnMouseWheel(e: Input.MouseWheelEventArgs) { }\r\n OnTouchDown(e: Input.TouchEventArgs) { }\r\n OnTouchUp(e: Input.TouchEventArgs) { }\r\n OnTouchEnter(e: Input.TouchEventArgs) { }\r\n OnTouchLeave(e: Input.TouchEventArgs) { }\r\n OnTouchMove(e: Input.TouchEventArgs) { }\r\n OnGotTouchCapture(e: Input.TouchEventArgs) { }\r\n OnLostTouchCapture(e: Input.TouchEventArgs) { }\r\n\r\n private _TriggersChanged(args: IDependencyPropertyChangedEventArgs) {\r\n var oldTriggers = args.OldValue;\r\n var newTriggers = args.NewValue;\r\n if (oldTriggers instanceof TriggerCollection)\r\n oldTriggers.DetachTarget(this);\r\n if (newTriggers instanceof TriggerCollection)\r\n newTriggers.AttachTarget(this);\r\n }\r\n }\r\n Fayde.CoreLibrary.add(UIElement);\r\n\r\n module reactions {\r\n UIReaction(UIElement.ClipProperty, minerva.core.reactTo.clip);\r\n UIReaction(UIElement.EffectProperty, minerva.core.reactTo.effect);\r\n UIReaction(UIElement.IsHitTestVisibleProperty, minerva.core.reactTo.isHitTestVisible, false);\r\n UIReaction(UIElement.OpacityProperty, minerva.core.reactTo.opacity, false);\r\n UIReaction(UIElement.RenderTransformProperty, minerva.core.reactTo.renderTransform);\r\n UIReaction(UIElement.RenderTransformOriginProperty, minerva.core.reactTo.renderTransformOrigin, false, minerva.Point.copyTo);\r\n UIReaction(UIElement.VisibilityProperty, (upd, ov, nv, uie?) => {\r\n minerva.core.reactTo.visibility(upd, ov, nv);\r\n Surface.RemoveFocusFrom(uie);\r\n }, false);\r\n }\r\n}","/// \r\n\r\nmodule Fayde.Providers {\r\n export class ResourcesStore extends PropertyStore {\r\n static Instance: ResourcesStore;\r\n\r\n GetValue (storage: IPropertyStorage): ResourceDictionary {\r\n if (storage.Local !== undefined)\r\n return storage.Local;\r\n var rd = storage.Local = new ResourceDictionary();\r\n rd.AttachTo(storage.OwnerNode.XObject);\r\n return rd;\r\n }\r\n\r\n GetValuePrecedence (storage: IPropertyStorage): PropertyPrecedence {\r\n return PropertyPrecedence.LocalValue;\r\n }\r\n\r\n SetLocalValue (storage: Providers.IPropertyStorage, newValue: number) {\r\n console.warn(\"Cannot set Resources.\");\r\n }\r\n\r\n SetLocalStyleValue (storage: IPropertyStorage, newValue: any) {\r\n }\r\n\r\n SetImplicitStyle (storage: IPropertyStorage, newValue: any) {\r\n }\r\n\r\n ClearValue (storage: Providers.IPropertyStorage, notifyListeners?: boolean) {\r\n }\r\n }\r\n ResourcesStore.Instance = new ResourcesStore();\r\n}","/// \r\n\r\nmodule Fayde.Providers {\r\n export class ActualSizeStore extends PropertyStore {\r\n static Instance: ActualSizeStore;\r\n\r\n GetValue(storage: IPropertyStorage): number {\r\n if (storage.Local !== undefined)\r\n return storage.Local;\r\n return 0.0;\r\n }\r\n GetValuePrecedence(storage: IPropertyStorage): PropertyPrecedence { return PropertyPrecedence.LocalValue; }\r\n\r\n SetLocalValue(storage: Providers.IPropertyStorage, newValue: number) {\r\n var oldValue = storage.Local;\r\n storage.Local = newValue;\r\n if (oldValue === newValue)\r\n return;\r\n this.OnPropertyChanged(storage, PropertyPrecedence.LocalValue, oldValue, newValue);\r\n }\r\n SetLocalStyleValue(storage: IPropertyStorage, newValue: any) { }\r\n SetImplicitStyle(storage: IPropertyStorage, newValue: any) { }\r\n\r\n ClearValue(storage: Providers.IPropertyStorage, notifyListeners?: boolean) { }\r\n }\r\n ActualSizeStore.Instance = new ActualSizeStore();\r\n}","/// \r\n/// \r\n/// \r\n\r\nmodule Fayde {\r\n export class FENode extends UINode implements Providers.IStyleHolder, Providers.IImplicitStyleHolder {\r\n _LocalStyle: Style;\r\n _ImplicitStyles: Style[];\r\n _StyleMask: number;\r\n\r\n XObject: FrameworkElement;\r\n constructor(xobj: FrameworkElement) {\r\n super(xobj);\r\n var lu = this.LayoutUpdater;\r\n lu.tree.setTemplateApplier(() => {\r\n var error = new BError();\r\n var result = this.ApplyTemplateWithError(error);\r\n if (error.Message)\r\n error.ThrowException();\r\n return result;\r\n });\r\n lu.setSizeUpdater({\r\n setActualWidth (value: number) {\r\n xobj.SetCurrentValue(FrameworkElement.ActualWidthProperty, value);\r\n },\r\n setActualHeight (value: number) {\r\n xobj.SetCurrentValue(FrameworkElement.ActualHeightProperty, value);\r\n },\r\n onSizeChanged (oldSize: minerva.Size, newSize: minerva.Size) {\r\n xobj.SizeChanged.raise(xobj, new SizeChangedEventArgs(oldSize, newSize));\r\n }\r\n });\r\n }\r\n SubtreeNode: XamlNode;\r\n SetSubtreeNode(subtreeNode: XamlNode, error: BError): boolean {\r\n if (this.SubtreeNode) {\r\n this.SubtreeNode.Detach();\r\n this.SubtreeNode = null;\r\n }\r\n if (subtreeNode && !subtreeNode.AttachTo(this, error))\r\n return false;\r\n this.SubtreeNode = subtreeNode;\r\n return true;\r\n }\r\n\r\n GetInheritedEnumerator(): nullstone.IEnumerator {\r\n return this.GetVisualTreeEnumerator();\r\n }\r\n\r\n GetVisualTreeEnumerator(): nullstone.IEnumerator {\r\n var walker = this.LayoutUpdater.tree.walk();\r\n return {\r\n current: undefined,\r\n moveNext: function() {\r\n if (!walker.step())\r\n return false;\r\n this.current = walker.current.getAttachedValue(\"$node\");\r\n return true;\r\n }\r\n };\r\n }\r\n\r\n SetIsLoaded(value: boolean) {\r\n if (this.IsLoaded === value)\r\n return;\r\n this.IsLoaded = value;\r\n this.OnIsLoadedChanged(value);\r\n }\r\n OnIsLoadedChanged(newIsLoaded: boolean) {\r\n var xobj = this.XObject;\r\n var res = xobj.Resources;\r\n if (!newIsLoaded) {\r\n Providers.ImplicitStyleBroker.Clear(xobj, Providers.StyleMask.VisualTree);\r\n xobj.Unloaded.raise(xobj, new RoutedEventArgs());\r\n //TODO: Should we set is loaded on resources that are FrameworkElements?\r\n } else {\r\n Providers.ImplicitStyleBroker.Set(xobj, Providers.StyleMask.All);\r\n }\r\n for (var en = this.GetVisualTreeEnumerator(); en.moveNext();) {\r\n en.current.SetIsLoaded(newIsLoaded);\r\n }\r\n if (newIsLoaded) {\r\n //TODO: Should we set is loaded on resources that are FrameworkElements?\r\n xobj.Loaded.raise(xobj, new RoutedEventArgs());\r\n this.InvokeLoaded();\r\n //LOOKS USELESS: \r\n //Providers.DataContextStore.EmitDataContextChanged(xobj);\r\n }\r\n }\r\n InvokeLoaded() { }\r\n\r\n AttachVisualChild(uie: UIElement, error: BError): boolean {\r\n this.OnVisualChildAttached(uie);\r\n if (!this.SetSubtreeNode(uie.XamlNode, error))\r\n return false;\r\n uie.XamlNode.SetIsLoaded(this.IsLoaded);\r\n return true;\r\n }\r\n DetachVisualChild(uie: UIElement, error: BError) {\r\n if (!this.SetSubtreeNode(null, error))\r\n return false;\r\n this.OnVisualChildDetached(uie);\r\n uie.XamlNode.SetIsLoaded(false);\r\n return true;\r\n }\r\n\r\n ApplyTemplateWithError(error: BError): boolean {\r\n if (this.SubtreeNode)\r\n return false;\r\n var result = this.DoApplyTemplateWithError(error);\r\n var xobj = this.XObject;\r\n if (result)\r\n xobj.OnApplyTemplate();\r\n xobj.TemplateApplied.raise(xobj, null);\r\n return result;\r\n }\r\n DoApplyTemplateWithError(error: BError): boolean { return false; }\r\n FinishApplyTemplateWithError(uie: UIElement, error: BError): boolean {\r\n if (!uie || error.Message)\r\n return false;\r\n this.AttachVisualChild(uie, error);\r\n return error.Message == null;\r\n }\r\n\r\n UpdateLayout() {\r\n console.warn(\"FENode.UpdateLayout not implemented\");\r\n }\r\n\r\n static DetachFromVisualParent (xobj: UIElement) {\r\n var vpNode = xobj.XamlNode.VisualParentNode;\r\n if (vpNode instanceof FENode) {\r\n var err = new BError();\r\n vpNode.DetachVisualChild(xobj, err);\r\n if (err.Message)\r\n err.ThrowException();\r\n }\r\n }\r\n }\r\n\r\n export class FrameworkElement extends UIElement implements IResourcable, Providers.IIsPropertyInheritable {\r\n XamlNode: FENode;\r\n CreateNode(): FENode { return new FENode(this); }\r\n\r\n static ActualHeightProperty = DependencyProperty.RegisterReadOnly(\"ActualHeight\", () => Number, FrameworkElement);\r\n static ActualWidthProperty = DependencyProperty.RegisterReadOnly(\"ActualWidth\", () => Number, FrameworkElement);\r\n static CursorProperty = DependencyProperty.Register(\"Cursor\", () => new Enum(CursorType), FrameworkElement, CursorType.Default);\r\n static FlowDirectionProperty = InheritableOwner.FlowDirectionProperty.ExtendTo(FrameworkElement);\r\n static HeightProperty = DependencyProperty.Register(\"Height\", () => Length, FrameworkElement, NaN);\r\n static HorizontalAlignmentProperty = DependencyProperty.Register(\"HorizontalAlignment\", () => new Enum(HorizontalAlignment), FrameworkElement, HorizontalAlignment.Stretch);\r\n static LanguageProperty = InheritableOwner.LanguageProperty.ExtendTo(FrameworkElement);\r\n static MarginProperty = DependencyProperty.RegisterCore(\"Margin\", () => Thickness, FrameworkElement);\r\n static MaxHeightProperty = DependencyProperty.Register(\"MaxHeight\", () => Number, FrameworkElement, Number.POSITIVE_INFINITY);\r\n static MaxWidthProperty = DependencyProperty.Register(\"MaxWidth\", () => Number, FrameworkElement, Number.POSITIVE_INFINITY);\r\n static MinHeightProperty = DependencyProperty.Register(\"MinHeight\", () => Number, FrameworkElement, 0.0);\r\n static MinWidthProperty = DependencyProperty.Register(\"MinWidth\", () => Number, FrameworkElement, 0.0);\r\n static StyleProperty = DependencyProperty.Register(\"Style\", () => Style, FrameworkElement, undefined, (dobj, args) => Providers.LocalStyleBroker.Set(dobj, args.NewValue));\r\n static VerticalAlignmentProperty = DependencyProperty.Register(\"VerticalAlignment\", () => new Enum(VerticalAlignment), FrameworkElement, VerticalAlignment.Stretch);\r\n static WidthProperty = DependencyProperty.Register(\"Width\", () => Length, FrameworkElement, NaN);\r\n static ResourcesProperty = DependencyProperty.Register(\"Resources\", () => ResourceDictionary, FrameworkElement);\r\n static DefaultStyleKeyProperty = DependencyProperty.Register(\"DefaultStyleKey\", () => Function, FrameworkElement);\r\n\r\n IsInheritable(propd: DependencyProperty): boolean {\r\n if (propd === FrameworkElement.FlowDirectionProperty)\r\n return true;\r\n if (propd === FrameworkElement.LanguageProperty)\r\n return true;\r\n return super.IsInheritable(propd);\r\n }\r\n\r\n ActualHeight: number;\r\n ActualWidth: number;\r\n FlowDirection: FlowDirection;\r\n Height: number;\r\n HorizontalAlignment: HorizontalAlignment;\r\n Language: string;\r\n Margin: Thickness;\r\n MaxWidth: number;\r\n MaxHeight: number;\r\n MinWidth: number;\r\n MinHeight: number;\r\n Style: Style;\r\n VerticalAlignment: VerticalAlignment;\r\n Width: number;\r\n Resources: ResourceDictionary;\r\n DefaultStyleKey: Function;\r\n\r\n SizeChanged = new RoutedEvent();\r\n Loaded = new RoutedEvent();\r\n Unloaded = new RoutedEvent();\r\n LayoutUpdated = new nullstone.Event();\r\n\r\n OnApplyTemplate() { }\r\n TemplateApplied = new nullstone.Event();\r\n\r\n OnBindingValidationError (args: Validation.ValidationErrorEventArgs) {\r\n this.BindingValidationError.raise(this, args);\r\n }\r\n BindingValidationError = new nullstone.Event();\r\n\r\n UpdateLayout() { this.XamlNode.UpdateLayout(); }\r\n }\r\n Fayde.CoreLibrary.add(FrameworkElement);\r\n\r\n FrameworkElement.ActualWidthProperty.Store = Providers.ActualSizeStore.Instance;\r\n FrameworkElement.ActualHeightProperty.Store = Providers.ActualSizeStore.Instance;\r\n FrameworkElement.ResourcesProperty.Store = Providers.ResourcesStore.Instance;\r\n\r\n module reactions {\r\n UIReaction(FrameworkElement.WidthProperty, minerva.core.reactTo.width, false);\r\n UIReaction(FrameworkElement.HeightProperty, minerva.core.reactTo.height, false);\r\n UIReaction(FrameworkElement.MaxWidthProperty, minerva.core.reactTo.maxWidth, false);\r\n UIReaction(FrameworkElement.MaxHeightProperty, minerva.core.reactTo.maxHeight, false);\r\n UIReaction(FrameworkElement.MinWidthProperty, minerva.core.reactTo.minWidth, false);\r\n UIReaction(FrameworkElement.MinHeightProperty, minerva.core.reactTo.minHeight, false);\r\n UIReaction(FrameworkElement.MarginProperty, minerva.core.reactTo.margin, false, minerva.Thickness.copyTo);\r\n UIReaction(FrameworkElement.HorizontalAlignmentProperty, minerva.core.reactTo.horizontalAlignment, false);\r\n UIReaction(FrameworkElement.VerticalAlignmentProperty, minerva.core.reactTo.verticalAlignment, false);\r\n }\r\n}","module Fayde.Markup {\r\n export interface IContentAnnotation {\r\n (type: Function, prop: DependencyProperty);\r\n Get(type: Function): DependencyProperty;\r\n }\r\n export var Content = (function () {\r\n function ca(type: Function, prop: DependencyProperty) {\r\n nullstone.Annotation(type, \"Content\", prop, true);\r\n }\r\n (ca).Get = function (type: Function): DependencyProperty {\r\n var cur = type;\r\n while (cur) {\r\n var anns = nullstone.GetAnnotations(cur, \"Content\");\r\n if (anns) {\r\n var cp = anns[0];\r\n if (cp)\r\n return cp;\r\n }\r\n cur = nullstone.getTypeParent(cur);\r\n }\r\n return undefined;\r\n };\r\n return ca;\r\n })();\r\n\r\n export interface ITextContentAnnotation {\r\n (type: Function, prop: DependencyProperty);\r\n Get(type: Function): DependencyProperty;\r\n }\r\n export var TextContent = (function () {\r\n function tca(type: Function, prop: DependencyProperty) {\r\n nullstone.Annotation(type, \"TextContent\", prop, true);\r\n }\r\n (tca).Get = function (type: Function): DependencyProperty {\r\n var cur = type;\r\n while (cur) {\r\n var anns = nullstone.GetAnnotations(cur, \"TextContent\");\r\n if (anns) {\r\n var cp = anns[0];\r\n if (cp)\r\n return cp;\r\n }\r\n cur = nullstone.getTypeParent(cur);\r\n }\r\n return undefined;\r\n };\r\n return tca;\r\n })();\r\n}","/// \r\n/// \r\n\r\nmodule Fayde.Controls {\r\n export class Border extends FrameworkElement {\r\n CreateLayoutUpdater (): minerva.controls.border.BorderUpdater {\r\n return new minerva.controls.border.BorderUpdater();\r\n }\r\n\r\n static BackgroundProperty = DependencyProperty.RegisterCore(\"Background\", () => Media.Brush, Border);\r\n static BorderBrushProperty = DependencyProperty.RegisterCore(\"BorderBrush\", () => Media.Brush, Border);\r\n static BorderThicknessProperty = DependencyProperty.Register(\"BorderThickness\", () => Thickness, Border); //TODO: Validator\r\n static ChildProperty = DependencyProperty.Register(\"Child\", () => UIElement, Border);\r\n static CornerRadiusProperty = DependencyProperty.Register(\"CornerRadius\", () => CornerRadius, Border); //TODO: Validator\r\n static PaddingProperty = DependencyProperty.Register(\"Padding\", () => Thickness, Border); //TODO: Validator\r\n Background: Media.Brush;\r\n BorderBrush: Media.Brush;\r\n BorderThickness: minerva.Thickness;\r\n Child: UIElement;\r\n CornerRadius: CornerRadius;\r\n Padding: Thickness;\r\n\r\n constructor () {\r\n super();\r\n this.DefaultStyleKey = Border;\r\n }\r\n }\r\n Fayde.CoreLibrary.add(Border);\r\n Markup.Content(Border, Border.ChildProperty);\r\n\r\n UIReaction(Border.BackgroundProperty, (upd, ov, nv) => {\r\n upd.invalidate();\r\n });\r\n UIReaction(Border.BorderBrushProperty, (upd, ov, nv) => {\r\n upd.invalidate();\r\n });\r\n UIReaction(Border.BorderThicknessProperty, (upd, ov, nv) => upd.invalidateMeasure(), false, minerva.Thickness.copyTo);\r\n UIReaction(Border.PaddingProperty, (upd, ov, nv) => upd.invalidateMeasure(), false, minerva.Thickness.copyTo);\r\n UIReaction(Border.CornerRadiusProperty, (upd, ov, nv) => upd.invalidate(), false, minerva.CornerRadius.copyTo);\r\n UIReaction(Border.ChildProperty, (upd, ov, nv, border?: Border) => {\r\n var node = border.XamlNode;\r\n var error = new BError();\r\n if (ov instanceof UIElement)\r\n node.DetachVisualChild(ov, error);\r\n if (nv instanceof UIElement)\r\n node.AttachVisualChild(nv, error);\r\n if (error.Message)\r\n error.ThrowException();\r\n upd.updateBounds();\r\n upd.invalidateMeasure();\r\n }, false, false);\r\n}","/// \r\n\r\nmodule Fayde.Providers {\r\n export interface IIsEnabledStorage extends IPropertyStorage {\r\n InheritedValue: boolean;\r\n }\r\n\r\n export class IsEnabledStore extends PropertyStore {\r\n static Instance: IsEnabledStore;\r\n GetValue(storage: IIsEnabledStorage): boolean {\r\n if (storage.InheritedValue === false)\r\n return false;\r\n return super.GetValue(storage);\r\n }\r\n GetValuePrecedence(storage: IIsEnabledStorage): PropertyPrecedence {\r\n if (storage.InheritedValue === false)\r\n return PropertyPrecedence.IsEnabled;\r\n return super.GetValuePrecedence(storage);\r\n }\r\n\r\n SetLocalValue(storage: IIsEnabledStorage, newValue: boolean) {\r\n var oldValue = storage.Local;\r\n storage.Local = newValue;\r\n if (oldValue === newValue || storage.InheritedValue === false)\r\n return;\r\n this.OnPropertyChanged(storage, PropertyPrecedence.LocalValue, oldValue, newValue);\r\n }\r\n\r\n OnPropertyChanged(storage: IPropertyStorage, effectivePrecedence: PropertyPrecedence, oldValue: any, newValue: any): IDependencyPropertyChangedEventArgs {\r\n var args = super.OnPropertyChanged(storage, effectivePrecedence, oldValue, newValue);\r\n storage.OwnerNode.OnIsEnabledChanged(oldValue, newValue);\r\n return args;\r\n }\r\n\r\n CreateStorage(dobj: DependencyObject, propd: DependencyProperty): IIsEnabledStorage {\r\n return {\r\n OwnerNode: dobj.XamlNode,\r\n Property: propd,\r\n Precedence: PropertyPrecedence.DefaultValue,\r\n InheritedValue: true,\r\n Animations: undefined,\r\n Local: undefined,\r\n LocalStyleValue: undefined,\r\n ImplicitStyleValue: undefined,\r\n PropListeners: undefined,\r\n };\r\n }\r\n \r\n EmitInheritedChanged(storage: IIsEnabledStorage, newInherited: boolean) {\r\n var oldInherited = storage.InheritedValue;\r\n if (newInherited !== false) {\r\n storage.Precedence = super.GetValuePrecedence(storage);\r\n storage.InheritedValue = true;\r\n } else {\r\n storage.InheritedValue = false;\r\n }\r\n if (oldInherited === newInherited)\r\n return;\r\n this.OnPropertyChanged(storage, PropertyPrecedence.IsEnabled, oldInherited, newInherited);\r\n }\r\n static EmitInheritedChanged(cn: Controls.ControlNode, value: boolean) {\r\n var propd = Controls.Control.IsEnabledProperty;\r\n var storage = Providers.GetStorage(cn.XObject, propd);\r\n (propd.Store).EmitInheritedChanged(storage, value);\r\n }\r\n }\r\n IsEnabledStore.Instance = new IsEnabledStore();\r\n}","module Fayde.Input {\r\n // http://msdn.microsoft.com/en-us/library/system.windows.input.keyboardnavigationmode.aspx\r\n export enum KeyboardNavigationMode {\r\n Continue = 0,\r\n Once = 1,\r\n Cycle = 2,\r\n None = 3,\r\n Contained = 4,\r\n Local = 5,\r\n }\r\n Fayde.CoreLibrary.addEnum(KeyboardNavigationMode, \"KeyboardNavigationMode\");\r\n\r\n export enum ModifierKeys {\r\n None = 0,\r\n Alt = 1,\r\n Control = 2,\r\n Shift = 4,\r\n Windows = 8,\r\n Apple = 16,\r\n }\r\n\r\n export interface IModifiersOn {\r\n Shift: boolean;\r\n Ctrl: boolean;\r\n Alt: boolean;\r\n }\r\n\r\n export class Keyboard {\r\n static Modifiers: ModifierKeys = ModifierKeys.None;\r\n\r\n static RefreshModifiers(e: Fayde.Input.IModifiersOn) {\r\n if (e.Shift)\r\n Keyboard.Modifiers |= ModifierKeys.Shift;\r\n else\r\n Keyboard.Modifiers &= ~ModifierKeys.Shift;\r\n if (e.Ctrl)\r\n Keyboard.Modifiers |= ModifierKeys.Control;\r\n else\r\n Keyboard.Modifiers &= ~ModifierKeys.Control;\r\n if (e.Alt)\r\n Keyboard.Modifiers |= ModifierKeys.Alt;\r\n else\r\n Keyboard.Modifiers &= ~ModifierKeys.Alt;\r\n }\r\n\r\n static HasControl() {\r\n return (Keyboard.Modifiers & ModifierKeys.Control) === ModifierKeys.Control;\r\n }\r\n static HasAlt() {\r\n return (Keyboard.Modifiers & ModifierKeys.Alt) === ModifierKeys.Alt;\r\n }\r\n static HasShift() {\r\n return (Keyboard.Modifiers & ModifierKeys.Shift) === ModifierKeys.Shift;\r\n }\r\n }\r\n Fayde.CoreLibrary.add(Keyboard);\r\n}","/// \r\n/// \r\n/// \r\n\r\nmodule Fayde.Controls {\r\n export interface IIsEnabledListener {\r\n Callback: (newIsEnabled: boolean) => void;\r\n Detach();\r\n }\r\n\r\n export class ControlNode extends FENode {\r\n XObject: Control;\r\n TemplateRoot: FrameworkElement;\r\n IsFocused: boolean = false;\r\n LayoutUpdater: minerva.controls.control.ControlUpdater;\r\n\r\n constructor(xobj: Control) {\r\n super(xobj);\r\n }\r\n\r\n TabTo() {\r\n var xobj = this.XObject;\r\n return xobj.IsEnabled && xobj.IsTabStop && this.Focus();\r\n }\r\n\r\n ApplyTemplateWithError(error: BError): boolean {\r\n if (!super.ApplyTemplateWithError(error))\r\n return false;\r\n this.XObject.UpdateValidationState();\r\n return true;\r\n }\r\n DoApplyTemplateWithError(error: BError): boolean {\r\n var xobj = this.XObject;\r\n var t = xobj.Template;\r\n var root: UIElement;\r\n if (t) root = t.GetVisualTree(xobj);\r\n if (!root && !(root = this.GetDefaultVisualTree()))\r\n return false;\r\n\r\n if (this.TemplateRoot && this.TemplateRoot !== root)\r\n this.DetachVisualChild(this.TemplateRoot, error)\r\n this.TemplateRoot = root;\r\n if (this.TemplateRoot)\r\n this.AttachVisualChild(this.TemplateRoot, error);\r\n if (error.Message)\r\n return false;\r\n\r\n //TODO: Deployment Loaded Event (Async)\r\n\r\n return true;\r\n }\r\n GetDefaultVisualTree(): UIElement { return undefined; }\r\n\r\n OnIsAttachedChanged(newIsAttached: boolean) {\r\n super.OnIsAttachedChanged(newIsAttached);\r\n if (!newIsAttached)\r\n Media.VSM.VisualStateManager.Deactivate(this.XObject, this.TemplateRoot);\r\n else\r\n Media.VSM.VisualStateManager.Activate(this.XObject, this.TemplateRoot);\r\n }\r\n\r\n OnParentChanged(oldParentNode: XamlNode, newParentNode: XamlNode) {\r\n super.OnParentChanged(oldParentNode, newParentNode);\r\n this.IsEnabled = newParentNode ? newParentNode.IsEnabled : true;\r\n }\r\n\r\n OnTemplateChanged(oldTemplate: ControlTemplate, newTemplate: ControlTemplate) {\r\n var subtree = this.SubtreeNode;\r\n if (subtree) {\r\n var error = new BError();\r\n if (!this.DetachVisualChild(subtree.XObject, error))\r\n error.ThrowException();\r\n }\r\n this.LayoutUpdater.invalidateMeasure();\r\n }\r\n\r\n get IsEnabled(): boolean { return this.XObject.IsEnabled; }\r\n set IsEnabled(value: boolean) {\r\n Providers.IsEnabledStore.EmitInheritedChanged(this, value);\r\n this.OnIsEnabledChanged(undefined, value);\r\n }\r\n OnIsEnabledChanged(oldValue: boolean, newValue: boolean) {\r\n if (!newValue) {\r\n this.IsMouseOver = false;\r\n if (Surface.RemoveFocusFrom(this.XObject)) {\r\n TabNavigationWalker.Focus(this, true);\r\n }\r\n this.ReleaseMouseCapture();\r\n }\r\n super.OnIsEnabledChanged(oldValue, newValue);\r\n }\r\n\r\n Focus(recurse?: boolean): boolean {\r\n return Surface.Focus(this.XObject, recurse);\r\n }\r\n\r\n CanCaptureMouse(): boolean { return this.XObject.IsEnabled; }\r\n }\r\n\r\n export class Control extends FrameworkElement implements Providers.IIsPropertyInheritable {\r\n XamlNode: ControlNode;\r\n CreateNode(): ControlNode { return new ControlNode(this); }\r\n CreateLayoutUpdater() { return new minerva.controls.control.ControlUpdater(); }\r\n\r\n constructor() {\r\n super();\r\n UIReaction(Control.IsEnabledProperty, (upd, nv, ov, control?: Control) => {\r\n var args = {\r\n Property: Control.IsEnabledProperty,\r\n OldValue: ov,\r\n NewValue: nv\r\n };\r\n control.OnIsEnabledChanged(args);\r\n if (nv !== true)\r\n control.XamlNode.IsMouseOver = false;\r\n control.UpdateVisualState();\r\n control.IsEnabledChanged.raiseAsync(control, args);\r\n }, false, true, this);\r\n //TODO: Do these make sense? These properties are usually bound to child visuals which will invalidate\r\n UIReaction(Control.PaddingProperty, (upd, nv, ov) => upd.invalidateMeasure(), false, true, this);\r\n UIReaction(Control.BorderThicknessProperty, (upd, nv, ov) => upd.invalidateMeasure(), false, true, this);\r\n UIReaction(Control.HorizontalContentAlignmentProperty, (upd, nv, ov) => upd.invalidateArrange(), false, true, this);\r\n UIReaction(Control.VerticalContentAlignmentProperty, (upd, nv, ov) => upd.invalidateArrange(), false, true, this);\r\n }\r\n\r\n static BackgroundProperty = DependencyProperty.RegisterCore(\"Background\", () => Media.Brush, Control);\r\n static BorderBrushProperty = DependencyProperty.RegisterCore(\"BorderBrush\", () => Media.Brush, Control);\r\n static BorderThicknessProperty = DependencyProperty.RegisterCore(\"BorderThickness\", () => Thickness, Control);\r\n static FontFamilyProperty = InheritableOwner.FontFamilyProperty.ExtendTo(Control);\r\n static FontSizeProperty = InheritableOwner.FontSizeProperty.ExtendTo(Control);\r\n static FontStretchProperty = InheritableOwner.FontStretchProperty.ExtendTo(Control);\r\n static FontStyleProperty = InheritableOwner.FontStyleProperty.ExtendTo(Control);\r\n static FontWeightProperty = InheritableOwner.FontWeightProperty.ExtendTo(Control);\r\n static ForegroundProperty = InheritableOwner.ForegroundProperty.ExtendTo(Control);\r\n static HorizontalContentAlignmentProperty: DependencyProperty = DependencyProperty.Register(\"HorizontalContentAlignment\", () => new Enum(HorizontalAlignment), Control, HorizontalAlignment.Center);\r\n static IsEnabledProperty = DependencyProperty.Register(\"IsEnabled\", () => Boolean, Control, true);\r\n static IsTabStopProperty = DependencyProperty.Register(\"IsTabStop\", () => Boolean, Control, true);\r\n static PaddingProperty = DependencyProperty.RegisterCore(\"Padding\", () => Thickness, Control);\r\n static TabIndexProperty = DependencyProperty.Register(\"TabIndex\", () => Number, Control);\r\n static TabNavigationProperty = DependencyProperty.Register(\"TabNavigation\", () => new Enum(Input.KeyboardNavigationMode), Control, Input.KeyboardNavigationMode.Local);\r\n static TemplateProperty = DependencyProperty.Register(\"Template\", () => ControlTemplate, Control, undefined, (d, args) => (d).XamlNode.OnTemplateChanged(args.OldValue, args.NewValue));\r\n static VerticalContentAlignmentProperty = DependencyProperty.Register(\"VerticalContentAlignment\", () => new Enum(VerticalAlignment), Control, VerticalAlignment.Center);\r\n\r\n IsInheritable(propd: DependencyProperty): boolean {\r\n if (ControlInheritedProperties.indexOf(propd) > -1)\r\n return true;\r\n return super.IsInheritable(propd);\r\n }\r\n\r\n Background: Media.Brush;\r\n BorderBrush: Media.Brush;\r\n BorderThickness: Thickness;\r\n FontFamily: string;\r\n FontSize: number;\r\n FontStretch: string;\r\n FontStyle: string;\r\n FontWeight: FontWeight;\r\n Foreground: Media.Brush;\r\n HorizontalContentAlignment: HorizontalAlignment;\r\n IsEnabled: boolean;\r\n IsTabStop: boolean;\r\n Padding: Thickness;\r\n TabIndex: number;\r\n TabNavigation: Input.KeyboardNavigationMode;\r\n Template: ControlTemplate;\r\n VerticalContentAlignment: VerticalAlignment;\r\n\r\n get IsFocused() { return this.XamlNode.IsFocused; }\r\n\r\n GetTemplateChild(childName: string, type?: Function): DependencyObject {\r\n var root = this.XamlNode.TemplateRoot;\r\n if (!root)\r\n return;\r\n var n = root.XamlNode.FindName(childName);\r\n if (!n)\r\n return;\r\n var xobj = n.XObject;\r\n if (!type || (xobj instanceof type))\r\n return xobj;\r\n }\r\n\r\n ApplyTemplate(): boolean {\r\n var error = new BError();\r\n var result = this.XamlNode.ApplyTemplateWithError(error);\r\n if (error.Message)\r\n error.ThrowException();\r\n return result;\r\n }\r\n\r\n GetDefaultStyle(): Style {\r\n return undefined;\r\n }\r\n\r\n IsEnabledChanged = new nullstone.Event();\r\n OnIsEnabledChanged(e: IDependencyPropertyChangedEventArgs) { }\r\n\r\n OnGotFocus(e: RoutedEventArgs) {\r\n this.XamlNode.IsFocused = true;\r\n this.UpdateValidationState();\r\n }\r\n OnLostFocus(e: RoutedEventArgs) {\r\n this.XamlNode.IsFocused = false;\r\n this.UpdateValidationState();\r\n }\r\n\r\n UpdateVisualState(useTransitions?: boolean) {\r\n useTransitions = useTransitions !== false;\r\n var gotoFunc = (state: string) => Media.VSM.VisualStateManager.GoToState(this, state, useTransitions);\r\n this.GoToStates(gotoFunc);\r\n }\r\n GoToStates(gotoFunc: (state: string) => boolean) {\r\n this.GoToStateCommon(gotoFunc);\r\n this.GoToStateFocus(gotoFunc);\r\n this.GoToStateSelection(gotoFunc);\r\n }\r\n GoToStateCommon(gotoFunc: (state: string) => boolean): boolean {\r\n if (!this.IsEnabled)\r\n return gotoFunc(\"Disabled\");\r\n if (this.IsMouseOver)\r\n return gotoFunc(\"MouseOver\");\r\n return gotoFunc(\"Normal\");\r\n }\r\n GoToStateFocus(gotoFunc: (state: string) => boolean): boolean {\r\n if (this.IsFocused && this.IsEnabled)\r\n return gotoFunc(\"Focused\");\r\n return gotoFunc(\"Unfocused\");\r\n }\r\n GoToStateSelection(gotoFunc: (state: string) => boolean): boolean {\r\n return false;\r\n }\r\n\r\n UpdateValidationState (valid?: boolean) {\r\n if (valid === undefined) {\r\n var errors = Validation.GetErrors(this);\r\n valid = errors.Count < 1;\r\n }\r\n var gotoFunc = (state: string) => Media.VSM.VisualStateManager.GoToState(this, state, true);\r\n this.GoToStateValidation(valid, gotoFunc);\r\n }\r\n\r\n GoToStateValidation (valid: boolean, gotoFunc: (state: string) => boolean) {\r\n if (valid)\r\n return gotoFunc(\"Valid\");\r\n else if (this.IsFocused)\r\n return gotoFunc(\"InvalidFocused\");\r\n return gotoFunc(\"InvalidUnfocused\");\r\n }\r\n }\r\n Fayde.CoreLibrary.add(Control);\r\n\r\n Control.IsEnabledProperty.Store = Providers.IsEnabledStore.Instance;\r\n\r\n var ControlInheritedProperties = [\r\n Control.FontFamilyProperty,\r\n Control.FontSizeProperty,\r\n Control.FontStretchProperty,\r\n Control.FontStyleProperty,\r\n Control.FontWeightProperty,\r\n Control.ForegroundProperty\r\n ];\r\n\r\n export interface ITemplateVisualStateDefinition {\r\n Name: string;\r\n GroupName: string;\r\n }\r\n export var TemplateVisualStates = nullstone.CreateTypedAnnotation(\"TemplateVisualState\");\r\n\r\n export interface ITemplatePartDefinition {\r\n Name: string;\r\n Type: Function;\r\n }\r\n export var TemplateParts = nullstone.CreateTypedAnnotation(\"TemplatePart\");\r\n}","/// \r\n\r\nmodule Fayde.Controls {\r\n export class ContentControlNode extends ControlNode {\r\n private _DefaultPresenter: ContentPresenter = null;\r\n\r\n XObject: ContentControl;\r\n\r\n constructor (xobj: ContentControl) {\r\n super(xobj);\r\n }\r\n\r\n GetDefaultVisualTree (): UIElement {\r\n var xobj = this.XObject;\r\n var content = xobj.Content;\r\n if (content instanceof UIElement)\r\n return content;\r\n\r\n var presenter = this._DefaultPresenter;\r\n if (!presenter) {\r\n presenter = this._DefaultPresenter = new ContentPresenter();\r\n presenter.TemplateOwner = this.XObject;\r\n }\r\n presenter.SetValue(ContentPresenter.ContentProperty, new TemplateBindingExpression(\"Content\"));\r\n presenter.SetValue(ContentPresenter.ContentTemplateProperty, new TemplateBindingExpression(\"ContentTemplate\"));\r\n return presenter;\r\n }\r\n\r\n OnContentChanged (o: any, n: any) {\r\n if (o instanceof UIElement || n instanceof UIElement)\r\n this.CleanOldContent(o);\r\n }\r\n\r\n OnTemplateChanged (oldTemplate: ControlTemplate, newTemplate: ControlTemplate) {\r\n if (oldTemplate)\r\n this.CleanOldContent(this.XObject.Content);\r\n super.OnTemplateChanged(oldTemplate, newTemplate);\r\n }\r\n\r\n private CleanOldContent (content: any) {\r\n if (content instanceof UIElement) {\r\n FENode.DetachFromVisualParent(content);\r\n this.LayoutUpdater.invalidateMeasure();\r\n } else {\r\n var presenter = this._DefaultPresenter;\r\n if (presenter) {\r\n presenter.ClearValue(ContentPresenter.ContentProperty);\r\n presenter.ClearValue(ContentPresenter.ContentTemplateProperty);\r\n FENode.DetachFromVisualParent(presenter);\r\n this.LayoutUpdater.invalidateMeasure();\r\n }\r\n }\r\n }\r\n }\r\n\r\n export class ContentControl extends Control {\r\n XamlNode: ContentControlNode;\r\n\r\n CreateNode (): ContentControlNode {\r\n return new ContentControlNode(this);\r\n }\r\n\r\n static ContentProperty = DependencyProperty.Register(\"Content\", () => Object, ContentControl, undefined, (d: ContentControl, args) => d.OnContentPropertyChanged(args));\r\n static ContentTemplateProperty = DependencyProperty.Register(\"ContentTemplate\", () => DataTemplate, ContentControl, undefined, (d: ContentControl, args) => d.OnContentTemplateChanged(args.OldValue, args.NewValue));\r\n static ContentUriProperty = DependencyProperty.Register(\"ContentUri\", () => Uri, ContentControl, undefined, (d: ContentControl, args) => d.OnContentUriPropertyChanged(args));\r\n Content: any;\r\n ContentTemplate: DataTemplate;\r\n ContentUri: Uri;\r\n\r\n private OnContentPropertyChanged (args: DependencyPropertyChangedEventArgs) {\r\n this.XamlNode.OnContentChanged(args.OldValue, args.NewValue);\r\n this.OnContentChanged(args.OldValue, args.NewValue);\r\n }\r\n\r\n private OnContentUriPropertyChanged (args: DependencyPropertyChangedEventArgs) {\r\n var oldUri: Uri;\r\n if (args.OldValue instanceof Uri) {\r\n this.Content = undefined;\r\n oldUri = args.OldValue;\r\n }\r\n var newUri: Uri;\r\n if (args.NewValue instanceof Uri) {\r\n newUri = args.NewValue;\r\n Markup.Resolve(newUri)\r\n .then(m => this._OnLoadedUri(m), err => this._OnErroredUri(err, newUri))\r\n }\r\n this.OnContentUriChanged(oldUri, newUri);\r\n }\r\n\r\n constructor () {\r\n super();\r\n this.DefaultStyleKey = ContentControl;\r\n }\r\n\r\n OnContentChanged (oldContent: any, newContent: any) {\r\n }\r\n\r\n OnContentTemplateChanged (oldContentTemplate: DataTemplate, newContentTemplate: DataTemplate) {\r\n }\r\n\r\n OnContentUriChanged (oldSourceUri: Uri, newSourceUri: Uri) {\r\n }\r\n\r\n private _OnLoadedUri (xm: nullstone.markup.Markup) {\r\n this.Content = Markup.Load(this.App, xm);\r\n }\r\n\r\n private _OnErroredUri (err: any, src: Uri) {\r\n console.warn(\"Error resolving XamlResource: '\" + src.toString() + \"'.\");\r\n //TODO: Set content to error message?\r\n }\r\n }\r\n Fayde.CoreLibrary.add(ContentControl);\r\n Markup.Content(ContentControl, ContentControl.ContentProperty);\r\n}","\r\nmodule Fayde.Controls {\r\n export enum TextWrapping {\r\n NoWrap = 0,\r\n Wrap = 1,\r\n WrapWithOverflow = 2,\r\n }\r\n Fayde.CoreLibrary.addEnum(TextWrapping, \"TextWrapping\");\r\n\r\n export enum ScrollBarVisibility {\r\n Disabled = 0,\r\n Auto = 1,\r\n Hidden = 2,\r\n Visible = 3,\r\n }\r\n Fayde.CoreLibrary.addEnum(ScrollBarVisibility, \"ScrollBarVisibility\");\r\n\r\n export enum TextTrimming {\r\n None = 0,\r\n WordEllipsis = 1,\r\n CharacterEllipsis = 2,\r\n }\r\n Fayde.CoreLibrary.addEnum(TextTrimming, \"TextTrimming\");\r\n\r\n export enum ClickMode {\r\n Release = 0,\r\n Press = 1,\r\n Hover = 2,\r\n }\r\n Fayde.CoreLibrary.addEnum(ClickMode, \"ClickMode\");\r\n\r\n export enum PlacementMode {\r\n Bottom = 0,\r\n Right = 1,\r\n Mouse = 2,\r\n Left = 3,\r\n Top = 4,\r\n }\r\n Fayde.CoreLibrary.addEnum(PlacementMode, \"PlacementMode\");\r\n\r\n export enum SelectionMode {\r\n Single = 0,\r\n Multiple = 1,\r\n Extended = 2,\r\n }\r\n Fayde.CoreLibrary.addEnum(SelectionMode, \"SelectionMode\");\r\n\r\n export enum MediaElementState {\r\n Closed = 0,\r\n Opening = 1,\r\n //Individualizing = 2,\r\n //AcquiringLicense = 3,\r\n Buffering = 4,\r\n Playing = 5,\r\n Paused = 6,\r\n Stopped = 7\r\n }\r\n Fayde.CoreLibrary.addEnum(MediaElementState, \"MediaElementState\");\r\n\r\n export enum SelectionOnFocus {\r\n Unchanged = 0, // Selcetion will not be modified\r\n SelectAll = 1, // The whole text will be selected\r\n CaretToBeginning = 2, // The caret will be moved to the start to the text\r\n CaretToEnd = 3, // The caret will be moved to the end of the text\r\n Default = 4, // The default (Nothing happens)\r\n DefaultSelectAll = 5 // Default will be used when focusing the control with the mouse click. SelectAll will be use when focusing the control with the Tab key\r\n }\r\n\r\n Fayde.CoreLibrary.addEnum(SelectionOnFocus, \"SelectionOnFocus\");\r\n}","/// \r\n/// \r\n\r\nmodule Fayde.Controls.Primitives {\r\n export class ButtonBase extends ContentControl {\r\n static ClickModeProperty = DependencyProperty.Register(\"ClickMode\", () => new Enum(ClickMode), ButtonBase, ClickMode.Release);\r\n static IsPressedProperty = DependencyProperty.RegisterReadOnly(\"IsPressed\", () => Boolean, ButtonBase, false, (d, args) => (d).OnIsPressedChanged(args));\r\n static IsFocusedProperty = DependencyProperty.RegisterReadOnly(\"IsFocused\", () => Boolean, ButtonBase, false);\r\n static CommandProperty = DependencyProperty.RegisterCore(\"Command\", () => Input.ICommand_, ButtonBase, undefined, (d, args) => (d).OnCommandChanged(args));\r\n static CommandParameterProperty = DependencyProperty.RegisterCore(\"CommandParameter\", () => Object, ButtonBase, undefined, (d, args) => (d).OnCommandParameterChanged(args));\r\n ClickMode: ClickMode;\r\n IsPressed: boolean;\r\n IsFocused: boolean;\r\n Command: Input.ICommand;\r\n CommandParameter: any;\r\n Click = new RoutedEvent();\r\n\r\n private _IsMouseCaptured: boolean = false;\r\n private _TouchCaptures: number[];\r\n private _IsMouseLeftButtonDown: boolean = false;\r\n private _IsSpaceKeyDown: boolean = false;\r\n _MousePosition: Point = new Point();\r\n private _SuspendStateChanges: boolean = false;\r\n\r\n constructor() {\r\n super();\r\n this.IsTabStop = true;\r\n }\r\n\r\n OnIsPressedChanged(args: IDependencyPropertyChangedEventArgs) {\r\n this.UpdateVisualState();\r\n }\r\n\r\n OnIsEnabledChanged(e: IDependencyPropertyChangedEventArgs) {\r\n if (!!e.NewValue)\r\n return;\r\n this._DoWithSuspend(() => {\r\n this.SetCurrentValue(ButtonBase.IsFocusedProperty, false);\r\n this.SetCurrentValue(ButtonBase.IsPressedProperty, false);\r\n this._IsMouseCaptured = false;\r\n this._IsSpaceKeyDown = false;\r\n this._IsMouseLeftButtonDown = false;\r\n });\r\n }\r\n OnMouseEnter(e: Input.MouseEventArgs) {\r\n super.OnMouseEnter(e);\r\n this.UpdateVisualState();\r\n\r\n if (this.ClickMode !== ClickMode.Hover || !this.IsEnabled)\r\n return;\r\n\r\n this._DoWithSuspend(() => {\r\n this.SetCurrentValue(ButtonBase.IsPressedProperty, true);\r\n this.OnClick();\r\n });\r\n }\r\n OnMouseLeave(e: Input.MouseEventArgs) {\r\n super.OnMouseLeave(e);\r\n this.UpdateVisualState();\r\n\r\n if (this.ClickMode !== ClickMode.Hover || !this.IsEnabled)\r\n return;\r\n\r\n this._DoWithSuspend(() => {\r\n this.SetCurrentValue(ButtonBase.IsPressedProperty, false);\r\n });\r\n }\r\n OnMouseMove(e: Input.MouseEventArgs) {\r\n super.OnMouseMove(e);\r\n\r\n this._MousePosition = e.GetPosition(this);\r\n\r\n if (this._IsMouseLeftButtonDown && this.IsEnabled && this.ClickMode !== ClickMode.Hover && this._IsMouseCaptured && !this._IsSpaceKeyDown) {\r\n this.SetCurrentValue(ButtonBase.IsPressedProperty, this._IsValidPosition(this._MousePosition));\r\n }\r\n }\r\n OnMouseLeftButtonDown(e: Input.MouseButtonEventArgs) {\r\n super.OnMouseLeftButtonDown(e);\r\n\r\n this._IsMouseLeftButtonDown = true;\r\n if (!this.IsEnabled)\r\n return;\r\n var clickMode = this.ClickMode;\r\n if (clickMode === ClickMode.Hover)\r\n return;\r\n\r\n e.Handled = true;\r\n this._DoWithSuspend(() => {\r\n this.Focus();\r\n this._CaptureMouseInternal();\r\n if (this._IsMouseCaptured)\r\n this.SetCurrentValue(ButtonBase.IsPressedProperty, true);\r\n });\r\n\r\n if (clickMode === ClickMode.Press)\r\n this.OnClick();\r\n }\r\n OnMouseLeftButtonUp(e: Input.MouseButtonEventArgs) {\r\n super.OnMouseLeftButtonDown(e);\r\n\r\n this._IsMouseLeftButtonDown = false;\r\n if (!this.IsEnabled)\r\n return;\r\n var clickMode = this.ClickMode;\r\n if (clickMode === ClickMode.Hover)\r\n return;\r\n\r\n e.Handled = true;\r\n if (!this._IsSpaceKeyDown && this.IsPressed && clickMode === ClickMode.Release)\r\n this.OnClick();\r\n\r\n if (!this._IsSpaceKeyDown) {\r\n this._ReleaseMouseCaptureInternal();\r\n this.SetCurrentValue(ButtonBase.IsPressedProperty, false);\r\n }\r\n }\r\n\r\n OnGotFocus(e: RoutedEventArgs) {\r\n super.OnGotFocus(e);\r\n this.SetCurrentValue(ButtonBase.IsFocusedProperty, true);\r\n this.UpdateVisualState();\r\n }\r\n OnLostFocus(e: RoutedEventArgs) {\r\n super.OnLostFocus(e);\r\n this.SetCurrentValue(ButtonBase.IsFocusedProperty, false);\r\n\r\n if (this.ClickMode === ClickMode.Hover)\r\n return;\r\n\r\n this._DoWithSuspend(() => {\r\n this.SetCurrentValue(ButtonBase.IsPressedProperty, false);\r\n this._ReleaseMouseCaptureInternal();\r\n this._IsSpaceKeyDown = false;\r\n });\r\n }\r\n\r\n OnTouchMove(e: Input.TouchEventArgs) {\r\n super.OnTouchMove(e);\r\n if (!this.IsEnabled || e.Device.Captured !== this)\r\n return;\r\n var tp = e.GetTouchPoint(this);\r\n this.SetCurrentValue(ButtonBase.IsPressedProperty, this._IsValidPosition(tp.Position));\r\n }\r\n OnTouchDown(e: Input.TouchEventArgs) {\r\n super.OnTouchDown(e);\r\n if (!this.IsEnabled)\r\n return;\r\n e.Handled = true;\r\n this._DoWithSuspend(() => {\r\n this.Focus();\r\n if (e.Device.Capture(this))\r\n this.SetCurrentValue(ButtonBase.IsPressedProperty, true);\r\n });\r\n\r\n if (this.ClickMode === ClickMode.Press)\r\n this.OnClick();\r\n }\r\n OnTouchUp(e: Input.TouchEventArgs) {\r\n super.OnTouchUp(e);\r\n if (!this.IsEnabled)\r\n return;\r\n e.Handled = true;\r\n if (this.IsPressed && this.ClickMode === ClickMode.Release)\r\n this.OnClick();\r\n e.Device.ReleaseCapture(this);\r\n this.SetCurrentValue(ButtonBase.IsPressedProperty, false);\r\n }\r\n\r\n OnClick() {\r\n var cmd = this.Command;\r\n var par = this.CommandParameter;\r\n if (cmd != null) {\r\n var canf = cmd.CanExecute;\r\n if ((canf == null || typeof canf !== \"function\" || canf(par)) && (cmd.Execute && typeof cmd.Execute === \"function\"))\r\n cmd.Execute(par);\r\n }\r\n\r\n this.Click.raise(this, new RoutedEventArgs());\r\n }\r\n\r\n private _DoWithSuspend(action: () => void) {\r\n this._SuspendStateChanges = true;\r\n try {\r\n action();\r\n } finally {\r\n this._SuspendStateChanges = false;\r\n this.UpdateVisualState();\r\n }\r\n }\r\n\r\n UpdateVisualState(useTransitions?: boolean) {\r\n if (this._SuspendStateChanges)\r\n return;\r\n super.UpdateVisualState(useTransitions);\r\n }\r\n GoToStateCommon(gotoFunc: (state: string) => boolean): boolean {\r\n if (!this.IsEnabled)\r\n return gotoFunc(\"Disabled\");\r\n if (this.IsPressed)\r\n return gotoFunc(\"Pressed\");\r\n if (this.IsMouseOver)\r\n return gotoFunc(\"MouseOver\");\r\n return gotoFunc(\"Normal\");\r\n }\r\n\r\n private _CaptureMouseInternal() {\r\n if (!this._IsMouseCaptured)\r\n this._IsMouseCaptured = this.CaptureMouse();\r\n }\r\n private _ReleaseMouseCaptureInternal() {\r\n this.ReleaseMouseCapture();\r\n this._IsMouseCaptured = false;\r\n }\r\n private _IsValidPosition(pos: Point): boolean {\r\n return pos.x >= 0.0 && pos.x <= this.ActualWidth\r\n && pos.y >= 0.0 && pos.y <= this.ActualHeight;\r\n }\r\n\r\n private OnCommandChanged(args: IDependencyPropertyChangedEventArgs) {\r\n var cmd = Input.ICommand_.as(args.OldValue);\r\n if (cmd)\r\n cmd.CanExecuteChanged.off(this.OnCommandCanExecuteChanged, this);\r\n\r\n cmd = Input.ICommand_.as(args.NewValue);\r\n if (cmd) {\r\n cmd.CanExecuteChanged.on(this.OnCommandCanExecuteChanged, this);\r\n this.IsEnabled = cmd.CanExecute(this.CommandParameter);\r\n }\r\n }\r\n private OnCommandCanExecuteChanged(sender, e) {\r\n this.IsEnabled = this.Command.CanExecute(this.CommandParameter);\r\n }\r\n private OnCommandParameterChanged(args: IDependencyPropertyChangedEventArgs) {\r\n var cmd = this.Command;\r\n if (cmd)\r\n this.IsEnabled = cmd.CanExecute(args.NewValue);\r\n }\r\n }\r\n Fayde.CoreLibrary.add(ButtonBase);\r\n}","/// \r\n\r\nmodule Fayde.Controls {\r\n export class Button extends Primitives.ButtonBase {\r\n constructor() {\r\n super();\r\n this.DefaultStyleKey = Button;\r\n }\r\n\r\n OnApplyTemplate() {\r\n super.OnApplyTemplate();\r\n this.UpdateVisualState(false);\r\n }\r\n\r\n OnIsEnabledChanged(e: IDependencyPropertyChangedEventArgs) {\r\n super.OnIsEnabledChanged(e);\r\n this.IsTabStop = e.NewValue;\r\n }\r\n }\r\n Fayde.CoreLibrary.add(Button);\r\n TemplateVisualStates(Button, \r\n { GroupName: \"CommonStates\", Name: \"Normal\" },\r\n { GroupName: \"CommonStates\", Name: \"MouseOver\" },\r\n { GroupName: \"CommonStates\", Name: \"Pressed\" },\r\n { GroupName: \"CommonStates\", Name: \"Disabled\" },\r\n { GroupName: \"FocusStates\", Name: \"Unfocused\" },\r\n { GroupName: \"FocusStates\", Name: \"Focused\" });\r\n}","/// \r\n\r\nmodule Fayde {\r\n export class XamlObjectCollection extends XamlObject implements nullstone.ICollection {\r\n _ht: Array = [];\r\n\r\n AttachTo (xobj: XamlObject) {\r\n var error = new BError();\r\n if (!this.XamlNode.AttachTo(xobj.XamlNode, error))\r\n error.ThrowException();\r\n }\r\n\r\n get Count () {\r\n return this._ht.length;\r\n }\r\n\r\n GetRange (startIndex: number, endIndex: number): T[] {\r\n return this._ht.slice(startIndex, endIndex);\r\n }\r\n\r\n GetValueAt (index: number): T {\r\n return this._ht[index];\r\n }\r\n\r\n SetValueAt (index: number, value: T): boolean {\r\n if (!this.CanAdd(value))\r\n return false;\r\n\r\n if (index < 0 || index >= this._ht.length)\r\n return false;\r\n\r\n var removed = this._ht[index];\r\n var added = value;\r\n\r\n var error = new BError();\r\n if (this.AddingToCollection(added, error)) {\r\n this._ht[index] = added;\r\n this.RemovedFromCollection(removed, true);\r\n this._RaiseItemReplaced(removed, added, index);\r\n return true;\r\n }\r\n return false;\r\n }\r\n\r\n Add (value: T): number {\r\n var rv = this.Insert(this._ht.length, value);\r\n return rv ? this._ht.length - 1 : -1;\r\n }\r\n\r\n Insert (index: number, value: T): boolean {\r\n if (!this.CanAdd(value))\r\n return false;\r\n if (index < 0)\r\n return false;\r\n var count = this._ht.length;\r\n if (index > count)\r\n index = count;\r\n\r\n var error = new BError();\r\n if (this.AddingToCollection(value, error)) {\r\n this._ht.splice(index, 0, value);\r\n this._RaiseItemAdded(value, index);\r\n return true;\r\n }\r\n if (error.Message)\r\n throw new Exception(error.Message);\r\n return false;\r\n }\r\n\r\n Remove (value: T): boolean {\r\n var index = this.IndexOf(value);\r\n if (index === -1)\r\n return false;\r\n return this.RemoveAt(index);\r\n }\r\n\r\n RemoveAt (index: number): boolean {\r\n if (index < 0 || index >= this._ht.length)\r\n return false;\r\n var value = this._ht[index];\r\n this._ht.splice(index, 1);\r\n this.RemovedFromCollection(value, true);\r\n this._RaiseItemRemoved(value, index);\r\n return true;\r\n }\r\n\r\n Clear (): boolean {\r\n var old = this._ht;\r\n //LOOKS USELESS: this._RaiseClearing(old);\r\n this._ht = [];\r\n var len = old.length;\r\n for (var i = 0; i < len; i++) {\r\n this.RemovedFromCollection(old[i], true);\r\n }\r\n this._RaiseCleared(old);\r\n return true;\r\n }\r\n\r\n IndexOf (value: T): number {\r\n return this._ht.indexOf(value);\r\n }\r\n\r\n Contains (value: T): boolean {\r\n return this.IndexOf(value) > -1;\r\n }\r\n\r\n CanAdd (value: T): boolean {\r\n return true;\r\n }\r\n\r\n AddingToCollection (value: T, error: BError): boolean {\r\n if (value instanceof XamlObject)\r\n return value.XamlNode.AttachTo(this.XamlNode, error);\r\n return true;\r\n }\r\n\r\n RemovedFromCollection (value: T, isValueSafe: boolean) {\r\n if (value instanceof XamlObject)\r\n value.XamlNode.Detach();\r\n }\r\n\r\n getEnumerator (reverse?: boolean): nullstone.IEnumerator {\r\n return nullstone.IEnumerator_.fromArray(this._ht, reverse);\r\n }\r\n\r\n GetNodeEnumerator(reverse?: boolean): nullstone.IEnumerator {\r\n var prev = this.getEnumerator(reverse);\r\n return {\r\n current: undefined,\r\n moveNext: function (): boolean {\r\n if (!prev.moveNext()) {\r\n this.current = undefined;\r\n return false;\r\n }\r\n var xobj = prev.current;\r\n this.current = xobj.XamlNode;\r\n return true;\r\n }\r\n };\r\n }\r\n\r\n _RaiseItemAdded (value: T, index: number) {\r\n }\r\n\r\n _RaiseItemRemoved (value: T, index: number) {\r\n }\r\n\r\n _RaiseItemReplaced (removed: T, added: T, index: number) {\r\n }\r\n\r\n //_RaiseClearing(arr: T[]) { }\r\n _RaiseCleared (old: T[]) {\r\n }\r\n\r\n CloneCore (source: XamlObjectCollection) {\r\n for (var en = source.getEnumerator(); en.moveNext();) {\r\n this.Add(Fayde.Clone(en.current));\r\n }\r\n }\r\n\r\n ToArray (): T[] {\r\n return this._ht.slice(0);\r\n }\r\n }\r\n nullstone.ICollection_.mark(XamlObjectCollection);\r\n}","/// \r\n/// \r\n/// \r\n\r\nmodule Fayde.Controls {\r\n class PanelChildrenCollection extends XamlObjectCollection {\r\n $$updaters: minerva.core.Updater[] = [];\r\n AddingToCollection(value: UIElement, error: BError): boolean {\r\n var panelNode = this.XamlNode.ParentNode;\r\n if (!panelNode.AttachVisualChild(value, error))\r\n return false;\r\n return super.AddingToCollection(value, error);\r\n }\r\n RemovedFromCollection(value: UIElement, isValueSafe: boolean) {\r\n var panelNode = this.XamlNode.ParentNode;\r\n panelNode.DetachVisualChild(value, null);\r\n super.RemovedFromCollection(value, isValueSafe);\r\n }\r\n _RaiseCleared (values: UIElement[]) {\r\n this.$$updaters.length = 0;\r\n }\r\n _RaiseItemAdded(value: UIElement, index: number) {\r\n this.$$updaters.splice(index, 0, value.XamlNode.LayoutUpdater);\r\n }\r\n _RaiseItemRemoved(value: UIElement, index: number) {\r\n this.$$updaters.splice(index, 1);\r\n }\r\n _RaiseItemReplaced(removed: UIElement, added: UIElement, index: number) {\r\n this.$$updaters.splice(index, 1, added.XamlNode.LayoutUpdater);\r\n }\r\n }\r\n\r\n export class PanelNode extends FENode {\r\n LayoutUpdater: minerva.controls.panel.PanelUpdater;\r\n XObject: Panel;\r\n constructor(xobj: Panel) {\r\n super(xobj);\r\n }\r\n AttachVisualChild(uie: UIElement, error: BError): boolean {\r\n this.OnVisualChildAttached(uie);\r\n uie.XamlNode.SetIsLoaded(this.IsLoaded);\r\n return true;\r\n }\r\n DetachVisualChild(uie: UIElement, error: BError): boolean {\r\n this.OnVisualChildDetached(uie);\r\n uie.XamlNode.SetIsLoaded(false);\r\n return true;\r\n }\r\n }\r\n\r\n export class Panel extends FrameworkElement {\r\n XamlNode: PanelNode;\r\n CreateNode(): PanelNode { return new PanelNode(this); }\r\n CreateLayoutUpdater() { return new minerva.controls.panel.PanelUpdater(); }\r\n\r\n static BackgroundProperty = DependencyProperty.Register(\"Background\", () => Media.Brush, Panel);\r\n static ChildrenProperty = DependencyProperty.RegisterImmutable>(\"Children\", () => PanelChildrenCollection, Panel);\r\n static ZIndexProperty = DependencyProperty.RegisterAttached(\"ZIndex\", () => Number, Panel, 0);\r\n static GetZIndex(uie: UIElement): number { return uie.GetValue(Panel.ZIndexProperty); }\r\n static SetZIndex(uie: UIElement, value: number) { uie.SetValue(Panel.ZIndexProperty, value); }\r\n Background: Media.Brush;\r\n Children: XamlObjectCollection;\r\n\r\n constructor() {\r\n super();\r\n var coll = Panel.ChildrenProperty.Initialize(this);\r\n this.XamlNode.LayoutUpdater.setChildren(coll.$$updaters);\r\n var error = new BError();\r\n this.XamlNode.SetSubtreeNode(coll.XamlNode, error);\r\n }\r\n }\r\n Fayde.CoreLibrary.add(Panel);\r\n Markup.Content(Panel, Panel.ChildrenProperty);\r\n\r\n module reactions {\r\n UIReaction(Panel.BackgroundProperty, (upd, ov, nv) => {\r\n if (nv !== ov) //nv === ov when child properties update\r\n upd.updateBounds();\r\n upd.invalidate();\r\n });\r\n UIReactionAttached(Panel.ZIndexProperty, minerva.controls.panel.reactTo.zIndex);\r\n }\r\n}","/// \r\n\r\nmodule Fayde.Controls {\r\n export class Canvas extends Panel {\r\n CreateLayoutUpdater() { return new minerva.controls.canvas.CanvasUpdater(); }\r\n\r\n static TopProperty: DependencyProperty = DependencyProperty.RegisterAttached(\"Top\", () => Number, Canvas, 0.0);\r\n static GetTop(d: DependencyObject): number { return d.GetValue(Canvas.TopProperty); }\r\n static SetTop(d: DependencyObject, value: number) { d.SetValue(Canvas.TopProperty, value); }\r\n static LeftProperty: DependencyProperty = DependencyProperty.RegisterAttached(\"Left\", () => Number, Canvas, 0.0);\r\n static GetLeft(d: DependencyObject): number { return d.GetValue(Canvas.LeftProperty); }\r\n static SetLeft(d: DependencyObject, value: number) { d.SetValue(Canvas.LeftProperty, value); }\r\n }\r\n Fayde.CoreLibrary.add(Canvas);\r\n\r\n module reactions {\r\n UIReactionAttached(Canvas.TopProperty, minerva.controls.canvas.reactTo.top);\r\n UIReactionAttached(Canvas.LeftProperty, minerva.controls.canvas.reactTo.left);\r\n }\r\n}","/// \r\n\r\nmodule Fayde.Controls.Primitives {\r\n export class ToggleButton extends ButtonBase {\r\n Checked = new RoutedEvent();\r\n Indeterminate = new RoutedEvent();\r\n Unchecked = new RoutedEvent();\r\n\r\n static IsCheckedProperty: DependencyProperty = DependencyProperty.RegisterCore(\"IsChecked\", () => Boolean, ToggleButton, false, (d, args) => (d).OnIsCheckedChanged(args));\r\n static IsThreeStateProperty: DependencyProperty = DependencyProperty.RegisterCore(\"IsThreeState\", () => Boolean, ToggleButton, false);\r\n IsChecked: boolean;\r\n IsThreeState: boolean;\r\n\r\n constructor() {\r\n super();\r\n this.DefaultStyleKey = ToggleButton;\r\n }\r\n\r\n OnApplyTemplate() {\r\n super.OnApplyTemplate();\r\n this.UpdateVisualState(false);\r\n }\r\n\r\n OnContentChanged(oldContent: any, newContent: any) {\r\n super.OnContentChanged(oldContent, newContent);\r\n this.UpdateVisualState();\r\n }\r\n OnClick() {\r\n this.OnToggle();\r\n super.OnClick();\r\n }\r\n UpdateVisualState(useTransitions?: boolean) {\r\n useTransitions = useTransitions !== false;\r\n super.UpdateVisualState(useTransitions);\r\n\r\n var isChecked = this.IsChecked;\r\n var vsm = Fayde.Media.VSM.VisualStateManager;\r\n if (isChecked === true) {\r\n vsm.GoToState(this, \"Checked\", useTransitions);\r\n } else if (isChecked === false) {\r\n vsm.GoToState(this, \"Unchecked\", useTransitions);\r\n } else {\r\n // isChecked is null\r\n if (!vsm.GoToState(this, \"Indeterminate\", useTransitions)) {\r\n vsm.GoToState(this, \"Unchecked\", useTransitions)\r\n }\r\n }\r\n }\r\n\r\n OnIsCheckedChanged(args: IDependencyPropertyChangedEventArgs) {\r\n var isChecked = args.NewValue;\r\n this.UpdateVisualState();\r\n var rargs = new RoutedEventArgs();\r\n if (isChecked === true) {\r\n this.Checked.raise(this, rargs);\r\n } else if (isChecked === false) {\r\n this.Unchecked.raise(this, rargs);\r\n } else {\r\n this.Indeterminate.raise(this, rargs);\r\n }\r\n }\r\n OnToggle() {\r\n var isChecked = this.IsChecked;\r\n if (isChecked === true) {\r\n this.IsChecked = this.IsThreeState ? null : false;\r\n } else {\r\n this.IsChecked = isChecked != null;\r\n }\r\n }\r\n }\r\n Fayde.CoreLibrary.add(ToggleButton);\r\n TemplateVisualStates(ToggleButton, { GroupName: \"CommonStates\", Name: \"Pressed\" },\r\n { GroupName: \"CommonStates\", Name: \"MouseOver\" },\r\n { GroupName: \"CommonStates\", Name: \"Normal\" },\r\n { GroupName: \"CommonStates\", Name: \"Disabled\" },\r\n { GroupName: \"FocusStates\", Name: \"Unfocused\" },\r\n { GroupName: \"FocusStates\", Name: \"Focused\" },\r\n { GroupName: \"CheckStates\", Name: \"Checked\" },\r\n { GroupName: \"CheckStates\", Name: \"Unchecked\" },\r\n { GroupName: \"CheckStates\", Name: \"Indeterminate\" });\r\n}","/// \r\n\r\nmodule Fayde.Controls {\r\n export class CheckBox extends Primitives.ToggleButton {\r\n constructor() {\r\n super();\r\n this.DefaultStyleKey = CheckBox;\r\n }\r\n }\r\n Fayde.CoreLibrary.add(CheckBox);\r\n TemplateVisualStates(CheckBox, \r\n { GroupName: \"CommonStates\", Name: \"Normal\" },\r\n { GroupName: \"CommonStates\", Name: \"MouseOver\" },\r\n { GroupName: \"CommonStates\", Name: \"Pressed\" },\r\n { GroupName: \"CommonStates\", Name: \"Disabled\" },\r\n { GroupName: \"FocusStates\", Name: \"Unfocused\" },\r\n { GroupName: \"FocusStates\", Name: \"Focused\" },\r\n { GroupName: \"CheckStates\", Name: \"Checked\" },\r\n { GroupName: \"CheckStates\", Name: \"Unchecked\" },\r\n { GroupName: \"CheckStates\", Name: \"Indeterminate\" },\r\n { GroupName: \"ValidationStates\", Name: \"InvalidUnfocused\" },\r\n { GroupName: \"ValidationStates\", Name: \"InvalidFocused\" },\r\n { GroupName: \"ValidationStates\", Name: \"Valid\" });\r\n}","/// \r\n/// \r\n\r\nmodule Fayde.Controls {\r\n export class ColumnDefinition extends DependencyObject implements minerva.controls.grid.IColumnDefinition {\r\n //NOTE: Will not receive property changes from GridLength\r\n static WidthProperty = DependencyProperty.Register(\"Width\", () => GridLength, ColumnDefinition, undefined, Incite);\r\n static MaxWidthProperty = DependencyProperty.Register(\"MaxWidth\", () => Number, ColumnDefinition, Number.POSITIVE_INFINITY, Incite);\r\n static MinWidthProperty = DependencyProperty.Register(\"MinWidth\", () => Number, ColumnDefinition, 0.0, Incite);\r\n static ActualWidthProperty = DependencyProperty.RegisterReadOnly(\"ActualWidth\", () => Number, ColumnDefinition, 0.0);\r\n Width: GridLength;\r\n MaxWidth: number;\r\n MinWidth: number;\r\n ActualWidth: number;\r\n\r\n setActualWidth (value: number) {\r\n this.SetCurrentValue(ColumnDefinition.ActualWidthProperty, value);\r\n }\r\n }\r\n Fayde.CoreLibrary.add(ColumnDefinition);\r\n\r\n import GridUnitType = minerva.controls.grid.GridUnitType;\r\n function ConvertColumnDefinition (o: any): ColumnDefinition {\r\n if (!o || o instanceof ColumnDefinition)\r\n return o;\r\n var s: string = o.toString();\r\n var cd = new ColumnDefinition();\r\n if (s.toLowerCase() === \"auto\") {\r\n cd.Width = new GridLength(0, GridUnitType.Auto);\r\n return cd;\r\n }\r\n if (s === \"*\") {\r\n cd.Width = new GridLength(1, GridUnitType.Star);\r\n return cd;\r\n }\r\n var v = parseFloat(s);\r\n if (isNaN(v))\r\n throw new XamlParseException(\"Invalid ColumnDefinition: '\" + s + \"'.\");\r\n cd.Width = new GridLength(v, s[s.length - 1] === \"*\" ? GridUnitType.Star : GridUnitType.Pixel);\r\n return cd;\r\n }\r\n\r\n nullstone.registerTypeConverter(ColumnDefinition, ConvertColumnDefinition);\r\n\r\n export class ColumnDefinitionCollection extends XamlObjectCollection {\r\n _RaiseItemAdded (value: ColumnDefinition, index: number) {\r\n Incite(this, {\r\n item: value,\r\n index: index,\r\n add: true\r\n });\r\n }\r\n\r\n _RaiseItemRemoved (value: ColumnDefinition, index: number) {\r\n Incite(this, {\r\n item: value,\r\n index: index,\r\n add: false\r\n });\r\n }\r\n }\r\n Fayde.CoreLibrary.add(ColumnDefinitionCollection);\r\n\r\n function ConvertColumnDefinitionCollection (o: any): ColumnDefinitionCollection {\r\n if (!o || o instanceof ColumnDefinitionCollection)\r\n return o;\r\n if (typeof o === \"string\") {\r\n var tokens = (o).split(\" \");\r\n var len = tokens.length;\r\n var cdc = new ColumnDefinitionCollection();\r\n var cd: ColumnDefinition;\r\n for (var i = 0; i < len; i++) {\r\n if (cd = ConvertColumnDefinition(tokens[i]))\r\n cdc.Add(cd);\r\n }\r\n return cdc;\r\n }\r\n return undefined;\r\n }\r\n\r\n nullstone.registerTypeConverter(ColumnDefinitionCollection, ConvertColumnDefinitionCollection);\r\n}","/// \r\n\r\nmodule Fayde.Controls {\r\n export class ItemsControlNode extends ControlNode {\r\n XObject: ItemsControl;\r\n constructor(xobj: ItemsControl) {\r\n super(xobj);\r\n }\r\n\r\n ItemsPresenter: ItemsPresenter = null;\r\n GetDefaultVisualTree(): UIElement {\r\n var presenter = this.ItemsPresenter;\r\n if (!presenter)\r\n (presenter = new ItemsPresenter()).TemplateOwner = this.XObject;\r\n return presenter;\r\n }\r\n }\r\n\r\n export class ItemsControl extends Control {\r\n XamlNode: ItemsControlNode;\r\n CreateNode(): ItemsControlNode { return new ItemsControlNode(this); }\r\n\r\n get IsItemsControl(): boolean { return true; }\r\n\r\n static DisplayMemberPathProperty = DependencyProperty.Register(\"DisplayMemberPath\", () => String, ItemsControl, null, (d, args) => (d).OnDisplayMemberPathChanged(args));\r\n static ItemsPanelProperty = DependencyProperty.Register(\"ItemsPanel\", () => ItemsPanelTemplate, ItemsControl);\r\n static ItemsSourceProperty = DependencyProperty.RegisterFull(\"ItemsSource\", () => nullstone.IEnumerable_, ItemsControl, null, (d, args) => (d).OnItemsSourceChanged(args));\r\n static ItemsProperty = DependencyProperty.RegisterImmutable(\"Items\", () => ItemCollection, ItemsControl);\r\n static ItemTemplateProperty = DependencyProperty.Register(\"ItemTemplate\", () => DataTemplate, ItemsControl, undefined, (d, args) => (d).OnItemTemplateChanged(args));\r\n\r\n static IsItemsHostProperty = DependencyProperty.RegisterAttached(\"IsItemsHost\", () => Boolean, ItemsControl, false);\r\n static GetIsItemsHost(d: DependencyObject): boolean { return d.GetValue(ItemsControl.IsItemsHostProperty) === true; }\r\n static SetIsItemsHost(d: DependencyObject, value: boolean) { d.SetValue(ItemsControl.IsItemsHostProperty, value === true); }\r\n\r\n DisplayMemberPath: string;\r\n ItemsPanel: ItemsPanelTemplate;\r\n ItemsSource: nullstone.IEnumerable;\r\n Items: ItemCollection;\r\n ItemTemplate: DataTemplate;\r\n\r\n OnDisplayMemberPathChanged(e: IDependencyPropertyChangedEventArgs) {\r\n for (var en = this.ItemContainersManager.GetEnumerator(); en.moveNext();) {\r\n this.UpdateContainerTemplate(en.current, en.CurrentItem);\r\n }\r\n }\r\n OnItemsSourceChanged(e: IDependencyPropertyChangedEventArgs) {\r\n //Unsubscribe from old\r\n var nc = Collections.INotifyCollectionChanged_.as(e.OldValue);\r\n if (nc)\r\n nc.CollectionChanged.off(this._OnItemsSourceUpdated, this);\r\n var items = this.Items;\r\n var resetargs = Collections.CollectionChangedEventArgs.Reset(items.ToArray());\r\n\r\n //Reset old\r\n try {\r\n this._SuspendItemsChanged = true;\r\n items.Clear();\r\n } finally {\r\n this._SuspendItemsChanged = false;\r\n }\r\n this.OnItemsChanged(resetargs);\r\n\r\n //Notify new\r\n this._IsDataBound = !!e.NewValue;\r\n var arr = toArray(e.NewValue);\r\n try {\r\n this._SuspendItemsChanged = true;\r\n if (arr)\r\n items.AddRange(arr);\r\n } finally {\r\n this._SuspendItemsChanged = false;\r\n }\r\n if (arr)\r\n this.OnItemsChanged(Collections.CollectionChangedEventArgs.AddRange(arr, 0));\r\n\r\n //Subscribe to new\r\n var nc = Collections.INotifyCollectionChanged_.as(e.NewValue);\r\n if (nc)\r\n nc.CollectionChanged.on(this._OnItemsSourceUpdated, this);\r\n }\r\n\r\n OnItemTemplateChanged (e: IDependencyPropertyChangedEventArgs) {\r\n for (var en = this.ItemContainersManager.GetEnumerator(); en.moveNext();) {\r\n this.UpdateContainerTemplate(en.current, en.CurrentItem);\r\n }\r\n }\r\n\r\n private _ItemContainersManager: Internal.IItemContainersManager;\r\n get ItemContainersManager(): Internal.IItemContainersManager { return this._ItemContainersManager; }\r\n\r\n constructor() {\r\n super();\r\n this.DefaultStyleKey = ItemsControl;\r\n var coll = ItemsControl.ItemsProperty.Initialize(this);\r\n coll.ItemsChanged.on(this._OnItemsUpdated, this);\r\n\r\n this._ItemContainersManager = new Internal.ItemContainersManager(this);\r\n }\r\n\r\n PrepareContainerForItem(container: UIElement, item: any) {\r\n if (this.DisplayMemberPath != null && this.ItemTemplate != null)\r\n throw new InvalidOperationException(\"Cannot set 'DisplayMemberPath' and 'ItemTemplate' simultaneously\");\r\n this.UpdateContainerTemplate(container, item);\r\n }\r\n ClearContainerForItem(container: UIElement, item: any) {\r\n if (container instanceof ContentPresenter) {\r\n var cp = container;\r\n if (cp.Content === item)\r\n cp.Content = null;\r\n } else if (container instanceof ContentControl) {\r\n var cc = container;\r\n if (cc.Content === item)\r\n cc.Content = null;\r\n }\r\n }\r\n GetContainerForItem(): UIElement { return new ContentPresenter(); }\r\n IsItemItsOwnContainer(item: any): boolean { return item instanceof UIElement; }\r\n\r\n private _IsDataBound = false;\r\n private _SuspendItemsChanged = false;\r\n private _OnItemsUpdated(sender: any, e: Collections.CollectionChangedEventArgs) {\r\n if (this._SuspendItemsChanged) //Ignore OnItemsSourceChanged operations\r\n return;\r\n if (this._IsDataBound)\r\n throw new InvalidOperationException(\"Cannot modify Items while bound to ItemsSource.\");\r\n this.OnItemsChanged(e);\r\n }\r\n private _OnItemsSourceUpdated(sender: any, e: Collections.CollectionChangedEventArgs) {\r\n var items = this.Items;\r\n try {\r\n this._SuspendItemsChanged = true;\r\n switch (e.Action) {\r\n case Collections.CollectionChangedAction.Add:\r\n for (var i = 0, len = e.NewItems.length; i < len; i++) {\r\n items.Insert(e.NewStartingIndex + i, e.NewItems[i]);\r\n }\r\n break;\r\n case Collections.CollectionChangedAction.Remove:\r\n for (var i = 0, len = e.OldItems.length; i < len; i++) {\r\n items.RemoveAt(e.OldStartingIndex);\r\n }\r\n break;\r\n case Collections.CollectionChangedAction.Replace:\r\n items.SetValueAt(e.NewStartingIndex, e.NewItems[0]);\r\n break;\r\n case Collections.CollectionChangedAction.Reset:\r\n items.Clear();\r\n break;\r\n }\r\n } finally {\r\n this._SuspendItemsChanged = false;\r\n }\r\n this.OnItemsChanged(e);\r\n }\r\n OnItemsChanged(e: Collections.CollectionChangedEventArgs) {\r\n switch (e.Action) {\r\n case Collections.CollectionChangedAction.Add:\r\n this.OnItemsAdded(e.NewStartingIndex, e.NewItems);\r\n break;\r\n case Collections.CollectionChangedAction.Remove:\r\n this.OnItemsRemoved(e.OldStartingIndex, e.OldItems);\r\n break;\r\n case Collections.CollectionChangedAction.Replace:\r\n this.OnItemsRemoved(e.NewStartingIndex, e.OldItems);\r\n this.OnItemsAdded(e.NewStartingIndex, e.NewItems);\r\n break;\r\n case Collections.CollectionChangedAction.Reset:\r\n this.OnItemsRemoved(0, e.OldItems);\r\n break;\r\n }\r\n }\r\n OnItemsAdded(index: number, newItems: any[]) {\r\n this._ItemContainersManager.OnItemsAdded(index, newItems);\r\n var presenter = this.XamlNode.ItemsPresenter;\r\n if (presenter)\r\n presenter.OnItemsAdded(index, newItems);\r\n }\r\n OnItemsRemoved(index: number, oldItems: any[]) {\r\n var presenter = this.XamlNode.ItemsPresenter;\r\n if (presenter)\r\n presenter.OnItemsRemoved(index, oldItems);\r\n this._ItemContainersManager.OnItemsRemoved(index, oldItems);\r\n }\r\n\r\n private UpdateContainerTemplate(container: UIElement, item: any) {\r\n if (!container || container === item)\r\n return;\r\n\r\n var template: DataTemplate;\r\n if (!(item instanceof UIElement))\r\n template = this.ItemTemplate || this._GetDisplayMemberTemplate();\r\n\r\n if (container instanceof ContentPresenter) {\r\n var cp = container;\r\n cp.ContentTemplate = template;\r\n cp.Content = item;\r\n } else if (container instanceof ContentControl) {\r\n var cc = container;\r\n cc.ContentTemplate = template;\r\n cc.Content = item;\r\n }\r\n }\r\n private _DisplayMemberTemplate: DataTemplate = null;\r\n private _GetDisplayMemberTemplate(): DataTemplate {\r\n if (!this._DisplayMemberTemplate) {\r\n var xm = DisplayTemplate.create(this.DisplayMemberPath || \"\");\r\n this._DisplayMemberTemplate = Markup.Load(this.App, xm);\r\n }\r\n return this._DisplayMemberTemplate;\r\n }\r\n }\r\n Fayde.CoreLibrary.add(ItemsControl);\r\n Markup.Content(ItemsControl, ItemsControl.ItemsProperty);\r\n\r\n function toArray(value: any): any[] {\r\n if (value instanceof Array)\r\n return value;\r\n var enu = nullstone.IEnumerable_.as(value);\r\n if (enu) {\r\n var arr = [];\r\n for (var en = enu.getEnumerator(); en.moveNext();) {\r\n arr.push(en.current);\r\n }\r\n return arr;\r\n }\r\n return null;\r\n }\r\n\r\n module DisplayTemplate {\r\n export function create (dmp: string) {\r\n return Fayde.Markup.CreateXaml(\"\"\r\n , Fayde.XMLNS + \"/itemscontrol/displaymember/\" + dmp);\r\n }\r\n }\r\n}","/// \r\n\r\nmodule Fayde.Controls.Primitives {\r\n export class Selector extends ItemsControl {\r\n static IsSynchronizedWithCurrentItemProperty = DependencyProperty.Register(\"IsSynchronizedWithCurrentItem\", () => Boolean, Selector, null, (d: Selector, args) => d._OnIsSynchronizedWithCurrentItemChanged(args));\r\n static SelectedIndexProperty = DependencyProperty.Register(\"SelectedIndex\", () => Number, Selector, -1, (d: Selector, args) => d._OnSelectedIndexChanged(args));\r\n static SelectedItemProperty = DependencyProperty.Register(\"SelectedItem\", () => Object, Selector, undefined, (d: Selector, args) => d._OnSelectedItemChanged(args));\r\n static SelectedValueProperty = DependencyProperty.Register(\"SelectedValue\", () => Object, Selector, undefined, (d: Selector, args) => d._OnSelectedValueChanged(args));\r\n static SelectedValuePathProperty = DependencyProperty.Register(\"SelectedValuePath\", () => String, Selector, \"\", (d: Selector, args) => d._OnSelectedValuePathChanged(args));\r\n static IsSelectionActiveProperty = DependencyProperty.RegisterReadOnlyCore(\"IsSelectionActive\", () => Boolean, Selector);\r\n static SelectionModeProperty = DependencyProperty.Register(\"SelectionMode\", () => new Enum(SelectionMode), Selector, undefined, (d: Selector, args) => d._OnSelectionModeChanged(args));\r\n IsSynchronizedWithCurrentItem: boolean;\r\n SelectedIndex: number;\r\n SelectedItem: any;\r\n SelectedValue: any;\r\n SelectedValuePath: string;\r\n IsSelectionActive: boolean;\r\n SelectionMode: SelectionMode;\r\n\r\n SelectionChanged: RoutedEvent = new RoutedEvent();\r\n private _Selection: SelectorSelection;\r\n private _SelectedItems: Collections.ObservableCollection = new Collections.ObservableCollection();\r\n _SelectedItemsIsInvalid: boolean = false;\r\n $TemplateScrollViewer: ScrollViewer = null;\r\n private _SelectedValueWalker: Data.PropertyPathWalker = null;\r\n\r\n private get SynchronizeWithCurrentItem(): boolean {\r\n if (!Data.ICollectionView_.is(this.ItemsSource))\r\n return false;\r\n return this.IsSynchronizedWithCurrentItem !== false;\r\n }\r\n\r\n constructor() {\r\n super();\r\n this._Selection = new SelectorSelection(this);\r\n }\r\n\r\n get SelectedItems(): Collections.ObservableCollection {\r\n if (this._SelectedItemsIsInvalid)\r\n this._Selection.RepopulateSelectedItems();\r\n return this._SelectedItems;\r\n }\r\n\r\n private _OnIsSynchronizedWithCurrentItemChanged(args: IDependencyPropertyChangedEventArgs) {\r\n if (args.NewValue === true)\r\n throw new ArgumentException(\"Setting IsSynchronizedWithCurrentItem to 'true' is not supported\");\r\n\r\n if (args.NewValue != null)\r\n return this.SelectedItem = null;\r\n var icv = Data.ICollectionView_.as(this.ItemsSource);\r\n if (icv)\r\n this.SelectedItem = icv.CurrentItem;\r\n }\r\n private _OnSelectedIndexChanged(args: IDependencyPropertyChangedEventArgs) {\r\n if (this._Selection.IsUpdating)\r\n return;\r\n\r\n var items = this.Items;\r\n if (args.NewValue < 0 || args.NewValue >= items.Count)\r\n this._Selection.ClearSelection();\r\n else\r\n this._Selection.Select(items.GetValueAt(args.NewValue));\r\n }\r\n private _OnSelectedItemChanged(args: IDependencyPropertyChangedEventArgs) {\r\n if (this._Selection.IsUpdating)\r\n return;\r\n\r\n if (args.NewValue == null)\r\n this._Selection.ClearSelection();\r\n else if (this.Items.IndexOf(args.NewValue) !== -1)\r\n this._Selection.Select(args.NewValue);\r\n else if (this.Items.IndexOf(args.OldValue) !== -1)\r\n this._Selection.Select(args.OldValue);\r\n else\r\n this._Selection.ClearSelection();\r\n }\r\n private _OnSelectedValueChanged(args: IDependencyPropertyChangedEventArgs) {\r\n if (this._Selection.IsUpdating)\r\n return;\r\n this._SelectItemFromValue(args.NewValue, false);\r\n }\r\n private _OnSelectedValuePathChanged(args: IDependencyPropertyChangedEventArgs) {\r\n this._SelectedValueWalker = !args.NewValue ? null : new Data.PropertyPathWalker(args.NewValue);\r\n this._SelectItemFromValue(this.SelectedValue, true);\r\n }\r\n private _OnSelectionModeChanged(args: DependencyPropertyChangedEventArgs) {\r\n this._Selection.Mode = args.NewValue;\r\n if (args.NewValue !== SelectionMode.Single)\r\n return;\r\n var selIndex = this.SelectedIndex;\r\n if (selIndex === -1)\r\n return;\r\n this._Selection.SelectOnly(this.Items.GetValueAt(selIndex));\r\n }\r\n\r\n OnApplyTemplate() {\r\n super.OnApplyTemplate();\r\n var tsv = this.$TemplateScrollViewer = this.GetTemplateChild(\"ScrollViewer\", ScrollViewer);\r\n if (tsv) {\r\n tsv.$TemplatedParentHandlesScrolling = true;\r\n tsv.HorizontalScrollBarVisibility = Controls.ScrollViewer.GetHorizontalScrollBarVisibility(this);\r\n tsv.VerticalScrollBarVisibility = Controls.ScrollViewer.GetVerticalScrollBarVisibility(this);\r\n }\r\n }\r\n\r\n OnItemsChanged(e: Collections.CollectionChangedEventArgs) {\r\n super.OnItemsChanged(e);\r\n var item: any;\r\n switch (e.Action) {\r\n case Collections.CollectionChangedAction.Add:\r\n var lbi: ListBoxItem;\r\n if (e.NewItems[0] instanceof ListBoxItem) lbi = e.NewItems[0];\r\n if (lbi != null && lbi.IsSelected && !this.SelectedItems.Contains(lbi)) {\r\n this._Selection.Select(lbi);\r\n } else if (this.SelectedItem != null) {\r\n this._Selection.Select(this.SelectedItem);\r\n }\r\n break;\r\n case Collections.CollectionChangedAction.Reset:\r\n var o: any;\r\n var icv = Data.ICollectionView_.as(this.ItemsSource);\r\n if (icv && this.SynchronizeWithCurrentItem)\r\n o = icv.CurrentItem;\r\n else\r\n o = this.SelectedItem;\r\n if (this.Items.Contains(o))\r\n this._Selection.Select(o);\r\n else\r\n this._Selection.ClearSelection();\r\n break;\r\n case Collections.CollectionChangedAction.Remove:\r\n item = e.OldItems[0];\r\n if (this.SelectedItems.Contains(item))\r\n this._Selection.Unselect(item);\r\n else if (e.OldStartingIndex <= this.SelectedIndex)\r\n this._Selection.Select(this.SelectedItem);\r\n break;\r\n case Collections.CollectionChangedAction.Replace:\r\n item = e.OldItems[0];\r\n this._Selection.Unselect(item);\r\n break;\r\n default:\r\n throw new NotSupportedException(\"Collection changed action '\" + e.Action + \"' not supported\");\r\n }\r\n }\r\n OnItemsSourceChanged(args: IDependencyPropertyChangedEventArgs) {\r\n super.OnItemsSourceChanged(args);\r\n\r\n var view = Data.ICollectionView_.as(args.OldValue);\r\n if (view)\r\n view.CurrentChanged.off(this._OnCurrentItemChanged, this);\r\n \r\n view = Data.ICollectionView_.as(args.NewValue);\r\n if (view) {\r\n view.CurrentChanged.on(this._OnCurrentItemChanged, this);\r\n if (this.SynchronizeWithCurrentItem)\r\n this._Selection.SelectOnly(view.CurrentItem);\r\n else\r\n this._Selection.ClearSelection();\r\n } else {\r\n this._Selection.ClearSelection();\r\n }\r\n }\r\n OnItemContainerStyleChanged(oldStyle, newStyle) { }\r\n\r\n ClearContainerForItem(element: UIElement, item: any) {\r\n super.ClearContainerForItem(element, item);\r\n var lbi = element;\r\n lbi.ParentSelector = null;\r\n if (lbi !== item)\r\n lbi.Content = null;\r\n }\r\n PrepareContainerForItem(element: UIElement, item: any) {\r\n super.PrepareContainerForItem(element, item);\r\n var lbi = element;\r\n lbi.ParentSelector = this;\r\n if (this.SelectedItems.Contains(item))\r\n lbi.IsSelected = true;\r\n if (lbi.IsSelected && !this.SelectedItems.Contains(item))\r\n this._Selection.Select(item);\r\n }\r\n\r\n _GetValueFromItem(item: any) {\r\n if (this._SelectedValueWalker == null)\r\n return item;\r\n if (item == null)\r\n return item;\r\n return this._SelectedValueWalker.GetValue(item);\r\n }\r\n private _SelectItemFromValue(selectedValue: any, ignoreSelectedValue?: boolean) {\r\n if (selectedValue == null) {\r\n this._Selection.ClearSelection(ignoreSelectedValue);\r\n return;\r\n }\r\n\r\n var items = this.Items;\r\n var count = items.Count;\r\n for (var i = 0; i < count; i++) {\r\n var item = items.GetValueAt(i);\r\n var val = this._GetValueFromItem(item);\r\n if (nullstone.equals(selectedValue, val)) {\r\n if (!this.SelectedItems.Contains(item))\r\n this._Selection.Select(item);\r\n return;\r\n }\r\n }\r\n this._Selection.ClearSelection(ignoreSelectedValue);\r\n }\r\n\r\n SelectAll() {\r\n this._Selection.SelectAll(this.Items.ToArray());\r\n }\r\n\r\n private _OnCurrentItemChanged(sender, e: nullstone.IEventArgs) {\r\n if (!this._Selection.IsUpdating && this.SynchronizeWithCurrentItem) {\r\n var icv = this.ItemsSource;\r\n if (!nullstone.equals(icv.CurrentItem, this.SelectedItem))\r\n this._Selection.SelectOnly(icv.CurrentItem);\r\n }\r\n }\r\n\r\n _RaiseSelectionChanged(oldVals: any[], newVals: any[]) {\r\n if (!oldVals) oldVals = [];\r\n if (!newVals) newVals = [];\r\n\r\n var lbi: ListBoxItem;\r\n var oldCount = oldVals.length;\r\n var oldValue;\r\n for (var i = 0; i < oldCount; i++) {\r\n oldValue = oldVals[i];\r\n if (oldValue == null)\r\n continue;\r\n lbi = null;\r\n if (oldValue instanceof ListBoxItem) lbi = oldValue;\r\n lbi = lbi || this.ItemContainersManager.ContainerFromItem(oldValue);\r\n if (lbi)\r\n lbi.IsSelected = false;\r\n }\r\n\r\n var newCount = newVals.length;\r\n var newValue;\r\n for (var i = 0; i < newCount; i++) {\r\n newValue = newVals[i];\r\n if (newValue == null)\r\n continue;\r\n lbi = null;\r\n if (newValue instanceof ListBoxItem) lbi = newValue;\r\n lbi = lbi || this.ItemContainersManager.ContainerFromItem(newValue);\r\n if (lbi) {\r\n lbi.IsSelected = true;\r\n lbi.Focus();\r\n }\r\n }\r\n\r\n var args = new SelectionChangedEventArgs(oldVals, newVals);\r\n this.OnSelectionChanged(args);\r\n this.SelectionChanged.raise(this, args);\r\n }\r\n OnSelectionChanged(args: SelectionChangedEventArgs) { }\r\n\r\n NotifyListItemClicked(lbi: ListBoxItem) {\r\n this._Selection.Select(this.ItemContainersManager.ItemFromContainer(lbi));\r\n }\r\n NotifyListItemLoaded(lbi: ListBoxItem) {\r\n if (this.ItemContainersManager.ItemFromContainer(lbi) === this.SelectedItem) {\r\n lbi.IsSelected = true;\r\n lbi.Focus();\r\n }\r\n }\r\n NotifyListItemGotFocus(lbi: ListBoxItem) { }\r\n NotifyListItemLostFocus(lbi: ListBoxItem) { }\r\n }\r\n Fayde.CoreLibrary.add(Selector);\r\n}","module Fayde.Markup {\r\n import XamlMarkup = nullstone.markup.xaml.XamlMarkup;\r\n var lastId = 0;\r\n\r\n export function CreateXaml (xaml: string, uri?: string): XamlMarkup;\r\n export function CreateXaml (el: Element, uri?: string): XamlMarkup;\r\n export function CreateXaml (obj: any, uri?: string): XamlMarkup {\r\n lastId++;\r\n uri = uri || \"http://gen/\" + lastId.toString();\r\n var xm = new XamlMarkup(uri);\r\n var root = (typeof obj === \"string\")\r\n ? xm.loadRoot(obj)\r\n : obj;\r\n if (!root.isDefaultNamespace(Fayde.XMLNS))\r\n throw new XamlParseException(\"Invalid default namespace. [\" + root.lookupNamespaceURI(null) + \"]\");\r\n xm.setRoot(root);\r\n return xm;\r\n }\r\n}","/// \r\n/// \r\n\r\nmodule Fayde.Controls {\r\n var fmd = Markup.CreateXaml(\"\"\r\n , Fayde.XMLNS + \"/contentpresenter/default\");\r\n var fallbackTemplate: DataTemplate;\r\n function getFallbackTemplate (app: Application): DataTemplate {\r\n return fallbackTemplate = fallbackTemplate || Markup.Load(app, fmd);\r\n }\r\n\r\n export class ContentPresenterNode extends FENode {\r\n private _ContentRoot: UIElement;\r\n get ContentRoot(): UIElement { return this._ContentRoot; }\r\n\r\n XObject: ContentPresenter;\r\n constructor(xobj: ContentPresenter) {\r\n super(xobj);\r\n }\r\n\r\n DoApplyTemplateWithError(error: BError): boolean {\r\n if (this._ContentRoot)\r\n return false;\r\n\r\n var xobj = this.XObject;\r\n // This is meant to create {TemplateBinding ...} as a convenience when user doesn't\r\n // This really should check for a value or an expression\r\n if (xobj.TemplateOwner instanceof ContentControl) {\r\n if (!xobj.HasValueOrExpression(ContentPresenter.ContentProperty)) {\r\n xobj.SetValue(ContentPresenter.ContentProperty, new TemplateBindingExpression(\"Content\"));\r\n }\r\n if (!xobj.HasValueOrExpression(ContentPresenter.ContentTemplateProperty)) {\r\n xobj.SetValue(ContentPresenter.ContentTemplateProperty, new TemplateBindingExpression(\"ContentTemplate\"));\r\n }\r\n }\r\n\r\n var content = xobj.Content;\r\n if (content instanceof UIElement) {\r\n this._ContentRoot = content;\r\n xobj.DataContext = undefined;\r\n } else {\r\n xobj.DataContext = content == null ? null : content;\r\n this._ContentRoot = this._GetContentTemplate(content ? content.constructor : null).GetVisualTree(xobj);\r\n }\r\n\r\n if (!this._ContentRoot)\r\n return false;\r\n\r\n return this.AttachVisualChild(this._ContentRoot, error);\r\n }\r\n\r\n ClearRoot() {\r\n if (this._ContentRoot)\r\n this.DetachVisualChild(this._ContentRoot, null);\r\n this._ContentRoot = null;\r\n }\r\n\r\n _ContentChanged(args: IDependencyPropertyChangedEventArgs) {\r\n var isUIContent = args.NewValue instanceof UIElement;\r\n if (isUIContent || args.OldValue instanceof UIElement) {\r\n this.ClearRoot();\r\n } else if (!isUIContent) {\r\n if (this._ShouldInvalidateImplicitTemplate(args.OldValue, args.NewValue))\r\n this.ClearRoot();\r\n this.XObject.DataContext = args.NewValue == null ? null : args.NewValue;\r\n }\r\n this.LayoutUpdater.invalidateMeasure();\r\n }\r\n _ContentTemplateChanged() {\r\n this.ClearRoot();\r\n this.LayoutUpdater.invalidateMeasure();\r\n }\r\n\r\n private _ShouldInvalidateImplicitTemplate(oldValue: any, newValue: any): boolean {\r\n //NOTE: If we are using an implicit data template, we need to make sure we invalidate when Content changes\r\n var octor = oldValue ? oldValue.constructor : null;\r\n var nctor = newValue ? newValue.constructor : null;\r\n if (octor !== nctor)\r\n return true;\r\n if (octor === Object)\r\n return true;\r\n return false;\r\n }\r\n\r\n private _GetContentTemplate(type: Function): DataTemplate {\r\n var dt = this.XObject.ContentTemplate;\r\n if (dt)\r\n return dt;\r\n\r\n if (type && typeof type === \"function\") {\r\n //Traverse logical tree looking in Resources for implicitly typed DataTemplate\r\n var node = this;\r\n var rd: ResourceDictionary;\r\n while (node) {\r\n var xobj = node.XObject;\r\n if (xobj instanceof FrameworkElement && (rd = (xobj).Resources)) {\r\n dt = rd.Get(type);\r\n if (dt instanceof DataTemplate)\r\n return dt;\r\n }\r\n node = node.ParentNode;\r\n }\r\n var surface = this.LayoutUpdater.tree.surface;\r\n var app = surface ? surface.App : null;\r\n if (app) {\r\n dt = app.Resources.Get(type);\r\n if (dt instanceof DataTemplate)\r\n return dt;\r\n }\r\n }\r\n\r\n return getFallbackTemplate(this.XObject.App);\r\n }\r\n }\r\n\r\n export class ContentPresenter extends FrameworkElement {\r\n XamlNode: ContentPresenterNode;\r\n CreateNode(): ContentPresenterNode { return new ContentPresenterNode(this); }\r\n\r\n static ContentProperty = DependencyProperty.Register(\"Content\", () => Object, ContentPresenter, undefined, (d: ContentPresenter, args) => d.XamlNode._ContentChanged(args));\r\n static ContentTemplateProperty = DependencyProperty.Register(\"ContentTemplate\", () => DataTemplate, ContentPresenter, undefined, (d: ContentPresenter, args) => d.XamlNode._ContentTemplateChanged());\r\n Content: any;\r\n ContentTemplate: DataTemplate;\r\n }\r\n Fayde.CoreLibrary.add(ContentPresenter);\r\n Markup.Content(ContentPresenter, ContentPresenter.ContentProperty);\r\n}","/// \r\n\r\nmodule Fayde.Controls.Primitives {\r\n import PopupUpdater = minerva.controls.popup.PopupUpdater;\r\n\r\n export class PopupNode extends FENode {\r\n LayoutUpdater: PopupUpdater;\r\n XObject: Popup;\r\n\r\n ClickedOutside = new nullstone.Event();\r\n\r\n OnIsAttachedChanged (newIsAttached: boolean) {\r\n super.OnIsAttachedChanged(newIsAttached);\r\n this.RegisterInitiator(this.VisualParentNode.XObject);\r\n if (!newIsAttached && this.XObject.IsOpen)\r\n this.XObject.IsOpen = false;\r\n }\r\n\r\n private _Overlay: Canvas = null;\r\n private _Catcher: Canvas = null;\r\n\r\n EnsureOverlay (): Canvas {\r\n if (!this._Overlay) {\r\n this._Overlay = new Canvas();\r\n this.LayoutUpdater.setLayer(this._Overlay.XamlNode.LayoutUpdater);\r\n }\r\n return this._Overlay;\r\n }\r\n\r\n EnsureCatcher (): Canvas {\r\n var catcher = this._Catcher;\r\n if (this.ClickedOutside.has && !catcher) {\r\n catcher = this._Catcher = new Canvas();\r\n catcher.Background = Media.SolidColorBrush.FromColor(Color.FromRgba(255, 255, 255, 0));\r\n catcher.LayoutUpdated.on(this.UpdateCatcher, this);\r\n catcher.MouseLeftButtonDown.on(this._RaiseClickedOutside, this);\r\n this.EnsureOverlay().Children.Insert(0, catcher);\r\n }\r\n return catcher;\r\n }\r\n\r\n UpdateCatcher () {\r\n var root = this._Overlay;\r\n if (!root)\r\n return;\r\n var surface = this.LayoutUpdater.tree.initiatorSurface;\r\n if (!surface)\r\n return;\r\n root.Width = surface.width;\r\n root.Height = surface.height;\r\n var catcher = this._Catcher;\r\n if (!catcher)\r\n return;\r\n catcher.Width = root.Width;\r\n catcher.Height = root.Height;\r\n }\r\n\r\n private _RaiseClickedOutside (sender, e) {\r\n this.ClickedOutside.raise(this, null);\r\n }\r\n\r\n RegisterInitiator (initiator: UIElement) {\r\n if (!(initiator instanceof UIElement))\r\n return;\r\n this.LayoutUpdater.setInitiator(initiator.XamlNode.LayoutUpdater);\r\n }\r\n }\r\n\r\n export class Popup extends FrameworkElement {\r\n XamlNode: PopupNode;\r\n CreateNode (): PopupNode { return new PopupNode(this); }\r\n CreateLayoutUpdater () { return new PopupUpdater(); }\r\n\r\n static ChildProperty = DependencyProperty.Register(\"Child\", () => UIElement, Popup);\r\n static HorizontalOffsetProperty = DependencyProperty.Register(\"HorizontalOffset\", () => Number, Popup, 0.0);\r\n static VerticalOffsetProperty = DependencyProperty.Register(\"VerticalOffset\", () => Number, Popup, 0.0);\r\n static IsOpenProperty = DependencyProperty.Register(\"IsOpen\", () => Boolean, Popup, false);\r\n Child: UIElement;\r\n HorizontalOffset: number;\r\n VerticalOffset: number;\r\n IsOpen: boolean;\r\n\r\n Opened = new nullstone.Event();\r\n Closed = new nullstone.Event();\r\n\r\n WatchOutsideClick (callback: () => void, closure: any) {\r\n this.XamlNode.ClickedOutside.on(callback, closure);\r\n this.XamlNode.EnsureCatcher();\r\n }\r\n }\r\n Fayde.CoreLibrary.add(Popup);\r\n Markup.Content(Popup, Popup.ChildProperty);\r\n\r\n module reactions {\r\n UIReaction(Popup.IsOpenProperty, (upd, ov, nv, popup?: Popup) => {\r\n if (nv === true) {\r\n popup.Opened.raiseAsync(popup, null);\r\n popup.XamlNode.UpdateCatcher();\r\n } else {\r\n popup.Closed.raiseAsync(popup, null);\r\n }\r\n minerva.controls.popup.reactTo.isOpen(upd, ov, nv);\r\n }, false);\r\n UIReaction(Popup.ChildProperty, (upd, ov, nv, popup?: Popup) => {\r\n var overlay = popup.XamlNode.EnsureOverlay();\r\n if (ov) {\r\n Providers.InheritedStore.ClearInheritedOnRemove(popup, ov.XamlNode);\r\n overlay.Children.Remove(ov);\r\n }\r\n upd.setChild(nv ? nv.XamlNode.LayoutUpdater : null);\r\n if (nv) {\r\n popup.XamlNode.EnsureCatcher();\r\n overlay.Children.Add(nv);\r\n Providers.InheritedStore.PropagateInheritedOnAdd(popup, nv.XamlNode);\r\n }\r\n }, false, false);\r\n UIReaction(Popup.HorizontalOffsetProperty, minerva.controls.popup.reactTo.horizontalOffset, false);\r\n UIReaction(Popup.VerticalOffsetProperty, minerva.controls.popup.reactTo.verticalOffset, false);\r\n }\r\n}","module Fayde.Controls.Primitives {\r\n export interface IScrollInfo {\r\n ScrollOwner: ScrollViewer;\r\n\r\n LineUp(): boolean;\r\n LineDown(): boolean;\r\n LineLeft(): boolean;\r\n LineRight(): boolean;\r\n\r\n MouseWheelUp(): boolean;\r\n MouseWheelDown(): boolean;\r\n MouseWheelLeft(): boolean;\r\n MouseWheelRight(): boolean;\r\n\r\n PageUp(): boolean;\r\n PageDown(): boolean;\r\n PageLeft(): boolean;\r\n PageRight(): boolean;\r\n\r\n MakeVisible(uie: UIElement, rectangle: minerva.Rect): minerva.Rect;\r\n\r\n SetHorizontalOffset(offset: number): boolean;\r\n SetVerticalOffset(offset: number): boolean;\r\n\r\n CanHorizontallyScroll: boolean;\r\n CanVerticallyScroll: boolean;\r\n ExtentHeight: number;\r\n ExtentWidth: number;\r\n HorizontalOffset: number;\r\n VerticalOffset: number;\r\n ViewportHeight: number;\r\n ViewportWidth: number;\r\n }\r\n export var IScrollInfo_ = new nullstone.Interface(\"IScrollInfo\");\r\n}","/// \r\n/// \r\n\r\nmodule Fayde.Controls {\r\n export class ScrollContentPresenter extends ContentPresenter implements Primitives.IScrollInfo {\r\n CreateLayoutUpdater() {\r\n var updater = new minerva.controls.scrollcontentpresenter.ScrollContentPresenterUpdater();\r\n updater.assets.scrollData = this._ScrollData = new Primitives.ScrollData();\r\n return updater;\r\n }\r\n\r\n private _ScrollData: Primitives.ScrollData;\r\n private _IsClipPropertySet: boolean = false;\r\n private _ClippingRectangle: Media.RectangleGeometry = null;\r\n\r\n get ScrollOwner(): ScrollViewer { return this._ScrollData.scrollOwner; }\r\n set ScrollOwner(value: ScrollViewer) { this._ScrollData.scrollOwner = value; }\r\n get CanHorizontallyScroll(): boolean { return this._ScrollData.canHorizontallyScroll;; }\r\n set CanHorizontallyScroll(value: boolean) {\r\n var sd = this._ScrollData;\r\n if (sd.canHorizontallyScroll !== value) {\r\n sd.canHorizontallyScroll = value;\r\n this.XamlNode.LayoutUpdater.invalidateMeasure();\r\n }\r\n }\r\n get CanVerticallyScroll(): boolean { return this._ScrollData.canVerticallyScroll; }\r\n set CanVerticallyScroll(value: boolean) {\r\n var sd = this._ScrollData;\r\n if (sd.canVerticallyScroll !== value) {\r\n sd.canVerticallyScroll = value;\r\n this.XamlNode.LayoutUpdater.invalidateMeasure();\r\n }\r\n }\r\n get ExtentWidth(): number { return this._ScrollData.extentWidth; }\r\n get ExtentHeight(): number { return this._ScrollData.extentHeight; }\r\n get ViewportWidth(): number { return this._ScrollData.viewportWidth; }\r\n get ViewportHeight(): number { return this._ScrollData.viewportHeight; }\r\n get HorizontalOffset(): number { return this._ScrollData.offsetX; }\r\n get VerticalOffset(): number { return this._ScrollData.offsetY; }\r\n LineUp(): boolean { return this.SetVerticalOffset(this._ScrollData.offsetY - 16); }\r\n LineDown(): boolean { return this.SetVerticalOffset(this._ScrollData.offsetY + 16); }\r\n LineLeft(): boolean { return this.SetHorizontalOffset(this._ScrollData.offsetX - 16); }\r\n LineRight(): boolean { return this.SetHorizontalOffset(this._ScrollData.offsetX + 16); }\r\n MouseWheelUp(): boolean { return this.SetVerticalOffset(this._ScrollData.offsetY - 48); }\r\n MouseWheelDown(): boolean { return this.SetVerticalOffset(this._ScrollData.offsetY + 48); }\r\n MouseWheelLeft(): boolean { return this.SetHorizontalOffset(this._ScrollData.offsetX - 48); }\r\n MouseWheelRight(): boolean { return this.SetHorizontalOffset(this._ScrollData.offsetX + 48); }\r\n PageUp(): boolean { return this.SetVerticalOffset(this._ScrollData.offsetY - this._ScrollData.viewportHeight); }\r\n PageDown(): boolean { return this.SetVerticalOffset(this._ScrollData.offsetY + this._ScrollData.viewportHeight); }\r\n PageLeft(): boolean { return this.SetHorizontalOffset(this._ScrollData.offsetX - this._ScrollData.viewportWidth); }\r\n PageRight(): boolean { return this.SetHorizontalOffset(this._ScrollData.offsetX + this._ScrollData.viewportWidth); }\r\n MakeVisible(uie: UIElement, viewport: minerva.Rect): minerva.Rect {\r\n var vis = new minerva.Rect();\r\n if (minerva.Rect.isEmpty(viewport) || !uie || uie === this || !this.XamlNode.IsAncestorOf(uie.XamlNode))\r\n return vis;\r\n\r\n var generalTransform = uie.TransformToVisual(this);\r\n var xpoint = generalTransform.Transform(viewport);\r\n minerva.Size.copyTo(viewport, vis);\r\n minerva.Point.copyTo(xpoint, vis);\r\n return vis;\r\n\r\n //TODO: Not sure why this was skipped\r\n /*\r\n var irect = new minerva.Rect();\r\n minerva.Rect.set(irect, this.HorizontalOffset, this.VerticalOffset, this.ViewportWidth, this.ViewportHeight);\r\n viewport.X += irect.X;\r\n viewport.Y += irect.Y;\r\n var num = computeScrollOffsetWithMinimalScroll(irect.X, irect.X + irect.Width, viewport.X, viewport.X + viewport.Width);\r\n var num1 = computeScrollOffsetWithMinimalScroll(irect.Y, irect.Y + irect.Height, viewport.Y, viewport.Y + viewport.Height);\r\n this.SetHorizontalOffset(num);\r\n this.SetVerticalOffset(num1);\r\n irect.X = num;\r\n irect.Y = num1;\r\n minerva.Rect.intersection(viewport, irect);\r\n if (!minerva.Rect.isEmpty(viewport)) {\r\n viewport.X -= irect.X;\r\n viewport.Y -= irect.Y;\r\n }\r\n return viewport;\r\n */\r\n }\r\n SetHorizontalOffset(offset: number): boolean {\r\n if (isNaN(offset))\r\n throw new ArgumentException(\"Offset is not a number.\");\r\n var sd = this._ScrollData;\r\n if (!sd.canHorizontallyScroll)\r\n return false;\r\n offset = Math.max(0, Math.min(offset, sd.extentWidth - sd.viewportWidth));\r\n if (NumberEx.AreClose(this._ScrollData.offsetX, offset))\r\n return false;\r\n\r\n sd.cachedOffsetX = offset;\r\n this.XamlNode.LayoutUpdater.invalidateArrange();\r\n return true;\r\n }\r\n SetVerticalOffset(offset: number): boolean {\r\n if (isNaN(offset))\r\n throw new ArgumentException(\"Offset is not a number.\");\r\n var sd = this._ScrollData;\r\n if (!sd.canVerticallyScroll)\r\n return false;\r\n offset = Math.max(0, Math.min(offset, sd.extentHeight - sd.viewportHeight));\r\n if (NumberEx.AreClose(this._ScrollData.offsetY, offset))\r\n return false;\r\n\r\n sd.cachedOffsetY = offset;\r\n this.XamlNode.LayoutUpdater.invalidateArrange();\r\n return true;\r\n }\r\n\r\n OnApplyTemplate() {\r\n super.OnApplyTemplate();\r\n\r\n var sv: ScrollViewer;\r\n if (this.TemplateOwner instanceof ScrollViewer)\r\n sv = this.TemplateOwner;\r\n else\r\n return;\r\n\r\n var content = this.Content;\r\n var info = Primitives.IScrollInfo_.as(content);\r\n if (!info && content instanceof ItemsPresenter) {\r\n var ip = content;\r\n var err = new BError();\r\n ip.XamlNode.ApplyTemplateWithError(err);\r\n if (err.Message)\r\n err.ThrowException();\r\n info = Primitives.IScrollInfo_.as(ip.Panel);\r\n }\r\n\r\n if (!info)\r\n info = this;\r\n\r\n info.CanHorizontallyScroll = sv.HorizontalScrollBarVisibility !== ScrollBarVisibility.Disabled;\r\n info.CanVerticallyScroll = sv.VerticalScrollBarVisibility !== ScrollBarVisibility.Disabled;\r\n info.ScrollOwner = sv;\r\n sv.ScrollInfo = info;\r\n sv.InvalidateScrollInfo();\r\n }\r\n\r\n }\r\n Fayde.CoreLibrary.add(ScrollContentPresenter);\r\n nullstone.addTypeInterfaces(ScrollContentPresenter, Primitives.IScrollInfo_);\r\n\r\n function computeScrollOffsetWithMinimalScroll(topView, bottomView, topChild, bottomChild) {\r\n var flag = NumberEx.IsLessThanClose(topChild, topView) && NumberEx.IsLessThanClose(bottomChild, bottomView);\r\n var flag1 = NumberEx.IsGreaterThanClose(topChild, topView) && NumberEx.IsGreaterThanClose(bottomChild, bottomView);\r\n\r\n var flag4 = (bottomChild - topChild) > (bottomView - topView);\r\n if ((!flag || flag4) && (!flag1 || !flag4)) {\r\n if (flag || flag1)\r\n return bottomChild - bottomView - topView;\r\n return topView;\r\n }\r\n return topChild;\r\n }\r\n}","/// \r\n\r\nmodule Fayde.Controls.Primitives {\r\n export class RangeBase extends Controls.Control {\r\n static MinimumProperty = DependencyProperty.RegisterFull(\"Minimum\", () => Number, RangeBase, 0, (d, args) => (d)._Coercer.OnMinimumChanged(args.OldValue, args.NewValue), undefined, false, numberValidator);\r\n static MaximumProperty = DependencyProperty.RegisterFull(\"Maximum\", () => Number, RangeBase, 1, (d, args) => (d)._Coercer.OnMaximumChanged(args.OldValue, args.NewValue), undefined, false, numberValidator);\r\n static LargeChangeProperty = DependencyProperty.RegisterFull(\"LargeChange\", () => Number, RangeBase, 1, undefined, undefined, false, changeValidator);\r\n static SmallChangeProperty = DependencyProperty.RegisterFull(\"SmallChange\", () => Number, RangeBase, 0.1, undefined, undefined, false, changeValidator);\r\n static ValueProperty = DependencyProperty.RegisterFull(\"Value\", () => Number, RangeBase, 0, (d, args) => (d)._Coercer.OnValueChanged(args.OldValue, args.NewValue), undefined, false, numberValidator);\r\n\r\n Minimum: number;\r\n Maximum: number;\r\n SmallChange: number;\r\n LargeChange: number;\r\n Value: number;\r\n \r\n OnMinimumChanged(oldMin: number, newMin: number) { }\r\n OnMaximumChanged(oldMax: number, newMax: number) { }\r\n OnValueChanged(oldVal: number, newVal: number) {\r\n this.ValueChanged.raise(this, new RoutedPropertyChangedEventArgs(oldVal, newVal));\r\n }\r\n ValueChanged = new RoutedPropertyChangedEvent();\r\n\r\n private _Coercer: Internal.IRangeCoercer;\r\n\r\n constructor() {\r\n super();\r\n this._Coercer = new Internal.RangeCoercer(this, \r\n (val) => this.SetCurrentValue(RangeBase.MaximumProperty, val),\r\n (val) => this.SetCurrentValue(RangeBase.ValueProperty, val));\r\n }\r\n }\r\n Fayde.CoreLibrary.add(RangeBase);\r\n\r\n function numberValidator(d: DependencyObject, propd: DependencyProperty, value: any): boolean {\r\n if (typeof value !== \"number\")\r\n return false;\r\n if (isNaN(value))\r\n return false;\r\n if (!isFinite(value))\r\n return false;\r\n return true;\r\n }\r\n function changeValidator(d: DependencyObject, propd: DependencyProperty, value: any): boolean {\r\n if (!numberValidator(d, propd, value))\r\n return false;\r\n return value >= 0;\r\n }\r\n}","/// \r\n\r\nmodule Fayde.Controls.Primitives {\r\n export class RepeatButton extends ButtonBase {\r\n static DelayProperty = DependencyProperty.Register(\"Delay\", () => Number, RepeatButton, 500, (d: RepeatButton, args) => d.OnDelayChanged(args));\r\n static IntervalProperty = DependencyProperty.Register(\"Interval\", () => Number, RepeatButton, 33, (d: RepeatButton, args) => d.OnIntervalChanged(args));\r\n Delay: number;\r\n Interval: number;\r\n\r\n private _KeyboardCausingRepeat: boolean = false;\r\n private _MouseCausingRepeat: boolean = false;\r\n _MousePosition: Point = null;\r\n private _IntervalID: number = null;\r\n private _NewInterval: number = null;\r\n\r\n constructor() {\r\n super();\r\n this.ClickMode = ClickMode.Press;\r\n this.DefaultStyleKey = RepeatButton;\r\n }\r\n\r\n OnApplyTemplate() {\r\n super.OnApplyTemplate();\r\n this.UpdateVisualState(false);\r\n }\r\n\r\n OnDelayChanged(args: IDependencyPropertyChangedEventArgs) {\r\n if (args.NewValue < 0)\r\n throw new ArgumentException(\"Delay Property cannot be negative.\");\r\n }\r\n OnIntervalChanged(args: IDependencyPropertyChangedEventArgs) {\r\n if (args.NewValue < 0)\r\n throw new ArgumentException(\"Interval Property cannot be negative.\");\r\n this._NewInterval = args.NewValue;\r\n }\r\n\r\n OnIsEnabledChanged(e: IDependencyPropertyChangedEventArgs) {\r\n super.OnIsEnabledChanged(e);\r\n this._KeyboardCausingRepeat = false;\r\n this._MouseCausingRepeat = false;\r\n this._UpdateRepeatState();\r\n }\r\n OnKeyDown(e: Input.KeyEventArgs) {\r\n if (e.Key === Input.Key.Space && this.ClickMode !== ClickMode.Hover) {\r\n this._KeyboardCausingRepeat = true;\r\n this._UpdateRepeatState();\r\n }\r\n super.OnKeyDown(e);\r\n }\r\n OnKeyUp(e: Input.KeyEventArgs) {\r\n super.OnKeyUp(e);\r\n if (e.Key === Input.Key.Space && this.ClickMode !== ClickMode.Hover) {\r\n this._KeyboardCausingRepeat = false;\r\n this._UpdateRepeatState();\r\n }\r\n this.UpdateVisualState();\r\n }\r\n OnLostFocus(e: RoutedEventArgs) {\r\n super.OnLostFocus(e);\r\n if (this.ClickMode !== ClickMode.Hover) {\r\n this._KeyboardCausingRepeat = false;\r\n this._MouseCausingRepeat = false;\r\n this._UpdateRepeatState();\r\n }\r\n }\r\n OnMouseEnter(e: Input.MouseEventArgs) {\r\n super.OnMouseEnter(e);\r\n if (this.ClickMode === ClickMode.Hover) {\r\n this._MouseCausingRepeat = true;\r\n this._UpdateRepeatState();\r\n }\r\n this.UpdateVisualState();\r\n this._UpdateMousePosition(e);\r\n }\r\n OnMouseLeave(e: Input.MouseEventArgs) {\r\n super.OnMouseLeave(e);\r\n if (this.ClickMode === ClickMode.Hover) {\r\n this._MouseCausingRepeat = false;\r\n this._UpdateRepeatState();\r\n }\r\n this.UpdateVisualState();\r\n }\r\n OnMouseLeftButtonDown(e: Input.MouseButtonEventArgs) {\r\n if (e.Handled)\r\n return;\r\n super.OnMouseLeftButtonDown(e);\r\n if (this.ClickMode !== ClickMode.Hover) {\r\n this._MouseCausingRepeat = true;\r\n this._UpdateRepeatState();\r\n }\r\n }\r\n OnMouseLeftButtonUp(e: Input.MouseButtonEventArgs) {\r\n if (e.Handled)\r\n return;\r\n super.OnMouseLeftButtonUp(e);\r\n if (this.ClickMode !== ClickMode.Hover) {\r\n this._MouseCausingRepeat = false;\r\n this._UpdateRepeatState();\r\n }\r\n this.UpdateVisualState();\r\n }\r\n OnMouseMove(e: Input.MouseEventArgs) {\r\n this._UpdateMousePosition(e);\r\n }\r\n\r\n private _UpdateMousePosition(e: Input.MouseEventArgs) {\r\n var curNode: XamlNode = this.XamlNode;\r\n var parentNode: FENode = curNode;\r\n while (curNode instanceof FENode) {\r\n parentNode = curNode;\r\n curNode = curNode.ParentNode;\r\n }\r\n this._MousePosition = e.GetPosition(parentNode.XObject);\r\n }\r\n\r\n private _UpdateRepeatState() {\r\n if (this._MouseCausingRepeat || this._KeyboardCausingRepeat) {\r\n if (this._IntervalID == null)\r\n this._IntervalID = window.setInterval(() => this._StartRepeatingAfterDelay(), this.Delay);\r\n } else {\r\n if (this._IntervalID != null)\r\n window.clearInterval(this._IntervalID);\r\n this._IntervalID = null;\r\n }\r\n }\r\n\r\n private _StartRepeatingAfterDelay() {\r\n window.clearInterval(this._IntervalID);\r\n this._IntervalID = window.setInterval(() => this._OnTimeout(), this.Interval);\r\n }\r\n private _OnTimeout() {\r\n if (this._NewInterval != null) {\r\n window.clearInterval(this._IntervalID);\r\n this._IntervalID = window.setInterval(() => this._OnTimeout(), this._NewInterval);\r\n this._NewInterval = null;\r\n }\r\n\r\n if (!this.IsPressed)\r\n return;\r\n\r\n if (this._KeyboardCausingRepeat) {\r\n this.OnClick();\r\n return;\r\n }\r\n\r\n var els = VisualTreeHelper.FindElementsInHostCoordinates(this._MousePosition, this);\r\n if (els.indexOf(this) > -1) {\r\n this.OnClick();\r\n }\r\n }\r\n }\r\n Fayde.CoreLibrary.add(RepeatButton);\r\n TemplateVisualStates(RepeatButton, \r\n { GroupName: \"CommonStates\", Name: \"Normal\" },\r\n { GroupName: \"CommonStates\", Name: \"MouseOver\" },\r\n { GroupName: \"CommonStates\", Name: \"Pressed\" },\r\n { GroupName: \"CommonStates\", Name: \"Disabled\" },\r\n { GroupName: \"FocusStates\", Name: \"Unfocused\" },\r\n { GroupName: \"FocusStates\", Name: \"Focused\" });\r\n}","/// \r\n\r\nmodule Fayde.Controls.Primitives {\r\n export class Thumb extends Control {\r\n private _PreviousPosition: Point = null;\r\n private _Origin: Point = null;\r\n\r\n DragCompleted = new RoutedEvent();\r\n DragDelta = new RoutedEvent();\r\n DragStarted = new RoutedEvent();\r\n\r\n static IsDraggingProperty = DependencyProperty.RegisterReadOnly(\"IsDragging\", () => Boolean, Thumb, false, (d, args) => (d).OnDraggingChanged(args));\r\n static IsFocusedProperty = DependencyProperty.RegisterReadOnly(\"IsFocused\", () => Boolean, Thumb);\r\n IsDragging: boolean;\r\n IsFocused: boolean;\r\n\r\n constructor() {\r\n super();\r\n this.DefaultStyleKey = Thumb;\r\n }\r\n\r\n OnApplyTemplate() {\r\n super.OnApplyTemplate();\r\n this.UpdateVisualState(false);\r\n }\r\n\r\n private OnDraggingChanged(args: IDependencyPropertyChangedEventArgs) {\r\n this.UpdateVisualState();\r\n }\r\n\r\n OnGotFocus(e: RoutedEventArgs) {\r\n super.OnGotFocus(e);\r\n this._FocusChanged(Surface.HasFocus(this));\r\n }\r\n OnLostFocus(e: RoutedEventArgs) {\r\n super.OnLostFocus(e);\r\n this._FocusChanged(Surface.HasFocus(this));\r\n }\r\n private _FocusChanged(hasFocus: boolean) {\r\n this.SetCurrentValue(Thumb.IsFocusedProperty, hasFocus);\r\n this.UpdateVisualState();\r\n }\r\n\r\n OnLostMouseCapture(e: Input.MouseEventArgs) {\r\n if (!this.IsDragging || !this.IsEnabled)\r\n return;\r\n this.SetCurrentValue(Thumb.IsDraggingProperty, false);\r\n this._RaiseDragCompleted(false);\r\n }\r\n OnMouseEnter(e: Input.MouseEventArgs) {\r\n if (this.IsEnabled)\r\n this.UpdateVisualState();\r\n }\r\n OnMouseLeave(e: Input.MouseEventArgs) {\r\n if (this.IsEnabled)\r\n this.UpdateVisualState();\r\n }\r\n OnMouseLeftButtonDown(e: Input.MouseButtonEventArgs) {\r\n super.OnMouseLeftButtonDown(e);\r\n if (e.Handled || this.IsDragging || !this.IsEnabled)\r\n return;\r\n e.Handled = true;\r\n this.CaptureMouse();\r\n this.SetCurrentValue(Thumb.IsDraggingProperty, true);\r\n\r\n var vpNode = this.XamlNode.VisualParentNode;\r\n this._Origin = this._PreviousPosition = e.GetPosition((vpNode) ? vpNode.XObject : undefined);\r\n var success = false;\r\n try {\r\n this._RaiseDragStarted();\r\n success = true;\r\n } finally {\r\n if (!success)\r\n this.CancelDrag();\r\n }\r\n }\r\n OnMouseMove(e: Input.MouseEventArgs) {\r\n if (!this.IsDragging)\r\n return;\r\n var vpNode = this.XamlNode.VisualParentNode;\r\n var p = e.GetPosition((vpNode) ? vpNode.XObject : undefined);\r\n if (!minerva.Point.isEqual(p, this._PreviousPosition)) {\r\n this._RaiseDragDelta(p.x - this._PreviousPosition.x, p.y - this._PreviousPosition.y);\r\n this._PreviousPosition = p;\r\n }\r\n }\r\n\r\n OnLostTouchCapture(e: Input.TouchEventArgs) {\r\n super.OnLostTouchCapture(e);\r\n if (!this.IsDragging || !this.IsEnabled)\r\n return;\r\n this.SetCurrentValue(Thumb.IsDraggingProperty, false);\r\n this._RaiseDragCompleted(false);\r\n }\r\n OnTouchEnter(e: Input.TouchEventArgs) {\r\n super.OnTouchEnter(e);\r\n if (this.IsEnabled)\r\n this.UpdateVisualState();\r\n }\r\n OnTouchLeave(e: Input.TouchEventArgs) {\r\n super.OnTouchLeave(e);\r\n if (this.IsEnabled)\r\n this.UpdateVisualState();\r\n }\r\n OnTouchDown(e: Input.TouchEventArgs) {\r\n super.OnTouchDown(e);\r\n if (e.Handled || this.IsDragging || !this.IsEnabled)\r\n return;\r\n e.Handled = true;\r\n e.Device.Capture(this);\r\n this.SetCurrentValue(Thumb.IsDraggingProperty, true);\r\n\r\n var vpNode = this.XamlNode.VisualParentNode;\r\n var tp = e.GetTouchPoint(vpNode ? vpNode.XObject : undefined);\r\n this._Origin = this._PreviousPosition = tp.Position;\r\n var success = false;\r\n try {\r\n this._RaiseDragStarted();\r\n success = true;\r\n } finally {\r\n if (!success)\r\n this.CancelDrag();\r\n }\r\n }\r\n OnTouchUp(e: Input.TouchEventArgs) {\r\n super.OnTouchUp(e);\r\n if (e.Handled || !this.IsDragging || !this.IsEnabled)\r\n return;\r\n e.Handled = true;\r\n e.Device.ReleaseCapture(this);\r\n }\r\n OnTouchMove(e: Input.TouchEventArgs) {\r\n super.OnTouchMove(e);\r\n if (!this.IsDragging || e.Device.Captured !== this)\r\n return;\r\n var vpNode = this.XamlNode.VisualParentNode;\r\n var tp = e.Device.GetTouchPoint(vpNode ? vpNode.XObject : undefined);\r\n var pos = tp.Position;\r\n if (!minerva.Point.isEqual(pos, this._PreviousPosition)) {\r\n this._RaiseDragDelta(pos.x - this._PreviousPosition.x, pos.y - this._PreviousPosition.y);\r\n this._PreviousPosition = pos;\r\n }\r\n }\r\n\r\n CancelDrag() {\r\n if (!this.IsDragging)\r\n return;\r\n this.SetCurrentValue(Thumb.IsDraggingProperty, false);\r\n this._RaiseDragCompleted(true);\r\n }\r\n\r\n private _RaiseDragStarted() {\r\n this.DragStarted.raise(this, new DragStartedEventArgs(this._Origin.x, this._Origin.y));\r\n }\r\n private _RaiseDragDelta(x: number, y: number) {\r\n this.DragDelta.raise(this, new DragDeltaEventArgs(x, y));\r\n }\r\n private _RaiseDragCompleted(canceled: boolean) {\r\n this.DragCompleted.raise(this, new DragCompletedEventArgs(this._PreviousPosition.x - this._Origin.x, this._PreviousPosition.y - this._Origin.y, canceled));\r\n }\r\n\r\n GoToStateCommon(gotoFunc: (state: string) => boolean): boolean {\r\n if (!this.IsEnabled)\r\n return gotoFunc(\"Disabled\");\r\n if (this.IsDragging)\r\n return gotoFunc(\"Pressed\");\r\n if (this.IsMouseOver)\r\n return gotoFunc(\"MouseOver\");\r\n return gotoFunc(\"Normal\");\r\n }\r\n }\r\n Fayde.CoreLibrary.add(Thumb);\r\n TemplateVisualStates(Thumb,\r\n { GroupName: \"CommonStates\", Name: \"Normal\" },\r\n { GroupName: \"CommonStates\", Name: \"MouseOver\" },\r\n { GroupName: \"CommonStates\", Name: \"Pressed\" },\r\n { GroupName: \"CommonStates\", Name: \"Disabled\" },\r\n { GroupName: \"FocusStates\", Name: \"Unfocused\" },\r\n { GroupName: \"FocusStates\", Name: \"Focused\" });\r\n}","/// \r\n/// \r\n/// \r\n\r\nmodule Fayde.Controls.Primitives {\r\n export class ScrollBar extends RangeBase {\r\n private _DragValue: number = 0;\r\n\r\n Scroll = new RoutedEvent();\r\n\r\n static OrientationProperty = DependencyProperty.Register(\"Orientation\", () => new Enum(Orientation), ScrollBar, Orientation.Horizontal, (d, args) => (d)._OnOrientationChanged());\r\n static ViewportSizeProperty = DependencyProperty.Register(\"ViewportSize\", () => Number, ScrollBar, 0, (d, args) => (d)._UpdateTrackLayout());\r\n Orientation: Orientation;\r\n ViewportSize: number;\r\n\r\n get IsDragging(): boolean {\r\n if (this.$HorizontalThumb)\r\n return this.$HorizontalThumb.IsDragging;\r\n if (this.$VerticalThumb)\r\n return this.$VerticalThumb.IsDragging;\r\n return false;\r\n }\r\n\r\n constructor() {\r\n super();\r\n this.DefaultStyleKey = ScrollBar;\r\n this.SizeChanged.on(this._HandleSizeChanged, this);\r\n }\r\n\r\n private $HorizontalTemplate: FrameworkElement;\r\n private $HorizontalSmallIncrease: RepeatButton;\r\n private $HorizontalSmallDecrease: RepeatButton;\r\n private $HorizontalLargeIncrease: RepeatButton;\r\n private $HorizontalLargeDecrease: RepeatButton;\r\n private $HorizontalThumb: Thumb;\r\n\r\n private $VerticalTemplate: FrameworkElement;\r\n private $VerticalSmallIncrease: RepeatButton;\r\n private $VerticalSmallDecrease: RepeatButton;\r\n private $VerticalLargeIncrease: RepeatButton;\r\n private $VerticalLargeDecrease: RepeatButton;\r\n private $VerticalThumb: Thumb;\r\n \r\n OnApplyTemplate() {\r\n super.OnApplyTemplate();\r\n this.$HorizontalTemplate = this.GetTemplateChild(\"HorizontalRoot\", FrameworkElement);\r\n this.$HorizontalLargeIncrease = this.GetTemplateChild(\"HorizontalLargeIncrease\", RepeatButton);\r\n this.$HorizontalLargeDecrease = this.GetTemplateChild(\"HorizontalLargeDecrease\", RepeatButton);\r\n this.$HorizontalSmallIncrease = this.GetTemplateChild(\"HorizontalSmallIncrease\", RepeatButton);\r\n this.$HorizontalSmallDecrease = this.GetTemplateChild(\"HorizontalSmallDecrease\", RepeatButton);\r\n this.$HorizontalThumb = this.GetTemplateChild(\"HorizontalThumb\", Thumb);\r\n this.$VerticalTemplate = this.GetTemplateChild(\"VerticalRoot\", FrameworkElement);\r\n this.$VerticalLargeIncrease = this.GetTemplateChild(\"VerticalLargeIncrease\", RepeatButton);\r\n this.$VerticalLargeDecrease = this.GetTemplateChild(\"VerticalLargeDecrease\", RepeatButton);\r\n this.$VerticalSmallIncrease = this.GetTemplateChild(\"VerticalSmallIncrease\", RepeatButton);\r\n this.$VerticalSmallDecrease = this.GetTemplateChild(\"VerticalSmallDecrease\", RepeatButton);\r\n this.$VerticalThumb = this.GetTemplateChild(\"VerticalThumb\", Thumb);\r\n\r\n if (this.$HorizontalThumb) {\r\n this.$HorizontalThumb.DragStarted.on(this._OnThumbDragStarted, this);\r\n this.$HorizontalThumb.DragDelta.on(this._OnThumbDragDelta, this);\r\n this.$HorizontalThumb.DragCompleted.on(this._OnThumbDragCompleted, this);\r\n }\r\n if (this.$HorizontalLargeIncrease) {\r\n this.$HorizontalLargeIncrease.Click.on(this._LargeIncrement, this);\r\n }\r\n if (this.$HorizontalLargeDecrease) {\r\n this.$HorizontalLargeDecrease.Click.on(this._LargeDecrement, this);\r\n }\r\n if (this.$HorizontalSmallIncrease) {\r\n this.$HorizontalSmallIncrease.Click.on(this._SmallIncrement, this);\r\n }\r\n if (this.$HorizontalSmallDecrease) {\r\n this.$HorizontalSmallDecrease.Click.on(this._SmallDecrement, this);\r\n }\r\n if (this.$VerticalThumb) {\r\n this.$VerticalThumb.DragStarted.on(this._OnThumbDragStarted, this);\r\n this.$VerticalThumb.DragDelta.on(this._OnThumbDragDelta, this);\r\n this.$VerticalThumb.DragCompleted.on(this._OnThumbDragCompleted, this);\r\n }\r\n if (this.$VerticalLargeIncrease) {\r\n this.$VerticalLargeIncrease.Click.on(this._LargeIncrement, this);\r\n }\r\n if (this.$VerticalLargeDecrease) {\r\n this.$VerticalLargeDecrease.Click.on(this._LargeDecrement, this);\r\n }\r\n if (this.$VerticalSmallIncrease) {\r\n this.$VerticalSmallIncrease.Click.on(this._SmallIncrement, this);\r\n }\r\n if (this.$VerticalSmallDecrease) {\r\n this.$VerticalSmallDecrease.Click.on(this._SmallDecrement, this);\r\n }\r\n\r\n this._OnOrientationChanged();\r\n this.UpdateVisualState(false);\r\n }\r\n\r\n OnMaximumChanged(oldMax: number, newMax: number) {\r\n super.OnMaximumChanged(oldMax, newMax);\r\n this._UpdateTrackLayout();\r\n }\r\n OnMinimumChanged(oldMin: number, newMin: number) {\r\n super.OnMinimumChanged(oldMin, newMin);\r\n this._UpdateTrackLayout();\r\n }\r\n OnValueChanged(oldValue: number, newValue: number) {\r\n super.OnValueChanged(oldValue, newValue);\r\n this._UpdateTrackLayout();\r\n }\r\n\r\n private _OnThumbDragStarted(sender, e: DragStartedEventArgs) {\r\n this._DragValue = this.Value;\r\n }\r\n private _OnThumbDragDelta(sender, e: DragDeltaEventArgs) {\r\n var change = 0;\r\n var zoomFactor = 1; //TODO: FullScreen?\r\n var num = zoomFactor;\r\n var max = this.Maximum;\r\n var min = this.Minimum;\r\n var diff = max - min;\r\n var trackLength = this._GetTrackLength();\r\n var isHorizontal = this.Orientation === Orientation.Horizontal;\r\n if (this.$VerticalThumb && !isHorizontal) {\r\n change = num * e.VerticalChange / (trackLength - this.$VerticalThumb.ActualHeight) * diff;\r\n }\r\n if (this.$HorizontalThumb && isHorizontal) {\r\n change = num * e.HorizontalChange / (trackLength - this.$HorizontalThumb.ActualWidth) * diff;\r\n }\r\n if (!isNaN(change) && isFinite(change)) {\r\n this._DragValue += change;\r\n var num1 = Math.min(max, Math.max(min, this._DragValue));\r\n if (num1 !== this.Value) {\r\n this.Value = num1;\r\n this._RaiseScroll(ScrollEventType.ThumbTrack);\r\n }\r\n }\r\n }\r\n private _OnThumbDragCompleted(sender, e: DragCompletedEventArgs) {\r\n this._RaiseScroll(ScrollEventType.EndScroll);\r\n }\r\n\r\n private _SmallDecrement(sender, e: RoutedEventArgs) {\r\n var curValue = this.Value;\r\n var num = Math.max(curValue - this.SmallChange, this.Minimum);\r\n if (curValue !== num) {\r\n this.SetCurrentValue(RangeBase.ValueProperty, num);\r\n this._RaiseScroll(ScrollEventType.SmallDecrement);\r\n }\r\n }\r\n private _SmallIncrement(sender, e: RoutedEventArgs) {\r\n var curValue = this.Value;\r\n var num = Math.min(curValue + this.SmallChange, this.Maximum);\r\n if (curValue !== num) {\r\n this.SetCurrentValue(RangeBase.ValueProperty, num);\r\n this._RaiseScroll(ScrollEventType.SmallIncrement);\r\n }\r\n }\r\n private _LargeDecrement(sender, e: RoutedEventArgs) {\r\n var curValue = this.Value;\r\n var num = Math.max(curValue - this.LargeChange, this.Minimum);\r\n if (curValue !== num) {\r\n this.SetCurrentValue(RangeBase.ValueProperty, num);\r\n this._RaiseScroll(ScrollEventType.LargeDecrement);\r\n }\r\n }\r\n private _LargeIncrement(sender, e: RoutedEventArgs) {\r\n var curValue = this.Value;\r\n var num = Math.min(curValue + this.LargeChange, this.Maximum);\r\n if (curValue !== num) {\r\n this.SetCurrentValue(RangeBase.ValueProperty, num);\r\n this._RaiseScroll(ScrollEventType.LargeIncrement);\r\n }\r\n }\r\n\r\n private _HandleSizeChanged(sender, e: nullstone.IEventArgs) {\r\n this._UpdateTrackLayout();\r\n }\r\n private _OnOrientationChanged() {\r\n var isHorizontal = this.Orientation === Orientation.Horizontal;\r\n if (this.$HorizontalTemplate) {\r\n this.$HorizontalTemplate.Visibility = isHorizontal ? Visibility.Visible : Visibility.Collapsed;\r\n }\r\n if (this.$VerticalTemplate) {\r\n this.$VerticalTemplate.Visibility = isHorizontal ? Visibility.Collapsed : Visibility.Visible;\r\n }\r\n this._UpdateTrackLayout();\r\n }\r\n private _UpdateTrackLayout() {\r\n var trackLength = this._GetTrackLength();\r\n var max = this.Maximum;\r\n var min = this.Minimum;\r\n var val = this.Value;\r\n var multiplier = (val - min) / (max - min);\r\n var thumbSize = this._UpdateThumbSize(trackLength);\r\n\r\n var isHorizontal = this.Orientation === Orientation.Horizontal;\r\n if (isHorizontal && this.$HorizontalLargeDecrease && this.$HorizontalThumb) {\r\n this.$HorizontalLargeDecrease.Width = Math.max(0, multiplier * (trackLength - thumbSize));\r\n } else if (!isHorizontal && this.$VerticalLargeDecrease && this.$VerticalThumb) {\r\n this.$VerticalLargeDecrease.Height = Math.max(0, multiplier * (trackLength - thumbSize));\r\n }\r\n }\r\n private _UpdateThumbSize(trackLength: number): number {\r\n var result = Number.NaN;\r\n var hideThumb = trackLength <= 0;\r\n if (trackLength > 0) {\r\n var isHorizontal = this.Orientation === Orientation.Horizontal;\r\n var max = this.Maximum;\r\n var min = this.Minimum;\r\n if (isHorizontal && this.$HorizontalThumb) {\r\n if (max - min !== 0)\r\n result = Math.max(this.$HorizontalThumb.MinWidth, this._ConvertViewportSizeToDisplayUnits(trackLength));\r\n if (max - min === 0 || result > this.ActualWidth || trackLength <= this.$HorizontalThumb.MinWidth) {\r\n hideThumb = true;\r\n } else {\r\n this.$HorizontalThumb.Visibility = Visibility.Visible;\r\n this.$HorizontalThumb.Width = result;\r\n }\r\n } else if (!isHorizontal && this.$VerticalThumb) {\r\n if (max - min !== 0)\r\n result = Math.max(this.$VerticalThumb.MinHeight, this._ConvertViewportSizeToDisplayUnits(trackLength));\r\n if (max - min === 0 || result > this.ActualHeight || trackLength <= this.$VerticalThumb.MinHeight) {\r\n hideThumb = true;\r\n } else {\r\n this.$VerticalThumb.Visibility = Visibility.Visible;\r\n this.$VerticalThumb.Height = result;\r\n }\r\n }\r\n }\r\n if (hideThumb) {\r\n if (this.$HorizontalThumb) {\r\n this.$HorizontalThumb.Visibility = Visibility.Collapsed;\r\n }\r\n if (this.$VerticalThumb) {\r\n this.$VerticalThumb.Visibility = Visibility.Collapsed;\r\n }\r\n }\r\n return result;\r\n }\r\n private _GetTrackLength(): number {\r\n var actual = NaN;\r\n if (this.Orientation === Orientation.Horizontal) {\r\n actual = this.ActualWidth;\r\n if (this.$HorizontalSmallDecrease) {\r\n var thickness = this.$HorizontalSmallDecrease.Margin;\r\n actual = actual - (this.$HorizontalSmallDecrease.ActualWidth + thickness.left + thickness.right);\r\n }\r\n if (this.$HorizontalSmallIncrease) {\r\n var thickness = this.$HorizontalSmallIncrease.Margin;\r\n actual = actual - (this.$HorizontalSmallIncrease.ActualWidth + thickness.left + thickness.right);\r\n }\r\n } else {\r\n actual = this.ActualHeight;\r\n if (this.$VerticalSmallDecrease) {\r\n var thickness = this.$VerticalSmallDecrease.Margin;\r\n actual = actual - (this.$VerticalSmallDecrease.ActualHeight + thickness.top + thickness.bottom);\r\n }\r\n if (this.$VerticalSmallIncrease) {\r\n var thickness = this.$VerticalSmallIncrease.Margin;\r\n actual = actual - (this.$VerticalSmallIncrease.ActualHeight + thickness.top + thickness.bottom);\r\n }\r\n }\r\n return actual;\r\n }\r\n private _ConvertViewportSizeToDisplayUnits(trackLength: number): number {\r\n var viewportSize = this.ViewportSize;\r\n return trackLength * viewportSize / (viewportSize + this.Maximum - this.Minimum);\r\n }\r\n private _RaiseScroll(type: Primitives.ScrollEventType) {\r\n var args = new ScrollEventArgs(type, this.Value);\r\n args.OriginalSource = this;\r\n this.Scroll.raise(this, args);\r\n }\r\n }\r\n Fayde.CoreLibrary.add(ScrollBar);\r\n TemplateVisualStates(ScrollBar, \r\n { GroupName: \"CommonStates\", Name: \"Normal\" },\r\n { GroupName: \"CommonStates\", Name: \"MouseOver\" },\r\n { GroupName: \"CommonStates\", Name: \"Disabled\" });\r\n TemplateParts(ScrollBar,\r\n { Name: \"VerticalRoot\", Type: FrameworkElement },\r\n { Name: \"VerticalLargeIncrease\", Type: RepeatButton },\r\n { Name: \"VerticalLargeDecrease\", Type: RepeatButton },\r\n { Name: \"VerticalSmallIncrease\", Type: RepeatButton },\r\n { Name: \"VerticalSmallDecrease\", Type: RepeatButton },\r\n { Name: \"VerticalThumb\", Type: Thumb },\r\n { Name: \"HorizontalRoot\", Type: FrameworkElement },\r\n { Name: \"HorizontalLargeIncrease\", Type: RepeatButton },\r\n { Name: \"HorizontalLargeDecrease\", Type: RepeatButton },\r\n { Name: \"HorizontalSmallIncrease\", Type: RepeatButton },\r\n { Name: \"HorizontalSmallDecrease\", Type: RepeatButton },\r\n { Name: \"HorizontalThumb\", Type: Thumb });\r\n}","/// \r\n/// \r\n/// \r\n\r\nmodule Fayde.Controls {\r\n export class ScrollViewer extends ContentControl {\r\n private static _ScrollBarVisibilityChanged(d: DependencyObject, args: IDependencyPropertyChangedEventArgs) {\r\n if (!d) return;\r\n if (d instanceof ScrollViewer) {\r\n var sv = d;\r\n sv.XamlNode.LayoutUpdater.invalidateMeasure();\r\n var scrollInfo = sv.ScrollInfo;\r\n if (scrollInfo) {\r\n scrollInfo.CanHorizontallyScroll = sv.HorizontalScrollBarVisibility !== ScrollBarVisibility.Disabled;\r\n scrollInfo.CanVerticallyScroll = sv.VerticalScrollBarVisibility !== ScrollBarVisibility.Disabled;\r\n }\r\n sv._UpdateScrollBarVisibility();\r\n return;\r\n }\r\n\r\n if (d instanceof ListBox) {\r\n var listbox = d;\r\n if (listbox.$TemplateScrollViewer)\r\n listbox.$TemplateScrollViewer.SetValue(args.Property, args.NewValue);\r\n return;\r\n }\r\n }\r\n\r\n static HorizontalScrollBarVisibilityProperty = DependencyProperty.RegisterAttachedCore(\"HorizontalScrollBarVisibility\", () => new Enum(ScrollBarVisibility), ScrollViewer, ScrollBarVisibility.Disabled, ScrollViewer._ScrollBarVisibilityChanged);\r\n static GetHorizontalScrollBarVisibility(d: DependencyObject): ScrollBarVisibility { return d.GetValue(ScrollViewer.HorizontalScrollBarVisibilityProperty); }\r\n static SetHorizontalScrollBarVisibility(d: DependencyObject, value: ScrollBarVisibility) { d.SetValue(ScrollViewer.HorizontalScrollBarVisibilityProperty, value); }\r\n get HorizontalScrollBarVisibility(): ScrollBarVisibility { return this.GetValue(ScrollViewer.HorizontalScrollBarVisibilityProperty); }\r\n set HorizontalScrollBarVisibility(value: ScrollBarVisibility) { this.SetValue(ScrollViewer.HorizontalScrollBarVisibilityProperty, value); }\r\n\r\n static VerticalScrollBarVisibilityProperty = DependencyProperty.RegisterAttachedCore(\"VerticalScrollBarVisibility\", () => new Enum(ScrollBarVisibility), ScrollViewer, ScrollBarVisibility.Disabled, ScrollViewer._ScrollBarVisibilityChanged);\r\n static GetVerticalScrollBarVisibility(d: DependencyObject): ScrollBarVisibility { return d.GetValue(ScrollViewer.VerticalScrollBarVisibilityProperty); }\r\n static SetVerticalScrollBarVisibility(d: DependencyObject, value: ScrollBarVisibility) { d.SetValue(ScrollViewer.VerticalScrollBarVisibilityProperty, value); }\r\n get VerticalScrollBarVisibility(): ScrollBarVisibility { return this.GetValue(ScrollViewer.VerticalScrollBarVisibilityProperty); }\r\n set VerticalScrollBarVisibility(value: ScrollBarVisibility) { this.SetValue(ScrollViewer.VerticalScrollBarVisibilityProperty, value); }\r\n\r\n static ComputedHorizontalScrollBarVisibilityProperty = DependencyProperty.RegisterReadOnlyCore(\"ComputedHorizontalScrollBarVisibility\", () => new Enum(Visibility), ScrollViewer);\r\n static ComputedVerticalScrollBarVisibilityProperty = DependencyProperty.RegisterReadOnlyCore(\"ComputedVerticalScrollBarVisibility\", () => new Enum(Visibility), ScrollViewer);\r\n static HorizontalOffsetProperty = DependencyProperty.RegisterReadOnlyCore(\"HorizontalOffset\", () => Number, ScrollViewer);\r\n static VerticalOffsetProperty = DependencyProperty.RegisterReadOnlyCore(\"VerticalOffset\", () => Number, ScrollViewer);\r\n static ScrollableWidthProperty = DependencyProperty.RegisterReadOnlyCore(\"ScrollableWidth\", () => Number, ScrollViewer);\r\n static ScrollableHeightProperty = DependencyProperty.RegisterReadOnlyCore(\"ScrollableHeight\", () => Number, ScrollViewer);\r\n static ViewportWidthProperty = DependencyProperty.RegisterReadOnlyCore(\"ViewportWidth\", () => Number, ScrollViewer);\r\n static ViewportHeightProperty = DependencyProperty.RegisterReadOnlyCore(\"ViewportHeight\", () => Number, ScrollViewer);\r\n static ExtentWidthProperty = DependencyProperty.RegisterReadOnlyCore(\"ExtentWidth\", () => Number, ScrollViewer);\r\n static ExtentHeightProperty = DependencyProperty.RegisterReadOnlyCore(\"ExtentHeight\", () => Number, ScrollViewer);\r\n\r\n ComputedHorizontalScrollBarVisibility: Visibility;\r\n ComputedVerticalScrollBarVisibility: Visibility;\r\n HorizontalOffset: number;\r\n VerticalOffset: number;\r\n ScrollableWidth: number;\r\n ScrollableHeight: number;\r\n ViewportWidth: number;\r\n ViewportHeight: number;\r\n ExtentWidth: number;\r\n ExtentHeight: number;\r\n\r\n $TemplatedParentHandlesScrolling: boolean = false;\r\n $ScrollContentPresenter: ScrollContentPresenter;\r\n private $HorizontalScrollBar: Primitives.ScrollBar;\r\n private $VerticalScrollBar: Primitives.ScrollBar;\r\n\r\n constructor() {\r\n super();\r\n //this.RequestBringIntoView.Subscribe(this._OnRequestBringIntoView, this);\r\n this.DefaultStyleKey = ScrollViewer;\r\n }\r\n\r\n private _ScrollInfo: Primitives.IScrollInfo;\r\n get ScrollInfo(): Primitives.IScrollInfo { return this._ScrollInfo; }\r\n set ScrollInfo(value: Primitives.IScrollInfo) {\r\n this._ScrollInfo = value;\r\n if (value) {\r\n value.CanHorizontallyScroll = this.HorizontalScrollBarVisibility !== ScrollBarVisibility.Disabled;\r\n value.CanVerticallyScroll = this.VerticalScrollBarVisibility !== ScrollBarVisibility.Disabled;\r\n }\r\n }\r\n\r\n InvalidateScrollInfo() {\r\n var scrollInfo = this.ScrollInfo;\r\n if (scrollInfo) {\r\n this.SetCurrentValue(ScrollViewer.ExtentWidthProperty, scrollInfo.ExtentWidth);\r\n this.SetCurrentValue(ScrollViewer.ExtentHeightProperty, scrollInfo.ExtentHeight);\r\n this.SetCurrentValue(ScrollViewer.ViewportWidthProperty, scrollInfo.ViewportWidth);\r\n this.SetCurrentValue(ScrollViewer.ViewportHeightProperty, scrollInfo.ViewportHeight);\r\n this._UpdateScrollBar(Orientation.Horizontal, scrollInfo.HorizontalOffset);\r\n this._UpdateScrollBar(Orientation.Vertical, scrollInfo.VerticalOffset);\r\n this._UpdateScrollBarVisibility();\r\n }\r\n\r\n var lu = this.XamlNode.LayoutUpdater;\r\n\r\n var w = Math.max(0, this.ExtentWidth - this.ViewportWidth);\r\n if (w !== this.ScrollableWidth) {\r\n this.SetCurrentValue(ScrollViewer.ScrollableWidthProperty, w);\r\n lu.invalidateMeasure();\r\n }\r\n\r\n var h = Math.max(0, this.ExtentHeight - this.ViewportHeight);\r\n if (h !== this.ScrollableHeight) {\r\n this.SetCurrentValue(ScrollViewer.ScrollableHeightProperty, h);\r\n lu.invalidateMeasure();\r\n }\r\n }\r\n private _UpdateScrollBarVisibility() {\r\n var lu = this.XamlNode.LayoutUpdater;\r\n var scrollInfo = this.ScrollInfo;\r\n\r\n var horizontalVisibility = Visibility.Visible;\r\n var hsbv = this.HorizontalScrollBarVisibility;\r\n switch (hsbv) {\r\n case ScrollBarVisibility.Visible:\r\n break;\r\n case ScrollBarVisibility.Disabled:\r\n case ScrollBarVisibility.Hidden:\r\n horizontalVisibility = Visibility.Collapsed;\r\n break;\r\n case ScrollBarVisibility.Auto:\r\n default:\r\n horizontalVisibility = (!scrollInfo || scrollInfo.ExtentWidth <= scrollInfo.ViewportWidth) ? Visibility.Collapsed : Visibility.Visible;\r\n break;\r\n }\r\n\r\n if (horizontalVisibility !== this.ComputedHorizontalScrollBarVisibility) {\r\n this.SetCurrentValue(ScrollViewer.ComputedHorizontalScrollBarVisibilityProperty, horizontalVisibility);\r\n lu.invalidateMeasure();\r\n }\r\n\r\n var verticalVisibility = Fayde.Visibility.Visible;\r\n var vsbv = this.VerticalScrollBarVisibility;\r\n switch (vsbv) {\r\n case ScrollBarVisibility.Visible:\r\n break;\r\n case ScrollBarVisibility.Disabled:\r\n case ScrollBarVisibility.Hidden:\r\n verticalVisibility = Fayde.Visibility.Collapsed;\r\n break;\r\n case ScrollBarVisibility.Auto:\r\n default:\r\n verticalVisibility = (!scrollInfo || scrollInfo.ExtentHeight <= scrollInfo.ViewportHeight) ? Fayde.Visibility.Collapsed : Fayde.Visibility.Visible;\r\n break;\r\n }\r\n\r\n if (verticalVisibility !== this.ComputedVerticalScrollBarVisibility) {\r\n this.SetCurrentValue(ScrollViewer.ComputedVerticalScrollBarVisibilityProperty, verticalVisibility);\r\n lu.invalidateMeasure();\r\n }\r\n }\r\n\r\n private _UpdateScrollBar (orientation: Orientation, value: number) {\r\n var propd: DependencyProperty;\r\n var sb: Primitives.ScrollBar;\r\n if (orientation === Orientation.Horizontal) {\r\n propd = ScrollViewer.HorizontalOffsetProperty;\r\n sb = this.$HorizontalScrollBar;\r\n } else {\r\n propd = ScrollViewer.VerticalOffsetProperty;\r\n sb = this.$VerticalScrollBar;\r\n }\r\n\r\n try {\r\n this.SetCurrentValue(propd, value);\r\n if (sb)\r\n sb.SetCurrentValue(Primitives.RangeBase.ValueProperty, value);\r\n } finally {\r\n }\r\n }\r\n\r\n OnApplyTemplate() {\r\n super.OnApplyTemplate();\r\n this.$ScrollContentPresenter = this.GetTemplateChild(\"ScrollContentPresenter\", ScrollContentPresenter);\r\n this.$HorizontalScrollBar = this.GetTemplateChild(\"HorizontalScrollBar\", Primitives.ScrollBar);\r\n if (this.$HorizontalScrollBar) {\r\n this.$HorizontalScrollBar.Scroll.on((sender, e: Primitives.ScrollEventArgs) => this._HandleScroll(Orientation.Horizontal, e), this);\r\n }\r\n this.$VerticalScrollBar = this.GetTemplateChild(\"VerticalScrollBar\", Primitives.ScrollBar);\r\n if (this.$VerticalScrollBar) {\r\n this.$VerticalScrollBar.Scroll.on((sender, e: Primitives.ScrollEventArgs) => this._HandleScroll(Orientation.Vertical, e), this);\r\n }\r\n this._UpdateScrollBarVisibility();\r\n }\r\n\r\n OnMouseLeftButtonDown(e: Input.MouseButtonEventArgs) {\r\n if (!e.Handled && this.Focus())\r\n e.Handled = true;\r\n super.OnMouseLeftButtonDown(e);\r\n }\r\n OnMouseWheel(e: Input.MouseWheelEventArgs) {\r\n super.OnMouseWheel(e);\r\n if (e.Handled)\r\n return;\r\n var scrollInfo = this.ScrollInfo;\r\n if (!scrollInfo)\r\n return;\r\n if ((e.Delta > 0 && scrollInfo.VerticalOffset !== 0) || (e.Delta < 0 && scrollInfo.VerticalOffset < this.ScrollableHeight)) {\r\n if (e.Delta >= 0)\r\n scrollInfo.MouseWheelUp();\r\n else\r\n scrollInfo.MouseWheelDown();\r\n e.Handled = true;\r\n }\r\n }\r\n\r\n private _TouchOrigin: Point;\r\n private _Delta = new Point();\r\n private _TouchInitialOffset = new Point();\r\n OnTouchDown(e: Input.TouchEventArgs) {\r\n super.OnTouchDown(e);\r\n var scrollInfo = this.ScrollInfo;\r\n if (e.Handled || !this.IsEnabled || !scrollInfo)\r\n return;\r\n e.Handled = true;\r\n this.Focus();\r\n e.Device.Capture(this);\r\n\r\n var offset = this._TouchInitialOffset;\r\n offset.x = scrollInfo.HorizontalOffset;\r\n offset.y = scrollInfo.VerticalOffset;\r\n\r\n this._TouchOrigin = e.GetTouchPoint(this).Position;\r\n }\r\n OnTouchUp(e: Input.TouchEventArgs) {\r\n super.OnTouchUp(e);\r\n if (e.Handled || !this.IsEnabled)\r\n return;\r\n e.Handled = true;\r\n e.Device.ReleaseCapture(this);\r\n }\r\n OnTouchMove(e: Input.TouchEventArgs) {\r\n super.OnTouchMove(e);\r\n if (e.Handled || e.Device.Captured !== this)\r\n return;\r\n var tp = e.GetTouchPoint(this);\r\n var pos = tp.Position;\r\n var delta = this._Delta;\r\n var origin = this._TouchOrigin;\r\n delta.x = pos.x - origin.x;\r\n delta.y = pos.y - origin.y;\r\n this.ScrollToHorizontalOffset(delta.x);\r\n this.ScrollToVerticalOffset(delta.y);\r\n }\r\n\r\n OnKeyDown(e: Input.KeyEventArgs) {\r\n super.OnKeyDown(e);\r\n\r\n if (e.Handled)\r\n return;\r\n\r\n if (this.$TemplatedParentHandlesScrolling)\r\n return;\r\n\r\n var orientation = Orientation.Vertical;\r\n var scrollEventType = Primitives.ScrollEventType.ThumbTrack;\r\n //TODO: FlowDirection\r\n //var flowDirection = this.FlowDirection === Fayde.FlowDirection.RightToLeft;\r\n switch (e.Key) {\r\n case Input.Key.PageUp:\r\n scrollEventType = Primitives.ScrollEventType.LargeDecrement;\r\n break;\r\n case Input.Key.PageDown:\r\n scrollEventType = Primitives.ScrollEventType.LargeIncrement;\r\n break;\r\n case Input.Key.End:\r\n if (!e.Modifiers.Ctrl)\r\n orientation = Orientation.Horizontal;\r\n scrollEventType = Primitives.ScrollEventType.Last;\r\n break;\r\n case Input.Key.Home:\r\n if (!e.Modifiers.Ctrl)\r\n orientation = Orientation.Horizontal;\r\n scrollEventType = Primitives.ScrollEventType.First;\r\n break;\r\n case Input.Key.Left:\r\n orientation = Orientation.Horizontal;\r\n scrollEventType = Primitives.ScrollEventType.SmallDecrement;\r\n case Input.Key.Up:\r\n scrollEventType = Primitives.ScrollEventType.SmallDecrement;\r\n break;\r\n case Input.Key.Right:\r\n orientation = Orientation.Horizontal;\r\n scrollEventType = Primitives.ScrollEventType.SmallIncrement;\r\n case Input.Key.Down:\r\n scrollEventType = Primitives.ScrollEventType.SmallIncrement;\r\n break;\r\n }\r\n if (scrollEventType !== Primitives.ScrollEventType.ThumbTrack)\r\n e.Handled = !!this._HandleScroll(orientation, new Primitives.ScrollEventArgs(scrollEventType, 0));\r\n }\r\n\r\n ScrollInDirection(key: Input.Key) {\r\n switch (key) {\r\n case Input.Key.PageUp:\r\n this.PageUp();\r\n break;\r\n case Input.Key.PageDown:\r\n this.PageDown();\r\n break;\r\n case Input.Key.End:\r\n this.PageEnd();\r\n break;\r\n case Input.Key.Home:\r\n this.PageHome();\r\n break;\r\n case Input.Key.Left:\r\n this.LineLeft();\r\n break;\r\n case Input.Key.Up:\r\n this.LineUp();\r\n break;\r\n case Input.Key.Right:\r\n this.LineRight();\r\n break;\r\n case Input.Key.Down:\r\n this.LineDown();\r\n break;\r\n }\r\n }\r\n ScrollToHorizontalOffset(offset: number) { this._HandleHorizontalScroll(new Primitives.ScrollEventArgs(Primitives.ScrollEventType.ThumbPosition, offset)); }\r\n ScrollToVerticalOffset(offset: number) { this._HandleVerticalScroll(new Primitives.ScrollEventArgs(Primitives.ScrollEventType.ThumbPosition, offset)); }\r\n\r\n LineUp() { this._HandleVerticalScroll(new Primitives.ScrollEventArgs(Primitives.ScrollEventType.SmallDecrement, 0)); }\r\n LineDown() { this._HandleVerticalScroll(new Primitives.ScrollEventArgs(Primitives.ScrollEventType.SmallIncrement, 0)); }\r\n LineLeft() { this._HandleHorizontalScroll(new Primitives.ScrollEventArgs(Primitives.ScrollEventType.SmallDecrement, 0)); }\r\n LineRight() { this._HandleHorizontalScroll(new Primitives.ScrollEventArgs(Primitives.ScrollEventType.SmallIncrement, 0)); }\r\n\r\n PageHome() { this._HandleHorizontalScroll(new Primitives.ScrollEventArgs(Primitives.ScrollEventType.First, 0)); }\r\n PageEnd() { this._HandleHorizontalScroll(new Primitives.ScrollEventArgs(Primitives.ScrollEventType.Last, 0)); }\r\n\r\n PageUp() { this._HandleVerticalScroll(new Primitives.ScrollEventArgs(Primitives.ScrollEventType.LargeDecrement, 0)); }\r\n PageDown() { this._HandleVerticalScroll(new Primitives.ScrollEventArgs(Primitives.ScrollEventType.LargeIncrement, 0)); }\r\n PageLeft() { this._HandleHorizontalScroll(new Primitives.ScrollEventArgs(Primitives.ScrollEventType.LargeDecrement, 0)); }\r\n PageRight() { this._HandleHorizontalScroll(new Primitives.ScrollEventArgs(Primitives.ScrollEventType.LargeIncrement, 0)); }\r\n\r\n private _HandleScroll(orientation: Orientation, e: Primitives.ScrollEventArgs): boolean {\r\n if (orientation !== Orientation.Horizontal)\r\n return this._HandleVerticalScroll(e);\r\n return this._HandleHorizontalScroll(e);\r\n }\r\n private _HandleHorizontalScroll(e: Primitives.ScrollEventArgs): boolean {\r\n var scrollInfo = this.ScrollInfo;\r\n if (!scrollInfo)\r\n return false;\r\n var offset = scrollInfo.HorizontalOffset;\r\n var newValue = offset;\r\n switch (e.ScrollEventType) {\r\n case Primitives.ScrollEventType.SmallDecrement:\r\n return scrollInfo.LineLeft();\r\n case Primitives.ScrollEventType.SmallIncrement:\r\n return scrollInfo.LineRight();\r\n case Primitives.ScrollEventType.LargeDecrement:\r\n return scrollInfo.PageLeft();\r\n case Primitives.ScrollEventType.LargeIncrement:\r\n return scrollInfo.PageRight();\r\n case Primitives.ScrollEventType.ThumbPosition:\r\n case Primitives.ScrollEventType.ThumbTrack:\r\n newValue = e.Value;\r\n break;\r\n case Primitives.ScrollEventType.First:\r\n newValue = Number.NEGATIVE_INFINITY;\r\n break;\r\n case Primitives.ScrollEventType.Last:\r\n newValue = Number.POSITIVE_INFINITY;\r\n break;\r\n }\r\n newValue = Math.max(newValue, 0);\r\n newValue = Math.min(this.ScrollableWidth, newValue);\r\n if (NumberEx.AreClose(offset, newValue))\r\n return false;\r\n scrollInfo.SetHorizontalOffset(newValue);\r\n return true;\r\n }\r\n private _HandleVerticalScroll(e: Primitives.ScrollEventArgs): boolean {\r\n var scrollInfo = this.ScrollInfo;\r\n if (!scrollInfo)\r\n return false;\r\n var offset = scrollInfo.VerticalOffset;\r\n var newValue = offset;\r\n switch (e.ScrollEventType) {\r\n case Primitives.ScrollEventType.SmallDecrement:\r\n return scrollInfo.LineUp();\r\n case Primitives.ScrollEventType.SmallIncrement:\r\n return scrollInfo.LineDown();\r\n break;\r\n case Primitives.ScrollEventType.LargeDecrement:\r\n return scrollInfo.PageUp();\r\n break;\r\n case Primitives.ScrollEventType.LargeIncrement:\r\n return scrollInfo.PageDown();\r\n break;\r\n case Primitives.ScrollEventType.ThumbPosition:\r\n case Primitives.ScrollEventType.ThumbTrack:\r\n newValue = e.Value;\r\n break;\r\n case Primitives.ScrollEventType.First:\r\n newValue = Number.NEGATIVE_INFINITY;\r\n break;\r\n case Primitives.ScrollEventType.Last:\r\n newValue = Number.POSITIVE_INFINITY;\r\n break;\r\n }\r\n newValue = Math.max(newValue, 0);\r\n newValue = Math.min(this.ScrollableHeight, newValue);\r\n if (NumberEx.AreClose(offset, newValue))\r\n return false;\r\n return scrollInfo.SetVerticalOffset(newValue);\r\n }\r\n }\r\n Fayde.CoreLibrary.add(ScrollViewer);\r\n TemplateParts(ScrollViewer,\r\n { Name: \"ScrollContentPresenter\", Type: ScrollContentPresenter },\r\n { Name: \"HorizontalScrollBar\", Type: Primitives.ScrollBar },\r\n { Name: \"VerticalScrollBar\", Type: Primitives.ScrollBar });\r\n}","/// \r\n/// \r\n/// \r\n/// \r\n/// \r\n\r\nmodule Fayde.Controls {\r\n export class ComboBox extends Primitives.Selector {\r\n DropDownOpened = new nullstone.Event();\r\n DropDownClosed = new nullstone.Event();\r\n\r\n static IsDropDownOpenProperty = DependencyProperty.Register(\"IsDropDownOpen\", () => Boolean, ComboBox, false, (d, args) => (d)._IsDropDownOpenChanged(args));\r\n static ItemContainerStyleProperty = DependencyProperty.Register(\"ItemContainerStyle\", () => Style, ComboBox, undefined, (d, args) => (d).OnItemContainerStyleChanged(args));\r\n static MaxDropDownHeightProperty = DependencyProperty.Register(\"MaxDropDownHeight\", () => Number, ComboBox, Number.POSITIVE_INFINITY, (d, args) => (d)._MaxDropDownHeightChanged(args));\r\n static IsSelectionActiveProperty = Primitives.Selector.IsSelectionActiveProperty;\r\n IsDropDownOpen: boolean;\r\n ItemContainerStyle: Style;\r\n MaxDropDownHeight: number;\r\n\r\n private $ContentPresenter: ContentPresenter;\r\n private $Popup: Primitives.Popup;\r\n private $DropDownToggle: Primitives.ToggleButton;\r\n private $DisplayedItem: ComboBoxItem = null;\r\n private $SelectionBoxItem: any = null;\r\n private $SelectionBoxItemTemplate: DataTemplate = null;\r\n private _NullSelFallback: any;\r\n private _FocusedIndex: number = -1;\r\n\r\n constructor() {\r\n super();\r\n this.DefaultStyleKey = ComboBox;\r\n }\r\n\r\n private _IsDropDownOpenChanged(args: IDependencyPropertyChangedEventArgs) {\r\n var open = args.NewValue;\r\n\r\n if (this.$Popup != null)\r\n this.$Popup.IsOpen = open;\r\n if (this.$DropDownToggle != null)\r\n this.$DropDownToggle.IsChecked = open;\r\n\r\n if (open) {\r\n this._FocusedIndex = this.Items.Count > 0 ? Math.max(this.SelectedIndex, 0) : -1;\r\n if (this._FocusedIndex > -1) {\r\n var focusedItem = this.ItemContainersManager.ContainerFromIndex(this._FocusedIndex);\r\n if (focusedItem instanceof ComboBoxItem)\r\n (focusedItem).Focus();\r\n }\r\n\r\n this.LayoutUpdated.on(this._UpdatePopupSizeAndPosition, this);\r\n this.DropDownOpened.raise(this, null);\r\n } else {\r\n this.Focus();\r\n this.LayoutUpdated.off(this._UpdatePopupSizeAndPosition, this);\r\n this.DropDownClosed.raise(this, null);\r\n }\r\n\r\n var selectedItem = this.SelectedItem;\r\n this._UpdateDisplayedItem(open && selectedItem instanceof Fayde.UIElement ? null : selectedItem);\r\n this.UpdateVisualState(true);\r\n }\r\n private _MaxDropDownHeightChanged(args: IDependencyPropertyChangedEventArgs) {\r\n this._UpdatePopupMaxHeight(args.NewValue);\r\n }\r\n \r\n private _GetChildOfType(name: string, type: Function): any {\r\n var temp = this.GetTemplateChild(name);\r\n if (temp instanceof type)\r\n return temp;\r\n }\r\n\r\n OnApplyTemplate() {\r\n super.OnApplyTemplate();\r\n this.UpdateVisualState(false);\r\n\r\n this.$ContentPresenter = this._GetChildOfType(\"ContentPresenter\", ContentPresenter);\r\n this.$Popup = this._GetChildOfType(\"Popup\", Primitives.Popup);\r\n this.$DropDownToggle = this._GetChildOfType(\"DropDownToggle\", Primitives.ToggleButton);\r\n\r\n if (this.$ContentPresenter != null)\r\n this._NullSelFallback = this.$ContentPresenter.Content;\r\n\r\n if (this.$Popup != null) {\r\n this._UpdatePopupMaxHeight(this.MaxDropDownHeight);\r\n this.$Popup.WatchOutsideClick(this._PopupClickedOutside, this);\r\n\r\n var child = this.$Popup.Child;\r\n if (child != null) {\r\n child.KeyDown.on(this._OnChildKeyDown, this);\r\n (child).SizeChanged.on(this._UpdatePopupSizeAndPosition, this);\r\n }\r\n }\r\n\r\n if (this.$DropDownToggle != null) {\r\n this.$DropDownToggle.Checked.on(this._OnToggleChecked, this);\r\n this.$DropDownToggle.Unchecked.on(this._OnToggleUnchecked, this);\r\n }\r\n\r\n this.UpdateVisualState(false);\r\n this._UpdateDisplayedItem(this.SelectedItem);\r\n }\r\n\r\n OnItemContainerStyleChanged(args: IDependencyPropertyChangedEventArgs) {\r\n var newStyle = + +