Add Internal Module to companion

This commit is contained in:
elecpower
2022-01-02 13:05:09 +01:00
committed by Raphael Coeffic
parent 85a184f15e
commit d7190493d5
8 changed files with 348 additions and 27 deletions
+20 -8
View File
@@ -33,6 +33,7 @@
constexpr char FIM_SWITCHTYPE2POS[] {"Switch Type 2 Pos"};
constexpr char FIM_SWITCHTYPE3POS[] {"Switch Type 3 Pos"};
constexpr char FIM_INTERNALMODULES[] {"Internal Modules"};
HardwarePanel::HardwarePanel(QWidget * parent, GeneralSettings & generalSettings, Firmware * firmware, CompoundItemModelFactory * sharedItemModels):
GeneralPanel(parent, generalSettings, firmware),
@@ -52,6 +53,9 @@ HardwarePanel::HardwarePanel(QWidget * parent, GeneralSettings & generalSettings
int auxmodelid = editorItemModels->registerItemModel(GeneralSettings::auxSerialModeItemModel());
int baudmodelid = editorItemModels->registerItemModel(GeneralSettings::telemetryBaudrateItemModel());
id = editorItemModels->registerItemModel(ModuleData::internalModuleItemModel());
tabFilteredModels->registerItemModel(new FilteredItemModel(editorItemModels->getItemModel(id)), FIM_INTERNALMODULES);
grid = new QGridLayout(this);
int count;
int row = 0;
@@ -127,6 +131,22 @@ HardwarePanel::HardwarePanel(QWidget * parent, GeneralSettings & generalSettings
addParams(row, antennaMode);
}
if (Boards::getCapability(board, Board::HasInternalModuleSupport)) {
addLabel(tr("Internal module"), row, 0);
AutoComboBox *internalModule = new AutoComboBox(this);
internalModule->setModel(tabFilteredModels->getItemModel(FIM_INTERNALMODULES));
internalModule->setField(generalSettings.internalModule, this);
addParams(row, internalModule);
}
if (firmware->getCapability(HasTelemetryBaudrate)) {
addLabel(tr("Maximum Baud"), row, 0);
AutoComboBox *maxBaudRate = new AutoComboBox(this);
maxBaudRate->setModel(editorItemModels->getItemModel(baudmodelid));
maxBaudRate->setField(generalSettings.telemetryBaudrate, this);
addParams(row, maxBaudRate);
}
if (firmware->getCapability(HasAuxSerialMode)) {
QString lbl = "Serial Port";
if (IS_RADIOMASTER_TX16S(board))
@@ -163,14 +183,6 @@ HardwarePanel::HardwarePanel(QWidget * parent, GeneralSettings & generalSettings
addParams(row, sportPower);
}
if (firmware->getCapability(HasTelemetryBaudrate)) {
addLabel(tr("Maximum Baud"), row, 0);
AutoComboBox *maxBaudRate = new AutoComboBox(this);
maxBaudRate->setModel(editorItemModels->getItemModel(baudmodelid));
maxBaudRate->setField(generalSettings.telemetryBaudrate, this);
addParams(row, maxBaudRate);
}
if (firmware->getCapability(HastxCurrentCalibration)) {
addLabel(tr("Current Offset"), row, 0);
AutoSpinBox *txCurrentCalibration = new AutoSpinBox(this);