Hello community,

here is the log from the commit of package kblocks for openSUSE:Factory checked 
in at 2016-01-10 13:04:29
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/kblocks (Old)
 and      /work/SRC/openSUSE:Factory/.kblocks.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "kblocks"

Changes:
--------
--- /work/SRC/openSUSE:Factory/kblocks/kblocks.changes  2015-11-15 
12:31:26.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.kblocks.new/kblocks.changes     2016-01-10 
13:04:33.000000000 +0100
@@ -1,0 +2,9 @@
+Sun Dec 13 13:10:16 UTC 2015 - tittiatc...@gmail.com
+
+- Update to KDE Applications 15.12.0
+   * KDE Applications 15.12.0 
+   * https://www.kde.org/announcements/announce-applications-15.12.0.php
+   * boo#958887
+
+
+-------------------------------------------------------------------

Old:
----
  kblocks-15.08.3.tar.xz

New:
----
  kblocks-15.12.0.tar.xz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ kblocks.spec ++++++
--- /var/tmp/diff_new_pack.6TjV95/_old  2016-01-10 13:04:34.000000000 +0100
+++ /var/tmp/diff_new_pack.6TjV95/_new  2016-01-10 13:04:34.000000000 +0100
@@ -42,7 +42,7 @@
 License:        LGPL-2.1+
 Group:          Amusements/Games/Strategy/Real Time
 Url:            http://www.kde.org
-Version:        15.08.3
+Version:        15.12.0
 Release:        0
 Source0:        kblocks-%{version}.tar.xz
 Obsoletes:      %{name}5 < %{version}

++++++ kblocks-15.08.3.tar.xz -> kblocks-15.12.0.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kblocks-15.08.3/KBlocksField.cpp 
new/kblocks-15.12.0/KBlocksField.cpp
--- old/kblocks-15.08.3/KBlocksField.cpp        2015-11-04 19:39:44.000000000 
+0100
+++ new/kblocks-15.12.0/KBlocksField.cpp        2015-11-11 17:01:22.000000000 
+0100
@@ -115,11 +115,35 @@
 
 void KBlocksField::removeFilledLine(int lineID)
 {
+    // This function removes line number lineID which has been identified as
+    // containing no empty cells (by KBlocksField::checkFilledLine).
+    //
+    // The line is removed by moving the contents of all cells above
+    // line #lineID one line down, effectively overwriting the contents
+    // of line #lineID.
+    //
+    // To this end we iterate over all lines, starting at line #lineID and
+    // ending with the line just below the top line.
+
     for (int i = lineID; i > 0; i--) {
+
+        // For each line we iterate over all cells ...
+
         for (int j = 0; j < mWidth; j++) {
+
+            // ... and set the content of the cell to the content of the
+            // same cell one line above.
+
             maBoard[i][j] = maBoard[i - 1][j];
         }
     }
+
+    // Finally, the top line is filled with empty cells ...
+    for (int j = 0; j < mWidth; j++) {
+        maBoard[0][j] = false;
+    }
+
+    // ... and the modification ID is increased by one.
     mCurModifyID += 1;
 }
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kblocks-15.08.3/KBlocksGraphics.cpp 
new/kblocks-15.12.0/KBlocksGraphics.cpp
--- old/kblocks-15.08.3/KBlocksGraphics.cpp     2015-11-04 19:39:44.000000000 
+0100
+++ new/kblocks-15.12.0/KBlocksGraphics.cpp     2015-11-11 17:01:22.000000000 
+0100
@@ -84,17 +84,17 @@
 {
     //Extract values from SVG elements
     QRectF bounds;
-    bounds = m_renderer->boundsOnElement("BLOCK_SIZE");
+    bounds = m_renderer->boundsOnElement(QStringLiteral("BLOCK_SIZE"));
     m_Block_Size = bounds.width();
-    bounds = m_renderer->boundsOnElement("VIEW");
+    bounds = m_renderer->boundsOnElement(QStringLiteral("VIEW"));
     m_View_Size_Width = bounds.width();
     m_View_Size_Height = bounds.height();
-    bounds = m_renderer->boundsOnElement("PLAY_AREA");
+    bounds = m_renderer->boundsOnElement(QStringLiteral("PLAY_AREA"));
     m_PlayArea_OffsetPoint_X = bounds.x();
     m_PlayArea_OffsetPoint_Y = bounds.y();
     m_PlayArea_NumberOfBlocks_X = bounds.width() / (double)m_Block_Size;
     m_PlayArea_NumberOfBlocks_Y = bounds.height() / (double)m_Block_Size;
-    bounds = m_renderer->boundsOnElement("NEXTPIECE_AREA");
+    bounds = m_renderer->boundsOnElement(QStringLiteral("NEXTPIECE_AREA"));
     m_PreviewArea_CenterPoint_X = bounds.center().x();
     m_PreviewArea_CenterPoint_Y = bounds.center().y();
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kblocks-15.08.3/KBlocksItemGroup.cpp 
new/kblocks-15.12.0/KBlocksItemGroup.cpp
--- old/kblocks-15.08.3/KBlocksItemGroup.cpp    2015-11-04 19:39:44.000000000 
+0100
+++ new/kblocks-15.12.0/KBlocksItemGroup.cpp    2015-11-11 17:01:22.000000000 
+0100
@@ -23,7 +23,7 @@
 
     mpBackground = new KBlocksSvgItem(mpGameLayout, -1, 0, 0);
     mpBackground->setSharedRenderer(mpGrafx->renderer());
-    mpBackground->setElementId("VIEW");
+    mpBackground->setElementId(QStringLiteral("VIEW"));
     addToGroup(mpBackground);
 
     mMaxPrepareCellNum = PREPARE_AREA_WIDTH * PREPARE_AREA_WIDTH;
@@ -32,7 +32,7 @@
         maPrepareCells[i] = new KBlocksSvgItem(mpGameLayout, 
KBlocksSvgItem_PrepareArea,
                                                i % PREPARE_AREA_WIDTH, i / 
PREPARE_AREA_WIDTH);
         maPrepareCells[i]->setSharedRenderer(mpGrafx->renderer());
-        maPrepareCells[i]->setElementId("BLOCK_0");
+        maPrepareCells[i]->setElementId(QStringLiteral("BLOCK_0"));
         maPrepareCells[i]->setVisible(false);
         addToGroup(maPrepareCells[i]);
     }
