Exemple #1
0
        public IActionResult Edit()
        {
            FloorPlanViewModel vm = new FloorPlanViewModel();

            vm.DimensionsJson = JsonConvert.SerializeObject(_dimRepo.GetAll());
            return(View(vm));
        }
        private void RemoveRoom(RoomControl roomControl)
        {
            FloorPlanViewModel vm = DataContext as FloorPlanViewModel;

            vm.FloorPlan.RoomAssignments.Remove(roomControl.RoomAssignment);
            grid.Children.Remove(roomControl);
            vm.SelectedRoomAssignment = null;
            selectedRoomControl       = null;
        }
        private void DockPanel_Loaded(object sender, RoutedEventArgs e)
        {
            FloorPlanViewModel vm = DataContext as FloorPlanViewModel;

            if (!vm.FloorPlan.FromFile)
            {
                OnChangeObserved(new ChangeObservedEventArgs(vm.FloorPlan.UnsavedChanges, vm.FloorPlan.Name,
                                                             vm.FloorPlan.ChangeManager.GetObserverByName("Name")));
            }
        }
        private void ChangeManager_ChangeObserved(object sender, ChangeObservedEventArgs e)
        {
            FloorPlanViewModel vm = DataContext as FloorPlanViewModel;

            if (e.Observer.PropertyName == "Name")
            {
                OnFloorNameChanged(new NameChangedEventArgs("", vm.FloorPlan?.AnyUnsavedChanges ?? false ? e.NewValue + "*" : e.NewValue));
            }
            else
            {
                OnChangeObserved(new ChangeObservedEventArgs(vm.FloorPlan?.AnyUnsavedChanges ?? false, vm.FloorPlan?.Name, e.Observer));
            }
        }
        public FloorPlanGrid(FloorPlan floorPlan, ProjectFile projectFile)
        {
            InitializeComponent();
            floorPlan.FloorNameChanged             += FloorPlan_FloorNameChanged;
            floorPlan.NameChanged                  += FloorPlan_FloorNameChanged;
            floorPlan.ChangeManager.ChangeObserved += ChangeManager_ChangeObserved;
            this.projectFile = projectFile;

            FloorPlanViewModel vm = DataContext as FloorPlanViewModel;

            vm.ProjectFile = projectFile;
            floorPlan.Load();
            vm.FloorPlan = floorPlan;
            AddRooms();
        }
        private void grid_MouseLeftButtonDown(object sender, MouseButtonEventArgs e)
        {
            if (roomControlClicked)
            {
                roomControlClicked = false;
                return;
            }
            if (selectedRoomControl != null)
            {
                selectedRoomControl.Background = Brushes.Transparent;
            }
            FloorPlanViewModel vm = DataContext as FloorPlanViewModel;

            vm.SelectedRoomAssignment = null;
            selectedRoomControl       = null;
            vm.SelectedTabIndex       = 0;
        }
Exemple #7
0
        public IActionResult Index(int floor)
        {
            MySqlConnection con = new MySqlConnection("host=sql7.freemysqlhosting.net;user=sql7323917;password=s1VSnVYe3w;database=sql7323917;");
            string          sql = " SELECT area_number, area_amount FROM Camera  ";
            MySqlCommand    cmd = new MySqlCommand(sql, con);

            con.Open();

            MySqlDataReader reader = cmd.ExecuteReader();

            Dictionary <string, string> values = new Dictionary <string, string>();

            while (reader.Read())
            {
                string area_number = reader.GetString(0);
                string area_amount = reader.GetString(1);
                values.Add(area_number, area_amount);
            }

            foreach (KeyValuePair <string, string> entry in values)
            {
                Area area = _areaRepo.GetByAreaNumber(entry.Key);
                if (area != null)
                {
                    area.Amount = Convert.ToInt32(entry.Value);
                    _areaRepo.Update(area);
                }
                else
                {
                    area = new Area(entry.Key, Convert.ToInt32(entry.Value));
                    _areaRepo.Add(area);
                }
            }
            con.Close();
            _areaRepo.SaveChanges();

            FloorPlanViewModel vm = new FloorPlanViewModel();

            vm.Dimensions = _dimRepo.GetAll().Where(dim => dim.Floor == floor).ToList();
            vm.Areas      = _areaRepo.GetAll();
            vm.FloorId    = floor;
            return(View(vm));
        }
        private void RoomControl_MouseLeftButtonDown(object sender, MouseButtonEventArgs e)
        {
            roomControlClicked = true;
            FloorPlanViewModel vm = DataContext as FloorPlanViewModel;

            if (selectedRoomControl != null)
            {
                selectedRoomControl.Background = Brushes.Transparent;
            }
            RoomControl roomControl = sender as RoomControl;

            RoomAssignment roomAssignment = vm.FloorPlan.RoomAssignments.FirstOrDefault(x => x.Control.Tag == roomControl.Tag);

            vm.SelectedRoomAssignment = roomAssignment;

            roomControl.Background = new SolidColorBrush(Color.FromArgb(64, 255, 128, 0));
            selectedRoomControl    = roomControl;
            vm.SelectedTabIndex    = 1;
        }
        private void AddRooms()
        {
            FloorPlanViewModel vm = DataContext as FloorPlanViewModel;

            foreach (RoomAssignment roomAssignment in vm.FloorPlan.RoomAssignments)
            {
                RoomControl roomControl = new RoomControl(roomAssignment)
                {
                    Width  = roomAssignment.RoomPlan.TilesX * 25,
                    Height = roomAssignment.RoomPlan.TilesY * 25,
                    Tag    = tagIndex
                };
                tagIndex++;

                roomControl.MouseLeftButtonDown += RoomControl_MouseLeftButtonDown;
                roomControl.ChangeObserved      += ChangeManager_ChangeObserved;

                Canvas.SetLeft(roomControl, roomAssignment.X);
                Canvas.SetTop(roomControl, roomAssignment.Y);

                grid.Children.Add(roomControl);
            }
        }