public void PressKeyToShowCircle() { new FontText(Font.Default, "Press A on Keyboard to show red circle", Rectangle.One); var ellipse = new Ellipse(new Rectangle(0.1f, 0.1f, 0.1f, 0.1f), Color.Red); new Command(() => ellipse.Center = Vector2D.Half).Add(new KeyTrigger(Key.A, State.Pressed)); new Command(() => ellipse.Center = Vector2D.Zero).Add(new KeyTrigger(Key.A, State.Released)); }
public void ShowRedCircleOnFlick() { new FontText(Font.Default, "Flick screen to show red circle", Rectangle.One); var ellipse = new Ellipse(new Rectangle(0.1f, 0.1f, 0.1f, 0.1f), Color.Red); new Command(() => ellipse.Center = Vector2D.Half).Add(new TouchFlickTrigger()); new Command(() => ellipse.Center = Vector2D.Zero).Add(new TouchPressTrigger(State.Released)); }
public void PressingGamePadButtonShowsCircle() { new FontText(Font.Default, "Press X on GamePad to show red circle", Rectangle.One); var ellipse = new Ellipse(new Rectangle(0.1f, 0.1f, 0.1f, 0.1f), Color.Red); new Command(() => ellipse.Center = Vector2D.Half).Add(new GamePadButtonTrigger( GamePadButton.X, State.Pressed)); new Command(() => ellipse.Center = Vector2D.Zero).Add(new GamePadButtonTrigger( GamePadButton.X, State.Released)); }
public void MovingSticksTranslatesCircle() { var ellipseLeft = new Ellipse(new Rectangle(0.4f, 0.5f, 0.1f, 0.1f), Color.Green); var ellipseRight = new Ellipse(new Rectangle(0.6f, 0.5f, 0.1f, 0.1f), Color.Blue); new Command(pos => ellipseLeft.Center = pos * 0.2f + Vector2D.Half).Add( new GamePadAnalogTrigger(GamePadAnalog.LeftThumbStick)); new Command(pos => ellipseRight.Center = pos * 0.2f + Vector2D.Half).Add( new GamePadAnalogTrigger(GamePadAnalog.RightThumbStick)); }
public void ChangingMenuRenderLayerChangesRenderLayerOfControls() { menu.AddMenuOption(() => { }); var ellipse = new Ellipse(Rectangle.HalfCentered, Color.Red); menu.Add(ellipse); menu.RenderLayer = 30; Assert.AreEqual(30, menu.RenderLayer); Assert.AreEqual(30, menu.Buttons[0].RenderLayer); Assert.AreEqual(30, ellipse.RenderLayer); }
public void RenderFallingCircle() { var ellipse = new Ellipse(Vector2D.Half, 0.1f, 0.1f, Color.Blue); ellipse.Add(new SimplePhysics.Data { Velocity = new Vector2D(0.1f, -0.1f), Gravity = new Vector2D(0.0f, 0.1f) }); ellipse.Start<SimplePhysics.Move>(); }
public void ShowRedCircleOnPinch() { new FontText(Font.Default, "Pinch screen to show red circle", Rectangle.One); var ellipse = new Ellipse(new Rectangle(0.1f, 0.1f, 0.1f, 0.1f), Color.Red); var trigger = new TouchPinchTrigger(); var touch = Resolve<Touch>(); new Command(() => //ncrunch: no coverage start { ellipse.Center = touch.GetPosition(0); ellipse.Size = new Size(trigger.Distance * 0.5f); }).Add(trigger); //ncrunch: no coverage end }
public void SetUp() { ellipse = new Ellipse(Vector2D.Half, 0.2f, 0.1f, Color.Blue); ellipse.Add(new Name("name")); writer = new EntityWriter(ellipse); drawAreaBox = writer.scene.Controls[1] as TextBox; colorRSlider = writer.scene.Controls[3] as Slider; colorGSlider = writer.scene.Controls[5] as Slider; colorBSlider = writer.scene.Controls[7] as Slider; colorASlider = writer.scene.Controls[9] as Slider; nameBox = writer.scene.Controls[11] as TextBox; rotationBox = writer.scene.Controls[13] as TextBox; rotationCenterBox = writer.scene.Controls[15] as TextBox; }
private static void AddCirclesAndInputCommands(Vector2D[] centers, Size size) { var up = new Ellipse(centers[0], size.Width, size.Height, Color.Orange); var down = new Ellipse(centers[1], size.Width, size.Height, Color.Orange); var left = new Ellipse(centers[2], size.Width, size.Height, Color.Orange); var right = new Ellipse(centers[3], size.Width, size.Height, Color.Orange); new Command(() => up.IsVisible = true).Add(new KeyTrigger(Key.CursorUp, State.Pressed)); new Command(() => up.IsVisible = false).Add(new KeyTrigger(Key.CursorUp, State.Released)); new Command(() => down.IsVisible = true).Add(new KeyTrigger(Key.CursorDown, State.Pressed)); new Command(() => down.IsVisible = false).Add(new KeyTrigger(Key.CursorDown, State.Released)); new Command(() => left.IsVisible = true).Add(new KeyTrigger(Key.CursorLeft, State.Pressed)); new Command(() => left.IsVisible = false).Add(new KeyTrigger(Key.CursorLeft, State.Released)); new Command(() => right.IsVisible = true).Add(new KeyTrigger(Key.CursorRight, State.Pressed)); new Command(() => right.IsVisible = false).Add(new KeyTrigger(Key.CursorRight, State.Released)); }
private void InitializeVariables(Ellipse entity) { var rotation = entity.Rotation; rotationSin = MathExtensions.Sin(rotation); rotationCos = MathExtensions.Cos(rotation); rotationCenter = entity.RotationCenter; center = entity.DrawArea.Center; if (center != rotationCenter) center = center.RotateAround(rotationCenter, rotationSin, rotationCos); radiusX = entity.RadiusX; radiusY = entity.RadiusY; float maxRadius = MathExtensions.Max(radiusX, radiusY); pointsCount = GetPointsCount(maxRadius); theta = -360.0f / (pointsCount - 1); }
public void PressGamePadButtonsToShowCircles() { var circleA = new Ellipse(new Rectangle(0.1f, 0.1f, 0.1f, 0.1f), Color.Green); var circleB = new Ellipse(new Rectangle(0.1f, 0.1f, 0.1f, 0.1f), Color.Red); var circleX = new Ellipse(new Rectangle(0.1f, 0.1f, 0.1f, 0.1f), Color.Blue); var circleY = new Ellipse(new Rectangle(0.1f, 0.1f, 0.1f, 0.1f), Color.Yellow); new Command(() => circleA.Center = new Vector2D(0.5f, 0.75f)).Add( new GamePadButtonTrigger(GamePadButton.A, State.Pressed)); new Command(() => circleA.Center = Vector2D.Zero).Add(new GamePadButtonTrigger( GamePadButton.A, State.Released)); new Command(() => circleB.Center = new Vector2D(0.75f, 0.5f)).Add( new GamePadButtonTrigger(GamePadButton.B, State.Pressed)); new Command(() => circleB.Center = Vector2D.Zero).Add(new GamePadButtonTrigger( GamePadButton.B, State.Released)); new Command(() => circleX.Center = new Vector2D(0.25f, 0.5f)).Add( new GamePadButtonTrigger(GamePadButton.X, State.Pressed)); new Command(() => circleX.Center = Vector2D.Zero).Add(new GamePadButtonTrigger( GamePadButton.X, State.Released)); new Command(() => circleY.Center = new Vector2D(0.5f, 0.25f)).Add( new GamePadButtonTrigger(GamePadButton.Y, State.Pressed)); new Command(() => circleY.Center = Vector2D.Zero).Add(new GamePadButtonTrigger( GamePadButton.Y, State.Released)); }
public void SetUp() { selector = new EntitySelector(); ellipse = new Ellipse(Vector2D.Half, 0.1f, 0.1f, Color.Blue); mouse = Resolve<Mouse>() as MockMouse; }
public void ShowRedCircleOnTouchWithMovement() { var ellipse = new Ellipse(new Rectangle(-0.1f, -0.1f, 0.1f, 0.1f), Color.Red); new Command(pos => ellipse.Center = pos).Add(new TouchPositionTrigger(State.Pressed)); }
public void MoveMouseToUpdatePositionOfCircle() { var ellipse = new Ellipse(new Rectangle(-0.1f, -0.1f, 0.1f, 0.1f), Color.Red); new Command(pos => ellipse.Center = pos).Add(new MouseMovementTrigger()); }
public void RenderMovingCircleUsingExtension() { var ellipse = new Ellipse(Vector2D.Half, 0.1f, 0.1f, Color.Blue); ellipse.StartMoving(new Vector2D(0.1f, -0.1f)); }
public void ShowRedCircleOnTouchAtTouchPosition() { new FontText(Font.Default, "Touch screen to show red circle", Rectangle.One); var ellipse = new Ellipse(new Rectangle(0.1f, 0.1f, 0.1f, 0.1f), Color.Red); new Command(() => TranslateOnTouch(ellipse)).Add(new TouchPressTrigger(State.Pressed)); }
public void ClickAndHoldToShowRedEllipseAtMousePosition() { var ellipse = new Ellipse(new Rectangle(-0.1f, -0.1f, 0.1f, 0.1f), Color.Red); new Command(position => ellipse.Center = position).Add(new MouseButtonTrigger(State.Pressed)); }
public void MenuRenderLayerIsAppliedToControls() { menu.AddMenuOption(() => { }); var ellipse = new Ellipse(Rectangle.HalfCentered, Color.Red); menu.Add(ellipse); Assert.AreEqual(BaseRenderLayer, menu.RenderLayer); Assert.AreEqual(BaseRenderLayer, menu.Buttons[0].RenderLayer); Assert.AreEqual(BaseRenderLayer, ellipse.RenderLayer); }
public void UseMoveDirectlyCommandToMoveCircleAround() { var circle = new Ellipse(Vector2D.Half, 0.25f, 0.25f, Color.Orange); new Command(Command.MoveDirectly, position => circle.DrawArea = circle.DrawArea.Move(position / 24.0f)); //ncrunch: no coverage }
public void ZoomCircleWithPageUpPageDown() { var circle = new Ellipse(Vector2D.Half, 0.25f, 0.25f, Color.Orange); new Command(Command.Zoom, zoom => circle.DrawArea = circle.DrawArea.Increase(new Size(zoom / 24.0f))); //ncrunch: no coverage }
public void ResizeEllipseByZoomTrigger() { var ellipse = new Ellipse(Vector2D.Half, 0.1f, 0.1f, Color.Red); new Command(zoomAmount => { ellipse.Radius += zoomAmount * 0.02f; }).Add( new MouseZoomTrigger()); }
public void ShowRedCircleOnMouseClickWithMovement() { var ellipse = new Ellipse(new Rectangle(-0.1f, -0.1f, 0.1f, 0.1f), Color.Red); new Command(pos => ellipse.Center = pos).Add(new MousePositionTrigger(MouseButton.Left, State.Pressed)); }