Chromophant/systemconfiguration.cpp
2025-09-09 16:49:24 +02:00

47 lines
1.5 KiB
C++

#include "systemconfiguration.h"
#include "ui_systemconfiguration.h"
SystemConfiguration::SystemConfiguration(ShimLCController* cmd, QWidget *parent)
: QDialog(parent)
, ui(new Ui::SystemConfiguration)
, cmd(cmd)
{
ui->setupUi(this);
ui->configOverView->setModel(&config_view_model);
connect(cmd, &ShimLCController::newConfigAv, this, &SystemConfiguration::updateTable);
}
SystemConfiguration::~SystemConfiguration()
{
delete ui;
}
void SystemConfiguration::updateTable()
{
foreach(LCPort device, cmd->configuration.detectors)
{
config_view_model.tableData[device.port][0] = device.name;
config_view_model.tableData[device.port][1] = device.version;
config_view_model.tableData[device.port][2] = device.serial;
}
foreach(LCPort device, cmd->configuration.pumps)
{
config_view_model.tableData[device.port][0] = device.name;
config_view_model.tableData[device.port][1] = device.version;
config_view_model.tableData[device.port][2] = device.serial;
}
foreach(LCPort device, cmd->configuration.other)
{
config_view_model.tableData[device.port][0] = device.name;
config_view_model.tableData[device.port][1] = device.version;
config_view_model.tableData[device.port][2] = device.serial;
}
// TODO: this is spaghetti code
ui->options->clear();
if(cmd->configuration.AD1 == 1)
ui->options->addItem("> AD1");
if(cmd->configuration.AD2 == 1)
ui->options->addItem("> AD2");
}