void KEduVocDocumentValidatorTest::testDocumentAboutInfo() { KTemporaryFile temp; temp.setSuffix(".kvtml"); temp.open(); KUrl fileName = KUrl(temp.fileName()); temp.close(); const QString generator = QString::fromLatin1( "Validator Unit Tests" ); const QString author = QString::fromLatin1( "Validator Test" ); const QString license = QString::fromLatin1( "test license" ); const QString comment = QString::fromLatin1( "comment" ); const QString category = QString::fromLatin1( "test document" ); const QString title = QString::fromLatin1( "Validator Test Title" ); KEduVocDocument doc; doc.setAuthor( author ); doc.setLicense( license ); doc.setDocumentComment( comment ); doc.setCategory( category ); doc.setTitle( title ); doc.saveAs(fileName, KEduVocDocument::Kvtml, generator); KEduVocDocument docRead; docRead.open(fileName); QCOMPARE( docRead.generator(), generator ); QCOMPARE( docRead.author(), author ); QCOMPARE( docRead.license(), license ); QCOMPARE( docRead.documentComment(), comment ); QCOMPARE( docRead.category(), category ); QCOMPARE( docRead.title(), title ); }
VocabEdit::VocabEdit(QWidget *parent, const QString &fileName) : QDialog(parent), m_fileName("") { setupUi(this); if (!fileName.isEmpty()) { m_fileName = fileName; KEduVocDocument *doc = new KEduVocDocument(this); doc->open(QUrl::fromLocalFile(m_fileName), KEduVocDocument::FileIgnoreLock); for (int i = 0; i < doc->lesson()->entryCount(KEduVocLesson::Recursive); i++) { KEduVocExpression expr = *doc->lesson()->entries(KEduVocLesson::Recursive).value(i); m_vocabList.append(expr); lboxWords->addItem(doc->lesson()->entries(KEduVocLesson::Recursive).value(i)->translation(0)->text()); } txtVocabName->setText(doc->title()); txtDescription->setText(doc->documentComment()); delete doc; } connect(btnSave, &QPushButton::clicked, this, &VocabEdit::slotSave); connect(btnNewWord, &QPushButton::clicked, this, &VocabEdit::slotNewWord); connect(btnRemoveWord, &QPushButton::clicked, this, &VocabEdit::slotRemoveWord); connect(btnClose, &QPushButton::clicked, this, &VocabEdit::slotClose); connect(txtWord, &QLineEdit::textChanged, this, &VocabEdit::slotWordTextChanged); connect(txtHint, &QLineEdit::textChanged, this, &VocabEdit::slotHintTextChanged); //Connect the name and description boxes to a general textChanged slot, so that we can keep track of //whether they've been changed or not connect(txtVocabName, &QLineEdit::textChanged, this, &VocabEdit::slotTextChanged); connect(txtDescription, &QLineEdit::textChanged, this, &VocabEdit::slotTextChanged); connect(lboxWords, &QListWidget::itemSelectionChanged, this, &VocabEdit::slotSelectionChanged); //Has anything in the dialog changed? m_textChanged = false; }