void ConfigDialogManager::run() { ConfigurationDialog config; for(auto& tab: m_tabs) { IConfigTab* confTab = tab.second; QWidget* w = confTab->constructTab(); const QString name = confTab->tabName(); config.addTab(name, w); } connect(&config, &ConfigurationDialog::saveData, this, &ConfigDialogManager::applyConfiguration); config.exec(); }