Ref T306, copy directory settings in wizard

This commit is contained in:
Klaus Basan
2018-08-25 14:46:30 +02:00
parent b0091e4674
commit a40b3b728c
3 changed files with 210 additions and 183 deletions

View File

@@ -26,6 +26,7 @@ using namespace BlackMisc::Input;
using namespace BlackMisc::Network;
using namespace BlackMisc::Network::Data;
using namespace BlackMisc::Network::Settings;
using namespace BlackMisc::Settings;
using namespace BlackMisc::Simulation::Settings;
using namespace BlackCore::Audio;
using namespace BlackCore::Application;
@@ -74,6 +75,7 @@ namespace BlackGui
readOnlyCheckbox(ui->cb_SettingsActionHotkeys, !CCacheSettingsUtils::hasOtherVersionSettingsFile(info, m_settingsActionHotkeys.getFilename()));
readOnlyCheckbox(ui->cb_SettingsTextMessages, !CCacheSettingsUtils::hasOtherVersionSettingsFile(info, m_settingsTextMessage.getFilename()));
readOnlyCheckbox(ui->cb_SettingsAtcStations, !CCacheSettingsUtils::hasOtherVersionSettingsFile(info, m_settingsAtcStations.getFilename()));
readOnlyCheckbox(ui->cb_SettingsDirectories, !CCacheSettingsUtils::hasOtherVersionSettingsFile(info, m_settingsDirectories.getFilename()));
readOnlyCheckbox(ui->cb_SettingsConsolidation, !CCacheSettingsUtils::hasOtherVersionSettingsFile(info, m_settingsConsolidation.getFilename()));
readOnlyCheckbox(ui->cb_SettingsModel, !CCacheSettingsUtils::hasOtherVersionSettingsFile(info, m_settingsModel.getFilename()));
@@ -123,6 +125,7 @@ namespace BlackGui
ui->cb_SettingsActionHotkeys->setText(checkBoxText(TActionHotkeys::humanReadable(), true));
ui->cb_SettingsAtcStations->setText(checkBoxText(TAtcStationsSettings::humanReadable(), true));
ui->cb_SettingsTextMessages->setText(checkBoxText(TextMessageSettings::humanReadable(), true));
ui->cb_SettingsDirectories->setText(checkBoxText(TDirectorySettings::humanReadable(), true));
}
void CCopySettingsAndCachesComponent::initModel()
@@ -173,6 +176,17 @@ namespace BlackGui
}
}
// ------- directories -------
if (ui->cb_SettingsDirectories->isChecked())
{
const QString joStr = CCacheSettingsUtils::otherVersionSettingsFileContent(otherVersionInfo, m_settingsDirectories.getFilename());
if (!joStr.isEmpty())
{
const CDirectories directories = CDirectories::fromJsonNoThrow(joStr, true, success, errMsg);
if (this->parsingMessage(success, errMsg, m_settingsDirectories.getKey())) { this->displayStatusMessage(m_settingsDirectories.setAndSave(directories), directories.toQString(true)); }
}
}
// ------- network -------
if (ui->cb_SettingsNetworkTrafficServers->isChecked())
{

View File

@@ -122,6 +122,7 @@ namespace BlackGui
BlackMisc::CSetting<BlackCore::Application::TEnabledSimulators> m_settingsEnabledSimulators { this };
BlackMisc::CSetting<BlackCore::Application::TActionHotkeys> m_settingsActionHotkeys { this };
BlackMisc::CSetting<BlackCore::Audio::TSettings> m_settingsAudio { this };
BlackMisc::CSetting<BlackMisc::Settings::TDirectorySettings> m_settingsDirectories { this };
BlackMisc::CSetting<BlackMisc::Network::Settings::TTrafficServers> m_settingsNetworkServers { this };
BlackMisc::CSetting<BlackMisc::Simulation::Settings::TSimulatorFsx> m_settingsSimulatorFsx { this }; //!< FSX settings
BlackMisc::CSetting<BlackMisc::Simulation::Settings::TSimulatorFs9> m_settingsSimulatorFs9 { this }; //!< FS9 settings

View File

@@ -13,7 +13,7 @@
<property name="windowTitle">
<string>Frame</string>
</property>
<layout class="QVBoxLayout" name="vl_CopySettingsAndCache" stretch="0,1">
<layout class="QVBoxLayout" name="vl_CopySettingsAndCache" stretch="0,0">
<item>
<widget class="QGroupBox" name="gb_OtherSwiftVersions">
<property name="title">
@@ -39,6 +39,59 @@
<string>What to copy?</string>
</property>
<layout class="QGridLayout" name="gl_WhatToCopy">
<item row="0" column="2">
<widget class="QGroupBox" name="gb_Model">
<property name="title">
<string>Models</string>
</property>
<layout class="QVBoxLayout" name="vl_Models">
<item>
<widget class="QCheckBox" name="cb_SettingsModel">
<property name="text">
<string>Model</string>
</property>
</widget>
</item>
<item>
<widget class="QCheckBox" name="cb_SettingsConsolidation">
<property name="text">
<string>Consolidation</string>
</property>
</widget>
</item>
</layout>
</widget>
</item>
<item row="0" column="0">
<widget class="QGroupBox" name="gb_Audio">
<property name="title">
<string>Audio</string>
</property>
<layout class="QVBoxLayout" name="vl_Audio">
<item>
<widget class="QCheckBox" name="cb_SettingsAudio">
<property name="text">
<string>Audio1</string>
</property>
</widget>
</item>
<item>
<widget class="QCheckBox" name="cb_SettingsAudioInputDevice">
<property name="text">
<string>Audio2</string>
</property>
</widget>
</item>
<item>
<widget class="QCheckBox" name="cb_SettingsAudioOutputDevice">
<property name="text">
<string>Audio3</string>
</property>
</widget>
</item>
</layout>
</widget>
</item>
<item row="2" column="0" colspan="3">
<widget class="QFrame" name="fr_Buttons">
<property name="frameShape">
@@ -79,156 +132,7 @@
</layout>
</widget>
</item>
<item row="0" column="0">
<widget class="QFrame" name="fr_Left">
<layout class="QVBoxLayout" name="vl_left">
<property name="leftMargin">
<number>0</number>
</property>
<property name="topMargin">
<number>0</number>
</property>
<property name="rightMargin">
<number>0</number>
</property>
<property name="bottomMargin">
<number>0</number>
</property>
<item>
<widget class="QGroupBox" name="gb_Audio">
<property name="title">
<string>Audio</string>
</property>
<layout class="QVBoxLayout" name="vl_Audio">
<item>
<widget class="QCheckBox" name="cb_SettingsAudio">
<property name="text">
<string>Audio1</string>
</property>
</widget>
</item>
<item>
<widget class="QCheckBox" name="cb_SettingsAudioInputDevice">
<property name="text">
<string>Audio2</string>
</property>
</widget>
</item>
<item>
<widget class="QCheckBox" name="cb_SettingsAudioOutputDevice">
<property name="text">
<string>Audio3</string>
</property>
</widget>
</item>
</layout>
</widget>
</item>
<item>
<widget class="QGroupBox" name="gb_Ui">
<property name="title">
<string>UI</string>
</property>
<layout class="QVBoxLayout" name="verticalLayout_4">
<item>
<widget class="QCheckBox" name="cb_SettingsGuiGeneral">
<property name="text">
<string>UI1</string>
</property>
</widget>
</item>
<item>
<widget class="QCheckBox" name="cb_SettingsDockWidget">
<property name="text">
<string>UI2</string>
</property>
</widget>
</item>
<item>
<widget class="QCheckBox" name="cb_SettingsViewUpdate">
<property name="text">
<string>UI3</string>
</property>
</widget>
</item>
</layout>
</widget>
</item>
</layout>
</widget>
</item>
<item row="0" column="2">
<widget class="QFrame" name="fr_Right">
<layout class="QVBoxLayout" name="vl_Right">
<property name="leftMargin">
<number>0</number>
</property>
<property name="topMargin">
<number>0</number>
</property>
<property name="rightMargin">
<number>0</number>
</property>
<property name="bottomMargin">
<number>0</number>
</property>
<item>
<widget class="QGroupBox" name="gb_Misc">
<property name="title">
<string>Misc.</string>
</property>
<layout class="QVBoxLayout" name="vl_Misc">
<item>
<widget class="QCheckBox" name="cb_SettingsActionHotkeys">
<property name="text">
<string>Keys</string>
</property>
</widget>
</item>
<item>
<widget class="QCheckBox" name="cb_SettingsAtcStations">
<property name="text">
<string>ATC stations</string>
</property>
</widget>
</item>
<item>
<widget class="QCheckBox" name="cb_SettingsTextMessages">
<property name="text">
<string>Text Messages</string>
</property>
</widget>
</item>
</layout>
</widget>
</item>
<item>
<widget class="QGroupBox" name="gb_Model">
<property name="title">
<string>Models</string>
</property>
<layout class="QVBoxLayout" name="vl_Models">
<item>
<widget class="QCheckBox" name="cb_SettingsModel">
<property name="text">
<string>Model</string>
</property>
</widget>
</item>
<item>
<widget class="QCheckBox" name="cb_SettingsConsolidation">
<property name="text">
<string>Consolidation</string>
</property>
</widget>
</item>
</layout>
</widget>
</item>
</layout>
</widget>
</item>
<item row="0" column="1">
<item row="1" column="1">
<widget class="QFrame" name="fr_Middle">
<layout class="QVBoxLayout" name="vl_Middle">
<property name="leftMargin">
@@ -243,36 +147,6 @@
<property name="bottomMargin">
<number>0</number>
</property>
<item>
<widget class="QGroupBox" name="gb_Network">
<property name="title">
<string>Network</string>
</property>
<layout class="QVBoxLayout" name="vl_Network">
<item>
<widget class="QCheckBox" name="cb_SettingsNetworkTrafficServers">
<property name="text">
<string>Network1</string>
</property>
</widget>
</item>
<item>
<widget class="QCheckBox" name="cb_CacheLastNetworkServer">
<property name="text">
<string>Network2</string>
</property>
</widget>
</item>
<item>
<widget class="QCheckBox" name="cb_CacheLastVatsimServer">
<property name="text">
<string>Network3</string>
</property>
</widget>
</item>
</layout>
</widget>
</item>
<item>
<widget class="QGroupBox" name="gb_Simulator">
<property name="title">
@@ -313,6 +187,139 @@
</layout>
</widget>
</item>
<item row="1" column="2">
<widget class="QFrame" name="fr_Right">
<layout class="QVBoxLayout" name="vl_Right">
<property name="leftMargin">
<number>0</number>
</property>
<property name="topMargin">
<number>0</number>
</property>
<property name="rightMargin">
<number>0</number>
</property>
<property name="bottomMargin">
<number>0</number>
</property>
<item>
<widget class="QGroupBox" name="gb_Misc">
<property name="title">
<string>Misc.</string>
</property>
<layout class="QVBoxLayout" name="vl_Misc">
<item>
<widget class="QCheckBox" name="cb_SettingsActionHotkeys">
<property name="text">
<string>Keys</string>
</property>
</widget>
</item>
<item>
<widget class="QCheckBox" name="cb_SettingsDirectories">
<property name="text">
<string>Directories</string>
</property>
</widget>
</item>
<item>
<widget class="QCheckBox" name="cb_SettingsAtcStations">
<property name="text">
<string>ATC stations</string>
</property>
</widget>
</item>
<item>
<widget class="QCheckBox" name="cb_SettingsTextMessages">
<property name="text">
<string>Text Messages</string>
</property>
</widget>
</item>
</layout>
</widget>
</item>
</layout>
</widget>
</item>
<item row="0" column="1">
<widget class="QGroupBox" name="gb_Network">
<property name="title">
<string>Network</string>
</property>
<layout class="QVBoxLayout" name="vl_Network">
<item>
<widget class="QCheckBox" name="cb_SettingsNetworkTrafficServers">
<property name="text">
<string>Network1</string>
</property>
</widget>
</item>
<item>
<widget class="QCheckBox" name="cb_CacheLastNetworkServer">
<property name="text">
<string>Network2</string>
</property>
</widget>
</item>
<item>
<widget class="QCheckBox" name="cb_CacheLastVatsimServer">
<property name="text">
<string>Network3</string>
</property>
</widget>
</item>
</layout>
</widget>
</item>
<item row="1" column="0">
<widget class="QFrame" name="fr_Left">
<layout class="QVBoxLayout" name="vl_left">
<property name="leftMargin">
<number>0</number>
</property>
<property name="topMargin">
<number>0</number>
</property>
<property name="rightMargin">
<number>0</number>
</property>
<property name="bottomMargin">
<number>0</number>
</property>
<item>
<widget class="QGroupBox" name="gb_Ui">
<property name="title">
<string>UI</string>
</property>
<layout class="QVBoxLayout" name="verticalLayout_4">
<item>
<widget class="QCheckBox" name="cb_SettingsGuiGeneral">
<property name="text">
<string>UI1</string>
</property>
</widget>
</item>
<item>
<widget class="QCheckBox" name="cb_SettingsDockWidget">
<property name="text">
<string>UI2</string>
</property>
</widget>
</item>
<item>
<widget class="QCheckBox" name="cb_SettingsViewUpdate">
<property name="text">
<string>UI3</string>
</property>
</widget>
</item>
</layout>
</widget>
</item>
</layout>
</widget>
</item>
</layout>
</widget>
</item>
@@ -328,8 +335,8 @@
</customwidgets>
<tabstops>
<tabstop>cb_SettingsAudio</tabstop>
<tabstop>cb_SettingsAudioInputDevice</tabstop>
<tabstop>cb_SettingsAudioOutputDevice</tabstop>
<tabstop>cb_SettingsAudioInputDevice</tabstop>
<tabstop>cb_SettingsGuiGeneral</tabstop>
<tabstop>cb_SettingsDockWidget</tabstop>
<tabstop>cb_SettingsViewUpdate</tabstop>
@@ -337,10 +344,15 @@
<tabstop>cb_CacheLastNetworkServer</tabstop>
<tabstop>cb_CacheLastVatsimServer</tabstop>
<tabstop>cb_SettingsEnabledSimulators</tabstop>
<tabstop>cb_SettingsSimulatorFSX</tabstop>
<tabstop>cb_SettingsSimulatorP3D</tabstop>
<tabstop>cb_SettingsSimulatorFSX</tabstop>
<tabstop>cb_SettingsSimulatorXPlane</tabstop>
<tabstop>cb_SettingsModel</tabstop>
<tabstop>cb_SettingsConsolidation</tabstop>
<tabstop>cb_SettingsActionHotkeys</tabstop>
<tabstop>cb_SettingsDirectories</tabstop>
<tabstop>cb_SettingsAtcStations</tabstop>
<tabstop>cb_SettingsTextMessages</tabstop>
<tabstop>le_Status</tabstop>
<tabstop>pb_DeselectAll</tabstop>
<tabstop>pb_SelectAll</tabstop>