From d884e72a3e336c08c89405bb107e4e1dc0972ecc Mon Sep 17 00:00:00 2001 From: Max-Wilhelm Bruker Date: Tue, 22 Jun 2010 01:07:03 +0200 Subject: [PATCH 1/2] spectator omniscience fix --- common/server_game.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/common/server_game.cpp b/common/server_game.cpp index 5eb620d0..ac5caa6d 100644 --- a/common/server_game.cpp +++ b/common/server_game.cpp @@ -268,7 +268,7 @@ QList Server_Game::getGameState(Server_Player *playerWhosAs Server_CardZone *zone = zoneIterator.next().value(); QList cardList; if ( - ((playerWhosAsking == player) && (zone->getType() != HiddenZone)) + (((playerWhosAsking == player) || (playerWhosAsking->getSpectator() && spectatorsSeeEverything)) && (zone->getType() != HiddenZone)) || ((playerWhosAsking != player) && (zone->getType() == PublicZone)) ) { QListIterator cardIterator(zone->cards); From 72c5b4eb27370e1639dff6e0dae8d154c1c77496 Mon Sep 17 00:00:00 2001 From: Max-Wilhelm Bruker Date: Thu, 24 Jun 2010 12:34:57 +0200 Subject: [PATCH 2/2] minor oracle importer improvement --- oracle/src/window_main.cpp | 30 ++++++++++++++++++++++++++++-- oracle/src/window_main.h | 4 +++- 2 files changed, 31 insertions(+), 3 deletions(-) diff --git a/oracle/src/window_main.cpp b/oracle/src/window_main.cpp index 4907cf3b..2ffa7ad9 100644 --- a/oracle/src/window_main.cpp +++ b/oracle/src/window_main.cpp @@ -27,11 +27,21 @@ WindowMain::WindowMain(QWidget *parent) checkboxArea->setWidget(checkboxFrame); checkboxArea->setWidgetResizable(true); + checkAllButton = new QPushButton(tr("&Check all")); + connect(checkAllButton, SIGNAL(clicked()), this, SLOT(actCheckAll())); + uncheckAllButton = new QPushButton(tr("&Uncheck all")); + connect(uncheckAllButton, SIGNAL(clicked()), this, SLOT(actUncheckAll())); + + QHBoxLayout *checkAllButtonLayout = new QHBoxLayout; + checkAllButtonLayout->addWidget(checkAllButton); + checkAllButtonLayout->addWidget(uncheckAllButton); + startButton = new QPushButton(tr("&Start download")); connect(startButton, SIGNAL(clicked()), this, SLOT(actStart())); QVBoxLayout *settingsLayout = new QVBoxLayout; settingsLayout->addWidget(checkboxArea); + settingsLayout->addLayout(checkAllButtonLayout); settingsLayout->addWidget(startButton); totalLabel = new QLabel(tr("Total progress:")); @@ -155,12 +165,28 @@ void WindowMain::updateFileProgress(int bytesRead, int totalBytes) fileProgressBar->setValue(bytesRead); } +void WindowMain::actCheckAll() +{ + for (int i = 0; i < checkBoxList.size(); ++i) + checkBoxList[i]->setChecked(true); +} + +void WindowMain::actUncheckAll() +{ + for (int i = 0; i < checkBoxList.size(); ++i) + checkBoxList[i]->setChecked(false); +} + void WindowMain::actStart() { - startButton->setEnabled(false); + int setsCount = importer->startDownload(); + if (!setsCount) { + QMessageBox::critical(this, tr("Error"), tr("No sets to download selected.")); + return; + } for (int i = 0; i < checkBoxList.size(); ++i) checkBoxList[i]->setEnabled(false); - int setsCount = importer->startDownload(); + startButton->setEnabled(false); totalProgressBar->setMaximum(setsCount); } diff --git a/oracle/src/window_main.h b/oracle/src/window_main.h index 61ae7110..afcf897d 100644 --- a/oracle/src/window_main.h +++ b/oracle/src/window_main.h @@ -25,7 +25,7 @@ private: QMenu *fileMenu; QAction *aLoadSetsFile, *aDownloadSetsFile, *aExit; - QPushButton *startButton; + QPushButton *checkAllButton, *uncheckAllButton, *startButton; QLabel *totalLabel, *fileLabel, *nextSetLabel1, *nextSetLabel2; QProgressBar *totalProgressBar, *fileProgressBar; QTextEdit *messageLog; @@ -37,6 +37,8 @@ private slots: void updateTotalProgress(int cardsImported, int setIndex, const QString &nextSetName); void updateFileProgress(int bytesRead, int totalBytes); void updateSetList(); + void actCheckAll(); + void actUncheckAll(); void actStart(); void actLoadSetsFile(); void actDownloadSetsFile();