Merge branch 'master' into 6185/unify-vcpkg-jobs

This commit is contained in:
Bruno Alexandre Rosa 2025-11-05 17:59:09 -03:00
commit a4ff78291e
97 changed files with 245 additions and 307 deletions

View file

@ -335,6 +335,7 @@ add_subdirectory(${CMAKE_SOURCE_DIR}/libcockatrice_rng ${CMAKE_BINARY_DIR}/libco
add_subdirectory(${CMAKE_SOURCE_DIR}/libcockatrice_settings ${CMAKE_BINARY_DIR}/libcockatrice_settings)
add_subdirectory(${CMAKE_SOURCE_DIR}/libcockatrice_card ${CMAKE_BINARY_DIR}/libcockatrice_card)
add_subdirectory(${CMAKE_SOURCE_DIR}/libcockatrice_utility ${CMAKE_BINARY_DIR}/libcockatrice_utility)
add_subdirectory(${CMAKE_SOURCE_DIR}/libcockatrice_models ${CMAKE_BINARY_DIR}/libcockatrice_models)
if(WITH_SERVER)
add_subdirectory(servatrice)
set(CPACK_INSTALL_CMAKE_PROJECTS "Servatrice;Servatrice;ALL;/" ${CPACK_INSTALL_CMAKE_PROJECTS})

View file

@ -115,4 +115,7 @@ string(REGEX REPLACE "([^;]+)" "${COCKATRICE_QT_VERSION_NAME}::\\1" ORACLE_QT_MO
string(REGEX REPLACE "([^;]+)" "${COCKATRICE_QT_VERSION_NAME}::\\1" DB_CONVERTER_QT_MODULES "${_DBCONVERTER_NEEDED}")
string(REGEX REPLACE "([^;]+)" "${COCKATRICE_QT_VERSION_NAME}::\\1" TEST_QT_MODULES "${_TEST_NEEDED}")
# Core-only export (useful for headless libs)
set(QT_CORE_MODULE "${COCKATRICE_QT_VERSION_NAME}::Core")
message(STATUS "Found Qt ${${COCKATRICE_QT_VERSION_NAME}_VERSION} at: ${${COCKATRICE_QT_VERSION_NAME}_DIR}")

View file

@ -258,6 +258,8 @@ set(cockatrice_SOURCES
src/interface/widgets/tabs/visual_deck_editor/tab_deck_editor_visual.cpp
src/interface/widgets/tabs/visual_deck_editor/tab_deck_editor_visual_tab_widget.cpp
src/interface/widgets/tabs/visual_deck_storage/tab_deck_storage_visual.cpp
src/interface/key_signals.cpp
src/interface/logger.cpp
)
add_subdirectory(sounds)
@ -360,13 +362,20 @@ if(Qt5_FOUND)
libcockatrice_deck_list
libcockatrice_utility
libcockatrice_network
libcockatrice_models
libcockatrice_rng
${COCKATRICE_QT_MODULES}
)
else()
target_link_libraries(
cockatrice PUBLIC libcockatrice_card libcockatrice_deck_list libcockatrice_utility libcockatrice_network
libcockatrice_rng ${COCKATRICE_QT_MODULES}
cockatrice
PUBLIC libcockatrice_card
libcockatrice_deck_list
libcockatrice_utility
libcockatrice_network
libcockatrice_models
libcockatrice_rng
${COCKATRICE_QT_MODULES}
)
endif()

View file

@ -37,12 +37,14 @@
#card_zone = true
#view_zone = true
#game_event_handler = true
#user_info_connection = true
#picture_loader = true
#picture_loader.worker = true
#picture_loader.card_back_cache_fail = true
#picture_loader.picture_to_load = true
#card_picture_loader = true
#card_picture_loader.worker = true
#card_picture_loader.card_back_cache_fail = true
#card_picture_loader.picture_to_load = true
#deck_loader = true
#card_database = true
#card_database.loading = true

View file

@ -8,7 +8,7 @@
#define INTERFACE_JSON_DECK_PARSER_H
#include <QJsonArray>
#include <QJsonObject>
#include <libcockatrice/deck_list/deck_loader.h>
#include <libcockatrice/models/deck_list/deck_loader.h>
class IJsonDeckParser
{

View file

@ -15,7 +15,7 @@
#include <google/protobuf/descriptor.h>
#include <libcockatrice/card/database/card_database.h>
#include <libcockatrice/card/database/card_database_manager.h>
#include <libcockatrice/deck_list/deck_loader.h>
#include <libcockatrice/models/deck_list/deck_loader.h>
#include <libcockatrice/protocol/pb/command_deck_select.pb.h>
#include <libcockatrice/protocol/pb/command_ready_start.pb.h>
#include <libcockatrice/protocol/pb/command_set_sideboard_lock.pb.h>

View file

@ -8,7 +8,7 @@
#define DECK_VIEW_CONTAINER_H
#include <QPushButton>
#include <libcockatrice/deck_list/deck_loader.h>
#include <libcockatrice/models/deck_list/deck_loader.h>
class QVBoxLayout;
class AbstractCardItem;

View file

@ -17,9 +17,9 @@
#include <QTreeView>
#include <QVBoxLayout>
#include <libcockatrice/card/database/card_database_manager.h>
#include <libcockatrice/card/database/model/card_database_model.h>
#include <libcockatrice/card/database/model/token/token_display_model.h>
#include <libcockatrice/deck_list/deck_list.h>
#include <libcockatrice/models/database/card_database_model.h>
#include <libcockatrice/models/database/token/token_display_model.h>
#include <libcockatrice/settings/cache_settings.h>
#include <libcockatrice/utility/trice_limits.h>

View file

@ -40,7 +40,7 @@ class AbstractGame;
class PendingCommand;
class Player;
inline Q_LOGGING_CATEGORY(GameEventHandlerLog, "tab_game");
inline Q_LOGGING_CATEGORY(GameEventHandlerLog, "game_event_handler");
class GameEventHandler : public QObject
{

View file

@ -14,7 +14,7 @@
#include "player_target.h"
#include <QObject>
#include <libcockatrice/deck_list/deck_loader.h>
#include <libcockatrice/models/deck_list/deck_loader.h>
#include <libcockatrice/protocol/pb/serverinfo_user.pb.h>
class PlayerInfo : public QObject

View file

@ -4,6 +4,7 @@
#include <QApplication>
#include <QDateTime>
#include <QDebug>
#include <QLocale>
#include <QSysInfo>
#include <iostream>
@ -51,7 +52,10 @@ void Logger::openLogfileSession()
}
fileHandle.setFileName(LOGGER_FILENAME);
fileHandle.open(QIODevice::WriteOnly | QIODevice::Truncate | QIODevice::Text);
if (!fileHandle.open(QIODevice::WriteOnly | QIODevice::Truncate | QIODevice::Text)) {
qWarning() << "Logger failed to open" << LOGGER_FILENAME << "for writing";
return;
}
fileStream.setDevice(&fileHandle);
#if (QT_VERSION >= QT_VERSION_CHECK(5, 14, 0))
fileStream << "Log session started at " << QDateTime::currentDateTime().toString() << Qt::endl;

View file

@ -1,12 +1,12 @@
#include "card_group_display_widget.h"
#include "../card_info_picture_with_text_overlay_widget.h"
#include "../libcockatrice_deck_list/libcockatrice/deck_list/deck_list_model.h"
#include "../libcockatrice_deck_list/libcockatrice/deck_list/deck_list_sort_filter_proxy_model.h"
#include <QResizeEvent>
#include <libcockatrice/card/card_info_comparator.h>
#include <libcockatrice/card/database/card_database_manager.h>
#include <libcockatrice/models/deck_list/deck_list_model.h>
#include <libcockatrice/models/deck_list/deck_list_sort_filter_proxy_model.h>
CardGroupDisplayWidget::CardGroupDisplayWidget(QWidget *parent,
DeckListModel *_deckListModel,

View file

@ -15,7 +15,7 @@
#include <QVBoxLayout>
#include <QWidget>
#include <libcockatrice/card/card_info.h>
#include <libcockatrice/deck_list/deck_list_model.h>
#include <libcockatrice/models/deck_list/deck_list_model.h>
class CardGroupDisplayWidget : public QWidget
{

View file

@ -1,11 +1,11 @@
#include "flat_card_group_display_widget.h"
#include "../card_info_picture_with_text_overlay_widget.h"
#include "../libcockatrice_deck_list/libcockatrice/deck_list/deck_list_model.h"
#include <QResizeEvent>
#include <libcockatrice/card/card_info_comparator.h>
#include <libcockatrice/card/database/card_database_manager.h>
#include <libcockatrice/models/deck_list/deck_list_model.h>
#include <utility>
FlatCardGroupDisplayWidget::FlatCardGroupDisplayWidget(QWidget *parent,

View file

@ -5,7 +5,7 @@
#include <QResizeEvent>
#include <libcockatrice/card/card_info_comparator.h>
#include <libcockatrice/card/database/card_database_manager.h>
#include <libcockatrice/deck_list/deck_list_model.h>
#include <libcockatrice/models/deck_list/deck_list_model.h>
OverlappedCardGroupDisplayWidget::OverlappedCardGroupDisplayWidget(QWidget *parent,
DeckListModel *_deckListModel,

View file

@ -5,7 +5,7 @@
#include <QResizeEvent>
#include <libcockatrice/card/card_info_comparator.h>
#include <libcockatrice/deck_list/deck_list_model.h>
#include <libcockatrice/models/deck_list/deck_list_model.h>
DeckCardZoneDisplayWidget::DeckCardZoneDisplayWidget(QWidget *parent,
DeckListModel *_deckListModel,

View file

@ -17,7 +17,7 @@
#include <QVBoxLayout>
#include <QWidget>
#include <libcockatrice/card/card_info.h>
#include <libcockatrice/deck_list/deck_list_model.h>
#include <libcockatrice/models/deck_list/deck_list_model.h>
class DeckCardZoneDisplayWidget : public QWidget
{

View file

@ -17,7 +17,7 @@
#include <QVBoxLayout>
#include <QWidget>
#include <libcockatrice/deck_list/deck_list.h>
#include <libcockatrice/deck_list/deck_list_model.h>
#include <libcockatrice/models/deck_list/deck_list_model.h>
class DeckAnalyticsWidget : public QWidget
{

View file

@ -8,7 +8,7 @@
#include <libcockatrice/card/database/card_database.h>
#include <libcockatrice/card/database/card_database_manager.h>
#include <libcockatrice/deck_list/deck_list.h>
#include <libcockatrice/deck_list/deck_loader.h>
#include <libcockatrice/models/deck_list/deck_loader.h>
ManaBaseWidget::ManaBaseWidget(QWidget *parent, DeckListModel *_deckListModel)
: QWidget(parent), deckListModel(_deckListModel)

View file

@ -12,7 +12,7 @@
#include <QHBoxLayout>
#include <QWidget>
#include <libcockatrice/deck_list/deck_list.h>
#include <libcockatrice/deck_list/deck_list_model.h>
#include <libcockatrice/models/deck_list/deck_list_model.h>
#include <utility>
class ManaBaseWidget : public QWidget

View file

@ -7,7 +7,7 @@
#include <libcockatrice/card/database/card_database.h>
#include <libcockatrice/card/database/card_database_manager.h>
#include <libcockatrice/deck_list/deck_list.h>
#include <libcockatrice/deck_list/deck_loader.h>
#include <libcockatrice/models/deck_list/deck_loader.h>
#include <unordered_map>
ManaCurveWidget::ManaCurveWidget(QWidget *parent, DeckListModel *_deckListModel)

View file

@ -11,7 +11,7 @@
#include <QHBoxLayout>
#include <QWidget>
#include <libcockatrice/deck_list/deck_list_model.h>
#include <libcockatrice/models/deck_list/deck_list_model.h>
#include <unordered_map>
class ManaCurveWidget : public QWidget

View file

@ -8,7 +8,7 @@
#include <libcockatrice/card/database/card_database.h>
#include <libcockatrice/card/database/card_database_manager.h>
#include <libcockatrice/deck_list/deck_list.h>
#include <libcockatrice/deck_list/deck_loader.h>
#include <libcockatrice/models/deck_list/deck_loader.h>
#include <regex>
#include <string>
#include <unordered_map>

View file

@ -12,7 +12,7 @@
#include <QHBoxLayout>
#include <QWidget>
#include <libcockatrice/deck_list/deck_list.h>
#include <libcockatrice/deck_list/deck_list_model.h>
#include <libcockatrice/models/deck_list/deck_list_model.h>
#include <utility>
class ManaDevotionWidget : public QWidget

View file

@ -9,13 +9,13 @@
#define DECK_EDITOR_DATABASE_DISPLAY_WIDGET_H
#include "../../../interface/widgets/tabs/abstract_tab_deck_editor.h"
#include "../../key_signals.h"
#include "../utility/custom_line_edit.h"
#include <QHBoxLayout>
#include <QWidget>
#include <libcockatrice/card/database/model/card_database_display_model.h>
#include <libcockatrice/card/database/model/card_database_model.h>
#include <libcockatrice/utility/key_signals.h>
#include <libcockatrice/models/database/card_database_display_model.h>
#include <libcockatrice/models/database/card_database_model.h>
class AbstractTabDeckEditor;
class DeckEditorDatabaseDisplayWidget : public QWidget

View file

@ -9,6 +9,7 @@
#define DECK_EDITOR_DECK_DOCK_WIDGET_H
#include "../../../interface/widgets/tabs/abstract_tab_deck_editor.h"
#include "../../key_signals.h"
#include "../utility/custom_line_edit.h"
#include "../visual_deck_storage/deck_preview/deck_preview_deck_tags_display_widget.h"
@ -18,7 +19,6 @@
#include <QTextEdit>
#include <QTreeView>
#include <libcockatrice/card/card_info.h>
#include <libcockatrice/utility/key_signals.h>
class DeckListModel;
class AbstractTabDeckEditor;

View file

@ -6,7 +6,7 @@
#include <QGridLayout>
#include <QMenu>
#include <QToolButton>
#include <libcockatrice/card/database/model/card_database_model.h>
#include <libcockatrice/models/database/card_database_model.h>
#include <libcockatrice/settings/cache_settings.h>
DeckEditorFilterDockWidget::DeckEditorFilterDockWidget(AbstractTabDeckEditor *parent)

View file

@ -9,10 +9,10 @@
#define DECK_EDITOR_FILTER_DOCK_WIDGET_H
#include "../../../interface/widgets/tabs/abstract_tab_deck_editor.h"
#include "../../key_signals.h"
#include <QDockWidget>
#include <QTreeView>
#include <libcockatrice/utility/key_signals.h>
class FilterTreeModel;
class AbstractTabDeckEditor;

View file

@ -19,8 +19,8 @@
#include <QVBoxLayout>
#include <libcockatrice/card/database/card_database.h>
#include <libcockatrice/card/database/card_database_manager.h>
#include <libcockatrice/card/database/model/card_database_model.h>
#include <libcockatrice/card/database/model/token/token_edit_model.h>
#include <libcockatrice/models/database/card_database_model.h>
#include <libcockatrice/models/database/token/token_edit_model.h>
#include <libcockatrice/utility/trice_limits.h>
DlgEditTokens::DlgEditTokens(QWidget *parent) : QDialog(parent), currentCard(nullptr)

View file

@ -1,6 +1,6 @@
#include "dlg_load_deck.h"
#include <libcockatrice/deck_list/deck_loader.h>
#include <libcockatrice/models/deck_list/deck_loader.h>
#include <libcockatrice/settings/cache_settings.h>
DlgLoadDeck::DlgLoadDeck(QWidget *parent) : QFileDialog(parent, tr("Load Deck"))

View file

@ -11,7 +11,7 @@
#include <QPushButton>
#include <QTextStream>
#include <QVBoxLayout>
#include <libcockatrice/deck_list/deck_loader.h>
#include <libcockatrice/models/deck_list/deck_loader.h>
#include <libcockatrice/settings/cache_settings.h>
/**

View file

@ -20,7 +20,7 @@
#include <QTreeView>
#include <algorithm>
#include <libcockatrice/card/database/card_database_manager.h>
#include <libcockatrice/card/database/model/card_set/card_sets_model.h>
#include <libcockatrice/models/database/card_set/card_sets_model.h>
#include <libcockatrice/settings/cache_settings.h>
#define SORT_RESET -1

View file

@ -16,7 +16,7 @@
#include <QVBoxLayout>
#include <algorithm>
#include <libcockatrice/card/database/card_database_manager.h>
#include <libcockatrice/deck_list/deck_loader.h>
#include <libcockatrice/models/deck_list/deck_loader.h>
#include <qdrag.h>
#include <qevent.h>

View file

@ -16,7 +16,7 @@
#include <QMap>
#include <QScrollArea>
#include <QVBoxLayout>
#include <libcockatrice/deck_list/deck_list_model.h>
#include <libcockatrice/models/deck_list/deck_list_model.h>
class SetEntryWidget; // Forward declaration

View file

@ -1,12 +1,13 @@
#include "dlg_view_log.h"
#include "../../logger.h"
#include <QClipboard>
#include <QPlainTextEdit>
#include <QPushButton>
#include <QRegularExpression>
#include <QVBoxLayout>
#include <libcockatrice/settings/cache_settings.h>
#include <libcockatrice/utility/logger.h>
DlgViewLog::DlgViewLog(QWidget *parent) : QDialog(parent)
{

View file

@ -3,7 +3,7 @@
#include "../../../layouts/flow_layout.h"
#include <QWidget>
#include <libcockatrice/deck_list/deck_list_model.h>
#include <libcockatrice/models/deck_list/deck_list_model.h>
/**
* @class OverlapWidget

View file

@ -11,8 +11,8 @@
#include <QVBoxLayout>
#include <QWidget>
#include <libcockatrice/deck_list/deck_list_model.h>
#include <libcockatrice/deck_list/deck_loader.h>
#include <libcockatrice/models/deck_list/deck_list_model.h>
#include <libcockatrice/models/deck_list/deck_loader.h>
class AllZonesCardAmountWidget : public QWidget
{

View file

@ -17,8 +17,8 @@
#include <QTreeView>
#include <QWidget>
#include <libcockatrice/card/card_info.h>
#include <libcockatrice/deck_list/deck_list_model.h>
#include <libcockatrice/deck_list/deck_loader.h>
#include <libcockatrice/models/deck_list/deck_list_model.h>
#include <libcockatrice/models/deck_list/deck_loader.h>
class CardAmountWidget : public QWidget
{

View file

@ -18,7 +18,7 @@
#include <QVBoxLayout>
#include <QWidget>
#include <libcockatrice/card/card_info.h>
#include <libcockatrice/deck_list/deck_list_model.h>
#include <libcockatrice/models/deck_list/deck_list_model.h>
#define BATCH_SIZE 10

View file

@ -14,7 +14,7 @@
#include <QPainter>
#include <QWidget>
#include <libcockatrice/card/card_info.h>
#include <libcockatrice/deck_list/deck_list_model.h>
#include <libcockatrice/models/deck_list/deck_list_model.h>
class PrintingSelectorCardDisplayWidget : public QWidget
{

View file

@ -14,7 +14,7 @@
#include "set_name_and_collectors_number_display_widget.h"
#include <libcockatrice/card/card_info.h>
#include <libcockatrice/deck_list/deck_list_model.h>
#include <libcockatrice/models/deck_list/deck_list_model.h>
class PrintingSelectorCardOverlayWidget : public QWidget
{

View file

@ -155,22 +155,13 @@ void GameSelector::actSetFilter()
if (!dlg.exec())
return;
gameListProxyModel->setHideBuddiesOnlyGames(dlg.getHideBuddiesOnlyGames());
gameListProxyModel->setHideFullGames(dlg.getHideFullGames());
gameListProxyModel->setHideGamesThatStarted(dlg.getHideGamesThatStarted());
gameListProxyModel->setHidePasswordProtectedGames(dlg.getHidePasswordProtectedGames());
gameListProxyModel->setHideIgnoredUserGames(dlg.getHideIgnoredUserGames());
gameListProxyModel->setHideNotBuddyCreatedGames(dlg.getHideNotBuddyCreatedGames());
gameListProxyModel->setHideOpenDecklistGames(dlg.getHideOpenDecklistGames());
gameListProxyModel->setGameNameFilter(dlg.getGameNameFilter());
gameListProxyModel->setCreatorNameFilter(dlg.getCreatorNameFilter());
gameListProxyModel->setGameTypeFilter(dlg.getGameTypeFilter());
gameListProxyModel->setMaxPlayersFilter(dlg.getMaxPlayersFilterMin(), dlg.getMaxPlayersFilterMax());
gameListProxyModel->setMaxGameAge(dlg.getMaxGameAge());
gameListProxyModel->setShowOnlyIfSpectatorsCanWatch(dlg.getShowOnlyIfSpectatorsCanWatch());
gameListProxyModel->setShowSpectatorPasswordProtected(dlg.getShowSpectatorPasswordProtected());
gameListProxyModel->setShowOnlyIfSpectatorsCanChat(dlg.getShowOnlyIfSpectatorsCanChat());
gameListProxyModel->setShowOnlyIfSpectatorsCanSeeHands(dlg.getShowOnlyIfSpectatorsCanSeeHands());
gameListProxyModel->setGameFilters(
dlg.getHideBuddiesOnlyGames(), dlg.getHideIgnoredUserGames(), dlg.getHideFullGames(),
dlg.getHideGamesThatStarted(), dlg.getHidePasswordProtectedGames(), dlg.getHideNotBuddyCreatedGames(),
dlg.getHideOpenDecklistGames(), dlg.getGameNameFilter(), dlg.getCreatorNameFilter(), dlg.getGameTypeFilter(),
dlg.getMaxPlayersFilterMin(), dlg.getMaxPlayersFilterMax(), dlg.getMaxGameAge(),
dlg.getShowOnlyIfSpectatorsCanWatch(), dlg.getShowSpectatorPasswordProtected(),
dlg.getShowOnlyIfSpectatorsCanChat(), dlg.getShowOnlyIfSpectatorsCanSeeHands());
gameListProxyModel->saveFilterParameters(gameTypeMap);
clearFilterButton->setEnabled(!gameListProxyModel->areFilterParametersSetToDefaults());

View file

@ -286,101 +286,49 @@ GamesProxyModel::GamesProxyModel(QObject *parent, const UserListProxy *_userList
setDynamicSortFilter(true);
}
void GamesProxyModel::setHideBuddiesOnlyGames(bool _showBuddiesOnlyGames)
{
hideBuddiesOnlyGames = _showBuddiesOnlyGames;
invalidateFilter();
}
void GamesProxyModel::setHideIgnoredUserGames(bool _hideIgnoredUserGames)
void GamesProxyModel::setGameFilters(bool _hideBuddiesOnlyGames,
bool _hideIgnoredUserGames,
bool _hideFullGames,
bool _hideGamesThatStarted,
bool _hidePasswordProtectedGames,
bool _hideNotBuddyCreatedGames,
bool _hideOpenDecklistGames,
const QString &_gameNameFilter,
const QString &_creatorNameFilter,
const QSet<int> &_gameTypeFilter,
int _maxPlayersFilterMin,
int _maxPlayersFilterMax,
const QTime &_maxGameAge,
bool _showOnlyIfSpectatorsCanWatch,
bool _showSpectatorPasswordProtected,
bool _showOnlyIfSpectatorsCanChat,
bool _showOnlyIfSpectatorsCanSeeHands)
{
#if (QT_VERSION >= QT_VERSION_CHECK(6, 9, 0))
beginFilterChange();
#endif
hideBuddiesOnlyGames = _hideBuddiesOnlyGames;
hideIgnoredUserGames = _hideIgnoredUserGames;
invalidateFilter();
}
void GamesProxyModel::setHideFullGames(bool _showFullGames)
{
hideFullGames = _showFullGames;
invalidateFilter();
}
void GamesProxyModel::setHideGamesThatStarted(bool _showGamesThatStarted)
{
hideGamesThatStarted = _showGamesThatStarted;
invalidateFilter();
}
void GamesProxyModel::setHidePasswordProtectedGames(bool _showPasswordProtectedGames)
{
hidePasswordProtectedGames = _showPasswordProtectedGames;
invalidateFilter();
}
void GamesProxyModel::setHideNotBuddyCreatedGames(bool value)
{
hideNotBuddyCreatedGames = value;
invalidateFilter();
}
void GamesProxyModel::setHideOpenDecklistGames(bool _hideOpenDecklistGames)
{
hideFullGames = _hideFullGames;
hideGamesThatStarted = _hideGamesThatStarted;
hidePasswordProtectedGames = _hidePasswordProtectedGames;
hideNotBuddyCreatedGames = _hideNotBuddyCreatedGames;
hideOpenDecklistGames = _hideOpenDecklistGames;
invalidateFilter();
}
void GamesProxyModel::setGameNameFilter(const QString &_gameNameFilter)
{
gameNameFilter = _gameNameFilter;
invalidateFilter();
}
void GamesProxyModel::setCreatorNameFilter(const QString &_creatorNameFilter)
{
creatorNameFilter = _creatorNameFilter;
invalidateFilter();
}
void GamesProxyModel::setGameTypeFilter(const QSet<int> &_gameTypeFilter)
{
gameTypeFilter = _gameTypeFilter;
invalidateFilter();
}
void GamesProxyModel::setMaxPlayersFilter(int _maxPlayersFilterMin, int _maxPlayersFilterMax)
{
maxPlayersFilterMin = _maxPlayersFilterMin;
maxPlayersFilterMax = _maxPlayersFilterMax;
invalidateFilter();
}
void GamesProxyModel::setMaxGameAge(const QTime &_maxGameAge)
{
maxGameAge = _maxGameAge;
invalidateFilter();
}
void GamesProxyModel::setShowOnlyIfSpectatorsCanWatch(bool _showOnlyIfSpectatorsCanWatch)
{
showOnlyIfSpectatorsCanWatch = _showOnlyIfSpectatorsCanWatch;
invalidateFilter();
}
void GamesProxyModel::setShowSpectatorPasswordProtected(bool _showSpectatorPasswordProtected)
{
showSpectatorPasswordProtected = _showSpectatorPasswordProtected;
invalidateFilter();
}
void GamesProxyModel::setShowOnlyIfSpectatorsCanChat(bool _showOnlyIfSpectatorsCanChat)
{
showOnlyIfSpectatorsCanChat = _showOnlyIfSpectatorsCanChat;
invalidateFilter();
}
void GamesProxyModel::setShowOnlyIfSpectatorsCanSeeHands(bool _showOnlyIfSpectatorsCanSeeHands)
{
showOnlyIfSpectatorsCanSeeHands = _showOnlyIfSpectatorsCanSeeHands;
#if (QT_VERSION >= QT_VERSION_CHECK(6, 10, 0))
endFilterChange(QSortFilterProxyModel::Direction::Rows);
#else
invalidateFilter();
#endif
}
int GamesProxyModel::getNumFilteredGames() const
@ -400,25 +348,8 @@ int GamesProxyModel::getNumFilteredGames() const
void GamesProxyModel::resetFilterParameters()
{
hideFullGames = false;
hideGamesThatStarted = false;
hidePasswordProtectedGames = false;
hideBuddiesOnlyGames = false;
hideIgnoredUserGames = false;
hideNotBuddyCreatedGames = false;
hideOpenDecklistGames = false;
gameNameFilter = QString();
creatorNameFilter = QString();
gameTypeFilter.clear();
maxPlayersFilterMin = DEFAULT_MAX_PLAYERS_MIN;
maxPlayersFilterMax = DEFAULT_MAX_PLAYERS_MAX;
maxGameAge = DEFAULT_MAX_GAME_AGE;
showOnlyIfSpectatorsCanWatch = false;
showSpectatorPasswordProtected = false;
showOnlyIfSpectatorsCanChat = false;
showOnlyIfSpectatorsCanSeeHands = false;
invalidateFilter();
setGameFilters(false, false, false, false, false, false, false, QString(), QString(), {}, DEFAULT_MAX_PLAYERS_MIN,
DEFAULT_MAX_PLAYERS_MAX, DEFAULT_MAX_GAME_AGE, false, false, false, false);
}
bool GamesProxyModel::areFilterParametersSetToDefaults() const
@ -434,32 +365,24 @@ bool GamesProxyModel::areFilterParametersSetToDefaults() const
void GamesProxyModel::loadFilterParameters(const QMap<int, QString> &allGameTypes)
{
GameFiltersSettings &gameFilters = SettingsCache::instance().gameFilters();
hideFullGames = gameFilters.isHideFullGames();
hideGamesThatStarted = gameFilters.isHideGamesThatStarted();
hidePasswordProtectedGames = gameFilters.isHidePasswordProtectedGames();
hideIgnoredUserGames = gameFilters.isHideIgnoredUserGames();
hideBuddiesOnlyGames = gameFilters.isHideBuddiesOnlyGames();
hideNotBuddyCreatedGames = gameFilters.isHideNotBuddyCreatedGames();
hideOpenDecklistGames = gameFilters.isHideOpenDecklistGames();
gameNameFilter = gameFilters.getGameNameFilter();
creatorNameFilter = gameFilters.getCreatorNameFilter();
maxPlayersFilterMin = gameFilters.getMinPlayers();
maxPlayersFilterMax = gameFilters.getMaxPlayers();
maxGameAge = gameFilters.getMaxGameAge();
showOnlyIfSpectatorsCanWatch = gameFilters.isShowOnlyIfSpectatorsCanWatch();
showSpectatorPasswordProtected = gameFilters.isShowSpectatorPasswordProtected();
showOnlyIfSpectatorsCanChat = gameFilters.isShowOnlyIfSpectatorsCanChat();
showOnlyIfSpectatorsCanSeeHands = gameFilters.isShowOnlyIfSpectatorsCanSeeHands();
QSet<int> newGameTypeFilter;
QMapIterator<int, QString> gameTypesIterator(allGameTypes);
while (gameTypesIterator.hasNext()) {
gameTypesIterator.next();
if (gameFilters.isGameTypeEnabled(gameTypesIterator.value())) {
gameTypeFilter.insert(gameTypesIterator.key());
newGameTypeFilter.insert(gameTypesIterator.key());
}
}
invalidateFilter();
setGameFilters(gameFilters.isHideBuddiesOnlyGames(), gameFilters.isHideIgnoredUserGames(),
gameFilters.isHideFullGames(), gameFilters.isHideGamesThatStarted(),
gameFilters.isHidePasswordProtectedGames(), gameFilters.isHideNotBuddyCreatedGames(),
gameFilters.isHideOpenDecklistGames(), gameFilters.getGameNameFilter(),
gameFilters.getCreatorNameFilter(), newGameTypeFilter, gameFilters.getMinPlayers(),
gameFilters.getMaxPlayers(), gameFilters.getMaxGameAge(),
gameFilters.isShowOnlyIfSpectatorsCanWatch(), gameFilters.isShowSpectatorPasswordProtected(),
gameFilters.isShowOnlyIfSpectatorsCanChat(), gameFilters.isShowOnlyIfSpectatorsCanSeeHands());
}
void GamesProxyModel::saveFilterParameters(const QMap<int, QString> &allGameTypes)
@ -577,5 +500,9 @@ bool GamesProxyModel::filterAcceptsRow(int sourceRow) const
void GamesProxyModel::refresh()
{
#if (QT_VERSION >= QT_VERSION_CHECK(6, 10, 0))
endFilterChange(QSortFilterProxyModel::Direction::Rows);
#else
invalidateFilter();
#endif
}

View file

@ -102,52 +102,42 @@ public:
{
return hideBuddiesOnlyGames;
}
void setHideBuddiesOnlyGames(bool _showBuddiesOnlyGames);
bool getHideIgnoredUserGames() const
{
return hideIgnoredUserGames;
}
void setHideIgnoredUserGames(bool _hideIgnoredUserGames);
bool getHideFullGames() const
{
return hideFullGames;
}
void setHideFullGames(bool _showFullGames);
bool getHideGamesThatStarted() const
{
return hideGamesThatStarted;
}
void setHideGamesThatStarted(bool _showGamesThatStarted);
bool getHidePasswordProtectedGames() const
{
return hidePasswordProtectedGames;
}
void setHidePasswordProtectedGames(bool _showPasswordProtectedGames);
bool getHideNotBuddyCreatedGames() const
{
return hideNotBuddyCreatedGames;
}
void setHideNotBuddyCreatedGames(bool value);
bool getHideOpenDecklistGames() const
{
return hideOpenDecklistGames;
}
void setHideOpenDecklistGames(bool _hideOpenDecklistGames);
QString getGameNameFilter() const
{
return gameNameFilter;
}
void setGameNameFilter(const QString &_gameNameFilter);
QString getCreatorNameFilter() const
{
return creatorNameFilter;
}
void setCreatorNameFilter(const QString &_creatorNameFilter);
QSet<int> getGameTypeFilter() const
{
return gameTypeFilter;
}
void setGameTypeFilter(const QSet<int> &_gameTypeFilter);
int getMaxPlayersFilterMin() const
{
return maxPlayersFilterMin;
@ -156,32 +146,43 @@ public:
{
return maxPlayersFilterMax;
}
void setMaxPlayersFilter(int _maxPlayersFilterMin, int _maxPlayersFilterMax);
const QTime &getMaxGameAge() const
{
return maxGameAge;
}
void setMaxGameAge(const QTime &_maxGameAge);
bool getShowOnlyIfSpectatorsCanWatch() const
{
return showOnlyIfSpectatorsCanWatch;
}
void setShowOnlyIfSpectatorsCanWatch(bool _showOnlyIfSpectatorsCanWatch);
bool getShowSpectatorPasswordProtected() const
{
return showSpectatorPasswordProtected;
}
void setShowSpectatorPasswordProtected(bool _showSpectatorPasswordProtected);
bool getShowOnlyIfSpectatorsCanChat() const
{
return showOnlyIfSpectatorsCanChat;
}
void setShowOnlyIfSpectatorsCanChat(bool _showOnlyIfSpectatorsCanChat);
bool getShowOnlyIfSpectatorsCanSeeHands() const
{
return showOnlyIfSpectatorsCanSeeHands;
}
void setShowOnlyIfSpectatorsCanSeeHands(bool _showOnlyIfSpectatorsCanSeeHands);
void setGameFilters(bool _hideBuddiesOnlyGames,
bool _hideIgnoredUserGames,
bool _hideFullGames,
bool _hideGamesThatStarted,
bool _hidePasswordProtectedGames,
bool _hideNotBuddyCreatedGames,
bool _hideOpenDecklistGames,
const QString &_gameNameFilter,
const QString &_creatorNameFilter,
const QSet<int> &_gameTypeFilter,
int _maxPlayersFilterMin,
int _maxPlayersFilterMax,
const QTime &_maxGameAge,
bool _showOnlyIfSpectatorsCanWatch,
bool _showSpectatorPasswordProtected,
bool _showOnlyIfSpectatorsCanChat,
bool _showOnlyIfSpectatorsCanSeeHands);
int getNumFilteredGames() const;
void resetFilterParameters();

View file

@ -32,7 +32,7 @@
#include <QTreeView>
#include <QUrl>
#include <libcockatrice/card/database/card_database_manager.h>
#include <libcockatrice/card/database/model/card_database_model.h>
#include <libcockatrice/models/database/card_database_model.h>
#include <libcockatrice/network/client/abstract/abstract_client.h>
#include <libcockatrice/protocol/pb/command_deck_upload.pb.h>
#include <libcockatrice/protocol/pb/response.pb.h>

View file

@ -5,7 +5,7 @@
#include <QJsonArray>
#include <QJsonObject>
#include <QMainWindow>
#include <libcockatrice/deck_list/deck_loader.h>
#include <libcockatrice/models/deck_list/deck_loader.h>
void EdhrecDeckApiResponse::fromJson(const QJsonArray &json)
{

View file

@ -12,7 +12,7 @@
#include <QJsonObject>
#include <QString>
#include <QVector>
#include <libcockatrice/deck_list/deck_loader.h>
#include <libcockatrice/models/deck_list/deck_loader.h>
class EdhrecDeckApiResponse
{

View file

@ -23,8 +23,8 @@
#include <QRegularExpression>
#include <QResizeEvent>
#include <libcockatrice/card/database/card_database_manager.h>
#include <libcockatrice/card/database/model/card/card_completer_proxy_model.h>
#include <libcockatrice/card/database/model/card/card_search_model.h>
#include <libcockatrice/models/database/card/card_completer_proxy_model.h>
#include <libcockatrice/models/database/card/card_search_model.h>
static bool canBeCommander(const CardInfoPtr &cardInfo)
{

View file

@ -33,7 +33,7 @@
#include <QTreeView>
#include <QVBoxLayout>
#include <libcockatrice/card/database/card_database_manager.h>
#include <libcockatrice/card/database/model/card_database_model.h>
#include <libcockatrice/models/database/card_database_model.h>
#include <libcockatrice/network/client/abstract/abstract_client.h>
#include <libcockatrice/protocol/pending_command.h>
#include <libcockatrice/settings/cache_settings.h>

View file

@ -1,11 +1,11 @@
#ifndef WINDOW_DECKEDITOR_H
#define WINDOW_DECKEDITOR_H
#include "../../key_signals.h"
#include "../interface/widgets/visual_deck_storage/deck_preview/deck_preview_deck_tags_display_widget.h"
#include "abstract_tab_deck_editor.h"
#include <libcockatrice/card/card_info.h>
#include <libcockatrice/utility/key_signals.h>
class CardDatabaseModel;
class CardDatabaseDisplayModel;

View file

@ -18,7 +18,7 @@
#include <QUrl>
#include <QVBoxLayout>
#include <libcockatrice/deck_list/deck_list.h>
#include <libcockatrice/deck_list/deck_loader.h>
#include <libcockatrice/models/deck_list/deck_loader.h>
#include <libcockatrice/protocol/pb/command_deck_del.pb.h>
#include <libcockatrice/protocol/pb/command_deck_del_dir.pb.h>
#include <libcockatrice/protocol/pb/command_deck_download.pb.h>

View file

@ -440,7 +440,10 @@ void TabReplays::downloadFinished(const Response &r,
const std::string &_data = resp.replay_data();
QFile f(filePath);
f.open(QIODevice::WriteOnly);
if (!f.open(QIODevice::WriteOnly)) {
qWarning() << "failed to open" << filePath << "for writing after downloading replay";
return;
}
f.write((const char *)_data.data(), _data.size());
f.close();
}

View file

@ -23,7 +23,7 @@
#include <QMap>
#include <QProxyStyle>
#include <QTabWidget>
#include <libcockatrice/deck_list/deck_loader.h>
#include <libcockatrice/models/deck_list/deck_loader.h>
inline Q_LOGGING_CATEGORY(TabSupervisorLog, "tab_supervisor");

View file

@ -27,8 +27,8 @@
#include <QTimer>
#include <QTreeView>
#include <QVBoxLayout>
#include <libcockatrice/card/database/model/card_database_model.h>
#include <libcockatrice/deck_list/deck_list_model.h>
#include <libcockatrice/models/database/card_database_model.h>
#include <libcockatrice/models/deck_list/deck_list_model.h>
#include <libcockatrice/protocol/pb/command_deck_upload.pb.h>
#include <libcockatrice/protocol/pending_command.h>
#include <libcockatrice/settings/cache_settings.h>

View file

@ -6,7 +6,7 @@
#include <QMessageBox>
#include <QMouseEvent>
#include <libcockatrice/card/database/model/card_database_model.h>
#include <libcockatrice/models/database/card_database_model.h>
#include <libcockatrice/protocol/pb/command_deck_del.pb.h>
TabDeckStorageVisual::TabDeckStorageVisual(TabSupervisor *_tabSupervisor)

View file

@ -9,6 +9,7 @@
#include "../../../filters/filter_tree_model.h"
#include "../../../interface/widgets/tabs/abstract_tab_deck_editor.h"
#include "../../key_signals.h"
#include "../../layouts/flow_layout.h"
#include "../cards/card_info_picture_with_text_overlay_widget.h"
#include "../cards/card_size_widget.h"
@ -28,9 +29,8 @@
#include <QWheelEvent>
#include <QWidget>
#include <libcockatrice/card/database/card_database.h>
#include <libcockatrice/card/database/model/card_database_model.h>
#include <libcockatrice/deck_list/deck_list_model.h>
#include <libcockatrice/utility/key_signals.h>
#include <libcockatrice/models/database/card_database_model.h>
#include <libcockatrice/models/deck_list/deck_list_model.h>
#include <qscrollarea.h>
inline Q_LOGGING_CATEGORY(VisualDatabaseDisplayLog, "visual_database_display");

View file

@ -3,7 +3,7 @@
#include "../cards/card_info_picture_widget.h"
#include <libcockatrice/card/database/card_database_manager.h>
#include <libcockatrice/deck_list/deck_loader.h>
#include <libcockatrice/models/deck_list/deck_loader.h>
#include <libcockatrice/settings/cache_settings.h>
#include <random>

View file

@ -13,7 +13,7 @@
#include <QPushButton>
#include <QSpinBox>
#include <QWidget>
#include <libcockatrice/deck_list/deck_list_model.h>
#include <libcockatrice/models/deck_list/deck_list_model.h>
class VisualDeckEditorSampleHandWidget : public QWidget
{

View file

@ -16,11 +16,11 @@
#include <libcockatrice/card/card_info_comparator.h>
#include <libcockatrice/card/database/card_database.h>
#include <libcockatrice/card/database/card_database_manager.h>
#include <libcockatrice/card/database/model/card/card_completer_proxy_model.h>
#include <libcockatrice/card/database/model/card/card_search_model.h>
#include <libcockatrice/card/database/model/card_database_model.h>
#include <libcockatrice/deck_list/deck_list_model.h>
#include <libcockatrice/deck_list/deck_loader.h>
#include <libcockatrice/models/database/card/card_completer_proxy_model.h>
#include <libcockatrice/models/database/card/card_search_model.h>
#include <libcockatrice/models/database/card_database_model.h>
#include <libcockatrice/models/deck_list/deck_list_model.h>
#include <libcockatrice/models/deck_list/deck_loader.h>
#include <qscrollarea.h>
VisualDeckEditorWidget::VisualDeckEditorWidget(QWidget *parent, DeckListModel *_deckListModel)

View file

@ -18,10 +18,10 @@
#include <QPushButton>
#include <QWidget>
#include <libcockatrice/card/database/card_database.h>
#include <libcockatrice/card/database/model/card/card_completer_proxy_model.h>
#include <libcockatrice/card/database/model/card_database_display_model.h>
#include <libcockatrice/card/database/model/card_database_model.h>
#include <libcockatrice/deck_list/deck_list_model.h>
#include <libcockatrice/models/database/card/card_completer_proxy_model.h>
#include <libcockatrice/models/database/card_database_display_model.h>
#include <libcockatrice/models/database/card_database_model.h>
#include <libcockatrice/models/deck_list/deck_list_model.h>
#include <qscrollarea.h>
class DeckCardZoneDisplayWidget;

View file

@ -10,7 +10,7 @@
#include "deck_preview_widget.h"
#include <QWidget>
#include <libcockatrice/deck_list/deck_loader.h>
#include <libcockatrice/models/deck_list/deck_loader.h>
inline bool confirmOverwriteIfExists(QWidget *parent, const QString &filePath);

View file

@ -18,7 +18,7 @@
#include <QEvent>
#include <QVBoxLayout>
#include <QWidget>
#include <libcockatrice/deck_list/deck_loader.h>
#include <libcockatrice/models/deck_list/deck_loader.h>
class QMenu;
class VisualDeckStorageWidget;

View file

@ -20,7 +20,7 @@
#include <QCheckBox>
#include <QFileSystemModel>
#include <libcockatrice/deck_list/deck_list_model.h>
#include <libcockatrice/models/deck_list/deck_list_model.h>
class QSpinBox;
class VisualDeckStorageSearchWidget;

View file

@ -36,6 +36,7 @@
#include "../interface/widgets/tabs/tab_game.h"
#include "../interface/widgets/tabs/tab_supervisor.h"
#include "../main.h"
#include "logger.h"
#include "version_string.h"
#include "widgets/utility/get_text_with_max.h"
@ -71,7 +72,6 @@
#include <libcockatrice/protocol/pb/game_replay.pb.h>
#include <libcockatrice/protocol/pb/room_commands.pb.h>
#include <libcockatrice/settings/cache_settings.h>
#include <libcockatrice/utility/logger.h>
#define GITHUB_PAGES_URL "https://cockatrice.github.io"
#define GITHUB_CONTRIBUTORS_URL "https://github.com/Cockatrice/Cockatrice/graphs/contributors?type=c"

View file

@ -23,6 +23,7 @@
#include "QtNetwork/QNetworkInterface"
#include "client/network/update/card_spoiler/spoiler_background_updater.h"
#include "client/sound_engine.h"
#include "interface/logger.h"
#include "interface/pixel_map_generator.h"
#include "interface/theme_manager.h"
#include "interface/widgets/dialogs/dlg_settings.h"
@ -44,7 +45,6 @@
#include <libcockatrice/protocol/featureset.h>
#include <libcockatrice/rng/rng_sfmt.h>
#include <libcockatrice/settings/cache_settings.h>
#include <libcockatrice/utility/logger.h>
QTranslator *translator, *qtTranslator;
RNG_Abstract *rng;

View file

@ -9,13 +9,6 @@ set(HEADERS
libcockatrice/card/database/card_database_loader.h
libcockatrice/card/database/card_database_manager.h
libcockatrice/card/database/card_database_querier.h
libcockatrice/card/database/model/card_database_model.h
libcockatrice/card/database/model/card_database_display_model.h
libcockatrice/card/database/model/card/card_completer_proxy_model.h
libcockatrice/card/database/model/card/card_search_model.h
libcockatrice/card/database/model/card_set/card_sets_model.h
libcockatrice/card/database/model/token/token_display_model.h
libcockatrice/card/database/model/token/token_edit_model.h
libcockatrice/card/database/parser/card_database_parser.h
libcockatrice/card/database/parser/cockatrice_xml_3.h
libcockatrice/card/database/parser/cockatrice_xml_4.h
@ -40,13 +33,6 @@ add_library(
libcockatrice/card/database/card_database_loader.cpp
libcockatrice/card/database/card_database_manager.cpp
libcockatrice/card/database/card_database_querier.cpp
libcockatrice/card/database/model/card/card_completer_proxy_model.cpp
libcockatrice/card/database/model/card/card_search_model.cpp
libcockatrice/card/database/model/card_set/card_sets_model.cpp
libcockatrice/card/database/model/card_database_display_model.cpp
libcockatrice/card/database/model/card_database_model.cpp
libcockatrice/card/database/model/token/token_display_model.cpp
libcockatrice/card/database/model/token/token_edit_model.cpp
libcockatrice/card/database/parser/card_database_parser.cpp
libcockatrice/card/database/parser/cockatrice_xml_3.cpp
libcockatrice/card/database/parser/cockatrice_xml_4.cpp
@ -66,5 +52,5 @@ target_include_directories(
target_link_libraries(
libcockatrice_card
PUBLIC libcockatrice_settings
PUBLIC ${COCKATRICE_QT_MODULES}
PUBLIC ${QT_CORE_MODULE}
)

View file

@ -36,8 +36,7 @@ CardDatabaseLoader::~CardDatabaseLoader()
LoadStatus CardDatabaseLoader::loadFromFile(const QString &fileName)
{
QFile file(fileName);
file.open(QIODevice::ReadOnly);
if (!file.isOpen()) {
if (!file.open(QIODevice::ReadOnly)) {
return FileError;
}
@ -150,4 +149,4 @@ bool CardDatabaseLoader::saveCustomTokensToFile()
availableParsers.first()->saveToFile(tmpSets, tmpCards, fileName);
return true;
}
}

View file

@ -3,13 +3,8 @@ set(CMAKE_AUTOUIC ON)
set(CMAKE_AUTORCC ON)
set(HEADERS
libcockatrice/deck_list/abstract_deck_list_card_node.h
libcockatrice/deck_list/abstract_deck_list_node.h
libcockatrice/deck_list/deck_list.h
libcockatrice/deck_list/deck_list_card_node.h
libcockatrice/deck_list/deck_list_model.h
libcockatrice/deck_list/deck_list_sort_filter_proxy_model.h
libcockatrice/deck_list/deck_loader.h
libcockatrice/deck_list/abstract_deck_list_card_node.h libcockatrice/deck_list/abstract_deck_list_node.h
libcockatrice/deck_list/deck_list.h libcockatrice/deck_list/deck_list_card_node.h
libcockatrice/deck_list/inner_deck_list_node.h
)
@ -21,22 +16,13 @@ endif()
add_library(
libcockatrice_deck_list STATIC
${MOC_SOURCES}
libcockatrice/deck_list/abstract_deck_list_card_node.cpp
libcockatrice/deck_list/abstract_deck_list_node.cpp
libcockatrice/deck_list/deck_list.cpp
libcockatrice/deck_list/deck_list_card_node.cpp
libcockatrice/deck_list/deck_list_model.cpp
libcockatrice/deck_list/deck_list_sort_filter_proxy_model.cpp
libcockatrice/deck_list/deck_loader.cpp
libcockatrice/deck_list/inner_deck_list_node.cpp
${MOC_SOURCES} libcockatrice/deck_list/abstract_deck_list_card_node.cpp
libcockatrice/deck_list/abstract_deck_list_node.cpp libcockatrice/deck_list/deck_list.cpp
libcockatrice/deck_list/deck_list_card_node.cpp libcockatrice/deck_list/inner_deck_list_node.cpp
)
add_dependencies(libcockatrice_deck_list libcockatrice_protocol)
target_include_directories(libcockatrice_deck_list PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})
target_link_libraries(
libcockatrice_deck_list PUBLIC libcockatrice_protocol libcockatrice_card libcockatrice_utility
${COCKATRICE_QT_MODULES}
)
target_link_libraries(libcockatrice_deck_list PUBLIC libcockatrice_protocol libcockatrice_utility ${QT_CORE_MODULE})

View file

@ -0,0 +1,41 @@
set(CMAKE_AUTOMOC ON)
set(CMAKE_AUTOUIC ON)
set(CMAKE_AUTORCC ON)
set(HEADERS
libcockatrice/models/database/card_database_model.h
libcockatrice/models/database/card_database_display_model.h
libcockatrice/models/database/card/card_completer_proxy_model.h
libcockatrice/models/database/card/card_search_model.h
libcockatrice/models/database/card_set/card_sets_model.h
libcockatrice/models/database/token/token_display_model.h
libcockatrice/models/database/token/token_edit_model.h
libcockatrice/models/deck_list/deck_list_model.h
libcockatrice/models/deck_list/deck_list_sort_filter_proxy_model.h
libcockatrice/models/deck_list/deck_loader.h
)
if(Qt6_FOUND)
qt6_wrap_cpp(MOC_SOURCES ${HEADERS})
elseif(Qt5_FOUND)
qt5_wrap_cpp(MOC_SOURCES ${HEADERS})
endif()
add_library(
libcockatrice_models STATIC
${MOC_SOURCES}
libcockatrice/models/database/card_database_model.cpp
libcockatrice/models/database/card_database_display_model.cpp
libcockatrice/models/database/card/card_completer_proxy_model.cpp
libcockatrice/models/database/card/card_search_model.cpp
libcockatrice/models/database/card_set/card_sets_model.cpp
libcockatrice/models/database/token/token_display_model.cpp
libcockatrice/models/database/token/token_edit_model.cpp
libcockatrice/models/deck_list/deck_list_model.cpp
libcockatrice/models/deck_list/deck_list_sort_filter_proxy_model.cpp
libcockatrice/models/deck_list/deck_loader.cpp
)
target_include_directories(libcockatrice_models PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})
target_link_libraries(libcockatrice_models PUBLIC libcockatrice_card libcockatrice_deck_list ${COCKATRICE_QT_MODULES})

View file

@ -184,13 +184,20 @@ bool CardDatabaseDisplayModel::rowMatchesCardName(CardInfoPtr info) const
void CardDatabaseDisplayModel::clearFilterAll()
{
#if (QT_VERSION >= QT_VERSION_CHECK(6, 9, 0))
beginFilterChange();
#endif
cardName.clear();
cardText.clear();
cardTypes.clear();
cardColors.clear();
if (filterTree != nullptr)
filterTree->clear();
#if (QT_VERSION >= QT_VERSION_CHECK(6, 10, 0))
endFilterChange(QSortFilterProxyModel::Direction::Rows);
#else
invalidateFilter();
#endif
}
void CardDatabaseDisplayModel::setFilterTree(FilterTree *_filterTree)
@ -217,4 +224,4 @@ const QString CardDatabaseDisplayModel::sanitizeCardName(const QString &dirtyNam
}
}
return QString::fromStdWString(toReturn);
}
}

View file

@ -1,8 +1,7 @@
#include "card_database_model.h"
#include "../card_database.h"
#include <QMap>
#include <libcockatrice/card/database/card_database.h>
#define CARDDBMODEL_COLUMNS 6

View file

@ -7,11 +7,10 @@
#ifndef CARDDATABASEMODEL_H
#define CARDDATABASEMODEL_H
#include "../card_database.h"
#include <QAbstractListModel>
#include <QList>
#include <QSet>
#include <libcockatrice/card/database/card_database.h>
class CardDatabaseModel : public QAbstractListModel
{

View file

@ -1,9 +1,10 @@
#include "../token/token_edit_model.h"
#include "token_edit_model.h"
#include "../../../card_info.h"
#include "../card_database_display_model.h"
#include "../card_database_model.h"
#include <libcockatrice/card/card_info.h>
TokenEditModel::TokenEditModel(QObject *parent) : CardDatabaseDisplayModel(parent)
{
}

View file

@ -17,9 +17,7 @@ target_sources(libcockatrice_protocol PRIVATE ${SOURCES} ${HEADERS})
add_dependencies(libcockatrice_protocol libcockatrice_protocol_pb)
# Link the actual generated protobuf library
target_link_libraries(
libcockatrice_protocol PUBLIC ${COCKATRICE_QT_MODULES} libcockatrice_protocol_pb libcockatrice_utility
)
target_link_libraries(libcockatrice_protocol PUBLIC ${QT_CORE_MODULE} libcockatrice_protocol_pb libcockatrice_utility)
# Expose include paths
target_include_directories(

View file

@ -17,4 +17,4 @@ add_library(
target_include_directories(libcockatrice_rng PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})
target_link_libraries(libcockatrice_rng PUBLIC ${COCKATRICE_QT_MODULES})
target_link_libraries(libcockatrice_rng PUBLIC ${QT_CORE_MODULE})

View file

@ -22,7 +22,6 @@ public:
bool isHidePasswordProtectedGames();
bool isHideIgnoredUserGames();
bool isHideNotBuddyCreatedGames();
void setHideOpenDecklistGames(bool hide);
bool isHideOpenDecklistGames();
QString getGameNameFilter();
QString getCreatorNameFilter();
@ -37,6 +36,7 @@ public:
void setHideBuddiesOnlyGames(bool hide);
void setHideIgnoredUserGames(bool hide);
void setHideOpenDecklistGames(bool hide);
void setHideFullGames(bool hide);
void setHideGamesThatStarted(bool hide);
void setHidePasswordProtectedGames(bool hide);
@ -52,9 +52,6 @@ public:
void setShowSpectatorPasswordProtected(bool show);
void setShowOnlyIfSpectatorsCanChat(bool show);
void setShowOnlyIfSpectatorsCanSeeHands(bool show);
signals:
public slots:
private:
explicit GameFiltersSettings(const QString &settingPath, QObject *parent = nullptr);

View file

@ -5,27 +5,20 @@ set(CMAKE_AUTOMOC ON)
set(CMAKE_AUTOUIC ON)
set(CMAKE_AUTORCC ON)
set(UTILITY_SOURCES
libcockatrice/utility/expression.cpp libcockatrice/utility/key_signals.cpp libcockatrice/utility/levenshtein.cpp
libcockatrice/utility/logger.cpp libcockatrice/utility/passwordhasher.cpp
set(UTILITY_SOURCES libcockatrice/utility/expression.cpp libcockatrice/utility/levenshtein.cpp
libcockatrice/utility/passwordhasher.cpp
)
set(UTILITY_HEADERS
libcockatrice/utility/color.h
libcockatrice/utility/expression.h
libcockatrice/utility/key_signals.h
libcockatrice/utility/levenshtein.h
libcockatrice/utility/logger.h
libcockatrice/utility/macros.h
libcockatrice/utility/passwordhasher.h
libcockatrice/utility/trice_limits.h
libcockatrice/utility/color.h libcockatrice/utility/expression.h libcockatrice/utility/levenshtein.h
libcockatrice/utility/macros.h libcockatrice/utility/passwordhasher.h libcockatrice/utility/trice_limits.h
)
add_library(libcockatrice_utility STATIC ${UTILITY_SOURCES} ${UTILITY_HEADERS})
target_include_directories(libcockatrice_utility PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})
target_link_libraries(libcockatrice_utility PUBLIC libcockatrice_rng ${COCKATRICE_QT_MODULES})
target_link_libraries(libcockatrice_utility PUBLIC libcockatrice_rng ${QT_CORE_MODULE})
set(ORACLE_LIBS)

View file

@ -1,10 +0,0 @@
#!/bin/bash
SRC_DIR=../../common/pb/
DST_DIR=./pypb
rm -rf "$DST_DIR"
mkdir -p "$DST_DIR"
protoc -I=$SRC_DIR --python_out=$DST_DIR $SRC_DIR/*.proto
touch "$DST_DIR/__init__.py"