mirror of
https://github.com/PrismLauncher/PrismLauncher.git
synced 2025-04-29 22:24:26 +02:00
chore: add getOrRegisterSetting function (#3660)
This commit is contained in:
commit
8373fa81f1
@ -593,8 +593,7 @@ void ResourceFolderModel::setupHeaderAction(QAction* act, int column)
|
||||
void ResourceFolderModel::saveColumns(QTreeView* tree)
|
||||
{
|
||||
auto const setting_name = QString("UI/%1_Page/Columns").arg(id());
|
||||
auto setting = (m_instance->settings()->contains(setting_name)) ? m_instance->settings()->getSetting(setting_name)
|
||||
: m_instance->settings()->registerSetting(setting_name);
|
||||
auto setting = m_instance->settings()->getOrRegisterSetting(setting_name);
|
||||
|
||||
setting->set(tree->header()->saveState());
|
||||
}
|
||||
@ -606,8 +605,7 @@ void ResourceFolderModel::loadColumns(QTreeView* tree)
|
||||
}
|
||||
|
||||
auto const setting_name = QString("UI/%1_Page/Columns").arg(id());
|
||||
auto setting = (m_instance->settings()->contains(setting_name)) ? m_instance->settings()->getSetting(setting_name)
|
||||
: m_instance->settings()->registerSetting(setting_name);
|
||||
auto setting = m_instance->settings()->getOrRegisterSetting(setting_name);
|
||||
|
||||
tree->header()->restoreState(setting->get().toByteArray());
|
||||
}
|
||||
|
@ -124,3 +124,8 @@ void SettingsObject::connectSignals(const Setting& setting)
|
||||
connect(&setting, &Setting::settingReset, this, &SettingsObject::resetSetting);
|
||||
connect(&setting, SIGNAL(settingReset(Setting)), this, SIGNAL(settingReset(const Setting&)));
|
||||
}
|
||||
|
||||
std::shared_ptr<Setting> SettingsObject::getOrRegisterSetting(const QString& id, QVariant defVal)
|
||||
{
|
||||
return contains(id) ? getSetting(id) : registerSetting(id, defVal);
|
||||
}
|
||||
|
@ -103,6 +103,16 @@ class SettingsObject : public QObject {
|
||||
*/
|
||||
std::shared_ptr<Setting> getSetting(const QString& id) const;
|
||||
|
||||
/*!
|
||||
* \brief Gets the setting with the given ID.
|
||||
* \brief if is not registered yet it does that
|
||||
* \param id The ID of the setting to get.
|
||||
* \return A pointer to the setting with the given ID.
|
||||
* Returns null if there is no setting with the given ID.
|
||||
* \sa operator []()
|
||||
*/
|
||||
std::shared_ptr<Setting> getOrRegisterSetting(const QString& id, QVariant defVal = QVariant());
|
||||
|
||||
/*!
|
||||
* \brief Gets the value of the setting with the given ID.
|
||||
* \param id The ID of the setting to get.
|
||||
|
@ -176,10 +176,7 @@ MainWindow::MainWindow(QWidget* parent) : QMainWindow(parent), ui(new Ui::MainWi
|
||||
|
||||
// restore the instance toolbar settings
|
||||
auto const setting_name = QString("WideBarVisibility_%1").arg(ui->instanceToolBar->objectName());
|
||||
if (!APPLICATION->settings()->contains(setting_name))
|
||||
instanceToolbarSetting = APPLICATION->settings()->registerSetting(setting_name);
|
||||
else
|
||||
instanceToolbarSetting = APPLICATION->settings()->getSetting(setting_name);
|
||||
instanceToolbarSetting = APPLICATION->settings()->getOrRegisterSetting(setting_name);
|
||||
|
||||
ui->instanceToolBar->setVisibilityState(instanceToolbarSetting->get().toByteArray());
|
||||
|
||||
|
@ -146,10 +146,7 @@ void ExternalResourcesPage::openedImpl()
|
||||
m_model->startWatching();
|
||||
|
||||
auto const setting_name = QString("WideBarVisibility_%1").arg(id());
|
||||
if (!APPLICATION->settings()->contains(setting_name))
|
||||
m_wide_bar_setting = APPLICATION->settings()->registerSetting(setting_name);
|
||||
else
|
||||
m_wide_bar_setting = APPLICATION->settings()->getSetting(setting_name);
|
||||
m_wide_bar_setting = APPLICATION->settings()->getOrRegisterSetting(setting_name);
|
||||
|
||||
ui->actionsToolbar->setVisibilityState(m_wide_bar_setting->get().toByteArray());
|
||||
}
|
||||
|
@ -559,10 +559,7 @@ void ScreenshotsPage::openedImpl()
|
||||
}
|
||||
|
||||
auto const setting_name = QString("WideBarVisibility_%1").arg(id());
|
||||
if (!APPLICATION->settings()->contains(setting_name))
|
||||
m_wide_bar_setting = APPLICATION->settings()->registerSetting(setting_name);
|
||||
else
|
||||
m_wide_bar_setting = APPLICATION->settings()->getSetting(setting_name);
|
||||
m_wide_bar_setting = APPLICATION->settings()->getOrRegisterSetting(setting_name);
|
||||
|
||||
ui->toolBar->setVisibilityState(m_wide_bar_setting->get().toByteArray());
|
||||
}
|
||||
|
@ -711,10 +711,7 @@ void ServersPage::openedImpl()
|
||||
m_model->observe();
|
||||
|
||||
auto const setting_name = QString("WideBarVisibility_%1").arg(id());
|
||||
if (!APPLICATION->settings()->contains(setting_name))
|
||||
m_wide_bar_setting = APPLICATION->settings()->registerSetting(setting_name);
|
||||
else
|
||||
m_wide_bar_setting = APPLICATION->settings()->getSetting(setting_name);
|
||||
m_wide_bar_setting = APPLICATION->settings()->getOrRegisterSetting(setting_name);
|
||||
|
||||
ui->toolBar->setVisibilityState(m_wide_bar_setting->get().toByteArray());
|
||||
|
||||
|
@ -124,10 +124,7 @@ void VersionPage::retranslate()
|
||||
void VersionPage::openedImpl()
|
||||
{
|
||||
auto const setting_name = QString("WideBarVisibility_%1").arg(id());
|
||||
if (!APPLICATION->settings()->contains(setting_name))
|
||||
m_wide_bar_setting = APPLICATION->settings()->registerSetting(setting_name);
|
||||
else
|
||||
m_wide_bar_setting = APPLICATION->settings()->getSetting(setting_name);
|
||||
m_wide_bar_setting = APPLICATION->settings()->getOrRegisterSetting(setting_name);
|
||||
|
||||
ui->toolBar->setVisibilityState(m_wide_bar_setting->get().toByteArray());
|
||||
}
|
||||
|
@ -119,10 +119,7 @@ void WorldListPage::openedImpl()
|
||||
}
|
||||
|
||||
auto const setting_name = QString("WideBarVisibility_%1").arg(id());
|
||||
if (!APPLICATION->settings()->contains(setting_name))
|
||||
m_wide_bar_setting = APPLICATION->settings()->registerSetting(setting_name);
|
||||
else
|
||||
m_wide_bar_setting = APPLICATION->settings()->getSetting(setting_name);
|
||||
m_wide_bar_setting = APPLICATION->settings()->getOrRegisterSetting(setting_name);
|
||||
|
||||
ui->toolBar->setVisibilityState(m_wide_bar_setting->get().toByteArray());
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user