diff options
-rw-r--r-- | board.cpp | 28 | ||||
-rw-r--r-- | quacker/bagdisplay.cpp | 5 | ||||
-rw-r--r-- | quacker/configdialog.cpp | 12 | ||||
-rw-r--r-- | quacker/letterbox.cpp | 88 | ||||
-rw-r--r-- | quacker/lister.cpp | 65 | ||||
-rw-r--r-- | quacker/movebox.cpp | 8 | ||||
-rw-r--r-- | quacker/newgame.cpp | 10 | ||||
-rw-r--r-- | quacker/quacker.cpp | 18 | ||||
-rw-r--r-- | quacker/simviewer.cpp | 23 | ||||
-rw-r--r-- | quacker/view.cpp | 16 |
10 files changed, 127 insertions, 146 deletions
@@ -94,14 +94,14 @@ bool Board::isConnected(const Move &move) const if (move.action == Move::Place) { int i = 0; - const LetterString::const_iterator end(move.tiles().end()); - for (LetterString::const_iterator it = move.tiles().begin(); it != end; ++it, ++i) + for (const auto& it : move.tiles()) { const int row = move.horizontal? move.startrow : i + move.startrow; const int column = move.horizontal? i + move.startcol : move.startcol; if (isNonempty(row, column) || (row > 0 && isNonempty(row - 1, column)) || (column > 0 && isNonempty(row, column - 1)) || (row < m_height - 1 && isNonempty(row + 1, column)) || (column < m_width - 1 && isNonempty(row, column + 1))) return true; + i++; } } @@ -116,14 +116,14 @@ bool Board::isUnacceptableOpeningMove(const Move &move) const if (move.action == Move::Place) { int i = 0; - const LetterString::const_iterator end(move.tiles().end()); - for (LetterString::const_iterator it = move.tiles().begin(); it != end; ++it, ++i) + for (const auto& it : move.tiles()) { const int row = move.horizontal? move.startrow : i + move.startrow; const int column = move.horizontal? i + move.startcol : move.startcol; if (row == QUACKLE_BOARD_PARAMETERS->startRow() && column == QUACKLE_BOARD_PARAMETERS->startColumn()) return false; + i++; } } @@ -227,13 +227,12 @@ MoveList Board::allWordsFormedBy(const Move &move) const if (move.horizontal) { int i = 0; - const LetterString::const_iterator end(move.tiles().end()); - for (LetterString::const_iterator it = move.tiles().begin(); it != end; ++it, ++i) + for (const auto& it : move.tiles()) { if (m_letters[move.startrow][i + move.startcol] == QUACKLE_NULL_MARK) { word.clear(); - word += *it; + word += it; int startRow = 0; for (int j = move.startrow - 1; j >= 0; --j) @@ -262,18 +261,18 @@ MoveList Board::allWordsFormedBy(const Move &move) const ret.push_back(Move::createPlaceMove(startRow, (i + move.startcol), /* vertical */ false, word)); } } + i++; } } else { int i = 0; - const LetterString::const_iterator end(move.tiles().end()); - for (LetterString::const_iterator it = move.tiles().begin(); it != end; ++it, ++i) + for (const auto& it : move.tiles()) { if (m_letters[i + move.startrow][move.startcol] == QUACKLE_NULL_MARK) { word.clear(); - word += *it; + word += it; int startColumn = 0; for (int j = move.startcol - 1; j >= 0; --j) @@ -301,17 +300,18 @@ MoveList Board::allWordsFormedBy(const Move &move) const { ret.push_back(Move::createPlaceMove((i + move.startrow), startColumn, /* horizontal */ true, word)); } + i++; } } } } } - for (MoveList::iterator it = ret.begin(); it != ret.end(); ++it) + for (auto& it : ret) { - (*it).setTiles(sanitizedTilesOfMove(*it)); - (*it).setPrettyTiles(prettyTilesOfMove(*it)); - (*it).score = score(*it); + it.setTiles(sanitizedTilesOfMove(it)); + it.setPrettyTiles(prettyTilesOfMove(it)); + it.score = score(it); } return ret; diff --git a/quacker/bagdisplay.cpp b/quacker/bagdisplay.cpp index 9777c06..d5d7d7b 100644 --- a/quacker/bagdisplay.cpp +++ b/quacker/bagdisplay.cpp @@ -58,10 +58,9 @@ void BagDisplay::positionChanged(const Quackle::GamePosition &position) showTiles(position.unseenBag().tiles()); // Birthday - const Quackle::PlayerList &players = position.players(); - for (Quackle::PlayerList::const_iterator it = players.begin(); it != players.end(); ++it) + for (const auto& it : position.players()) { - if ((*it).name() == "zorbonauts") + if (it.name() == "zorbonauts") { m_label->setText(tr("The bag is collapsed in a transparent dead jellyfish-like heap on the table while flies buzz round")); break; diff --git a/quacker/configdialog.cpp b/quacker/configdialog.cpp index 509650e..4345964 100644 --- a/quacker/configdialog.cpp +++ b/quacker/configdialog.cpp @@ -36,12 +36,12 @@ ConfigDialog::ConfigDialog() m_configPages.push_back(new InterfacePage); //m_configPages.push_back(new LetterboxPage); - for (QList<ConfigPage *>::iterator it = m_configPages.begin(); it != m_configPages.end(); ++it) + for (auto& it : m_configPages) { - m_pagesWidget->addWidget(*it); - (*it)->readConfig(); + m_pagesWidget->addWidget(it); + it->readConfig(); - QListWidgetItem *button = new QListWidgetItem((*it)->pageTitle(), m_contentsWidget); + QListWidgetItem *button = new QListWidgetItem(it->pageTitle(), m_contentsWidget); button->setFlags(Qt::ItemIsSelectable | Qt::ItemIsEnabled); } @@ -87,9 +87,9 @@ void ConfigDialog::changePage(QListWidgetItem *current, QListWidgetItem *previou void ConfigDialog::apply() { - for (QList<ConfigPage *>::iterator it = m_configPages.begin(); it != m_configPages.end(); ++it) + for (auto& it : m_configPages) { - (*it)->writeConfig(); + it->writeConfig(); } emit refreshViews(); diff --git a/quacker/letterbox.cpp b/quacker/letterbox.cpp index 2f89467..ab60524 100644 --- a/quacker/letterbox.cpp +++ b/quacker/letterbox.cpp @@ -447,11 +447,11 @@ void Letterbox::markLastAsMissed() void Letterbox::skip() { - for (WordResultList::iterator it = (*m_clueResultsIterator).words.begin(); it != (*m_clueResultsIterator).words.end(); ++it) + for (auto& it : m_clueResultsIterator->words) { - (*it).missed = false; - (*it).keystrokes = (*it).word.length(); - (*it).time = timerLength(); + it.missed = false; + it.keystrokes = it.word.length(); + it.time = timerLength(); } m_mistakeMade = false; @@ -523,17 +523,16 @@ void Letterbox::outputResults() if (m_numberIterator < m_clueResults.count()) stream << "\" Resume: " << m_numberIterator << "\n"; - ClueResultList::iterator end = m_clueResults.end(); QStringList::iterator listIt = m_list.begin(); - for (ClueResultList::iterator it = m_clueResults.begin(); it != end; ++it) + for (const auto& it : m_clueResults) { stream << *listIt; - if ((*it).words.count() > 0) + if (it.words.count() > 0) { stream << " \""; - for (WordResultList::iterator word = (*it).words.begin(); word != (*it).words.end(); ++word) - stream << " " << (*word).word << " " << (*word).time << " " << (*word).keystrokes; + for (const auto& word : it.words) + stream << " " << word.word << " " << word.time << " " << word.keystrokes; } stream << "\n"; @@ -557,13 +556,13 @@ void Letterbox::outputResults() QTextStream stream(&missesFile); stream.setCodec(QTextCodec::codecForName("UTF-8")); - for (ClueResultList::iterator it = m_clueResults.begin(); it != m_clueResults.end(); ++it) + for (const auto& it : m_clueResults) { - for (WordResultList::iterator word = (*it).words.begin(); word != (*it).words.end(); ++word) + for (const auto& word : it.words) { - if ((*word).time == 0) + if (word.time == 0) { - stream << (*it).clue.clueString << "\n"; + stream << it.clue.clueString << "\n"; break; } } @@ -628,13 +627,13 @@ Clue Letterbox::mathClue(const QString &clue) { QString query = word.left(i) + word.right(word.length() - i - 1); Dict::WordList words = QuackleIO::DictFactory::querier()->query(query); - for (Dict::WordList::iterator it = words.begin(); it != words.end(); ++it) + for (const auto& it : words) { - int chew = chewScore((*it).word, word); + int chew = chewScore(it.word, word); if (chew > bestChew) { bestChew = chew; - ret = (*it).word + " + " + word.at(i); + ret = it.word + " + " + word.at(i); } } } @@ -688,29 +687,29 @@ void Letterbox::mistakeDetector(const QString &text) if (upperText.length() == 0) return; - for (Dict::WordList::iterator it = (*m_answersIterator).begin(); it != (*m_answersIterator).end(); ++it) + for (const auto& it : *m_answersIterator) { if (LetterboxSettings::self()->spaceComplete) { if (upperText[0] == ' ') { - if (!m_submittedAnswers.contains((*it).word)) + if (!m_submittedAnswers.contains(it.word)) { - processAnswer((*it).word); + processAnswer(it.word); return; } } } else { - if ((*it).word.startsWith(upperText) && !m_submittedAnswers.contains((*it).word)) + if (it.word.startsWith(upperText) && !m_submittedAnswers.contains(it.word)) { if (m_mistakeMade) statusBar()->clearMessage(); if (LetterboxSettings::self()->autoCompleteLength > 0) if (upperText.length() == LetterboxSettings::self()->autoCompleteLength) - processAnswer((*it).word); + processAnswer(it.word); return; } @@ -741,19 +740,19 @@ void Letterbox::processAnswer(const QString &answer) return; } - for (WordResultList::iterator it = (*m_clueResultsIterator).words.begin(); it != (*m_clueResultsIterator).words.end(); ++it) + for (auto& it : m_clueResultsIterator->words) { - if ((*it).word == upperAnswer) + if (it.word == upperAnswer) { - (*it).missed = false; - (*it).keystrokes = m_keystrokes; - (*it).time = m_time.elapsed() - m_pauseMs; + it.missed = false; + it.keystrokes = m_keystrokes; + it.time = m_time.elapsed() - m_pauseMs; } } - for (Dict::WordList::iterator it = (*m_answersIterator).begin(); it != (*m_answersIterator).end(); ++it) + for (const auto& it : *m_answersIterator) { - if ((*it).word == upperAnswer) + if (it.word == upperAnswer) { m_submittedAnswers.append(upperAnswer); m_lineEdit->clear(); @@ -1061,27 +1060,21 @@ ClueResult::ClueResult(const QString &newClue) void ClueResult::setWordList(Dict::WordList answers) { - for (Dict::WordList::iterator it = answers.begin(); it != answers.end(); ++it) + for (const auto& it : answers) { bool isAnswerInOurWords = false; - for (WordResultList::iterator wrIt = words.begin(); wrIt != words.end(); ++wrIt) - { - if ((*it).word == (*wrIt).word) - { - isAnswerInOurWords = true; - break; - } - } + for (const auto& wrIt : words) + isAnswerInOurWords = isAnswerInOurWords || (it.word == wrIt.word); if (!isAnswerInOurWords) - words.append(WordResult((*it).word)); + words.append(WordResult(it.word)); } } void ClueResult::resetStats() { - for (WordResultList::iterator wrIt = words.begin(); wrIt != words.end(); ++wrIt) - (*wrIt).resetStats(); + for (auto& wrIt : words) + wrIt.resetStats(); } Clue::Clue() @@ -1273,26 +1266,25 @@ QString HTMLRepresentation::htmlForWordList(const Dict::WordList &wordList) bool hasFrontExtensionColumn = false; bool hasBackExtensionColumn = false; - Dict::WordList::ConstIterator end = wordList.end(); - for (Dict::WordList::ConstIterator it = wordList.begin(); it != end; ++it) + for (const auto& it : wordList) { - if (!(tableOfExtensions((*it).getFrontExtensionList()).isEmpty())) + if (!(tableOfExtensions(it.getFrontExtensionList()).isEmpty())) hasFrontExtensionColumn = true; - if (!(tableOfExtensions((*it).getBackExtensionList()).isEmpty())) + if (!(tableOfExtensions(it.getBackExtensionList()).isEmpty())) hasBackExtensionColumn = true; } - for (Dict::WordList::ConstIterator it = wordList.begin(); it != end; ++it) + for (const auto& it : wordList) { html += "<tr>"; if (hasFrontExtensionColumn) - html += "<td align=right>" + tableOfExtensions((*it).getFrontExtensionList()) + "</td>"; + html += "<td align=right>" + tableOfExtensions(it.getFrontExtensionList()) + "</td>"; - html += "<td align=center>" + htmlForSolution(*it) + "</td>"; + html += "<td align=center>" + htmlForSolution(it) + "</td>"; if (hasBackExtensionColumn) - html += "<td align=left>" + tableOfExtensions((*it).getBackExtensionList()) + "</td>"; + html += "<td align=left>" + tableOfExtensions(it.getBackExtensionList()) + "</td>"; html += "</tr>"; } diff --git a/quacker/lister.cpp b/quacker/lister.cpp index 30b0b4c..6193ba0 100644 --- a/quacker/lister.cpp +++ b/quacker/lister.cpp @@ -244,15 +244,15 @@ void ListerDialog::openFile() line = line.left(quoteMarkIndex).trimmed(); QStringList words(line.split(" ")); - for (QStringList::Iterator it = words.begin(); it != words.end(); ++it) + for (const auto& it : words) { bool found = false; - Dict::WordList results(QuackleIO::DictFactory::querier()->query(*it)); - for (Dict::WordList::Iterator resultsIt = results.begin(); resultsIt != results.end(); ++resultsIt) + Dict::WordList results(QuackleIO::DictFactory::querier()->query(it)); + for (const auto& resultsIt : results) { - if ((*resultsIt).word == *it) + if (resultsIt.word == it) { - m_wordList.append(*resultsIt); + m_wordList.append(resultsIt); found = true; break; } @@ -394,9 +394,8 @@ void ListerDialog::populateListBox() { QStringList words; - Dict::WordList::Iterator end = m_wordList.end(); - for (Dict::WordList::Iterator it = m_wordList.begin(); it != end; ++it) - words.append((*it).word + ((*it).british? "#" : "")); + for (const auto& it : m_wordList) + words.append(it.word + (it.british? "#" : "")); m_listBox->clear(); m_listBox->addItems(words); @@ -408,11 +407,10 @@ QMap<QString, Dict::WordList> ListerDialog::anagramMap() { QMap<QString, Dict::WordList> anagramSets; - Dict::WordList::Iterator end = m_wordList.end(); - for (Dict::WordList::Iterator it = m_wordList.begin(); it != end; ++it) + for (const auto& it : m_wordList) { - QString alpha = QuackleIO::DictFactory::querier()->alphagram((*it).word); - anagramSets[alpha].append(*it); + QString alpha = QuackleIO::DictFactory::querier()->alphagram(it.word); + anagramSets[alpha].append(it); } return anagramSets; @@ -435,12 +433,11 @@ QString ListerDialog::writeList(bool alphagrams) QMap<QString, Dict::WordList> map(anagramMap()); - Dict::WordList::Iterator end = m_wordList.end(); - for (Dict::WordList::Iterator it = m_wordList.begin(); it != end; ++it) + for (const auto& it : m_wordList) { if (alphagrams) { - QString alphagram(QuackleIO::DictFactory::querier()->alphagram((*it).word)); + QString alphagram(QuackleIO::DictFactory::querier()->alphagram(it.word)); if (map.contains(alphagram)) { stream << alphagram << "\n"; @@ -448,7 +445,7 @@ QString ListerDialog::writeList(bool alphagrams) } } else - stream << (*it).word << "\n"; + stream << it.word << "\n"; } file.close(); @@ -554,12 +551,12 @@ void PlayabilityFilter::apply() Dict::Word newEntry; newEntry.word = it.key(); - for (Dict::WordList::Iterator extIt = it.value().begin(); extIt != it.value().end(); ++extIt) + for (const auto& extIt : it.value()) { if (useProb) - newEntry.probability += (*extIt).probability; + newEntry.probability += extIt.probability; else - newEntry.playability += (*extIt).playability; + newEntry.playability += extIt.playability; } intermediateList.append(newEntry); @@ -575,8 +572,7 @@ void PlayabilityFilter::apply() Dict::WordList filteredList; - Dict::WordList::Iterator intermediateEnd = intermediateList.end(); - for (Dict::WordList::Iterator it = intermediateList.begin(); it != intermediateEnd; ++it) + for (const auto& it : intermediateList) { ++index; @@ -586,7 +582,7 @@ void PlayabilityFilter::apply() if (index < minimumRank) continue; - filteredList += map[(*it).word]; + filteredList += map[it.word]; } m_dialog->setWordList(filteredList); @@ -621,11 +617,10 @@ void RegexFilter::apply() Dict::WordList filteredList; const Dict::WordList &list = m_dialog->wordList();; - Dict::WordList::ConstIterator end = list.end(); - for (Dict::WordList::ConstIterator it = list.begin(); it != end; ++it) - if (regexp.indexIn((*it).word) >= 0) - filteredList.append(*it); + for (const auto& it : list) + if (regexp.indexIn(it.word) >= 0) + filteredList.append(it); m_dialog->setWordList(filteredList); } @@ -664,23 +659,22 @@ void NumAnagramsFilter::apply() QMap<QString, Dict::WordList> map(m_dialog->anagramMap()); - Dict::WordList::Iterator end = m_dialog->wordList().end(); - for (Dict::WordList::Iterator it = m_dialog->wordList().begin(); it != end; ++it) + for (const auto& it : m_dialog->wordList()) { int twl = 0; int british = 0; - QString alphagram(QuackleIO::DictFactory::querier()->alphagram((*it).word)); + QString alphagram(QuackleIO::DictFactory::querier()->alphagram(it.word)); - for (Dict::WordList::Iterator word = map[alphagram].begin(); word != map[alphagram].end(); ++word) + for (const auto& word : map[alphagram]) { - if ((*word).british) + if (word.british) british++; else twl++; } if ((twl == numTwlAnagrams) && (british == numOswOnlyAnagrams)) - filteredList.append(*it); + filteredList.append(it); } m_dialog->setWordList(filteredList); @@ -709,11 +703,10 @@ void KeepBritishFilter::apply() { Dict::WordList filteredList; const Dict::WordList &list = m_dialog->wordList();; - Dict::WordList::ConstIterator end = list.end(); - for (Dict::WordList::ConstIterator it = list.begin(); it != end; ++it) - if ((*it).british) - filteredList.append(*it); + for (const auto& it : list) + if (it.british) + filteredList.append(it); m_dialog->setWordList(filteredList); } diff --git a/quacker/movebox.cpp b/quacker/movebox.cpp index 44b88e0..7b6ccd9 100644 --- a/quacker/movebox.cpp +++ b/quacker/movebox.cpp @@ -94,11 +94,11 @@ void MoveBox::removeMove() Quackle::MoveList selectedMoves; - for (QList<QTreeWidgetItem *>::iterator it = selectedItems.begin(); it != selectedItems.end(); ++it) + for (const auto& it : selectedItems) { for (QMap<Quackle::Move, QTreeWidgetItem *>::iterator mapIt = m_moveMap.begin(); mapIt != m_moveMap.end(); ++mapIt) { - if (mapIt.value() == *it) + if (mapIt.value() == it) { selectedMoves.push_back(mapIt.key()); break; @@ -236,8 +236,8 @@ void MoveBox::positionChanged(const Quackle::GamePosition &position) { if (m_rack.tiles() != position.currentPlayer().rack().tiles()) { - for (QMap<Quackle::Move, QTreeWidgetItem *>::iterator mapIt = m_moveMap.begin(); mapIt != m_moveMap.end(); ++mapIt) - delete mapIt.value(); + for (auto& mapIt : m_moveMap) + delete mapIt; m_moveMap.clear(); } diff --git a/quacker/newgame.cpp b/quacker/newgame.cpp index 7d3006e..9b9a242 100644 --- a/quacker/newgame.cpp +++ b/quacker/newgame.cpp @@ -171,9 +171,9 @@ void PlayerTab::populatePlayers() else playerIds = settings.value("quackle/newgame/playerIds", QList<QVariant>()).toList(); - for (QList<QVariant>::iterator it = playerIds.begin(); it != playerIds.end(); ++it) + for (const auto& it : playerIds) { - int id = (*it).toInt(); + int id = it.toInt(); QString infoString = settings.value(QString("quackle/newgame/players/%1").arg(id)).toString(); if (infoString.isNull()) @@ -296,11 +296,11 @@ void PlayerTab::addPlayer() void PlayerTab::removePlayer() { QList<QTreeWidgetItem *> items = m_playersTreeWidget->selectedItems(); - for (QList<QTreeWidgetItem *>::iterator it = items.begin(); it != items.end(); ++it) + for (auto& it : items) { - delete *it; + delete it; - QList<Quackle::Player> correspondingPlayers(m_playerMap.keys(*it)); + QList<Quackle::Player> correspondingPlayers(m_playerMap.keys(it)); if (correspondingPlayers.size() > 0) m_playerMap.remove(correspondingPlayers.front()); diff --git a/quacker/quacker.cpp b/quacker/quacker.cpp index 0d5514d..79c22bb 100644 --- a/quacker/quacker.cpp +++ b/quacker/quacker.cpp @@ -511,10 +511,10 @@ void TopLevel::stopEverything() // stop simulation if it's going simulate(false); - for (QList<OppoThread *>::iterator it = m_otherOppoThreads.begin(); it != m_otherOppoThreads.end(); ++it) - (*it)->abort(); - for (QList<OppoThread *>::iterator it = m_oppoThreads.begin(); it != m_oppoThreads.end(); ++it) - (*it)->abort(); + for (const auto& it : m_otherOppoThreads) + it->abort(); + for (const auto& it : m_oppoThreads) + it->abort(); } OppoThreadProgressBar *TopLevel::createProgressBarForThread(OppoThread *thread) @@ -1780,9 +1780,8 @@ void TopLevel::createMenu() move->addSeparator(); - QList<QAction *> kibitzAsActions = m_kibitzAsActions->actions(); - for (QList<QAction *>::iterator it = kibitzAsActions.begin(); it != kibitzAsActions.end(); ++it) - move->addAction(*it); + for (const auto& it : m_kibitzAsActions->actions()) + move->addAction(it); move->addSeparator(); @@ -1801,9 +1800,8 @@ void TopLevel::createMenu() QMenu *reports = menuBar()->addMenu(tr("Re&ports")); - QList<QAction *> reportAsActions = m_reportAsActions->actions(); - for (QList<QAction *>::iterator it = reportAsActions.begin(); it != reportAsActions.end(); ++it) - reports->addAction(*it); + for (const auto& it : m_reportAsActions->actions()) + reports->addAction(it); reports->addSeparator(); diff --git a/quacker/simviewer.cpp b/quacker/simviewer.cpp index 587b862..a9d65fb 100644 --- a/quacker/simviewer.cpp +++ b/quacker/simviewer.cpp @@ -80,17 +80,16 @@ void AveragesTab::setSimulator(const Quackle::Simulator &simulator) html += "<hr />"; - const Quackle::SimmedMoveList::const_iterator end(simulator.simmedMoves().end()); - for (Quackle::SimmedMoveList::const_iterator it = simulator.simmedMoves().begin(); it != end; ++it) + for (const auto& it : simulator.simmedMoves()) { - if (!(*it).includeInSimulation()) + if (!it.includeInSimulation()) continue; QString levels; - for (Quackle::LevelList::const_iterator levelIt = (*it).levels.begin(); levelIt != (*it).levels.end(); ++levelIt) + for (const auto& levelIt : it.levels) { QString plays; - for (Quackle::PositionStatisticsList::const_iterator valueIt = (*levelIt).statistics.begin(); valueIt != (*levelIt).statistics.end(); ++valueIt) + for (const auto& valueIt : levelIt.statistics) { //plays += QString("(%1) ").arg((*valueIt).score.averagedValue()); //plays += tr("(bingos %1) ").arg((*valueIt).bingos.averagedValue()); @@ -100,15 +99,15 @@ void AveragesTab::setSimulator(const Quackle::Simulator &simulator) levels += QString("<li>%1</li>").arg(plays); } - html += QString("<h3>%1</h3><ol>%2</ol>").arg(QuackleIO::Util::moveToDetailedString((*it).move)).arg(levels); + html += QString("<h3>%1</h3><ol>%2</ol>").arg(QuackleIO::Util::moveToDetailedString(it.move)).arg(levels); html += "<ul>"; - if ((*it).residual.hasValues()) - html += tr("<li>Rack leftover value: %1</li>").arg((*it).residual.averagedValue()); - if ((*it).gameSpread.hasValues()) - html += tr("<li>Spread: %1 (sd %2)</li>").arg((*it).gameSpread.averagedValue()).arg((*it).gameSpread.standardDeviation()); - html += tr("<li>Valuation: %1</li>").arg((*it).calculateEquity()); - html += tr("<li>Bogowin %: %1%</li>").arg((*it).calculateWinPercentage()); + if (it.residual.hasValues()) + html += tr("<li>Rack leftover value: %1</li>").arg(it.residual.averagedValue()); + if (it.gameSpread.hasValues()) + html += tr("<li>Spread: %1 (sd %2)</li>").arg(it.gameSpread.averagedValue()).arg(it.gameSpread.standardDeviation()); + html += tr("<li>Valuation: %1</li>").arg(it.calculateEquity()); + html += tr("<li>Bogowin %: %1%</li>").arg(it.calculateWinPercentage()); html += "</ul>"; } diff --git a/quacker/view.cpp b/quacker/view.cpp index f7c2e09..13cf514 100644 --- a/quacker/view.cpp +++ b/quacker/view.cpp @@ -50,19 +50,19 @@ void View::positionChanged(const Quackle::GamePosition &position) void View::movesChanged(const Quackle::MoveList &moves) { - for (QList<View *>::iterator it = m_subviews.begin(); it != m_subviews.end(); ++it) - (*it)->movesChanged(moves); + for (auto& it : m_subviews) + it->movesChanged(moves); } void View::connectSubviewSignals() { - for (QList<View *>::iterator it = m_subviews.begin(); it != m_subviews.end(); ++it) + for (auto& it : m_subviews) { - connect(*it, SIGNAL(statusMessage(const QString &)), this, SIGNAL(statusMessage(const QString &))); - connect(*it, SIGNAL(setCandidateMove(const Quackle::Move &)), this, SIGNAL(setCandidateMove(const Quackle::Move &))); - connect(*it, SIGNAL(removeCandidateMoves(const Quackle::MoveList &)), this, SIGNAL(removeCandidateMoves(const Quackle::MoveList &))); - connect(*it, SIGNAL(commit()), this, SIGNAL(commit())); - connect(*it, SIGNAL(setRack(const Quackle::Rack &)), this, SIGNAL(setRack(const Quackle::Rack &))); + connect(it, SIGNAL(statusMessage(const QString &)), this, SIGNAL(statusMessage(const QString &))); + connect(it, SIGNAL(setCandidateMove(const Quackle::Move &)), this, SIGNAL(setCandidateMove(const Quackle::Move &))); + connect(it, SIGNAL(removeCandidateMoves(const Quackle::MoveList &)), this, SIGNAL(removeCandidateMoves(const Quackle::MoveList &))); + connect(it, SIGNAL(commit()), this, SIGNAL(commit())); + connect(it, SIGNAL(setRack(const Quackle::Rack &)), this, SIGNAL(setRack(const Quackle::Rack &))); } } |