Hello community, here is the log from the commit of package kanagram for openSUSE:Factory checked in at 2014-03-18 16:09:06 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/kanagram (Old) and /work/SRC/openSUSE:Factory/.kanagram.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "kanagram" Changes: -------- --- /work/SRC/openSUSE:Factory/kanagram/kanagram.changes 2014-02-20 07:55:50.000000000 +0100 +++ /work/SRC/openSUSE:Factory/.kanagram.new/kanagram.changes 2014-03-18 16:09:08.000000000 +0100 @@ -1,0 +2,14 @@ +Thu Mar 13 20:14:40 UTC 2014 - [email protected] + +- Update to 4.12.90 + * KDE 4.13 Beta 2 release + * See http://www.kde.org/announcements/announce-4.13-beta2.php + +------------------------------------------------------------------- +Fri Mar 7 10:04:37 UTC 2014 - [email protected] + +- Update to 4.12.80 + * KDE 4.13 Beta 1 release + * See http://www.kde.org/announcements/announce-4.13-beta1.php + +------------------------------------------------------------------- Old: ---- kanagram-4.12.2.tar.xz New: ---- kanagram-4.12.90.tar.xz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ kanagram.spec ++++++ --- /var/tmp/diff_new_pack.DPBu1O/_old 2014-03-18 16:09:09.000000000 +0100 +++ /var/tmp/diff_new_pack.DPBu1O/_new 2014-03-18 16:09:09.000000000 +0100 @@ -17,7 +17,7 @@ Name: kanagram -Version: 4.12.2 +Version: 4.12.90 Release: 0 Summary: Anagram Game License: GPL-2.0+ ++++++ kanagram-4.12.2.tar.xz -> kanagram-4.12.90.tar.xz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kanagram-4.12.2/src/desktop/kanagram.cpp new/kanagram-4.12.90/src/desktop/kanagram.cpp --- old/kanagram-4.12.2/src/desktop/kanagram.cpp 2014-01-29 06:54:50.000000000 +0100 +++ new/kanagram-4.12.90/src/desktop/kanagram.cpp 2014-01-29 06:52:05.000000000 +0100 @@ -75,7 +75,7 @@ double yScaleQuitButton = 77.5 / kWindowHeight; Kanagram::Kanagram() -: KMainWindow(), m_game(NULL), m_overNext(false), m_overConfig(false), +: KMainWindow(), m_game(NULL), m_speller(NULL), m_overNext(false), m_overConfig(false), m_overHelp(false), m_overQuit(false), m_overReveal(false), m_overHint(false),m_overPicHint(false), m_overUp(false), m_overAboutKDE(false), m_overAboutApp(false), m_overHandbook(false), m_overSwitcher(false), m_overLogo(false), @@ -86,6 +86,7 @@ m_renderer = new QSvgRenderer(KStandardDirs::locate("appdata", "images/kanagram.svg")); m_helpMenu = new KHelpMenu(this, KGlobal::mainComponent().aboutData()); + m_speller = new Sonnet::Speller(); setupActions(); @@ -96,6 +97,7 @@ { m_pictureHint.load(m_game->picHint().pathOrUrl()); } + m_speller->setLanguage(m_game->sanitizedDataLanguage()); setMouseTracking(true); m_chalkColor = QColor(155, 155, 155); @@ -144,6 +146,8 @@ delete m_renderer; m_renderer = NULL; + delete m_speller; + m_speller = NULL; } QSize Kanagram::sizeHint() const @@ -620,6 +624,7 @@ void Kanagram::slotNextVocabulary() { m_game->nextVocabulary(); + m_speller->setLanguage(m_game->sanitizedDataLanguage()); hideHint(); m_game->nextAnagram(); @@ -637,6 +642,7 @@ void Kanagram::slotPrevVocabulary() { m_game->previousVocabulary(); + m_speller->setLanguage(m_game->sanitizedDataLanguage()); hideHint(); m_game->nextAnagram(); @@ -868,9 +874,11 @@ QPalette palette; QString enteredWord = m_inputBox->text().toLower().trimmed(); QString word = m_game->word().toLower().trimmed(); + if (!enteredWord.isEmpty()) { - if (enteredWord == word || stripAccents(enteredWord) == stripAccents(word)) + if (enteredWord == word || stripAccents(enteredWord) == stripAccents(word) || + (m_speller->isCorrect(enteredWord) && isAnagram(enteredWord, word))) { if (m_useSounds) play("right.ogg"); palette.setColor(m_inputBox->backgroundRole(), QColor(0, 255, 0)); @@ -1031,4 +1039,30 @@ { } +bool Kanagram::isAnagram(QString& enteredword, QString& word) +{ + QString test = word; + if (enteredword.length() <= word.length()) + { + for (int i=0; i < enteredword.length(); i++) + { + int found = test.indexOf(enteredword[i]); + + if (found != -1) + { + test.remove(found, 1); + } + else + break; + } + + if (test.isEmpty()) + return true; + else + return false; + } + else + return false; +} + #include "kanagram.moc" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kanagram-4.12.2/src/desktop/kanagram.h new/kanagram-4.12.90/src/desktop/kanagram.h --- old/kanagram-4.12.2/src/desktop/kanagram.h 2014-01-29 06:54:50.000000000 +0100 +++ new/kanagram-4.12.90/src/desktop/kanagram.h 2014-01-29 06:52:05.000000000 +0100 @@ -30,6 +30,7 @@ #include <KMainWindow> #include <KRandomSequence> #include <qimage.h> +#include <sonnet/speller.h> namespace Phonon { @@ -220,6 +221,13 @@ * @returns string without accents */ QString stripAccents(const QString & original); + /** check if two words are an anagram or not + * @param enteredWord the word to check + * @param word the word to check against + * @returns true if enteredWord only contains letters from word + **/ + bool isAnagram(QString& enteredword,QString& word); + /** * KanagramGame object to get words, * scrambled words, @@ -227,6 +235,8 @@ */ KanagramGame *m_game; + Sonnet:: Speller* m_speller; + /** name of the hint overlay svg element * set in randomHintImage * used in paintEvent diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kanagram-4.12.2/src/engine/kanagram.kcfg new/kanagram-4.12.90/src/engine/kanagram.kcfg --- old/kanagram-4.12.2/src/engine/kanagram.kcfg 2014-01-29 06:54:50.000000000 +0100 +++ new/kanagram-4.12.90/src/engine/kanagram.kcfg 2014-01-29 06:52:05.000000000 +0100 @@ -6,7 +6,7 @@ <kcfgfile name="kanagramrc"/> <group name="kanagram"> <entry name="currentCategory" type="Int"> - <label>This settings stores the currently selected Category</label> + <label>This setting stores the currently selected Category.</label> <default>0</default> </entry> <entry name="hintHideTime" type="String"> -- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
