*/
QString m_category;
- QList<KEduVocConjugation> m_conjugations;
-
// make this a map so removals don't require renumbering :)
QMap<int, KEduVocLesson*> m_lessons;
}
-void KEduVocDocument::setConjugation( int idx, const KEduVocConjugation &con )
-{
- if ( idx < 0 ) return;
-
- // extend conjugation with empty elements
- if ( d->m_conjugations.size() <= idx )
- for ( int i = d->m_conjugations.size(); i < idx+1; i++ )
- d->m_conjugations.append( KEduVocConjugation() );
-
- d->m_conjugations[idx] = con;
-}
-
-
-int KEduVocDocument::conjugationCount() const
-{
- return d->m_conjugations.count();
-}
-
-
-KEduVocConjugation KEduVocDocument::conjugation( int idx ) const
-{
- if ( idx >= d->m_conjugations.size() || idx < 0 ) {
- return KEduVocConjugation();
- } else {
- return d->m_conjugations[idx];
- }
-}
-
-
int KEduVocDocument::sizeHint( int idx ) const
{
if ( idx < 0 ) {
*/
//void moveLesson(int from, int to);
-
-
-
-
-/// @todo move conjugation to personal pronouns, move that into identifier!
- // *** conjugation methods ***
-
- /**
- * @param index index of translation
- * @returns a pointer to conjugations if available
- */
- KEduVocConjugation conjugation( int index ) const;
-
- /**
- * Sets conjugations
- *
- * @param index index of translation
- * @param con conjugation block
- */
- void setConjugation( int index, const KEduVocConjugation &con );
-
- /**
- * @returns the number of conjugations
- */
- int conjugationCount() const;
-
// *** file format specific methods ***
/**
///@todo
d->m_locale = other.d->m_locale;
d->m_name = other.d->m_name;
-
+ d->m_articles = other.d->m_articles;
+ d->m_personalPronouns = other.d->m_personalPronouns;
}
{
d->m_locale = other.d->m_locale;
d->m_name = other.d->m_name;
+ d->m_articles = other.d->m_articles;
+ d->m_personalPronouns = other.d->m_personalPronouns;
return *this;
}
d->m_articles = articles;
}
-
KEduVocArticle KEduVocIdentifier::article() const
{
return d->m_articles;
}
+
+
+KEduVocConjugation KEduVocIdentifier::personalPronouns() const
+{
+ return d->m_personalPronouns;
+}
+
+void KEduVocIdentifier::setPersonalPronouns( const KEduVocConjugation & pronouns )
+{
+ d->m_personalPronouns = pronouns;
+}
void setArticle( const KEduVocArticle& article );
+ /**
+ * Get the personal pronouns for this identifier
+ * @returns a KEduVocConjugation containing the personal pronouns
+ */
+ KEduVocConjugation personalPronouns() const;
+
+ /**
+ * Sets personal pronouns
+ * @param pronouns a KEduVocConjugation containing the personal pronouns
+ */
+ void setPersonalPronouns( const KEduVocConjugation &pronouns );
+
private:
class Private;
Private * const d;
if ( !currentElement.isNull() ) {
KEduVocConjugation personalPronouns;
readConjugation( currentElement, personalPronouns );
- m_doc->setConjugation( id, personalPronouns );
+ m_doc->identifier(id).setPersonalPronouns( personalPronouns );
}
return result;
}
// record personalpronouns
QDomElement personalpronouns = m_domDoc.createElement( KVTML_PERSONALPRONOUNS );
- writeConjugation( personalpronouns, m_doc->conjugation( i ), QString() );
+ writeConjugation( personalpronouns, m_doc->identifier(i).personalPronouns(), QString() );
if ( personalpronouns.hasChildNodes() ) {
identifier.appendChild( personalpronouns );
}
KEduVocConjugation conjug;
for ( int i = 0; i< conjugations.count(); i++ ) {
conjug = conjugations[i];
- m_doc->setConjugation( i, conjug );
+ m_doc->identifier(i).setPersonalPronouns( conjug );
}
} else
return false;
return false;
QList<KEduVocConjugation> conjugations;
- for ( int i = 0; i < m_doc->conjugationCount(); i++ )
- conjugations.append( m_doc->conjugation( i ) );
+ for ( int i = 0; i < m_doc->identifierCount(); i++ )
+ conjugations.append( m_doc->identifier(i).personalPronouns() );
if ( conjugations.count() > 0 ) {
if ( !writeConjugHeader( domDoc, domElementKvtml, conjugations ) )
return false;