Skip to content

Commit 6b304e9

Browse files
committed
Add getter/setter macros in AppConfig
1 parent fba7341 commit 6b304e9

File tree

9 files changed

+123
-177
lines changed

9 files changed

+123
-177
lines changed

src/MainWindow.cpp

Lines changed: 30 additions & 62 deletions
Original file line numberDiff line numberDiff line change
@@ -52,39 +52,21 @@
5252
#include <QMessageBox>
5353
#include <QWhatsThis>
5454

55-
#define STR_(x) #x
56-
#define STR(x) STR_(x)
57-
5855
using namespace std;
5956

60-
MainWindow::MainWindow(QString exepath,
61-
bool statupInTray,
62-
bool allowMultipleInst,
57+
MainWindow::MainWindow(bool statupInTray,
6358
QWidget *parent) :
6459
QMainWindow(parent),
6560
ui(new Ui::MainWindow)
6661
{
6762
ui->setupUi(this);
6863

69-
// Prepare logger
7064
{
71-
Log::clear();
72-
#ifdef USE_PULSEAUDIO
73-
QString flavor = " (Pulseaudio flavor)";
74-
#else
75-
QString flavor = " (Pipewire flavor)";
76-
#endif
77-
Log::information("Application version: " + QString(STR(APP_VERSION)) + flavor);
78-
}
65+
_startupInTraySwitch = statupInTray;
7966

80-
// Check if another instance is already running and switch to it if that's the case
81-
{
82-
_singleInstance = new SingleInstanceMonitor(this);
83-
if (!_singleInstance->isServiceReady() && !allowMultipleInst)
84-
{
85-
_singleInstance->handover();
86-
return;
87-
}
67+
_styleHelper = new StyleHelper(this);
68+
_eelEditor = new EELEditor(this);
69+
_trayIcon = new TrayIcon(this);
8870
}
8971

9072
// Prepare audio subsystem
@@ -124,43 +106,34 @@ MainWindow::MainWindow(QString exepath,
124106
restoreGeometry(geometry);
125107
}
126108

127-
// Prepare equalizer UI
109+
// Equalizer
128110
QButtonGroup eq_mode;
129111
eq_mode.addButton(ui->eq_r_fixed);
130112
eq_mode.addButton(ui->eq_r_flex);
131113
ui->eq_widget->setBands(PresetProvider::EQ::defaultPreset(), false);
132114
ui->eq_dyn_widget->setSidebarHidden(true);
133115
ui->eq_dyn_widget->set15BandFreeMode(true);
134116

135-
// Set default zoom for dynamic EQ widget
136117
ConfigContainer pref;
137118
pref.setValue("scrollX", 160);
138119
pref.setValue("scrollY", 311);
139120
pref.setValue("zoomX", 0.561);
140121
pref.setValue("zoomY", 1.651);
141122
ui->eq_dyn_widget->loadPreferences(pref.getConfigMap());
142123

143-
// Setup graphic eq widget
124+
// GraphicEQ
144125
ui->graphicEq->setEnableSwitchVisible(true);
145126
ui->graphicEq->setAutoEqAvailable(true);
146127

147-
// Clock
128+
// Timer (TODO)
148129
_refreshTick = new QTimer(this);
149130
connect(_refreshTick, &QTimer::timeout, this, &MainWindow::fireTimerSignal);
150131
_refreshTick->start(1000);
151-
152-
connect(&PresetManager::instance(), &PresetManager::wantsToWriteConfig, this, &MainWindow::applyConfig);
153132
}
154133

155134
// Allocate pointers and init important variables
156135
{
157-
AppConfig::instance().set(AppConfig::ExecutablePath, exepath);
158-
159-
_startupInTraySwitch = statupInTray;
160-
161-
_styleHelper = new StyleHelper(this);
162-
_eelEditor = new EELEditor(this);
163-
136+
connect(&PresetManager::instance(), &PresetManager::wantsToWriteConfig, this, &MainWindow::applyConfig);
164137
connect(&PresetManager::instance(), &PresetManager::presetAutoloaded, this, [this](const QString& device){
165138
ui->info->setAnimatedText(QString("%1 connected - Preset loaded automatically").arg(device), true);
166139
});
@@ -205,9 +178,8 @@ MainWindow::MainWindow(QString exepath,
205178

206179
// Prepare tray icon
207180
{
208-
_trayIcon = new TrayIcon(this);
209-
connect(_trayIcon, &TrayIcon::iconActivated, this, &MainWindow::onTrayIconActivated);
210-
connect(_trayIcon, &TrayIcon::loadReverbPreset, [this](const QString &preset)
181+
connect(_trayIcon, &TrayIcon::iconActivated, this, &MainWindow::onTrayIconActivated);
182+
connect(_trayIcon, &TrayIcon::loadReverbPreset, this, [this](const QString &preset)
211183
{
212184
if(preset == "off"){
213185
ui->reverb->setChecked(false);
@@ -220,7 +192,7 @@ MainWindow::MainWindow(QString exepath,
220192
onReverbPresetUpdated();
221193
});
222194
connect(_trayIcon, &TrayIcon::restart, this, &MainWindow::onRelinkRequested);
223-
connect(_trayIcon, &TrayIcon::loadEqPreset, [this](const QString &preset)
195+
connect(_trayIcon, &TrayIcon::loadEqPreset, this, [this](const QString &preset)
224196
{
225197
ui->enable_eq->setChecked(true);
226198

@@ -234,7 +206,7 @@ MainWindow::MainWindow(QString exepath,
234206
onEqPresetUpdated();
235207
}
236208
});
237-
connect(_trayIcon, &TrayIcon::loadCrossfeedPreset, [this](int preset)
209+
connect(_trayIcon, &TrayIcon::loadCrossfeedPreset, this, [this](int preset)
238210
{
239211
if(preset == -1)
240212
{
@@ -248,9 +220,9 @@ MainWindow::MainWindow(QString exepath,
248220
ui->bs2b->setChecked(true);
249221
onBs2bPresetUpdated();
250222
});
251-
connect(_trayIcon, &TrayIcon::loadIrs, [this](const QString &irs)
223+
connect(_trayIcon, &TrayIcon::loadIrs, this, [this](const QString &irs)
252224
{
253-
_currentImpuleResponse = irs;
225+
_currentImpulseResponse = irs;
254226
ui->conv_enable->setChecked(true);
255227
determineIrsSelection();
256228
applyConfig();
@@ -264,8 +236,6 @@ MainWindow::MainWindow(QString exepath,
264236

265237
// Load config and initialize less important stuff
266238
{
267-
//initializeSpectrum();
268-
269239
connect(&DspConfig::instance(), &DspConfig::configBuffered, this, &MainWindow::loadConfig);
270240
DspConfig::instance().load();
271241

@@ -345,7 +315,7 @@ MainWindow::MainWindow(QString exepath,
345315

346316
// Setup file selectors
347317
{
348-
ui->ddc_files->setCurrentDirectory(AppConfig::instance().getDDCPath());
318+
ui->ddc_files->setCurrentDirectory(AppConfig::instance().getVdcPath());
349319
ui->ddc_files->setFileTypes(QStringList("*.vdc"));
350320

351321
ui->conv_files->setCurrentDirectory(AppConfig::instance().getIrsPath());
@@ -357,22 +327,21 @@ MainWindow::MainWindow(QString exepath,
357327
ui->conv_fav->setFileActionsVisible(true);
358328
ui->conv_fav->setNavigationBarVisible(false);
359329

360-
connect(ui->ddc_files, &FileSelectionWidget::fileChanged, this, &MainWindow::setVdcFile);
330+
connect(ui->ddc_files, &FileSelectionWidget::fileChanged, this, &MainWindow::setVdcFile);
361331
connect(ui->conv_files, &FileSelectionWidget::fileChanged, this, &MainWindow::setIrsFile);
362-
connect(ui->conv_fav, &FileSelectionWidget::fileChanged, this, &MainWindow::setIrsFile);
332+
connect(ui->conv_fav, &FileSelectionWidget::fileChanged, this, &MainWindow::setIrsFile);
363333

364334
connect(ui->conv_files, &FileSelectionWidget::bookmarkAdded, ui->conv_fav, &FileSelectionWidget::enumerateFiles);
365335

366336
connect(ui->conv_files, &FileSelectionWidget::fileChanged, ui->conv_fav, &FileSelectionWidget::clearCurrentFile);
367-
connect(ui->conv_fav, &FileSelectionWidget::fileChanged, ui->conv_files, &FileSelectionWidget::clearCurrentFile);
337+
connect(ui->conv_fav, &FileSelectionWidget::fileChanged, ui->conv_files, &FileSelectionWidget::clearCurrentFile);
368338

369339
// DDC
370340
ui->ddcTable->setModel(new VdcDatabaseModel(ui->ddcTable));
371341
ui->ddcTable->setColumnHidden(2, true);
372342
ui->ddcTable->setColumnHidden(3, true);
373343
ui->ddcTable->setColumnHidden(4, true);
374344
ui->ddcTable->resizeColumnsToContents();
375-
376345
determineVdcSelection();
377346

378347
// Convolver
@@ -704,7 +673,7 @@ void MainWindow::loadConfig()
704673

705674
ui->conv_enable->setChecked(DspConfig::instance().get<bool>(DspConfig::convolver_enable));
706675
ui->conv_ir_opt->setCurrentIndex(DspConfig::instance().get<int>(DspConfig::convolver_optimization_mode));
707-
_currentImpuleResponse = chopDoubleQuotes(DspConfig::instance().get<QString>(DspConfig::convolver_file));
676+
_currentImpulseResponse = chopDoubleQuotes(DspConfig::instance().get<QString>(DspConfig::convolver_file));
708677
_currentConvWaveformEdit = chopDoubleQuotes(DspConfig::instance().get<QString>(DspConfig::convolver_waveform_edit));
709678

710679
ui->enable_eq->setChecked(DspConfig::instance().get<bool>(DspConfig::tone_enable));
@@ -832,7 +801,7 @@ void MainWindow::applyConfig()
832801

833802
DspConfig::instance().set(DspConfig::convolver_enable, QVariant(ui->conv_enable->isChecked()));
834803
DspConfig::instance().set(DspConfig::convolver_optimization_mode,QVariant(ui->conv_ir_opt->currentIndex()));
835-
DspConfig::instance().set(DspConfig::convolver_file, QVariant("\"" + _currentImpuleResponse + "\""));
804+
DspConfig::instance().set(DspConfig::convolver_file, QVariant("\"" + _currentImpulseResponse + "\""));
836805
DspConfig::instance().set(DspConfig::convolver_waveform_edit, QVariant("\"" + _currentConvWaveformEdit + "\""));
837806

838807
DspConfig::instance().set(DspConfig::compression_enable, QVariant(ui->enable_comp->isChecked()));
@@ -1030,7 +999,7 @@ void MainWindow::determineVdcSelection()
1030999
// File does not exist anymore
10311000
if (!QFile(_currentVdc).exists())
10321001
{
1033-
ui->ddc_files->setCurrentDirectory(AppConfig::instance().getDDCPath());
1002+
ui->ddc_files->setCurrentDirectory(AppConfig::instance().getVdcPath());
10341003
}
10351004
// File is from database
10361005
else if (_currentVdc == AppConfig::instance().getPath("temp.vdc"))
@@ -1099,7 +1068,7 @@ void MainWindow::onVdcDatabaseSelected(const QItemSelection &, const QItemSelect
10991068
// IRS
11001069
void MainWindow::setIrsFile(const QString& path)
11011070
{
1102-
_currentImpuleResponse = path;
1071+
_currentImpulseResponse = path;
11031072
applyConfig();
11041073
}
11051074

@@ -1110,22 +1079,22 @@ void MainWindow::determineIrsSelection()
11101079
ui->convTabs->setCurrentIndex(0);
11111080

11121081
// File was selected from favorites
1113-
if (_currentImpuleResponse.contains(AppConfig::instance().getPath("irs_favorites")))
1082+
if (_currentImpulseResponse.contains(AppConfig::instance().getPath("irs_favorites")))
11141083
{
11151084
ui->conv_files->setCurrentDirectory(AppConfig::instance().getIrsPath());
11161085
ui->conv_fav->setCurrentDirectory(AppConfig::instance().getPath("irs_favorites"));
1117-
ui->conv_fav->setCurrentFile(_currentImpuleResponse);
1086+
ui->conv_fav->setCurrentFile(_currentImpulseResponse);
11181087
ui->convTabs->setCurrentIndex(1);
11191088
}
11201089
// File does not exist anymore
1121-
else if (!QFile(_currentImpuleResponse).exists())
1090+
else if (!QFile(_currentImpulseResponse).exists())
11221091
{
11231092
ui->conv_files->setCurrentDirectory(AppConfig::instance().getIrsPath());
11241093
}
11251094
// External file
11261095
else
11271096
{
1128-
ui->conv_files->setCurrentFile(_currentImpuleResponse);
1097+
ui->conv_files->setCurrentFile(_currentImpulseResponse);
11291098
}
11301099
}
11311100

@@ -1264,7 +1233,7 @@ void MainWindow::onAutoEqImportRequested()
12641233
void MainWindow::restoreGraphicEQView()
12651234
{
12661235
QVariantMap state;
1267-
state = ConfigIO::readFile(AppConfig::instance().getGraphicEQConfigFilePath());
1236+
state = ConfigIO::readFile(AppConfig::instance().getGraphicEqStatePath());
12681237

12691238
ConfigContainer conf;
12701239
conf.setConfigMap(state);
@@ -1287,8 +1256,7 @@ void MainWindow::saveGraphicEQView()
12871256
{
12881257
QVariantMap state;
12891258
ui->graphicEq->storePreferences(state);
1290-
ConfigIO::writeFile(AppConfig::instance().getGraphicEQConfigFilePath(),
1291-
state);
1259+
ConfigIO::writeFile(AppConfig::instance().getGraphicEqStatePath(), state);
12921260
}
12931261

12941262
// Connections
@@ -1314,7 +1282,7 @@ void MainWindow::connectActions()
13141282
}
13151283

13161284
foreach(QWidget* w, registerClick)
1317-
connect(w, SIGNAL(clicked()), this, SLOT(applyConfig()));
1285+
connect(w, SIGNAL(clicked()), this, SLOT(applyConfig()));
13181286

13191287
connect(ui->disableFX, &QAbstractButton::clicked, this, &MainWindow::onPassthroughToggled);
13201288
connect(ui->reseteq, &QAbstractButton::clicked, this, &MainWindow::resetEQ);

src/MainWindow.h

Lines changed: 2 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -55,12 +55,9 @@ class MainWindow :
5555
public QMainWindow
5656
{
5757
Q_OBJECT
58-
enum class Context;
5958

6059
public:
61-
explicit MainWindow(QString exepath,
62-
bool statupInTray,
63-
bool allowMultipleInst,
60+
explicit MainWindow(bool statupInTray,
6461
QWidget *parent = nullptr);
6562
~MainWindow();
6663

@@ -120,8 +117,6 @@ private slots:
120117

121118
EELEditor *_eelEditor;
122119

123-
SingleInstanceMonitor* _singleInstance;
124-
125120
FragmentHost<AppManagerFragment*>* _appMgrFragment = nullptr;
126121
FragmentHost<StatusFragment*>* _statusFragment = nullptr;
127122
FragmentHost<SettingsFragment*>* _settingsFragment = nullptr;
@@ -138,7 +133,7 @@ private slots:
138133
bool _blockApply = false;
139134
bool _lockliveprogupdate = false;
140135

141-
QString _currentImpuleResponse = "";
136+
QString _currentImpulseResponse = "";
142137
QString _currentVdc = "";
143138
QString _currentConvWaveformEdit = "";
144139

0 commit comments

Comments
 (0)