/// <summary> /// Resolves the dependencies needed for this instance to work. /// </summary> protected override void ResolveDependencies() { base.ResolveDependencies(); Entity foregroundEntity = Owner.FindChild("ForegroundEntity"); this.foregroundTransform = foregroundEntity.FindComponent <Transform2D>(); this.foregroundAnimation = foregroundEntity.FindComponent <AnimationUI>(); Entity bulletEntity = Owner.FindChild("BulletEntity"); this.bulletTransform = bulletEntity.FindComponent <Transform2D>(); this.bulletAnimation = bulletEntity.FindComponent <AnimationUI>(); this.textControl = Owner.FindChild("TextEntity").FindComponent <TextControl>(); if (this.on) { this.bulletTransform.X = DefaultOffset; this.foregroundTransform.XScale = DefaultOffset; this.textControl.Text = this.onText; } else { this.bulletTransform.X = 0; this.foregroundTransform.XScale = 0; this.textControl.Text = this.offText; } }
public BlockEntity( Vector2 position ) { _colorMap = new Dictionary<ColorState, Color>(); _colorMap[ColorState.Red] = Color.Red; _colorMap[ColorState.Blue] = Color.Blue; _colorMap[ColorState.Green] = Color.Green; _colorMap[ColorState.Yellow] = Color.Yellow; _colorMap[ColorState.Transparent] = Color.Transparent; String id = _id.ToString(); _id++; this.entity = new Entity("BlockEntity_" + id) .AddComponent(new Transform2D() { Origin = new Vector2(0.5f, 0), }) .AddComponent(new BlockEntityBehavior()) .AddComponent(new RectangleCollider()) .AddComponent(new PanelControl(60, 30) { HorizontalAlignment = HorizontalAlignment.Left }) .AddComponent(new PanelControlRenderer()) .AddChild(new Entity("ImageEntity") .AddComponent(new Transform2D() { DrawOrder = 0.55f, Origin = new Vector2(0.5f, 0) }) .AddComponent(new ImageControl(Color.White, 1, 1) { Stretch = Stretch.Fill }) .AddComponent(new ImageControlRenderer()) ) .AddChild(new Entity("TextEntity") .AddComponent(new Transform2D() { DrawOrder = 0.4f, Origin = new Vector2(0.5f, 0) }) .AddComponent(new TextControl("Content/Arial.wpk") { }) .AddComponent(new TextControlRenderer()) ); _colorTextEntity = entity.FindChild("TextEntity").FindComponent<TextControl>(); //_colorTextEntity.OnWidthChanged += _colorTextEntity_OnWidthChanged; Background = ColorState.Transparent; this.Width = WaveServices.Platform.ScreenWidth * 0.90f; this.Height = 90; this.entity.RefreshDependencies(); }
/// <summary> /// Resolves the dependencies needed for this instance to work. /// </summary> protected override void ResolveDependencies() { base.ResolveDependencies(); this.textControl = Owner.FindChild("TextEntity").FindComponent <TextControl>(); this.textBeforeCursor = this.textControl.Text; Entity cursorEntity = Owner.FindChild("CursorEntity"); this.cursorTransform = cursorEntity.FindComponent <Transform2D>(); this.cursorAnimation = cursorEntity.FindComponent <AnimationUI>(); this.imageControl = Owner.FindChild("ImageEntity").FindComponent <ImageControl>(); this.imageControl.Width = this.Panel.Width; this.imageControl.Height = this.Panel.Height; }
/// <summary> /// Resolves the dependencies needed for this instance to work. /// </summary> protected override void ResolveDependencies() { base.ResolveDependencies(); Entity bulletEntity = Owner.FindChild("BulletEntity"); this.bulletTransform = bulletEntity.FindComponent <Transform2D>(); this.bulletImage = bulletEntity.FindComponent <ImageControl>(); this.bulletImage.Width = DefaultSliderWeight; this.bulletImage.Height = DefaultSliderWeight; Entity foregroundEntity = Owner.FindChild("ForegroundEntity"); this.foregroundImage = foregroundEntity.FindComponent <ImageControl>(); this.foregroundTransform = foregroundEntity.FindComponent <Transform2D>(); this.backgroundImage = Owner.FindChild("BackgroundEntity").FindComponent <ImageControl>(); Entity textEntity = Owner.FindChild("TextEntity"); this.textControl = textEntity.FindComponent <TextControl>(); this.textTransform = textEntity.FindComponent <Transform2D>(); this.animation = textEntity.FindComponent <AnimationUI>(); // Default parameters this.UpdateOrientation(); // Initialization value switch (this.orientation) { case Orientation.Vertical: float result = this.maximunOffset * (this.value - this.minimum) / this.difference; this.bulletTransform.Y = -result; this.foregroundTransform.YScale = result; break; case Orientation.Horizontal: this.bulletTransform.X = this.maximunOffset * (this.value - this.minimum) / this.difference; this.foregroundTransform.XScale = this.bulletTransform.X; break; } }
/// <summary> /// Resolves the dependencies needed for this instance to work. /// </summary> protected override void ResolveDependencies() { base.ResolveDependencies(); this.textControl = Owner.FindChild("TextEntity").FindComponent<TextControl>(); this.textBeforeCursor = this.textControl.Text; Entity cursorEntity = Owner.FindChild("CursorEntity"); this.cursorTransform = cursorEntity.FindComponent<Transform2D>(); this.cursorAnimation = cursorEntity.FindComponent<AnimationUI>(); this.imageControl = Owner.FindChild("ImageEntity").FindComponent<ImageControl>(); this.imageControl.Width = this.Panel.Width; this.imageControl.Height = this.Panel.Height; }
/// <summary> /// Resolves the dependencies needed for this instance to work. /// </summary> protected override void ResolveDependencies() { base.ResolveDependencies(); Entity foregroundEntity = Owner.FindChild("ForegroundEntity"); this.foregroundTransform = foregroundEntity.FindComponent<Transform2D>(); this.foregroundAnimation = foregroundEntity.FindComponent<AnimationUI>(); Entity bulletEntity = Owner.FindChild("BulletEntity"); this.bulletTransform = bulletEntity.FindComponent<Transform2D>(); this.bulletAnimation = bulletEntity.FindComponent<AnimationUI>(); this.textControl = Owner.FindChild("TextEntity").FindComponent<TextControl>(); if (this.on) { this.bulletTransform.X = DefaultOffset; this.foregroundTransform.XScale = DefaultOffset; this.textControl.Text = this.onText; } else { this.bulletTransform.X = 0; this.foregroundTransform.XScale = 0; this.textControl.Text = this.offText; } }
/// <summary> /// Initializes a new instance of the <see cref="ToggleSwitch" /> class. /// </summary> /// <param name="name">The name.</param> public ToggleSwitch(string name) { this.entity = new Entity(name) .AddComponent(new Transform2D()) .AddComponent(new RectangleCollider()) .AddComponent(new TouchGestures(false)) .AddComponent(new GridControl(100, 42)) .AddComponent(new GridRenderer()) .AddComponent(new ToggleSwitchBehavior()); GridControl gridPanel = this.entity.FindComponent <GridControl>(); gridPanel.RowDefinitions.Add(new RowDefinition() { Height = new GridLength(1, GridUnitType.Proportional) }); gridPanel.ColumnDefinitions.Add(new ColumnDefinition() { Width = new GridLength(1, GridUnitType.Auto) }); gridPanel.ColumnDefinitions.Add(new ColumnDefinition() { Width = new GridLength(1, GridUnitType.Proportional) }); // Text Entity textEntity = new Entity("TextEntity") .AddComponent(new Transform2D() { DrawOrder = 0.4f }) .AddComponent(new TextControl() { Text = "Off", Margin = DefaultTextMargin }) .AddComponent(new TextControlRenderer()); TextControl text = textEntity.FindComponent <TextControl>(); text.SetValue(GridControl.RowProperty, 0); text.SetValue(GridControl.ColumnProperty, 0); this.entity.AddChild(textEntity); // Background Entity backgroundEntity = new Entity("BackgroundEntity") .AddComponent(new Transform2D() { DrawOrder = 0.5f }) .AddComponent(new ImageControl(Color.Blue, DefaultWidth, DefaultHeight) { Margin = DefaultSliderMargin }) .AddComponent(new ImageControlRenderer()); ImageControl background = backgroundEntity.FindComponent <ImageControl>(); background.SetValue(GridControl.RowProperty, 0); background.SetValue(GridControl.ColumnProperty, 1); this.entity.AddChild(backgroundEntity); // Foreground Entity foregroundEntity = new Entity("ForegroundEntity") .AddComponent(new Transform2D() { DrawOrder = 0.45f }) .AddComponent(new AnimationUI()) .AddComponent(new ImageControl(Color.LightBlue, 1, DefaultHeight) { Margin = DefaultSliderMargin }) .AddComponent(new ImageControlRenderer()); ImageControl foreground = foregroundEntity.FindComponent <ImageControl>(); foreground.SetValue(GridControl.RowProperty, 0); foreground.SetValue(GridControl.ColumnProperty, 1); this.entity.AddChild(foregroundEntity); // Bullet Entity bulletEntity = new Entity("BulletEntity") .AddComponent(new Transform2D() { DrawOrder = 0.4f }) .AddComponent(new AnimationUI()) .AddComponent(new ImageControl(Color.White, DefaultHeight, DefaultHeight) { Margin = DefaultSliderMargin }) .AddComponent(new ImageControlRenderer()); ImageControl bullet = bulletEntity.FindComponent <ImageControl>(); bullet.SetValue(GridControl.RowProperty, 0); bullet.SetValue(GridControl.ColumnProperty, 1); this.entity.AddChild(bulletEntity); // Event this.entity.FindComponent <ToggleSwitchBehavior>().Toggled += this.ToggleSwitch_Toggled; }
/// <summary> /// Initializes a new instance of the <see cref="CheckBox" /> class. /// </summary> /// <param name="name">The name.</param> public CheckBox(string name) { this.entity = new Entity(name) .AddComponent(new Transform2D()) .AddComponent(new RectangleCollider2D()) .AddComponent(new TouchGestures(false)) .AddComponent(new CheckBoxBehavior()) .AddComponent(new GridControl(150, 42)) .AddComponent(new GridRenderer()); this.gridPanel = this.entity.FindComponent<GridControl>(); this.gridPanel.RowDefinitions.Add(new RowDefinition() { Height = new GridLength(1, GridUnitType.Proportional) }); this.gridPanel.ColumnDefinitions.Add(new ColumnDefinition() { Width = new GridLength(1, GridUnitType.Auto) }); this.gridPanel.ColumnDefinitions.Add(new ColumnDefinition() { Width = new GridLength(1, GridUnitType.Proportional) }); // Image Unchecked Entity imageUnCheckedEntity = new Entity("ImageUncheckedEntity") .AddComponent(new Transform2D() { DrawOrder = 0.5f }) .AddComponent(new ImageControl(Color.White, DefaultUncheckedImage, DefaultUncheckedImage) { Margin = DefaultMargin, HorizontalAlignment = HorizontalAlignment.Center }) .AddComponent(new ImageControlRenderer()); this.imageUnchecked = imageUnCheckedEntity.FindComponent<ImageControl>(); this.imageUnchecked.SetValue(GridControl.RowProperty, 0); this.imageUnchecked.SetValue(GridControl.ColumnProperty, 0); this.entity.AddChild(imageUnCheckedEntity); // Image Checked Entity imageCheckedEntity = new Entity("ImageCheckedEntity") .AddComponent(new Transform2D() { DrawOrder = 0.45f, Opacity = 0 }) .AddComponent(new AnimationUI()) .AddComponent(new ImageControl(Color.Black, DefaultCheckedImage, DefaultCheckedImage) { Margin = DefaultCheckedImageMargin, HorizontalAlignment = HorizontalAlignment.Center }) .AddComponent(new ImageControlRenderer()); this.imageChecked = imageCheckedEntity.FindComponent<ImageControl>(); this.imageChecked.SetValue(GridControl.RowProperty, 0); this.imageChecked.SetValue(GridControl.ColumnProperty, 0); this.entity.AddChild(imageCheckedEntity); // Text Entity textEntity = new Entity("TextEntity") .AddComponent(new Transform2D() { DrawOrder = 0.4f }) .AddComponent(new TextControl() { Text = "CheckBox", Margin = DefaultMargin }) .AddComponent(new TextControlRenderer()); this.textControl = textEntity.FindComponent<TextControl>(); this.textControl.SetValue(GridControl.RowProperty, 0); this.textControl.SetValue(GridControl.ColumnProperty, 1); this.textControl.OnWidthChanged += this.TextControl_OnWidthChanged; this.entity.AddChild(textEntity); // Cached this.checkBoxBehavior = this.entity.FindComponent<CheckBoxBehavior>(); // Events this.checkBoxBehavior.CheckedChanged -= this.CheckBox_CheckedChanged; this.checkBoxBehavior.CheckedChanged += this.CheckBox_CheckedChanged; }
protected override void ResolveDependencies() { base.ResolveDependencies(); this.textControl = Owner.FindChild("TextEntity").FindComponent<TextControl>(); this.imageControl = Owner.FindChild("ImageEntity").FindComponent<ImageControl>(); this.imageControl.Width = this.Panel.Width; this.imageControl.Height = this.Panel.Height; }
/// <summary> /// Initializes a new instance of the <see cref="RadioButton" /> class. /// </summary> /// <param name="name">The name.</param> public RadioButton(string name) { this.entity = new Entity(name) .AddComponent(new Transform2D()) .AddComponent(new RectangleCollider()) .AddComponent(new TouchGestures(false)) .AddComponent(new RadioButtonBehavior()) .AddComponent(new GridControl(170, 42)) .AddComponent(new GridRenderer()); GridControl gridPanel = this.entity.FindComponent <GridControl>(); gridPanel.RowDefinitions.Add(new RowDefinition() { Height = new GridLength(1, GridUnitType.Proportional) }); gridPanel.ColumnDefinitions.Add(new ColumnDefinition() { Width = new GridLength(1, GridUnitType.Auto) }); gridPanel.ColumnDefinitions.Add(new ColumnDefinition() { Width = new GridLength(1, GridUnitType.Proportional) }); // Image Unchecked Entity imageUnCheckedEntity = new Entity("ImageUncheckedEntity") .AddComponent(new Transform2D() { DrawOrder = 0.5f }) .AddComponent(new ImageControl(Color.White, DefaultUncheckedImage, DefaultUncheckedImage) { Margin = DefaultMargin, HorizontalAlignment = HorizontalAlignment.Center }) .AddComponent(new ImageControlRenderer()); ImageControl imageUnchecked = imageUnCheckedEntity.FindComponent <ImageControl>(); imageUnchecked.SetValue(GridControl.RowProperty, 0); imageUnchecked.SetValue(GridControl.ColumnProperty, 0); this.entity.AddChild(imageUnCheckedEntity); // Image Checked Entity imageCheckedEntity = new Entity("ImageCheckedEntity") .AddComponent(new Transform2D() { DrawOrder = 0.45f, Opacity = 0 }) .AddComponent(new AnimationUI()) .AddComponent(new ImageControl(Color.Black, DefaultCheckedImage, DefaultCheckedImage) { Margin = DefaultCheckedImageMargin, HorizontalAlignment = HorizontalAlignment.Center }) .AddComponent(new ImageControlRenderer()); ImageControl imageChecked = imageCheckedEntity.FindComponent <ImageControl>(); imageChecked.SetValue(GridControl.RowProperty, 0); imageChecked.SetValue(GridControl.ColumnProperty, 0); this.entity.AddChild(imageCheckedEntity); // Text Entity textEntity = new Entity("TextEntity") .AddComponent(new Transform2D() { DrawOrder = 0.4f }) .AddComponent(new TextControl() { Text = "RadioButton", Margin = DefaultMargin }) .AddComponent(new TextControlRenderer()); TextControl textControl = textEntity.FindComponent <TextControl>(); textControl.SetValue(GridControl.RowProperty, 0); textControl.SetValue(GridControl.ColumnProperty, 1); this.entity.AddChild(textEntity); // Cached this.radioButtonBehavior = this.entity.FindComponent <RadioButtonBehavior>(); // Events this.radioButtonBehavior.CheckedChanged -= this.RadioButtonBehavior_CheckedChanged; this.radioButtonBehavior.CheckedChanged += this.RadioButtonBehavior_CheckedChanged; }
/// <summary> /// Resolves the dependencies needed for this instance to work. /// </summary> protected override void ResolveDependencies() { base.ResolveDependencies(); Entity bulletEntity = Owner.FindChild("BulletEntity"); this.bulletTransform = bulletEntity.FindComponent<Transform2D>(); this.bulletImage = bulletEntity.FindComponent<ImageControl>(); this.bulletImage.Width = DefaultSliderWeight; this.bulletImage.Height = DefaultSliderWeight; Entity foregroundEntity = Owner.FindChild("ForegroundEntity"); this.foregroundImage = foregroundEntity.FindComponent<ImageControl>(); this.foregroundTransform = foregroundEntity.FindComponent<Transform2D>(); this.backgroundImage = Owner.FindChild("BackgroundEntity").FindComponent<ImageControl>(); Entity textEntity = Owner.FindChild("TextEntity"); this.textControl = textEntity.FindComponent<TextControl>(); this.textTransform = textEntity.FindComponent<Transform2D>(); this.animation = textEntity.FindComponent<AnimationUI>(); // Default parameters this.UpdateOrientation(); // Initialization value switch (this.orientation) { case Orientation.Vertical: float result = this.maximunOffset * (this.value - this.minimum) / this.difference; this.bulletTransform.Y = -result; this.foregroundTransform.YScale = result; break; case Orientation.Horizontal: this.bulletTransform.X = this.maximunOffset * (this.value - this.minimum) / this.difference; this.foregroundTransform.XScale = this.bulletTransform.X; break; } }