コード例 #1
0
        private void ComboAppLanguage_SelectionChanged(object sender, SelectionChangedEventArgs e)
        {
            var selectedValue = ((sender as ComboBox).SelectedValue as DefaultLanguageModel).ID;

            if (AppSettings.CurrentLanguage.ID != selectedValue)
            {
                RestartDialog.Show();
            }
            else
            {
                RestartDialog.Dismiss();
            }
        }
コード例 #2
0
        private void ShowRestartDialog()
        {
            Application.Current.Windows[0].Opacity = 0;
            RestartDialog restartDialog = new RestartDialog();

            restartDialog.ShowDialog();
            Application.Current.Windows[0].Opacity = 100;
            bool restartResponse = restartDialog.GetResponse();

            if (restartResponse)
            {
                MessageBox.Show("Do restart");
            }
            else
            {
                MessageBox.Show("No restart");
            }
        }
コード例 #3
0
        private void SetRestoreProgress(object sender, EventArgs e)
        {
            string value = m_IDeviceBackUpEx.GetBackUpInfo("Progress");
            double proValue = 0.0;
            if (double.TryParse(value, out proValue))
            {
                m_progressBar.Value = proValue;
                Console.WriteLine(value + "**************proValue");
            }

            bool isFinish = m_IDeviceBackUpEx.IsBackUpFinish();
            if (proValue >= 100)
            {
                m_restoreTimer.Stop();
                m_elapsedTimer.Stop();
                Tips = "Deep clean up junk files and free up extra space to accelerate iOS device.";
                FinishScanHandler(sender, e);
                m_IDeviceBackUpEx.RestartiOSDevice();
                if (m_restartDlg == null)
                {
                    m_restartDlg = new RestartDialog();
                }
                m_restartDlg.ShowDialog();
            }

            bool isRestoreError = m_IDeviceBackUpEx.IsBackUpError();   //这个是获取是否恢复错误的。判断备份出错和恢复出错是一致的。
            if (isRestoreError)
            {
                int errorValue = m_IDeviceBackUpEx.GetBackUpErrorInfo();
                if (errorValue == -35)
                {
                    MessageBox.Show("Restore error!");
                }
                else if (errorValue == -36)
                {
                    MessageBox.Show("The iPhone is running out of space.");
                }
                else if (errorValue == -37)
                {
                    MessageBox.Show("Find My iPhone is turned on in iCloud, please turn off and try again.");
                }
                return;
            }
        }
