attempt to fix --no-gui option for windows

This commit is contained in:
Jan Käberich 2022-03-03 12:28:59 +01:00
parent 6e07be0af5
commit c9ffdcd52b
25 changed files with 141 additions and 58 deletions

View File

@ -341,7 +341,9 @@ void AmplitudeCalDialog::AddPointDialog()
dev->SendCommandWithoutPayload(requestCommand()); dev->SendCommandWithoutPayload(requestCommand());
d->show(); if(AppWindow::showGUI()) {
d->show();
}
} }
void AmplitudeCalDialog::AutomaticMeasurementDialog() void AmplitudeCalDialog::AutomaticMeasurementDialog()
@ -415,7 +417,9 @@ void AmplitudeCalDialog::AutomaticMeasurementDialog()
SetupNextAutomaticPoint(automatic.isSourceCal); SetupNextAutomaticPoint(automatic.isSourceCal);
}); });
automatic.dialog->show(); if(AppWindow::showGUI()) {
automatic.dialog->show();
}
} }
void AmplitudeCalDialog::ReceivedMeasurement(Protocol::SpectrumAnalyzerResult res) void AmplitudeCalDialog::ReceivedMeasurement(Protocol::SpectrumAnalyzerResult res)

View File

@ -3,6 +3,7 @@
#include "calkitdialog.h" #include "calkitdialog.h"
#include "json.hpp" #include "json.hpp"
#include "CustomWidgets/informationbox.h" #include "CustomWidgets/informationbox.h"
#include "appwindow.h"
#include <fstream> #include <fstream>
#include <iomanip> #include <iomanip>
@ -171,7 +172,9 @@ void Calkit::edit(std::function<void (void)> updateCal)
updateCal(); updateCal();
}); });
} }
dialog->show(); if(AppWindow::showGUI()) {
dialog->show();
}
} }
bool Calkit::hasSeparateMaleFemaleStandards() bool Calkit::hasSeparateMaleFemaleStandards()

View File

@ -534,12 +534,6 @@ void SpectrumAnalyzer::SettingsChanged()
emit traceModel.SpanChanged(settings.f_start, settings.f_stop); emit traceModel.SpanChanged(settings.f_start, settings.f_stop);
} }
void SpectrumAnalyzer::StartImpedanceMatching()
{
auto dialog = new ImpedanceMatchDialog(*markerModel);
dialog->show();
}
void SpectrumAnalyzer::SetStartFreq(double freq) void SpectrumAnalyzer::SetStartFreq(double freq)
{ {
settings.f_start = freq; settings.f_start = freq;

View File

@ -53,7 +53,6 @@ private:
private slots: private slots:
void NewDatapoint(Protocol::SpectrumAnalyzerResult d); void NewDatapoint(Protocol::SpectrumAnalyzerResult d);
void StartImpedanceMatching();
// Sweep control // Sweep control
void SetStartFreq(double freq); void SetStartFreq(double freq);
void SetStopFreq(double freq); void SetStopFreq(double freq);

View File

@ -3,6 +3,7 @@
#include "Traces/tracecsvexport.h" #include "Traces/tracecsvexport.h"
#include "Traces/traceimportdialog.h" #include "Traces/traceimportdialog.h"
#include "CustomWidgets/informationbox.h" #include "CustomWidgets/informationbox.h"
#include "appwindow.h"
#include <QFileDialog> #include <QFileDialog>
@ -15,7 +16,9 @@ TraceWidgetSA::TraceWidgetSA(TraceModel &model, QWidget *parent)
void TraceWidgetSA::exportDialog() void TraceWidgetSA::exportDialog()
{ {
auto csv = new TraceCSVExport(model); auto csv = new TraceCSVExport(model);
csv->show(); if(AppWindow::showGUI()) {
csv->show();
}
} }
void TraceWidgetSA::importDialog() void TraceWidgetSA::importDialog()
@ -38,7 +41,9 @@ void TraceWidgetSA::importDialog()
prefix.truncate(prefix.indexOf('.')); prefix.truncate(prefix.indexOf('.'));
prefix.append("_"); prefix.append("_");
auto i = new TraceImportDialog(model, traces, prefix); auto i = new TraceImportDialog(model, traces, prefix);
i->show(); if(AppWindow::showGUI()) {
i->show();
}
} catch(const std::exception e) { } catch(const std::exception e) {
InformationBox::ShowError("Failed to import file", QString("Attempt to import file ended with error: \"") + e.what()+"\""); InformationBox::ShowError("Failed to import file", QString("Attempt to import file ended with error: \"") + e.what()+"\"");
} }

