refactor how double click signal gets passed up in VDS (#5621)

This commit is contained in:
RickyRister 2025-02-15 16:06:11 -08:00 committed by GitHub
parent 3b638598ad
commit 2247c66ea6
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
7 changed files with 14 additions and 29 deletions

View file

@ -12,7 +12,7 @@ TabDeckStorageVisual::TabDeckStorageVisual(TabSupervisor *_tabSupervisor)
: Tab(_tabSupervisor), visualDeckStorageWidget(new VisualDeckStorageWidget(this))
{
connect(this, &TabDeckStorageVisual::openDeckEditor, tabSupervisor, &TabSupervisor::addDeckEditorTab);
connect(visualDeckStorageWidget, &VisualDeckStorageWidget::deckPreviewDoubleClicked, this,
connect(visualDeckStorageWidget, &VisualDeckStorageWidget::deckLoadRequested, this,
&TabDeckStorageVisual::actOpenLocalDeck);
auto *widget = new QWidget(this);
@ -22,10 +22,10 @@ TabDeckStorageVisual::TabDeckStorageVisual(TabSupervisor *_tabSupervisor)
layout->addWidget(visualDeckStorageWidget);
}
void TabDeckStorageVisual::actOpenLocalDeck(QMouseEvent * /*event*/, DeckPreviewWidget *instance)
void TabDeckStorageVisual::actOpenLocalDeck(const QString &filePath)
{
DeckLoader deckLoader;
if (!deckLoader.loadFromFile(instance->filePath, DeckLoader::getFormatFromName(instance->filePath), true)) {
if (!deckLoader.loadFromFile(filePath, DeckLoader::getFormatFromName(filePath), true)) {
return;
}

View file

@ -28,7 +28,7 @@ public:
}
public slots:
void actOpenLocalDeck(QMouseEvent * /*event*/, DeckPreviewWidget *instance);
void actOpenLocalDeck(const QString &filePath);
signals:
void openDeckEditor(const DeckLoader *deckLoader);

View file

@ -6,6 +6,7 @@
#include "deck_preview_deck_tags_display_widget.h"
#include <QFileInfo>
#include <QMenu>
#include <QMouseEvent>
#include <QSet>
#include <QVBoxLayout>
@ -258,12 +259,13 @@ void DeckPreviewWidget::setBannerCard(int /* changedIndex */)
void DeckPreviewWidget::imageClickedEvent(QMouseEvent *event, DeckPreviewCardPictureWidget *instance)
{
Q_UNUSED(event);
Q_UNUSED(instance);
emit deckPreviewClicked(event, this);
}
void DeckPreviewWidget::imageDoubleClickedEvent(QMouseEvent *event, DeckPreviewCardPictureWidget *instance)
{
Q_UNUSED(event);
Q_UNUSED(instance);
emit deckPreviewDoubleClicked(event, this);
}
emit deckLoadRequested(filePath);
}

View file

@ -12,6 +12,7 @@
class VisualDeckStorageWidget;
class DeckPreviewDeckTagsDisplayWidget;
class DeckPreviewWidget final : public QWidget
{
Q_OBJECT
@ -37,8 +38,7 @@ public:
bool checkVisibility() const;
signals:
void deckPreviewClicked(QMouseEvent *event, DeckPreviewWidget *instance);
void deckPreviewDoubleClicked(QMouseEvent *event, DeckPreviewWidget *instance);
void deckLoadRequested(const QString &filePath);
void visibilityUpdated();
public slots:

View file

@ -87,10 +87,8 @@ void VisualDeckStorageFolderDisplayWidget::createWidgetsForFiles()
for (const QString &file : getAllFiles(filePath, !showFolders)) {
auto *display = new DeckPreviewWidget(flowWidget, visualDeckStorageWidget, file);
connect(display, &DeckPreviewWidget::deckPreviewClicked, visualDeckStorageWidget,
&VisualDeckStorageWidget::deckPreviewClickedEvent);
connect(display, &DeckPreviewWidget::deckPreviewDoubleClicked, visualDeckStorageWidget,
&VisualDeckStorageWidget::deckPreviewDoubleClickedEvent);
connect(display, &DeckPreviewWidget::deckLoadRequested, visualDeckStorageWidget,
&VisualDeckStorageWidget::deckLoadRequested);
connect(visualDeckStorageWidget->cardSizeWidget->getSlider(), &QSlider::valueChanged,
display->bannerCardDisplayWidget, &CardInfoPictureWidget::setScaleFactor);
display->bannerCardDisplayWidget->setScaleFactor(visualDeckStorageWidget->cardSizeWidget->getSlider()->value());

View file

@ -172,17 +172,6 @@ void VisualDeckStorageWidget::retranslateUi()
bannerCardComboBoxVisibilityCheckBox->setText(tr("Show Banner Card Selection Option"));
}
void VisualDeckStorageWidget::deckPreviewClickedEvent(QMouseEvent *event, DeckPreviewWidget *instance)
{
emit deckPreviewClicked(event, instance);
}
void VisualDeckStorageWidget::deckPreviewDoubleClickedEvent(QMouseEvent *event, DeckPreviewWidget *instance)
{
emit deckPreviewDoubleClicked(event, instance);
emit deckLoadRequested(instance->filePath);
}
void VisualDeckStorageWidget::createRootFolderWidget()
{
folderWidget = new VisualDeckStorageFolderDisplayWidget(this, this, SettingsCache::instance().getDeckPath(), false,

View file

@ -34,8 +34,6 @@ public:
VisualDeckStorageTagFilterWidget *tagFilterWidget;
public slots:
void deckPreviewClickedEvent(QMouseEvent *event, DeckPreviewWidget *instance);
void deckPreviewDoubleClickedEvent(QMouseEvent *event, DeckPreviewWidget *instance);
void createRootFolderWidget(); // Refresh the display of cards based on the current sorting option
void updateShowFolders(bool enabled);
void updateTagFilter();
@ -48,9 +46,7 @@ public slots:
signals:
void bannerCardsRefreshed();
void deckPreviewClicked(QMouseEvent *event, DeckPreviewWidget *instance);
void deckPreviewDoubleClicked(QMouseEvent *event, DeckPreviewWidget *instance);
void deckLoadRequested(QString &filePath);
void deckLoadRequested(const QString &filePath);
void tagFilterUpdated();
void colorFilterUpdated();
void searchFilterUpdated();