#pragma once #include #include #include #include #include #include #include #include #include #include #include class SettingsWindow : public QWidget { std::unique_ptr cancel = std::make_unique("Cancel"); std::unique_ptr apply = std::make_unique("Apply"); std::unique_ptr iconProv = std::make_unique(); std::unique_ptr folderBtn = std::make_unique(iconProv->icon(QFileIconProvider::Folder), ""); std::unique_ptr folderLabelPrefix = std::make_unique("Save files' path: "); std::unique_ptr folderLabel; std::unique_ptr generalLayout = std::make_unique(); std::unique_ptr generalLayoutV = std::make_unique(); std::unique_ptr tabs = std::make_unique(); std::unique_ptr mainLayout = std::make_unique(); std::unique_ptr buttonsLayout = std::make_unique(); Q_OBJECT public: float getVolumeL() { return float(audioSettings->volumeL->value()) / 100.f; } float getVolumeR() { return float(audioSettings->volumeR->value()) / 100.f; } std::array keyMap{}; SettingsWindow(); nlohmann::json settings; std::unique_ptr cpuSettings{}; std::unique_ptr audioSettings{}; std::unique_ptr inputSettings{}; std::unique_ptr generalSettings{}; Q_SIGNALS: void regrabKeyboard(); };