mirror of
https://github.com/Cockatrice/Cockatrice.git
synced 2026-07-23 02:42:16 -07:00
Make the view display options functional.
This commit is contained in:
parent
5a416ce6e6
commit
03b2253541
9 changed files with 143 additions and 4 deletions
|
|
@ -24,19 +24,22 @@ PrintingSelector::PrintingSelector(QWidget *parent,
|
|||
layout->addWidget(viewOptionsToolbar);
|
||||
|
||||
sortToolBar = new PrintingSelectorCardSortingWidget(this);
|
||||
sortToolBar->setVisible(SettingsCache::instance().getPrintingSelectorSortOptionsVisible());
|
||||
layout->addWidget(sortToolBar);
|
||||
|
||||
// Add the search bar
|
||||
searchBar = new PrintingSelectorCardSearchWidget(this);
|
||||
searchBar->setVisible(SettingsCache::instance().getPrintingSelectorSearchBarVisible());
|
||||
layout->addWidget(searchBar);
|
||||
|
||||
flowWidget = new FlowWidget(this, Qt::ScrollBarAlwaysOff, Qt::ScrollBarAsNeeded);
|
||||
layout->addWidget(flowWidget);
|
||||
|
||||
cardSizeWidget = new CardSizeWidget(this, flowWidget, SettingsCache::instance().getPrintingSelectorCardSize());
|
||||
cardSizeWidget->setVisible(SettingsCache::instance().getPrintingSelectorCardSizeSliderVisible());
|
||||
layout->addWidget(cardSizeWidget);
|
||||
|
||||
cardSelectionBar = new PrintingSelectorCardSelectionWidget(this);
|
||||
cardSelectionBar->setVisible(SettingsCache::instance().getPrintingSelectorNavigationButtonsVisible());
|
||||
layout->addWidget(cardSelectionBar);
|
||||
|
||||
connect(deckModel, &DeckListModel::dataChanged, this, [this]() {
|
||||
|
|
@ -166,3 +169,23 @@ void PrintingSelector::getAllSetsForCurrentCard()
|
|||
currentIndex = 0;
|
||||
widgetLoadingBufferTimer->start(0); // Process as soon as possible
|
||||
}
|
||||
|
||||
void PrintingSelector::toggleVisibilitySortOptions(bool _state)
|
||||
{
|
||||
sortToolBar->setVisible(_state);
|
||||
}
|
||||
|
||||
void PrintingSelector::toggleVisibilitySearchBar(bool _state)
|
||||
{
|
||||
searchBar->setVisible(_state);
|
||||
}
|
||||
|
||||
void PrintingSelector::toggleVisibilityCardSizeSlider(bool _state)
|
||||
{
|
||||
cardSizeWidget->setVisible(_state);
|
||||
}
|
||||
|
||||
void PrintingSelector::toggleVisibilityNavigationButtons(bool _state)
|
||||
{
|
||||
cardSelectionBar->setVisible(_state);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -33,6 +33,10 @@ public slots:
|
|||
void updateDisplay();
|
||||
void selectPreviousCard();
|
||||
void selectNextCard();
|
||||
void toggleVisibilitySortOptions(bool _state);
|
||||
void toggleVisibilitySearchBar(bool _state);
|
||||
void toggleVisibilityCardSizeSlider(bool _state);
|
||||
void toggleVisibilityNavigationButtons(bool _state);
|
||||
|
||||
private:
|
||||
QVBoxLayout *layout;
|
||||
|
|
|
|||
|
|
@ -25,7 +25,7 @@ PrintingSelectorViewOptionsToolbarWidget::PrintingSelectorViewOptionsToolbarWidg
|
|||
connect(collapseButton, &QPushButton::clicked, this, &PrintingSelectorViewOptionsToolbarWidget::collapse);
|
||||
expandedLayout->addWidget(collapseButton, 0, Qt::AlignLeft);
|
||||
|
||||
viewOptions = new PrintingSelectorViewOptionsWidget(expandedWidget);
|
||||
viewOptions = new PrintingSelectorViewOptionsWidget(expandedWidget, printingSelector);
|
||||
expandedLayout->addWidget(viewOptions);
|
||||
|
||||
expandedWidget->setLayout(expandedLayout);
|
||||
|
|
|
|||
|
|
@ -1,6 +1,10 @@
|
|||
#include "printing_selector_view_options_widget.h"
|
||||
|
||||
PrintingSelectorViewOptionsWidget::PrintingSelectorViewOptionsWidget(QWidget *parent) : QWidget(parent)
|
||||
#include "../../../../settings/cache_settings.h"
|
||||
|
||||
PrintingSelectorViewOptionsWidget::PrintingSelectorViewOptionsWidget(QWidget *parent,
|
||||
PrintingSelector *_printingSelector)
|
||||
: QWidget(parent), printingSelector(_printingSelector)
|
||||
{
|
||||
layout = new QHBoxLayout(this);
|
||||
setLayout(layout);
|
||||
|
|
@ -9,12 +13,32 @@ PrintingSelectorViewOptionsWidget::PrintingSelectorViewOptionsWidget(QWidget *pa
|
|||
|
||||
sortCheckBox = new QCheckBox(flowWidget);
|
||||
sortCheckBox->setText(tr("Display Sorting Options"));
|
||||
sortCheckBox->setChecked(SettingsCache::instance().getPrintingSelectorSortOptionsVisible());
|
||||
connect(sortCheckBox, &QCheckBox::QT_STATE_CHANGED, printingSelector,
|
||||
&PrintingSelector::toggleVisibilitySortOptions);
|
||||
connect(sortCheckBox, &QCheckBox::QT_STATE_CHANGED, &SettingsCache::instance(),
|
||||
&SettingsCache::setPrintingSelectorSortOptionsVisible);
|
||||
searchCheckBox = new QCheckBox(flowWidget);
|
||||
searchCheckBox->setText(tr("Display Search Bar"));
|
||||
searchCheckBox->setChecked(SettingsCache::instance().getPrintingSelectorSearchBarVisible());
|
||||
connect(searchCheckBox, &QCheckBox::QT_STATE_CHANGED, printingSelector,
|
||||
&PrintingSelector::toggleVisibilitySearchBar);
|
||||
connect(searchCheckBox, &QCheckBox::QT_STATE_CHANGED, &SettingsCache::instance(),
|
||||
&SettingsCache::setPrintingSelectorSearchBarVisible);
|
||||
cardSizeCheckBox = new QCheckBox(flowWidget);
|
||||
cardSizeCheckBox->setText(tr("Display Card Size Slider"));
|
||||
cardSizeCheckBox->setChecked(SettingsCache::instance().getPrintingSelectorCardSizeSliderVisible());
|
||||
connect(cardSizeCheckBox, &QCheckBox::QT_STATE_CHANGED, printingSelector,
|
||||
&PrintingSelector::toggleVisibilityCardSizeSlider);
|
||||
connect(cardSizeCheckBox, &QCheckBox::QT_STATE_CHANGED, &SettingsCache::instance(),
|
||||
&SettingsCache::setPrintingSelectorCardSizeSliderVisible);
|
||||
navigationCheckBox = new QCheckBox(flowWidget);
|
||||
navigationCheckBox->setText(tr("Display Navigation Buttons"));
|
||||
navigationCheckBox->setChecked(SettingsCache::instance().getPrintingSelectorNavigationButtonsVisible());
|
||||
connect(navigationCheckBox, &QCheckBox::QT_STATE_CHANGED, printingSelector,
|
||||
&PrintingSelector::toggleVisibilityNavigationButtons);
|
||||
connect(navigationCheckBox, &QCheckBox::QT_STATE_CHANGED, &SettingsCache::instance(),
|
||||
&SettingsCache::setPrintingSelectorNavigationButtonsVisible);
|
||||
|
||||
flowWidget->addWidget(sortCheckBox);
|
||||
flowWidget->addWidget(searchCheckBox);
|
||||
|
|
|
|||
|
|
@ -2,6 +2,7 @@
|
|||
#define PRINTING_SELECTOR_VIEW_OPTIONS_WIDGET_H
|
||||
|
||||
#include "../general/layout_containers/flow_widget.h"
|
||||
#include "printing_selector.h"
|
||||
|
||||
#include <QCheckBox>
|
||||
#include <QHBoxLayout>
|
||||
|
|
@ -12,11 +13,12 @@ class PrintingSelectorViewOptionsWidget : public QWidget
|
|||
Q_OBJECT
|
||||
|
||||
public:
|
||||
explicit PrintingSelectorViewOptionsWidget(QWidget *parent);
|
||||
explicit PrintingSelectorViewOptionsWidget(QWidget *parent, PrintingSelector *_printingSelector);
|
||||
|
||||
private:
|
||||
QHBoxLayout *layout;
|
||||
FlowWidget *flowWidget;
|
||||
PrintingSelector *printingSelector;
|
||||
QCheckBox *sortCheckBox;
|
||||
QCheckBox *searchCheckBox;
|
||||
QCheckBox *cardSizeCheckBox;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue