Merge pull request 'feat(UI): Add toggle for Online column visibility in Game List' (#70) from feat(ui)/toggle-online-column into main

Reviewed-on: https://git.citron-emu.org/Citron/Emulator/pulls/70
This commit is contained in:
Zephyron
2025-12-16 06:07:01 +00:00
4 changed files with 23 additions and 8 deletions

View File

@@ -156,6 +156,8 @@ resolution_setting{Settings::values.resolution_setup.GetValue()}, system{system_
connect(ui->show_types, &QCheckBox::checkStateChanged, this, &ConfigureUi::RequestGameListUpdate);
connect(ui->show_play_time, &QCheckBox::checkStateChanged, this,
&ConfigureUi::RequestGameListUpdate);
connect(ui->show_online_column, &QCheckBox::checkStateChanged, this,
&ConfigureUi::RequestGameListUpdate);
connect(ui->game_icon_size_combobox, &QComboBox::currentIndexChanged, this,
&ConfigureUi::RequestGameListUpdate);
connect(ui->folder_icon_size_combobox, &QComboBox::currentIndexChanged,
@@ -210,6 +212,7 @@ void ConfigureUi::ApplyConfiguration() {
UISettings::values.show_size = ui->show_size->isChecked();
UISettings::values.show_types = ui->show_types->isChecked();
UISettings::values.show_play_time = ui->show_play_time->isChecked();
UISettings::values.show_online_column = ui->show_online_column->isChecked();
UISettings::values.game_icon_size = ui->game_icon_size_combobox->currentData().toUInt();
UISettings::values.folder_icon_size = ui->folder_icon_size_combobox->currentData().toUInt();
UISettings::values.row_1_text_id = ui->row_1_text_combobox->currentData().toUInt();
@@ -279,6 +282,7 @@ void ConfigureUi::SetConfiguration() {
ui->show_size->setChecked(UISettings::values.show_size.GetValue());
ui->show_types->setChecked(UISettings::values.show_types.GetValue());
ui->show_play_time->setChecked(UISettings::values.show_play_time.GetValue());
ui->show_online_column->setChecked(UISettings::values.show_online_column.GetValue());
ui->game_icon_size_combobox->setCurrentIndex(
ui->game_icon_size_combobox->findData(UISettings::values.game_icon_size.GetValue()));
ui->folder_icon_size_combobox->setCurrentIndex(

View File

@@ -229,14 +229,21 @@
</property>
</widget>
</item>
<item row="5" column="0">
<item row="5" column="0" colspan="2">
<widget class="QCheckBox" name="show_online_column">
<property name="text">
<string>Show Online Column</string>
</property>
</widget>
</item>
<item row="6" column="0">
<widget class="QLabel" name="game_icon_size_label">
<property name="text">
<string>Game Icon Size:</string>
</property>
</widget>
</item>
<item row="5" column="1">
<item row="6" column="1">
<widget class="QComboBox" name="game_icon_size_combobox">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Fixed">
@@ -246,14 +253,14 @@
</property>
</widget>
</item>
<item row="6" column="0">
<item row="7" column="0">
<widget class="QLabel" name="folder_icon_size_label">
<property name="text">
<string>Folder Icon Size:</string>
</property>
</widget>
</item>
<item row="6" column="1">
<item row="7" column="1">
<widget class="QComboBox" name="folder_icon_size_combobox">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Fixed">
@@ -263,14 +270,14 @@
</property>
</widget>
</item>
<item row="7" column="0">
<item row="8" column="0">
<widget class="QLabel" name="row_1_label">
<property name="text">
<string>Row 1 Text:</string>
</property>
</widget>
</item>
<item row="7" column="1">
<item row="8" column="1">
<widget class="QComboBox" name="row_1_text_combobox">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Fixed">
@@ -280,14 +287,14 @@
</property>
</widget>
</item>
<item row="8" column="0">
<item row="9" column="0">
<widget class="QLabel" name="row_2_label">
<property name="text">
<string>Row 2 Text:</string>
</property>
</widget>
</item>
<item row="8" column="1">
<item row="9" column="1">
<widget class="QComboBox" name="row_2_text_combobox">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Fixed">

View File

@@ -1289,6 +1289,7 @@ void GameList::PopulateAsync(QVector<UISettings::GameDir>& game_dirs) {
tree_view->setColumnHidden(COLUMN_FILE_TYPE, !UISettings::values.show_types);
tree_view->setColumnHidden(COLUMN_SIZE, !UISettings::values.show_size);
tree_view->setColumnHidden(COLUMN_PLAY_TIME, !UISettings::values.show_play_time);
tree_view->setColumnHidden(COLUMN_ONLINE, !UISettings::values.show_online_column);
current_worker.reset();
item_model->removeRows(0, item_model->rowCount());
search_field->clear();

View File

@@ -233,6 +233,9 @@ namespace UISettings {
// Play time
Setting<bool> show_play_time{linkage, true, "show_play_time", Category::UiGameList};
// Online Column
Setting<bool> show_online_column{linkage, true, "show_online_column", Category::UiGameList};
bool configuration_applied;
bool reset_to_defaults;
bool shortcut_already_warned{false};