public DevicePrefsWindow(DevicePrefs devicePrefs) : this() { Preferences = devicePrefs; deviceID.Content = devicePrefs.deviceId; nickname.Text = devicePrefs.nickname; defaultProfile.Text = devicePrefs.defaultProfile; autoConnect.IsChecked = devicePrefs.autoConnect; _modifiedPrefs = new DevicePrefs() { deviceId = devicePrefs.deviceId }; foreach (var calibrationPath in devicePrefs.calibrationFiles) { _modifiedPrefs.calibrationFiles.Add(calibrationPath.Key, calibrationPath.Value); StackPanel stack = new StackPanel() { Orientation = Orientation.Horizontal, VerticalAlignment = VerticalAlignment.Top, }; Button removeBtn = new Button { Content = " X ", Height = 14, Width = 14, FontSize = 8, VerticalAlignment = VerticalAlignment.Top, HorizontalAlignment = HorizontalAlignment.Left, Style = (Style)Application.Current.Resources["WarningButton"], Tag = calibrationPath.Key }; removeBtn.Click += RemoveBtn_Click; stack.Children.Add(removeBtn); stack.Children.Add(new Rectangle() { Width = 4 }); stack.Children.Add(new Label() { Content = calibrationPath.Value, FontSize = 10, Height = 15, HorizontalAlignment = HorizontalAlignment.Left, VerticalAlignment = VerticalAlignment.Top, Padding = new Thickness(0), Foreground = (Brush)Application.Current.Resources["TextBody"] }); calibrationWrap.Children.Add(stack); } }
public DevicePrefsWindow(DevicePrefs devicePrefs, ControllerType type = ControllerType.Other) : this() { Preferences = devicePrefs; deviceID.Content = devicePrefs.deviceId; nickname.Text = devicePrefs.nickname; defaultProfile.Text = devicePrefs.defaultProfile; autoConnect.IsChecked = devicePrefs.autoConnect; _modifiedPrefs = new DevicePrefs() { deviceId = devicePrefs.deviceId }; devicePrefs.extensionProfiles.CopyTo(_modifiedPrefs.extensionProfiles, 0); foreach (var calibrationPath in devicePrefs.calibrationFiles) { _modifiedPrefs.calibrationFiles.Add(calibrationPath.Key, calibrationPath.Value); StackPanel stack = new StackPanel() { Orientation = Orientation.Horizontal, VerticalAlignment = VerticalAlignment.Top, }; Button removeBtn = new Button { Content = " X ", Height = 14, Width = 14, FontSize = 8, VerticalAlignment = VerticalAlignment.Top, HorizontalAlignment = HorizontalAlignment.Left, Style = (Style)Application.Current.Resources["WarningButton"], Tag = calibrationPath.Key }; removeBtn.Click += RemoveBtn_Click; stack.Children.Add(removeBtn); stack.Children.Add(new Rectangle() { Width = 4 }); stack.Children.Add(new Label() { Content = calibrationPath.Value, FontSize = 10, Height = 15, HorizontalAlignment = HorizontalAlignment.Left, VerticalAlignment = VerticalAlignment.Top, Padding = new Thickness(0), Foreground = (Brush)Application.Current.Resources["TextBody"] }); calibrationWrap.Children.Add(stack); } if (type == ControllerType.NunchukB) { type = ControllerType.Nunchuk; } ControllerType[] extTypes = new ControllerType[] { ControllerType.Wiimote, ControllerType.Nunchuk, ControllerType.ClassicController, ControllerType.ClassicControllerPro, ControllerType.Guitar, ControllerType.TaikoDrum }; for (int i = 0; i < comboExtProfile.Items.Count; i++) { if (extTypes[i] == type) { comboExtProfile.SelectedIndex = i; lastIndex = i; extProfile.Text = _modifiedPrefs.extensionProfiles[lastIndex]; extFunc = true; break; } } if (!extFunc) { comboExtProfile.Visibility = Visibility.Hidden; labelExtProfile.Visibility = Visibility.Hidden; btnExtProfile.Visibility = Visibility.Hidden; extProfile.Visibility = Visibility.Hidden; Thickness margin = labelDefaultCalibrations.Margin; margin.Top = 114; labelDefaultCalibrations.Margin = margin; margin = calibrationViewer.Margin; margin.Top = 140; calibrationViewer.Margin = margin; } }