Allows a touch flick to be detected.
View code on GitHub
Inheritance Hierarchy
DeltaEngine.Entities Entity
DeltaEngine.Commands Trigger
DeltaEngine.Commands InputTrigger
DeltaEngine.Input TouchFlickTrigger
Namespace: DeltaEngine.Input
Assembly: DeltaEngine.Input (in DeltaEngine.Input.dll) Version: 1.1.1.0 (1.1.1)
Syntax
The TouchFlickTrigger type exposes the following members.
Constructors
Name | Description | |
---|---|---|
![]() | TouchFlickTrigger | Initializes a new instance of the TouchFlickTrigger class |
![]() | TouchFlickTrigger(Dictionary String, String ) | Initializes a new instance of the TouchFlickTrigger class |
Methods
Name | Description | |
---|---|---|
![]() | Add T | (Inherited from Entity.) |
![]() | AddTag | (Inherited from Entity.) |
![]() | ClearTags | (Inherited from Entity.) |
![]() | Contains T | (Inherited from Entity.) |
![]() | ContainsBehavior T | (Inherited from Entity.) |
![]() | ContainsTag | (Inherited from Entity.) |
![]() | Deactivate | (Inherited from Entity.) |
![]() | Dispose | (Inherited from Entity.) |
![]() | Get T |
Gets a specific component, derived classes can return faster cached values (e.g. Entity2D)
View code on GitHub (Inherited from Entity.) |
![]() | GetActiveBehaviors | (Inherited from Entity.) |
![]() | GetComponentsForSaving | (Inherited from Entity.) |
![]() | GetOrDefault T | (Inherited from Entity.) |
![]() | GetTags | (Inherited from Entity.) |
![]() | HandleWithTouch | |
![]() | Invoke | (Inherited from Trigger.) |
![]() | Remove T | (Inherited from Entity.) |
![]() | RemoveTag | (Inherited from Entity.) |
![]() | Set | (Inherited from Entity.) |
![]() | SetComponents | (Inherited from Entity.) |
![]() | Start T | (Inherited from Entity.) |
![]() | StartInputDevice | (Overrides InputTrigger StartInputDevice .) |
![]() | Stop T | (Inherited from Entity.) |
![]() | ToString | (Inherited from Entity.) |
![]() | Update | (Inherited from Trigger.) |
Fields
Name | Description | |
---|---|---|
![]() | components | (Inherited from Entity.) |
![]() | Invoked | (Inherited from Trigger.) |
Properties
Name | Description | |
---|---|---|
![]() | IsActive | (Inherited from Entity.) |
![]() | IsPauseable | (Inherited from Trigger.) |
![]() | NumberOfComponents | (Inherited from Entity.) |
![]() | PressTime | |
![]() | StartPosition | |
![]() | UpdatePriority | (Inherited from Entity.) |
![]() | WasInvokedThisTick | (Inherited from Trigger.) |
Remarks
Examples
[Test] 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)); }
[Test, CloseAfterFirstFrame] public void FlickDetection() { var trigger = new TouchFlickTrigger(); var touch = Resolve<Touch>() as MockTouch; if (touch == null) return; //ncrunch: no coverage bool flickHappened = false; trigger.Invoked += () => flickHappened = true; AdvanceTouchTick(touch, State.Pressing, new Vector2D(0.5f, 0.5f), trigger); Assert.IsFalse(flickHappened); Assert.AreEqual(0, trigger.PressTime); AdvanceTouchTick(touch, State.Pressed, new Vector2D(0.52f, 0.5f), trigger); Assert.IsFalse(flickHappened); AdvanceTouchTick(touch, State.Releasing, new Vector2D(0.6f, 0.5f), trigger); Assert.IsTrue(flickHappened); Assert.AreEqual(new Vector2D(0.5f, 0.5f), trigger.StartPosition); }
[Test, CloseAfterFirstFrame] public void Creation() { Assert.DoesNotThrow(() => new TouchFlickTrigger()); Assert.Throws<TouchFlickTrigger.TouchFlickTriggerHasNoParameters>( () => new TouchFlickTrigger(new Dictionary<string, string> { { "Button", "Left" } })); }
See Also