示例#1
0
        /// <summary>
        /// Property changes from option settings
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void PropertyChangedSettings(object sender, PropertyChangedEventArgs e)
        {
            try
            {
                ThreadContext.BeginInvokeOnUiThread(
                    delegate
                {
                    switch (e.PropertyName)
                    {
                    case "AccentColor":
                    case "ModelType":
                        ModelType = Settings.Settings.ModelType;
                        LoadGEM();
                        break;
                    }
                });
            }
            catch (Exception ex)
            {
                var monitorItem = new MonitorEntry
                {
                    Datetime = HiResDateTime.UtcNow,
                    Device   = MonitorDevice.Telescope,
                    Category = MonitorCategory.Interface,
                    Type     = MonitorType.Error,
                    Method   = MethodBase.GetCurrentMethod().Name,
                    Thread   = Thread.CurrentThread.ManagedThreadId,
                    Message  = $"{ex.Message}"
                };
                MonitorLog.LogToMonitor(monitorItem);

                SkyServer.AlertState = true;
                OpenDialog(ex.Message);
            }
        }
示例#2
0
        /// <summary>
        /// Property changes from the server
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void PropertyChangedSkyServer(object sender, PropertyChangedEventArgs e)
        {
            try
            {
                ThreadContext.BeginInvokeOnUiThread(
                    delegate
                {
                    switch (e.PropertyName)
                    {
                    case "Altitude":
                        if (!AltVis)
                        {
                            return;
                        }
                        Altitude = _util.DegreesToDMS(SkyServer.Altitude, "° ", ":", "", 2);
                        break;

                    case "Azimuth":
                        if (!AzVis)
                        {
                            return;
                        }
                        Azimuth = _util.DegreesToDMS(SkyServer.Azimuth, "° ", ":", "", 2);
                        break;

                    case "DeclinationXForm":
                        if (!DecVis)
                        {
                            return;
                        }
                        Declination = _util.DegreesToDMS(SkyServer.DeclinationXForm, "° ", ":", "", 2);
                        break;

                    case "Lha":
                        Lha = _util.HoursToHMS(SkyServer.Lha, "h ", ":", "", 2);
                        break;

                    case "RightAscensionXForm":
                        RightAscension = _util.HoursToHMS(SkyServer.RightAscensionXForm, "h ", ":", "", 2);
                        Rotate();
                        break;

                    case "IsMountRunning":
                        ScreenEnabled = SkyServer.IsMountRunning;
                        break;

                    case "SiderealTime":
                        if (!SideVis)
                        {
                            return;
                        }
                        SiderealTime = _util.HoursToHMS(SkyServer.SiderealTime);
                        break;

                    case "ActualAxisX":
                        if (!RaAxisVis)
                        {
                            return;
                        }
                        ActualAxisX = $"{Numbers.TruncateD(SkyServer.ActualAxisX, 2)}";
                        break;

                    case "ActualAxisY":
                        if (!DecAxisVis)
                        {
                            return;
                        }
                        ActualAxisY = $"{Numbers.TruncateD(SkyServer.ActualAxisY, 3)}";
                        break;
                    }
                });
            }
            catch (Exception ex)
            {
                var monitorItem = new MonitorEntry
                {
                    Datetime = HiResDateTime.UtcNow,
                    Device   = MonitorDevice.Telescope,
                    Category = MonitorCategory.Interface,
                    Type     = MonitorType.Error,
                    Method   = MethodBase.GetCurrentMethod().Name,
                    Thread   = Thread.CurrentThread.ManagedThreadId,
                    Message  = $"{ex.Message}"
                };
                MonitorLog.LogToMonitor(monitorItem);

                SkyServer.AlertState = true;
                OpenDialog(ex.Message);
            }
        }