private static void CreateDisplaySettingsPanel(Panel panel) { const int leftMargin = 5, topMargin = 8; int labelFontHeightDiv2 = StyleManager.CurrentStyle.LabelFont.Height / 2; int y = topMargin; Slider brightnessSlider, timeoutSlider; panel.AddChild(brightnessSlider = new Slider(leftMargin + 70, y, panel.Width - leftMargin * 2 - 70, 35)); brightnessSlider.Maximum = 31; brightnessSlider.Minimum = 0; brightnessSlider.Position = 31 - AppConfig.LcdBacklightLevel; brightnessSlider.PositionChanged += (s) => { AppSettings.Instance.LcdBacklightLevel = (byte)(31 - brightnessSlider.Position); AppSettings.Instance.Save(); AppConfig.LcdBacklightLevel = AppSettings.Instance.LcdBacklightLevel; }; panel.AddChild(new Label("Brightness", leftMargin, y + brightnessSlider.Height / 2 - labelFontHeightDiv2, 70, 35)); y += 45; panel.AddChild(timeoutSlider = new Slider(leftMargin + 70, y, panel.Width - leftMargin * 2 - 70, 35)); timeoutSlider.Maximum = 180; timeoutSlider.Minimum = 20; timeoutSlider.Position = AppSettings.Instance.ShowScreenSaverAfterSec; timeoutSlider.PositionChanged += (s) => { AppSettings.Instance.ShowScreenSaverAfterSec = timeoutSlider.Position; AppSettings.Instance.Save(); DesktopManager.Instance.SetInputTimeout(AppSettings.Instance.ShowScreenSaverAfterSec * 1000); }; panel.AddChild(new Label("Timeout", leftMargin, y + brightnessSlider.Height / 2 - labelFontHeightDiv2, 70, 35)); y += 50; panel.AddChild(new Label("Style", leftMargin, y, 70, 30)); y += 30; RadioButton rdLight, rdDark, rdMetroDark, rdMetroLight; panel.AddChild(rdMetroLight = new RadioButton("Metro Light", leftMargin, y, (panel.Width - leftMargin * 2) / 4, 26) { IsChecked = true, Tag = new StyleMetroLight() }); panel.AddChild(rdLight = new RadioButton("Light", leftMargin + rdMetroLight.Width, rdMetroLight.Y, rdMetroLight.Width, 26) { Tag = new StyleLight() }); panel.AddChild(rdMetroDark = new RadioButton("Metro Dark", leftMargin + rdMetroLight.Width * 2, rdMetroLight.Y, rdMetroLight.Width, 26) { Tag = new StyleMetroDark() }); panel.AddChild(rdDark = new RadioButton("Dark", leftMargin + rdMetroLight.Width * 3, rdMetroLight.Y, rdMetroLight.Width, 26) { Tag = new StyleDark() }); UiEventHandler radioCheckedChanged = (s) => { RadioButton sender = (RadioButton)s; if (sender.IsChecked) StyleManager.CurrentStyle = (Style)sender.Tag; }; rdLight.IsCheckedChanged += radioCheckedChanged; rdMetroDark.IsCheckedChanged += radioCheckedChanged; rdMetroLight.IsCheckedChanged += radioCheckedChanged; rdDark.IsCheckedChanged += radioCheckedChanged; }
private static void CreateAudioSettingsPanel(Panel panel) { const int leftMargin = 5, topMargin = 8; int labelFontHeightDiv2 = StyleManager.CurrentStyle.LabelFont.Height / 2; int y = topMargin; Slider bassSlider, trebleSlider, volumeSlider, balanceSlider; panel.AddChild(volumeSlider = new Slider(leftMargin + 50, y, panel.Width - leftMargin * 2 - 50, 35)); volumeSlider.Maximum = VsDriver.VolumeMax; volumeSlider.Minimum = VsDriver.VolumeMin; volumeSlider.Position = VsDriver.Volume; volumeSlider.PositionChanged += (s) => VsDriver.Volume = (byte)volumeSlider.Position; panel.AddChild(new Label("Volume", leftMargin, y + volumeSlider.Height / 2 - labelFontHeightDiv2, 50, 35)); y += 45; panel.AddChild(balanceSlider = new Slider(leftMargin + 50, y, panel.Width - leftMargin * 2 - 50, 35)); balanceSlider.Maximum = VsDriver.BalanceMax; balanceSlider.Minimum = VsDriver.BalanceMin; balanceSlider.Position = VsDriver.Balance; balanceSlider.PositionChanged += (s) => VsDriver.Balance = (sbyte)balanceSlider.Position; panel.AddChild(new Label("Balance", leftMargin, y + balanceSlider.Height / 2 - labelFontHeightDiv2, 50, 35)); y += 45; panel.AddChild(bassSlider = new Slider(leftMargin + 50, y, panel.Width - leftMargin * 2 - 50, 35)); bassSlider.Maximum = VsDriver.BassMax; bassSlider.Minimum = VsDriver.BassMin; bassSlider.Position = VsDriver.Bass; bassSlider.PositionChanged += (s) => VsDriver.Bass = (byte)bassSlider.Position; panel.AddChild(new Label("Bass", leftMargin, y + bassSlider.Height / 2 - labelFontHeightDiv2, 50, 35)); y += 45; panel.AddChild(trebleSlider = new Slider(leftMargin + 50, y, panel.Width - leftMargin * 2 - 50, 35)); trebleSlider.Maximum = VsDriver.TrebleMax; trebleSlider.Minimum = VsDriver.TrebleMin; trebleSlider.Position = VsDriver.Treble; trebleSlider.PositionChanged += (s) => VsDriver.Treble = (sbyte)trebleSlider.Position; panel.AddChild(new Label("Treble", leftMargin, y + trebleSlider.Height / 2 - labelFontHeightDiv2, 50, 35)); y += 45; }