mirror of
https://github.com/Cockatrice/Cockatrice.git
synced 2025-12-12 07:40:30 -08:00
Properly allow resizing the printing selector (#6097)
* Properly allow resizing the printing selector. * Don't restrict central widget sizing in regular deck editor, don't size hidden widget in visual deck editor. * Reset layout in VDE properly and introduce new default layout. * Gives hover signal correct parameters (fix for exact card refactor issue)
This commit is contained in:
@@ -198,9 +198,6 @@ void TabDeckEditor::loadLayout()
|
||||
printingSelectorDockWidget->setMinimumSize(layouts.getDeckEditorPrintingSelectorSize());
|
||||
printingSelectorDockWidget->setMaximumSize(layouts.getDeckEditorPrintingSelectorSize());
|
||||
|
||||
databaseDisplayDockWidget->setMinimumSize(100, 100);
|
||||
databaseDisplayDockWidget->setMaximumSize(1400, 5000);
|
||||
|
||||
QTimer::singleShot(100, this, &TabDeckEditor::freeDocksSize);
|
||||
}
|
||||
|
||||
@@ -251,11 +248,8 @@ void TabDeckEditor::freeDocksSize()
|
||||
filterDockWidget->setMinimumSize(100, 100);
|
||||
filterDockWidget->setMaximumSize(5000, 5000);
|
||||
|
||||
printingSelectorDockWidget->setMinimumSize(525, 100);
|
||||
printingSelectorDockWidget->setMinimumSize(100, 100);
|
||||
printingSelectorDockWidget->setMaximumSize(5000, 5000);
|
||||
|
||||
databaseDisplayDockWidget->setMinimumSize(100, 100);
|
||||
databaseDisplayDockWidget->setMaximumSize(1400, 5000);
|
||||
}
|
||||
|
||||
void TabDeckEditor::dockVisibleTriggered()
|
||||
|
||||
@@ -95,7 +95,6 @@ void TabDeckEditorVisual::createMenus()
|
||||
|
||||
cardInfoDockMenu = viewMenu->addMenu(QString());
|
||||
deckDockMenu = viewMenu->addMenu(QString());
|
||||
deckAnalyticsMenu = viewMenu->addMenu(QString());
|
||||
filterDockMenu = viewMenu->addMenu(QString());
|
||||
printingSelectorDockMenu = viewMenu->addMenu(QString());
|
||||
|
||||
@@ -113,13 +112,6 @@ void TabDeckEditorVisual::createMenus()
|
||||
aDeckDockFloating->setCheckable(true);
|
||||
connect(aDeckDockFloating, SIGNAL(triggered()), this, SLOT(dockFloatingTriggered()));
|
||||
|
||||
aDeckAnalyticsDockVisible = deckAnalyticsMenu->addAction(QString());
|
||||
aDeckAnalyticsDockVisible->setCheckable(true);
|
||||
connect(aDeckAnalyticsDockVisible, SIGNAL(triggered()), this, SLOT(dockVisibleTriggered()));
|
||||
aDeckAnalyticsDockFloating = deckAnalyticsMenu->addAction(QString());
|
||||
aDeckAnalyticsDockFloating->setCheckable(true);
|
||||
connect(aDeckAnalyticsDockFloating, SIGNAL(triggered()), this, SLOT(dockFloatingTriggered()));
|
||||
|
||||
aFilterDockVisible = filterDockMenu->addAction(QString());
|
||||
aFilterDockVisible->setCheckable(true);
|
||||
connect(aFilterDockVisible, SIGNAL(triggered()), this, SLOT(dockVisibleTriggered()));
|
||||
@@ -212,41 +204,6 @@ void TabDeckEditorVisual::showPrintingSelector()
|
||||
printingSelectorDockWidget->setVisible(true);
|
||||
}
|
||||
|
||||
void TabDeckEditorVisual::restartLayout()
|
||||
{
|
||||
deckDockWidget->setVisible(true);
|
||||
cardInfoDockWidget->setVisible(true);
|
||||
filterDockWidget->setVisible(true);
|
||||
|
||||
deckDockWidget->setFloating(false);
|
||||
cardInfoDockWidget->setFloating(false);
|
||||
filterDockWidget->setFloating(false);
|
||||
|
||||
aCardInfoDockVisible->setChecked(true);
|
||||
aDeckDockVisible->setChecked(true);
|
||||
aFilterDockVisible->setChecked(true);
|
||||
|
||||
aCardInfoDockFloating->setChecked(false);
|
||||
aDeckDockFloating->setChecked(false);
|
||||
aFilterDockFloating->setChecked(false);
|
||||
|
||||
addDockWidget(static_cast<Qt::DockWidgetArea>(2), deckDockWidget);
|
||||
addDockWidget(static_cast<Qt::DockWidgetArea>(2), cardInfoDockWidget);
|
||||
addDockWidget(static_cast<Qt::DockWidgetArea>(1), deckAnalyticsDock);
|
||||
addDockWidget(static_cast<Qt::DockWidgetArea>(2), filterDockWidget);
|
||||
|
||||
splitDockWidget(cardInfoDockWidget, deckDockWidget, Qt::Horizontal);
|
||||
splitDockWidget(cardInfoDockWidget, filterDockWidget, Qt::Vertical);
|
||||
splitDockWidget(searchAndDatabaseDock, deckAnalyticsDock, Qt::Vertical);
|
||||
|
||||
deckDockWidget->setMinimumWidth(360);
|
||||
deckDockWidget->setMaximumWidth(360);
|
||||
|
||||
cardInfoDockWidget->setMinimumSize(250, 360);
|
||||
cardInfoDockWidget->setMaximumSize(250, 360);
|
||||
QTimer::singleShot(100, this, SLOT(freeDocksSize()));
|
||||
}
|
||||
|
||||
void TabDeckEditorVisual::freeDocksSize()
|
||||
{
|
||||
deckDockWidget->setMinimumSize(100, 100);
|
||||
@@ -258,8 +215,8 @@ void TabDeckEditorVisual::freeDocksSize()
|
||||
filterDockWidget->setMinimumSize(100, 100);
|
||||
filterDockWidget->setMaximumSize(5000, 5000);
|
||||
|
||||
databaseDisplayDockWidget->setMinimumSize(100, 100);
|
||||
databaseDisplayDockWidget->setMaximumSize(1400, 5000);
|
||||
printingSelectorDockWidget->setMinimumSize(100, 100);
|
||||
printingSelectorDockWidget->setMaximumSize(5000, 5000);
|
||||
}
|
||||
|
||||
void TabDeckEditorVisual::refreshShortcuts()
|
||||
@@ -306,12 +263,42 @@ void TabDeckEditorVisual::loadLayout()
|
||||
printingSelectorDockWidget->setMinimumSize(layouts.getDeckEditorPrintingSelectorSize());
|
||||
printingSelectorDockWidget->setMaximumSize(layouts.getDeckEditorPrintingSelectorSize());
|
||||
|
||||
databaseDisplayDockWidget->setMinimumSize(100, 100);
|
||||
databaseDisplayDockWidget->setMaximumSize(1400, 5000);
|
||||
|
||||
QTimer::singleShot(100, this, &TabDeckEditorVisual::freeDocksSize);
|
||||
}
|
||||
|
||||
void TabDeckEditorVisual::restartLayout()
|
||||
{
|
||||
deckDockWidget->setVisible(true);
|
||||
cardInfoDockWidget->setVisible(true);
|
||||
filterDockWidget->setVisible(false);
|
||||
printingSelectorDockWidget->setVisible(true);
|
||||
|
||||
deckDockWidget->setFloating(false);
|
||||
cardInfoDockWidget->setFloating(false);
|
||||
filterDockWidget->setFloating(false);
|
||||
printingSelectorDockWidget->setFloating(false);
|
||||
|
||||
aCardInfoDockVisible->setChecked(true);
|
||||
aDeckDockVisible->setChecked(true);
|
||||
aFilterDockVisible->setChecked(false);
|
||||
aPrintingSelectorDockVisible->setChecked(true);
|
||||
|
||||
aCardInfoDockFloating->setChecked(false);
|
||||
aDeckDockFloating->setChecked(false);
|
||||
aFilterDockFloating->setChecked(false);
|
||||
aPrintingSelectorDockFloating->setChecked(false);
|
||||
|
||||
setCentralWidget(centralWidget);
|
||||
addDockWidget(static_cast<Qt::DockWidgetArea>(2), deckDockWidget);
|
||||
addDockWidget(static_cast<Qt::DockWidgetArea>(2), cardInfoDockWidget);
|
||||
addDockWidget(static_cast<Qt::DockWidgetArea>(2), printingSelectorDockWidget);
|
||||
|
||||
splitDockWidget(cardInfoDockWidget, printingSelectorDockWidget, Qt::Vertical);
|
||||
splitDockWidget(cardInfoDockWidget, deckDockWidget, Qt::Horizontal);
|
||||
|
||||
QTimer::singleShot(100, this, SLOT(freeDocksSize()));
|
||||
}
|
||||
|
||||
void TabDeckEditorVisual::retranslateUi()
|
||||
{
|
||||
deckMenu->setTitle(tr("&Visual Deck Editor"));
|
||||
@@ -323,7 +310,6 @@ void TabDeckEditorVisual::retranslateUi()
|
||||
viewMenu->setTitle(tr("&View"));
|
||||
cardInfoDockMenu->setTitle(tr("Card Info"));
|
||||
deckDockMenu->setTitle(tr("Deck"));
|
||||
deckAnalyticsMenu->setTitle(tr("Deck Analytics"));
|
||||
filterDockMenu->setTitle(tr("Filters"));
|
||||
printingSelectorDockMenu->setTitle(tr("Printing"));
|
||||
|
||||
@@ -333,9 +319,6 @@ void TabDeckEditorVisual::retranslateUi()
|
||||
aDeckDockVisible->setText(tr("Visible"));
|
||||
aDeckDockFloating->setText(tr("Floating"));
|
||||
|
||||
aDeckAnalyticsDockVisible->setText(tr("Visible"));
|
||||
aDeckAnalyticsDockFloating->setText(tr("Floating"));
|
||||
|
||||
aFilterDockVisible->setText(tr("Visible"));
|
||||
aFilterDockFloating->setText(tr("Floating"));
|
||||
|
||||
@@ -355,9 +338,6 @@ bool TabDeckEditorVisual::eventFilter(QObject *o, QEvent *e)
|
||||
} else if (o == deckDockWidget) {
|
||||
aDeckDockVisible->setChecked(false);
|
||||
aDeckDockFloating->setEnabled(false);
|
||||
} else if (o == deckAnalyticsDock) {
|
||||
aDeckAnalyticsDockVisible->setChecked(false);
|
||||
aDeckAnalyticsDockFloating->setEnabled(false);
|
||||
} else if (o == filterDockWidget) {
|
||||
aFilterDockVisible->setChecked(false);
|
||||
aFilterDockFloating->setEnabled(false);
|
||||
@@ -393,12 +373,6 @@ void TabDeckEditorVisual::dockVisibleTriggered()
|
||||
return;
|
||||
}
|
||||
|
||||
if (o == aDeckAnalyticsDockVisible) {
|
||||
deckAnalyticsDock->setHidden(!aDeckAnalyticsDockVisible->isChecked());
|
||||
aDeckAnalyticsDockFloating->setEnabled(aDeckAnalyticsDockVisible->isChecked());
|
||||
return;
|
||||
}
|
||||
|
||||
if (o == aFilterDockVisible) {
|
||||
filterDockWidget->setHidden(!aFilterDockVisible->isChecked());
|
||||
aFilterDockFloating->setEnabled(aFilterDockVisible->isChecked());
|
||||
@@ -425,11 +399,6 @@ void TabDeckEditorVisual::dockFloatingTriggered()
|
||||
return;
|
||||
}
|
||||
|
||||
if (o == aDeckAnalyticsDockFloating) {
|
||||
deckAnalyticsDock->setFloating(aDeckAnalyticsDockFloating->isChecked());
|
||||
return;
|
||||
}
|
||||
|
||||
if (o == aFilterDockFloating) {
|
||||
filterDockWidget->setFloating(aFilterDockFloating->isChecked());
|
||||
return;
|
||||
@@ -459,11 +428,6 @@ void TabDeckEditorVisual::dockTopLevelChanged(bool topLevel)
|
||||
return;
|
||||
}
|
||||
|
||||
if (o == deckAnalyticsDock) {
|
||||
aDeckAnalyticsDockFloating->setChecked(topLevel);
|
||||
return;
|
||||
}
|
||||
|
||||
if (o == printingSelectorDockWidget) {
|
||||
aPrintingSelectorDockFloating->setChecked(topLevel);
|
||||
return;
|
||||
|
||||
@@ -25,10 +25,7 @@ protected:
|
||||
QVBoxLayout *searchAndDatabaseFrame;
|
||||
QHBoxLayout *searchLayout;
|
||||
QDockWidget *searchAndDatabaseDock;
|
||||
QDockWidget *deckAnalyticsDock;
|
||||
QWidget *centralWidget;
|
||||
QMenu *deckAnalyticsMenu;
|
||||
QAction *aDeckAnalyticsDockVisible, *aDeckAnalyticsDockFloating;
|
||||
|
||||
public:
|
||||
explicit TabDeckEditorVisual(TabSupervisor *_tabSupervisor);
|
||||
|
||||
@@ -64,7 +64,7 @@ void DeckCardZoneDisplayWidget::constructAppropriateWidget(QPersistentModelIndex
|
||||
subBannerOpacity, cardSizeWidget);
|
||||
connect(displayWidget, SIGNAL(cardClicked(QMouseEvent *, CardInfoPictureWithTextOverlayWidget *)), this,
|
||||
SLOT(onClick(QMouseEvent *, CardInfoPictureWithTextOverlayWidget *)));
|
||||
connect(displayWidget, SIGNAL(cardHovered(CardInfoPtr)), this, SLOT(onHover(CardInfoPtr)));
|
||||
connect(displayWidget, SIGNAL(cardHovered(ExactCard)), this, SLOT(onHover(ExactCard)));
|
||||
connect(displayWidget, &CardGroupDisplayWidget::cleanupRequested, this,
|
||||
&DeckCardZoneDisplayWidget::cleanupInvalidCardGroup);
|
||||
cardGroupLayout->addWidget(displayWidget);
|
||||
@@ -75,7 +75,7 @@ void DeckCardZoneDisplayWidget::constructAppropriateWidget(QPersistentModelIndex
|
||||
activeGroupCriteria, activeSortCriteria, subBannerOpacity, cardSizeWidget);
|
||||
connect(displayWidget, SIGNAL(cardClicked(QMouseEvent *, CardInfoPictureWithTextOverlayWidget *)), this,
|
||||
SLOT(onClick(QMouseEvent *, CardInfoPictureWithTextOverlayWidget *)));
|
||||
connect(displayWidget, SIGNAL(cardHovered(CardInfoPtr)), this, SLOT(onHover(CardInfoPtr)));
|
||||
connect(displayWidget, SIGNAL(cardHovered(ExactCard)), this, SLOT(onHover(ExactCard)));
|
||||
connect(displayWidget, &CardGroupDisplayWidget::cleanupRequested, this,
|
||||
&DeckCardZoneDisplayWidget::cleanupInvalidCardGroup);
|
||||
cardGroupLayout->addWidget(displayWidget);
|
||||
|
||||
Reference in New Issue
Block a user