use grid instead of FlowWidget for PrintingSelector display options (#5341)

* use grid instead of FlowWidget for PrintingSelector display options

* remove one level of nesting
This commit is contained in:
RickyRister 2024-12-26 18:08:07 -08:00 committed by GitHub
parent 17b82a186f
commit 914002f846
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 13 additions and 20 deletions

View file

@ -15,15 +15,12 @@ PrintingSelectorViewOptionsWidget::PrintingSelectorViewOptionsWidget(QWidget *pa
PrintingSelector *_printingSelector) PrintingSelector *_printingSelector)
: QWidget(parent), printingSelector(_printingSelector) : QWidget(parent), printingSelector(_printingSelector)
{ {
// Set up the layout for the widget // Create the grid to hold the checkboxes
layout = new QHBoxLayout(this); gridLayout = new QGridLayout(this);
setLayout(layout); setLayout(gridLayout);
// Create the flow widget to hold the checkboxes
flowWidget = new FlowWidget(this, Qt::ScrollBarPolicy::ScrollBarAlwaysOff, Qt::ScrollBarPolicy::ScrollBarAsNeeded);
// Create the checkbox for sorting options visibility // Create the checkbox for sorting options visibility
sortCheckBox = new QCheckBox(flowWidget); sortCheckBox = new QCheckBox(this);
sortCheckBox->setText(tr("Display Sorting Options")); sortCheckBox->setText(tr("Display Sorting Options"));
sortCheckBox->setChecked(SettingsCache::instance().getPrintingSelectorSortOptionsVisible()); sortCheckBox->setChecked(SettingsCache::instance().getPrintingSelectorSortOptionsVisible());
connect(sortCheckBox, &QCheckBox::QT_STATE_CHANGED, printingSelector, connect(sortCheckBox, &QCheckBox::QT_STATE_CHANGED, printingSelector,
@ -32,7 +29,7 @@ PrintingSelectorViewOptionsWidget::PrintingSelectorViewOptionsWidget(QWidget *pa
&SettingsCache::setPrintingSelectorSortOptionsVisible); &SettingsCache::setPrintingSelectorSortOptionsVisible);
// Create the checkbox for search bar visibility // Create the checkbox for search bar visibility
searchCheckBox = new QCheckBox(flowWidget); searchCheckBox = new QCheckBox(this);
searchCheckBox->setText(tr("Display Search Bar")); searchCheckBox->setText(tr("Display Search Bar"));
searchCheckBox->setChecked(SettingsCache::instance().getPrintingSelectorSearchBarVisible()); searchCheckBox->setChecked(SettingsCache::instance().getPrintingSelectorSearchBarVisible());
connect(searchCheckBox, &QCheckBox::QT_STATE_CHANGED, printingSelector, connect(searchCheckBox, &QCheckBox::QT_STATE_CHANGED, printingSelector,
@ -41,7 +38,7 @@ PrintingSelectorViewOptionsWidget::PrintingSelectorViewOptionsWidget(QWidget *pa
&SettingsCache::setPrintingSelectorSearchBarVisible); &SettingsCache::setPrintingSelectorSearchBarVisible);
// Create the checkbox for card size slider visibility // Create the checkbox for card size slider visibility
cardSizeCheckBox = new QCheckBox(flowWidget); cardSizeCheckBox = new QCheckBox(this);
cardSizeCheckBox->setText(tr("Display Card Size Slider")); cardSizeCheckBox->setText(tr("Display Card Size Slider"));
cardSizeCheckBox->setChecked(SettingsCache::instance().getPrintingSelectorCardSizeSliderVisible()); cardSizeCheckBox->setChecked(SettingsCache::instance().getPrintingSelectorCardSizeSliderVisible());
connect(cardSizeCheckBox, &QCheckBox::QT_STATE_CHANGED, printingSelector, connect(cardSizeCheckBox, &QCheckBox::QT_STATE_CHANGED, printingSelector,
@ -50,7 +47,7 @@ PrintingSelectorViewOptionsWidget::PrintingSelectorViewOptionsWidget(QWidget *pa
&SettingsCache::setPrintingSelectorCardSizeSliderVisible); &SettingsCache::setPrintingSelectorCardSizeSliderVisible);
// Create the checkbox for navigation buttons visibility // Create the checkbox for navigation buttons visibility
navigationCheckBox = new QCheckBox(flowWidget); navigationCheckBox = new QCheckBox(this);
navigationCheckBox->setText(tr("Display Navigation Buttons")); navigationCheckBox->setText(tr("Display Navigation Buttons"));
navigationCheckBox->setChecked(SettingsCache::instance().getPrintingSelectorNavigationButtonsVisible()); navigationCheckBox->setChecked(SettingsCache::instance().getPrintingSelectorNavigationButtonsVisible());
connect(navigationCheckBox, &QCheckBox::QT_STATE_CHANGED, printingSelector, connect(navigationCheckBox, &QCheckBox::QT_STATE_CHANGED, printingSelector,
@ -58,12 +55,9 @@ PrintingSelectorViewOptionsWidget::PrintingSelectorViewOptionsWidget(QWidget *pa
connect(navigationCheckBox, &QCheckBox::QT_STATE_CHANGED, &SettingsCache::instance(), connect(navigationCheckBox, &QCheckBox::QT_STATE_CHANGED, &SettingsCache::instance(),
&SettingsCache::setPrintingSelectorNavigationButtonsVisible); &SettingsCache::setPrintingSelectorNavigationButtonsVisible);
// Add checkboxes to the flow widget // Add checkboxes to the grid
flowWidget->addWidget(sortCheckBox); gridLayout->addWidget(sortCheckBox, 0, 0);
flowWidget->addWidget(searchCheckBox); gridLayout->addWidget(searchCheckBox, 0, 1);
flowWidget->addWidget(cardSizeCheckBox); gridLayout->addWidget(cardSizeCheckBox, 1, 0);
flowWidget->addWidget(navigationCheckBox); gridLayout->addWidget(navigationCheckBox, 1, 1);
// Add flow widget to the main layout
layout->addWidget(flowWidget);
} }

View file

@ -16,8 +16,7 @@ public:
explicit PrintingSelectorViewOptionsWidget(QWidget *parent, PrintingSelector *_printingSelector); explicit PrintingSelectorViewOptionsWidget(QWidget *parent, PrintingSelector *_printingSelector);
private: private:
QHBoxLayout *layout; QGridLayout *gridLayout;
FlowWidget *flowWidget;
PrintingSelector *printingSelector; PrintingSelector *printingSelector;
QCheckBox *sortCheckBox; QCheckBox *sortCheckBox;
QCheckBox *searchCheckBox; QCheckBox *searchCheckBox;