View File

@ -5,6 +5,7 @@
#include "unit.h" #include "unit.h"
#include "ui_dftdialog.h" #include "ui_dftdialog.h"
#include "ui_dftexplanationwidget.h" #include "ui_dftexplanationwidget.h"
#include "appwindow.h"
#include <QDebug> #include <QDebug>
@ -86,7 +87,9 @@ void Math::DFT::edit()
}); });
connect(ui->buttonBox, &QDialogButtonBox::accepted, d, &QDialog::accept); connect(ui->buttonBox, &QDialogButtonBox::accepted, d, &QDialog::accept);
d->show(); if(AppWindow::showGUI()) {
d->show();
}
} }
QWidget *Math::DFT::createExplanationWidget() QWidget *Math::DFT::createExplanationWidget()

View File

@ -3,6 +3,7 @@
#include "ui_expressiondialog.h" #include "ui_expressiondialog.h"
#include "Traces/trace.h" #include "Traces/trace.h"
#include "ui_expressionexplanationwidget.h" #include "ui_expressionexplanationwidget.h"
#include "appwindow.h"
#include <QWidget> #include <QWidget>
#include <QDebug> #include <QDebug>
@ -52,7 +53,9 @@ void Math::Expression::edit()
default: break; default: break;
} }
d->show(); if(AppWindow::showGUI()) {
d->show();
}
} }
QWidget *Math::Expression::createExplanationWidget() QWidget *Math::Expression::createExplanationWidget()

View File

@ -3,6 +3,7 @@
#include "ui_medianfilterdialog.h" #include "ui_medianfilterdialog.h"
#include "ui_medianexplanationwidget.h" #include "ui_medianexplanationwidget.h"
#include "CustomWidgets/informationbox.h" #include "CustomWidgets/informationbox.h"
#include "appwindow.h"
using namespace Math; using namespace Math;
using namespace std; using namespace std;
@ -47,7 +48,9 @@ void MedianFilter::edit()
connect(ui->sortingMethod, qOverload<int>(&QComboBox::currentIndexChanged), [=](int index) { connect(ui->sortingMethod, qOverload<int>(&QComboBox::currentIndexChanged), [=](int index) {
order = (Order) index; order = (Order) index;
}); });
d->show(); if(AppWindow::showGUI()) {
d->show();
}
} }
QWidget *MedianFilter::createExplanationWidget() QWidget *MedianFilter::createExplanationWidget()

View File

@ -4,6 +4,7 @@
#include "ui_tdrdialog.h" #include "ui_tdrdialog.h"
#include "ui_tdrexplanationwidget.h" #include "ui_tdrexplanationwidget.h"
#include "Util/util.h" #include "Util/util.h"
#include "appwindow.h"
#include <QVBoxLayout> #include <QVBoxLayout>
#include <QLabel> #include <QLabel>
@ -127,7 +128,9 @@ void TDR::edit()
}); });
connect(ui->buttonBox, &QDialogButtonBox::accepted, d, &QDialog::accept); connect(ui->buttonBox, &QDialogButtonBox::accepted, d, &QDialog::accept);
d->show(); if(AppWindow::showGUI()) {
d->show();
}
} }
QWidget *TDR::createExplanationWidget() QWidget *TDR::createExplanationWidget()

View File

