Revision 757794

Go back to digest for 6th January 2008

Features in Educational

Frederik Gladhorn committed changes in /trunk/KDE/kdeedu:

Redo of the lib. Merge of the 4.1 branch to trunk.

This is a rather big change, which affects the apps using libkdeedu.

I guess there are quite a few bugs left. So far I know the destructor of either expression or translation sometimes seems to double delete. Need to look into that.

Start an experimental new practice app that is independent of the main app. Still hardly anything implemented there.

Parley: New main window gui using dock windows. The edit entry dialog does no longer exist. It is much nicer to edit vocabulary now.

Ported KHangMan, KAnagram, KWordQuiz and Parley

Notes:
- Containers: There are two subclasses for KEduVocContainer.
KEduVocLesson and KEduVocWordType. This is very benificial as from now on, I can use the same models/views for both in parley. Leitner boxes are also easy to realize subclassing the containers.
-The KEduVocDocument class was huge and contained some functions specific to expression handling. This redundand api has been removed.

Instead the document now contains one root lesson (KEduVocDocument::lesson()) to manage all entries. This lesson can contain entries directly as well as child lessons. This makes it easy to access all vocabulary entries by using doc->lesson()->entriesRecursive() which collects all entries including those from sublessons.
- Lessons and word types are now able to contain child lessons/word types to an arbitrary depth.
- Entries can be in multiple lessons.
- Expression->translation() now returns a pointer. This is more consistent and avoids some reference trouble. In general now everything is a pointer (containers also).
- KWordQuiz now saves the size hints per document in the kconfig. This could also be used for cell heights.
- KWordQuiz only edits entries in the top level lesson. I'll change it to use all entries in the document.
- Statistics in Parley are disabled for now, needs to be rewritten.
- Usages have been removed completely.
- Comparison forms do no longer have a proper class but only two strings.

Eventually it should be considered making them a class to support male/female again. The base form should always be the adjective/adverb itself.

I hope everything works, but I must have missed something. Bug me.

File Changes

Added 36 files
  • /trunk/KDE/kdeedu
  •   /parley/practice
  •   /kwordquiz/src/documentsettings.kcfg
  •   /kwordquiz/src/documentsettings.kcfgc
  •   /libkdeedu/keduvocdocument/keduvoccontainer.cpp
  •   /libkdeedu/keduvocdocument/keduvoccontainer.h
  •   /libkdeedu/keduvocdocument/keduvoclesson.cpp
  •   /libkdeedu/keduvocdocument/keduvoclesson.h
  •   /parley/src/modeltest
  •   /parley/src/parleydocument.cpp
  •   /parley/src/parleydocument.h
  •   /parley/src/vocabulary
  •   /parley/src/entry-dialogs/audiowidget.cpp
  •   /parley/src/entry-dialogs/audiowidget.h
  •   /parley/src/entry-dialogs/audiowidget.ui
  •   /parley/src/entry-dialogs/comparisonwidget.cpp
  •   /parley/src/entry-dialogs/comparisonwidget.h
  •   /parley/src/entry-dialogs/comparisonwidget.ui
  •   /parley/src/entry-dialogs/imagechooserwidget.cpp
  •   /parley/src/entry-dialogs/imagechooserwidget.h
  •   /parley/src/entry-dialogs/imagechooserwidget.ui
  •   /parley/src/entry-dialogs/multiplechoicewidget.cpp
  •   /parley/src/entry-dialogs/multiplechoicewidget.h
  •   /parley/src/entry-dialogs/multiplechoicewidget.ui
  •   /parley/src/entry-dialogs/wordtypewidget.cpp
  •   /parley/src/entry-dialogs/wordtypewidget.h
  •   /parley/src/entry-dialogs/wordtypewidget.ui
  •   /parley/src/vocabulary/containermimedata.cpp
  •   /parley/src/vocabulary/containermimedata.h
  •   /parley/src/vocabulary/containermodel.cpp
  •   /parley/src/vocabulary/containermodel.h
  •   /parley/src/vocabulary/containerview.cpp
  •   /parley/src/vocabulary/containerview.h
  •   /parley/src/vocabulary/vocabularyfilter.cpp
  •   /parley/src/vocabulary/vocabularyfilter.h
  •   /parley/src/vocabulary/vocabularymimedata.cpp
  •   /parley/src/vocabulary/vocabularymimedata.h
Deleted 4 files
  • /trunk/KDE/kdeedu/parley/src
  •   /kva_io.cpp
  •   /entry-dialogs/MCEntryPage.cpp
  •   /entry-dialogs/MCEntryPage.h
  •   /entry-dialogs/MCEntryPageForm.ui
