mirror of
https://github.com/Cockatrice/Cockatrice.git
synced 2026-06-11 16:44:48 -07:00
add "save deck to clipboard" to VDS right click menu (#5625)
This commit is contained in:
parent
0666483756
commit
a28300ac42
1 changed files with 23 additions and 0 deletions
|
|
@ -5,6 +5,7 @@
|
|||
#include "../../cards/deck_preview_card_picture_widget.h"
|
||||
#include "deck_preview_deck_tags_display_widget.h"
|
||||
|
||||
#include <QClipboard>
|
||||
#include <QFileInfo>
|
||||
#include <QMenu>
|
||||
#include <QMouseEvent>
|
||||
|
|
@ -273,6 +274,15 @@ void DeckPreviewWidget::imageDoubleClickedEvent(QMouseEvent *event, DeckPreviewC
|
|||
emit deckLoadRequested(filePath);
|
||||
}
|
||||
|
||||
static void saveDeckToClipboard(DeckLoader *deckLoader, bool addComments, bool addSetNameAndNumber)
|
||||
{
|
||||
QString buffer;
|
||||
QTextStream stream(&buffer);
|
||||
deckLoader->saveToStream_Plain(stream, addComments, addSetNameAndNumber);
|
||||
QApplication::clipboard()->setText(buffer, QClipboard::Clipboard);
|
||||
QApplication::clipboard()->setText(buffer, QClipboard::Selection);
|
||||
}
|
||||
|
||||
QMenu *DeckPreviewWidget::createRightClickMenu()
|
||||
{
|
||||
auto *menu = new QMenu(this);
|
||||
|
|
@ -280,5 +290,18 @@ QMenu *DeckPreviewWidget::createRightClickMenu()
|
|||
auto loadDeckAction = menu->addAction(tr("Load Deck"));
|
||||
connect(loadDeckAction, &QAction::triggered, this, [this] { emit deckLoadRequested(filePath); });
|
||||
|
||||
menu->addSeparator();
|
||||
|
||||
auto saveToClipboardMenu = menu->addMenu(tr("Save Deck to Clipboard"));
|
||||
|
||||
connect(saveToClipboardMenu->addAction(tr("Annotated")), &QAction::triggered, this,
|
||||
[this] { saveDeckToClipboard(deckLoader, true, true); });
|
||||
connect(saveToClipboardMenu->addAction(tr("Annotated (No set name or number)")), &QAction::triggered, this,
|
||||
[this] { saveDeckToClipboard(deckLoader, true, false); });
|
||||
connect(saveToClipboardMenu->addAction(tr("Not Annotated")), &QAction::triggered, this,
|
||||
[this] { saveDeckToClipboard(deckLoader, false, true); });
|
||||
connect(saveToClipboardMenu->addAction(tr("Not Annotated (No set name or number)")), &QAction::triggered, this,
|
||||
[this] { saveDeckToClipboard(deckLoader, false, false); });
|
||||
|
||||
return menu;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue