• Skip to content
  • Skip to link menu
KDE API Reference
  • KDE API Reference
  • kdeedu API Reference
  • KDE Home
  • Contact Us
 

libkdeedu/keduvocdocument

  • sources
  • kde-4.12
  • kdeedu
  • libkdeedu
  • keduvocdocument
keduvoclesson.cpp
Go to the documentation of this file.
1 /***************************************************************************
2 
3  Copyright 2007 Jeremy Whiting <jpwhiting@kde.org>
4  Copyright 2007 Frederik Gladhorn <frederik.gladhorn@kdemail.net>
5 
6  ***************************************************************************/
7 
8 /***************************************************************************
9  * *
10  * This program is free software; you can redistribute it and/or modify *
11  * it under the terms of the GNU General Public License as published by *
12  * the Free Software Foundation; either version 2 of the License, or *
13  * (at your option) any later version. *
14  * *
15  ***************************************************************************/
16 
17 #include "keduvoclesson.h"
18 
19 #include "keduvocexpression.h"
20 
21 #include <QtCore/QList>
22 
24 class KEduVocLesson::Private
25 {
26 public:
27  // entries
28  QList<KEduVocExpression*> m_entries;
29 };
30 
31 
32 KEduVocLesson::KEduVocLesson(const QString& name, KEduVocContainer *parent)
33  : KEduVocContainer(name, Lesson, parent), d( new Private )
34 {
35 }
36 
37 
38 KEduVocLesson::KEduVocLesson( const KEduVocLesson &other )
39  : KEduVocContainer(other), d( new Private )
40 {
41  d->m_entries = other.d->m_entries;
42 }
43 
44 
45 KEduVocLesson::~KEduVocLesson()
46 {
47  qDeleteAll(d->m_entries);
48  delete d;
49 }
50 
51 QList<KEduVocExpression*> KEduVocLesson::entries(EnumEntriesRecursive recursive)
52 {
53  if (recursive == Recursive) {
54  return entriesRecursive();
55  }
56  return d->m_entries;
57 }
58 
59 int KEduVocLesson::entryCount(EnumEntriesRecursive recursive)
60 {
61  if (recursive == Recursive) {
62  return entriesRecursive().count();
63  }
64  return d->m_entries.count();
65 }
66 
67 void KEduVocLesson::appendEntry(KEduVocExpression* entry)
68 {
69  insertEntry(d->m_entries.size(), entry);
70 }
71 
72 void KEduVocLesson::insertEntry(int index, KEduVocExpression * entry)
73 {
74  Q_ASSERT(entry);
75  d->m_entries.insert( index, entry );
76  entry->setLesson(this);
77  invalidateChildLessonEntries();
78 }
79 
80 void KEduVocLesson::removeEntry(KEduVocExpression* entry)
81 {
82  Q_ASSERT(entry);
83  if (d->m_entries.indexOf(entry) == -1) {
84  //attempting to remove entry from lesson that does not contain it!
85  return;
86  }
87  d->m_entries.removeAt( d->m_entries.indexOf(entry) );
88  invalidateChildLessonEntries();
89 }
90 
91 KEduVocExpression * KEduVocLesson::entry(int row, EnumEntriesRecursive recursive)
92 {
93  if (recursive == Recursive) {
94  return entriesRecursive().value(row);
95  }
96  return d->m_entries.value(row);
97 }
98 
99 
KEduVocLesson::appendEntry
void appendEntry(KEduVocExpression *entry)
append an entry to the lesson
Definition: keduvoclesson.cpp:67
keduvocexpression.h
KEduVocLesson
class to store information about a lesson
Definition: keduvoclesson.h:27
KEduVocContainer
class to store information about a container - that can be a lesson or word types ...
Definition: keduvoccontainer.h:30
KEduVocLesson::insertEntry
void insertEntry(int index, KEduVocExpression *entry)
insert an entry at a specific position
Definition: keduvoclesson.cpp:72
KEduVocLesson::removeEntry
void removeEntry(KEduVocExpression *entry)
remove an entry from the lesson
Definition: keduvoclesson.cpp:80
KEduVocLesson::KEduVocLesson
KEduVocLesson(const QString &name, KEduVocContainer *parent=0)
default constructor
Definition: keduvoclesson.cpp:32
keduvoclesson.h
KEduVocContainer::invalidateChildLessonEntries
void invalidateChildLessonEntries()
Set the child entry cache to invalid.
Definition: keduvoccontainer.cpp:241
KEduVocContainer::EnumEntriesRecursive
EnumEntriesRecursive
Definition: keduvoccontainer.h:42
KEduVocLesson::entry
KEduVocExpression * entry(int row, EnumEntriesRecursive recursive=NotRecursive)
Definition: keduvoclesson.cpp:91
KEduVocLesson::~KEduVocLesson
~KEduVocLesson()
destructor
Definition: keduvoclesson.cpp:45
KEduVocLesson::entries
QList< KEduVocExpression * > entries(EnumEntriesRecursive recursive=NotRecursive)
get a list of all entries in the lesson
Definition: keduvoclesson.cpp:51
KEduVocContainer::Recursive
Definition: keduvoccontainer.h:44
KEduVocExpression
This class contains one vocabulary expression as an original with one or more translations.
Definition: keduvocexpression.h:37
KEduVocLesson::entryCount
int entryCount(EnumEntriesRecursive recursive=NotRecursive)
get the number of entries in the lesson
Definition: keduvoclesson.cpp:59
KEduVocContainer::entriesRecursive
QList< KEduVocExpression * > entriesRecursive()
Definition: keduvoccontainer.cpp:182
This file is part of the KDE documentation.
Documentation copyright © 1996-2014 The KDE developers.
Generated on Tue Oct 14 2014 22:37:21 by doxygen 1.8.7 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.

libkdeedu/keduvocdocument

Skip menu "libkdeedu/keduvocdocument"
  • Main Page
  • Namespace List
  • Namespace Members
  • Alphabetical List
  • Class List
  • Class Hierarchy
  • Class Members
  • File List
  • File Members
  • Related Pages

kdeedu API Reference

Skip menu "kdeedu API Reference"
  • Analitza
  •     lib
  • kalgebra
  • kalzium
  •   libscience
  • kanagram
  • kig
  •   lib
  • klettres
  • kstars
  • libkdeedu
  •   keduvocdocument
  • marble
  • parley
  • rocs
  •   App
  •   RocsCore
  •   VisualEditor
  •   stepcore

Search



Report problems with this website to our bug tracking system.
Contact the specific authors with questions and comments about the page contents.

KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal