Создал свое диалоговое окно, для введения настроек.
Добавил переопределил accept():
C++ (Qt)
QSettings settings;
settings.setValue("host",host->text()),
settings.setValue("port",port->text().toInt()),
settings.setValue("path",path->text());
settings.setValue("updateInterval",interval->text().toInt());
settings.setValue("first_launch",false);
QDialog::accept();
Добавил менюшку которую связал со своим слотом:
C++ (Qt)
//create settings item
QAction * settings = menu->addAction(QIcon(":/img/gear.png"),tr("Settings"));
connect(settings,SIGNAL(triggered(bool)),
this, SLOT(openSettings(bool)));
C++ (Qt)
void TrayMenu::openSettings(bool){
SettingsDialog * form = new SettingsDialog();
if(form->exec() == QDialog::Accepted)
QApplication::exit();
delete form;
}
И почему-то, при нажатии налюбую кнопку в диалоге (OK, Cancel) приложение закрывается. Убирал из кода строку с exit(), все равно закрывается. Что не так делаю?