Qt: Fix icon size actions

This commit is contained in:
Unknown 2017-12-03 18:30:41 +01:00 committed by Ivan
parent 69283accd0
commit 1b13b94095
2 changed files with 29 additions and 18 deletions

View File

@ -1109,7 +1109,7 @@ void main_window::CreateConnects()
auto openSettings = [=](int tabIndex) auto openSettings = [=](int tabIndex)
{ {
settings_dialog dlg(guiSettings, emuSettings, tabIndex, this); settings_dialog dlg(guiSettings, emuSettings, tabIndex, this);
connect(&dlg, &settings_dialog::GuiSettingsSaveRequest, this, &main_window::SaveWindowState); connect(&dlg, &settings_dialog::GuiSettingsSaveRequest, this, &main_window::SaveWindowState);
connect(&dlg, &settings_dialog::GuiSettingsSyncRequest, this, &main_window::ConfigureGuiFromSettings); connect(&dlg, &settings_dialog::GuiSettingsSyncRequest, this, &main_window::ConfigureGuiFromSettings);
connect(&dlg, &settings_dialog::GuiStylesheetRequest, this, &main_window::RequestGlobalStylesheetChange); connect(&dlg, &settings_dialog::GuiStylesheetRequest, this, &main_window::RequestGlobalStylesheetChange);
@ -1270,21 +1270,22 @@ void main_window::CreateConnects()
{ {
int index; int index;
if (act == ui->setIconSizeTinyAct) index = 0; if (act == ui->setIconSizeTinyAct)
else if (act == ui->setIconSizeSmallAct) index = gui::get_Index(gui::gl_icon_size_small); index = 0;
else if (act == ui->setIconSizeMediumAct) index = gui::get_Index(gui::gl_icon_size_medium); else if (act == ui->setIconSizeSmallAct)
else index = gui::gl_max_slider_pos; index = gui::get_Index(gui::gl_icon_size_small);
else if (act == ui->setIconSizeMediumAct)
index = gui::get_Index(gui::gl_icon_size_medium);
else
index = gui::gl_max_slider_pos;
m_save_slider_pos = true;
resizeIcons(index); resizeIcons(index);
}); });
connect (m_gameListFrame, &game_list_frame::RequestIconSizeActSet, [=](const int& idx) connect (m_gameListFrame, &game_list_frame::RequestIconSizeActSet, [=](const int& idx)
{ {
if (idx < gui::get_Index((gui::gl_icon_size_small + gui::gl_icon_size_min) / 2)) ui->setIconSizeTinyAct->setChecked(true); SetIconSizeActions(idx);
else if (idx < gui::get_Index((gui::gl_icon_size_medium + gui::gl_icon_size_small) / 2)) ui->setIconSizeSmallAct->setChecked(true);
else if (idx < gui::get_Index((gui::gl_icon_size_max + gui::gl_icon_size_medium) / 2)) ui->setIconSizeMediumAct->setChecked(true);
else ui->setIconSizeLargeAct->setChecked(true);
resizeIcons(idx); resizeIcons(idx);
}); });
@ -1469,16 +1470,13 @@ void main_window::ConfigureGuiFromSettings(bool configure_all)
ui->showCatUnknownAct->setChecked(guiSettings->GetCategoryVisibility(Category::Unknown_Cat)); ui->showCatUnknownAct->setChecked(guiSettings->GetCategoryVisibility(Category::Unknown_Cat));
ui->showCatOtherAct->setChecked(guiSettings->GetCategoryVisibility(Category::Others)); ui->showCatOtherAct->setChecked(guiSettings->GetCategoryVisibility(Category::Others));
int idx = guiSettings->GetValue(gui::gl_iconSize).toInt(); SetIconSizeActions(guiSettings->GetValue(gui::gl_iconSize).toInt());
int index = gui::gl_max_slider_pos / 4;
if (idx < index) ui->setIconSizeTinyAct->setChecked(true);
else if (idx < index * 2) ui->setIconSizeSmallAct->setChecked(true);
else if (idx < index * 3) ui->setIconSizeMediumAct->setChecked(true);
else ui->setIconSizeLargeAct->setChecked(true);
bool isListMode = guiSettings->GetValue(gui::gl_listMode).toBool(); bool isListMode = guiSettings->GetValue(gui::gl_listMode).toBool();
if (isListMode) ui->setlistModeListAct->setChecked(true); if (isListMode)
else ui->setlistModeGridAct->setChecked(true); ui->setlistModeListAct->setChecked(true);
else
ui->setlistModeGridAct->setChecked(true);
m_categoryVisibleActGroup->setEnabled(isListMode); m_categoryVisibleActGroup->setEnabled(isListMode);
if (configure_all) if (configure_all)
@ -1491,6 +1489,18 @@ void main_window::ConfigureGuiFromSettings(bool configure_all)
} }
} }
void main_window::SetIconSizeActions(int idx)
{
if (idx < gui::get_Index((gui::gl_icon_size_small + gui::gl_icon_size_min) / 2))
ui->setIconSizeTinyAct->setChecked(true);
else if (idx < gui::get_Index((gui::gl_icon_size_medium + gui::gl_icon_size_small) / 2))
ui->setIconSizeSmallAct->setChecked(true);
else if (idx < gui::get_Index((gui::gl_icon_size_max + gui::gl_icon_size_medium) / 2))
ui->setIconSizeMediumAct->setChecked(true);
else
ui->setIconSizeLargeAct->setChecked(true);
}
void main_window::keyPressEvent(QKeyEvent *keyEvent) void main_window::keyPressEvent(QKeyEvent *keyEvent)
{ {
if (((keyEvent->modifiers() & Qt::AltModifier) && keyEvent->key() == Qt::Key_Return) || (isFullScreen() && keyEvent->key() == Qt::Key_Escape)) if (((keyEvent->modifiers() & Qt::AltModifier) && keyEvent->key() == Qt::Key_Return) || (isFullScreen() && keyEvent->key() == Qt::Key_Escape))

View File

@ -91,6 +91,7 @@ private Q_SLOTS:
void SaveWindowState(); void SaveWindowState();
void ConfigureGuiFromSettings(bool configure_all = false); void ConfigureGuiFromSettings(bool configure_all = false);
void SetIconSizeActions(int idx);
protected: protected:
void closeEvent(QCloseEvent *event) override; void closeEvent(QCloseEvent *event) override;