コード例 #1
0
		private static void CreateViewportCommands(Service service)
		{
			var dragTrigger = new MouseDragTrigger(MouseButton.Middle);
			var zoomTrigger = new MouseZoomTrigger();
			new Command(service.Viewport.OnViewportPanning).Add(dragTrigger);
			new Command(service.Viewport.OnViewPortZooming).Add(zoomTrigger);
		}
コード例 #2
0
        public void SetCommands()
        {
            var leftClickTrigger = new MouseButtonTrigger();

            leftClickTrigger.AddTag("temporary");
            var leftClickCommand = new Command(LeftMouseButton).Add(leftClickTrigger);

            leftClickCommand.AddTag("temporary");
            var middleDragTrigger = new MouseDragTrigger(MouseButton.Middle);

            middleDragTrigger.AddTag("temporary");
            var middleDragCommand = new Command(MiddleMouseDrag).Add(middleDragTrigger);

            middleDragCommand.AddTag("temporary");
            var dragLeftTrigger = new MouseDragTrigger();

            dragLeftTrigger.AddTag("temporary");
            var dragLeftCommand = new Command(LeftMouseDrag).Add(dragLeftTrigger);

            dragLeftCommand.AddTag("temporary");
            var zoomTrigger = new MouseZoomTrigger();

            zoomTrigger.AddTag("temporary");
            var zoomCommand = new Command(Zoom).Add(zoomTrigger);

            zoomCommand.AddTag("temporary");
            var leftReleaseTrigger = new MouseButtonTrigger(State.Releasing);

            leftReleaseTrigger.AddTag("temporary");
            var leftReleaseCommand = new Command(LeftMouseRelease).Add(leftReleaseTrigger);

            leftReleaseCommand.AddTag("temporary");
        }
コード例 #3
0
        private static void CreateViewportCommands(Service service)
        {
            var dragTrigger = new MouseDragTrigger(MouseButton.Middle);
            var zoomTrigger = new MouseZoomTrigger();

            new Command(service.Viewport.OnViewportPanning).Add(dragTrigger);
            new Command(service.Viewport.OnViewPortZooming).Add(zoomTrigger);
        }
コード例 #4
0
 public void DragMouseIsPressingSetPosition()
 {
     if (resolver.GetType() != typeof(MockResolver))
         return; //ncrunch: no coverage
     var mouse = (MockMouse)Resolve<Mouse>();
     var trigger = new MouseDragTrigger();
     new Command(() => { }).Add(trigger);
     mouse.SetButtonState(MouseButton.Left, State.Pressing);
     AdvanceTimeAndUpdateEntities();
     Assert.AreEqual(trigger.StartPosition, mouse.Position);
     mouse.SetPosition(Vector2D.One);
     AdvanceTimeAndUpdateEntities();
     Assert.AreEqual(trigger.Position, mouse.Position);
     mouse.SetButtonState(MouseButton.Left, State.Releasing);
     AdvanceTimeAndUpdateEntities();
     Assert.IsTrue(trigger.DoneDragging);
 }
コード例 #5
0
 public void DragMouseHorizontally()
 {
     if (resolver.GetType() != typeof(MockResolver))
         return; //ncrunch: no coverage start
     var mouse = (MockMouse)Resolve<Mouse>();
     var trigger = new MouseDragTrigger(MouseButton.Left, DragDirection.Horizontal);
     new Command(() => { }).Add(trigger);
     mouse.SetPosition(new Vector2D(0.3f, 0.5f));
     mouse.SetButtonState(MouseButton.Left, State.Pressing);
     AdvanceTimeAndUpdateEntities();
     mouse.SetPosition(new Vector2D(0.7f, 0.5f));
     AdvanceTimeAndUpdateEntities();
     Assert.AreEqual(trigger.Position, mouse.Position);
     mouse.SetButtonState(MouseButton.Left, State.Releasing);
     AdvanceTimeAndUpdateEntities();
     Assert.IsTrue(trigger.DoneDragging);
 }
