public void Draw(LayerPropertiesModel props, LayerPropertiesModel applied, DrawingContext c) { if (applied.Brush == null) { return; } const int scale = 4; // Set up variables for this frame var rect = props.Contain ? new Rect(applied.X * scale, applied.Y * scale, applied.Width * scale, applied.Height * scale) : new Rect(props.X * scale, props.Y * scale, props.Width * scale, props.Height * scale); var clip = new Rect(applied.X * scale, applied.Y * scale, applied.Width * scale, applied.Height * scale); // Can't meddle with the original brush because it's frozen. var brush = applied.Brush.Clone(); brush.Opacity = (Math.Sin(props.AnimationProgress * Math.PI) + 1) * (props.Opacity / 2); applied.Brush = brush; c.PushClip(new RectangleGeometry(clip)); c.DrawRectangle(applied.Brush, null, rect); c.Pop(); }
public KeyboardPropertiesViewModel(IDataModel dataModel, LayerPropertiesModel properties) : base(dataModel) { var keyboardProperties = (KeyboardPropertiesModel)properties; ProposedProperties = GeneralHelpers.Clone(keyboardProperties); Brush = ProposedProperties.Brush.CloneCurrentValue(); DataModelProps = new BindableCollection <GeneralHelpers.PropertyCollection>(); DataModelProps.AddRange(GeneralHelpers.GenerateTypeMap(dataModel)); HeightProperties = new LayerDynamicPropertiesViewModel("Height", DataModelProps, keyboardProperties); WidthProperties = new LayerDynamicPropertiesViewModel("Width", DataModelProps, keyboardProperties); OpacityProperties = new LayerDynamicPropertiesViewModel("Opacity", DataModelProps, keyboardProperties); }
public void Draw(LayerPropertiesModel props, LayerPropertiesModel applied, DrawingContext c) { if (applied?.Brush == null) { return; } const int scale = 4; // Set up variables for this frame var rect = props.Contain ? new Rect(applied.X * scale, applied.Y * scale, applied.Width * scale, applied.Height * scale) : new Rect(props.X * scale, props.Y * scale, props.Width * scale, props.Height * scale); var clip = new Rect(applied.X * scale, applied.Y * scale, applied.Width * scale, applied.Height * scale); // Take an offset of 4 to allow layers to slightly leave their bounds var progress = (6.0 - props.AnimationProgress) * 10.0; if (progress < 0) { // Can't meddle with the original brush because it's frozen. var brush = applied.Brush.Clone(); brush.Opacity = 1 + 0.025 * progress; if (brush.Opacity < 0) { brush.Opacity = 0; } if (brush.Opacity > 1) { brush.Opacity = 1; } applied.Brush = brush; } rect.Inflate(-rect.Width / 100.0 * progress, -rect.Height / 100.0 * progress); clip.Inflate(-clip.Width / 100.0 * progress, -clip.Height / 100.0 * progress); c.PushClip(new RectangleGeometry(clip)); c.DrawRectangle(applied.Brush, null, rect); c.Pop(); }
public void Draw(LayerPropertiesModel props, LayerPropertiesModel applied, DrawingContext c) { if (applied.Brush == null) { return; } const int scale = 4; // Set up variables for this frame var rect = props.Contain ? new Rect(applied.X * scale, applied.Y * scale, applied.Width * scale, applied.Height * scale) : new Rect(props.X * scale, props.Y * scale, props.Width * scale, props.Height * scale); var s1 = new Rect(new Point(rect.X, rect.Y + props.AnimationProgress), new Size(rect.Width, rect.Height)); var s2 = new Rect(new Point(s1.X, s1.Y - rect.Height), new Size(rect.Width, rect.Height + .5)); var clip = new Rect(applied.X * scale, applied.Y * scale, applied.Width * scale, applied.Height * scale); c.PushClip(new RectangleGeometry(clip)); c.DrawRectangle(applied.Brush, null, s1); c.DrawRectangle(applied.Brush, null, s2); c.Pop(); }
public FolderPropertiesViewModel(IDataModel dataModel, LayerPropertiesModel properties) : base(dataModel) { ProposedProperties = GeneralHelpers.Clone(properties); }
public void Draw(LayerPropertiesModel props, LayerPropertiesModel applied, DrawingContext c) { }
public AudioPropertiesModel(LayerPropertiesModel properties) : base(properties) { }
public KeyboardPropertiesModel(LayerPropertiesModel properties = null) : base(properties) { }
public KeyPressPropertiesModel(LayerPropertiesModel properties) : base(properties) { }
public MousePropertiesViewModel(IDataModel dataModel, LayerPropertiesModel properties) : base(dataModel) { ProposedProperties = GeneralHelpers.Clone(properties); Brush = ProposedProperties.Brush.CloneCurrentValue(); }
public SimplePropertiesModel(LayerPropertiesModel properties = null) : base(properties) { }
public static void UpdateHeadset(LayerPropertiesModel properties) { }
public static void UpdateMouse(LayerPropertiesModel properties) { }
public AmbientLightPropertiesModel(LayerPropertiesModel properties) : base(properties) { Brush = new SolidColorBrush(Color.FromRgb(0, 0, 0)); }
public ConicalBrushPropertiesModel(LayerPropertiesModel properties = null) : base(properties) { }