diff --git a/dealer.cpp b/dealer.cpp
--- a/dealer.cpp
+++ b/dealer.cpp
@@ -1738,6 +1738,7 @@
QString maxWinStreakKey = QStringLiteral("maxwinstreak%1").arg( id );
QString loseStreakKey = QStringLiteral("loosestreak%1").arg( id );
QString maxLoseStreakKey = QStringLiteral("maxloosestreak%1").arg( id );
+ QString minMovesKey = QStringLiteral("minmoves%1").arg( id );
KConfigGroup config(KSharedConfig::openConfig(), scores_group);
@@ -1747,6 +1748,7 @@
int maxWinStreak = config.readEntry( maxWinStreakKey, 0 );
int loseStreak = config.readEntry( loseStreakKey, 0 );
int maxLoseStreak = config.readEntry( maxLoseStreakKey, 0 );
+ int minMoves = config.readEntry( minMovesKey, -1 );
++totalPlayed;
@@ -1756,6 +1758,10 @@
++winStreak;
maxWinStreak = qMax( winStreak, maxWinStreak );
loseStreak = 0;
+ if ( minMoves < 0 )
+ minMoves = moveCount();
+ else
+ minMoves = qMin( minMoves, moveCount() );
}
else
{
@@ -1770,6 +1776,7 @@
config.writeEntry( maxWinStreakKey, maxWinStreak );
config.writeEntry( loseStreakKey, loseStreak );
config.writeEntry( maxLoseStreakKey, maxLoseStreak );
+ config.writeEntry( minMovesKey, minMoves );
m_statisticsRecorded = true;
}
diff --git a/statisticsdialog.cpp b/statisticsdialog.cpp
--- a/statisticsdialog.cpp
+++ b/statisticsdialog.cpp
@@ -122,6 +122,11 @@
ui->Won->setText( QString::number(w));
ui->WinStreak->setText( QString::number( cg.readEntry(QStringLiteral("maxwinstreak%1").arg(gameIndex), 0)));
ui->LoseStreak->setText( QString::number( cg.readEntry(QStringLiteral("maxloosestreak%1").arg(gameIndex), 0)));
+ int minMoves = cg.readEntry(QStringLiteral("minmoves%1").arg(gameIndex), -1);
+ if(minMoves < 0)
+ ui->MinMoves->setText("∞");
+ else
+ ui->MinMoves->setText(QString::number(minMoves));
unsigned int l = cg.readEntry(QStringLiteral("loosestreak%1").arg(gameIndex),0);
if (l)
ui->CurrentStreak->setText( i18np("1 loss", "%1 losses", l) );
@@ -141,6 +146,7 @@
cg.writeEntry(QStringLiteral("maxloosestreak%1").arg(gameIndex),0);
cg.writeEntry(QStringLiteral("loosestreak%1").arg(gameIndex),0);
cg.writeEntry(QStringLiteral("winstreak%1").arg(gameIndex),0);
+ cg.writeEntry(QStringLiteral("minmoves%1").arg(gameIndex),-1);
cg.sync();
setGameType(gameIndex);
diff --git a/statisticsdialog.ui b/statisticsdialog.ui
--- a/statisticsdialog.ui
+++ b/statisticsdialog.ui
@@ -141,6 +141,23 @@
+ -
+
+
+ Minimal number of moves:
+
+
+
+ -
+
+
+
+
+
+ Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter
+
+
+