internal void UpdateTFRCurvePreview(int tfrTableIndex) { var tfrTable = m_deviceConfiguration.Advanced.TFRTables[tfrTableIndex]; UpdateListViewPreview(MaterialsListView, tfrTableIndex, ChartPreviewService.CreateTFRCurvePreview(tfrTable, MaterialsListView.LargeImageList.ImageSize)); }
private void InitializeWorkspace() { var deviceInfo = m_deviceConfiguration.Info; { DeviceNameLabel.Text = HidDeviceInfo.Get(deviceInfo.ProductId).Name; FirmwareVersionTextBox.Text = (deviceInfo.FirmwareVersion / 100f).ToString("0.00", CultureInfo.InvariantCulture); BuildTextBox.Text = deviceInfo.FirmwareBuild.ToString(); HardwareVersionTextBox.Text = (deviceInfo.HardwareVersion / 100f).ToString("0.00", CultureInfo.InvariantCulture); if (deviceInfo.DisplaySize == ArcticFoxConfiguration.DisplaySize.W96H16) { MainScreenSkinLabel.Visible = MainScreenSkinComboBox.Visible = false; ClockTypeLabel.Visible = ClockTypeComboBox.Visible = false; UseClassicMenuLabel.Visible = UseClassicMenuCheckBox.Visible = false; } Battery2OffsetLabel.Visible = Battery2OffsetUpDown.Visible = Battery2OffsetVoltsLabel.Visible = deviceInfo.NumberOfBatteries > 1; Battery3OffsetLabel.Visible = Battery3OffsetUpDown.Visible = Battery3OffsetVoltsLabel.Visible = deviceInfo.NumberOfBatteries > 2; Battery4OffsetLabel.Visible = Battery4OffsetUpDown.Visible = Battery4OffsetVoltsLabel.Visible = deviceInfo.NumberOfBatteries > 3; } var general = m_deviceConfiguration.General; { for (var i = 0; i < general.Profiles.Length; i++) { var tabName = "P" + (i + 1); ProfileTabContent tabContent; if (ProfilesTabControl.TabPages.Count <= i) { var tabPage = new TabPage(tabName); tabContent = new ProfileTabContent(this) { Dock = DockStyle.Fill }; tabPage.Controls.Add(tabContent); ProfilesTabControl.TabPages.Add(tabPage); SelectedProfleComboBox.Items.Add(new NamedItemContainer <byte>(tabName, (byte)i)); } else { tabContent = (ProfileTabContent)ProfilesTabControl.TabPages[i].Controls[0]; } tabContent.Initialize(m_deviceConfiguration, i); tabContent.UpdatePowerCurveNames(m_deviceConfiguration.Advanced.PowerCurves); tabContent.UpdateTFRNames(m_deviceConfiguration.Advanced.TFRTables); } ProfilesTabControl.SelectedIndex = Math.Max(0, Math.Min(general.SelectedProfile, ProfilesTabControl.TabCount)); SelectedProfleComboBox.SelectItem(general.SelectedProfile); SmartCheckBox.Checked = general.IsSmartEnabled; } var ui = m_deviceConfiguration.Interface; { BrightnessTrackBar.Value = ui.Brightness; IdleTimeUpDow.SetValue(ui.DimTimeout); PuffScreenDelayUpDown.SetValue(ui.PuffScreenDelay / 10m); StealthModeCheckBox.Checked = ui.IsStealthMode; FlippedModeCheckBox.Checked = ui.IsFlipped; MainScreenSkinComboBox.SelectItem(ui.MainScreenSkin); UseClassicMenuCheckBox.Checked = ui.IsClassicMenu; ShowLogoCheckBox.Checked = ui.IsLogoEnabled; ShowClockCheckBox.Checked = ui.IsClockOnMainScreen; ClockTypeComboBox.SelectItem(ui.ClockType); ScreensaverTimeComboBox.SelectItem(ui.ScreensaveDuration); ChargeScreenComboBox.SelectItem(ui.ChargeScreenType); // Classic Screen InitializeLineContentEditor(ui.ClassicSkinVWLines.Line1, ClassicVWLine1ComboBox, ClassicVWLine1FireCheckBox); InitializeLineContentEditor(ui.ClassicSkinVWLines.Line2, ClassicVWLine2ComboBox, ClassicVWLine2FireCheckBox); InitializeLineContentEditor(ui.ClassicSkinVWLines.Line3, ClassicVWLine3ComboBox, ClassicVWLine3FireCheckBox); InitializeLineContentEditor(ui.ClassicSkinVWLines.Line4, ClassicVWLine4ComboBox, ClassicVWLine4FireCheckBox); InitializeLineContentEditor(ui.ClassicSkinTCLines.Line1, ClassicTCLine1ComboBox, ClassicTCLine1FireCheckBox); InitializeLineContentEditor(ui.ClassicSkinTCLines.Line2, ClassicTCLine2ComboBox, ClassicTCLine2FireCheckBox); InitializeLineContentEditor(ui.ClassicSkinTCLines.Line3, ClassicTCLine3ComboBox, ClassicTCLine3FireCheckBox); InitializeLineContentEditor(ui.ClassicSkinTCLines.Line4, ClassicTCLine4ComboBox, ClassicTCLine4FireCheckBox); // Circle Screen InitializeLineContentEditor(ui.CircleSkinVWLines.Line1, CircleVWLine1ComboBox); InitializeLineContentEditor(ui.CircleSkinVWLines.Line2, CircleVWLine2ComboBox); InitializeLineContentEditor(ui.CircleSkinVWLines.Line3, CircleVWLine3ComboBox, CircleVWLine3FireCheckBox); InitializeLineContentEditor(ui.CircleSkinTCLines.Line1, CircleTCLine1ComboBox); InitializeLineContentEditor(ui.CircleSkinTCLines.Line2, CircleTCLine2ComboBox); InitializeLineContentEditor(ui.CircleSkinTCLines.Line3, CircleTCLine3ComboBox, CircleTCLine3FireCheckBox); // Small Screen InitializeLineContentEditor(ui.SmallSkinVWLines.Line1, SmallVWLine1ComboBox, SmallVWLine1FireCheckBox); InitializeLineContentEditor(ui.SmallSkinVWLines.Line2, SmallVWLine2ComboBox, SmallVWLine2FireCheckBox); InitializeLineContentEditor(ui.SmallSkinTCLines.Line1, SmallTCLine1ComboBox, SmallTCLine1FireCheckBox); InitializeLineContentEditor(ui.SmallSkinTCLines.Line2, SmallTCLine2ComboBox, SmallTCLine2FireCheckBox); ClicksVW2ComboBox.SelectItem(ui.ClicksVW[0]); ClicksVW3ComboBox.SelectItem(ui.ClicksVW[1]); ClicksVW4ComboBox.SelectItem(ui.ClicksVW[2]); ClicksTC2ComboBox.SelectItem(ui.ClicksTC[0]); ClicksTC3ComboBox.SelectItem(ui.ClicksTC[1]); ClicksTC4ComboBox.SelectItem(ui.ClicksTC[2]); UpDownButtonsComboBox.SelectItem(ui.IsUpDownSwapped); WakeUpByPlusMinusCheckBox.Checked = ui.WakeUpByPlusMinus; Step1WCheckBox.Checked = ui.IsPowerStep1W; LayoutTabControl.SelectedTab = deviceInfo.DisplaySize == ArcticFoxConfiguration.DisplaySize.W64H128 ? ui.MainScreenSkin == ArcticFoxConfiguration.Skin.Classic ? ClassicScreenTabPage : CircleScreenTabPage : SmallScreenTabPage; } var stats = m_deviceConfiguration.Counters; { PuffsUpDown.SetValue(stats.PuffsCount); PuffsTimeUpDown.SetValue(stats.PuffsTime / 10m); PuffsTimeFormatComboBox.SelectItem(ui.PuffsTimeFormat); } var advanced = m_deviceConfiguration.Advanced; { PuffCutOffUpDown.SetValue(advanced.PuffCutOff / 10m); ShuntCorrectionUpDown.SetValue(advanced.ShuntCorrection); BatteryModelComboBox.SelectItem(advanced.BatteryModel); X32CheckBox.Checked = advanced.IsX32; LightSleepCheckBox.Checked = advanced.IsLightSleepMode; ResetCountersCheckBox.Checked = advanced.ResetCountersOnStartup; CheckTCRCheckBox.Checked = advanced.CheckTCR; UsbChargeCheckBox.Checked = advanced.IsUsbCharge; UsbNoSleepCheckBox.Checked = advanced.UsbNoSleep; Battery1OffsetUpDown.SetValue(advanced.BatteryVoltageOffsets[0] / 100m); Battery2OffsetUpDown.SetValue(advanced.BatteryVoltageOffsets[1] / 100m); Battery3OffsetUpDown.SetValue(advanced.BatteryVoltageOffsets[2] / 100m); Battery4OffsetUpDown.SetValue(advanced.BatteryVoltageOffsets[3] / 100m); PowerCurvesListView.Items.Clear(); PowerCurvesListView.LargeImageList.Images.Clear(); for (var i = 0; i < m_deviceConfiguration.Advanced.PowerCurves.Length; i++) { var powerCurve = m_deviceConfiguration.Advanced.PowerCurves[i]; var bitmap = ChartPreviewService.CreatePowerCurvePreview(powerCurve, PowerCurvesListView.LargeImageList.ImageSize); PowerCurvesListView.LargeImageList.Images.Add(bitmap); PowerCurvesListView.Items.Add(new ListViewItem(powerCurve.Name, i) { Tag = i }); } MaterialsListView.Items.Clear(); MaterialsListView.LargeImageList.Images.Clear(); for (var i = 0; i < m_deviceConfiguration.Advanced.TFRTables.Length; i++) { var tfrTable = m_deviceConfiguration.Advanced.TFRTables[i]; var bitmap = ChartPreviewService.CreateTFRCurvePreview(tfrTable, PowerCurvesListView.LargeImageList.ImageSize); MaterialsListView.LargeImageList.Images.Add(bitmap); MaterialsListView.Items.Add(new ListViewItem("[TFR] " + tfrTable.Name, i) { Tag = i }); } } }