add new setting

This commit is contained in:
RickyRister 2024-12-05 02:05:20 -08:00
parent 6c3fe0f441
commit b0638daa6c
6 changed files with 33 additions and 0 deletions

View file

@ -324,6 +324,14 @@ AppearanceSettingsPage::AppearanceSettingsPage()
themeGroupBox = new QGroupBox; themeGroupBox = new QGroupBox;
themeGroupBox->setLayout(themeGrid); themeGroupBox->setLayout(themeGrid);
// Menu settings
showShortcutsCheckBox.setChecked(settings.getShowShortcuts());
auto *menuGrid = new QGridLayout;
menuGrid->addWidget(&showShortcutsCheckBox, 0, 0);
menuGroupBox = new QGroupBox;
menuGroupBox->setLayout(menuGrid);
// Card rendering // Card rendering
displayCardNamesCheckBox.setChecked(settings.getDisplayCardNames()); displayCardNamesCheckBox.setChecked(settings.getDisplayCardNames());
connect(&displayCardNamesCheckBox, &QCheckBox::QT_STATE_CHANGED, &settings, &SettingsCache::setDisplayCardNames); connect(&displayCardNamesCheckBox, &QCheckBox::QT_STATE_CHANGED, &settings, &SettingsCache::setDisplayCardNames);
@ -389,6 +397,7 @@ AppearanceSettingsPage::AppearanceSettingsPage()
// putting it all together // putting it all together
auto *mainLayout = new QVBoxLayout; auto *mainLayout = new QVBoxLayout;
mainLayout->addWidget(themeGroupBox); mainLayout->addWidget(themeGroupBox);
mainLayout->addWidget(menuGroupBox);
mainLayout->addWidget(cardsGroupBox); mainLayout->addWidget(cardsGroupBox);
mainLayout->addWidget(handGroupBox); mainLayout->addWidget(handGroupBox);
mainLayout->addWidget(tableGroupBox); mainLayout->addWidget(tableGroupBox);
@ -423,6 +432,9 @@ void AppearanceSettingsPage::retranslateUi()
themeLabel.setText(tr("Current theme:")); themeLabel.setText(tr("Current theme:"));
openThemeButton.setText(tr("Open themes folder")); openThemeButton.setText(tr("Open themes folder"));
menuGroupBox->setTitle(tr("Menu settings"));
showShortcutsCheckBox.setText(tr("Show keyboard shortcuts in right-click menus"));
cardsGroupBox->setTitle(tr("Card rendering")); cardsGroupBox->setTitle(tr("Card rendering"));
displayCardNamesCheckBox.setText(tr("Display card names on cards having a picture")); displayCardNamesCheckBox.setText(tr("Display card names on cards having a picture"));
cardScalingCheckBox.setText(tr("Scale cards on mouse over")); cardScalingCheckBox.setText(tr("Scale cards on mouse over"));

View file

@ -90,6 +90,7 @@ private:
QPushButton openThemeButton; QPushButton openThemeButton;
QLabel minPlayersForMultiColumnLayoutLabel; QLabel minPlayersForMultiColumnLayoutLabel;
QLabel maxFontSizeForCardsLabel; QLabel maxFontSizeForCardsLabel;
QCheckBox showShortcutsCheckBox;
QCheckBox displayCardNamesCheckBox; QCheckBox displayCardNamesCheckBox;
QCheckBox cardScalingCheckBox; QCheckBox cardScalingCheckBox;
QLabel verticalCardOverlapPercentLabel; QLabel verticalCardOverlapPercentLabel;
@ -98,6 +99,7 @@ private:
QCheckBox leftJustifiedHandCheckBox; QCheckBox leftJustifiedHandCheckBox;
QCheckBox invertVerticalCoordinateCheckBox; QCheckBox invertVerticalCoordinateCheckBox;
QGroupBox *themeGroupBox; QGroupBox *themeGroupBox;
QGroupBox *menuGroupBox;
QGroupBox *cardsGroupBox; QGroupBox *cardsGroupBox;
QGroupBox *handGroupBox; QGroupBox *handGroupBox;
QGroupBox *tableGroupBox; QGroupBox *tableGroupBox;

View file