@@ -43,7 +43,7 @@
         maFreezeCells[i] = new KBlocksSvgItem(mpGameLayout, 
KBlocksSvgItem_FieldArea,
                                               i % mFieldWidth, i / 
mFieldWidth);
         maFreezeCells[i]->setSharedRenderer(mpGrafx->renderer());
-        maFreezeCells[i]->setElementId("BLOCK_0");
+        maFreezeCells[i]->setElementId(QStringLiteral("BLOCK_0"));
         maFreezeCells[i]->setVisible(false);
         addToGroup(maFreezeCells[i]);
     }
@@ -109,7 +109,7 @@
 {
     updateGraphicInfo();
 
-    mpBackground->setElementId("VIEW");
+    mpBackground->setElementId(QStringLiteral("VIEW"));
     mpBackground->setPos(0, 0);
 
     for (int i = 0; i < mMaxPrepareCellNum; i++) {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kblocks-15.08.3/KBlocksKeyboardPlayer.cpp 
new/kblocks-15.12.0/KBlocksKeyboardPlayer.cpp
--- old/kblocks-15.08.3/KBlocksKeyboardPlayer.cpp       2015-11-04 
19:39:44.000000000 +0100
+++ new/kblocks-15.12.0/KBlocksKeyboardPlayer.cpp       2015-11-11 
17:01:22.000000000 +0100
@@ -75,39 +75,39 @@
 
 void KBlocksKeyboardPlayer::bindKeys()
 {
-    rotatecw = mpKeyShortcuts->addAction(QLatin1String("rotate_cw"));
+    rotatecw = mpKeyShortcuts->addAction(QStringLiteral("rotate_cw"));
     rotatecw->setText(i18n("Rotate Piece Clockwise"));
-    rotatecw->setIcon(QIcon::fromTheme(QLatin1String("object-rotate-right")));
+    rotatecw->setIcon(QIcon::fromTheme(QStringLiteral("object-rotate-right")));
     mpKeyShortcuts->setDefaultShortcut(rotatecw, Qt::Key_Z);
     connect(rotatecw, &QAction::triggered, this, 
&KBlocksKeyboardPlayer::rotateCW);
 
-    rotateccw = mpKeyShortcuts->addAction(QLatin1String("rotate_ccw"));
+    rotateccw = mpKeyShortcuts->addAction(QStringLiteral("rotate_ccw"));
     rotateccw->setText(i18n("Rotate Piece Counter Clockwise"));
-    rotateccw->setIcon(QIcon::fromTheme(QLatin1String("object-rotate-left")));
+    rotateccw->setIcon(QIcon::fromTheme(QStringLiteral("object-rotate-left")));
     mpKeyShortcuts->setDefaultShortcut(rotateccw, Qt::Key_Up);
     connect(rotateccw, &QAction::triggered, this, 
&KBlocksKeyboardPlayer::rotateCCW);
 
-    moveleft = mpKeyShortcuts->addAction(QLatin1String("move_left"));
+    moveleft = mpKeyShortcuts->addAction(QStringLiteral("move_left"));
     moveleft->setText(i18n("Move Piece Left"));
-    moveleft->setIcon(QIcon::fromTheme(QLatin1String("arrow-left")));
+    moveleft->setIcon(QIcon::fromTheme(QStringLiteral("arrow-left")));
     mpKeyShortcuts->setDefaultShortcut(moveleft, Qt::Key_Left);
     connect(moveleft, &QAction::triggered, this, 
&KBlocksKeyboardPlayer::moveLeft);
 
-    moveright = mpKeyShortcuts->addAction(QLatin1String("move_right"));
+    moveright = mpKeyShortcuts->addAction(QStringLiteral("move_right"));
     moveright->setText(i18n("Move Piece Right"));
-    moveright->setIcon(QIcon::fromTheme(QLatin1String("arrow-right")));
+    moveright->setIcon(QIcon::fromTheme(QStringLiteral("arrow-right")));
     mpKeyShortcuts->setDefaultShortcut(moveright, Qt::Key_Right);
     connect(moveright, &QAction::triggered, this, 
&KBlocksKeyboardPlayer::moveRight);
 
-    movedown = mpKeyShortcuts->addAction(QLatin1String("move_down"));
+    movedown = mpKeyShortcuts->addAction(QStringLiteral("move_down"));
     movedown->setText(i18n("Move Piece Down"));
-    movedown->setIcon(QIcon::fromTheme(QLatin1String("arrow-down")));
+    movedown->setIcon(QIcon::fromTheme(QStringLiteral("arrow-down")));
     mpKeyShortcuts->setDefaultShortcut(movedown, Qt::Key_Down);
     connect(movedown, &QAction::triggered, this, 
&KBlocksKeyboardPlayer::moveDown);
 
-    pushdown = mpKeyShortcuts->addAction(QLatin1String("push_down"));
+    pushdown = mpKeyShortcuts->addAction(QStringLiteral("push_down"));
     pushdown->setText(i18n("Drop the Piece"));
-    pushdown->setIcon(QIcon::fromTheme(QLatin1String("arrow-down")));
+    pushdown->setIcon(QIcon::fromTheme(QStringLiteral("arrow-down")));
     mpKeyShortcuts->setDefaultShortcut(pushdown, Qt::Key_Space);
     connect(pushdown, &QAction::triggered, this, 
&KBlocksKeyboardPlayer::pushDown);
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kblocks-15.08.3/KBlocksNetClient.cpp 
new/kblocks-15.12.0/KBlocksNetClient.cpp
--- old/kblocks-15.08.3/KBlocksNetClient.cpp    2015-11-04 19:39:44.000000000 
+0100
+++ new/kblocks-15.12.0/KBlocksNetClient.cpp    2015-11-11 17:01:22.000000000 
+0100
@@ -46,8 +46,8 @@
 bool KBlocksNetClient::parseIPString(const QString &input, QHostAddress *ip, 
quint16 *port)
 {
     bool result = false;
-    ip->setAddress(input.left(input.indexOf(":")));
-    *port = input.mid(input.indexOf(":") + 1).toUInt(&result);
+    ip->setAddress(input.left(input.indexOf(QStringLiteral(":"))));
+    *port = input.midRef(input.indexOf(QStringLiteral(":")) + 
1).toUInt(&result);
     return result;
 }
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kblocks-15.08.3/KBlocksNetServer.cpp 
new/kblocks-15.12.0/KBlocksNetServer.cpp
--- old/kblocks-15.08.3/KBlocksNetServer.cpp    2015-11-04 19:39:44.000000000 
+0100
+++ new/kblocks-15.12.0/KBlocksNetServer.cpp    2015-11-11 17:01:22.000000000 
+0100
@@ -347,19 +347,19 @@
     int result = -1;
     QString input = QString(data);
 
-    if (input.contains(QString("|ap|"))) {
+    if (input.contains(QStringLiteral("|ap|"))) {
         addPlayerIP((int)(data[4] - '0'), data, addr);
         //printf("Added player @ %s\n", input.toStdString().c_str());
-    } else if (input.contains("|dp|")) {
+    } else if (input.contains(QStringLiteral("|dp|"))) {
         delPlayerIP(addr);
         //printf("Deleted player @ %s\n", input.toStdString().c_str());
-    } else if (input.contains("|rp|")) {
+    } else if (input.contains(QStringLiteral("|rp|"))) {
         result = parsePlayerReply(data, addr);
         //printf("Received Player Data @ %s\n", input.toStdString().c_str());
-    } else if (input.contains("|rg|")) {
+    } else if (input.contains(QStringLiteral("|rg|"))) {
         sendGuiData(addr);
         //printf("Send Gui Data @ %s\n", input.toStdString().c_str());
-    } else if (input.contains("|s|")) {
+    } else if (input.contains(QStringLiteral("|s|"))) {
         if (!mGameStarted) {
             mpGameLogic->startGame(mGameCount);
             mGameStarted = true;
@@ -368,7 +368,7 @@
             }
             //printf("Game started\n");
         }
-    } else if (input.contains("|c|")) {
+    } else if (input.contains(QStringLiteral("|c|"))) {
         if (mGameStarted) {
             mGameStarted = false;
             mpGameLogic->stopGame();
@@ -432,14 +432,14 @@
 bool KBlocksNetServer::parseIPString(const QString &input, QHostAddress *ip, 
quint16 *port)
 {
     bool result = false;
-    ip->setAddress(input.left(input.indexOf(":")));
-    *port = input.mid(input.indexOf(":") + 1).toUInt(&result);
+    ip->setAddress(input.left(input.indexOf(QStringLiteral(":"))));
+    *port = input.midRef(input.indexOf(QStringLiteral(":")) + 
1).toUInt(&result);
     return result;
 }
 
 QString KBlocksNetServer::formIPString(const QHostAddress &inAddr, quint16 
inPort)
 {
-    QString result = inAddr.toString() + QString(":%1").arg(inPort);
+    QString result = inAddr.toString() + QStringLiteral(":%1").arg(inPort);
     return result;
 }
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kblocks-15.08.3/KBlocksRepWin.cpp 
new/kblocks-15.12.0/KBlocksRepWin.cpp
--- old/kblocks-15.08.3/KBlocksRepWin.cpp       2015-11-04 19:39:44.000000000 
+0100
+++ new/kblocks-15.12.0/KBlocksRepWin.cpp       2015-11-11 17:01:22.000000000 
+0100
@@ -49,8 +49,8 @@
     connect(&mUpdateTimer, &QTimer::timeout, this, 
&KBlocksRepWin::replayOneStep);
     mUpdateTimer.stop();
 
-    mSnapshotFilename = QString("");
-    mSnapshotFolder = QString("./snapshot/");
+    mSnapshotFilename = QLatin1String("");
+    mSnapshotFolder = QStringLiteral("./snapshot/");
 }
 
 KBlocksRepWin::~KBlocksRepWin()
@@ -118,7 +118,7 @@
     QDate tmpDate = QDate::currentDate();
     QTime tmpTime = QTime::currentTime();
     QString result;
-    result = QString("%1-%2-%3_%4-%5-%6_%7")
+    result = QStringLiteral("%1-%2-%3_%4-%5-%6_%7")
              .arg(tmpDate.year(), 4, 10, QLatin1Char('0'))
              .arg(tmpDate.month(), 2, 10, QLatin1Char('0'))
              .arg(tmpDate.day(), 2, 10, QLatin1Char('0'))
@@ -134,8 +134,8 @@
     if (!mSnapshotFilename.isEmpty()) {
         //mSnapshoter = QPixmap::grabWindow(mpGameView->winId());
         mSnapshoter = QPixmap::grabWidget(this);
-        QString tmpFilename = mSnapshotFolder + mSnapshotFilename + 
QString("_")
-                              + getTimeString() + QString(".png");
+        QString tmpFilename = mSnapshotFolder + mSnapshotFilename + 
QStringLiteral("_")
+                              + getTimeString() + QStringLiteral(".png");
         mSnapshoter.save(tmpFilename);
     }
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kblocks-15.08.3/KBlocksScene.cpp 
new/kblocks-15.12.0/KBlocksScene.cpp
--- old/kblocks-15.08.3/KBlocksScene.cpp        2015-11-04 19:39:44.000000000 
+0100
+++ new/kblocks-15.12.0/KBlocksScene.cpp        2015-11-11 17:01:22.000000000 
+0100
@@ -90,7 +90,7 @@
         maGameScoreList[i]->setScoreUpFactor(10);
 
         maGameReadySignal[i] = false;
-        connect(maGroupList[i], SIGNAL(readyForAction(int)), this, 
SLOT(readyForAction(int)));
+        connect(maGroupList[i], &KBlocksItemGroup::readyForAction, this, 
&KBlocksScene::readyForAction);
     }
 
     updateDimensions();
@@ -107,7 +107,7 @@
     delete mMessageBox;
 
     for (int i = 0; i < mGroupCount; i++) {
-        disconnect(maGroupList[i], SIGNAL(readyForAction(int)), this, 
SLOT(readyForAction(int)));
+        disconnect(maGroupList[i], &KBlocksItemGroup::readyForAction, this, 
&KBlocksScene::readyForAction);
 
         delete maGameScoreList[i];
         maGameScoreList[i] = 0;
@@ -190,7 +190,7 @@
 
     if (!mSnapshotMode) {
         mUpdateTimer.start();
-        QTimer::singleShot(500, this, SLOT(greetPlayer()));
+        QTimer::singleShot(500, this, &KBlocksScene::greetPlayer);
     }
 }
 
@@ -319,7 +319,7 @@
         } else if (removedLines[i] == -1) {
             maGroupList[i]->stopGame();
             if (mGroupCount == 1) {
-                QTimer::singleShot(500, this, SLOT(gameOverPlayer()));
+                QTimer::singleShot(500, this, &KBlocksScene::gameOverPlayer);
                 emit isHighscore(0, maGameScoreList[0]->getScorePoint(),
                                  maGameScoreList[0]->getGameLevel());
             } else {
@@ -327,12 +327,12 @@
                     for (int j = 0; j < mGroupCount; j++) {
                         maGroupList[j]->stopGame();
                     }
-                    QTimer::singleShot(500, this, SLOT(gameOverMultiLose()));
+                    QTimer::singleShot(500, this, 
&KBlocksScene::gameOverMultiLose);
                     emit isHighscore(0, maGameScoreList[0]->getScorePoint(),
                                      maGameScoreList[0]->getGameLevel());
                 } else if (gameCount <= 1) {
                     maGroupList[0]->stopGame();
-                    QTimer::singleShot(500, this, SLOT(gameOverMultiWin()));
+                    QTimer::singleShot(500, this, 
&KBlocksScene::gameOverMultiWin);
                     emit isHighscore(0, maGameScoreList[0]->getScorePoint(),
                                      maGameScoreList[0]->getGameLevel());
                 }
@@ -363,7 +363,7 @@
 void KBlocksScene::drawBackground(QPainter *painter, const QRectF &rect)
 {
     if (mpGrafx->renderer()->isValid()) {
-        mpGrafx->renderer()->render(painter, QString("BACKGROUND"), rect);
+        mpGrafx->renderer()->render(painter, QStringLiteral("BACKGROUND"), 
rect);
     }
 }
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kblocks-15.08.3/KBlocksSvgItem.cpp 
new/kblocks-15.12.0/KBlocksSvgItem.cpp
--- old/kblocks-15.08.3/KBlocksSvgItem.cpp      2015-11-04 19:39:44.000000000 
+0100
+++ new/kblocks-15.12.0/KBlocksSvgItem.cpp      2015-11-11 17:01:22.000000000 
+0100
@@ -52,7 +52,7 @@
         if (mColor == -1) {
             setVisible(false);
         } else {
-            setElementId(QString("BLOCK_%1").arg(mColor));
+            setElementId(QStringLiteral("BLOCK_%1").arg(mColor));
             setVisible(true);
         }
     }
@@ -62,12 +62,12 @@
 
 void KBlocksSvgItem::startOpAnim()
 {
-    setElementId(QString("BLOCK_OUT_%1").arg(mColor));
+    setElementId(QStringLiteral("BLOCK_OUT_%1").arg(mColor));
 }
 
 void KBlocksSvgItem::stopOpAnim()
 {
-    setElementId(QString("BLOCK_%1").arg(mColor));
+    setElementId(QStringLiteral("BLOCK_%1").arg(mColor));
 }
 
 void KBlocksSvgItem::startPosAnim(QPointF target)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kblocks-15.08.3/KBlocksWin.cpp 
new/kblocks-15.12.0/KBlocksWin.cpp
--- old/kblocks-15.08.3/KBlocksWin.cpp  2015-11-04 19:39:44.000000000 +0100
+++ new/kblocks-15.12.0/KBlocksWin.cpp  2015-11-11 17:01:22.000000000 +0100
@@ -195,11 +195,11 @@
 
 void KBlocksWin::configureSettings()
 {
-    if (KConfigDialog::showDialog("settings")) {
+    if (KConfigDialog::showDialog(QStringLiteral("settings"))) {
         return;
     }
-    KConfigDialog *dialog = new KConfigDialog(this, "settings", 
Settings::self());
-    dialog->addPage(new KGameThemeSelector(dialog, Settings::self()), 
i18n("Theme"), "games-config-theme");
+    KConfigDialog *dialog = new KConfigDialog(this, 
QStringLiteral("settings"), Settings::self());
+    dialog->addPage(new KGameThemeSelector(dialog, Settings::self()), 
i18n("Theme"), QStringLiteral("games-config-theme"));
     dialog->setFaceType(KConfigDialog::Plain); //only one page -> no page 
selection necessary
     connect(dialog, &KConfigDialog::settingsChanged, mpGameView, 
&KBlocksView::settingsChanged);
     //connect(dialog, SIGNAL(hidden()), view, SLOT(resumeFromConfigure()));
@@ -247,27 +247,27 @@
 
     action = KStandardGameAction::gameNew(this, SLOT(singleGame()), 
actionCollection());
     action->setText(i18n("Single Game"));
-    actionCollection()->addAction(QLatin1String("newGame"), action);
+    actionCollection()->addAction(QStringLiteral("newGame"), action);
 
     action = new QAction(this);
     action->setText(i18n("Human vs AI"));
-    actionCollection()->addAction(QLatin1String("pve_step"), action);
+    actionCollection()->addAction(QStringLiteral("pve_step"), action);
     connect(action, &QAction::triggered, this, &KBlocksWin::pveStepGame);
 
     m_pauseAction = KStandardGameAction::pause(this, SLOT(pauseGame()), 
actionCollection());
-    actionCollection()->addAction(QLatin1String("pauseGame"), m_pauseAction);
+    actionCollection()->addAction(QStringLiteral("pauseGame"), m_pauseAction);
 
     action = KStandardGameAction::highscores(this, SLOT(showHighscore()), 
actionCollection());
-    actionCollection()->addAction(QLatin1String("showHighscores"), action);
+    actionCollection()->addAction(QStringLiteral("showHighscores"), action);
 
     action = KStandardGameAction::quit(this, SLOT(close()), 
actionCollection());
-    actionCollection()->addAction(QLatin1String("quit"), action);
+    actionCollection()->addAction(QStringLiteral("quit"), action);
 
     KStandardAction::preferences(this, SLOT(configureSettings()), 
actionCollection());
 
     KToggleAction *soundAction = new KToggleAction(i18n("&Play sounds"), this);
     soundAction->setChecked(Settings::sounds());
-    actionCollection()->addAction(QLatin1String("sounds"), soundAction);
+    actionCollection()->addAction(QStringLiteral("sounds"), soundAction);
     connect(soundAction, &KToggleAction::triggered, this, 
&KBlocksWin::setSoundsEnabled);
 
     // TODO
@@ -280,7 +280,7 @@
         KgDifficultyLevel::Easy, KgDifficultyLevel::Hard
     );
     KgDifficultyGUI::init(this);
-    connect(Kg::difficulty(), SIGNAL(currentLevelChanged(const 
KgDifficultyLevel*)), SLOT(levelChanged()));
+    connect(Kg::difficulty(), &KgDifficulty::currentLevelChanged, this, 
&KBlocksWin::levelChanged);
 
     setupGUI();
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kblocks-15.08.3/kblocks.appdata.xml 
new/kblocks-15.12.0/kblocks.appdata.xml
--- old/kblocks-15.08.3/kblocks.appdata.xml     2015-11-04 19:39:44.000000000 
+0100
+++ new/kblocks-15.12.0/kblocks.appdata.xml     2015-11-11 17:01:22.000000000 
+0100
@@ -30,6 +30,7 @@
   <name xml:lang="sr-ijekavian">К‑блокови</name>
   <name xml:lang="sr-ijekavianlatin">K‑blokovi</name>
   <name xml:lang="sv">Kblock</name>
+  <name xml:lang="tr">KBlocks</name>
   <name xml:lang="uk">KBlocks</name>
   <name xml:lang="x-test">xxKBlocksxx</name>
   <name xml:lang="zh-CN">KBlocks</name>
@@ -59,6 +60,7 @@
   <summary xml:lang="sr-ijekavian">Игра падајућих блокова</summary>
   <summary xml:lang="sr-ijekavianlatin">Igra padajućih blokova</summary>
   <summary xml:lang="sv">Spel med fallande block</summary>
+  <summary xml:lang="tr">Düşen Bloklar Oyunu</summary>
   <summary xml:lang="uk">Гра з блоками, що падають</summary>
   <summary xml:lang="x-test">xxFalling Blocks Gamexx</summary>
   <summary xml:lang="zh-CN">俄罗斯方块游戏</summary>
@@ -90,6 +92,7 @@
     <p xml:lang="sr-ijekavian">К‑блокови је класична игра падајућих блокова. 
Идеја је да се падајући блокови слажу у водоравне редове без процепа. Ред се 
уклања када се доврши, остављајући више простора у зони игре. Када више нема 
простора за нове блокове, партија је готова.</p>
     <p xml:lang="sr-ijekavianlatin">K‑blokovi je klasična igra padajućih 
blokova. Ideja je da se padajući blokovi slažu u vodoravne redove bez procepa. 
Red se uklanja kada se dovrši, ostavljajući više prostora u zoni igre. Kada 
više nema prostora za nove blokove, partija je gotova.</p>
     <p xml:lang="sv">Kblock är det klassiska spelet med fallande block. Idén 
är att lägga de fallande blocken för att skapa horisontella rader utan några 
mellanrum. När en rad är färdig tas den bort, och mer utrymme blir tillgängligt 
i spelområdet. När det inte finns tillräckligt med utrymme för block att falla 
är spelet slut.</p>
+    <p xml:lang="tr">KBlocks klasik bir düşen bloklar oyunudur. Buradaki fikir 
düşen blokları yatay satırlar oluşturacak şekilde dizmektir. Bir satır 
tamamlandığında o kaldırılır ve oyun için daha fazla alan açılmış olur. Düşecek 
bloklar için yer kalmadığında oyun bitmiş olur.</p>
     <p xml:lang="uk">KBlocks — це класична гра з блоками, що падають. Мета гри 
полягає у тому, щоб розташовувати блоки так, щоб вони повністю заповнювали 
горизонтальні ряди. Після повного заповнення ряду його буде вилучено, і у 
області для гри з’явиться більше простору. Якщо для падіння наступного блоку 
місця вже не буде, гру буде завершено.</p>
     <p xml:lang="x-test">xxKBlocks is the classic falling blocks game. The 
idea is to stack the falling blocks to create horizontal lines without any 
gaps. When a line is completed it is removed, and more space is available in 
the play area. When there is not enough space for blocks to fall, the game is 
over.xx</p>
     <p xml:lang="zh-TW">KBlocks 是類似俄羅斯方塊的遊戲。俄羅斯方塊的玩法還需要多做介紹嗎?</p>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kblocks-15.08.3/main.cpp new/kblocks-15.12.0/main.cpp
--- old/kblocks-15.08.3/main.cpp        2015-11-04 19:39:44.000000000 +0100
+++ new/kblocks-15.12.0/main.cpp        2015-11-11 17:01:22.000000000 +0100
@@ -303,31 +303,32 @@
 {
     QApplication app(argc, argv);
 
-    Kdelibs4ConfigMigrator migrate(QLatin1String("kblocks"));
-    migrate.setConfigFiles(QStringList() << QLatin1String("kblocksrc"));
-    migrate.setUiFiles(QStringList() << QLatin1String("kblocksui.rc"));
+    Kdelibs4ConfigMigrator migrate(QStringLiteral("kblocks"));
+    migrate.setConfigFiles(QStringList() << QStringLiteral("kblocksrc"));
+    migrate.setUiFiles(QStringList() << QStringLiteral("kblocksui.rc"));
     migrate.migrate();
     KLocalizedString::setApplicationDomain("kblocks");
     // Game abouts...
 
-    KAboutData aboutData("kblocks",
+    KAboutData aboutData(QStringLiteral("kblocks"),
                          i18n("KBlocks"),
-                         QLatin1String("0.4"),
+                         QStringLiteral("0.4"),
                          i18n("A falling blocks game for KDE"),
                          KAboutLicense::GPL,
                          i18n("(c) 2007, Mauricio Piacentini"));
-    aboutData.addAuthor(i18n("Mauricio Piacentini"), i18n("Author"), 
"piacent...@kde.org");
-    aboutData.addAuthor(i18n("Dirk Leifeld"), i18n("Developer"), 
"dirkleif...@yahoo.de");
-    aboutData.addAuthor(i18n("Zhongjie Cai"), i18n("New design of KBlocks for 
AI and tetris research platform"), "squall.leonhart....@gmail.com");
-    aboutData.addCredit(i18n("Johann Ollivier Lapeyre"), i18n("Oxygen art for 
KDE4"), "johann.ollivierlape...@gmail.com");
+    aboutData.addAuthor(i18n("Mauricio Piacentini"), i18n("Author"), 
QStringLiteral("piacent...@kde.org"));
+    aboutData.addAuthor(i18n("Dirk Leifeld"), i18n("Developer"), 
QStringLiteral("dirkleif...@yahoo.de"));
+    aboutData.addAuthor(i18n("Zhongjie Cai"), i18n("New design of KBlocks for 
AI and tetris research platform"), 
QStringLiteral("squall.leonhart....@gmail.com"));
+    aboutData.addCredit(i18n("Johann Ollivier Lapeyre"), i18n("Oxygen art for 
KDE4"), QStringLiteral("johann.ollivierlape...@gmail.com"));
+    
aboutData.setHomepage(QStringLiteral("https://www.kde.org/applications/games/kblocks/";));
 
     // Command line argument options
     QCommandLineParser parser;
     KAboutData::setApplicationData(aboutData);
     parser.addVersionOption();
     parser.addHelpOption();
-    parser.addOption(QCommandLineOption(QStringList() << 
QLatin1String("mode"), i18n("Setup kblocks game running mode.\n\t0 = Desktop 
Mode\t1 = Game Engine Mode\n\t2 = Gui Mode\t3 = Player Mode"), 
QLatin1String("game mode"), QLatin1String("0")));
-    parser.addOption(QCommandLineOption(QStringList() << 
QLatin1String("conf"), i18n("Setup the configuration file for tetris researcher 
mode. Not for desktop users."), QLatin1String("configuration file"), 
QLatin1String("default.conf")));
+    parser.addOption(QCommandLineOption(QStringList() << 
QStringLiteral("mode"), i18n("Setup kblocks game running mode.\n\t0 = Desktop 
Mode\t1 = Game Engine Mode\n\t2 = Gui Mode\t3 = Player Mode"), 
QStringLiteral("game mode"), QStringLiteral("0")));
+    parser.addOption(QCommandLineOption(QStringList() << 
QStringLiteral("conf"), i18n("Setup the configuration file for tetris 
researcher mode. Not for desktop users."), QStringLiteral("configuration 
file"), QStringLiteral("default.conf")));
 
     aboutData.setupCommandLine(&parser);
     parser.process(app);
@@ -336,9 +337,9 @@
     app.setWindowIcon(QIcon::fromTheme(QStringLiteral("kblocks")));
 
     // Get game mode
-    int mGameMode = parser.value("mode").toInt();
+    int mGameMode = parser.value(QStringLiteral("mode")).toInt();
 
-    QByteArray tmpFileArray = parser.value("conf").toLatin1();
+    QByteArray tmpFileArray = parser.value(QStringLiteral("conf")).toLatin1();
     const char *tmpFileChar = tmpFileArray.data();
     KBlocksConfigManager *config = new KBlocksConfigManager();
     config->LoadConfigFile(string(tmpFileChar));


Reply via email to