From 01d2adf68e58825977e395931b7631d75fdd4369 Mon Sep 17 00:00:00 2001 From: Michael Callahan Date: Mon, 29 Dec 2014 14:40:10 -0700 Subject: [PATCH 1/7] Better Icon packing in PlayerListWidget --- cockatrice/src/playerlistwidget.cpp | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/cockatrice/src/playerlistwidget.cpp b/cockatrice/src/playerlistwidget.cpp index b535c2c1c..4349c50d0 100644 --- a/cockatrice/src/playerlistwidget.cpp +++ b/cockatrice/src/playerlistwidget.cpp @@ -70,13 +70,13 @@ PlayerListWidget::PlayerListWidget(TabSupervisor *_tabSupervisor, AbstractClient setMinimumHeight(60); setIconSize(QSize(20, 15)); setColumnCount(6); + setColumnWidth(0, 20); + setColumnWidth(1, 20); + setColumnWidth(2, 20); + setColumnWidth(3, 20); + setColumnWidth(5, 20); setHeaderHidden(true); setRootIsDecorated(false); -#if QT_VERSION < 0x050000 - header()->setResizeMode(QHeaderView::ResizeToContents); -#else - header()->setSectionResizeMode(QHeaderView::ResizeToContents); -#endif retranslateUi(); } @@ -116,6 +116,7 @@ void PlayerListWidget::updatePlayerProperties(const ServerInfo_PlayerProperties player->setData(3, Qt::UserRole, prop.user_info().user_level()); player->setIcon(3, QIcon(UserLevelPixmapGenerator::generatePixmap(12, UserLevelFlags(prop.user_info().user_level())))); player->setText(4, QString::fromStdString(prop.user_info().name())); + resizeColumnToContents(4); const QString country = QString::fromStdString(prop.user_info().country()); if (!country.isEmpty()) player->setIcon(4, QIcon(CountryPixmapGenerator::generatePixmap(12, country))); @@ -123,8 +124,10 @@ void PlayerListWidget::updatePlayerProperties(const ServerInfo_PlayerProperties } if (prop.has_player_id()) player->setData(4, Qt::UserRole + 1, prop.player_id()); - if (prop.has_deck_hash()) + if (prop.has_deck_hash()) { player->setText(5, QString::fromStdString(prop.deck_hash())); + resizeColumnToContents(5); + } if (prop.has_sideboard_locked()) player->setIcon(5, prop.sideboard_locked() ? lockIcon : QIcon()); if (prop.has_ping_seconds()) From fe1ad8f27ce296749a3f4af784521d24f600b3e3 Mon Sep 17 00:00:00 2001 From: Michael Callahan Date: Mon, 29 Dec 2014 23:45:34 -0700 Subject: [PATCH 2/7] Fix unused and reorder warnings. --- CMakeLists.txt | 2 +- cockatrice/src/carddatabase.cpp | 2 +- cockatrice/src/dlg_connect.cpp | 1 + cockatrice/src/filtertree.h | 2 +- cockatrice/src/setsmodel.h | 2 +- oracle/src/oracleimporter.h | 2 +- 6 files changed, 6 insertions(+), 5 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 4cf8857ad..d41993a1d 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -81,7 +81,7 @@ ELSEIF (CMAKE_COMPILER_IS_GNUCXX) set(CMAKE_CXX_FLAGS_RELEASE "-s -O2") set(CMAKE_CXX_FLAGS_DEBUG "-ggdb -O0 -Wall -Wextra -pedantic -Werror") - set(ADDITIONAL_DEBUG_FLAGS -Wcast-align -Wmissing-declarations -Winline -Wno-long-long -Wno-error=extra -Wno-error=unused-parameter -Wno-inline -Wno-error=delete-non-virtual-dtor -Wno-error=sign-compare -Wno-error=reorder -Wno-error=missing-declarations) + set(ADDITIONAL_DEBUG_FLAGS -Wcast-align -Wmissing-declarations -Winline -Wno-long-long -Wno-error=extra -Wno-inline -Wno-error=delete-non-virtual-dtor -Wno-error=sign-compare -Wno-error=missing-declarations) FOREACH(FLAG ${ADDITIONAL_DEBUG_FLAGS}) CHECK_CXX_COMPILER_FLAG("${FLAG}" CXX_HAS_WARNING_${FLAG}) diff --git a/cockatrice/src/carddatabase.cpp b/cockatrice/src/carddatabase.cpp index 2d311900e..e2020dd95 100644 --- a/cockatrice/src/carddatabase.cpp +++ b/cockatrice/src/carddatabase.cpp @@ -31,7 +31,7 @@ static QXmlStreamWriter &operator<<(QXmlStreamWriter &xml, const CardSet *set) } CardSet::CardSet(const QString &_shortName, const QString &_longName, const QString &_setType, const QDate &_releaseDate) - : shortName(_shortName), longName(_longName), setType(_setType), releaseDate(_releaseDate) + : shortName(_shortName), longName(_longName), releaseDate(_releaseDate), setType(_setType) { updateSortKey(); } diff --git a/cockatrice/src/dlg_connect.cpp b/cockatrice/src/dlg_connect.cpp index 152d62b9f..d3bc40276 100644 --- a/cockatrice/src/dlg_connect.cpp +++ b/cockatrice/src/dlg_connect.cpp @@ -75,6 +75,7 @@ DlgConnect::DlgConnect(QWidget *parent) void DlgConnect::passwordSaved(int state) { + Q_UNUSED(state); if(savePasswordCheckBox->isChecked()) { autoConnectCheckBox->setEnabled(true); } else { diff --git a/cockatrice/src/filtertree.h b/cockatrice/src/filtertree.h index d945e5679..68f8fafb1 100644 --- a/cockatrice/src/filtertree.h +++ b/cockatrice/src/filtertree.h @@ -154,7 +154,7 @@ public: FilterTreeNode *termNode(const CardFilter *f); FilterTreeNode *attrTypeNode(CardFilter::Attr attr, CardFilter::Type type); - const char *textCStr() { return "root"; } + const char *textCStr() const { return "root"; } int index() const { return 0; } bool acceptsCard(const CardInfo *info) const; diff --git a/cockatrice/src/setsmodel.h b/cockatrice/src/setsmodel.h index 17911db18..8655fe886 100644 --- a/cockatrice/src/setsmodel.h +++ b/cockatrice/src/setsmodel.h @@ -29,7 +29,7 @@ public: SetsModel(CardDatabase *_db, QObject *parent = 0); ~SetsModel(); int rowCount(const QModelIndex &parent = QModelIndex()) const; - int columnCount(const QModelIndex &parent = QModelIndex()) const { return NUM_COLS; } + int columnCount(const QModelIndex &parent = QModelIndex()) const { Q_UNUSED(parent); return NUM_COLS; } QVariant data(const QModelIndex &index, int role) const; QVariant headerData(int section, Qt::Orientation orientation, int role = Qt::DisplayRole) const; Qt::ItemFlags flags(const QModelIndex &index) const; diff --git a/oracle/src/oracleimporter.h b/oracle/src/oracleimporter.h index e8fe9e9db..27d890854 100644 --- a/oracle/src/oracleimporter.h +++ b/oracle/src/oracleimporter.h @@ -21,7 +21,7 @@ public: bool getImport() const { return import; } void setImport(bool _import) { import = _import; } SetToDownload(const QString &_shortName, const QString &_longName, const QVariant &_cards, bool _import, const QString &_setType = QString(), const QDate &_releaseDate = QDate()) - : shortName(_shortName), longName(_longName), import(_import), cards(_cards), setType(_setType), releaseDate(_releaseDate) { } + : shortName(_shortName), longName(_longName), import(_import), cards(_cards), releaseDate(_releaseDate), setType(_setType) { } bool operator<(const SetToDownload &set) const { return longName.compare(set.longName, Qt::CaseInsensitive) < 0; } }; From 5293c7c5f72e3f647dbebce72ca0dbbe3c42caec Mon Sep 17 00:00:00 2001 From: Michael Callahan Date: Tue, 30 Dec 2014 10:49:41 -0700 Subject: [PATCH 3/7] Better compilation flag for gcc and clang. --- CMakeLists.txt | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index d41993a1d..a3d6d09e0 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -74,14 +74,14 @@ IF(MSVC) set(CMAKE_CXX_FLAGS_RELEASE "/Ox") # Generate complete debugging information #set(CMAKE_CXX_FLAGS_DEBUG "/Zi") -ELSEIF (CMAKE_COMPILER_IS_GNUCXX) +ELSEIF (CMAKE_COMPILER_IS_GNUCXX OR CMAKE_COMPILER_IS_CLANGXX) # linux/gcc, bsd/gcc, windows/mingw include(CheckCXXCompilerFlag) - set(CMAKE_CXX_FLAGS_RELEASE "-s -O2") - set(CMAKE_CXX_FLAGS_DEBUG "-ggdb -O0 -Wall -Wextra -pedantic -Werror") + set(CMAKE_CXX_FLAGS_RELEASE "-s -pedantic -std=c++98 -O3") + set(CMAKE_CXX_FLAGS_DEBUG "-ggdb -Wall -Wextra -std=c++98 -pedantic -Werror -fsanitize=address") - set(ADDITIONAL_DEBUG_FLAGS -Wcast-align -Wmissing-declarations -Winline -Wno-long-long -Wno-error=extra -Wno-inline -Wno-error=delete-non-virtual-dtor -Wno-error=sign-compare -Wno-error=missing-declarations) + set(ADDITIONAL_DEBUG_FLAGS -Wcast-align -Wmissing-declarations -Wno-long-long -Wno-error=extra -Wno-error=sign-compare -Wno-error=missing-declarations) FOREACH(FLAG ${ADDITIONAL_DEBUG_FLAGS}) CHECK_CXX_COMPILER_FLAG("${FLAG}" CXX_HAS_WARNING_${FLAG}) @@ -91,8 +91,8 @@ ELSEIF (CMAKE_COMPILER_IS_GNUCXX) ENDFOREACH() ELSE() # other: osx/llvm, bsd/llvm - set(CMAKE_CXX_FLAGS_RELEASE "-O2") - set(CMAKE_CXX_FLAGS_DEBUG "-g -O0") + set(CMAKE_CXX_FLAGS_RELEASE "-s -pedantic -std=c++98 -O3") + set(CMAKE_CXX_FLAGS_DEBUG "-g") ENDIF() # GNU systems need to define the Mersenne exponent for the RNG to compile w/o warning From 1d86eb9f1059474a181fd7ae88e7ff9c49872028 Mon Sep 17 00:00:00 2001 From: Michael Callahan Date: Tue, 30 Dec 2014 11:09:52 -0700 Subject: [PATCH 4/7] More clang fixes. --- CMakeLists.txt | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index a3d6d09e0..ae8285026 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -75,11 +75,11 @@ IF(MSVC) # Generate complete debugging information #set(CMAKE_CXX_FLAGS_DEBUG "/Zi") ELSEIF (CMAKE_COMPILER_IS_GNUCXX OR CMAKE_COMPILER_IS_CLANGXX) - # linux/gcc, bsd/gcc, windows/mingw + # linux/gcc, bsd/gcc, windows/mingw, osx/llvm, bsd/llvm include(CheckCXXCompilerFlag) - set(CMAKE_CXX_FLAGS_RELEASE "-s -pedantic -std=c++98 -O3") - set(CMAKE_CXX_FLAGS_DEBUG "-ggdb -Wall -Wextra -std=c++98 -pedantic -Werror -fsanitize=address") + set(CMAKE_CXX_FLAGS_RELEASE "-s -pedantic -std=c++11 -O3") + set(CMAKE_CXX_FLAGS_DEBUG "-g -Wall -Wextra -std=c++11 -pedantic -Werror") set(ADDITIONAL_DEBUG_FLAGS -Wcast-align -Wmissing-declarations -Wno-long-long -Wno-error=extra -Wno-error=sign-compare -Wno-error=missing-declarations) @@ -90,7 +90,7 @@ ELSEIF (CMAKE_COMPILER_IS_GNUCXX OR CMAKE_COMPILER_IS_CLANGXX) ENDIF() ENDFOREACH() ELSE() - # other: osx/llvm, bsd/llvm + # other: set(CMAKE_CXX_FLAGS_RELEASE "-s -pedantic -std=c++98 -O3") set(CMAKE_CXX_FLAGS_DEBUG "-g") ENDIF() From 35a07fef3e737ea6b82cccad3ab246834f6f9872 Mon Sep 17 00:00:00 2001 From: Michael Callahan Date: Tue, 30 Dec 2014 11:40:34 -0700 Subject: [PATCH 5/7] back to c98. --- CMakeLists.txt | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index ae8285026..d5e405d9a 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -78,10 +78,10 @@ ELSEIF (CMAKE_COMPILER_IS_GNUCXX OR CMAKE_COMPILER_IS_CLANGXX) # linux/gcc, bsd/gcc, windows/mingw, osx/llvm, bsd/llvm include(CheckCXXCompilerFlag) - set(CMAKE_CXX_FLAGS_RELEASE "-s -pedantic -std=c++11 -O3") - set(CMAKE_CXX_FLAGS_DEBUG "-g -Wall -Wextra -std=c++11 -pedantic -Werror") + set(CMAKE_CXX_FLAGS_RELEASE "-s -std=c++98 -pedantic -O3") + set(CMAKE_CXX_FLAGS_DEBUG "-g -Wall -Wextra -std=c++98 -pedantic -Werror") - set(ADDITIONAL_DEBUG_FLAGS -Wcast-align -Wmissing-declarations -Wno-long-long -Wno-error=extra -Wno-error=sign-compare -Wno-error=missing-declarations) + set(ADDITIONAL_DEBUG_FLAGS -Wcast-align -Wmissing-declarations -Wno-long-long -Wno-error=extra -Wno-error=sign-compare -Wno-error=missing-declarations -Wno-c++11-long-long) FOREACH(FLAG ${ADDITIONAL_DEBUG_FLAGS}) CHECK_CXX_COMPILER_FLAG("${FLAG}" CXX_HAS_WARNING_${FLAG}) From 50347ca95b6176df6b3c32541e68fcb12f0db913 Mon Sep 17 00:00:00 2001 From: Michael Callahan Date: Tue, 30 Dec 2014 11:51:23 -0700 Subject: [PATCH 6/7] Split clang --- CMakeLists.txt | 22 +++++++++++++++++++--- 1 file changed, 19 insertions(+), 3 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index d5e405d9a..817588ce9 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -74,14 +74,30 @@ IF(MSVC) set(CMAKE_CXX_FLAGS_RELEASE "/Ox") # Generate complete debugging information #set(CMAKE_CXX_FLAGS_DEBUG "/Zi") -ELSEIF (CMAKE_COMPILER_IS_GNUCXX OR CMAKE_COMPILER_IS_CLANGXX) - # linux/gcc, bsd/gcc, windows/mingw, osx/llvm, bsd/llvm +ELSEIF (CMAKE_COMPILER_IS_GNUCXX) + # linux/gcc, bsd/gcc, windows/mingw include(CheckCXXCompilerFlag) set(CMAKE_CXX_FLAGS_RELEASE "-s -std=c++98 -pedantic -O3") set(CMAKE_CXX_FLAGS_DEBUG "-g -Wall -Wextra -std=c++98 -pedantic -Werror") - set(ADDITIONAL_DEBUG_FLAGS -Wcast-align -Wmissing-declarations -Wno-long-long -Wno-error=extra -Wno-error=sign-compare -Wno-error=missing-declarations -Wno-c++11-long-long) + set(ADDITIONAL_DEBUG_FLAGS -Wcast-align -Wmissing-declarations -Wno-long-long -Wno-error=extra -Wno-error=sign-compare -Wno-error=missing-declarations) + + FOREACH(FLAG ${ADDITIONAL_DEBUG_FLAGS}) + CHECK_CXX_COMPILER_FLAG("${FLAG}" CXX_HAS_WARNING_${FLAG}) + IF(CXX_HAS_WARNING_${FLAG}) + SET(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} ${FLAG}") + ENDIF() + ENDFOREACH() +ELSEIF (CMAKE_COMPILER_IS_CLANGXX) + # osx/llvm, bsd/llvm + # linux/gcc, bsd/gcc, windows/mingw + include(CheckCXXCompilerFlag) + + set(CMAKE_CXX_FLAGS_RELEASE "-s -std=c++11 -pedantic -O3") + set(CMAKE_CXX_FLAGS_DEBUG "-g -Wall -Wextra -std=c++11 -pedantic -Werror") + + set(ADDITIONAL_DEBUG_FLAGS -Wcast-align -Wmissing-declarations -Wno-long-long -Wno-error=extra -Wno-error=sign-compare -Wno-error=missing-declarations) FOREACH(FLAG ${ADDITIONAL_DEBUG_FLAGS}) CHECK_CXX_COMPILER_FLAG("${FLAG}" CXX_HAS_WARNING_${FLAG}) From ff1021db4db34a2d9f78cf27b02d2ab9020c7dd6 Mon Sep 17 00:00:00 2001 From: Michael Callahan Date: Tue, 30 Dec 2014 14:56:07 -0700 Subject: [PATCH 7/7] Try again, also servatrice fixes. --- CMakeLists.txt | 8 ++------ servatrice/src/servatrice.cpp | 4 ++++ servatrice/src/servatrice.h | 4 ++++ 3 files changed, 10 insertions(+), 6 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 817588ce9..76f9eea9d 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -89,12 +89,12 @@ ELSEIF (CMAKE_COMPILER_IS_GNUCXX) SET(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} ${FLAG}") ENDIF() ENDFOREACH() -ELSEIF (CMAKE_COMPILER_IS_CLANGXX) +ELSE() # osx/llvm, bsd/llvm # linux/gcc, bsd/gcc, windows/mingw include(CheckCXXCompilerFlag) - set(CMAKE_CXX_FLAGS_RELEASE "-s -std=c++11 -pedantic -O3") + set(CMAKE_CXX_FLAGS_RELEASE "-std=c++11 -pedantic -O3") set(CMAKE_CXX_FLAGS_DEBUG "-g -Wall -Wextra -std=c++11 -pedantic -Werror") set(ADDITIONAL_DEBUG_FLAGS -Wcast-align -Wmissing-declarations -Wno-long-long -Wno-error=extra -Wno-error=sign-compare -Wno-error=missing-declarations) @@ -105,10 +105,6 @@ ELSEIF (CMAKE_COMPILER_IS_CLANGXX) SET(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} ${FLAG}") ENDIF() ENDFOREACH() -ELSE() - # other: - set(CMAKE_CXX_FLAGS_RELEASE "-s -pedantic -std=c++98 -O3") - set(CMAKE_CXX_FLAGS_DEBUG "-g") ENDIF() # GNU systems need to define the Mersenne exponent for the RNG to compile w/o warning diff --git a/servatrice/src/servatrice.cpp b/servatrice/src/servatrice.cpp index dd5618465..4911a816d 100644 --- a/servatrice/src/servatrice.cpp +++ b/servatrice/src/servatrice.cpp @@ -108,7 +108,11 @@ void Servatrice_GameServer::incomingConnection(qintptr socketDescriptor) QMetaObject::invokeMethod(ssi, "initConnection", Qt::QueuedConnection, Q_ARG(int, socketDescriptor)); } +#if QT_VERSION < 0x050000 void Servatrice_IslServer::incomingConnection(int socketDescriptor) +#else +void Servatrice_IslServer::incomingConnection(qintptr socketDescriptor) +#endif { QThread *thread = new QThread; connect(thread, SIGNAL(finished()), thread, SLOT(deleteLater())); diff --git a/servatrice/src/servatrice.h b/servatrice/src/servatrice.h index 86da6dc58..baa2e6e89 100644 --- a/servatrice/src/servatrice.h +++ b/servatrice/src/servatrice.h @@ -68,7 +68,11 @@ public: Servatrice_IslServer(Servatrice *_server, const QSslCertificate &_cert, const QSslKey &_privateKey, QObject *parent = 0) : QTcpServer(parent), server(_server), cert(_cert), privateKey(_privateKey) { } protected: +#if QT_VERSION < 0x050000 void incomingConnection(int socketDescriptor); +#else + void incomingConnection(qintptr socketDescriptor); +#endif }; class ServerProperties {