From ebe44dbc5ae3fd9ea42797420e4ce5bd64db2f23 Mon Sep 17 00:00:00 2001 From: RickyRister Date: Fri, 27 Dec 2024 20:30:09 -0800 Subject: [PATCH] get button to work --- cockatrice/src/client/tabs/tab_deck_storage.cpp | 15 +++++++++++++++ cockatrice/src/client/tabs/tab_deck_storage.h | 3 +++ 2 files changed, 18 insertions(+) diff --git a/cockatrice/src/client/tabs/tab_deck_storage.cpp b/cockatrice/src/client/tabs/tab_deck_storage.cpp index aed958dbc..cb98a700d 100644 --- a/cockatrice/src/client/tabs/tab_deck_storage.cpp +++ b/cockatrice/src/client/tabs/tab_deck_storage.cpp @@ -19,6 +19,7 @@ #include #include #include +#include #include #include #include @@ -100,6 +101,10 @@ TabDeckStorage::TabDeckStorage(TabSupervisor *_tabSupervisor, AbstractClient *_c aDeleteLocalDeck->setIcon(QPixmap("theme:icons/remove_row")); connect(aDeleteLocalDeck, SIGNAL(triggered()), this, SLOT(actDeleteLocalDeck())); + aOpenDecksFolder = new QAction(this); + aOpenDecksFolder->setIcon(qApp->style()->standardIcon(QStyle::SP_DirOpenIcon)); + connect(aOpenDecksFolder, &QAction::triggered, this, &TabDeckStorage::actOpenDecksFolder); + // Right side actions aOpenRemoteDeck = new QAction(this); aOpenRemoteDeck->setIcon(QPixmap("theme:icons/pencil")); @@ -119,6 +124,9 @@ TabDeckStorage::TabDeckStorage(TabSupervisor *_tabSupervisor, AbstractClient *_c leftToolBar->addAction(aUpload); leftToolBar->addAction(aNewLocalFolder); leftToolBar->addAction(aDeleteLocalDeck); + + leftToolBar->addAction(aOpenDecksFolder); + rightToolBar->addAction(aOpenRemoteDeck); rightToolBar->addAction(aDownload); rightToolBar->addAction(aNewFolder); @@ -144,6 +152,7 @@ void TabDeckStorage::retranslateUi() aNewFolder->setText(tr("New folder")); aDeleteLocalDeck->setText(tr("Delete")); aDeleteRemoteDeck->setText(tr("Delete")); + aOpenDecksFolder->setText(tr("Open decks folder")); } QString TabDeckStorage::getTargetPath() const @@ -306,6 +315,12 @@ void TabDeckStorage::actDeleteLocalDeck() } } +void TabDeckStorage::actOpenDecksFolder() +{ + QString dir = localDirModel->rootPath(); + QDesktopServices::openUrl(QUrl::fromLocalFile(dir)); +} + void TabDeckStorage::actRemoteDoubleClick(const QModelIndex &curRight) { if (dynamic_cast(serverDirView->getNode(curRight))) { diff --git a/cockatrice/src/client/tabs/tab_deck_storage.h b/cockatrice/src/client/tabs/tab_deck_storage.h index 7dec662dd..38e4af438 100644 --- a/cockatrice/src/client/tabs/tab_deck_storage.h +++ b/cockatrice/src/client/tabs/tab_deck_storage.h @@ -27,6 +27,7 @@ private: QGroupBox *leftGroupBox, *rightGroupBox; QAction *aOpenLocalDeck, *aUpload, *aNewLocalFolder, *aDeleteLocalDeck; + QAction *aOpenDecksFolder; QAction *aOpenRemoteDeck, *aDownload, *aNewFolder, *aDeleteRemoteDeck; QString getTargetPath() const; @@ -43,6 +44,8 @@ private slots: void actNewLocalFolder(); void actDeleteLocalDeck(); + void actOpenDecksFolder(); + void actRemoteDoubleClick(const QModelIndex &curRight); void actOpenRemoteDeck(); void openRemoteDeckFinished(const Response &r, const CommandContainer &commandContainer);