@ -7,6 +7,7 @@
#include "Traces/fftcomplex.h" #include "Traces/fftcomplex.h"
#include "Util/util.h" #include "Util/util.h"
#include "unit.h" #include "unit.h"
#include "appwindow.h"
#include <QWidget> #include <QWidget>
#include <QDialog> #include <QDialog>
@ -108,7 +109,9 @@ void Math::TimeGate::edit()
updateFilter(); updateFilter();
d->show(); if(AppWindow::showGUI()) {
d->show();
}
} }
QWidget *Math::TimeGate::createExplanationWidget() QWidget *Math::TimeGate::createExplanationWidget()

View File

@ -3,6 +3,7 @@
#include "ui_traceeditdialog.h" #include "ui_traceeditdialog.h"
#include "ui_newtracemathdialog.h" #include "ui_newtracemathdialog.h"
#include "Math/tdr.h" #include "Math/tdr.h"
#include "appwindow.h"
#include <QColorDialog> #include <QColorDialog>
#include <QFileDialog> #include <QFileDialog>
@ -222,7 +223,9 @@ TraceEditDialog::TraceEditDialog(Trace &t, QWidget *parent) :
ui->list->setCurrentRow(0); ui->list->setCurrentRow(0);
ui->stack->setCurrentIndex(0); ui->stack->setCurrentIndex(0);
d->show(); if(AppWindow::showGUI()) {
d->show();
}
}); });
connect(ui->bDelete, &QPushButton::clicked, [=](){ connect(ui->bDelete, &QPushButton::clicked, [=](){
model->deleteRow(ui->view->currentIndex().row()); model->deleteRow(ui->view->currentIndex().row());

View File

@ -6,6 +6,7 @@
#include "unit.h" #include "unit.h"
#include "QFileDialog" #include "QFileDialog"
#include "Util/util.h" #include "Util/util.h"
#include "appwindow.h"
#include <QPainter> #include <QPainter>
#include <array> #include <array>
@ -165,7 +166,9 @@ void TraceSmithChart::axisSetupDialog()
}); });
updatePersistentEditors(); updatePersistentEditors();
dialog->show(); if(AppWindow::showGUI()) {
dialog->show();
}
} }
QPoint TraceSmithChart::dataToPixel(std::complex<double> d) QPoint TraceSmithChart::dataToPixel(std::complex<double> d)

View File

@ -7,6 +7,7 @@
#include "trace.h" #include "trace.h"
#include "unit.h" #include "unit.h"
#include "Util/util.h" #include "Util/util.h"
#include "appwindow.h"
#include <QKeyEvent> #include <QKeyEvent>
#include <QFileDialog> #include <QFileDialog>
@ -113,7 +114,9 @@ void TraceWidget::on_edit_clicked()
{ {
if(ui->view->currentIndex().isValid()) { if(ui->view->currentIndex().isValid()) {
auto edit = new TraceEditDialog(*model.trace(ui->view->currentIndex().row())); auto edit = new TraceEditDialog(*model.trace(ui->view->currentIndex().row()));
edit->show(); if(AppWindow::showGUI()) {
edit->show();
}
} }
} }
@ -121,7 +124,9 @@ void TraceWidget::on_view_doubleClicked(const QModelIndex &index)
{ {
if(index.column() == TraceModel::ColIndexName) { if(index.column() == TraceModel::ColIndexName) {
auto edit = new TraceEditDialog(*model.trace(index.row())); auto edit = new TraceEditDialog(*model.trace(index.row()));
edit->show(); if(AppWindow::showGUI()) {
edit->show();
}
} }
} }

View File

@ -7,6 +7,7 @@
#include "Util/util.h" #include "Util/util.h"
#include "unit.h" #include "unit.h"
#include "preferences.h" #include "preferences.h"
#include "appwindow.h"
#include <QGridLayout> #include <QGridLayout>
#include <cmath> #include <cmath>
@ -215,7 +216,9 @@ bool TraceXYPlot::isTDRtype(TraceXYPlot::YAxisType type)
void TraceXYPlot::axisSetupDialog() void TraceXYPlot::axisSetupDialog()
{ {
auto setup = new XYplotAxisDialog(this); auto setup = new XYplotAxisDialog(this);
setup->show(); if(AppWindow::showGUI()) {
setup->show();
}
} }
bool TraceXYPlot::configureForTrace(Trace *t) bool TraceXYPlot::configureForTrace(Trace *t)

