mirror of
https://github.com/Cockatrice/Cockatrice.git
synced 2026-07-01 11:03:54 -07:00
Bump minimum Qt version from 5.8 to 5.15 (#6442)
* Bump minimum Qt version from 5.8 to 5.15 * remove version check * remove version checks
This commit is contained in:
parent
521046fb09
commit
70f9982c29
31 changed files with 5 additions and 156 deletions
|
|
@ -59,7 +59,7 @@ if(Qt6_FOUND)
|
||||||
endif()
|
endif()
|
||||||
else()
|
else()
|
||||||
find_package(
|
find_package(
|
||||||
Qt5 5.8.0
|
Qt5 5.15.2
|
||||||
COMPONENTS ${REQUIRED_QT_COMPONENTS}
|
COMPONENTS ${REQUIRED_QT_COMPONENTS}
|
||||||
QUIET HINTS ${Qt5_DIR}
|
QUIET HINTS ${Qt5_DIR}
|
||||||
)
|
)
|
||||||
|
|
|
||||||
|
|
@ -150,12 +150,7 @@ void ShortcutTreeView::currentChanged(const QModelIndex ¤t, const QModelIn
|
||||||
*/
|
*/
|
||||||
void ShortcutTreeView::updateSearchString(const QString &searchString)
|
void ShortcutTreeView::updateSearchString(const QString &searchString)
|
||||||
{
|
{
|
||||||
#if QT_VERSION > QT_VERSION_CHECK(5, 14, 0)
|
QStringList searchWords = searchString.split(" ", Qt::SkipEmptyParts);
|
||||||
const auto skipEmptyParts = Qt::SkipEmptyParts;
|
|
||||||
#else
|
|
||||||
const auto skipEmptyParts = QString::SkipEmptyParts;
|
|
||||||
#endif
|
|
||||||
QStringList searchWords = searchString.split(" ", skipEmptyParts);
|
|
||||||
|
|
||||||
auto escapeRegex = [](const QString &s) { return QRegularExpression::escape(s); };
|
auto escapeRegex = [](const QString &s) { return QRegularExpression::escape(s); };
|
||||||
std::transform(searchWords.begin(), searchWords.end(), searchWords.begin(), escapeRegex);
|
std::transform(searchWords.begin(), searchWords.end(), searchWords.begin(), escapeRegex);
|
||||||
|
|
|
||||||
|
|
@ -117,11 +117,7 @@ DlgCreateToken::DlgCreateToken(const QStringList &_predefinedTokens, QWidget *pa
|
||||||
chooseTokenFromDeckRadioButton->setDisabled(true); // No tokens in deck = no need for option
|
chooseTokenFromDeckRadioButton->setDisabled(true); // No tokens in deck = no need for option
|
||||||
} else {
|
} else {
|
||||||
chooseTokenFromDeckRadioButton->setChecked(true);
|
chooseTokenFromDeckRadioButton->setChecked(true);
|
||||||
#if (QT_VERSION >= QT_VERSION_CHECK(5, 14, 0))
|
|
||||||
cardDatabaseDisplayModel->setCardNameSet(QSet<QString>(predefinedTokens.begin(), predefinedTokens.end()));
|
cardDatabaseDisplayModel->setCardNameSet(QSet<QString>(predefinedTokens.begin(), predefinedTokens.end()));
|
||||||
#else
|
|
||||||
cardDatabaseDisplayModel->setCardNameSet(QSet<QString>::fromList(predefinedTokens));
|
|
||||||
#endif
|
|
||||||
}
|
}
|
||||||
|
|
||||||
auto *tokenChooseLayout = new QVBoxLayout;
|
auto *tokenChooseLayout = new QVBoxLayout;
|
||||||
|
|
@ -223,11 +219,7 @@ void DlgCreateToken::actChooseTokenFromAll(bool checked)
|
||||||
void DlgCreateToken::actChooseTokenFromDeck(bool checked)
|
void DlgCreateToken::actChooseTokenFromDeck(bool checked)
|
||||||
{
|
{
|
||||||
if (checked) {
|
if (checked) {
|
||||||
#if (QT_VERSION >= QT_VERSION_CHECK(5, 14, 0))
|
|
||||||
cardDatabaseDisplayModel->setCardNameSet(QSet<QString>(predefinedTokens.begin(), predefinedTokens.end()));
|
cardDatabaseDisplayModel->setCardNameSet(QSet<QString>(predefinedTokens.begin(), predefinedTokens.end()));
|
||||||
#else
|
|
||||||
cardDatabaseDisplayModel->setCardNameSet(QSet<QString>::fromList(predefinedTokens));
|
|
||||||
#endif
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -78,14 +78,7 @@ void PlayerEventHandler::eventShuffle(const Event_Shuffle &event)
|
||||||
void PlayerEventHandler::eventRollDie(const Event_RollDie &event)
|
void PlayerEventHandler::eventRollDie(const Event_RollDie &event)
|
||||||
{
|
{
|
||||||
if (!event.values().empty()) {
|
if (!event.values().empty()) {
|
||||||
#if (QT_VERSION >= QT_VERSION_CHECK(5, 14, 0))
|
|
||||||
QList<uint> rolls(event.values().begin(), event.values().end());
|
QList<uint> rolls(event.values().begin(), event.values().end());
|
||||||
#else
|
|
||||||
QList<uint> rolls;
|
|
||||||
for (const auto &value : event.values()) {
|
|
||||||
rolls.append(value);
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
std::sort(rolls.begin(), rolls.end());
|
std::sort(rolls.begin(), rolls.end());
|
||||||
emit logRollDie(player, static_cast<int>(event.sides()), rolls);
|
emit logRollDie(player, static_cast<int>(event.sides()), rolls);
|
||||||
} else if (event.value()) {
|
} else if (event.value()) {
|
||||||
|
|
|
||||||
|
|
@ -17,12 +17,7 @@ void AbstractGraphicsItem::paintNumberEllipse(int number,
|
||||||
font.setWeight(QFont::Bold);
|
font.setWeight(QFont::Bold);
|
||||||
|
|
||||||
QFontMetrics fm(font);
|
QFontMetrics fm(font);
|
||||||
double w = 1.3 *
|
double w = 1.3 * fm.horizontalAdvance(numStr);
|
||||||
#if (QT_VERSION >= QT_VERSION_CHECK(5, 11, 0))
|
|
||||||
fm.horizontalAdvance(numStr);
|
|
||||||
#else
|
|
||||||
fm.width(numStr);
|
|
||||||
#endif
|
|
||||||
double h = fm.height() * 1.3;
|
double h = fm.height() * 1.3;
|
||||||
if (w < h)
|
if (w < h)
|
||||||
w = h;
|
w = h;
|
||||||
|
|
|
||||||
|
|
@ -21,9 +21,7 @@ CardPictureLoaderWorker::CardPictureLoaderWorker()
|
||||||
// We need a timeout to ensure requests don't hang indefinitely in case of
|
// We need a timeout to ensure requests don't hang indefinitely in case of
|
||||||
// cache corruption, see related Qt bug: https://bugreports.qt.io/browse/QTBUG-111397
|
// cache corruption, see related Qt bug: https://bugreports.qt.io/browse/QTBUG-111397
|
||||||
// Use Qt's default timeout (30s, as of 2023-02-22)
|
// Use Qt's default timeout (30s, as of 2023-02-22)
|
||||||
#if (QT_VERSION >= QT_VERSION_CHECK(5, 15, 0))
|
|
||||||
networkManager->setTransferTimeout();
|
networkManager->setTransferTimeout();
|
||||||
#endif
|
|
||||||
cache = new QNetworkDiskCache(this);
|
cache = new QNetworkDiskCache(this);
|
||||||
cache->setCacheDirectory(SettingsCache::instance().getNetworkCachePath());
|
cache->setCacheDirectory(SettingsCache::instance().getNetworkCachePath());
|
||||||
cache->setMaximumCacheSize(1024L * 1024L *
|
cache->setMaximumCacheSize(1024L * 1024L *
|
||||||
|
|
|
||||||
|
|
@ -57,17 +57,10 @@ void Logger::openLogfileSession()
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
fileStream.setDevice(&fileHandle);
|
fileStream.setDevice(&fileHandle);
|
||||||
#if (QT_VERSION >= QT_VERSION_CHECK(5, 14, 0))
|
|
||||||
fileStream << "Log session started at " << QDateTime::currentDateTime().toString() << Qt::endl;
|
fileStream << "Log session started at " << QDateTime::currentDateTime().toString() << Qt::endl;
|
||||||
fileStream << getClientVersion() << Qt::endl;
|
fileStream << getClientVersion() << Qt::endl;
|
||||||
fileStream << getSystemArchitecture() << Qt::endl;
|
fileStream << getSystemArchitecture() << Qt::endl;
|
||||||
fileStream << getClientInstallInfo() << Qt::endl;
|
fileStream << getClientInstallInfo() << Qt::endl;
|
||||||
#else
|
|
||||||
fileStream << "Log session started at " << QDateTime::currentDateTime().toString() << endl;
|
|
||||||
fileStream << getClientVersion() << endl;
|
|
||||||
fileStream << getSystemArchitecture() << endl;
|
|
||||||
fileStream << getClientInstallInfo() << endl;
|
|
||||||
#endif
|
|
||||||
logToFileEnabled = true;
|
logToFileEnabled = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -77,11 +70,7 @@ void Logger::closeLogfileSession()
|
||||||
return;
|
return;
|
||||||
|
|
||||||
logToFileEnabled = false;
|
logToFileEnabled = false;
|
||||||
#if (QT_VERSION >= QT_VERSION_CHECK(5, 14, 0))
|
|
||||||
fileStream << "Log session closed at " << QDateTime::currentDateTime().toString() << Qt::endl;
|
fileStream << "Log session closed at " << QDateTime::currentDateTime().toString() << Qt::endl;
|
||||||
#else
|
|
||||||
fileStream << "Log session closed at " << QDateTime::currentDateTime().toString() << endl;
|
|
||||||
#endif
|
|
||||||
fileHandle.close();
|
fileHandle.close();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -103,11 +92,7 @@ void Logger::internalLog(const QString &message)
|
||||||
std::cerr << message.toStdString() << std::endl; // Print to stdout
|
std::cerr << message.toStdString() << std::endl; // Print to stdout
|
||||||
|
|
||||||
if (logToFileEnabled) {
|
if (logToFileEnabled) {
|
||||||
#if (QT_VERSION >= QT_VERSION_CHECK(5, 14, 0))
|
|
||||||
fileStream << message << Qt::endl; // Print to fileStream
|
fileStream << message << Qt::endl; // Print to fileStream
|
||||||
#else
|
|
||||||
fileStream << message << endl; // Print to fileStream
|
|
||||||
#endif
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -236,11 +236,7 @@ void ChatView::appendMessage(QString message,
|
||||||
cursor.setCharFormat(defaultFormat);
|
cursor.setCharFormat(defaultFormat);
|
||||||
|
|
||||||
bool mentionEnabled = SettingsCache::instance().getChatMention();
|
bool mentionEnabled = SettingsCache::instance().getChatMention();
|
||||||
#if (QT_VERSION >= QT_VERSION_CHECK(5, 14, 0))
|
|
||||||
highlightedWords = SettingsCache::instance().getHighlightWords().split(' ', Qt::SkipEmptyParts);
|
highlightedWords = SettingsCache::instance().getHighlightWords().split(' ', Qt::SkipEmptyParts);
|
||||||
#else
|
|
||||||
highlightedWords = SettingsCache::instance().getHighlightWords().split(' ', QString::SkipEmptyParts);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
// parse the message
|
// parse the message
|
||||||
while (message.size()) {
|
while (message.size()) {
|
||||||
|
|
|
||||||
|
|
@ -28,9 +28,6 @@ class UserListProxy;
|
||||||
class UserMessagePosition
|
class UserMessagePosition
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
#if (QT_VERSION < QT_VERSION_CHECK(5, 13, 0))
|
|
||||||
UserMessagePosition() = default; // older qt versions require a default constructor to use in containers
|
|
||||||
#endif
|
|
||||||
UserMessagePosition(QTextCursor &cursor);
|
UserMessagePosition(QTextCursor &cursor);
|
||||||
int relativePosition;
|
int relativePosition;
|
||||||
QTextBlock block;
|
QTextBlock block;
|
||||||
|
|
|
||||||
|
|
@ -421,10 +421,8 @@ bool GamesProxyModel::filterAcceptsRow(int sourceRow) const
|
||||||
{
|
{
|
||||||
#if QT_VERSION >= QT_VERSION_CHECK(6, 7, 0)
|
#if QT_VERSION >= QT_VERSION_CHECK(6, 7, 0)
|
||||||
static const QDate epochDate = QDateTime::fromSecsSinceEpoch(0, QTimeZone::UTC).date();
|
static const QDate epochDate = QDateTime::fromSecsSinceEpoch(0, QTimeZone::UTC).date();
|
||||||
#elif (QT_VERSION >= QT_VERSION_CHECK(5, 8, 0))
|
|
||||||
static const QDate epochDate = QDateTime::fromSecsSinceEpoch(0, Qt::UTC).date();
|
|
||||||
#else
|
#else
|
||||||
static const QDate epochDate = QDateTime::fromTime_t(0, Qt::UTC).date();
|
static const QDate epochDate = QDateTime::fromSecsSinceEpoch(0, Qt::UTC).date();
|
||||||
#endif
|
#endif
|
||||||
auto *model = qobject_cast<GamesModel *>(sourceModel());
|
auto *model = qobject_cast<GamesModel *>(sourceModel());
|
||||||
if (!model)
|
if (!model)
|
||||||
|
|
|
||||||
|
|
@ -16,10 +16,7 @@ ArchidektApiResponseDeckListingsDisplayWidget::ArchidektApiResponseDeckListingsD
|
||||||
flowWidget = new FlowWidget(this, Qt::Horizontal, Qt::ScrollBarAlwaysOff, Qt::ScrollBarAsNeeded);
|
flowWidget = new FlowWidget(this, Qt::Horizontal, Qt::ScrollBarAlwaysOff, Qt::ScrollBarAsNeeded);
|
||||||
|
|
||||||
imageNetworkManager = new QNetworkAccessManager(this);
|
imageNetworkManager = new QNetworkAccessManager(this);
|
||||||
#if (QT_VERSION >= QT_VERSION_CHECK(5, 15, 0))
|
|
||||||
imageNetworkManager->setTransferTimeout(); // Use Qt's default timeout
|
imageNetworkManager->setTransferTimeout(); // Use Qt's default timeout
|
||||||
#endif
|
|
||||||
|
|
||||||
imageNetworkManager->setRedirectPolicy(QNetworkRequest::ManualRedirectPolicy);
|
imageNetworkManager->setRedirectPolicy(QNetworkRequest::ManualRedirectPolicy);
|
||||||
|
|
||||||
// Add widgets for deck listings
|
// Add widgets for deck listings
|
||||||
|
|
|
||||||
|
|
@ -27,10 +27,7 @@
|
||||||
TabArchidekt::TabArchidekt(TabSupervisor *_tabSupervisor) : Tab(_tabSupervisor)
|
TabArchidekt::TabArchidekt(TabSupervisor *_tabSupervisor) : Tab(_tabSupervisor)
|
||||||
{
|
{
|
||||||
networkManager = new QNetworkAccessManager(this);
|
networkManager = new QNetworkAccessManager(this);
|
||||||
#if (QT_VERSION >= QT_VERSION_CHECK(5, 15, 0))
|
|
||||||
networkManager->setTransferTimeout(); // Use Qt's default timeout
|
networkManager->setTransferTimeout(); // Use Qt's default timeout
|
||||||
#endif
|
|
||||||
|
|
||||||
networkManager->setRedirectPolicy(QNetworkRequest::ManualRedirectPolicy);
|
networkManager->setRedirectPolicy(QNetworkRequest::ManualRedirectPolicy);
|
||||||
connect(networkManager, SIGNAL(finished(QNetworkReply *)), this, SLOT(processApiJson(QNetworkReply *)));
|
connect(networkManager, SIGNAL(finished(QNetworkReply *)), this, SLOT(processApiJson(QNetworkReply *)));
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -53,11 +53,7 @@ void EdhrecCommanderApiResponseBracketNavigationWidget::applyOptionsFromUrl(cons
|
||||||
}
|
}
|
||||||
|
|
||||||
// Expecting something like: "commanders/the-ur-dragon/core/expensive"
|
// Expecting something like: "commanders/the-ur-dragon/core/expensive"
|
||||||
#if (QT_VERSION >= QT_VERSION_CHECK(5, 14, 0))
|
|
||||||
QStringList parts = cleanedUrl.split('/', Qt::SkipEmptyParts);
|
QStringList parts = cleanedUrl.split('/', Qt::SkipEmptyParts);
|
||||||
#else
|
|
||||||
QStringList parts = cleanedUrl.split('/', QString::SkipEmptyParts);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
if (parts.size() < 2) {
|
if (parts.size() < 2) {
|
||||||
return;
|
return;
|
||||||
|
|
|
||||||
|
|
@ -53,11 +53,7 @@ void EdhrecCommanderApiResponseBudgetNavigationWidget::applyOptionsFromUrl(const
|
||||||
}
|
}
|
||||||
|
|
||||||
// Expecting something like: "commanders/the-ur-dragon/core/expensive"
|
// Expecting something like: "commanders/the-ur-dragon/core/expensive"
|
||||||
#if (QT_VERSION >= QT_VERSION_CHECK(5, 14, 0))
|
|
||||||
QStringList parts = cleanedUrl.split('/', Qt::SkipEmptyParts);
|
QStringList parts = cleanedUrl.split('/', Qt::SkipEmptyParts);
|
||||||
#else
|
|
||||||
QStringList parts = cleanedUrl.split('/', QString::SkipEmptyParts);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
if (parts.size() < 2) {
|
if (parts.size() < 2) {
|
||||||
return;
|
return;
|
||||||
|
|
|
||||||
|
|
@ -15,10 +15,7 @@
|
||||||
TabEdhRec::TabEdhRec(TabSupervisor *_tabSupervisor) : Tab(_tabSupervisor)
|
TabEdhRec::TabEdhRec(TabSupervisor *_tabSupervisor) : Tab(_tabSupervisor)
|
||||||
{
|
{
|
||||||
networkManager = new QNetworkAccessManager(this);
|
networkManager = new QNetworkAccessManager(this);
|
||||||
#if (QT_VERSION >= QT_VERSION_CHECK(5, 15, 0))
|
|
||||||
networkManager->setTransferTimeout(); // Use Qt's default timeout
|
networkManager->setTransferTimeout(); // Use Qt's default timeout
|
||||||
#endif
|
|
||||||
|
|
||||||
networkManager->setRedirectPolicy(QNetworkRequest::ManualRedirectPolicy);
|
networkManager->setRedirectPolicy(QNetworkRequest::ManualRedirectPolicy);
|
||||||
connect(networkManager, &QNetworkAccessManager::finished, this, &TabEdhRec::processApiJson);
|
connect(networkManager, &QNetworkAccessManager::finished, this, &TabEdhRec::processApiJson);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -37,10 +37,7 @@ static bool canBeCommander(const CardInfoPtr &cardInfo)
|
||||||
TabEdhRecMain::TabEdhRecMain(TabSupervisor *_tabSupervisor) : Tab(_tabSupervisor)
|
TabEdhRecMain::TabEdhRecMain(TabSupervisor *_tabSupervisor) : Tab(_tabSupervisor)
|
||||||
{
|
{
|
||||||
networkManager = new QNetworkAccessManager(this);
|
networkManager = new QNetworkAccessManager(this);
|
||||||
#if (QT_VERSION >= QT_VERSION_CHECK(5, 15, 0))
|
|
||||||
networkManager->setTransferTimeout(); // Use Qt's default timeout
|
networkManager->setTransferTimeout(); // Use Qt's default timeout
|
||||||
#endif
|
|
||||||
|
|
||||||
networkManager->setRedirectPolicy(QNetworkRequest::ManualRedirectPolicy);
|
networkManager->setRedirectPolicy(QNetworkRequest::ManualRedirectPolicy);
|
||||||
connect(networkManager, SIGNAL(finished(QNetworkReply *)), this, SLOT(processApiJson(QNetworkReply *)));
|
connect(networkManager, SIGNAL(finished(QNetworkReply *)), this, SLOT(processApiJson(QNetworkReply *)));
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -499,11 +499,7 @@ QString MainWindow::extractInvalidUsernameMessage(QString &in)
|
||||||
if (words.startsWith("\n")) {
|
if (words.startsWith("\n")) {
|
||||||
out += tr("no unacceptable language as specified by these server rules:",
|
out += tr("no unacceptable language as specified by these server rules:",
|
||||||
"note that the following lines will not be translated");
|
"note that the following lines will not be translated");
|
||||||
#if (QT_VERSION >= QT_VERSION_CHECK(5, 14, 0))
|
|
||||||
for (QString &line : words.split("\n", Qt::SkipEmptyParts)) {
|
for (QString &line : words.split("\n", Qt::SkipEmptyParts)) {
|
||||||
#else
|
|
||||||
for (QString &line : words.split("\n", QString::SkipEmptyParts)) {
|
|
||||||
#endif
|
|
||||||
out += "<li>" + line + "</li>";
|
out += "<li>" + line + "</li>";
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
|
|
|
||||||
|
|
@ -260,10 +260,8 @@ int main(int argc, char *argv[])
|
||||||
qCInfo(MainLog) << "MainWindow constructor finished";
|
qCInfo(MainLog) << "MainWindow constructor finished";
|
||||||
|
|
||||||
ui.setWindowIcon(QPixmap("theme:cockatrice"));
|
ui.setWindowIcon(QPixmap("theme:cockatrice"));
|
||||||
#if QT_VERSION >= QT_VERSION_CHECK(5, 7, 0)
|
|
||||||
// set name of the app desktop file; used by wayland to load the window icon
|
// set name of the app desktop file; used by wayland to load the window icon
|
||||||
QGuiApplication::setDesktopFileName("cockatrice");
|
QGuiApplication::setDesktopFileName("cockatrice");
|
||||||
#endif
|
|
||||||
|
|
||||||
SettingsCache::instance().setClientID(generateClientID());
|
SettingsCache::instance().setClientID(generateClientID());
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -328,11 +328,7 @@ QMap<QString, int> CardDatabaseQuerier::getAllSubCardTypesWithCount() const
|
||||||
QStringList parts = type.split(" — ");
|
QStringList parts = type.split(" — ");
|
||||||
|
|
||||||
if (parts.size() > 1) { // Ensure there are subtypes
|
if (parts.size() > 1) { // Ensure there are subtypes
|
||||||
#if (QT_VERSION >= QT_VERSION_CHECK(5, 14, 0))
|
|
||||||
QStringList subtypes = parts[1].split(" ", Qt::SkipEmptyParts);
|
QStringList subtypes = parts[1].split(" ", Qt::SkipEmptyParts);
|
||||||
#else
|
|
||||||
QStringList subtypes = parts[1].split(" ", QString::SkipEmptyParts);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
for (const QString &subtype : subtypes) {
|
for (const QString &subtype : subtypes) {
|
||||||
typeCounts[subtype]++;
|
typeCounts[subtype]++;
|
||||||
|
|
|
||||||
|
|
@ -283,11 +283,7 @@ bool SetsDisplayModel::filterAcceptsRow(int sourceRow, const QModelIndex &source
|
||||||
auto nameIndex = sourceModel()->index(sourceRow, SetsModel::LongNameCol, sourceParent);
|
auto nameIndex = sourceModel()->index(sourceRow, SetsModel::LongNameCol, sourceParent);
|
||||||
auto shortNameIndex = sourceModel()->index(sourceRow, SetsModel::ShortNameCol, sourceParent);
|
auto shortNameIndex = sourceModel()->index(sourceRow, SetsModel::ShortNameCol, sourceParent);
|
||||||
|
|
||||||
#if (QT_VERSION >= QT_VERSION_CHECK(5, 12, 0))
|
|
||||||
const auto filter = filterRegularExpression();
|
const auto filter = filterRegularExpression();
|
||||||
#else
|
|
||||||
const auto filter = filterRegExp();
|
|
||||||
#endif
|
|
||||||
|
|
||||||
return (sourceModel()->data(typeIndex).toString().contains(filter) ||
|
return (sourceModel()->data(typeIndex).toString().contains(filter) ||
|
||||||
sourceModel()->data(nameIndex).toString().contains(filter) ||
|
sourceModel()->data(nameIndex).toString().contains(filter) ||
|
||||||
|
|
|
||||||
|
|
@ -42,11 +42,7 @@ RemoteClient::RemoteClient(QObject *parent, INetworkSettingsProvider *_networkSe
|
||||||
connect(socket, &QTcpSocket::connected, this, &RemoteClient::slotConnected);
|
connect(socket, &QTcpSocket::connected, this, &RemoteClient::slotConnected);
|
||||||
connect(socket, &QTcpSocket::readyRead, this, &RemoteClient::readData);
|
connect(socket, &QTcpSocket::readyRead, this, &RemoteClient::readData);
|
||||||
|
|
||||||
#if (QT_VERSION >= QT_VERSION_CHECK(5, 14, 0))
|
|
||||||
connect(socket, &QTcpSocket::errorOccurred, this, &RemoteClient::slotSocketError);
|
connect(socket, &QTcpSocket::errorOccurred, this, &RemoteClient::slotSocketError);
|
||||||
#else
|
|
||||||
connect(socket, qOverload<QAbstractSocket::SocketError>(&QTcpSocket::error), this, &RemoteClient::slotSocketError);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
websocket = new QWebSocket(QString(), QWebSocketProtocol::VersionLatest, this);
|
websocket = new QWebSocket(QString(), QWebSocketProtocol::VersionLatest, this);
|
||||||
connect(websocket, &QWebSocket::binaryMessageReceived, this, &RemoteClient::websocketMessageReceived);
|
connect(websocket, &QWebSocket::binaryMessageReceived, this, &RemoteClient::websocketMessageReceived);
|
||||||
|
|
|
||||||
|
|
@ -63,11 +63,7 @@ void Server_CardZone::shuffle(int start, int end)
|
||||||
|
|
||||||
for (int i = end; i > start; i--) {
|
for (int i = end; i > start; i--) {
|
||||||
int j = rng->rand(start, i);
|
int j = rng->rand(start, i);
|
||||||
#if (QT_VERSION >= QT_VERSION_CHECK(5, 13, 0))
|
|
||||||
cards.swapItemsAt(j, i);
|
cards.swapItemsAt(j, i);
|
||||||
#else
|
|
||||||
cards.swap(j, i);
|
|
||||||
#endif
|
|
||||||
}
|
}
|
||||||
playersWithWritePermission.clear();
|
playersWithWritePermission.clear();
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -73,11 +73,7 @@ Server_Game::Server_Game(const ServerInfo_User &_creatorInfo,
|
||||||
spectatorsSeeEverything(_spectatorsSeeEverything), startingLifeTotal(_startingLifeTotal),
|
spectatorsSeeEverything(_spectatorsSeeEverything), startingLifeTotal(_startingLifeTotal),
|
||||||
shareDecklistsOnLoad(_shareDecklistsOnLoad), inactivityCounter(0), startTimeOfThisGame(0), secondsElapsed(0),
|
shareDecklistsOnLoad(_shareDecklistsOnLoad), inactivityCounter(0), startTimeOfThisGame(0), secondsElapsed(0),
|
||||||
firstGameStarted(false), turnOrderReversed(false), startTime(QDateTime::currentDateTime()), pingClock(nullptr),
|
firstGameStarted(false), turnOrderReversed(false), startTime(QDateTime::currentDateTime()), pingClock(nullptr),
|
||||||
#if (QT_VERSION >= QT_VERSION_CHECK(5, 14, 0))
|
|
||||||
gameMutex()
|
gameMutex()
|
||||||
#else
|
|
||||||
gameMutex(QMutex::Recursive)
|
|
||||||
#endif
|
|
||||||
{
|
{
|
||||||
currentReplay = new GameReplay;
|
currentReplay = new GameReplay;
|
||||||
currentReplay->set_replay_id(room->getServer()->getDatabaseInterface()->getNextReplayId());
|
currentReplay->set_replay_id(room->getServer()->getDatabaseInterface()->getNextReplayId());
|
||||||
|
|
|
||||||
|
|
@ -90,11 +90,7 @@ private slots:
|
||||||
void doStartGameIfReady(bool forceStartGame = false);
|
void doStartGameIfReady(bool forceStartGame = false);
|
||||||
|
|
||||||
public:
|
public:
|
||||||
#if (QT_VERSION >= QT_VERSION_CHECK(5, 14, 0))
|
|
||||||
mutable QRecursiveMutex gameMutex;
|
mutable QRecursiveMutex gameMutex;
|
||||||
#else
|
|
||||||
mutable QMutex gameMutex;
|
|
||||||
#endif
|
|
||||||
Server_Game(const ServerInfo_User &_creatorInfo,
|
Server_Game(const ServerInfo_User &_creatorInfo,
|
||||||
int _gameId,
|
int _gameId,
|
||||||
const QString &_description,
|
const QString &_description,
|
||||||
|
|
|
||||||
|
|
@ -112,11 +112,7 @@ void IslInterface::initServer()
|
||||||
|
|
||||||
socket->startServerEncryption();
|
socket->startServerEncryption();
|
||||||
if (!socket->waitForEncrypted(5000)) {
|
if (!socket->waitForEncrypted(5000)) {
|
||||||
#if (QT_VERSION >= QT_VERSION_CHECK(5, 15, 0))
|
|
||||||
QList<QSslError> sslErrors(socket->sslHandshakeErrors());
|
QList<QSslError> sslErrors(socket->sslHandshakeErrors());
|
||||||
#else
|
|
||||||
QList<QSslError> sslErrors(socket->sslErrors());
|
|
||||||
#endif
|
|
||||||
if (sslErrors.isEmpty())
|
if (sslErrors.isEmpty())
|
||||||
qDebug() << "[ISL] SSL handshake timeout, terminating connection";
|
qDebug() << "[ISL] SSL handshake timeout, terminating connection";
|
||||||
else
|
else
|
||||||
|
|
@ -193,11 +189,7 @@ void IslInterface::initClient()
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (!socket->waitForEncrypted(5000)) {
|
if (!socket->waitForEncrypted(5000)) {
|
||||||
#if (QT_VERSION >= QT_VERSION_CHECK(5, 15, 0))
|
|
||||||
QList<QSslError> sslErrors(socket->sslHandshakeErrors());
|
QList<QSslError> sslErrors(socket->sslHandshakeErrors());
|
||||||
#else
|
|
||||||
QList<QSslError> sslErrors(socket->sslErrors());
|
|
||||||
#endif
|
|
||||||
if (sslErrors.isEmpty())
|
if (sslErrors.isEmpty())
|
||||||
qDebug() << "[ISL] SSL handshake timeout, terminating connection";
|
qDebug() << "[ISL] SSL handshake timeout, terminating connection";
|
||||||
else
|
else
|
||||||
|
|
|
||||||
|
|
@ -254,13 +254,8 @@ bool Servatrice::initServer()
|
||||||
qDebug() << "Accept registered users only:" << getRegOnlyServerEnabled();
|
qDebug() << "Accept registered users only:" << getRegOnlyServerEnabled();
|
||||||
qDebug() << "Registration enabled:" << getRegistrationEnabled();
|
qDebug() << "Registration enabled:" << getRegistrationEnabled();
|
||||||
if (getRegistrationEnabled()) {
|
if (getRegistrationEnabled()) {
|
||||||
#if (QT_VERSION >= QT_VERSION_CHECK(5, 14, 0))
|
|
||||||
QStringList emailBlackListFilters = getEmailBlackList().split(",", Qt::SkipEmptyParts);
|
QStringList emailBlackListFilters = getEmailBlackList().split(",", Qt::SkipEmptyParts);
|
||||||
QStringList emailWhiteListFilters = getEmailWhiteList().split(",", Qt::SkipEmptyParts);
|
QStringList emailWhiteListFilters = getEmailWhiteList().split(",", Qt::SkipEmptyParts);
|
||||||
#else
|
|
||||||
QStringList emailBlackListFilters = getEmailBlackList().split(",", QString::SkipEmptyParts);
|
|
||||||
QStringList emailWhiteListFilters = getEmailWhiteList().split(",", QString::SkipEmptyParts);
|
|
||||||
#endif
|
|
||||||
qDebug() << "Email blacklist:" << emailBlackListFilters;
|
qDebug() << "Email blacklist:" << emailBlackListFilters;
|
||||||
qDebug() << "Email whitelist:" << emailWhiteListFilters;
|
qDebug() << "Email whitelist:" << emailWhiteListFilters;
|
||||||
qDebug() << "Require email address to register:" << getRequireEmailForRegistrationEnabled();
|
qDebug() << "Require email address to register:" << getRequireEmailForRegistrationEnabled();
|
||||||
|
|
@ -564,11 +559,7 @@ void Servatrice::setRequiredFeatures(const QString &featureList)
|
||||||
FeatureSet features;
|
FeatureSet features;
|
||||||
serverRequiredFeatureList.clear();
|
serverRequiredFeatureList.clear();
|
||||||
features.initalizeFeatureList(serverRequiredFeatureList);
|
features.initalizeFeatureList(serverRequiredFeatureList);
|
||||||
#if (QT_VERSION >= QT_VERSION_CHECK(5, 14, 0))
|
|
||||||
QStringList listReqFeatures = featureList.split(",", Qt::SkipEmptyParts);
|
QStringList listReqFeatures = featureList.split(",", Qt::SkipEmptyParts);
|
||||||
#else
|
|
||||||
QStringList listReqFeatures = featureList.split(",", QString::SkipEmptyParts);
|
|
||||||
#endif
|
|
||||||
if (!listReqFeatures.isEmpty())
|
if (!listReqFeatures.isEmpty())
|
||||||
for (const QString &reqFeature : listReqFeatures) {
|
for (const QString &reqFeature : listReqFeatures) {
|
||||||
features.enableRequiredFeature(serverRequiredFeatureList, reqFeature);
|
features.enableRequiredFeature(serverRequiredFeatureList, reqFeature);
|
||||||
|
|
|
||||||
|
|
@ -163,11 +163,7 @@ bool Servatrice_DatabaseInterface::usernameIsValid(const QString &user, QString
|
||||||
bool allowPunctuationPrefix = settingsCache->value("users/allowpunctuationprefix", false).toBool();
|
bool allowPunctuationPrefix = settingsCache->value("users/allowpunctuationprefix", false).toBool();
|
||||||
QString allowedPunctuation = settingsCache->value("users/allowedpunctuation", "_").toString();
|
QString allowedPunctuation = settingsCache->value("users/allowedpunctuation", "_").toString();
|
||||||
QString disallowedWordsStr = settingsCache->value("users/disallowedwords", "").toString();
|
QString disallowedWordsStr = settingsCache->value("users/disallowedwords", "").toString();
|
||||||
#if (QT_VERSION >= QT_VERSION_CHECK(5, 14, 0))
|
|
||||||
QStringList disallowedWords = disallowedWordsStr.split(",", Qt::SkipEmptyParts);
|
QStringList disallowedWords = disallowedWordsStr.split(",", Qt::SkipEmptyParts);
|
||||||
#else
|
|
||||||
QStringList disallowedWords = disallowedWordsStr.split(",", QString::SkipEmptyParts);
|
|
||||||
#endif
|
|
||||||
disallowedWords.removeDuplicates();
|
disallowedWords.removeDuplicates();
|
||||||
QVariant displayDisallowedWords = settingsCache->value("users/displaydisallowedwords");
|
QVariant displayDisallowedWords = settingsCache->value("users/displaydisallowedwords");
|
||||||
QString disallowedRegExpStr;
|
QString disallowedRegExpStr;
|
||||||
|
|
|
||||||
|
|
@ -57,11 +57,7 @@ void ServerLogger::logMessage(const QString &message, void *caller)
|
||||||
// filter out all log entries based on values in configuration file
|
// filter out all log entries based on values in configuration file
|
||||||
bool shouldWeWriteLog = settingsCache->value("server/writelog", 1).toBool();
|
bool shouldWeWriteLog = settingsCache->value("server/writelog", 1).toBool();
|
||||||
QString logFilters = settingsCache->value("server/logfilters").toString();
|
QString logFilters = settingsCache->value("server/logfilters").toString();
|
||||||
#if (QT_VERSION >= QT_VERSION_CHECK(5, 14, 0))
|
|
||||||
QStringList listlogFilters = logFilters.split(",", Qt::SkipEmptyParts);
|
QStringList listlogFilters = logFilters.split(",", Qt::SkipEmptyParts);
|
||||||
#else
|
|
||||||
QStringList listlogFilters = logFilters.split(",", QString::SkipEmptyParts);
|
|
||||||
#endif
|
|
||||||
bool shouldWeSkipLine = false;
|
bool shouldWeSkipLine = false;
|
||||||
|
|
||||||
if (!shouldWeWriteLog)
|
if (!shouldWeWriteLog)
|
||||||
|
|
|
||||||
|
|
@ -972,11 +972,7 @@ Response::ResponseCode AbstractServerSocketInterface::cmdGetWarnList(const Comma
|
||||||
Response_WarnList *re = new Response_WarnList;
|
Response_WarnList *re = new Response_WarnList;
|
||||||
|
|
||||||
QString officialWarnings = settingsCache->value("server/officialwarnings").toString();
|
QString officialWarnings = settingsCache->value("server/officialwarnings").toString();
|
||||||
#if (QT_VERSION >= QT_VERSION_CHECK(5, 14, 0))
|
|
||||||
QStringList warningsList = officialWarnings.split(",", Qt::SkipEmptyParts);
|
QStringList warningsList = officialWarnings.split(",", Qt::SkipEmptyParts);
|
||||||
#else
|
|
||||||
QStringList warningsList = officialWarnings.split(",", QString::SkipEmptyParts);
|
|
||||||
#endif
|
|
||||||
for (const QString &warning : warningsList) {
|
for (const QString &warning : warningsList) {
|
||||||
re->add_warning(warning.toStdString());
|
re->add_warning(warning.toStdString());
|
||||||
}
|
}
|
||||||
|
|
@ -1172,13 +1168,8 @@ Response::ResponseCode AbstractServerSocketInterface::cmdRegisterAccount(const C
|
||||||
const auto parsedEmailParts = EmailParser::parseEmailAddress(nameFromStdString(cmd.email()));
|
const auto parsedEmailParts = EmailParser::parseEmailAddress(nameFromStdString(cmd.email()));
|
||||||
const auto emailUser = parsedEmailParts.first;
|
const auto emailUser = parsedEmailParts.first;
|
||||||
const auto emailDomain = parsedEmailParts.second;
|
const auto emailDomain = parsedEmailParts.second;
|
||||||
#if (QT_VERSION >= QT_VERSION_CHECK(5, 14, 0))
|
|
||||||
const QStringList emailBlackListFilters = emailBlackList.split(",", Qt::SkipEmptyParts);
|
const QStringList emailBlackListFilters = emailBlackList.split(",", Qt::SkipEmptyParts);
|
||||||
const QStringList emailWhiteListFilters = emailWhiteList.split(",", Qt::SkipEmptyParts);
|
const QStringList emailWhiteListFilters = emailWhiteList.split(",", Qt::SkipEmptyParts);
|
||||||
#else
|
|
||||||
const QStringList emailBlackListFilters = emailBlackList.split(",", QString::SkipEmptyParts);
|
|
||||||
const QStringList emailWhiteListFilters = emailWhiteList.split(",", QString::SkipEmptyParts);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
bool requireEmailForRegistration = settingsCache->value("registration/requireemail", true).toBool();
|
bool requireEmailForRegistration = settingsCache->value("registration/requireemail", true).toBool();
|
||||||
if (requireEmailForRegistration && emailUser.isEmpty()) {
|
if (requireEmailForRegistration && emailUser.isEmpty()) {
|
||||||
|
|
@ -1930,13 +1921,8 @@ TcpServerSocketInterface::TcpServerSocketInterface(Servatrice *_server,
|
||||||
socket->setSocketOption(QAbstractSocket::LowDelayOption, 1);
|
socket->setSocketOption(QAbstractSocket::LowDelayOption, 1);
|
||||||
connect(socket, SIGNAL(readyRead()), this, SLOT(readClient()));
|
connect(socket, SIGNAL(readyRead()), this, SLOT(readClient()));
|
||||||
connect(socket, SIGNAL(disconnected()), this, SLOT(catchSocketDisconnected()));
|
connect(socket, SIGNAL(disconnected()), this, SLOT(catchSocketDisconnected()));
|
||||||
#if QT_VERSION >= QT_VERSION_CHECK(5, 15, 0)
|
|
||||||
connect(socket, SIGNAL(errorOccurred(QAbstractSocket::SocketError)), this,
|
connect(socket, SIGNAL(errorOccurred(QAbstractSocket::SocketError)), this,
|
||||||
SLOT(catchSocketError(QAbstractSocket::SocketError)));
|
SLOT(catchSocketError(QAbstractSocket::SocketError)));
|
||||||
#else
|
|
||||||
connect(socket, SIGNAL(error(QAbstractSocket::SocketError)), this,
|
|
||||||
SLOT(catchSocketError(QAbstractSocket::SocketError)));
|
|
||||||
#endif
|
|
||||||
}
|
}
|
||||||
|
|
||||||
TcpServerSocketInterface::~TcpServerSocketInterface()
|
TcpServerSocketInterface::~TcpServerSocketInterface()
|
||||||
|
|
@ -2109,10 +2095,8 @@ void WebsocketServerSocketInterface::initConnection(void *_socket)
|
||||||
}
|
}
|
||||||
socket = (QWebSocket *)_socket;
|
socket = (QWebSocket *)_socket;
|
||||||
socket->setParent(this);
|
socket->setParent(this);
|
||||||
#if (QT_VERSION >= QT_VERSION_CHECK(5, 15, 0))
|
|
||||||
// https://bugreports.qt.io/browse/QTBUG-70693
|
// https://bugreports.qt.io/browse/QTBUG-70693
|
||||||
socket->setMaxAllowedIncomingMessageSize(1500000); // 1.5MB
|
socket->setMaxAllowedIncomingMessageSize(1500000); // 1.5MB
|
||||||
#endif
|
|
||||||
|
|
||||||
address = socket->peerAddress();
|
address = socket->peerAddress();
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -11,12 +11,7 @@ SettingsCache::SettingsCache(const QString &fileName, QSettings::Format format,
|
||||||
// first, figure out if we are running in portable mode
|
// first, figure out if we are running in portable mode
|
||||||
isPortableBuild = QFile::exists(qApp->applicationDirPath() + "/portable.dat");
|
isPortableBuild = QFile::exists(qApp->applicationDirPath() + "/portable.dat");
|
||||||
|
|
||||||
QStringList disallowedRegExpStr =
|
QStringList disallowedRegExpStr = value("users/disallowedregexp", "").toString().split(",", Qt::SkipEmptyParts);
|
||||||
#if (QT_VERSION >= QT_VERSION_CHECK(5, 14, 0))
|
|
||||||
value("users/disallowedregexp", "").toString().split(",", Qt::SkipEmptyParts);
|
|
||||||
#else
|
|
||||||
value("users/disallowedregexp", "").toString().split(",", QString::SkipEmptyParts);
|
|
||||||
#endif
|
|
||||||
disallowedRegExpStr.removeDuplicates();
|
disallowedRegExpStr.removeDuplicates();
|
||||||
for (const QString ®ExpStr : disallowedRegExpStr) {
|
for (const QString ®ExpStr : disallowedRegExpStr) {
|
||||||
disallowedRegExp.append(QRegularExpression(QString("\\A%1\\z").arg(regExpStr)));
|
disallowedRegExp.append(QRegularExpression(QString("\\A%1\\z").arg(regExpStr)));
|
||||||
|
|
|
||||||
|
|
@ -334,11 +334,7 @@ void QxtSmtpPrivate::authenticate()
|
||||||
state = Authenticated;
|
state = Authenticated;
|
||||||
emit qxt_p().authenticated();
|
emit qxt_p().authenticated();
|
||||||
} else {
|
} else {
|
||||||
#if (QT_VERSION >= QT_VERSION_CHECK(5, 14, 0))
|
|
||||||
QStringList auth = extensions["AUTH"].toUpper().split(' ', Qt::SkipEmptyParts);
|
QStringList auth = extensions["AUTH"].toUpper().split(' ', Qt::SkipEmptyParts);
|
||||||
#else
|
|
||||||
QStringList auth = extensions["AUTH"].toUpper().split(' ', QString::SkipEmptyParts);
|
|
||||||
#endif
|
|
||||||
if (auth.contains("CRAM-MD5")) {
|
if (auth.contains("CRAM-MD5")) {
|
||||||
authCramMD5();
|
authCramMD5();
|
||||||
} else if (auth.contains("PLAIN")) {
|
} else if (auth.contains("PLAIN")) {
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue