From cc6aa8a3611d90d18b295564f7ed3667c9dadca3 Mon Sep 17 00:00:00 2001 From: David Capel Date: Sat, 16 Aug 2008 11:10:09 +0000 Subject: [PATCH] Conjugation is now complete. it uses personalpronouns + tense for the prompt when available, but it falls back to a generic description when a pronoun isn't. Enabling of Hint and Show Solution in all modes. Deletion of the Hint class (it was unused -- the hint KAction superceded it). Various small bugfixes. Fix to make keduvocpersionalpronoun more reliable. svn path=/trunk/KDE/kdeedu/libkdeedu/; revision=847800 --- keduvocdocument/keduvocpersonalpronoun.cpp | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/keduvocdocument/keduvocpersonalpronoun.cpp b/keduvocdocument/keduvocpersonalpronoun.cpp index 8135120..cc77d53 100644 --- a/keduvocdocument/keduvocpersonalpronoun.cpp +++ b/keduvocdocument/keduvocpersonalpronoun.cpp @@ -77,7 +77,14 @@ bool KEduVocPersonalPronoun::operator ==(const KEduVocPersonalPronoun& other) co QString KEduVocPersonalPronoun::personalPronoun(KEduVocWordFlags flags) const { - return d->m_personalpronouns.value(flags & (KEduVocWordFlag::persons | KEduVocWordFlag::numbers| KEduVocWordFlag::genders)); + QString p = d->m_personalpronouns.value(flags & (KEduVocWordFlag::persons | KEduVocWordFlag::numbers| KEduVocWordFlag::genders)); + if (p.isEmpty() && !(flags & KEduVocWordFlag::genders) && d->m_maleFemaleDifferent && d->m_neutralExists) + { + kDebug() << "initial flag lookup failed, added neuter gender flag"; + flags |= KEduVocWordFlag::Neuter; + p = d->m_personalpronouns.value(flags & (KEduVocWordFlag::persons | KEduVocWordFlag::numbers| KEduVocWordFlag::genders)); + } + return p; } void KEduVocPersonalPronoun::setPersonalPronoun(const QString & personalpronoun, KEduVocWordFlags flags) -- 2.47.3