コード例 #1
0
        /// <summary>
        /// Fired when the mouse moves over canvas
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void MouseMovesOnCanvasEventHandler(object sender, MouseEventArgs e)
        {
            //location mouse on canvas
            X.Text = ((int)e.GetPosition(Canvas).X).ToString();
            Y.Text = ((int)e.GetPosition(Canvas).Y).ToString();


            // drawing Ghost Building
            if (Tool == Tools.Building)
            {
                BuildingCreator.DrawGhost(e.GetPosition(Canvas), Canvas);
            }

            // drawin Ghost Garage
            if (Tool == Tools.Garage)
            {
                GarageCreator.DrawGhost(e.GetPosition(Canvas), Canvas);
            }

            if (e.LeftButton == MouseButtonState.Pressed)
            {
                leftButtonWasPressed = true;
                // drawing Ghost Road
                if (Tool == Tools.Road)
                {
                    RoadCreator.DrawGhost(e.GetPosition(Canvas), Canvas, ObjectHandler.Roads);
                }
            }
        }
コード例 #2
0
ファイル: ObjectHandler.cs プロジェクト: TheKoen/SE1d3-KBS2
        /// <summary>
        /// Redraw all objects on Canvas
        /// </summary>
        public static void RedrawAllObjects(Canvas canvas)
        {
            //clear canvas
            canvas.Children.Clear();

            //draw roads
            foreach (var road in Roads)
            {
                RoadCreator.DrawRoad(canvas, road);
            }

            //draw Buildings
            foreach (var building in Buildings)
            {
                BuildingCreator.DrawBuilding(canvas, building);
            }

            //draw Garages
            foreach (var garage in Garages)
            {
                GarageCreator.drawGarage(canvas, garage);
            }

            // check for unnessesary intersection if so remove or nessesary
            IntersectionCreator.UpdateIntersections(Roads, Intersections);

            //draw Intersection
            foreach (var intersection in Intersections)
            {
                IntersectionCreator.DrawIntersection(canvas, intersection);
            }
        }
コード例 #3
0
 /// <summary>
 /// Fired when the mouse clicks on canvas
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 private void MouseClicksOnCanvasEventHandler(object sender, MouseEventArgs e)
 {
     if (Tool == Tools.Building)
     {
         BuildingCreator.CreateBuilding(e.GetPosition(Canvas), Canvas, ObjectHandler.Buildings);
     }
     if (Tool == Tools.Garage)
     {
         GarageCreator.CreateGarage(e.GetPosition(Canvas), Canvas, ObjectHandler.Garages, ObjectHandler.Roads);
     }
 }
コード例 #4
0
        public void GarageHandler_CreateGarage_Succeed()
        {
            // Arrange
            var garageCreator = new GarageCreator();
            var garageHandler = new GarageHandler();
            Garage <Vehicle> garage;

            // Act

            garage = garageHandler.CreateGarage(1);

            // Assert

            Assert.IsNotNull(garage);
        }
コード例 #5
0
        public void GarageHandler_CreateGarage_Capacity_IsCorrect()
        {
            // Arrange
            var garageCreator = new GarageCreator();
            var garageHandler = new GarageHandler();
            int capacity      = 1;
            Garage <Vehicle> garage;

            // Act

            garage = garageHandler.CreateGarage(1);

            // Assert

            Assert.AreEqual(garage.Capacity, capacity);
        }
コード例 #6
0
        public void TakeOutVehicle_DoesNotExist_Car()
        {
            // Arrange

            var garageCreator = new GarageCreator();
            var garageHandler = new GarageHandler();
            var garage        = garageHandler.CreateGarage(1);

            garageHandler.ParkCar(garage, "SWW023", "white", 4, 2000, "Diseal", 1);


            // Act

            bool noSuccess = garageCreator.TakeOutVehicle(garage, "abcd123");

            // Assert

            Assert.IsFalse(noSuccess);
        }
コード例 #7
0
        public void FindByRegNumber_NotSucceed()
        {
            // Arrange

            var garageCreator = new GarageCreator();
            var garageHandler = new GarageHandler();
            var garage        = garageHandler.CreateGarage(1);

            garageHandler.ParkCar(garage, "abc123", "white", 4, 2000, "Diseal", 1);


            // Act

            Vehicle vehicle = garageCreator.FindByRegNumber(garage, "SWW023");

            // Assert

            Assert.IsNull(vehicle);
        }
コード例 #8
0
        public void FindByRegNumber_Succeed()
        {
            // Arrange

            var garageCreator = new GarageCreator();
            var garageHandler = new GarageHandler();
            var garage        = garageHandler.CreateGarage(1);
            Car expectedCar   = new Car("SWW023", "white", 4, 2000, "Diseal", 1);

            garageHandler.ParkCar(garage, "SWW023", "white", 4, 2000, "Diseal", 1);


            // Act

            Vehicle vehicle = garageCreator.FindByRegNumber(garage, "SWW023");


            // Assert
            // Find Car
            Assert.AreEqual(expectedCar.RegisteringNumber, vehicle.RegisteringNumber);
            Assert.AreEqual(expectedCar.Color, vehicle.Color);
            Assert.AreEqual(expectedCar.NoWheel, vehicle.NoWheel);
        }
コード例 #9
0
ファイル: ObjectHandler.cs プロジェクト: TheKoen/SE1d3-KBS2
 /// <summary>
 /// Remove ghosts
 /// </summary>
 public void RemoveGhosts()
 {
     BuildingCreator.RemoveGhost(Canvas);
     RoadCreator.RemoveGhost(Canvas);
     GarageCreator.RemoveGhost(Canvas);
 }