7#ifndef SHORTCUTSSETTINGS_H
8#define SHORTCUTSSETTINGS_H
10#include <QApplication>
11#include <QKeySequence>
12#include <QLoggingCategory>
48 return QApplication::translate(
"shortcutsTab",
"Main Window");
50 return QApplication::translate(
"shortcutsTab",
"Deck Editor");
52 return QApplication::translate(
"shortcutsTab",
"Game Lobby");
54 return QApplication::translate(
"shortcutsTab",
"Card Counters");
56 return QApplication::translate(
"shortcutsTab",
"Player Counters");
58 return QApplication::translate(
"shortcutsTab",
"Power and Toughness");
60 return QApplication::translate(
"shortcutsTab",
"Game Phases");
62 return QApplication::translate(
"shortcutsTab",
"Playing Area");
64 return QApplication::translate(
"shortcutsTab",
"Move Selected Card");
66 return QApplication::translate(
"shortcutsTab",
"View");
68 return QApplication::translate(
"shortcutsTab",
"Move Top Card");
70 return QApplication::translate(
"shortcutsTab",
"Move Bottom Card");
72 return QApplication::translate(
"shortcutsTab",
"Gameplay");
74 return QApplication::translate(
"shortcutsTab",
"Drawing");
76 return QApplication::translate(
"shortcutsTab",
"Hand");
78 return QApplication::translate(
"shortcutsTab",
"Chat Room");
80 return QApplication::translate(
"shortcutsTab",
"Game Window");
82 return QApplication::translate(
"shortcutsTab",
"Load Deck from Clipboard");
84 return QApplication::translate(
"shortcutsTab",
"Replays");
86 return QApplication::translate(
"shortcutsTab",
"Tabs");
96 explicit ShortcutKey(
const QString &_name = QString(),
97 QList _sequence = QList(),
101 QList::operator=(_sequence);
105 return QApplication::translate(
"shortcutsTab",
name.toUtf8().data());
134 void setShortcuts(
const QString &name,
const QList<QKeySequence> &Sequence);
135 void setShortcuts(
const QString &name,
const QKeySequence &Sequence);
136 void setShortcuts(
const QString &name,
const QString &sequences);
138 [[nodiscard]]
bool isKeyAllowed(
const QString &name,
const QString &sequences)
const;
139 [[nodiscard]]
bool isValid(
const QString &name,
const QString &sequences)
const;
140 [[nodiscard]] QStringList
findOverlaps(
const QString &name,
const QString &sequences)
const;
155 [[nodiscard]] QString
stringifySequence(
const QList<QKeySequence> &Sequence)
const;
156 [[nodiscard]] QList<QKeySequence>
parseSequenceString(
const QString &stringSequence)
const;
159 {
"MainWindow/aCheckCardUpdates",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Check for Card Updates..."),
162 {
"MainWindow/aConnect",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Connect..."),
165 {
"MainWindow/aDisconnect",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Disconnect"),
170 {
"MainWindow/aFullScreen",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Full screen"),
173 {
"MainWindow/aRegister",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Register..."),
176 {
"MainWindow/aSettings",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Settings..."),
179 {
"MainWindow/aSinglePlayer",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Start a Local Game..."),
182 {
"MainWindow/aWatchReplay",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Watch Replay..."),
185 {
"MainWindow/aStatusBar",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Show Status Bar"),
188 {
"TabDeckEditor/aAnalyzeDeck",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Analyze Deck (deckstats.net)"),
191 {
"TabDeckEditor/aAnalyzeDeckTappedout",
192 ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Analyze Deck (tappedout.net)"),
195 {
"TabDeckEditor/aClearFilterAll",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Clear All Filters"),
198 {
"TabDeckEditor/aClearFilterOne",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Clear Selected Filter"),
201 {
"TabDeckEditor/aClose",
203 {
"TabDeckEditor/aDecrement",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Remove Card"),
206 {
"TabDeckEditor/aManageSets",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Manage Sets..."),
209 {
"TabDeckEditor/aEditTokens",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Edit Custom Tokens..."),
212 {
"TabDeckEditor/aExportDeckDecklist",
213 ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Export Deck (decklist.org)"),
216 {
"TabDeckEditor/aExportDeckDecklistXyz",
217 ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Export Deck (decklist.xyz)"),
220 {
"TabDeckEditor/aIncrement",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Add Card"),
223 {
"TabDeckEditor/aLoadDeck",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Load Deck..."),
226 {
"TabDeckEditor/aLoadDeckFromClipboard",
227 ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Load Deck from Clipboard..."),
230 {
"TabDeckEditor/aEditDeckInClipboard",
231 ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Edit Deck in Clipboard, Annotated"),
234 {
"TabDeckEditor/aEditDeckInClipboardRaw",
235 ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Edit Deck in Clipboard"),
238 {
"TabDeckEditor/aNewDeck",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"New Deck"),
241 {
"TabDeckEditor/aOpenCustomFolder",
242 ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Open Custom Pictures Folder"),
245 {
"TabDeckEditor/aPrintDeck",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Print Deck..."),
248 {
"TabDeckEditor/aRemoveCard",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Delete Card"),
251 {
"TabDeckEditor/aResetLayout",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Reset Layout"),
254 {
"TabDeckEditor/aSaveDeck",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Save Deck"),
257 {
"TabDeckEditor/aSaveDeckAs",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Save Deck as..."),
260 {
"TabDeckEditor/aSaveDeckToClipboard",
261 ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Save Deck to Clipboard, Annotated"),
264 {
"TabDeckEditor/aSaveDeckToClipboardNoSetInfo",
265 ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Save Deck to Clipboard, Annotated (No Set Info)"),
268 {
"TabDeckEditor/aSaveDeckToClipboardRaw",
269 ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Save Deck to Clipboard"),
272 {
"TabDeckEditor/aSaveDeckToClipboardRawNoSetInfo",
273 ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Save Deck to Clipboard (No Set Info)"),
276 {
"DeckViewContainer/loadLocalButton",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Load Local Deck..."),
279 {
"DeckViewContainer/loadRemoteButton",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Load Remote Deck..."),
282 {
"DeckViewContainer/loadFromClipboardButton",
283 ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Load Deck from Clipboard..."),
286 {
"DeckViewContainer/unloadDeckButton",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Unload Deck"),
289 {
"DeckViewContainer/readyStartButton",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Set Ready to Start"),
292 {
"DeckViewContainer/sideboardLockButton",
293 ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Toggle Sideboard Lock"),
296 {
"DeckViewContainer/forceStartGameButton",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Force Start"),
299 {
"Player/aCCMagenta",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Add Card Counter (F)"),
302 {
"Player/aRCMagenta",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Remove Card Counter (F)"),
305 {
"Player/aSCMagenta",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Set Card Counters (F)..."),
308 {
"Player/aCCPurple",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Add Card Counter (E)"),
311 {
"Player/aRCPurple",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Remove Card Counter (E)"),
314 {
"Player/aSCPurple",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Set Card Counters (E)..."),
317 {
"Player/aCCCyan",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Add Card Counter(D)"),
320 {
"Player/aRCCyan",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Remove Card Counter (D)"),
323 {
"Player/aSCCyan",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Set Card Counters (D)..."),
326 {
"Player/aCCGreen",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Add Card Counter (C)"),
329 {
"Player/aRCGreen",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Remove Card Counter (C)"),
332 {
"Player/aSCGreen",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Set Card Counters (C)..."),
335 {
"Player/aCCYellow",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Add Card Counter (B)"),
338 {
"Player/aRCYellow",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Remove Card Counter (B)"),
341 {
"Player/aSCYellow",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Set Card Counters (B)..."),
344 {
"Player/aCCRed",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Add Card Counter (A)"),
347 {
"Player/aRCRed",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Remove Card Counter (A)"),
350 {
"Player/aSCRed",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Set Card Counters (A)..."),
353 {
"Player/aInc",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Add Life Counter"),
356 {
"Player/aDec",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Remove Life Counter"),
359 {
"Player/aSet",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Set Life Counters..."),
362 {
"Player/aIncCounter_w",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Add White Counter"),
365 {
"Player/aDecCounter_w",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Remove White Counter"),
368 {
"Player/aSetCounter_w",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Set White Counters..."),
371 {
"Player/aIncCounter_u",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Add Blue Counter"),
374 {
"Player/aDecCounter_u",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Remove Blue Counter"),
377 {
"Player/aSetCounter_u",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Set Blue Counters..."),
380 {
"Player/aIncCounter_b",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Add Black Counter"),
383 {
"Player/aDecCounter_b",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Remove Black Counter"),
386 {
"Player/aSetCounter_b",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Set Black Counters..."),
389 {
"Player/aIncCounter_r",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Add Red Counter"),
392 {
"Player/aDecCounter_r",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Remove Red Counter"),
395 {
"Player/aSetCounter_r",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Set Red Counters..."),
398 {
"Player/aIncCounter_g",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Add Green Counter"),
401 {
"Player/aDecCounter_g",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Remove Green Counter"),
404 {
"Player/aSetCounter_g",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Set Green Counters..."),
407 {
"Player/aIncCounter_x",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Add Colorless Counter"),
410 {
"Player/aDecCounter_x",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Remove Colorless Counter"),
413 {
"Player/aSetCounter_x",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Set Colorless Counters..."),
416 {
"Player/aIncCounter_storm",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Add Other Counter"),
419 {
"Player/aDecCounter_storm",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Remove Other Counter"),
422 {
"Player/aSetCounter_storm",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Set Other Counters..."),
425 {
"Player/aIncrementAllCardCounters",
426 ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Increment all card counters"),
429 {
"Player/aIncP",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Add Power (+1/+0)"),
432 {
"Player/aDecP",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Remove Power (-1/-0)"),
435 {
"Player/aFlowP",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Move Toughness to Power (+1/-1)"),
438 {
"Player/aIncT",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Add Toughness (+0/+1)"),
441 {
"Player/aDecT",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Remove Toughness (-0/-1)"),
444 {
"Player/aFlowT",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Move Power to Toughness (-1/+1)"),
447 {
"Player/aIncPT",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Add Power and Toughness (+1/+1)"),
450 {
"Player/aDecPT",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Remove Power and Toughness (-1/-1)"),
453 {
"Player/aSetPT",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Set Power and Toughness..."),
456 {
"Player/aResetPT",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Reset Power and Toughness"),
459 {
"Player/phase0",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Untap"),
466 {
"Player/phase3",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"First Main Phase"),
469 {
"Player/phase4",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Start Combat"),
478 {
"Player/phase8",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"End Combat"),
481 {
"Player/phase9",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Second Main Phase"),
486 {
"Player/aNextPhase",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Next Phase"),
489 {
"Player/aNextPhaseAction",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Next Phase Action"),
492 {
"Player/aNextTurn",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Next Turn"),
495 {
"Player/aHide",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Hide Card in Reveal Window"),
498 {
"Player/aTap",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Tap / Untap Card"),
501 {
"Player/aUntapAll",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Untap All"),
504 {
"Player/aDoesntUntap",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Toggle Untap"),
507 {
"Player/aFlip",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Turn Card Over"),
510 {
"Player/aPeek",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Peek Card"),
513 {
"Player/aPlay",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Play Card"),
516 {
"Player/aAttach",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Attach Card..."),
519 {
"Player/aUnattach",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Unattach Card"),
522 {
"Player/aClone",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Clone Card"),
525 {
"Player/aCreateToken",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Create Token..."),
528 {
"Player/aCreateRelatedTokens",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Create All Related Tokens"),
531 {
"Player/aCreateAnotherToken",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Create Another Token"),
534 {
"Player/aSetAnnotation",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Set Annotation..."),
537 {
"Player/aSelectAll",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Select All Cards in Zone"),
540 {
"Player/aSelectRow",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Select All Cards in Row"),
543 {
"Player/aSelectColumn",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Select All Cards in Column"),
546 {
"Player/aRevealToAll",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Reveal Selected Cards to All Players"),
549 {
"Player/aMoveToBottomLibrary",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Bottom of Library"),
552 {
"Player/aMoveToExile",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Exile"),
555 {
"Player/aMoveToGraveyard",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Graveyard"),
558 {
"Player/aMoveToHand",
560 {
"Player/aMoveToTopLibrary",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Top of Library"),
563 {
"Player/aPlayFacedown",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Battlefield, Face Down"),
566 {
"Player/aPlay",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Battlefield"),
571 {
"Player/aViewGraveyard",
573 {
"Player/aViewLibrary",
577 {
"Player/aViewSideboard",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Sideboard"),
580 {
"Player/aViewTopCards",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Top Cards of Library"),
583 {
"Player/aViewBottomCards",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Bottom Cards of Library"),
586 {
"Player/aCloseMostRecentZoneView",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Close Recent View"),
589 {
"Player/aMoveTopToPlay",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Stack"),
592 {
"Player/aMoveTopToPlayFaceDown",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Battlefield, Face Down"),
595 {
"Player/aMoveTopCardToGraveyard",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Graveyard"),
598 {
"Player/aMoveTopCardsToGraveyard",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Graveyard (Multiple)"),
601 {
"Player/aMoveTopCardToExile",
603 {
"Player/aMoveTopCardsToExile",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Exile (Multiple)"),
606 {
"Player/aMoveTopCardsUntil",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Stack Until Found"),
609 {
"Player/aMoveTopCardToBottom",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Bottom of Library"),
612 {
"Player/aMoveBottomToPlay",
614 {
"Player/aMoveBottomToPlayFaceDown",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Battlefield, Face Down"),
617 {
"Player/aMoveBottomCardToGrave",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Graveyard"),
620 {
"Player/aMoveBottomCardsToGrave",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Graveyard (Multiple)"),
623 {
"Player/aMoveBottomCardToExile",
625 {
"Player/aMoveBottomCardsToExile",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Exile (Multiple)"),
628 {
"Player/aMoveBottomCardToTop",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Top of Library"),
631 {
"Player/aDrawBottomCard",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Draw Bottom Card"),
634 {
"Player/aDrawBottomCards",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Draw Multiple Cards from Bottom..."),
637 {
"Player/aDrawArrow",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Draw Arrow..."),
640 {
"Player/aRemoveLocalArrows",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Remove Local Arrows"),
643 {
"Player/aLeaveGame",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Leave Game"),
648 {
"Player/aRollDie",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Roll Dice..."),
651 {
"Player/aShuffle",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Shuffle Library"),
654 {
"Player/aShuffleTopCards",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Shuffle Top Cards of Library"),
657 {
"Player/aShuffleBottomCards",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Shuffle Bottom Cards of Library"),
660 {
"Player/aMulligan",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Mulligan"),
663 {
"Player/aDrawCard",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Draw a Card"),
666 {
"Player/aDrawCards",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Draw Multiple Cards..."),
669 {
"Player/aUndoDraw",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Undo Draw"),
672 {
"Player/aAlwaysRevealTopCard",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Always Reveal Top Card"),
675 {
"Player/aAlwaysLookAtTopCard",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Always Look At Top Card"),
678 {
"Player/aSortHandByName",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Sort Hand by Name"),
681 {
"Player/aSortHandByType",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Sort Hand by Type"),
684 {
"Player/aSortHandByManaValue",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Sort Hand by Mana Value"),
687 {
"Player/aRevealHandToAll",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Reveal Hand to All Players"),
690 {
"Player/aRevealRandomHandCardToAll",
691 ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Reveal Random Card to All Players"),
694 {
"Player/aRotateViewCW",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Rotate View Clockwise"),
697 {
"Player/aRotateViewCCW",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Rotate View Counterclockwise"),
700 {
"Player/unfocusTextBox",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Unfocus Text Box"),
703 {
"Player/aFocusChat",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Focus Chat"),
706 {
"tab_room/aClearChat",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Clear Chat"),
709 {
"Player/aResetLayout",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Reset Layout"),
712 {
"DlgLoadDeckFromClipboard/refreshButton",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Refresh"),
715 {
"Replays/aSkipForward",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Skip Forward"),
718 {
"Replays/aSkipBackward",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Skip Backward"),
721 {
"Replays/aSkipForwardBig",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Skip Forward by a lot"),
724 {
"Replays/aSkipBackwardBig",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Skip Backward by a lot"),
727 {
"Replays/playButton",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Play/Pause"),
730 {
"Replays/fastForwardButton",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Toggle Fast Forward"),
733 {
"Tabs/aTabDeckEditor",
737 {
"Tabs/aTabVisualDeckStorage",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Visual Deck Storage"),
740 {
"Tabs/aTabDeckStorage",
748 {
"Tabs/aTabAdmin",
ShortcutKey(QT_TRANSLATE_NOOP(
"shortcutsTab",
"Administration"),
Definition shortcuts_settings.h:18
static QString getGroupName(ShortcutGroup::Groups group)
Definition shortcuts_settings.h:44
Groups
Definition shortcuts_settings.h:21
@ Game_Lobby
Definition shortcuts_settings.h:24
@ Tabs
Definition shortcuts_settings.h:41
@ Card_Counters
Definition shortcuts_settings.h:25
@ Gameplay
Definition shortcuts_settings.h:34
@ Player_Counters
Definition shortcuts_settings.h:26
@ Move_selected
Definition shortcuts_settings.h:30
@ View
Definition shortcuts_settings.h:31
@ Move_top
Definition shortcuts_settings.h:32
@ Playing_Area
Definition shortcuts_settings.h:29
@ Hand
Definition shortcuts_settings.h:36
@ Game_window
Definition shortcuts_settings.h:38
@ Deck_Editor
Definition shortcuts_settings.h:23
@ Main_Window
Definition shortcuts_settings.h:22
@ Drawing
Definition shortcuts_settings.h:35
@ Replays
Definition shortcuts_settings.h:40
@ Power_Toughness
Definition shortcuts_settings.h:27
@ Chat_room
Definition shortcuts_settings.h:37
@ Game_Phases
Definition shortcuts_settings.h:28
@ Move_bottom
Definition shortcuts_settings.h:33
@ Load_deck
Definition shortcuts_settings.h:39
Definition shortcuts_settings.h:94
void setSequence(const QList &_sequence)
Definition shortcuts_settings.h:99
QString getGroupName() const
Definition shortcuts_settings.h:107
QString name
Definition shortcuts_settings.h:113
ShortcutKey(const QString &_name=QString(), QList _sequence=QList(), ShortcutGroup::Groups _group=ShortcutGroup::Main_Window)
Definition shortcuts_settings.cpp:9
QString getName() const
Definition shortcuts_settings.h:103
ShortcutGroup::Groups group
Definition shortcuts_settings.h:114
void resetAllShortcuts()
Definition shortcuts_settings.cpp:192
void migrateShortcuts()
Definition shortcuts_settings.cpp:69
ShortcutKey getDefaultShortcut(const QString &name) const
Definition shortcuts_settings.cpp:104
ShortcutsSettings(const QString &settingsFilePath, QObject *parent=nullptr)
Definition shortcuts_settings.cpp:14
bool isValid(const QString &name, const QString &sequences) const
Definition shortcuts_settings.cpp:234
QString settingsFilePath
Definition shortcuts_settings.h:152
QString getShortcutFriendlyName(const QString &shortcutName) const
Definition shortcuts_settings.cpp:140
bool isKeyAllowed(const QString &name, const QString &sequences) const
Definition shortcuts_settings.cpp:214
QList< QString > getAllShortcutKeys() const
Definition shortcuts_settings.h:129
void clearAllShortcuts()
Definition shortcuts_settings.cpp:202
QKeySequence getSingleShortcut(const QString &name) const
Definition shortcuts_settings.cpp:125
QStringList findOverlaps(const QString &name, const QString &sequences) const
Definition shortcuts_settings.cpp:247
QHash< QString, ShortcutKey > shortCuts
Definition shortcuts_settings.h:153
void setShortcuts(const QString &name, const QList< QKeySequence > &Sequence)
Definition shortcuts_settings.cpp:171
const QString custom
Definition shortcuts_settings.h:151
QString getDefaultShortcutString(const QString &name) const
Definition shortcuts_settings.cpp:130
const QHash< QString, ShortcutKey > defaultShortCuts
Definition shortcuts_settings.h:158
QString getShortcutString(const QString &name) const
Definition shortcuts_settings.cpp:135
ShortcutKey getShortcut(const QString &name) const
Definition shortcuts_settings.cpp:109
QString stringifySequence(const QList< QKeySequence > &Sequence) const
Definition shortcuts_settings.cpp:151
QList< QKeySequence > parseSequenceString(const QString &stringSequence) const
Definition shortcuts_settings.cpp:161
const QChar sep
Definition shortcuts_settings.h:150
Q_LOGGING_CATEGORY(ShortcutsSettingsLog, "shortcuts_settings")