Qt: Use header resize mode for settings panels

pull/3499/head
Stenzek 3 months ago
parent bb7833168e
commit c6c8039211
No known key found for this signature in database

@ -194,6 +194,7 @@ GameCheatSettingsWidget::GameCheatSettingsWidget(SettingsWindow* dialog, QWidget
m_ui.cheatList->setItemDelegate(new CheatListOptionDelegate(this, m_ui.cheatList));
reloadList();
QtUtils::SetColumnWidthsForTreeView(m_ui.cheatList, {-1, 150});
// We don't use the binder here, because they're binary - either enabled, or not in the file.
m_ui.enableCheats->setChecked(sif->GetBoolValue("Cheats", "EnableCheats", false));
@ -472,17 +473,6 @@ void GameCheatSettingsWidget::disableAllCheats()
setStateForAll(false);
}
void GameCheatSettingsWidget::resizeEvent(QResizeEvent* event)
{
QWidget::resizeEvent(event);
resizeColumns();
}
void GameCheatSettingsWidget::resizeColumns()
{
QtUtils::ResizeColumnsForTreeView(m_ui.cheatList, {-1, 150});
}
void GameCheatSettingsWidget::setCheatEnabled(std::string name, bool enabled, bool save_and_reload_settings)
{
SettingsInterface* si = m_dialog->getSettingsInterface();
@ -564,7 +554,6 @@ void GameCheatSettingsWidget::reloadList()
// Expand all items, and ensure the size is correct. Otherwise editing codes resizes it.
expandAllItems();
resizeColumns();
}
void GameCheatSettingsWidget::expandAllItems()
@ -1013,6 +1002,7 @@ GameCheatCodeChoiceEditorDialog::GameCheatCodeChoiceEditorDialog(QWidget* parent
: QDialog(parent)
{
m_ui.setupUi(this);
QtUtils::SetColumnWidthsForTreeView(m_ui.optionList, {-1, 150});
connect(m_ui.add, &QToolButton::clicked, this, &GameCheatCodeChoiceEditorDialog::onAddClicked);
connect(m_ui.remove, &QToolButton::clicked, this, &GameCheatCodeChoiceEditorDialog::onRemoveClicked);
@ -1032,12 +1022,6 @@ GameCheatCodeChoiceEditorDialog::GameCheatCodeChoiceEditorDialog(QWidget* parent
GameCheatCodeChoiceEditorDialog::~GameCheatCodeChoiceEditorDialog() = default;
void GameCheatCodeChoiceEditorDialog::resizeEvent(QResizeEvent* event)
{
QDialog::resizeEvent(event);
QtUtils::ResizeColumnsForTreeView(m_ui.optionList, {-1, 150});
}
void GameCheatCodeChoiceEditorDialog::onAddClicked()
{
QTreeWidgetItem* item = new QTreeWidgetItem();

@ -43,9 +43,6 @@ public:
bool hasCodeWithName(const std::string_view name) const;
void disableAllCheats();
protected:
void resizeEvent(QResizeEvent* event) override;
private Q_SLOTS:
void onEnableCheatsChanged(Qt::CheckState state);
void onSortCheatsToggled(bool checked);
@ -71,7 +68,6 @@ private:
QStandardItem* getTreeWidgetParent(const std::string_view parent);
void populateTreeWidgetItem(QStandardItem* parent, const Cheats::CodeInfo& pi, bool enabled);
void expandAllItems();
void resizeColumns();
void setCheatEnabled(std::string name, bool enabled, bool save_and_reload_settings);
void setStateForAll(bool enabled);
@ -131,9 +127,6 @@ public:
Cheats::CodeOptionList getNewOptions() const;
protected:
void resizeEvent(QResizeEvent* event) override;
private Q_SLOTS:
void onAddClicked();
void onRemoveClicked();

@ -36,6 +36,7 @@ GameListSettingsWidget::GameListSettingsWidget(SettingsWindow* dialog, QWidget*
m_ui.searchDirectoryList->verticalHeader()->hide();
m_ui.searchDirectoryList->setCurrentIndex({});
m_ui.searchDirectoryList->setContextMenuPolicy(Qt::ContextMenuPolicy::CustomContextMenu);
QtUtils::SetColumnWidthsForTableView(m_ui.searchDirectoryList, {-1, 120});
connect(m_ui.searchDirectoryList, &QTableWidget::customContextMenuRequested, this,
&GameListSettingsWidget::onDirectoryListContextMenuRequested);
@ -83,24 +84,6 @@ void GameListSettingsWidget::refreshExclusionList()
m_ui.removeExcludedPath->setEnabled(false);
}
bool GameListSettingsWidget::event(QEvent* event)
{
bool res = QWidget::event(event);
switch (event->type())
{
case QEvent::LayoutRequest:
case QEvent::Resize:
QtUtils::ResizeColumnsForTableView(m_ui.searchDirectoryList, {-1, 120});
break;
default:
break;
}
return res;
}
void GameListSettingsWidget::addPathToTable(const std::string& path, bool recursive)
{
const int row = m_ui.searchDirectoryList->rowCount();

@ -35,9 +35,6 @@ private Q_SLOTS:
void onScanForNewGamesClicked();
void onRescanAllGamesClicked();
protected:
bool event(QEvent* event) override;
private:
void addPathToTable(const std::string& path, bool recursive);
void refreshDirectoryList();

@ -115,25 +115,6 @@ void GameSummaryWidget::reloadGameSettings()
m_ui.editInputProfile->setEnabled(m_ui.inputProfile->currentIndex() >= 1);
}
void GameSummaryWidget::resizeEvent(QResizeEvent* event)
{
QWidget::resizeEvent(event);
updateTracksInfoColumnSizes();
}
void GameSummaryWidget::showEvent(QShowEvent* event)
{
QWidget::showEvent(event);
// Need to put this on show as well, otherwise it lags behind the vertical scrollbar being enabled.
updateTracksInfoColumnSizes();
}
void GameSummaryWidget::updateTracksInfoColumnSizes()
{
QtUtils::ResizeColumnsForTableView(m_ui.tracks, {70, 75, 70, 70, -1, 40});
}
void GameSummaryWidget::populateUi(const std::string& path, const std::string& serial, DiscRegion region,
const GameDatabase::Entry* entry)
{
@ -362,6 +343,7 @@ void GameSummaryWidget::populateTracksInfo()
{"Audio", "Mode 1", "Mode 1/Raw", "Mode 2", "Mode 2/Form 1", "Mode 2/Form 2", "Mode 2/Mix", "Mode 2/Raw"}};
m_ui.tracks->clearContents();
QtUtils::SetColumnWidthsForTableView(m_ui.tracks, {70, 75, 70, 70, -1, 40});
std::unique_ptr<CDImage> image = CDImage::Open(m_path.c_str(), false, nullptr);
if (!image)

@ -26,10 +26,6 @@ public:
void reloadGameSettings();
protected:
void resizeEvent(QResizeEvent* event) override;
void showEvent(QShowEvent* event) override;
private Q_SLOTS:
void onSeparateDiscSettingsChanged(Qt::CheckState state);
void onCustomLanguageChanged(int language);
@ -48,7 +44,6 @@ private:
void setRevisionText(const QString& text);
void populateTracksInfo();
void updateTracksInfoColumnSizes();
Ui::GameSummaryWidget m_ui;
SettingsWindow* m_dialog;

@ -35,12 +35,6 @@ SetupWizardDialog::SetupWizardDialog()
SetupWizardDialog::~SetupWizardDialog() = default;
void SetupWizardDialog::resizeEvent(QResizeEvent* event)
{
QDialog::resizeEvent(event);
resizeDirectoryListColumns();
}
bool SetupWizardDialog::canShowNextPage()
{
const int current_page = m_ui.pages->currentIndex();
@ -112,20 +106,6 @@ void SetupWizardDialog::nextPage()
m_ui.pages->setCurrentIndex(new_page);
updatePageLabels(current_page);
updatePageButtons();
pageChangedTo(new_page);
}
void SetupWizardDialog::pageChangedTo(int page)
{
switch (page)
{
case Page_GameList:
resizeDirectoryListColumns();
break;
default:
break;
}
}
void SetupWizardDialog::updatePageLabels(int prev_page)
@ -266,6 +246,7 @@ void SetupWizardDialog::setupGameListPage()
m_ui.searchDirectoryList->verticalHeader()->hide();
m_ui.searchDirectoryList->setCurrentIndex({});
m_ui.searchDirectoryList->setContextMenuPolicy(Qt::ContextMenuPolicy::CustomContextMenu);
QtUtils::SetColumnWidthsForTableView(m_ui.searchDirectoryList, {-1, 100});
connect(m_ui.searchDirectoryList, &QTableWidget::customContextMenuRequested, this,
&SetupWizardDialog::onDirectoryListContextMenuRequested);
@ -391,11 +372,6 @@ void SetupWizardDialog::refreshDirectoryList()
m_ui.removeSearchDirectoryButton->setEnabled(false);
}
void SetupWizardDialog::resizeDirectoryListColumns()
{
QtUtils::ResizeColumnsForTableView(m_ui.searchDirectoryList, {-1, 100});
}
void SetupWizardDialog::setupControllerPage(bool initial)
{
static constexpr u32 NUM_PADS = 2;

@ -35,21 +35,15 @@ private Q_SLOTS:
void languageChanged();
void refreshBiosList();
// void biosListItemChanged(const QTreeWidgetItem* current, const QTreeWidgetItem* previous);
// void listRefreshed(const QVector<BIOSInfo>& items);
void onDirectoryListContextMenuRequested(const QPoint& point);
void onAddSearchDirectoryButtonClicked();
void onRemoveSearchDirectoryButtonClicked();
void onSearchDirectoryListSelectionChanged();
void refreshDirectoryList();
void resizeDirectoryListColumns();
void doMultipleDeviceAutomaticBinding(u32 port, QLabel* update_label);
protected:
void resizeEvent(QResizeEvent* event);
private:
enum Page : u32
{
@ -72,7 +66,6 @@ private:
void setupAchievementsPage(bool initial);
void updateStylesheets();
void pageChangedTo(int page);
void updatePageLabels(int prev_page);
void updatePageButtons();

Loading…
Cancel
Save