View File

@ -3,6 +3,7 @@
#include "deembeddingdialog.h" #include "deembeddingdialog.h"
#include "ui_measurementdialog.h" #include "ui_measurementdialog.h"
#include "Traces/sparamtraceselector.h" #include "Traces/sparamtraceselector.h"
#include "appwindow.h"
#include <QDebug> #include <QDebug>
@ -11,7 +12,9 @@ using namespace std;
void Deembedding::configure() void Deembedding::configure()
{ {
auto d = new DeembeddingDialog(this); auto d = new DeembeddingDialog(this);
d->show(); if(AppWindow::showGUI()) {
d->show();
}
} }
void Deembedding::measurementCompleted() void Deembedding::measurementCompleted()
@ -104,7 +107,9 @@ void Deembedding::startMeasurementDialog(bool S11, bool S12, bool S21, bool S22)
measurementCompleted(); measurementCompleted();
}); });
measurementDialog->show(); if(AppWindow::showGUI()) {
measurementDialog->show();
}
} }
Deembedding::Deembedding(TraceModel &tm) Deembedding::Deembedding(TraceModel &tm)

View File

@ -3,6 +3,7 @@
#include "ui_matchingnetworkdialog.h" #include "ui_matchingnetworkdialog.h"
#include "unit.h" #include "unit.h"
#include "CustomWidgets/informationbox.h" #include "CustomWidgets/informationbox.h"
#include "appwindow.h"
#include <QDialog> #include <QDialog>
#include <QHBoxLayout> #include <QHBoxLayout>
@ -126,7 +127,9 @@ void MatchingNetwork::edit()
layout->addStretch(1); layout->addStretch(1);
dialog->show(); if(AppWindow::showGUI()) {
dialog->show();
}
if(addNetwork) { if(addNetwork) {
ui->bAddNetwork->setChecked(true); ui->bAddNetwork->setChecked(true);
} else { } else {

View File

@ -2,6 +2,7 @@
#include "ui_portextensioneditdialog.h" #include "ui_portextensioneditdialog.h"
#include "Util/util.h" #include "Util/util.h"
#include "appwindow.h"
#include <QCheckBox> #include <QCheckBox>
#include <cmath> #include <cmath>
@ -202,7 +203,9 @@ void PortExtension::edit()
connect(ui->buttonBox, &QDialogButtonBox::accepted, dialog, &QDialog::accept); connect(ui->buttonBox, &QDialogButtonBox::accepted, dialog, &QDialog::accept);
connect(ui->buttonBox, &QDialogButtonBox::rejected, dialog, &QDialog::reject); connect(ui->buttonBox, &QDialogButtonBox::rejected, dialog, &QDialog::reject);
dialog->show(); if(AppWindow::showGUI()) {
dialog->show();
}
} }
void PortExtension::measurementCompleted(std::vector<Protocol::Datapoint> m) void PortExtension::measurementCompleted(std::vector<Protocol::Datapoint> m)

View File

@ -4,6 +4,7 @@
#include "ui_twothrudialog.h" #include "ui_twothrudialog.h"
#include "Traces/fftcomplex.h" #include "Traces/fftcomplex.h"
#include "unit.h" #include "unit.h"
#include "appwindow.h"
#include <QDebug> #include <QDebug>
@ -172,7 +173,9 @@ void TwoThru::edit()
updateGUI(); updateGUI();
dialog->show(); if(AppWindow::showGUI()) {
dialog->show();
}
} }
nlohmann::json TwoThru::toJSON() nlohmann::json TwoThru::toJSON()

View File

