private void SetupOK()
        {
            if (!IsTelescopeActive && TelescopeID != TelescopeSetupVm.TelescopeID)
            {
                TelescopeID = TelescopeSetupVm.TelescopeID;
                TelescopeManager.SetTelescopeID(TelescopeID);
            }

            if (!IsDomeActive && DomeID != DomeSetupVm.DomeID)
            {
                DomeID = DomeSetupVm.DomeID;
                DomeManager.SetDomeID(DomeID);
            }

            Globals.DomeLayout = DomeSetupVm.GetLayout();

            if (!IsFocuserActive && FocuserID != FocuserSetupVm.FocuserID)
            {
                FocuserID = FocuserSetupVm.FocuserID;
                FocuserManager.SetFocuserID(FocuserID);
            }

            Globals.SuppressTrayBubble       = SuppressTrayBubble;
            Globals.UseCustomTheme           = UseCustomTheme;
            Globals.FocuserTemperatureOffset = FocuserSetupVm.TemperatureOffset;

            SaveSettings();

            OnRequestClose(true);
        }
        private static void LoadDeviceSettings()
        {
            TelescopeSettings scopeSettings = TelescopeSettings.FromProfile();

            TelescopeManager.SetTelescopeID(scopeSettings.TelescopeID);

            DomeSettings domeSettings = DomeSettings.FromProfile();

            DomeManager.SetDomeID(domeSettings.DomeID);
            Globals.DomeLayout                  = domeSettings.DomeLayout;
            Globals.DomeAzimuthAdjustment       = domeSettings.AzimuthAdjustment;
            Globals.UsePOTHDomeSlaveCalculation = domeSettings.UsePOTHDomeSlaveCalculation;
            Globals.FindDomeHomeAtStartup       = domeSettings.FindDomeHomeAtStartup;
            FocuserSettings focuserSettings = FocuserSettings.FromProfile();

            FocuserManager.SetFocuserID(focuserSettings.FocuserID);
            Globals.FocuserTemperatureOffset = focuserSettings.TemperatureOffset;
        }