Merge pull request #710 from ctrlaltca/pvt_filters
Disable filters in "show user's games" dialog
This commit is contained in:
commit
5f3f767178
4 changed files with 19 additions and 11 deletions
|
@ -17,15 +17,20 @@
|
||||||
#include "pb/serverinfo_game.pb.h"
|
#include "pb/serverinfo_game.pb.h"
|
||||||
#include "pb/response.pb.h"
|
#include "pb/response.pb.h"
|
||||||
|
|
||||||
GameSelector::GameSelector(AbstractClient *_client, const TabSupervisor *_tabSupervisor, TabRoom *_room, const QMap<int, QString> &_rooms, const QMap<int, GameTypeMap> &_gameTypes, const bool restoresettings, QWidget *parent)
|
GameSelector::GameSelector(AbstractClient *_client, const TabSupervisor *_tabSupervisor, TabRoom *_room, const QMap<int, QString> &_rooms, const QMap<int, GameTypeMap> &_gameTypes, const bool restoresettings, const bool showfilters, QWidget *parent)
|
||||||
: QGroupBox(parent), client(_client), tabSupervisor(_tabSupervisor), room(_room)
|
: QGroupBox(parent), client(_client), tabSupervisor(_tabSupervisor), room(_room)
|
||||||
{
|
{
|
||||||
gameListView = new QTreeView;
|
gameListView = new QTreeView;
|
||||||
gameListModel = new GamesModel(_rooms, _gameTypes, this);
|
gameListModel = new GamesModel(_rooms, _gameTypes, this);
|
||||||
gameListProxyModel = new GamesProxyModel(this, tabSupervisor->getUserInfo());
|
if(showfilters)
|
||||||
gameListProxyModel->setSourceModel(gameListModel);
|
{
|
||||||
gameListProxyModel->setSortCaseSensitivity(Qt::CaseInsensitive);
|
gameListProxyModel = new GamesProxyModel(this, tabSupervisor->getUserInfo());
|
||||||
gameListView->setModel(gameListProxyModel);
|
gameListProxyModel->setSourceModel(gameListModel);
|
||||||
|
gameListProxyModel->setSortCaseSensitivity(Qt::CaseInsensitive);
|
||||||
|
gameListView->setModel(gameListProxyModel);
|
||||||
|
} else {
|
||||||
|
gameListView->setModel(gameListModel);
|
||||||
|
}
|
||||||
gameListView->setSortingEnabled(true);
|
gameListView->setSortingEnabled(true);
|
||||||
gameListView->sortByColumn(gameListModel->startTimeColIndex(), Qt::AscendingOrder);
|
gameListView->sortByColumn(gameListModel->startTimeColIndex(), Qt::AscendingOrder);
|
||||||
gameListView->setAlternatingRowColors(true);
|
gameListView->setAlternatingRowColors(true);
|
||||||
|
@ -36,7 +41,7 @@ GameSelector::GameSelector(AbstractClient *_client, const TabSupervisor *_tabSup
|
||||||
if (room)
|
if (room)
|
||||||
gameTypeMap = gameListModel->getGameTypes().value(room->getRoomId());
|
gameTypeMap = gameListModel->getGameTypes().value(room->getRoomId());
|
||||||
|
|
||||||
if (restoresettings)
|
if (showfilters && restoresettings)
|
||||||
gameListProxyModel->loadFilterParameters(gameTypeMap);
|
gameListProxyModel->loadFilterParameters(gameTypeMap);
|
||||||
|
|
||||||
#if QT_VERSION < 0x050000
|
#if QT_VERSION < 0x050000
|
||||||
|
@ -61,8 +66,11 @@ GameSelector::GameSelector(AbstractClient *_client, const TabSupervisor *_tabSup
|
||||||
spectateButton = new QPushButton;
|
spectateButton = new QPushButton;
|
||||||
|
|
||||||
QHBoxLayout *buttonLayout = new QHBoxLayout;
|
QHBoxLayout *buttonLayout = new QHBoxLayout;
|
||||||
buttonLayout->addWidget(filterButton);
|
if(showfilters)
|
||||||
buttonLayout->addWidget(clearFilterButton);
|
{
|
||||||
|
buttonLayout->addWidget(filterButton);
|
||||||
|
buttonLayout->addWidget(clearFilterButton);
|
||||||
|
}
|
||||||
buttonLayout->addStretch();
|
buttonLayout->addStretch();
|
||||||
if (room)
|
if (room)
|
||||||
buttonLayout->addWidget(createButton);
|
buttonLayout->addWidget(createButton);
|
||||||
|
|
|
@ -36,7 +36,7 @@ private:
|
||||||
QPushButton *filterButton, *clearFilterButton, *createButton, *joinButton, *spectateButton;
|
QPushButton *filterButton, *clearFilterButton, *createButton, *joinButton, *spectateButton;
|
||||||
GameTypeMap gameTypeMap;
|
GameTypeMap gameTypeMap;
|
||||||
public:
|
public:
|
||||||
GameSelector(AbstractClient *_client, const TabSupervisor *_tabSupervisor, TabRoom *_room, const QMap<int, QString> &_rooms, const QMap<int, GameTypeMap> &_gameTypes, const bool restoresettings, QWidget *parent = 0);
|
GameSelector(AbstractClient *_client, const TabSupervisor *_tabSupervisor, TabRoom *_room, const QMap<int, QString> &_rooms, const QMap<int, GameTypeMap> &_gameTypes, const bool restoresettings, const bool showfilters, QWidget *parent = 0);
|
||||||
void retranslateUi();
|
void retranslateUi();
|
||||||
void processGameInfo(const ServerInfo_Game &info);
|
void processGameInfo(const ServerInfo_Game &info);
|
||||||
};
|
};
|
||||||
|
|
|
@ -37,7 +37,7 @@ TabRoom::TabRoom(TabSupervisor *_tabSupervisor, AbstractClient *_client, ServerI
|
||||||
|
|
||||||
QMap<int, GameTypeMap> tempMap;
|
QMap<int, GameTypeMap> tempMap;
|
||||||
tempMap.insert(info.room_id(), gameTypes);
|
tempMap.insert(info.room_id(), gameTypes);
|
||||||
gameSelector = new GameSelector(client, tabSupervisor, this, QMap<int, QString>(), tempMap, true);
|
gameSelector = new GameSelector(client, tabSupervisor, this, QMap<int, QString>(), tempMap, true, true);
|
||||||
userList = new UserList(tabSupervisor, client, UserList::RoomList);
|
userList = new UserList(tabSupervisor, client, UserList::RoomList);
|
||||||
connect(userList, SIGNAL(openMessageDialog(const QString &, bool)), this, SIGNAL(openMessageDialog(const QString &, bool)));
|
connect(userList, SIGNAL(openMessageDialog(const QString &, bool)), this, SIGNAL(openMessageDialog(const QString &, bool)));
|
||||||
|
|
||||||
|
|
|
@ -68,7 +68,7 @@ void UserContextMenu::gamesOfUserReceived(const Response &resp, const CommandCon
|
||||||
gameTypeMap.insert(roomInfo.room_id(), tempMap);
|
gameTypeMap.insert(roomInfo.room_id(), tempMap);
|
||||||
}
|
}
|
||||||
|
|
||||||
GameSelector *selector = new GameSelector(client, tabSupervisor, 0, roomMap, gameTypeMap, false);
|
GameSelector *selector = new GameSelector(client, tabSupervisor, 0, roomMap, gameTypeMap, false, false);
|
||||||
const int gameListSize = response.game_list_size();
|
const int gameListSize = response.game_list_size();
|
||||||
for (int i = 0; i < gameListSize; ++i)
|
for (int i = 0; i < gameListSize; ++i)
|
||||||
selector->processGameInfo(response.game_list(i));
|
selector->processGameInfo(response.game_list(i));
|
||||||
|
|
Loading…
Reference in a new issue