Beispiel #1
0
 public static void Initialize()
 {
     if (!UwpDesktop.IsUwpSupported())
     {
         JsonConfig.settings.useWindowsLocation = false;
     }
     else if (JsonConfig.settings.useWindowsLocation && !UwpLocation.HasAccess())
     {
         JsonConfig.settings.useWindowsLocation = false;
         JsonConfig.settings.latitude           = null;
         JsonConfig.settings.longitude          = null;
     }
 }
        private void InputDialog_Load(object sender, EventArgs e)
        {
            if (JsonConfig.settings.location != null)
            {
                locationBox.Text = JsonConfig.settings.location;
            }

            radioButton2.Enabled  = UwpDesktop.IsUwpSupported();
            hasLocationPermission = UwpLocation.HasAccess();

            if (JsonConfig.settings.sunriseTime != null && JsonConfig.settings.sunsetTime != null)
            {
                sunriseTimePicker.Value = DateTime.Parse(JsonConfig.settings.sunriseTime,
                                                         CultureInfo.InvariantCulture);
                sunsetTimePicker.Value = DateTime.Parse(JsonConfig.settings.sunsetTime,
                                                        CultureInfo.InvariantCulture);
            }
            else
            {
                sunriseTimePicker.Value = DateTime.Today.AddHours(6);
                sunsetTimePicker.Value  = DateTime.Today.AddHours(18);
            }

            sunriseTimePicker.MinDate = sunriseTimePicker.Value.Date;
            sunriseTimePicker.MaxDate = sunsetTimePicker.Value.Date.AddHours(24);

            if (JsonConfig.settings.sunriseSunsetDuration > 0)
            {
                sunriseSunsetDurationBox.Value = JsonConfig.settings.sunriseSunsetDuration;
            }

            if (JsonConfig.settings.useWindowsLocation)
            {
                radioButton2.Checked = true;
            }
            else if (JsonConfig.settings.dontUseLocation)
            {
                radioButton3.Checked = true;
            }

            UpdateGuiState();
        }
        private void InputDialog_Load(object sender, EventArgs e)
        {
            foreach (TimeZoneInfo tzi in TimeZoneInfo.GetSystemTimeZones())
            {
                timezoneBox.Items.Add(tzi.Id);
            }

            if (JsonConfig.settings.location != null)
            {
                locationBox.Text = JsonConfig.settings.location;
            }

            radioButton2.Enabled  = UwpDesktop.IsUwpSupported();
            hasLocationPermission = UwpLocation.HasAccess();

            sunriseTimePicker.MinDate = DateTime.Today;
            sunsetTimePicker.MaxDate  = DateTime.Today.AddDays(1);

            if (JsonConfig.settings.sunriseTime != null && JsonConfig.settings.sunsetTime != null)
            {
                sunriseTimePicker.Value = UpdateHandler.SafeParse(JsonConfig.settings.sunriseTime, TimeZoneInfo.FindSystemTimeZoneById(JsonConfig.settings.timezone)).Time;
                sunsetTimePicker.Value  = UpdateHandler.SafeParse(JsonConfig.settings.sunsetTime, TimeZoneInfo.FindSystemTimeZoneById(JsonConfig.settings.timezone)).Time;
            }
            else
            {
                sunriseTimePicker.Value = DateTime.Today.AddHours(6);
                sunsetTimePicker.Value  = DateTime.Today.AddHours(18);
            }

            if (JsonConfig.settings.sunriseSunsetDuration > 0)
            {
                sunriseSunsetDurationBox.Value = JsonConfig.settings.sunriseSunsetDuration;
            }

            if (JsonConfig.settings.useWindowsLocation)
            {
                radioButton2.Checked = true;
            }
            else if (JsonConfig.settings.dontUseLocation)
            {
                radioButton3.Checked = true;
            }

            if (JsonConfig.settings.timezone != null)
            {
                timezoneBox.Text = JsonConfig.settings.timezone;
            }
            else
            {
                timezoneBox.Text = TimeZoneInfo.Local.Id;
            }

            if (JsonConfig.settings.latitude != null)
            {
                latitudeTextBox.Text = JsonConfig.settings.latitude;
            }

            if (JsonConfig.settings.longitude != null)
            {
                longitudeTextBox.Text = JsonConfig.settings.longitude;
            }


            UpdateGuiState();
            isLoaded = true;
        }