mirror of
https://github.com/Cockatrice/Cockatrice.git
synced 2026-07-19 17:02:15 -07:00
use rows as unit
This commit is contained in:
parent
0225c0bc76
commit
41291fecb5
7 changed files with 31 additions and 21 deletions
|
|
@ -346,18 +346,18 @@ AppearanceSettingsPage::AppearanceSettingsPage()
|
|||
connect(&verticalCardOverlapPercentBox, SIGNAL(valueChanged(int)), &settings,
|
||||
SLOT(setStackCardOverlapPercent(int)));
|
||||
|
||||
cardViewInitialHeightBox.setRange(0, 9999);
|
||||
cardViewInitialHeightBox.setValue(SettingsCache::instance().getCardViewInitialHeight());
|
||||
connect(&cardViewInitialHeightBox, qOverload<int>(&QSpinBox::valueChanged), &SettingsCache::instance(),
|
||||
&SettingsCache::setCardViewInitialHeight);
|
||||
cardViewInitialRowsMaxBox.setRange(0, 9999);
|
||||
cardViewInitialRowsMaxBox.setValue(SettingsCache::instance().getCardViewInitialRowsMax());
|
||||
connect(&cardViewInitialRowsMaxBox, qOverload<int>(&QSpinBox::valueChanged), &SettingsCache::instance(),
|
||||
&SettingsCache::setCardViewInitialRowsMax);
|
||||
|
||||
auto *cardsGrid = new QGridLayout;
|
||||
cardsGrid->addWidget(&displayCardNamesCheckBox, 0, 0, 1, 2);
|
||||
cardsGrid->addWidget(&cardScalingCheckBox, 1, 0, 1, 2);
|
||||
cardsGrid->addWidget(&verticalCardOverlapPercentLabel, 2, 0, 1, 1);
|
||||
cardsGrid->addWidget(&verticalCardOverlapPercentBox, 2, 1, 1, 1);
|
||||
cardsGrid->addWidget(&cardViewInitialHeightLabel, 3, 0);
|
||||
cardsGrid->addWidget(&cardViewInitialHeightBox, 3, 1);
|
||||
cardsGrid->addWidget(&cardViewInitialRowsMaxLabel, 3, 0);
|
||||
cardsGrid->addWidget(&cardViewInitialRowsMaxBox, 3, 1);
|
||||
|
||||
cardsGroupBox = new QGroupBox;
|
||||
cardsGroupBox->setLayout(cardsGrid);
|
||||
|
|
@ -455,7 +455,8 @@ void AppearanceSettingsPage::retranslateUi()
|
|||
cardScalingCheckBox.setText(tr("Scale cards on mouse over"));
|
||||
verticalCardOverlapPercentLabel.setText(
|
||||
tr("Minimum overlap percentage of cards on the stack and in vertical hand"));
|
||||
cardViewInitialHeightLabel.setText(tr("Card view window maximum initial height:"));
|
||||
cardViewInitialRowsMaxLabel.setText(tr("Card view window maximum initial height:"));
|
||||
cardViewInitialRowsMaxBox.setSuffix(tr(" rows"));
|
||||
|
||||
handGroupBox->setTitle(tr("Hand layout"));
|
||||
horizontalHandCheckBox.setText(tr("Display hand horizontally (wastes space)"));
|
||||
|
|
|
|||
|
|
@ -96,8 +96,8 @@ private:
|
|||
QCheckBox cardScalingCheckBox;
|
||||
QLabel verticalCardOverlapPercentLabel;
|
||||
QSpinBox verticalCardOverlapPercentBox;
|
||||
QLabel cardViewInitialHeightLabel;
|
||||
QSpinBox cardViewInitialHeightBox;
|
||||
QLabel cardViewInitialRowsMaxLabel;
|
||||
QSpinBox cardViewInitialRowsMaxBox;
|
||||
QCheckBox horizontalHandCheckBox;
|
||||
QCheckBox leftJustifiedHandCheckBox;
|
||||
QCheckBox invertVerticalCoordinateCheckBox;
|
||||
|
|
|
|||
|
|
@ -254,6 +254,16 @@ void ZoneViewWidget::resizeEvent(QGraphicsSceneResizeEvent *event)
|
|||
scrollBar->setMaximum(totalZoneHeight - newZoneHeight);
|
||||
}
|
||||
|
||||
/**
|
||||
* Calculates the max initial height from the settings.
|
||||
* The max initial height setting is given as number of rows, so we need to map it to a height.
|
||||
**/
|
||||
static qreal calcMaxInitialHeight()
|
||||
{
|
||||
const qreal cardsHeight = (SettingsCache::instance().getCardViewInitialRowsMax() + 1) * CARD_HEIGHT * 0.33;
|
||||
return cardsHeight + 2; // +2 padding to make the cutoff look nicer
|
||||
}
|
||||
|
||||
void ZoneViewWidget::resizeToZoneContents()
|
||||
{
|
||||
QRectF zoneRect = zone->getOptimumRect();
|
||||
|
|
@ -265,8 +275,7 @@ void ZoneViewWidget::resizeToZoneContents()
|
|||
QSizeF maxSize(width, zoneRect.height() + extraHeight + 10);
|
||||
setMaximumSize(maxSize);
|
||||
|
||||
qreal initialZoneHeight =
|
||||
qMin(zoneRect.height(), static_cast<qreal>(SettingsCache::instance().getCardViewInitialHeight()));
|
||||
qreal initialZoneHeight = qMin(zoneRect.height(), calcMaxInitialHeight());
|
||||
QSizeF initialSize(width, initialZoneHeight + extraHeight + 10);
|
||||
resize(initialSize);
|
||||
|
||||
|
|
|
|||
|
|
@ -238,7 +238,7 @@ SettingsCache::SettingsCache()
|
|||
tabGameSplitterSizes = settings->value("interface/tabgame_splittersizes").toByteArray();
|
||||
knownMissingFeatures = settings->value("interface/knownmissingfeatures", "").toString();
|
||||
useTearOffMenus = settings->value("interface/usetearoffmenus", true).toBool();
|
||||
cardViewInitialHeight = settings->value("interface/cardViewInitialHeight", 500).toInt();
|
||||
cardViewInitialRowsMax = settings->value("interface/cardViewInitialRowsMax", 14).toInt();
|
||||
|
||||
showShortcuts = settings->value("menu/showshortcuts", true).toBool();
|
||||
displayCardNames = settings->value("cards/displaycardnames", true).toBool();
|
||||
|
|
@ -301,10 +301,10 @@ void SettingsCache::setUseTearOffMenus(bool _useTearOffMenus)
|
|||
emit useTearOffMenusChanged(useTearOffMenus);
|
||||
}
|
||||
|
||||
void SettingsCache::setCardViewInitialHeight(int _cardViewInitialHeight)
|
||||
void SettingsCache::setCardViewInitialRowsMax(int _cardViewInitialRowsMax)
|
||||
{
|
||||
cardViewInitialHeight = _cardViewInitialHeight;
|
||||
settings->setValue("interface/cardViewInitialHeight", cardViewInitialHeight);
|
||||
cardViewInitialRowsMax = _cardViewInitialRowsMax;
|
||||
settings->setValue("interface/cardViewInitialRowsMax", cardViewInitialRowsMax);
|
||||
}
|
||||
|
||||
void SettingsCache::setKnownMissingFeatures(const QString &_knownMissingFeatures)
|
||||
|
|
|
|||
|
|
@ -123,7 +123,7 @@ private:
|
|||
QString clientVersion;
|
||||
QString knownMissingFeatures;
|
||||
bool useTearOffMenus;
|
||||
int cardViewInitialHeight;
|
||||
int cardViewInitialRowsMax;
|
||||
int pixmapCacheSize;
|
||||
int networkCacheSize;
|
||||
int redirectCacheTtl;
|
||||
|
|
@ -486,7 +486,7 @@ public:
|
|||
void setClientVersion(const QString &clientVersion);
|
||||
void setKnownMissingFeatures(const QString &_knownMissingFeatures);
|
||||
void setUseTearOffMenus(bool _useTearOffMenus);
|
||||
void setCardViewInitialHeight(int _cardViewInitialHeight);
|
||||
void setCardViewInitialRowsMax(int _cardViewInitialRowsMax);
|
||||
QString getClientID()
|
||||
{
|
||||
return clientID;
|
||||
|
|
@ -503,9 +503,9 @@ public:
|
|||
{
|
||||
return useTearOffMenus;
|
||||
}
|
||||
int getCardViewInitialHeight()
|
||||
int getCardViewInitialRowsMax() const
|
||||
{
|
||||
return cardViewInitialHeight;
|
||||
return cardViewInitialRowsMax;
|
||||
}
|
||||
ShortcutsSettings &shortcuts() const
|
||||
{
|
||||
|
|
|
|||
|
|
@ -55,7 +55,7 @@ SettingsCache::SettingsCache()
|
|||
void SettingsCache::setUseTearOffMenus(bool /* _useTearOffMenus */)
|
||||
{
|
||||
}
|
||||
void SettingsCache::setCardViewInitialHeight(int /* _cardViewInitialHeight */)
|
||||
void SettingsCache::setCardViewInitialRowsMax(int /* _cardViewInitialRowsMax */)
|
||||
{
|
||||
}
|
||||
void SettingsCache::setKnownMissingFeatures(const QString & /* _knownMissingFeatures */)
|
||||
|
|
|
|||
|
|
@ -59,7 +59,7 @@ SettingsCache::SettingsCache()
|
|||
void SettingsCache::setUseTearOffMenus(bool /* _useTearOffMenus */)
|
||||
{
|
||||
}
|
||||
void SettingsCache::setCardViewInitialHeight(int /* _cardViewInitialHeight */)
|
||||
void SettingsCache::setCardViewInitialRowsMax(int /* _cardViewInitialRowsMax */)
|
||||
{
|
||||
}
|
||||
void SettingsCache::setKnownMissingFeatures(const QString & /* _knownMissingFeatures */)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue