Cockatrice 2026-04-21-Development-2.11.0-beta.61
A virtual tabletop for multiplayer card games
Loading...
Searching...
No Matches
dlg_settings.h
Go to the documentation of this file.
1
6
7#ifndef DLG_SETTINGS_H
8#define DLG_SETTINGS_H
9
10#include <QCheckBox>
11#include <QComboBox>
12#include <QDialog>
13#include <QGroupBox>
14#include <QLabel>
15#include <QLoggingCategory>
16#include <QPushButton>
17#include <QSpinBox>
19
20inline Q_LOGGING_CATEGORY(DlgSettingsLog, "dlg_settings");
21
23class SearchLineEdit;
24class QTreeView;
25class QStandardItemModel;
26class CardDatabase;
27class QCloseEvent;
28class QGridLayout;
29class QHBoxLayout;
30class QLineEdit;
31class QListWidget;
32class QListWidgetItem;
33class QRadioButton;
34class QSlider;
35class QStackedWidget;
36class QVBoxLayout;
37class SequenceEdit;
38
39class AbstractSettingsPage : public QWidget
40{
41public:
42 virtual void retranslateUi() = 0;
43};
44
46{
47 Q_OBJECT
48public:
50 void retranslateUi() override;
51
52private slots:
61 void languageBoxChanged(int index);
62
63private:
64 QStringList findQmFiles();
65 QString languageName(const QString &lang);
66 QLineEdit *deckPathEdit;
67 QLineEdit *filtersPathEdit;
68 QLineEdit *replaysPathEdit;
69 QLineEdit *picsPathEdit;
73 QPushButton *resetAllPathsButton;
75 QGroupBox *personalGroupBox;
76 QGroupBox *pathsGroupBox;
77 QComboBox languageBox;
98};
99
101{
102 Q_OBJECT
103private slots:
104 void themeBoxChanged(int index);
105 void openThemeLocation();
109
110 void cardViewInitialRowsMaxChanged(int value);
111 void cardViewExpandedRowsMaxChanged(int value);
112
113private:
115 QComboBox themeBox;
116 QPushButton openThemeButton;
142 QGroupBox *themeGroupBox;
143 QGroupBox *menuGroupBox;
144 QGroupBox *cardsGroupBox;
145 QGroupBox *handGroupBox;
146 QGroupBox *tableGroupBox;
148 QList<QLabel *> cardCounterNames;
151
152public:
154 void retranslateUi() override;
155};
156
197
199{
200 Q_OBJECT
201public:
203 void retranslateUi() override;
204 QString getLastUpdateTime();
205
206private slots:
207 void storeSettings();
208 void urlListChanged(const QModelIndex &, int, int, const QModelIndex &, int);
209 void setSpoilersEnabled(bool);
211 void updateSpoilers();
212 void unlockSettings();
213 void actAddURL();
214 void actRemoveURL();
215 void actEditURL();
218
219private:
221 QPushButton resetDownloadURLs;
224 QListWidget *urlList;
225 QAction *aAdd, *aEdit, *aRemove;
235 QPushButton *updateNowButton;
242};
243
245{
246 Q_OBJECT
247public:
249 void retranslateUi() override;
250
251private slots:
252 void actAdd();
253 void actEdit();
254 void actRemove();
255 void updateColor(const QString &value);
256 void updateHighlightColor(const QString &value);
259
260private:
261 QListWidget *messageList;
262 QAction *aAdd;
263 QAction *aEdit;
264 QAction *aRemove;
271 QCheckBox messagePopups;
272 QCheckBox mentionPopups;
273 QCheckBox roomHistory;
274 QGroupBox *chatGroupBox;
276 QGroupBox *messageGroupBox;
277 QLineEdit *mentionColor;
278 QLineEdit *highlightColor;
280 QLabel hexLabel;
284
285 void storeSettings();
288};
289
291{
292 Q_OBJECT
293public:
295 void retranslateUi() override;
296
297private:
299 QComboBox themeBox;
300 QGroupBox *soundGroupBox;
301 QPushButton soundTestButton;
306
307private slots:
308 void masterVolumeChanged(int value);
309 void themeBoxChanged(int index);
310};
311
313{
314 Q_OBJECT
315public:
317 void retranslateUi() override;
318
319private:
322 QVBoxLayout *mainLayout;
323 QHBoxLayout *buttonsLayout;
325 QGridLayout *editLayout;
332 QLabel *faqLabel;
333 QPushButton *btnResetAll;
334 QPushButton *btnClearAll;
335
336private slots:
337 void resetShortcuts();
338 void clearShortcuts();
339 void currentItemChanged(const QString &key);
340};
341
342class DlgSettings : public QDialog
343{
344 Q_OBJECT
345public:
346 explicit DlgSettings(QWidget *parent = nullptr);
347 void setTab(int index);
348
349private slots:
350 void changePage(QListWidgetItem *current, QListWidgetItem *previous);
351 void updateLanguage();
352
353private:
354 QListWidget *contentsWidget;
355 QStackedWidget *pagesWidget;
358 void createIcons();
359 void retranslateUi();
360
361protected:
362 void closeEvent(QCloseEvent *event) override;
363};
364
365#endif
Definition dlg_settings.h:40
virtual void retranslateUi()=0
QLabel homeTabBackgroundSourceLabel
Definition dlg_settings.h:117
QCheckBox autoRotateSidewaysLayoutCardsCheckBox
Definition dlg_settings.h:128
QCheckBox overrideAllCardArtWithPersonalPreferenceCheckBox
Definition dlg_settings.h:129
QCheckBox invertVerticalCoordinateCheckBox
Definition dlg_settings.h:141
QLabel minPlayersForMultiColumnLayoutLabel
Definition dlg_settings.h:123
void showShortcutsChanged(QT_STATE_CHANGED_T enabled)
Definition dlg_settings.cpp:674
void cardViewExpandedRowsMaxChanged(int value)
Definition dlg_settings.cpp:714
QList< QLabel * > cardCounterNames
Definition dlg_settings.h:148
void themeBoxChanged(int index)
Definition dlg_settings.cpp:643
QGroupBox * cardCountersGroupBox
Definition dlg_settings.h:147
QSpinBox cardViewInitialRowsMaxBox
Definition dlg_settings.h:136
QLabel homeTabBackgroundShuffleFrequencyLabel
Definition dlg_settings.h:119
QCheckBox showShortcutsCheckBox
Definition dlg_settings.h:125
QPushButton openThemeButton
Definition dlg_settings.h:116
QCheckBox horizontalHandCheckBox
Definition dlg_settings.h:139
QCheckBox bumpSetsWithCardsInDeckToTopCheckBox
Definition dlg_settings.h:130
QGroupBox * handGroupBox
Definition dlg_settings.h:145
QComboBox themeBox
Definition dlg_settings.h:115
void retranslateUi() override
Definition dlg_settings.cpp:722
QComboBox homeTabBackgroundSourceBox
Definition dlg_settings.h:118
QLabel cardViewExpandedRowsMaxLabel
Definition dlg_settings.h:137
QCheckBox cardScalingCheckBox
Definition dlg_settings.h:131
void openThemeLocation()
Definition dlg_settings.cpp:650
QGroupBox * themeGroupBox
Definition dlg_settings.h:142
QSpinBox verticalCardOverlapPercentBox
Definition dlg_settings.h:134
QGroupBox * menuGroupBox
Definition dlg_settings.h:143
AppearanceSettingsPage()
Definition dlg_settings.cpp:411
void cardViewInitialRowsMaxChanged(int value)
Definition dlg_settings.cpp:701
QSpinBox minPlayersForMultiColumnLayoutEdit
Definition dlg_settings.h:149
QSpinBox cardViewExpandedRowsMaxBox
Definition dlg_settings.h:138
void updateHomeTabSettingsVisibility()
Definition dlg_settings.cpp:663
QLabel maxFontSizeForCardsLabel
Definition dlg_settings.h:124
QGroupBox * tableGroupBox
Definition dlg_settings.h:146
QCheckBox displayCardNamesCheckBox
Definition dlg_settings.h:127
QLabel verticalCardOverlapPercentLabel
Definition dlg_settings.h:133
QCheckBox leftJustifiedHandCheckBox
Definition dlg_settings.h:140
QCheckBox showGameSelectorFilterToolbarCheckBox
Definition dlg_settings.h:126
QGroupBox * cardsGroupBox
Definition dlg_settings.h:144
QLabel homeTabDisplayCardNameLabel
Definition dlg_settings.h:121
void overrideAllCardArtWithPersonalPreferenceToggled(QT_STATE_CHANGED_T enabled)
Definition dlg_settings.cpp:680
QLabel themeLabel
Definition dlg_settings.h:114
QSpinBox maxFontSizeForCardsEdit
Definition dlg_settings.h:150
QCheckBox roundCardCornersCheckBox
Definition dlg_settings.h:132
QLabel cardViewInitialRowsMaxLabel
Definition dlg_settings.h:135
QSpinBox homeTabBackgroundShuffleFrequencySpinBox
Definition dlg_settings.h:120
QCheckBox homeTabDisplayCardNameCheckBox
Definition dlg_settings.h:122
Core in-memory container for card and set data.
Definition card_database.h:29
QPushButton resetDownloadURLs
Definition dlg_settings.h:221
QAction * aEdit
Definition dlg_settings.h:225
QLabel msDownloadSpoilersLabel
Definition dlg_settings.h:227
QGroupBox * mpSpoilerGroupBox
Definition dlg_settings.h:229
void storeSettings()
Definition dlg_settings.cpp:1218
void spoilerPathButtonClicked()
Definition dlg_settings.cpp:1267
void retranslateUi() override
Definition dlg_settings.cpp:1293
QGroupBox * mpGeneralGroupBox
Definition dlg_settings.h:228
void actRemoveURL()
Definition dlg_settings.cpp:1197
QLabel networkRedirectCacheTtlLabel
Definition dlg_settings.h:238
DeckEditorSettingsPage()
Definition dlg_settings.cpp:997
QSpinBox networkRedirectCacheTtlEdit
Definition dlg_settings.h:239
void actAddURL()
Definition dlg_settings.cpp:1187
QLabel urlLinkLabel
Definition dlg_settings.h:222
QLabel lastUpdatedLabel
Definition dlg_settings.h:232
QListWidget * urlList
Definition dlg_settings.h:224
void clearDownloadedPicsButtonClicked()
Definition dlg_settings.cpp:1147
QSpinBox pixmapCacheEdit
Definition dlg_settings.h:240
QCheckBox picDownloadCheckBox
Definition dlg_settings.h:223
QString getLastUpdateTime()
Definition dlg_settings.cpp:1253
QPushButton * updateNowButton
Definition dlg_settings.h:235
QAction * aRemove
Definition dlg_settings.h:225
QLineEdit * mpSpoilerSavePathLineEdit
Definition dlg_settings.h:230
QCheckBox mcDownloadSpoilersCheckBox
Definition dlg_settings.h:226
void unlockSettings()
Definition dlg_settings.cpp:1247
QLabel infoOnSpoilersLabel
Definition dlg_settings.h:233
void actEditURL()
Definition dlg_settings.cpp:1205
void resetDownloadedURLsButtonClicked()
Definition dlg_settings.cpp:1139
QPushButton * mpSpoilerPathButton
Definition dlg_settings.h:234
QLabel pixmapCacheLabel
Definition dlg_settings.h:241
void setSpoilersEnabled(bool)
Definition dlg_settings.cpp:1278
QPushButton clearDownloadedPicsButton
Definition dlg_settings.h:220
QLabel networkCacheLabel
Definition dlg_settings.h:236
QSpinBox networkCacheEdit
Definition dlg_settings.h:237
QAction * aAdd
Definition dlg_settings.h:225
QLabel mcSpoilerSaveLabel
Definition dlg_settings.h:231
void updateSpoilers()
Definition dlg_settings.cpp:1235
void urlListChanged(const QModelIndex &, int, int, const QModelIndex &, int)
Definition dlg_settings.cpp:1230
QListWidgetItem * shortcutsButton
Definition dlg_settings.h:357
void createIcons()
Definition dlg_settings.cpp:1818
QListWidgetItem * generalButton
Definition dlg_settings.h:356
void updateLanguage()
Definition dlg_settings.cpp:1874
void setTab(int index)
Definition dlg_settings.cpp:1866
void closeEvent(QCloseEvent *event) override
Definition dlg_settings.cpp:1880
QListWidgetItem * soundButton
Definition dlg_settings.h:357
QListWidgetItem * appearanceButton
Definition dlg_settings.h:356
DlgSettings(QWidget *parent=nullptr)
Definition dlg_settings.cpp:1772
QListWidget * contentsWidget
Definition dlg_settings.h:354
QListWidgetItem * messagesButton
Definition dlg_settings.h:356
QListWidgetItem * deckEditorButton
Definition dlg_settings.h:356
void retranslateUi()
Definition dlg_settings.cpp:1956
QStackedWidget * pagesWidget
Definition dlg_settings.h:355
void changePage(QListWidgetItem *current, QListWidgetItem *previous)
Definition dlg_settings.cpp:1858
QListWidgetItem * userInterfaceButton
Definition dlg_settings.h:356
void tokenDatabasePathButtonClicked()
Definition dlg_settings.cpp:332
QComboBox languageBox
Definition dlg_settings.h:77
QLineEdit * customCardDatabasePathEdit
Definition dlg_settings.h:71
GeneralSettingsPage()
Definition dlg_settings.cpp:63
QLineEdit * tokenDatabasePathEdit
Definition dlg_settings.h:72
QLabel languageLabel
Definition dlg_settings.h:87
QGroupBox * personalGroupBox
Definition dlg_settings.h:75
QLabel customCardDatabasePathLabel
Definition dlg_settings.h:93
QString languageName(const QString &lang)
Definition dlg_settings.cpp:258
QLineEdit * cardDatabasePathEdit
Definition dlg_settings.h:70
void picsPathButtonClicked()
Definition dlg_settings.cpp:302
QLabel advertiseTranslationPageLabel
Definition dlg_settings.h:96
QLabel picsPathLabel
Definition dlg_settings.h:91
QPushButton * resetAllPathsButton
Definition dlg_settings.h:73
QCheckBox newVersionOracleCheckBox
Definition dlg_settings.h:85
QComboBox updateReleaseChannelBox
Definition dlg_settings.h:86
QCheckBox updateNotificationCheckBox
Definition dlg_settings.h:84
void retranslateUi() override
Definition dlg_settings.cpp:360
QLabel * allPathsResetLabel
Definition dlg_settings.h:74
QLabel deckPathLabel
Definition dlg_settings.h:88
QLabel replaysPathLabel
Definition dlg_settings.h:90
QLineEdit * picsPathEdit
Definition dlg_settings.h:69
void customCardDatabaseButtonClicked()
Definition dlg_settings.cpp:322
QLabel startupCardUpdateCheckBehaviorLabel
Definition dlg_settings.h:79
QLabel tokenDatabasePathLabel
Definition dlg_settings.h:94
QLabel lastCardUpdateCheckDateLabel
Definition dlg_settings.h:83
void cardDatabasePathButtonClicked()
Definition dlg_settings.cpp:312
void deckPathButtonClicked()
Definition dlg_settings.cpp:272
QCheckBox showTipsOnStartup
Definition dlg_settings.h:97
QLineEdit * filtersPathEdit
Definition dlg_settings.h:67
void languageBoxChanged(int index)
Definition dlg_settings.cpp:355
QStringList findQmFiles()
Definition dlg_settings.cpp:250
QSpinBox cardUpdateCheckIntervalSpinBox
Definition dlg_settings.h:82
QLineEdit * deckPathEdit
Definition dlg_settings.h:66
QLabel cardUpdateCheckIntervalLabel
Definition dlg_settings.h:81
QGroupBox * pathsGroupBox
Definition dlg_settings.h:76
QLineEdit * replaysPathEdit
Definition dlg_settings.h:68
void resetAllPathsClicked()
Definition dlg_settings.cpp:342
QLabel cardDatabasePathLabel
Definition dlg_settings.h:92
QCheckBox startupUpdateCheckCheckBox
Definition dlg_settings.h:78
void replaysPathButtonClicked()
Definition dlg_settings.cpp:292
void filtersPathButtonClicked()
Definition dlg_settings.cpp:282
QLabel updateReleaseChannelLabel
Definition dlg_settings.h:95
QComboBox startupCardUpdateCheckBehaviorSelector
Definition dlg_settings.h:80
QLabel filtersPathLabel
Definition dlg_settings.h:89
QCheckBox ignoreUnregUserMessages
Definition dlg_settings.h:270
QAction * aRemove
Definition dlg_settings.h:264
QGroupBox * messageGroupBox
Definition dlg_settings.h:276
QCheckBox invertMentionForeground
Definition dlg_settings.h:267
void storeSettings()
Definition dlg_settings.cpp:1496
QLineEdit * customAlertString
Definition dlg_settings.h:279
void actRemove()
Definition dlg_settings.cpp:1529
void actEdit()
Definition dlg_settings.cpp:1515
QLineEdit * highlightColor
Definition dlg_settings.h:278
void updateTextHighlightColor(QT_STATE_CHANGED_T value)
Definition dlg_settings.cpp:1476
QCheckBox ignoreUnregUsersMainChat
Definition dlg_settings.h:269
void updateHighlightColor(const QString &value)
Definition dlg_settings.cpp:1456
QCheckBox mentionPopups
Definition dlg_settings.h:272
void actAdd()
Definition dlg_settings.cpp:1504
QCheckBox chatMentionCheckBox
Definition dlg_settings.h:265
QAction * aAdd
Definition dlg_settings.h:262
void updateHighlightPreview()
Definition dlg_settings.cpp:1489
QLineEdit * mentionColor
Definition dlg_settings.h:277
QCheckBox messagePopups
Definition dlg_settings.h:271
QCheckBox chatMentionCompleterCheckbox
Definition dlg_settings.h:266
QGroupBox * chatGroupBox
Definition dlg_settings.h:274
void updateTextColor(QT_STATE_CHANGED_T value)
Definition dlg_settings.cpp:1470
QGroupBox * highlightGroupBox
Definition dlg_settings.h:275
void updateMentionPreview()
Definition dlg_settings.cpp:1482
void retranslateUi() override
Definition dlg_settings.cpp:1537
QLabel hexHighlightLabel
Definition dlg_settings.h:281
QLabel customAlertStringLabel
Definition dlg_settings.h:282
QCheckBox roomHistory
Definition dlg_settings.h:273
QListWidget * messageList
Definition dlg_settings.h:261
QCheckBox invertHighlightForeground
Definition dlg_settings.h:268
MessagesSettingsPage()
Definition dlg_settings.cpp:1320
QAction * aEdit
Definition dlg_settings.h:263
QLabel explainMessagesLabel
Definition dlg_settings.h:283
void updateColor(const QString &value)
Definition dlg_settings.cpp:1442
QLabel hexLabel
Definition dlg_settings.h:280
Definition custom_line_edit.h:35
Definition sequence_edit.h:16
QLabel * currentActionGroupName
Definition dlg_settings.h:327
QGroupBox * editShortcutGroupBox
Definition dlg_settings.h:324
QLabel * currentActionLabel
Definition dlg_settings.h:328
QGridLayout * editLayout
Definition dlg_settings.h:325
QHBoxLayout * buttonsLayout
Definition dlg_settings.h:323
QVBoxLayout * mainLayout
Definition dlg_settings.h:322
QLabel * currentActionName
Definition dlg_settings.h:329
QLabel * currentShortcutLabel
Definition dlg_settings.h:330
QLabel * faqLabel
Definition dlg_settings.h:332
SearchLineEdit * searchEdit
Definition dlg_settings.h:320
SequenceEdit * editTextBox
Definition dlg_settings.h:331
QLabel * currentActionGroupLabel
Definition dlg_settings.h:326
void resetShortcuts()
Definition dlg_settings.cpp:1729
void currentItemChanged(const QString &key)
Definition dlg_settings.cpp:1714
QPushButton * btnClearAll
Definition dlg_settings.h:334
void retranslateUi() override
Definition dlg_settings.cpp:1745
ShortcutSettingsPage()
Definition dlg_settings.cpp:1640
ShortcutTreeView * shortcutsTable
Definition dlg_settings.h:321
QPushButton * btnResetAll
Definition dlg_settings.h:333
void clearShortcuts()
Definition dlg_settings.cpp:1737
Definition shortcut_treeview.h:28
QSlider * masterVolumeSlider
Definition dlg_settings.h:304
QGroupBox * soundGroupBox
Definition dlg_settings.h:300
QCheckBox soundEnabledCheckBox
Definition dlg_settings.h:302
SoundSettingsPage()
Definition dlg_settings.cpp:1562
void themeBoxChanged(int index)
Definition dlg_settings.cpp:1619
void retranslateUi() override
Definition dlg_settings.cpp:1631
QSpinBox * masterVolumeSpinBox
Definition dlg_settings.h:305
QLabel themeLabel
Definition dlg_settings.h:298
QComboBox themeBox
Definition dlg_settings.h:299
void masterVolumeChanged(int value)
Definition dlg_settings.cpp:1626
QLabel masterVolumeLabel
Definition dlg_settings.h:303
QPushButton soundTestButton
Definition dlg_settings.h:301
QCheckBox useTearOffMenusCheckBox
Definition dlg_settings.h:176
QCheckBox focusCardViewSearchBarCheckBox
Definition dlg_settings.h:172
QCheckBox annotateTokensCheckBox
Definition dlg_settings.h:173
QLabel visualDeckStoragePromptForConversionLabel
Definition dlg_settings.h:179
QCheckBox buddyConnectNotificationsEnabledCheckBox
Definition dlg_settings.h:166
QCheckBox clickPlaysAllSelectedCheckBox
Definition dlg_settings.h:168
QCheckBox doubleClickToPlayCheckBox
Definition dlg_settings.h:167
QCheckBox specNotificationsEnabledCheckBox
Definition dlg_settings.h:165
QGroupBox * generalGroupBox
Definition dlg_settings.h:187
QComboBox defaultDeckEditorTypeSelector
Definition dlg_settings.h:184
QCheckBox closeEmptyCardViewCheckBox
Definition dlg_settings.h:171
QSpinBox rewindBufferingMsBox
Definition dlg_settings.h:186
QCheckBox showDragSelectionCountCheckBox
Definition dlg_settings.h:174
QCheckBox visualDeckStorageInGameCheckBox
Definition dlg_settings.h:181
QGroupBox * deckEditorGroupBox
Definition dlg_settings.h:190
void setNotificationEnabled(QT_STATE_CHANGED_T)
Definition dlg_settings.cpp:948
void retranslateUi() override
Definition dlg_settings.cpp:958
QLabel defaultDeckEditorTypeLabel
Definition dlg_settings.h:183
QCheckBox visualDeckStorageSelectionAnimationCheckBox
Definition dlg_settings.h:182
QGroupBox * animationGroupBox
Definition dlg_settings.h:189
UserInterfaceSettingsPage()
Definition dlg_settings.cpp:776
QGroupBox * replayGroupBox
Definition dlg_settings.h:191
QCheckBox openDeckInNewTabCheckBox
Definition dlg_settings.h:178
QCheckBox tapAnimationCheckBox
Definition dlg_settings.h:177
QLabel rewindBufferingMsLabel
Definition dlg_settings.h:185
QComboBox visualDeckStoragePromptForConversionSelector
Definition dlg_settings.h:180
QCheckBox notificationsEnabledCheckBox
Definition dlg_settings.h:164
QCheckBox showTotalSelectionCountCheckBox
Definition dlg_settings.h:175
QCheckBox doNotDeleteArrowsInSubPhasesCheckBox
Definition dlg_settings.h:170
QGroupBox * notificationsGroupBox
Definition dlg_settings.h:188
QCheckBox playToStackCheckBox
Definition dlg_settings.h:169
Q_LOGGING_CATEGORY(DlgSettingsLog, "dlg_settings")
#define QT_STATE_CHANGED_T
Definition macros.h:11