@ -6,6 +6,7 @@
#include "ui_tracewidget.h" #include "ui_tracewidget.h"
#include "ui_s2pImportOptions.h" #include "ui_s2pImportOptions.h"
#include "CustomWidgets/informationbox.h" #include "CustomWidgets/informationbox.h"
#include "appwindow.h"
#include <QFileDialog> #include <QFileDialog>
#include <QMenu> #include <QMenu>
@ -35,12 +36,16 @@ TraceWidgetVNA::TraceWidgetVNA(TraceModel &model, Calibration &cal, Deembedding
} }
e->setTrace(i%2, i/2, traces[i]); e->setTrace(i%2, i/2, traces[i]);
} }
e->show(); if(AppWindow::showGUI()) {
e->show();
}
}); });
connect(exportCSV, &QAction::triggered, [&]() { connect(exportCSV, &QAction::triggered, [&]() {
auto e = new TraceCSVExport(model); auto e = new TraceCSVExport(model);
e->show(); if(AppWindow::showGUI()) {
e->show();
}
}); });
} }
@ -70,7 +75,9 @@ void TraceWidgetVNA::importDialog()
prefix.truncate(prefix.indexOf('.')); prefix.truncate(prefix.indexOf('.'));
prefix.append("_"); prefix.append("_");
auto i = new TraceImportDialog(model, traces, prefix); auto i = new TraceImportDialog(model, traces, prefix);
i->show(); if(AppWindow::showGUI()) {
i->show();
}
if(filename.endsWith(".s2p")) { if(filename.endsWith(".s2p")) {
// potential candidate to process via calibration/de-embedding // potential candidate to process via calibration/de-embedding
connect(i, &TraceImportDialog::importFinsished, [=](const std::vector<Trace*> &traces) { connect(i, &TraceImportDialog::importFinsished, [=](const std::vector<Trace*> &traces) {
@ -96,7 +103,9 @@ void TraceWidgetVNA::importDialog()
connect(ui->deembed, &QCheckBox::toggled, [&](bool checked) { connect(ui->deembed, &QCheckBox::toggled, [&](bool checked) {
applyDeembed = checked; applyDeembed = checked;
}); });
dialog->exec(); if(AppWindow::showGUI()) {
dialog->exec();
}
if(applyCal) { if(applyCal) {
cal.correctTraces(*traces[0], *traces[1], *traces[2], *traces[3]); cal.correctTraces(*traces[0], *traces[1], *traces[2], *traces[3]);
} }

View File

@ -151,13 +151,17 @@ VNA::VNA(AppWindow *window)
calImportTerms->setEnabled(false); calImportTerms->setEnabled(false);
connect(calImportTerms, &QAction::triggered, [=](){ connect(calImportTerms, &QAction::triggered, [=](){
auto import = new TraceImportDialog(traceModel, cal.getErrorTermTraces()); auto import = new TraceImportDialog(traceModel, cal.getErrorTermTraces());
import->show(); if(AppWindow::showGUI()) {
import->show();
}
}); });
auto calImportMeas = calMenu->addAction("Import measurements as traces"); auto calImportMeas = calMenu->addAction("Import measurements as traces");
calImportMeas->setEnabled(false); calImportMeas->setEnabled(false);
connect(calImportMeas, &QAction::triggered, [=](){ connect(calImportMeas, &QAction::triggered, [=](){
auto import = new TraceImportDialog(traceModel, cal.getMeasurementTraces()); auto import = new TraceImportDialog(traceModel, cal.getMeasurementTraces());
import->show(); if(AppWindow::showGUI()) {
import->show();
}
}); });
calMenu->addSeparator(); calMenu->addSeparator();
@ -165,7 +169,9 @@ VNA::VNA(AppWindow *window)
calApplyToTraces->setEnabled(false); calApplyToTraces->setEnabled(false);
connect(calApplyToTraces, &QAction::triggered, [=]() { connect(calApplyToTraces, &QAction::triggered, [=]() {
auto manualCalibration = new ManualCalibrationDialog(traceModel, &cal); auto manualCalibration = new ManualCalibrationDialog(traceModel, &cal);
manualCalibration->show(); if(AppWindow::showGUI()) {
manualCalibration->show();
}
}); });
// portExtension.setCalkit(&cal.getCalibrationKit()); // portExtension.setCalkit(&cal.getCalibrationKit());
@ -186,7 +192,9 @@ VNA::VNA(AppWindow *window)
manualDeembed->setEnabled(false); manualDeembed->setEnabled(false);
connect(manualDeembed, &QAction::triggered, [=]() { connect(manualDeembed, &QAction::triggered, [=]() {
auto manualDeembedding = new ManualDeembeddingDialog(traceModel, &deembedding); auto manualDeembedding = new ManualDeembeddingDialog(traceModel, &deembedding);
manualDeembedding->show(); if(AppWindow::showGUI()) {
manualDeembedding->show();
}
}); });
connect(&deembedding, &Deembedding::optionAdded, [=](){ connect(&deembedding, &Deembedding::optionAdded, [=](){
@ -893,7 +901,9 @@ void VNA::SettingsChanged(std::function<void (Device::TransmissionResult)> cb)
void VNA::StartImpedanceMatching() void VNA::StartImpedanceMatching()
{ {
auto dialog = new ImpedanceMatchDialog(*markerModel); auto dialog = new ImpedanceMatchDialog(*markerModel);
dialog->show(); if(AppWindow::showGUI()) {
dialog->show();
}
} }
@ -1477,7 +1487,9 @@ void VNA::StartCalibrationDialog(Calibration::Type type)
DisableCalibration(true); DisableCalibration(true);
InformationBox::ShowMessageBlocking("Calibration disabled", "The currently active calibration is no longer supported by the available measurements and was disabled."); InformationBox::ShowMessageBlocking("Calibration disabled", "The currently active calibration is no longer supported by the available measurements and was disabled.");
}); });
traceDialog->show(); if(AppWindow::showGUI()) {
traceDialog->show();
}
} }
void VNA::UpdateCalWidget() void VNA::UpdateCalWidget()

View File

@ -2,6 +2,7 @@
#include "Util/app_common.h" #include "Util/app_common.h"
#include "ui_aboutdialog.h" #include "ui_aboutdialog.h"
#include "appwindow.h"
About About::instance; About About::instance;
@ -30,5 +31,7 @@ AboutDialog::~AboutDialog()
void About::about() void About::about()
{ {
auto dialog = new AboutDialog(); auto dialog = new AboutDialog();
dialog->exec(); if(AppWindow::showGUI()) {
dialog->show();
}
} }

View File

@ -64,6 +64,8 @@ static const QString APP_VERSION = QString::number(FW_MAJOR) + "." +
QString::number(FW_PATCH); QString::number(FW_PATCH);
static const QString APP_GIT_HASH = QString(GITHASH); static const QString APP_GIT_HASH = QString(GITHASH);
static bool noGUIset = false;
AppWindow::AppWindow(QWidget *parent) AppWindow::AppWindow(QWidget *parent)
: QMainWindow(parent) : QMainWindow(parent)
, deviceActionGroup(new QActionGroup(this)) , deviceActionGroup(new QActionGroup(this))
@ -247,6 +249,7 @@ AppWindow::AppWindow(QWidget *parent)
// at least one device available // at least one device available
ConnectToDevice(); ConnectToDevice();
} }
if(parser.isSet("setup")) { if(parser.isSet("setup")) {
LoadSetup(parser.value("setup")); LoadSetup(parser.value("setup"));
} }
@ -259,6 +262,7 @@ AppWindow::AppWindow(QWidget *parent)
show(); show();
} else { } else {
InformationBox::setGUI(false); InformationBox::setGUI(false);
noGUIset = true;
} }
} }
@ -842,7 +846,9 @@ void AppWindow::StartManualControl()
Mode::getActiveMode()->initializeDevice(); Mode::getActiveMode()->initializeDevice();
} }
}); });
manual->show(); if(AppWindow::showGUI()) {
manual->show();
}
} }
void AppWindow::UpdateReference() void AppWindow::UpdateReference()
@ -895,7 +901,9 @@ void AppWindow::StartFirmwareUpdateDialog()
auto fw_update = new FirmwareUpdateDialog(device); auto fw_update = new FirmwareUpdateDialog(device);
connect(fw_update, &FirmwareUpdateDialog::DeviceRebooting, this, &AppWindow::DisconnectDevice); connect(fw_update, &FirmwareUpdateDialog::DeviceRebooting, this, &AppWindow::DisconnectDevice);
connect(fw_update, &FirmwareUpdateDialog::DeviceRebooted, this, &AppWindow::ConnectToDevice); connect(fw_update, &FirmwareUpdateDialog::DeviceRebooted, this, &AppWindow::ConnectToDevice);
fw_update->exec(); if(AppWindow::showGUI()) {
fw_update->exec();
}
} }
} }
@ -918,19 +926,25 @@ void AppWindow::DeviceInfoUpdated()
void AppWindow::SourceCalibrationDialog() void AppWindow::SourceCalibrationDialog()
{ {
auto d = new SourceCalDialog(device); auto d = new SourceCalDialog(device);
d->exec(); if(AppWindow::showGUI()) {
d->exec();
}
} }
void AppWindow::ReceiverCalibrationDialog() void AppWindow::ReceiverCalibrationDialog()
{ {
auto d = new ReceiverCalDialog(device); auto d = new ReceiverCalDialog(device);
d->exec(); if(AppWindow::showGUI()) {
d->exec();
}
} }
void AppWindow::FrequencyCalibrationDialog() void AppWindow::FrequencyCalibrationDialog()
{ {
auto d = new FrequencyCalDialog(device); auto d = new FrequencyCalDialog(device);
d->exec(); if(AppWindow::showGUI()) {
d->exec();
}
} }
void AppWindow::SaveSetup(QString filename) void AppWindow::SaveSetup(QString filename)
@ -1035,6 +1049,11 @@ const QString& AppWindow::getAppGitHash() const
return appGitHash; return appGitHash;
} }
bool AppWindow::showGUI()
{
return !noGUIset;
}
void AppWindow::SetupStatusBar() void AppWindow::SetupStatusBar()
{ {
ui->statusbar->addWidget(&lConnectionStatus); ui->statusbar->addWidget(&lConnectionStatus);

View File

@ -46,6 +46,8 @@ public:
const QString& getAppVersion() const; const QString& getAppVersion() const;
const QString& getAppGitHash() const; const QString& getAppGitHash() const;
static bool showGUI();
protected: protected:
void closeEvent(QCloseEvent *event) override; void closeEvent(QCloseEvent *event) override;
private slots: private slots:

View File

@ -18,20 +18,7 @@ void sig_handler(int s) {
} }
int main(int argc, char *argv[]) { int main(int argc, char *argv[]) {
// Hack: set platform to offscreen if no-gui option specified, this prevents any dialogs from showing up app = new QApplication(argc, argv);
char *argv_ext[argc+2];
for(int i=0;i<argc;i++) {
argv_ext[i] = argv[i];
}
for (int i = 1; i < argc; ++i) {
if (!qstrcmp(argv[i], "--no-gui")) {
argv_ext[argc] = const_cast<char*>("-platform");
argv_ext[argc+1] = const_cast<char*>("offscreen");
argc+=2;
break;
}
}
app = new QApplication(argc, argv_ext);
QCoreApplication::setOrganizationName("LibreVNA"); QCoreApplication::setOrganizationName("LibreVNA");
QCoreApplication::setApplicationName("LibreVNA-GUI"); QCoreApplication::setApplicationName("LibreVNA-GUI");
window = new AppWindow; window = new AppWindow;

View File

@ -2,6 +2,7 @@
#include "ui_preferencesdialog.h" #include "ui_preferencesdialog.h"
#include "CustomWidgets/informationbox.h" #include "CustomWidgets/informationbox.h"
#include "appwindow.h"
#include <QSettings> #include <QSettings>
#include <QPushButton> #include <QPushButton>
@ -343,7 +344,9 @@ void Preferences::store()
void Preferences::edit() void Preferences::edit()
{ {
auto dialog = new PreferencesDialog(this); auto dialog = new PreferencesDialog(this);
dialog->exec(); if(AppWindow::showGUI()) {
dialog->exec();
}
} }
void Preferences::setDefault() void Preferences::setDefault()