add option for not annotated

This commit is contained in:
RickyRister 2025-03-02 18:49:10 -08:00
parent d24da0ba62
commit 767292d063
7 changed files with 51 additions and 18 deletions

View file

@ -33,6 +33,9 @@ DeckEditorMenu::DeckEditorMenu(QWidget *parent, AbstractTabDeckEditor *_deckEdit
aEditDeckInClipboard = new QAction(QString(), this); aEditDeckInClipboard = new QAction(QString(), this);
connect(aEditDeckInClipboard, SIGNAL(triggered()), deckEditor, SLOT(actEditDeckInClipboard())); connect(aEditDeckInClipboard, SIGNAL(triggered()), deckEditor, SLOT(actEditDeckInClipboard()));
aEditDeckInClipboardRaw = new QAction(QString(), this);
connect(aEditDeckInClipboardRaw, SIGNAL(triggered()), deckEditor, SLOT(actEditDeckInClipboardRaw()));
aSaveDeckToClipboard = new QAction(QString(), this); aSaveDeckToClipboard = new QAction(QString(), this);
connect(aSaveDeckToClipboard, SIGNAL(triggered()), deckEditor, SLOT(actSaveDeckToClipboard())); connect(aSaveDeckToClipboard, SIGNAL(triggered()), deckEditor, SLOT(actSaveDeckToClipboard()));
@ -67,6 +70,10 @@ DeckEditorMenu::DeckEditorMenu(QWidget *parent, AbstractTabDeckEditor *_deckEdit
aClose = new QAction(QString(), this); aClose = new QAction(QString(), this);
connect(aClose, &QAction::triggered, deckEditor, &AbstractTabDeckEditor::closeRequest); connect(aClose, &QAction::triggered, deckEditor, &AbstractTabDeckEditor::closeRequest);
editDeckInClipboardMenu = new QMenu(this);
editDeckInClipboardMenu->addAction(aEditDeckInClipboard);
editDeckInClipboardMenu->addAction(aEditDeckInClipboardRaw);
saveDeckToClipboardMenu = new QMenu(this); saveDeckToClipboardMenu = new QMenu(this);
saveDeckToClipboardMenu->addAction(aSaveDeckToClipboard); saveDeckToClipboardMenu->addAction(aSaveDeckToClipboard);
saveDeckToClipboardMenu->addAction(aSaveDeckToClipboardNoSetNameAndNumber); saveDeckToClipboardMenu->addAction(aSaveDeckToClipboardNoSetNameAndNumber);
@ -80,7 +87,7 @@ DeckEditorMenu::DeckEditorMenu(QWidget *parent, AbstractTabDeckEditor *_deckEdit
addAction(aSaveDeckAs); addAction(aSaveDeckAs);
addSeparator(); addSeparator();
addAction(aLoadDeckFromClipboard); addAction(aLoadDeckFromClipboard);
addAction(aEditDeckInClipboard); addMenu(editDeckInClipboardMenu);
addMenu(saveDeckToClipboardMenu); addMenu(saveDeckToClipboardMenu);
addSeparator(); addSeparator();
addAction(aPrintDeck); addAction(aPrintDeck);
@ -139,7 +146,10 @@ void DeckEditorMenu::retranslateUi()
aSaveDeckAs->setText(tr("Save deck &as...")); aSaveDeckAs->setText(tr("Save deck &as..."));
aLoadDeckFromClipboard->setText(tr("Load deck from cl&ipboard...")); aLoadDeckFromClipboard->setText(tr("Load deck from cl&ipboard..."));
aEditDeckInClipboard->setText(tr("Edit deck in clipboard"));
editDeckInClipboardMenu->setTitle(tr("Edit deck in clipboard"));
aEditDeckInClipboard->setText(tr("Annotated"));
aEditDeckInClipboardRaw->setText(tr("Not Annotated"));
saveDeckToClipboardMenu->setTitle(tr("Save deck to clipboard")); saveDeckToClipboardMenu->setTitle(tr("Save deck to clipboard"));
aSaveDeckToClipboard->setText(tr("Annotated")); aSaveDeckToClipboard->setText(tr("Annotated"));
@ -167,6 +177,7 @@ void DeckEditorMenu::refreshShortcuts()
aSaveDeckAs->setShortcuts(shortcuts.getShortcut("TabDeckEditor/aSaveDeckAs")); aSaveDeckAs->setShortcuts(shortcuts.getShortcut("TabDeckEditor/aSaveDeckAs"));
aLoadDeckFromClipboard->setShortcuts(shortcuts.getShortcut("TabDeckEditor/aLoadDeckFromClipboard")); aLoadDeckFromClipboard->setShortcuts(shortcuts.getShortcut("TabDeckEditor/aLoadDeckFromClipboard"));
aEditDeckInClipboard->setShortcuts(shortcuts.getShortcut("TabDeckEditor/aEditDeckInClipboard")); aEditDeckInClipboard->setShortcuts(shortcuts.getShortcut("TabDeckEditor/aEditDeckInClipboard"));
aEditDeckInClipboardRaw->setShortcuts(shortcuts.getShortcut("TabDeckEditor/aEditDeckInClipboardRaw"));
aPrintDeck->setShortcuts(shortcuts.getShortcut("TabDeckEditor/aPrintDeck")); aPrintDeck->setShortcuts(shortcuts.getShortcut("TabDeckEditor/aPrintDeck"));
aAnalyzeDeckDeckstats->setShortcuts(shortcuts.getShortcut("TabDeckEditor/aAnalyzeDeck")); aAnalyzeDeckDeckstats->setShortcuts(shortcuts.getShortcut("TabDeckEditor/aAnalyzeDeck"));
aClose->setShortcuts(shortcuts.getShortcut("TabDeckEditor/aClose")); aClose->setShortcuts(shortcuts.getShortcut("TabDeckEditor/aClose"));

View file

@ -14,11 +14,11 @@ public:
AbstractTabDeckEditor *deckEditor; AbstractTabDeckEditor *deckEditor;
QAction *aNewDeck, *aLoadDeck, *aClearRecents, *aSaveDeck, *aSaveDeckAs, *aEditDeckInClipboard, QAction *aNewDeck, *aLoadDeck, *aClearRecents, *aSaveDeck, *aSaveDeckAs, *aLoadDeckFromClipboard,
*aLoadDeckFromClipboard, *aSaveDeckToClipboard, *aSaveDeckToClipboardNoSetNameAndNumber, *aEditDeckInClipboard, *aEditDeckInClipboardRaw, *aSaveDeckToClipboard, *aSaveDeckToClipboardNoSetNameAndNumber,
*aSaveDeckToClipboardRaw, *aSaveDeckToClipboardRawNoSetNameAndNumber, *aPrintDeck, *aExportDeckDecklist, *aSaveDeckToClipboardRaw, *aSaveDeckToClipboardRawNoSetNameAndNumber, *aPrintDeck, *aExportDeckDecklist,
*aAnalyzeDeckDeckstats, *aAnalyzeDeckTappedout, *aClose; *aAnalyzeDeckDeckstats, *aAnalyzeDeckTappedout, *aClose;
QMenu *loadRecentDeckMenu, *analyzeDeckMenu, *saveDeckToClipboardMenu; QMenu *loadRecentDeckMenu, *analyzeDeckMenu, *editDeckInClipboardMenu, *saveDeckToClipboardMenu;
void setSaveStatus(bool newStatus); void setSaveStatus(bool newStatus);

View file

@ -394,9 +394,9 @@ void AbstractTabDeckEditor::actLoadDeckFromClipboard()
deckMenu->setSaveStatus(true); deckMenu->setSaveStatus(true);
} }
void AbstractTabDeckEditor::actEditDeckInClipboard() void AbstractTabDeckEditor::editDeckInClipboard(bool annotated)
{ {
DlgEditDeckInClipboard dlg(*getDeckList(), this); DlgEditDeckInClipboard dlg(*getDeckList(), annotated, this);
if (!dlg.exec()) if (!dlg.exec())
return; return;
@ -406,6 +406,16 @@ void AbstractTabDeckEditor::actEditDeckInClipboard()
deckMenu->setSaveStatus(true); deckMenu->setSaveStatus(true);
} }
void AbstractTabDeckEditor::actEditDeckInClipboard()
{
editDeckInClipboard(true);
}
void AbstractTabDeckEditor::actEditDeckInClipboardRaw()
{
editDeckInClipboard(false);
}
void AbstractTabDeckEditor::actSaveDeckToClipboard() void AbstractTabDeckEditor::actSaveDeckToClipboard()
{ {
getDeckList()->saveToClipboard(true, true); getDeckList()->saveToClipboard(true, true);

View file

@ -93,6 +93,7 @@ protected slots:
bool actSaveDeckAs(); bool actSaveDeckAs();
virtual void actLoadDeckFromClipboard(); virtual void actLoadDeckFromClipboard();
void actEditDeckInClipboard(); void actEditDeckInClipboard();
void actEditDeckInClipboardRaw();
void actSaveDeckToClipboard(); void actSaveDeckToClipboard();
void actSaveDeckToClipboardNoSetNameAndNumber(); void actSaveDeckToClipboardNoSetNameAndNumber();
void actSaveDeckToClipboardRaw(); void actSaveDeckToClipboardRaw();
@ -115,6 +116,9 @@ protected slots:
virtual void dockVisibleTriggered() = 0; virtual void dockVisibleTriggered() = 0;
virtual void dockFloatingTriggered() = 0; virtual void dockFloatingTriggered() = 0;
private:
void editDeckInClipboard(bool annotated);
protected: protected:
/** /**
* @brief Enum for selecting deck open location * @brief Enum for selecting deck open location

View file

@ -134,11 +134,12 @@ void DlgLoadDeckFromClipboard::actOK()
/** /**
* Creates the dialog window for the "Edit deck in clipboard" action * Creates the dialog window for the "Edit deck in clipboard" action
* *
* @param deckList The existing deck in the deck editor. * @param deckList The existing deck in the deck editor. Copies the instance
* @param _annotated Whether to add annotations to the text that is loaded from the deck
* @param parent The parent widget * @param parent The parent widget
*/ */
DlgEditDeckInClipboard::DlgEditDeckInClipboard(const DeckLoader &deckList, QWidget *parent) DlgEditDeckInClipboard::DlgEditDeckInClipboard(const DeckLoader &deckList, bool _annotated, QWidget *parent)
: AbstractDlgDeckTextEdit(parent) : AbstractDlgDeckTextEdit(parent), annotated(_annotated)
{ {
setWindowTitle(tr("Edit deck in clipboard")); setWindowTitle(tr("Edit deck in clipboard"));
@ -149,21 +150,22 @@ DlgEditDeckInClipboard::DlgEditDeckInClipboard(const DeckLoader &deckList, QWidg
} }
/** /**
* Loads the contents of the DeckList into a String * Loads the contents of the DeckList into a String. Always loads it with addSetNameAndNumber=true
* @param deckList The deck to load * @param deckList The deck to load
* @param addComments Whether to add annotations
* @return A QString * @return A QString
*/ */
static QString deckListToString(const DeckLoader *deckList) static QString deckListToString(const DeckLoader *deckList, bool addComments)
{ {
QString buffer; QString buffer;
QTextStream stream(&buffer); QTextStream stream(&buffer);
deckList->saveToStream_Plain(stream); deckList->saveToStream_Plain(stream, addComments);
return buffer; return buffer;
} }
void DlgEditDeckInClipboard::actRefresh() void DlgEditDeckInClipboard::actRefresh()
{ {
setText(deckListToString(deckLoader)); setText(deckListToString(deckLoader, annotated));
} }
void DlgEditDeckInClipboard::actOK() void DlgEditDeckInClipboard::actOK()

View file

@ -78,9 +78,10 @@ protected slots:
private: private:
DeckLoader *deckLoader; DeckLoader *deckLoader;
bool annotated;
public: public:
explicit DlgEditDeckInClipboard(const DeckLoader &deckList, QWidget *parent = nullptr); explicit DlgEditDeckInClipboard(const DeckLoader &deckList, bool _annotated, QWidget *parent = nullptr);
DeckLoader *getDeckList() const override DeckLoader *getDeckList() const override
{ {

View file

@ -206,9 +206,14 @@ private:
ShortcutKey(QT_TRANSLATE_NOOP("shortcutsTab", "Load Deck from Clipboard..."), ShortcutKey(QT_TRANSLATE_NOOP("shortcutsTab", "Load Deck from Clipboard..."),
parseSequenceString("Ctrl+Shift+V"), parseSequenceString("Ctrl+Shift+V"),
ShortcutGroup::Deck_Editor)}, ShortcutGroup::Deck_Editor)},
{"TabDeckEditor/aEditDeckInClipboard", ShortcutKey(QT_TRANSLATE_NOOP("shortcutsTab", "Edit Deck in Clipboard"), {"TabDeckEditor/aEditDeckInClipboard",
parseSequenceString(""), ShortcutKey(QT_TRANSLATE_NOOP("shortcutsTab", "Edit Deck in Clipboard, Annotated"),
ShortcutGroup::Deck_Editor)}, parseSequenceString(""),
ShortcutGroup::Deck_Editor)},
{"TabDeckEditor/aEditDeckInClipboardRaw",
ShortcutKey(QT_TRANSLATE_NOOP("shortcutsTab", "Edit Deck in Clipboard"),
parseSequenceString(""),
ShortcutGroup::Deck_Editor)},
{"TabDeckEditor/aNewDeck", ShortcutKey(QT_TRANSLATE_NOOP("shortcutsTab", "New Deck"), {"TabDeckEditor/aNewDeck", ShortcutKey(QT_TRANSLATE_NOOP("shortcutsTab", "New Deck"),
parseSequenceString("Ctrl+N"), parseSequenceString("Ctrl+N"),
ShortcutGroup::Deck_Editor)}, ShortcutGroup::Deck_Editor)},