Cockatrice 2025-11-30-Development-2.11.0-beta.38
A cross-platform virtual tabletop for multiplayer card games
Loading...
Searching...
No Matches
dlg_filter_games.h
Go to the documentation of this file.
1
6
7#ifndef DLG_FILTER_GAMES_H
8#define DLG_FILTER_GAMES_H
9
10#include "../interface/widgets/server/games_model.h"
11
12#include <QCheckBox>
13#include <QComboBox>
14#include <QDialog>
15#include <QMap>
16#include <QSet>
17#include <QTime>
18
19class QCheckBox;
20class QComboBox;
21class QGroupBox;
22class QLineEdit;
23class QSpinBox;
24
25class DlgFilterGames : public QDialog
26{
27 Q_OBJECT
28private:
29 QGroupBox *generalGroupBox;
31 QCheckBox *hideFullGames;
39 QMap<int, QCheckBox *> gameTypeFilterCheckBoxes;
43
48
49 const QMap<int, QString> &allGameTypes;
51
52private slots:
53 void actOk();
54 void toggleSpectatorCheckboxEnabledness(bool spectatorsEnabled);
55
56public:
57 DlgFilterGames(const QMap<int, QString> &_allGameTypes,
58 const GamesProxyModel *_gamesProxyModel,
59 QWidget *parent = nullptr);
60
61 [[nodiscard]] bool getHideFullGames() const;
62 [[nodiscard]] bool getHideGamesThatStarted() const;
63 [[nodiscard]] bool getHidePasswordProtectedGames() const;
64 void setShowPasswordProtectedGames(bool _passwordProtectedGamesHidden);
65 [[nodiscard]] bool getHideBuddiesOnlyGames() const;
66 void setHideBuddiesOnlyGames(bool _hideBuddiesOnlyGames);
67 [[nodiscard]] bool getHideOpenDecklistGames() const;
68 void setHideOpenDecklistGames(bool _hideOpenDecklistGames);
69 [[nodiscard]] bool getHideIgnoredUserGames() const;
70 void setHideIgnoredUserGames(bool _hideIgnoredUserGames);
71 [[nodiscard]] bool getHideNotBuddyCreatedGames() const;
72 [[nodiscard]] QString getGameNameFilter() const;
73 void setGameNameFilter(const QString &_gameNameFilter);
74 [[nodiscard]] QStringList getCreatorNameFilters() const;
75 void setCreatorNameFilter(const QString &_creatorNameFilter);
76 [[nodiscard]] QSet<int> getGameTypeFilter() const;
77 void setGameTypeFilter(const QSet<int> &_gameTypeFilter);
78 [[nodiscard]] int getMaxPlayersFilterMin() const;
79 [[nodiscard]] int getMaxPlayersFilterMax() const;
80 void setMaxPlayersFilter(int _maxPlayersFilterMin, int _maxPlayersFilterMax);
81 [[nodiscard]] QTime getMaxGameAge() const;
82 const QMap<QTime, QString> gameAgeMap;
83 [[nodiscard]] bool getShowOnlyIfSpectatorsCanWatch() const;
84 [[nodiscard]] bool getShowSpectatorPasswordProtected() const;
85 [[nodiscard]] bool getShowOnlyIfSpectatorsCanChat() const;
86 [[nodiscard]] bool getShowOnlyIfSpectatorsCanSeeHands() const;
87};
88
89#endif
bool getShowSpectatorPasswordProtected() const
Definition dlg_filter_games.cpp:276
QCheckBox * hidePasswordProtectedGames
Definition dlg_filter_games.h:33
void setHideOpenDecklistGames(bool _hideOpenDecklistGames)
void setGameTypeFilter(const QSet< int > &_gameTypeFilter)
QStringList getCreatorNameFilters() const
Definition dlg_filter_games.cpp:235
QCheckBox * hideFullGames
Definition dlg_filter_games.h:31
QCheckBox * hideBuddiesOnlyGames
Definition dlg_filter_games.h:30
DlgFilterGames(const QMap< int, QString > &_allGameTypes, const GamesProxyModel *_gamesProxyModel, QWidget *parent=nullptr)
Definition dlg_filter_games.cpp:14
bool getHideIgnoredUserGames() const
Definition dlg_filter_games.cpp:215
QCheckBox * hideIgnoredUserGames
Definition dlg_filter_games.h:34
QCheckBox * showOnlyIfSpectatorsCanSeeHands
Definition dlg_filter_games.h:47
QComboBox * maxGameAgeComboBox
Definition dlg_filter_games.h:42
void setHideIgnoredUserGames(bool _hideIgnoredUserGames)
QString getGameNameFilter() const
Definition dlg_filter_games.cpp:230
bool getShowOnlyIfSpectatorsCanSeeHands() const
Definition dlg_filter_games.cpp:286
bool getHideGamesThatStarted() const
Definition dlg_filter_games.cpp:200
QCheckBox * hideOpenDecklistGames
Definition dlg_filter_games.h:36
bool getHidePasswordProtectedGames() const
Definition dlg_filter_games.cpp:210
void setGameNameFilter(const QString &_gameNameFilter)
QMap< int, QCheckBox * > gameTypeFilterCheckBoxes
Definition dlg_filter_games.h:39
QCheckBox * hideGamesThatStarted
Definition dlg_filter_games.h:32
QCheckBox * showOnlyIfSpectatorsCanChat
Definition dlg_filter_games.h:46
bool getShowOnlyIfSpectatorsCanWatch() const
Definition dlg_filter_games.cpp:271
void actOk()
Definition dlg_filter_games.cpp:183
bool getHideOpenDecklistGames() const
Definition dlg_filter_games.cpp:225
const GamesProxyModel * gamesProxyModel
Definition dlg_filter_games.h:50
QLineEdit * creatorNameFilterEdit
Definition dlg_filter_games.h:38
void setCreatorNameFilter(const QString &_creatorNameFilter)
void toggleSpectatorCheckboxEnabledness(bool spectatorsEnabled)
Definition dlg_filter_games.cpp:188
bool getHideNotBuddyCreatedGames() const
Definition dlg_filter_games.cpp:220
bool getHideFullGames() const
Definition dlg_filter_games.cpp:195
QSpinBox * maxPlayersFilterMinSpinBox
Definition dlg_filter_games.h:40
void setHideBuddiesOnlyGames(bool _hideBuddiesOnlyGames)
QCheckBox * hideNotBuddyCreatedGames
Definition dlg_filter_games.h:35
QCheckBox * showOnlyIfSpectatorsCanWatch
Definition dlg_filter_games.h:44
void setShowPasswordProtectedGames(bool _passwordProtectedGamesHidden)
QCheckBox * showSpectatorPasswordProtected
Definition dlg_filter_games.h:45
QTime getMaxGameAge() const
Definition dlg_filter_games.cpp:262
QSet< int > getGameTypeFilter() const
Definition dlg_filter_games.cpp:240
const QMap< QTime, QString > gameAgeMap
Definition dlg_filter_games.h:82
int getMaxPlayersFilterMin() const
Definition dlg_filter_games.cpp:252
int getMaxPlayersFilterMax() const
Definition dlg_filter_games.cpp:257
QSpinBox * maxPlayersFilterMaxSpinBox
Definition dlg_filter_games.h:41
QGroupBox * generalGroupBox
Definition dlg_filter_games.h:29
QLineEdit * gameNameFilterEdit
Definition dlg_filter_games.h:37
bool getHideBuddiesOnlyGames() const
Definition dlg_filter_games.cpp:205
bool getShowOnlyIfSpectatorsCanChat() const
Definition dlg_filter_games.cpp:281
void setMaxPlayersFilter(int _maxPlayersFilterMin, int _maxPlayersFilterMax)
const QMap< int, QString > & allGameTypes
Definition dlg_filter_games.h:49
Proxy model for filtering and sorting the GamesModel based on user preferences.
Definition games_model.h:112