Modified 86 files
  • /trunk/KDE/kdeedu
  •   /parley/CMakeLists.txt
  •   /parley/TODO
  •   /kanagram/src/kanagramgame.cpp
  •   /kanagram/src/vocabedit.cpp
  •   /khangman/src/khangmanview.cpp
  •   /kwordquiz/src/CMakeLists.txt
  •   /kwordquiz/src/kwordquiz.cpp
  •   /kwordquiz/src/kwqtablemodel.cpp
  •   /kwordquiz/src/kwqtableview.cpp
  •   /libkdeedu/keduvocdocument/CMakeLists.txt
  •   /libkdeedu/keduvocdocument/keduvoccsvreader.cpp
  •   /libkdeedu/keduvocdocument/keduvoccsvwriter.cpp
  •   /libkdeedu/keduvocdocument/keduvocdocument.cpp
  •   /libkdeedu/keduvocdocument/keduvocdocument.h
  •   /libkdeedu/keduvocdocument/keduvocexpression.cpp
  •   /libkdeedu/keduvocdocument/keduvocexpression.h
  •   /libkdeedu/keduvocdocument/keduvocgrammar.cpp
  •   /libkdeedu/keduvocdocument/keduvocgrammar.h
  •   /libkdeedu/keduvocdocument/keduvockvtml2reader.cpp
  •   /libkdeedu/keduvocdocument/keduvockvtml2reader.h
  •   /libkdeedu/keduvocdocument/keduvockvtml2writer.cpp
  •   /libkdeedu/keduvocdocument/keduvockvtml2writer.h
  •   /libkdeedu/keduvocdocument/keduvockvtmlcompability.cpp
  •   /libkdeedu/keduvocdocument/keduvockvtmlcompability.h
  •   /libkdeedu/keduvocdocument/keduvockvtmlreader.cpp
  •   /libkdeedu/keduvocdocument/keduvockvtmlreader.h
  •   /libkdeedu/keduvocdocument/keduvockvtmlwriter.cpp
  •   /libkdeedu/keduvocdocument/keduvockvtmlwriter.h
  •   /libkdeedu/keduvocdocument/keduvocpaukerreader.cpp
  •   /libkdeedu/keduvocdocument/keduvoctranslation.cpp
  •   /libkdeedu/keduvocdocument/keduvoctranslation.h
  •   /libkdeedu/keduvocdocument/keduvocvokabelnreader.cpp
  •   /libkdeedu/keduvocdocument/keduvocwordtype.cpp
  •   /libkdeedu/keduvocdocument/keduvocwordtype.h
  •   /libkdeedu/keduvocdocument/keduvocwqlreader.cpp
  •   /libkdeedu/keduvocdocument/keduvocxdxfreader.cpp
  •   /libkdeedu/keduvocdocument/kvtml2defs.h
  •   /parley/src/CMakeLists.txt
  •   /parley/src/kva_init.cpp
  •   /parley/src/kvtlessonmodel.cpp
  •   /parley/src/kvtlessonview.cpp
  •   /parley/src/kvtlessonview.h
  •   /parley/src/kvttablemodel.cpp
  •   /parley/src/kvttablemodel.h
  •   /parley/src/kvttableview.cpp
  •   /parley/src/main.cpp
  •   /parley/src/parley.cpp
  •   /parley/src/parley.h
  •   /parley/src/parleyui.rc
  •   /parley/src/version.h
  •   /libkdeedu/keduvocdocument/tests/keduvocdocumentvalidatortest.cpp
  •   /parley/src/configure-practice/thresholdoptions.cpp
  •   /parley/src/docprop-dialogs/TenseOptPage.cpp
  •   /parley/src/docprop-dialogs/TypeOptPage.h
  •   /parley/src/docprop-dialogs/UsageOptPage.cpp
  •   /parley/src/entry-dialogs/additionaleditpage.cpp
  •   /parley/src/entry-dialogs/AdjEntryPage.cpp
  •   /parley/src/entry-dialogs/CommonEntryPage.cpp
  •   /parley/src/entry-dialogs/EntryDlg.h
  •   /parley/src/language-dialogs/grammardialog.cpp
  •   /parley/src/language-dialogs/grammardialog.h
  •   /parley/src/practice/AdjQueryDlg.cpp
  •   /parley/src/practice/AdjQueryDlg.h
  •   /parley/src/practice/answervalidator.cpp
  •   /parley/src/practice/ArtQueryDlg.cpp
  •   /parley/src/practice/MCQueryDlg.cpp
  •   /parley/src/practice/mixedletterpracticedialog.cpp
  •   /parley/src/practice/practicedialog.cpp
  •   /parley/src/practice/practicedialog.h
  •   /parley/src/practice/showsolutiondialog.cpp
  •   /parley/src/practice/SimpleQueryDlg.cpp
  •   /parley/src/practice/testentry.cpp
  •   /parley/src/practice/testentry.h
  •   /parley/src/practice/testentrymanager.cpp
  •   /parley/src/practice/testentrymanager.h
  •   /parley/src/practice/VerbQueryDlg.cpp
  •   /parley/src/practice/writtenpracticedialog.cpp
  •   /parley/src/statistics-dialogs/GenStatPage.cpp
  •   /parley/src/statistics-dialogs/StatisticsPage.cpp
  •   /parley/src/vocabulary/vocabularydelegate.cpp
  •   /parley/src/vocabulary/vocabularydelegate.h
  •   /parley/src/vocabulary/vocabularymodel.cpp
  •   /parley/src/vocabulary/vocabularymodel.h
  •   /parley/src/vocabulary/vocabularyview.cpp
  •   /parley/src/vocabulary/vocabularyview.h
126 files changed in total