-void SettingsDlg::applyChanges() {
- //SettingsInterface *sp = qobject_cast<SettingsInterface *>(ui.settingsStack->currentWidget());
- //if(sp) sp->applyChanges();
+bool SettingsDlg::applyChanges() {
+ if(!currentPage()) return false;
+ if(currentPage()->aboutToSave()) {
+ currentPage()->save();
+ return true;
+ }
+ return false;
+}
+
+// TODO add messagebox
+void SettingsDlg::reload() {
+ SettingsPage *page = qobject_cast<SettingsPage *>(ui.settingsStack->currentWidget());
+ if(page) page->load();
+}
+
+void SettingsDlg::loadDefaults() {
+ SettingsPage *page = qobject_cast<SettingsPage *>(ui.settingsStack->currentWidget());
+ if(page) page->defaults();