Adding apply/discard/reset functionality to settings dialog

This commit is contained in:
Dan Paulat 2022-12-22 00:16:59 -06:00
parent a6974e31a2
commit 87f611e026
10 changed files with 276 additions and 13 deletions

View file

@ -48,7 +48,8 @@ public:
};
template<class T>
SettingsInterface<T>::SettingsInterface() : p(std::make_unique<Impl>())
SettingsInterface<T>::SettingsInterface() :
SettingsInterfaceBase(), p(std::make_unique<Impl>())
{
}
template<class T>
@ -66,6 +67,28 @@ void SettingsInterface<T>::SetSettingsVariable(SettingsVariable<T>& variable)
p->variable_ = &variable;
}
template<class T>
bool SettingsInterface<T>::Commit()
{
return p->variable_->Commit();
}
template<class T>
void SettingsInterface<T>::Reset()
{
p->variable_->Reset();
p->UpdateEditWidget();
p->UpdateResetButton();
}
template<class T>
void SettingsInterface<T>::StageDefault()
{
p->variable_->StageDefault();
p->UpdateEditWidget();
p->UpdateResetButton();
}
template<class T>
void SettingsInterface<T>::SetEditWidget(QWidget* widget)
{