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

parley

  • sources
  • kde-4.12
  • kdeedu
  • parley
  • src
  • editor
editor.cpp
Go to the documentation of this file.
1 /***************************************************************************
2  Copyright 1999-2001 Ewald Arnold <kvoctrain@ewald-arnold.de>
3  Copyright 2004-2007 Peter Hedlund <peter.hedlund@kdemail.net>
4  Copyright 2007-2009 Frederik Gladhorn <gladhorn@kde.org>
5  Copyright 2008 Daniel Laidig <d.laidig@gmx.de>
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 "editor.h"
18 
19 #include "../config-parley.h"
20 
21 #include "vocabulary/vocabularymodel.h"
22 #include "vocabulary/vocabularyview.h"
23 #include "vocabulary/vocabularyfilter.h"
24 #include "vocabulary/containerview.h"
25 #include "vocabulary/lessonview.h"
26 #include "vocabulary/wordtypeview.h"
27 #include "vocabulary/containermodel.h"
28 #include "vocabulary/lessonmodel.h"
29 #include "vocabulary/wordtypemodel.h"
30 
31 #include "multiplechoicewidget.h"
32 #include "comparisonwidget.h"
33 #include "inflectionwidget.h"
34 #include "imagechooserwidget.h"
35 #include "audiowidget.h"
36 #include "browserwidget.h"
37 #include "synonymwidget.h"
38 #include "summarywordwidget.h"
39 #include "latexwidget.h"
40 
41 #include "settings/parleyprefs.h"
42 #include "prefs.h"
43 
44 #include "scripts/scriptdialog.h"
45 #include "scripts/translator.h"
46 
47 #include "parleyactions.h"
48 #include <KActionCollection>
49 #include <KToggleAction>
50 #include <KActionMenu>
51 #include <KCharSelect>
52 
53 #include <QtCore/QTimer>
54 #include <QtCore/QSignalMapper>
55 #include <QtGui/QDockWidget>
56 #include <QtGui/QHeaderView>
57 #include <QtGui/QMenu>
58 #include <QtGui/QStackedWidget>
59 
60 using namespace Editor;
61 
62 EditorWindow::EditorWindow(ParleyMainWindow* parent)
63  :KXmlGuiWindow(parent), m_mainWindow(parent)
64 {
65  // KXmlGui
66  setXMLFile("editorui.rc");
67  setObjectName("Editor");
68 
69  setCorner(Qt::TopLeftCorner, Qt::LeftDockWidgetArea);
70  setCorner(Qt::BottomLeftCorner, Qt::LeftDockWidgetArea);
71  setCorner(Qt::TopRightCorner, Qt::RightDockWidgetArea);
72  setCorner(Qt::BottomRightCorner, Qt::RightDockWidgetArea);
73 
74  initView();
75  initModel();
76 
77  initDockWidgets();
78  initActions();
79 
80  KConfigGroup cfg(KSharedConfig::openConfig("parleyrc"), objectName());
81  applyMainWindowSettings(cfg);
82 
83  connect(parent->parleyDocument(), SIGNAL(documentChanged(KEduVocDocument*)), this, SLOT(updateDocument(KEduVocDocument*)));
84  connect(parent->parleyDocument(), SIGNAL(languagesChanged()), this, SLOT(slotLanguagesChanged()));
85  connect(parent->parleyDocument(), SIGNAL(statesNeedSaving()), this, SLOT(saveState()));
86  connect(parent, SIGNAL(preferencesChanged()), this, SLOT(applyPrefs()));
87 
88  QTimer::singleShot( 0, this, SLOT(initScripts()) );
89 }
90 
91 EditorWindow::~EditorWindow()
92 {
93  saveState();
94  KConfigGroup cfg(KSharedConfig::openConfig("parleyrc"), objectName());
95  saveMainWindowSettings(cfg);
96 }
97 
98 void EditorWindow::updateDocument(KEduVocDocument *doc)
99 {
100 
101  m_vocabularyView->setDocument(doc);
102  m_vocabularyModel->setDocument(doc);
103 
104  m_lessonModel->setDocument(doc);
105  m_wordTypeModel->setDocument(doc);
106 
107  m_summaryWordWidget->slotDocumentChanged(doc);
108  m_inflectionWidget->setDocument(doc);
109  m_comparisonWidget->setDocument(doc);
110 
111  if (!m_mainWindow->parleyDocument()->document()) {
112  return;
113  }
114 
115  if (!doc) {
116  return;
117  }
118 
119  // expand the root items
120  m_lessonView->expandToDepth(0);
121  m_wordTypeView->expandToDepth(0);
122 
123  connect(m_mainWindow->parleyDocument()->document(), SIGNAL(docModified(bool)), m_mainWindow, SLOT(slotUpdateWindowCaption()));
124 
125  connect(m_vocabularyView->selectionModel(),
126  SIGNAL(selectionChanged(const QItemSelection &, const QItemSelection &)),
127  m_summaryWordWidget, SLOT(slotSelectionChanged(const QItemSelection &, const QItemSelection &)));
128  connect(m_vocabularyView->selectionModel(),
129  SIGNAL(selectionChanged(const QItemSelection &, const QItemSelection &)),
130  m_latexWidget, SLOT(slotSelectionChanged(const QItemSelection &, const QItemSelection &)));
131 
132  setCaption(doc->url().fileName(), false);
133 
134  m_mainWindow->slotUpdateWindowCaption();
135 
136  m_spellCheckMenu->menu()->clear();
137  for(int i = 0; i < doc->identifierCount(); ++i) {
138  KAction* languageSpellCheck = new KAction(doc->identifier(i).name(), m_spellCheckMenu->menu());
139  m_spellCheckMenu->menu()->addAction(languageSpellCheck);
140  m_spellCheckMapper->setMapping(languageSpellCheck, i);
141  connect(languageSpellCheck, SIGNAL(triggered()), m_spellCheckMapper, SLOT(map()));
142  }
143 }
144 
145 
146 void EditorWindow::initDockWidgets()
147 {
148 // Lesson dock
149  QDockWidget *lessonDockWidget = new QDockWidget(i18n("Lessons"), this);
150  lessonDockWidget->setObjectName("LessonDock");
151  m_lessonView = new LessonView(this);
152  lessonDockWidget->setWidget(m_lessonView);
153  addDockWidget(Qt::LeftDockWidgetArea, lessonDockWidget);
154  m_dockWidgets.append(lessonDockWidget);
155  actionCollection()->addAction("show_lesson_dock", lessonDockWidget->toggleViewAction());
156 
157  m_lessonModel = new LessonModel(this);
158  m_lessonView->setModel(m_lessonModel);
159  m_lessonView->setToolTip(i18n("Right click to add, delete, or rename lessons. \n"
160  "With the checkboxes you can select which lessons you want to practice. \n"
161  "Only checked lessons [x] will be asked in the tests!"));
162 
163  connect(m_lessonView, SIGNAL(selectedLessonChanged(KEduVocLesson*)),
164  m_vocabularyModel, SLOT(setLesson(KEduVocLesson*)));
165 
166  connect(m_lessonView, SIGNAL(signalShowContainer(KEduVocContainer*)),
167  m_vocabularyModel, SLOT(showContainer(KEduVocContainer*)));
168 
169  connect(m_vocabularyView, SIGNAL(translationChanged(KEduVocExpression*, int)),
170  m_lessonView, SLOT(setTranslation(KEduVocExpression*, int)));
171 
172 
173 // Word types dock
174  QDockWidget* wordTypeDockWidget = new QDockWidget(i18n("Word Types"), this);
175  wordTypeDockWidget->setObjectName( "WordTypeDock" );
176  m_wordTypeView = new WordTypeView(this);
177  wordTypeDockWidget->setWidget(m_wordTypeView);
178  addDockWidget( Qt::LeftDockWidgetArea, wordTypeDockWidget );
179  m_dockWidgets.append(wordTypeDockWidget);
180 
181  m_wordTypeModel = new WordTypeModel(this);
182  wordTypeDockWidget->setVisible(false);
183  actionCollection()->addAction("show_wordtype_dock", wordTypeDockWidget->toggleViewAction());
184 
187 // new ModelTest(m_wordTypeModel, this);
188 
189  m_wordTypeView->setModel(m_wordTypeModel);
190 
191  connect(m_vocabularyView, SIGNAL(translationChanged(KEduVocExpression*, int)),
192  m_wordTypeView, SLOT(setTranslation(KEduVocExpression*, int)));
193 
194 // Inflections
195  QDockWidget *inflectionDock = new QDockWidget(i18n("Inflection (verbs, adjectives, nouns)"), this);
196  inflectionDock->setObjectName("InflectionDock");
197  m_inflectionWidget = new InflectionWidget(this);
198  inflectionDock->setWidget(m_inflectionWidget);
199  addDockWidget(Qt::RightDockWidgetArea, inflectionDock);
200  m_dockWidgets.append(inflectionDock);
201  actionCollection()->addAction("show_inflection_dock", inflectionDock->toggleViewAction());
202  connect(m_mainWindow->parleyDocument(), SIGNAL(documentChanged(KEduVocDocument*)),
203  m_inflectionWidget, SLOT(setDocument(KEduVocDocument*)));
204  connect(m_vocabularyView, SIGNAL(translationChanged(KEduVocExpression*, int)),
205  m_inflectionWidget, SLOT(setTranslation(KEduVocExpression*, int)));
206 
207 // Comparison forms
208  QDockWidget *comparisonDock = new QDockWidget(i18n("Comparison forms"), this);
209  comparisonDock->setObjectName("ComparisonDock");
210  m_comparisonWidget = new ComparisonWidget(this);
211  comparisonDock->setWidget(m_comparisonWidget);
212  addDockWidget(Qt::RightDockWidgetArea, comparisonDock);
213  m_dockWidgets.append(comparisonDock);
214  actionCollection()->addAction("show_comparison_dock", comparisonDock->toggleViewAction());
215  comparisonDock->setVisible(false);
216  connect(m_vocabularyView, SIGNAL(translationChanged(KEduVocExpression*, int)),
217  m_comparisonWidget, SLOT(setTranslation(KEduVocExpression*, int)));
218 
219 // Multiple choice
220  QDockWidget *multipleChoiceDock = new QDockWidget(i18n("Multiple Choice"), this);
221  multipleChoiceDock->setObjectName("MultipleChoiceDock");
222  MultipleChoiceWidget *multipleChoiceWidget = new MultipleChoiceWidget(this);
223  multipleChoiceDock->setWidget(multipleChoiceWidget);
224  addDockWidget(Qt::RightDockWidgetArea, multipleChoiceDock);
225  m_dockWidgets.append(multipleChoiceDock);
226  actionCollection()->addAction("show_multiplechoice_dock", multipleChoiceDock->toggleViewAction());
227  multipleChoiceDock->setVisible(false);
228  connect(m_vocabularyView, SIGNAL(translationChanged(KEduVocExpression*, int)),
229  multipleChoiceWidget, SLOT(setTranslation(KEduVocExpression*, int)));
230 
231 // Synonym (and the same for antonym and false friends)
232  QDockWidget *synonymDock = new QDockWidget(i18n("Synonyms"), this);
233  synonymDock->setObjectName("SynonymDock");
234  SynonymWidget *synonymWidget = new SynonymWidget(SynonymWidget::Synonym, this);
235  synonymDock->setWidget(synonymWidget);
236  addDockWidget(Qt::RightDockWidgetArea, synonymDock);
237  m_dockWidgets.append(synonymDock);
238  actionCollection()->addAction("show_synonym_dock", synonymDock->toggleViewAction());
239  synonymDock->setVisible(false);
240  connect(m_vocabularyView, SIGNAL(translationChanged(KEduVocExpression*, int)),
241  synonymWidget, SLOT(setTranslation(KEduVocExpression*, int)));
242 
243  QDockWidget *antonymDock = new QDockWidget(i18n("Antonyms"), this);
244  antonymDock->setObjectName("AntonymDock");
245  SynonymWidget *antonymWidget = new SynonymWidget(SynonymWidget::Antonym, this);
246  antonymDock->setWidget(antonymWidget);
247  addDockWidget(Qt::RightDockWidgetArea, antonymDock);
248  m_dockWidgets.append(antonymDock);
249  actionCollection()->addAction("show_antonym_dock", antonymDock->toggleViewAction());
250  antonymDock->setVisible(false);
251  connect(m_vocabularyView, SIGNAL(translationChanged(KEduVocExpression*, int)),
252  antonymWidget, SLOT(setTranslation(KEduVocExpression*, int)));
253 
254  QDockWidget *falseFriendDock = new QDockWidget(i18n("False Friends"), this);
255  falseFriendDock->setObjectName("FalseFriendDock");
256  SynonymWidget *falseFriendWidget = new SynonymWidget(SynonymWidget::FalseFriend, this);
257  falseFriendDock->setWidget(falseFriendWidget);
258  addDockWidget(Qt::RightDockWidgetArea, falseFriendDock);
259  m_dockWidgets.append(falseFriendDock);
260  actionCollection()->addAction("show_falsefriend_dock", falseFriendDock->toggleViewAction());
261  falseFriendDock->setVisible(false);
262  connect(m_vocabularyView, SIGNAL(translationChanged(KEduVocExpression*, int)),
263  falseFriendWidget, SLOT(setTranslation(KEduVocExpression*, int)));
264 
265 // Pronunciation symbols - Use KCharSelect
266  QDockWidget *charSelectDock = new QDockWidget(i18n("Phonetic Symbols"), this);
267  charSelectDock->setObjectName("IPADock");
268  KCharSelect *charSelectWidget = new KCharSelect(this, 0, KCharSelect::SearchLine | KCharSelect::BlockCombos | KCharSelect::CharacterTable);
269  charSelectWidget->setCurrentChar(0x0250);
270  charSelectDock->setWidget(charSelectWidget);
271  addDockWidget(Qt::BottomDockWidgetArea, charSelectDock);
272  m_dockWidgets.append(charSelectDock);
273  actionCollection()->addAction("show_pronunciation_dock", charSelectDock->toggleViewAction());
274  charSelectDock->setVisible(false);
275  connect(charSelectWidget, SIGNAL(charSelected(const QChar &)), m_vocabularyView, SLOT(appendChar(const QChar &)));
276 
277 // Image
278  QDockWidget *imageDock = new QDockWidget(i18n("Image"), this);
279  imageDock->setObjectName("ImageDock");
280  ImageChooserWidget *imageChooserWidget = new ImageChooserWidget(this);
281  imageDock->setWidget(imageChooserWidget);
282  addDockWidget(Qt::RightDockWidgetArea, imageDock);
283  m_dockWidgets.append(imageDock);
284  actionCollection()->addAction("show_image_dock", imageDock->toggleViewAction());
285  imageDock->setVisible(false);
286  connect(m_vocabularyView, SIGNAL(translationChanged(KEduVocExpression*, int)),
287  imageChooserWidget, SLOT(setTranslation(KEduVocExpression*, int)));
288 
289 // Summary word
290  QDockWidget *summaryDock = new QDockWidget(i18n("Summary"), this);
291  summaryDock->setObjectName("SummaryDock");
292  m_summaryWordWidget = new SummaryWordWidget(m_vocabularyFilter, m_mainWindow->parleyDocument()->document(), this);
293  summaryDock->setWidget(m_summaryWordWidget);
294  addDockWidget(Qt::RightDockWidgetArea, summaryDock);
295  actionCollection()->addAction("show_summary_dock", summaryDock->toggleViewAction());
296  summaryDock->setVisible(false);
297  m_dockWidgets.append(summaryDock);
298  connect(m_vocabularyView, SIGNAL(translationChanged(KEduVocExpression*, int)),
299  m_summaryWordWidget, SLOT(setTranslation(KEduVocExpression*, int)));
300 
301 // Sound
302  QDockWidget *audioDock = new QDockWidget(i18n("Sound"), this);
303  audioDock->setObjectName("AudioDock");
304  AudioWidget *audioWidget = new AudioWidget(this);
305  audioDock->setWidget(audioWidget);
306  addDockWidget(Qt::RightDockWidgetArea, audioDock);
307  m_dockWidgets.append(audioDock);
308  actionCollection()->addAction("show_audio_dock", audioDock->toggleViewAction());
309  audioDock->setVisible(false);
310  connect(m_vocabularyView, SIGNAL(translationChanged(KEduVocExpression*, int)),
311  audioWidget, SLOT(setTranslation(KEduVocExpression*, int)));
312 
313 // browser
314  QDockWidget *browserDock = new QDockWidget(i18n("Internet"), this);
315  browserDock->setObjectName("BrowserDock");
316  //TinyWebBrowser *browserWidget = new TinyWebBrowser(this);
317  BrowserWidget *htmlPart = new BrowserWidget(browserDock);
318  browserDock->setWidget(htmlPart);
319  addDockWidget(Qt::RightDockWidgetArea, browserDock);
320  m_dockWidgets.append(browserDock);
321  actionCollection()->addAction("show_browser_dock", browserDock->toggleViewAction());
322  browserDock->setVisible(false);
323  connect(m_vocabularyView, SIGNAL(translationChanged(KEduVocExpression*, int)),
324  htmlPart, SLOT(setTranslation(KEduVocExpression*, int)));
325 
326 // LaTeX
327  QDockWidget *latexDock = new QDockWidget(i18n("LaTeX"), this);
328  latexDock->setObjectName("LatexDock");
329  m_latexWidget = new LatexWidget(m_vocabularyFilter, m_mainWindow->parleyDocument()->document(), this);
330  latexDock->setWidget(m_latexWidget);
331  addDockWidget(Qt::RightDockWidgetArea, latexDock);
332  actionCollection()->addAction("show_latex_dock", latexDock->toggleViewAction());
333  latexDock->setVisible(false);
334  m_dockWidgets.append(latexDock);
335  connect(m_vocabularyView, SIGNAL(translationChanged(KEduVocExpression*, int)),
336  m_latexWidget, SLOT(setTranslation(KEduVocExpression*, int)));
337 
338 // Grades
339 // QDockWidget *gradeDock = new QDockWidget(i18n("Grade"), this);
340 // gradeDock->setObjectName("gradeDock");
341 // QLabel *gradeWidget = new QLabel("grade placeholder", this);
342 // gradeDock->setWidget(gradeWidget);
343 // addDockWidget(Qt::RightDockWidgetArea, gradeDock);
344 // connect(this, SIGNAL(signalSetData(KEduVocTranslation*)), m_declensionWidget, SLOT(setTranslation(KEduVocTranslation*)));
345 
346 }
347 
348 void EditorWindow::initActions()
349 {
350  ParleyActions::create(ParleyActions::RemoveGrades, this, SLOT(removeGrades()), actionCollection());
351  m_spellCheckMenu = ParleyActions::create(ParleyActions::CheckSpelling, 0, "", actionCollection());
352  m_spellCheckMenu->setMenu(new QMenu(this));
353  m_spellCheckMapper = new QSignalMapper(this);
354  connect(m_spellCheckMapper, SIGNAL(mapped(int)), m_vocabularyView, SLOT(checkSpelling(int)));
355 
356  ParleyActions::create(ParleyActions::ToggleShowSublessons, m_vocabularyModel, SLOT(showEntriesOfSubcontainers(bool)), actionCollection());
357  ParleyActions::create(ParleyActions::AutomaticTranslation, m_vocabularyModel, SLOT(automaticTranslation(bool)), actionCollection());
358  ParleyActions::create(ParleyActions::StartPractice, m_mainWindow, SLOT(showPracticeConfiguration()), actionCollection());
359  actionCollection()->action("practice_start")->setText(i18n("Practice"));
360  actionCollection()->action("practice_start")->setToolTip(i18n("Practice"));
361  ParleyActions::create(ParleyActions::ConfigurePractice, m_mainWindow, SLOT(configurePractice()), actionCollection());
362  ParleyActions::create(ParleyActions::ToggleSearchBar, this, SLOT(slotConfigShowSearch()), actionCollection());
363  ParleyActions::create(ParleyActions::SearchVocabulary, this, SLOT(startSearch()), actionCollection());
364  ParleyActions::create(ParleyActions::ShowScriptManager, this, SLOT(slotShowScriptManager()), actionCollection());
365  ParleyActions::create(ParleyActions::LanguagesProperties, m_mainWindow->parleyDocument(), SLOT(languageProperties()), actionCollection());
366  ParleyActions::createUploadAction(m_mainWindow->parleyDocument(), SLOT(uploadFile()), actionCollection());
367 }
368 
369 void EditorWindow::initModel()
370 {
371  m_vocabularyModel = new VocabularyModel(this);
372  m_vocabularyFilter = new VocabularyFilter(this);
373  m_vocabularyFilter->setSourceModel(m_vocabularyModel);
374  m_vocabularyView->setModel(m_vocabularyFilter);
375 
376 // connect(m_mainWindow->parleyDocument(), SIGNAL(documentChanged(KEduVocDocument*)), m_vocabularyModel, SLOT(setDocument(KEduVocDocument*)));
377 // connect(m_mainWindow->parleyDocument(), SIGNAL(documentChanged(KEduVocDocument*)), m_vocabularyView, SLOT(setDocument(KEduVocDocument*)));
378  connect(m_searchLine, SIGNAL(textChanged(const QString&)), m_vocabularyFilter, SLOT(setSearchString(const QString&)));
379 }
380 
384 void EditorWindow::initView()
385 {
386  QWidget *mainWidget = new QWidget(this);
387  setCentralWidget(mainWidget);
388  QVBoxLayout *topLayout = new QVBoxLayout(mainWidget);
389  topLayout->setMargin(KDialog::marginHint());
390  topLayout->setSpacing(KDialog::spacingHint());
391 
392  m_searchLine = new KLineEdit(this);
393  m_searchLine->show();
394  m_searchLine->setFocusPolicy(Qt::ClickFocus);
395  m_searchLine->setClearButtonShown(true);
396  m_searchLine->setClickMessage(i18n("Enter search terms here"));
397 
398 // m_searchLine->setToolTip(i18n("Search your vocabuary"));
399 
400  QLabel *label = new QLabel(i18n("S&earch:"), this);
401  label->setBuddy(m_searchLine);
402  label->show();
403 
404  m_searchWidget = new QWidget(this);
405  QHBoxLayout* layout = new QHBoxLayout(m_searchWidget);
406  layout->setSpacing(KDialog::spacingHint());
407  layout->setMargin(0);
408  layout->addWidget(label);
409  layout->addWidget(m_searchLine);
410 
412  QVBoxLayout * rightLayout = new QVBoxLayout();
413  rightLayout->setSpacing(KDialog::spacingHint());
414  rightLayout->setMargin(0);
415  rightLayout->addWidget(m_searchWidget);
416  m_searchWidget->setVisible(Prefs::showSearch());
417 
418  m_vocabularyView = new VocabularyView(this);
419  rightLayout->addWidget(m_vocabularyView, 1, 0);
420 
421  topLayout->addLayout(rightLayout);
422 }
423 
424 void EditorWindow::slotConfigShowSearch()
425 {
426  m_searchWidget->setVisible(m_searchWidget->isHidden());
427  Prefs::setShowSearch(m_searchWidget->isVisible());
428 }
429 
430 void EditorWindow::startSearch()
431 {
432  m_searchWidget->setVisible(true);
433  m_searchLine->setFocus();
434 }
435 
436 void EditorWindow::slotShowScriptManager() {
437  ScriptDialog * dialog = new ScriptDialog(m_scriptManager);
438  dialog->show();
439 }
440 
441 void EditorWindow::applyPrefs()
442 {
443  m_vocabularyView->reset();
444 }
445 
446 void EditorWindow::removeGrades()
447 {
448  m_mainWindow->parleyDocument()->document()->lesson()->resetGrades(-1, KEduVocContainer::Recursive);
449 }
450 
451 void EditorWindow::initScripts()
452 {
453  m_scriptManager = new ScriptManager(this);
454 
455  m_vocabularyView->setTranslator(m_scriptManager->translator());
456 
457  //Load scripts
458  m_scriptManager->loadScripts();
459 }
460 
461 void EditorWindow::saveState()
462 {
463  m_vocabularyView->saveColumnVisibility();
464 }
465 
466 void EditorWindow::slotLanguagesChanged()
467 {
468  m_vocabularyModel->resetLanguages();
469 }
470 
471 #include "editor.moc"
Editor::EditorWindow::saveState
void saveState()
when closing the application, save the editor's state
Definition: editor.cpp:461
inflectionwidget.h
Editor::SynonymWidget::FalseFriend
Definition: synonymwidget.h:34
Editor::EditorWindow::slotLanguagesChanged
void slotLanguagesChanged()
Edit languages contained in the document.
Definition: editor.cpp:466
ParleyActions::create
KAction * create(ParleyAction id, const QObject *recvr, const char *slot, QObject *parent)
Definition: parleyactions.cpp:62
lessonview.h
Editor::VocabularyFilter::setSourceModel
void setSourceModel(VocabularyModel *model)
Definition: vocabularyfilter.cpp:45
Editor::LessonView
View for the lesson list.
Definition: lessonview.h:29
multiplechoicewidget.h
Editor::VocabularyModel
Definition: vocabularymodel.h:30
imagechooserwidget.h
ScriptManager::translator
Translator * translator()
returns the Translator object the Scripting::Parley
Definition: scriptmanager.h:111
ParleyMainWindow
Definition: parleymainwindow.h:68
ParleyActions::AutomaticTranslation
Definition: parleyactions.h:35
QWidget
ParleyDocument::document
KEduVocDocument * document()
Definition: parleydocument.cpp:93
scriptdialog.h
Editor::EditorWindow::applyPrefs
void applyPrefs()
Definition: editor.cpp:441
Editor::EditorWindow::slotConfigShowSearch
void slotConfigShowSearch()
Definition: editor.cpp:424
prefs.h
Editor::WordTypeView
Definition: wordtypeview.h:29
Editor::InflectionWidget::setDocument
void setDocument(KEduVocDocument *doc)
Definition: inflectionwidget.cpp:64
Editor::EditorWindow::initModel
void initModel()
setup the main model
Definition: editor.cpp:369
ParleyActions::SearchVocabulary
Definition: parleyactions.h:38
Editor::EditorWindow::initDockWidgets
void initDockWidgets()
Definition: editor.cpp:146
editor.h
Prefs::showSearch
static bool showSearch()
Get Toggle display of the search bar.
Definition: prefs.h:768
parleyactions.h
synonymwidget.h
Editor::VocabularyFilter
Definition: vocabularyfilter.h:27
containermodel.h
Editor::LessonView::setModel
virtual void setModel(LessonModel *model)
Set the model for the view.
Definition: lessonview.cpp:182
ParleyActions::ToggleSearchBar
Definition: parleyactions.h:38
parleyprefs.h
Editor::VocabularyView::saveColumnVisibility
void saveColumnVisibility() const
Save column visibility settings.
Definition: vocabularyview.cpp:203
KXmlGuiWindow
Editor::InflectionWidget
Definition: inflectionwidget.h:29
Editor::ContainerView::setModel
virtual void setModel(ContainerModel *model)
Set the model for the view.
Definition: containerview.cpp:40
ParleyActions::ConfigurePractice
Definition: parleyactions.h:36
ParleyActions::ShowScriptManager
Definition: parleyactions.h:39
ParleyActions::CheckSpelling
Definition: parleyactions.h:33
ParleyActions::ToggleShowSublessons
Definition: parleyactions.h:34
Prefs::setShowSearch
static void setShowSearch(bool v)
Set Toggle display of the search bar.
Definition: prefs.h:758
Editor::LatexWidget
Definition: latexwidget.h:33
summarywordwidget.h
Editor::EditorWindow::~EditorWindow
~EditorWindow()
Definition: editor.cpp:91
Editor::EditorWindow::updateDocument
void updateDocument(KEduVocDocument *doc)
Set the current doc (after creating a new one or opening a file)
Definition: editor.cpp:98
ParleyActions::RemoveGrades
Definition: parleyactions.h:32
Editor::EditorWindow::slotShowScriptManager
void slotShowScriptManager()
Display script manager (open a new window / or Settings window)
Definition: editor.cpp:436
ParleyActions::StartPractice
Definition: parleyactions.h:36
containerview.h
Editor::EditorWindow::removeGrades
void removeGrades()
Removes all grading information from the current document.
Definition: editor.cpp:446
Editor::EditorWindow::initScripts
void initScripts()
Load enabled scripts (from configuration parleyrc)
Definition: editor.cpp:451
Editor::VocabularyModel::setDocument
void setDocument(KEduVocDocument *doc)
Definition: vocabularymodel.cpp:49
Editor::VocabularyView
Definition: vocabularyview.h:39
lessonmodel.h
ScriptManager::loadScripts
void loadScripts()
Loads (activates) all the available scripts and notifies the user if any script was not activated (du...
Definition: scriptmanager.cpp:113
Editor::BrowserWidget
Definition: browserwidget.h:34
Editor::VocabularyView::setTranslator
void setTranslator(Translator *translator)
Set the translator to be used by the delegate.
Definition: vocabularyview.cpp:343
Editor::ComparisonWidget::setDocument
void setDocument(KEduVocDocument *doc)
To know about word types that are currently defined.
Definition: comparisonwidget.cpp:110
Editor::EditorWindow::initView
void initView()
setup the main view
Definition: editor.cpp:384
Editor::VocabularyView::setDocument
void setDocument(KEduVocDocument *doc)
Definition: vocabularyview.cpp:332
Editor::VocabularyView::reset
void reset()
Definition: vocabularyview.cpp:172
ParleyActions::LanguagesProperties
Definition: parleyactions.h:31
Editor::SynonymWidget::Antonym
Definition: synonymwidget.h:33
comparisonwidget.h
wordtypemodel.h
translator.h
Editor::AudioWidget
Definition: audiowidget.h:31
ScriptDialog
Definition: scriptdialog.h:26
Editor::EditorWindow::EditorWindow
EditorWindow(ParleyMainWindow *parent)
Definition: editor.cpp:62
latexwidget.h
Editor::ImageChooserWidget
Definition: imagechooserwidget.h:26
Editor::MultipleChoiceWidget
Definition: multiplechoicewidget.h:39
Editor::VocabularyView::setModel
void setModel(VocabularyFilter *model)
Definition: vocabularyview.cpp:151
ScriptManager
This class finds the scripts installed in the application directory and manages loading and unloading...
Definition: scriptmanager.h:30
Editor::EditorWindow::initActions
void initActions()
setup the action (menus etc)
Definition: editor.cpp:348
Editor::SummaryWordWidget::slotDocumentChanged
void slotDocumentChanged(KEduVocDocument *doc)
Called when a KEduVocDocument change happened.
Definition: summarywordwidget.cpp:94
Editor::BasicContainerModel::setDocument
void setDocument(KEduVocDocument *doc)
Set the new source kvtml file.
Definition: basiccontainermodel.cpp:44
Editor::ComparisonWidget
Definition: comparisonwidget.h:38
audiowidget.h
vocabularyfilter.h
ParleyMainWindow::parleyDocument
ParleyDocument * parleyDocument()
Return the ParleyDocument member object.
Definition: parleymainwindow.cpp:412
Editor::WordTypeModel
Model for the tree of word types.
Definition: wordtypemodel.h:25
Editor::LessonModel
Model for the tree of lessons.
Definition: lessonmodel.h:25
Editor::SynonymWidget::Synonym
Definition: synonymwidget.h:32
wordtypeview.h
browserwidget.h
Editor::SummaryWordWidget
Represents the overview of a KEduVocExpression Shows the language word the lesson the word type pronu...
Definition: summarywordwidget.h:45
vocabularymodel.h
ParleyActions::createUploadAction
KAction * createUploadAction(const QObject *recvr, const char *slot, KActionCollection *collection)
Definition: parleyactions.cpp:189
Editor::VocabularyModel::resetLanguages
void resetLanguages()
Definition: vocabularymodel.cpp:400
Editor::SynonymWidget
Definition: synonymwidget.h:27
vocabularyview.h
ParleyMainWindow::slotUpdateWindowCaption
void slotUpdateWindowCaption()
Update the title bar of the main window with the current document.
Definition: parleymainwindow.cpp:132
This file is part of the KDE documentation.
Documentation copyright © 1996-2014 The KDE developers.
Generated on Tue Oct 14 2014 22:42:05 by doxygen 1.8.7 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.

parley

Skip menu "parley"
  • 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