public void Create() { var trigger = new MouseHoldTrigger(Rectangle.One, 0.5f, MouseButton.Right); Assert.AreEqual(Rectangle.One, trigger.HoldArea); Assert.AreEqual(0.5f, trigger.HoldTime); Assert.AreEqual(MouseButton.Right, trigger.Button); }
public void HoldLeftClickOnRectangle() { var drawArea = new Rectangle(0.25f, 0.25f, 0.5f, 0.25f); new FilledRect(drawArea, Color.Blue); var trigger = new MouseHoldTrigger(drawArea); var counter = 0; var text = new FontText(Font.Default, "", drawArea.Move(new Vector2D(0.0f, 0.25f))); new Command(() => text.Text = "MouseHold Triggered " + ++counter + " times.").Add(trigger); }
public void CreateFromString() { var trigger = new MouseHoldTrigger("1 2 3 4 5.5 Right"); Assert.AreEqual(new Rectangle(1, 2, 3, 4), trigger.HoldArea); Assert.AreEqual(5.5f, trigger.HoldTime); Assert.AreEqual(MouseButton.Right, trigger.Button); Assert.Throws<MouseHoldTrigger.CannotCreateMouseHoldTriggerWithoutHoldArea>( () => new MouseHoldTrigger("1 2 3")); }
public void CreateFromString() { var trigger = new MouseHoldTrigger("1 2 3 4 5.5 Right"); Assert.AreEqual(new Rectangle(1, 2, 3, 4), trigger.HoldArea); Assert.AreEqual(5.5f, trigger.HoldTime); Assert.AreEqual(MouseButton.Right, trigger.Button); Assert.Throws <MouseHoldTrigger.CannotCreateMouseHoldTriggerWithoutHoldArea>( () => new MouseHoldTrigger("1 2 3")); }
public void HoldMouseHovering() { var drawArea = new Rectangle(0.25f, 0.25f, 0.5f, 0.25f); var rect = new FilledRect(drawArea, Color.Blue); var trigger = new MouseHoldTrigger(drawArea); trigger.Invoked += () => rect.Color = Color.Red; trigger.Position = new Vector2D(0.3f, 0.3f); Assert.IsFalse(trigger.IsHovering()); AdvanceTimeAndUpdateEntities(1.05f); Assert.IsFalse(trigger.IsHovering()); }
private bool CheckWhichButtonForMouseHoldTriggerToUse(bool foundFreeKey, MouseButton button, int index) { if (foundFreeKey) { return(true); } bool keyAlreadyUsed = false; foreach (Trigger newTrigger in GetTriggersOfCommand()) { keyAlreadyUsed = CheckIfMouseHoldButtonIsAlreadyUsed(newTrigger, button, keyAlreadyUsed); } if (keyAlreadyUsed) { return(false); } var mouseHoldTrigger = new MouseHoldTrigger(new Rectangle(), 0.5f, button); GetTriggersOfCommand()[index] = mouseHoldTrigger; return(true); }