Пример #1
0
        public MasterViewModel(Map mapV)
        {
            //Models
            _planeVM = new PlaneViewModel();
            _mapVM   = new MapViewModel(mapV);

            //Simconnect
            _simconnectConnectionState               = FSXConnectionManager.CONNECTION_STATE.Disconnected;
            ConnectionManager.DataReceived          += ProcessSimConnectMessage;
            ConnectionManager.ChangeConnectionState += ChangeSimconnectConnection;

            //Navaids data
            _navaidsDataLock       = new object();
            _navaidsDataLoaded     = false;
            _navaidsDataLoadedLock = new object();
            _navaidSettingsLock    = new object();
            _navaidSettings        = new NavaidSettings()
            {
                BoolNdb = true, BoolVor = true
            };
            _navaidsSettings             = false;
            _selectedDistanceKmValueLock = new object();
            DistanceKmValueList          = new ObservableCollection <int>(Constants.MaxDistanceKmList);
            SelectedDistanceKmValueList  = DistanceKmValueList.FirstOrDefault();

            //Map data
            _zoom                         = Constants.StartZoom;
            _maxZoom                      = Constants.MaxZoom;
            _minZoom                      = Constants.MinZoom;
            _mapVM.Zoom                   = Constants.StartZoom;
            _autoMapCenter                = true;
            _nextMouseButtonDownOff       = false;
            _mapVM.MouseDoubleClickEvent += MouseDoubleClick;
            _mapVM.MouseWheelEvent       += MouseWheelEvent;
            _mapVM.MouseDownEvent        += MouseDown;

            //Plane data

            _planeLocationLock = new object();


            ResetMapZoom();
            ConnectToSimconnect();
            LoadNavaidsDataTask();
        }
Пример #2
0
 private void ChangeSimconnectConnection(FSXConnectionManager.CONNECTION_STATE state)
 {
     SimconnectConnectionState = state;
 }