diff options
author | Aqua-sama <aqua@iserlohn-fortress.net> | 2018-06-23 12:50:10 +0200 |
---|---|---|
committer | Aqua-sama <aqua@iserlohn-fortress.net> | 2018-06-23 12:50:10 +0200 |
commit | 41329fae5f819eee8c394571125f11f0a0b67cd9 (patch) | |
tree | e8e36f9b8458ee809114714e497c4a43a19949ef /plugins/ConfigurationEditor/configurationeditorplugin.cpp | |
parent | Add Configuration::setValue and Configuration::setShortcut (diff) | |
download | smolbote-41329fae5f819eee8c394571125f11f0a0b67cd9.tar.xz |
Add ConfigurationEditor plugin
Removed poi-config
Diffstat (limited to 'plugins/ConfigurationEditor/configurationeditorplugin.cpp')
-rw-r--r-- | plugins/ConfigurationEditor/configurationeditorplugin.cpp | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/plugins/ConfigurationEditor/configurationeditorplugin.cpp b/plugins/ConfigurationEditor/configurationeditorplugin.cpp new file mode 100644 index 0000000..a5ca0bd --- /dev/null +++ b/plugins/ConfigurationEditor/configurationeditorplugin.cpp @@ -0,0 +1,30 @@ +#include "configurationeditorplugin.h" +#include <QHash> +#include <QDialog> +#include "forms/settingsdialog.h" +#include <configuration.h> + +CommandHash_t ConfigurationEditorPlugin::commands() +{ + QHash<QString, std::function<int()>> hash; + + hash.insert("configure", [this]() -> int { + auto *dlg = createWidget(nullptr); + return dlg->exec(); + }); + + return hash; +} + +QDialog *ConfigurationEditorPlugin::createWidget(QWidget *parent) +{ + auto *dlg = new SettingsDialog(m_config, parent); + dlg->setAttribute(Qt::WA_DeleteOnClose, true); + return dlg; +} + +void ConfigurationEditorPlugin::setConfiguration(Configuration *cfg) +{ + Q_CHECK_PTR(cfg); + m_config = cfg; +} |