From 5f41886d76c11fe8befe8d059c75dcb5bc11f78d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20Mr=C3=A1zek?= Date: Sun, 5 Jul 2015 02:29:41 +0200 Subject: GH-1053 split settings dialog creation to its own namespace --- application/SettingsUI.h | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 application/SettingsUI.h (limited to 'application/SettingsUI.h') diff --git a/application/SettingsUI.h b/application/SettingsUI.h new file mode 100644 index 00000000..1e6dc8d0 --- /dev/null +++ b/application/SettingsUI.h @@ -0,0 +1,28 @@ +#pragma once +#include "pages/BasePageProvider.h" +#include "MultiMC.h" +#include "pagedialog/PageDialog.h" +#include "InstancePageProvider.h" +#include +#include + +/* + * FIXME: this is a fragment. find a better place for it. + */ +namespace SettingsUI +{ +template +void ShowPageDialog(T raw_provider, QWidget * parent, QString open_page = QString()) +{ + auto provider = std::dynamic_pointer_cast(raw_provider); + if(!provider) + return; + { + SettingsObject::Lock lock(MMC->settings()); + PageDialog dlg(provider, open_page, parent); + dlg.exec(); + } +} + +void ShowInstancePageDialog(InstancePtr instance, QWidget * parent, QString open_page = QString()); +} -- cgit v1.2.3