@ -239,6 +239,7 @@ SettingsCache::SettingsCache()
knownMissingFeatures = settings->value("interface/knownmissingfeatures", "").toString(); knownMissingFeatures = settings->value("interface/knownmissingfeatures", "").toString();
useTearOffMenus = settings->value("interface/usetearoffmenus", true).toBool(); useTearOffMenus = settings->value("interface/usetearoffmenus", true).toBool();
showShortcuts = settings->value("menu/showshortcuts", true).toBool();
displayCardNames = settings->value("cards/displaycardnames", true).toBool(); displayCardNames = settings->value("cards/displaycardnames", true).toBool();
horizontalHand = settings->value("hand/horizontal", true).toBool(); horizontalHand = settings->value("hand/horizontal", true).toBool();
invertVerticalCoordinate = settings->value("table/invert_vertical", false).toBool(); invertVerticalCoordinate = settings->value("table/invert_vertical", false).toBool();
@ -505,6 +506,12 @@ void SettingsCache::setTabGameSplitterSizes(const QByteArray &_tabGameSplitterSi
settings->setValue("interface/tabgame_splittersizes", tabGameSplitterSizes); settings->setValue("interface/tabgame_splittersizes", tabGameSplitterSizes);
} }
void SettingsCache::setShowShortcuts(QT_STATE_CHANGED_T _showShortcuts)
{
showShortcuts = static_cast<bool>(_showShortcuts);
settings->setValue("menu/ShowShortcuts", showShortcuts);
}
void SettingsCache::setDisplayCardNames(QT_STATE_CHANGED_T _displayCardNames) void SettingsCache::setDisplayCardNames(QT_STATE_CHANGED_T _displayCardNames)
{ {
displayCardNames = static_cast<bool>(_displayCardNames); displayCardNames = static_cast<bool>(_displayCardNames);

View file

@ -97,6 +97,7 @@ private:
int startingHandSize; int startingHandSize;
bool annotateTokens; bool annotateTokens;
QByteArray tabGameSplitterSizes; QByteArray tabGameSplitterSizes;
bool showShortcuts;
bool displayCardNames; bool displayCardNames;
bool horizontalHand; bool horizontalHand;
bool invertVerticalCoordinate; bool invertVerticalCoordinate;
@ -288,6 +289,10 @@ public:
{ {
return tabGameSplitterSizes; return tabGameSplitterSizes;
} }
bool getShowShortcuts() const
{
return showShortcuts;
}
bool getDisplayCardNames() const bool getDisplayCardNames() const
{ {
return displayCardNames; return displayCardNames;
@ -560,6 +565,7 @@ public slots:
void setStartingHandSize(int _startingHandSize); void setStartingHandSize(int _startingHandSize);
void setAnnotateTokens(QT_STATE_CHANGED_T _annotateTokens); void setAnnotateTokens(QT_STATE_CHANGED_T _annotateTokens);
void setTabGameSplitterSizes(const QByteArray &_tabGameSplitterSizes); void setTabGameSplitterSizes(const QByteArray &_tabGameSplitterSizes);
void setShowShortcuts(QT_STATE_CHANGED_T _showShortcuts);
void setDisplayCardNames(QT_STATE_CHANGED_T _displayCardNames); void setDisplayCardNames(QT_STATE_CHANGED_T _displayCardNames);
void setHorizontalHand(QT_STATE_CHANGED_T _horizontalHand); void setHorizontalHand(QT_STATE_CHANGED_T _horizontalHand);
void setInvertVerticalCoordinate(QT_STATE_CHANGED_T _invertVerticalCoordinate); void setInvertVerticalCoordinate(QT_STATE_CHANGED_T _invertVerticalCoordinate);

View file

@ -148,6 +148,9 @@ void SettingsCache::setAnnotateTokens(QT_STATE_CHANGED_T /* _annotateTokens */)
void SettingsCache::setTabGameSplitterSizes(const QByteArray & /* _tabGameSplitterSizes */) void SettingsCache::setTabGameSplitterSizes(const QByteArray & /* _tabGameSplitterSizes */)
{ {
} }
void SettingsCache::setShowShortcuts(QT_STATE_CHANGED_T /* _showShortcuts */)
{
}
void SettingsCache::setDisplayCardNames(QT_STATE_CHANGED_T /* _displayCardNames */) void SettingsCache::setDisplayCardNames(QT_STATE_CHANGED_T /* _displayCardNames */)
{ {
} }

View file

@ -152,6 +152,9 @@ void SettingsCache::setAnnotateTokens(QT_STATE_CHANGED_T /* _annotateTokens */)
void SettingsCache::setTabGameSplitterSizes(const QByteArray & /* _tabGameSplitterSizes */) void SettingsCache::setTabGameSplitterSizes(const QByteArray & /* _tabGameSplitterSizes */)
{ {
} }
void SettingsCache::setShowShortcuts(QT_STATE_CHANGED_T /* _showShortcuts */)
{
}
void SettingsCache::setDisplayCardNames(QT_STATE_CHANGED_T /* _displayCardNames */) void SettingsCache::setDisplayCardNames(QT_STATE_CHANGED_T /* _displayCardNames */)
{ {
} }