コード例 #4
0
        private SettingSection BuildDisplaySection()
        {
            var section = new SettingSection(SystemUtil.GetStringResource("SettingSection_Display"));

            section.Add(new ToggleSetting
            {
                SettingData = new AppSettingData <bool>()
                {
                    Title         = SystemUtil.GetStringResource("DisplayTakeImageButtonSetting"),
                    Guide         = SystemUtil.GetStringResource("Guide_DisplayTakeImageButtonSetting"),
                    StateProvider = () => ApplicationSettings.GetInstance().IsShootButtonDisplayed,
                    StateObserver = enabled => ApplicationSettings.GetInstance().IsShootButtonDisplayed = enabled
                }
            });

            section.Add(new ToggleSetting
            {
                SettingData = new AppSettingData <bool>()
                {
                    Title         = SystemUtil.GetStringResource("DisplayHistogram"),
                    Guide         = SystemUtil.GetStringResource("Guide_Histogram"),
                    StateProvider = () => ApplicationSettings.GetInstance().IsHistogramDisplayed,
                    StateObserver = enabled => ApplicationSettings.GetInstance().IsHistogramDisplayed = enabled
                }
            });

            var FocusFrameSetting = new AppSettingData <bool>()
            {
                Title         = SystemUtil.GetStringResource("FocusFrameDisplay"),
                Guide         = SystemUtil.GetStringResource("Guide_FocusFrameDisplay"),
                StateProvider = () => ApplicationSettings.GetInstance().RequestFocusFrameInfo,
                StateObserver = enabled =>
                {
                    ApplicationSettings.GetInstance().RequestFocusFrameInfo = enabled;
                    // todo: support to show focus frames
                    //await SetupFocusFrame(enabled);
                    //if (!enabled) { _FocusFrameSurface.ClearFrames(); }
                }
            };

            section.Add(new ToggleSetting {
                SettingData = FocusFrameSetting
            });

            section.Add(new ToggleSetting
            {
                SettingData = new AppSettingData <bool>()
                {
                    Title         = SystemUtil.GetStringResource("LiveviewRotation"),
                    Guide         = SystemUtil.GetStringResource("LiveviewRotation_guide"),
                    StateProvider = () => ApplicationSettings.GetInstance().LiveviewRotationEnabled,
                    StateObserver = enabled =>
                    {
                        ApplicationSettings.GetInstance().LiveviewRotationEnabled = enabled;
                        // todo: support to rotate liveview image
                        //if (enabled && target != null && target.Status != null)
                        //{
                        //    RotateLiveviewImage(target.Status.LiveviewOrientationAsDouble);
                        //}
                        //else
                        //{
                        //    RotateLiveviewImage(0);
                        //}
                    }
                }
            });

            section.Add(new ToggleSetting
            {
                SettingData = new AppSettingData <bool>()
                {
                    Title         = SystemUtil.GetStringResource("FramingGrids"),
                    Guide         = SystemUtil.GetStringResource("Guide_FramingGrids"),
                    StateProvider = () => ApplicationSettings.GetInstance().FramingGridEnabled,
                    StateObserver = enabled =>
                    {
                        ApplicationSettings.GetInstance().FramingGridEnabled = enabled;
                        // screen_view_data.FramingGridDisplayed = enabled;
                    }
                }
            });

            var gridTypePanel = new ComboBoxSetting(new AppSettingData <int>()
            {
                Title         = SystemUtil.GetStringResource("AssistPattern"),
                StateProvider = () => (int)ApplicationSettings.GetInstance().GridType - 1,
                StateObserver = setting =>
                {
                    if (setting < 0)
                    {
                        return;
                    }
                    ApplicationSettings.GetInstance().GridType = (FramingGridTypes)(setting + 1);
                },
                Candidates = SettingValueConverter.FromFramingGrid(EnumUtil <FramingGridTypes> .GetValueEnumerable())
            });

            gridTypePanel.SetBinding(VisibilityProperty, new Binding
            {
                Source    = ApplicationSettings.GetInstance(),
                Path      = new PropertyPath(nameof(ApplicationSettings.FramingGridEnabled)),
                Mode      = BindingMode.OneWay,
                Converter = new BoolToVisibilityConverter(),
            });
            section.Add(gridTypePanel);

            var gridColorPanel = new ComboBoxSetting(new AppSettingData <int>()
            {
                Title         = SystemUtil.GetStringResource("FramingGridColor"),
                StateProvider = () => (int)ApplicationSettings.GetInstance().GridColor,
                StateObserver = setting =>
                {
                    if (setting < 0)
                    {
                        return;
                    }
                    ApplicationSettings.GetInstance().GridColor = (FramingGridColors)setting;
                },
                Candidates = SettingValueConverter.FromFramingGridColor(EnumUtil <FramingGridColors> .GetValueEnumerable())
            });

            gridColorPanel.SetBinding(VisibilityProperty, new Binding
            {
                Source    = ApplicationSettings.GetInstance(),
                Path      = new PropertyPath(nameof(ApplicationSettings.FramingGridEnabled)),
                Mode      = BindingMode.OneWay,
                Converter = new BoolToVisibilityConverter(),
            });
            section.Add(gridColorPanel);

            var fibonacciOriginPanel = new ComboBoxSetting(new AppSettingData <int>()
            {
                Title         = SystemUtil.GetStringResource("FibonacciSpiralOrigin"),
                StateProvider = () => (int)ApplicationSettings.GetInstance().FibonacciLineOrigin,
                StateObserver = setting =>
                {
                    if (setting < 0)
                    {
                        return;
                    }
                    ApplicationSettings.GetInstance().FibonacciLineOrigin = (FibonacciLineOrigins)setting;
                },
                Candidates = SettingValueConverter.FromFibonacciLineOrigin(EnumUtil <FibonacciLineOrigins> .GetValueEnumerable())
            });

            fibonacciOriginPanel.SetBinding(VisibilityProperty, new Binding
            {
                Source    = ApplicationSettings.GetInstance(),
                Path      = new PropertyPath(nameof(ApplicationSettings.IsFibonacciSpiralEnabled)),
                Mode      = BindingMode.OneWay,
                Converter = new BoolToVisibilityConverter(),
            });
            section.Add(fibonacciOriginPanel);

            section.Add(new ToggleSetting
            {
                SettingData = new AppSettingData <bool>()
                {
                    Title         = SystemUtil.GetStringResource("ForcePhoneView"),
                    Guide         = SystemUtil.GetStringResource("ForcePhoneView_Guide"),
                    StateProvider = () => ApplicationSettings.GetInstance().ForcePhoneView,
                    StateObserver = enabled => ApplicationSettings.GetInstance().ForcePhoneView = enabled
                }
            });

            section.Add(new ToggleSetting
            {
                SettingData = new AppSettingData <bool>()
                {
                    Title         = SystemUtil.GetStringResource("ShowKeyCheatSheet"),
                    Guide         = SystemUtil.GetStringResource("ShowKeyCheatSheet_Guide"),
                    StateProvider = () => ApplicationSettings.GetInstance().ShowKeyCheatSheet,
                    StateObserver = enabled => ApplicationSettings.GetInstance().ShowKeyCheatSheet = enabled
                }
            });

            section.Add(new ComboBoxSetting(new AppSettingData <int>()
            {
                Title         = "🌏 " + SystemUtil.GetStringResource("LanguageSetting"),
                Guide         = SystemUtil.GetStringResource("LanguageSetting_Guide"),
                StateProvider = () => (int)LocalizationExtensions.FromLang(ApplicationSettings.GetInstance().LanguageOverride),
                StateObserver = async(index) =>
                {
                    if (index == -1)
                    {
                        return;
                    }
                    var lang = ((Localization)index).AsLang();
                    if (ApplicationSettings.GetInstance().LanguageOverride != lang)
                    {
                        ApplicationSettings.GetInstance().LanguageOverride = lang;

                        RestartDialog.DataContext = ExitConfirmationSource;
                        if (await RestartDialog.ShowAsync() == ContentDialogResult.Primary)
                        {
                            Application.Current.Exit();
                        }
                    }
                },
                Candidates = SettingValueConverter.FromLocalization(EnumUtil <Localization> .GetValueEnumerable())
            }
                                            ));

            return(section);
        }