コード例 #6
0
		public void DragMouseHorizontally()
		{
			if (!IsMockResolver)
				return; //ncrunch: no coverage
			var mouse = (MockMouse)Resolve<Mouse>();
			var trigger = new MouseDragTrigger(MouseButton.Left, DragDirection.Horizontal);
			new Command(() => { }).Add(trigger);
			mouse.SetNativePosition(new Vector2D(0.3f, 0.5f));
			mouse.SetButtonState(MouseButton.Left, State.Pressing);
			AdvanceTimeAndUpdateEntities();
			mouse.SetNativePosition(new Vector2D(0.7f, 0.5f));
			AdvanceTimeAndUpdateEntities();
			Assert.AreEqual(trigger.Position, mouse.Position);
			mouse.SetButtonState(MouseButton.Left, State.Releasing);
			AdvanceTimeAndUpdateEntities();
			Assert.IsTrue(trigger.DoneDragging);
		}
コード例 #7
0
		public void DragMouseIsPressingSetPosition()
		{
			if (!IsMockResolver)
				return; //ncrunch: no coverage
			var mouse = (MockMouse)Resolve<Mouse>();
			var trigger = new MouseDragTrigger();
			new Command(() => { }).Add(trigger);
			mouse.SetButtonState(MouseButton.Left, State.Pressing);
			AdvanceTimeAndUpdateEntities();
			Assert.AreEqual(trigger.StartPosition, mouse.Position);
			mouse.SetNativePosition(Vector2D.One);
			AdvanceTimeAndUpdateEntities();
			Assert.AreEqual(trigger.Position, mouse.Position);
			mouse.SetButtonState(MouseButton.Left, State.Releasing);
			AdvanceTimeAndUpdateEntities();
			Assert.IsTrue(trigger.DoneDragging);
		}
コード例 #8
0
		public void DragMouseVertically()
		{
			if (!IsMockResolver)
				return; //ncrunch: no coverage
			var mouse = (MockMouse)Resolve<Mouse>();
			var trigger = new MouseDragTrigger(MouseButton.Left, DragDirection.Vertical);
			new Command(() => {}).Add(trigger);
			mouse.SetNativePosition(new Vector2D(0.3f, ScreenSpace.Current.Top + 0.1f));
			mouse.SetButtonState(MouseButton.Left, State.Pressing);
			AdvanceTimeAndUpdateEntities();
			mouse.SetNativePosition(new Vector2D(0.3f, ScreenSpace.Current.Bottom - 0.1f));
			AdvanceTimeAndUpdateEntities();
			Assert.AreEqual(mouse.Position, trigger.Position);
			mouse.SetButtonState(MouseButton.Left, State.Releasing);
			AdvanceTimeAndUpdateEntities();
			Assert.IsTrue(trigger.DoneDragging);
		}
コード例 #9
0
		public void SetCommands()
		{
			var leftClickTrigger = new MouseButtonTrigger();
			leftClickTrigger.AddTag("temporary");
			var leftClickCommand = new Command(LeftMouseButton).Add(leftClickTrigger);
			leftClickCommand.AddTag("temporary");
			var middleDragTrigger = new MouseDragTrigger(MouseButton.Middle);
			middleDragTrigger.AddTag("temporary");
			var middleDragCommand = new Command(MiddleMouseDrag).Add(middleDragTrigger);
			middleDragCommand.AddTag("temporary");
			var dragLeftTrigger = new MouseDragTrigger();
			dragLeftTrigger.AddTag("temporary");
			var dragLeftCommand = new Command(LeftMouseDrag).Add(dragLeftTrigger);
			dragLeftCommand.AddTag("temporary");
			var zoomTrigger = new MouseZoomTrigger();
			zoomTrigger.AddTag("temporary");
			var zoomCommand = new Command(Zoom).Add(zoomTrigger);
			zoomCommand.AddTag("temporary");
			var leftReleaseTrigger = new MouseButtonTrigger(State.Releasing);
			leftReleaseTrigger.AddTag("temporary");
			var leftReleaseCommand = new Command(LeftMouseRelease).Add(leftReleaseTrigger);
			leftReleaseCommand.AddTag("temporary");
		}
コード例 #10
0
 private static void CreateViewportCommands(Service service)
 {
     var dragTrigger = new MouseDragTrigger(Input.MouseButton.Middle);
     dragTrigger.AddTag("ViewControl");
     var zoomTrigger = new MouseZoomTrigger();
     zoomTrigger.AddTag("ViewControl");
     var panningCommand = new Command(service.Viewport.OnViewportPanning).Add(dragTrigger);
     var zoomCommand = new Command(service.Viewport.OnViewPortZooming).Add(zoomTrigger);
     panningCommand.AddTag("ViewControl");
     zoomCommand.AddTag("ViewControl");
 }