MousePositionTrigger Movement Property Delta Engine Documentation

Namespace: DeltaEngine.Input
Assembly: DeltaEngine.Input (in DeltaEngine.Input.dll) Version: 1.1.1.0 (1.1.1)
Syntax

public Vector2D Movement { get; set; }

Property Value

Type: Vector2D

Implements

MovementTrigger Movement
Remarks

Tests: DeltaEngine.Input.Tests.MousePositionTriggerTests
Examples

3 unit tests call DeltaEngine.Input.MousePositionTrigger.Movement
[Test]
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));
}
    [Test, CloseAfterFirstFrame]
    public void CreateFromAttributes()
    {
        var trigger = new MousePositionTrigger(new Dictionary<string, string>
            {
                { "Button", "Right" },
                { "State", "Pressed" }
            });
        Assert.AreEqual(MouseButton.Right, trigger.Button);
        Assert.AreEqual(State.Pressed, trigger.State);
        Assert.DoesNotThrow(() => new MousePositionTrigger(new Dictionary<string, string>()));
    }

    [Test, CloseAfterFirstFrame]
    public void CheckMouseAndTriggerPosition()
    {
        var mouse = Resolve<Mouse>() as MockMouse;
        if (mouse == null)
            return; //ncrunch: no coverage 
        var trigger = new MousePositionTrigger(MouseButton.Right, State.Pressed);
        trigger.Movement = Vector2D.Zero;
        mouse.SetNativePosition(trigger.Movement);
        Assert.AreEqual(mouse.Position, trigger.Movement);
    }
}
[Test, CloseAfterFirstFrame]
public void CheckMouseAndTriggerPosition()
{
    var mouse = Resolve<Mouse>() as MockMouse;
    if (mouse == null)
        return; //ncrunch: no coverage 
    var trigger = new MousePositionTrigger(MouseButton.Right, State.Pressed);
    trigger.Movement = Vector2D.Zero;
    mouse.SetNativePosition(trigger.Movement);
    Assert.AreEqual(mouse.Position, trigger.Movement);
}
See Also