diff --git a/catalog.cpp b/catalog.cpp index 4ff7771..0178850 100644 --- a/catalog.cpp +++ b/catalog.cpp @@ -102,7 +102,7 @@ CChapter *pChapter=0; CZipArchive zip; if (!zip.open(strFileName, CZipArchive::OpenReadOnly)) { - QMessageBox::critical(pParent, pParent->tr("Datei-Fehler"), pParent->tr("Konnte folgende Datei nicht zum Lesen öffnen:\n%1").arg(strFileName)); + QMessageBox::critical(pParent, pParent->tr("Datei-Fehler"), pParent->tr("Konnte folgende Datei nicht zum Lesen öffnen:\n%1").arg(strFileName)); return false; } @@ -234,7 +234,7 @@ QFile file (strFileName); if (strFileName.isEmpty()) return false; if (!file.open(QIODevice::WriteOnly)) { - QMessageBox::critical(pParent, QString(pParent->tr("Datei-Fehler")), pParent->tr("Konnte folgende Datei nicht zum Schreiben öffnen:\n")+strFileName); + QMessageBox::critical(pParent, QString(pParent->tr("Datei-Fehler")), pParent->tr("Konnte folgende Datei nicht zum Schreiben öffnen:\n")+strFileName); return false; } QTextStream out(&file); @@ -315,7 +315,7 @@ int iErrLine, iErrCol; if (!file.exists()) return true; if (!file.open (QIODevice::ReadOnly)) { - QMessageBox::critical(pParent, QString(pParent->tr("Datei-Fehler")), pParent->tr("Konnte folgende Datei nicht zum Lesen öffnen:\n")+statisticFileName()); + QMessageBox::critical(pParent, QString(pParent->tr("Datei-Fehler")), pParent->tr("Konnte folgende Datei nicht zum Lesen öffnen:\n")+statisticFileName()); return false; } QTextStream in (&file); @@ -375,7 +375,7 @@ QFile file (strFileName); if (!file.open (QIODevice::WriteOnly)) { - QMessageBox::critical (pParent, pParent->tr("Fehler"), pParent->tr("Konnte folgende Datei nicht zum Schreiben öffnen.\n")+strFileName); + QMessageBox::critical (pParent, pParent->tr("Fehler"), pParent->tr("Konnte folgende Datei nicht zum Schreiben öffnen.\n")+strFileName); return false; } QTextStream out(&file); diff --git a/catalogmodel.cpp b/catalogmodel.cpp index c7e9185..65367f2 100644 --- a/catalogmodel.cpp +++ b/catalogmodel.cpp @@ -67,14 +67,14 @@ QVariant CCatalogModel::headerData (int section, Qt::Orientation orientation, in else if (section == COL_QUESTION) return tr("Fragen"); else if (section == COL_AVG) - return tr("Ø"); + return tr("Ø"); else if (section == COL_ASSIST) return tr("Lernassistent"); } else if (role == Qt::ToolTipRole) { if (section == COL_CHAPTER) - return tr("Kapitelname\nBitte markieren Sie das Kapitel, das Sie lernen möchten."); + return tr("Kapitelname\nBitte markieren Sie das Kapitel, das Sie lernen möchten."); else if (section == COL_QUESTION) return tr("Anzahl d. Fragen inkl. Unterkapitel"); else if (section == COL_AVG) diff --git a/chapter.cpp b/chapter.cpp index 24343a0..39015dc 100644 --- a/chapter.cpp +++ b/chapter.cpp @@ -275,14 +275,14 @@ void CChapter::updateStatisticCount() return false; */ - // Alle Statistiken zurücksetzen + // Alle Statistiken zurücksetzen m_uNeverAskedCount = 0; m_bHasLearningNew = false; m_bHasKnownQuestions = false; m_bHasKnownQuestionsRepeatToday = false; for (int i=0; i<=LEVEL_MAX; i++) m_uLevelCount[i] = 0; - // Zuerst Statistiken für Unterkapitel berechnen und integrieren + // Zuerst Statistiken für Unterkapitel berechnen und integrieren for (int i=0; ihasKnownQuestionsRepeatToday()) m_bHasKnownQuestionsRepeatToday = true; } - // Anschließend Statistiken für eigene Fragen neu berechnen und hinzufügen + // Anschließend Statistiken für eigene Fragen neu berechnen und hinzufügen for (int i=0; i list = questionPool(); /*! Die Variable m_recomRepeatDate muss up to date sein! -\return Lernempfehlung dieses Kapitels ohne Berücksichtigung evt. vorhandener ünter- oder übergeordneter Kapitel. +\return Lernempfehlung dieses Kapitels ohne Berücksichtigung evt. vorhandener ünter- oder übergeordneter Kapitel. \sa m_recomRepeatDate */ @@ -417,7 +417,7 @@ CChapter::Recommendation CChapter::recommendationIndividual() const } /*! -Aktualisiert die Lernempfehlung für dieses Kapitel und alle Unterkapitel +Aktualisiert die Lernempfehlung für dieses Kapitel und alle Unterkapitel \sa m_recom */ void CChapter::updateRecommendation() @@ -525,7 +525,7 @@ unsigned uDays=0; case RecommendationSubChapter: return tr("Zuerst Unterkapitel lernen"); case RecommendationParentChapter: - return tr("Übergeordnetes Kapitel lernen"); + return tr("Ãœbergeordnetes Kapitel lernen"); case RecommendationLearnNew: return tr("Neue Fragen lernen"); case RecommendationRepeatToday: @@ -592,12 +592,12 @@ QString str; str = tr("Keine Lernempfehlung"); break; case RecommendationSubChapter: - str = tr("Dieses Kapitel enthält Unterkapitel, dessen Fragen Sie noch nicht ausreichend gelernt haben.\nEs wird empohlen in kleinen Etappen zu lernen und damit zuerst die Unterkapitel zu vertiefen."); + str = tr("Dieses Kapitel enthält Unterkapitel, dessen Fragen Sie noch nicht ausreichend gelernt haben.\nEs wird empohlen in kleinen Etappen zu lernen und damit zuerst die Unterkapitel zu vertiefen."); break; case RecommendationParentChapter: if (levelAvgRounded() >= LEVEL_NORMAL) - str = tr("Sie können die Fragen dieses Kapitels gut beantworten.\n"); - str += tr("Es wird empfohlen, alle Fragen des übergeordneten Kapitels gemischt zusammen zu lernen."); + str = tr("Sie können die Fragen dieses Kapitels gut beantworten.\n"); + str += tr("Es wird empfohlen, alle Fragen des übergeordneten Kapitels gemischt zusammen zu lernen."); break; case RecommendationLearnNew: if (!isRecommendedNow(pCatalog)) @@ -606,23 +606,23 @@ QString str; str = tr("Bitte beantworten Sie alle neuen Fragen mindestens einmal richtig."); break; case RecommendationRepeatToday: - str = tr("Bitte lernen Sie alle heute zu wiederholenden Fragen, bis sie eine Lernfortschritts-Stufe höher eingestuft sind."); + str = tr("Bitte lernen Sie alle heute zu wiederholenden Fragen, bis sie eine Lernfortschritts-Stufe höher eingestuft sind."); break; case RecommendationRepeatLater: uDays = QDate::currentDate().daysTo(m_recomRepeatDate); if (uDays > 1) str = tr("Die Wiederholung dieses Kapitels ist erst in %1 Tagen geplant.\n").arg(uDays); else - str = tr("Die Wiederholung dieses Kapitels ist erst für morgen geplant.\n"); + str = tr("Die Wiederholung dieses Kapitels ist erst für morgen geplant.\n"); if (pCatalog->m_uRecomCount[RecommendationRepeatToday] > 0) - str += tr("Es gibt andere Kapitel, deren Fragen heute wiederholt werden müssen. Bitte lernen Sie diese Kapitel zuerst."); + str += tr("Es gibt andere Kapitel, deren Fragen heute wiederholt werden müssen. Bitte lernen Sie diese Kapitel zuerst."); else if (pCatalog->m_uRecomCount[RecommendationLearnNew] > 0) str += tr("Bitte lernen Sie zuerst Kapitel mit neuen Fragen."); break; } if (hasRecommendedQuestions() && isRecommendedNow(pCatalog)) - str += tr("

Dafür sind noch %1 Fragen zu lernen.").arg(recommendedQuestionCount()); + str += tr("

Dafür sind noch %1 Fragen zu lernen.").arg(recommendedQuestionCount()); return str; } @@ -634,14 +634,14 @@ QString str; if (m_recom2 == RecommendationLearnNew || (m_recom == RecommendationLearnNew && !isRecommendedNow(pCatalog))) { //str = tr("Bitte beantworten Sie alle neuen Fragen mindestens einmal richtig."); - str = tr("Alternativ können Sie jetzt die neuen Fragen dieses Kapitels lernen (%1 Fragen).").arg(recommendedQuestionCount()); + str = tr("Alternativ können Sie jetzt die neuen Fragen dieses Kapitels lernen (%1 Fragen).").arg(recommendedQuestionCount()); } else if (m_recom2 == RecommendationRepeatToday) { if (m_recom == RecommendationSubChapter) - str = tr("Bitte lernen Sie alle heute zu wiederholenden Fragen, bis sie eine Lernfortschritts-Stufe höher eingestuft sind (%1 Fragen).").arg(recommendedQuestionCount()); + str = tr("Bitte lernen Sie alle heute zu wiederholenden Fragen, bis sie eine Lernfortschritts-Stufe höher eingestuft sind (%1 Fragen).").arg(recommendedQuestionCount()); else - str = tr("Alternativ können Sie jetzt die heute zu wiederholenden Fragen dieses Kapitels lernen (%1 Fragen).").arg(recommendedQuestionCount()); + str = tr("Alternativ können Sie jetzt die heute zu wiederholenden Fragen dieses Kapitels lernen (%1 Fragen).").arg(recommendedQuestionCount()); } return str; @@ -676,7 +676,7 @@ QString CChapter::recommendationIconName(const CCatalog *pCatalog) const /*! \return true: Kapitel kann jetzt gelernt werden, -false: Kapitel sollte überhaupt nicht oder erst später gelernt werden +false: Kapitel sollte überhaupt nicht oder erst später gelernt werden */ bool CChapter::isRecommendedNow(const CCatalog *pCatalog) const @@ -700,7 +700,7 @@ bool CChapter::isRecommendedNow(const CCatalog *pCatalog) const } /* -\return true: Das Kapitel enthält noch neue Fragen, die gerade (="heute") gelernt werden +\return true: Das Kapitel enthält noch neue Fragen, die gerade (="heute") gelernt werden bool CChapter::isLearningNew() const { for (int i=0; isetText(tr("Ohne Wertung\n(Nicht bestanden)")); - QMessageBox::information(this, tr("Information"), tr("Sie haben weniger als die Hälfte aller Fragen beantwortet.\nDiese Prüfung wird deswegen nicht gewertet.")); + QMessageBox::information(this, tr("Information"), tr("Sie haben weniger als die Hälfte aller Fragen beantwortet.\nDiese Prüfung wird deswegen nicht gewertet.")); } else if (uErrorPoints > m_exam.maxErrorPoints()) { bPassed = false; labResult->setText(tr("Nicht bestanden")); - QMessageBox::information(this, tr("Ergebnis"), tr("Sie haben die Prüfung leider nicht bestanden.")); + QMessageBox::information(this, tr("Ergebnis"), tr("Sie haben die Prüfung leider nicht bestanden.")); } else { bPassed = true; labResult->setText(tr("Bestanden")); - QMessageBox::information(this, tr("Ergebnis"), tr("Herzlichen Glückwunsch!

Sie haben die Prüfung bestanden!")); + QMessageBox::information(this, tr("Ergebnis"), tr("Herzlichen Glückwunsch!

Sie haben die Prüfung bestanden!")); } if (bSaveStat) - { // Prüfungsstatistik speichern + { // Prüfungsstatistik speichern CExamStat es(m_exam); es.setSecs(uSecs); es.setQuestions(m_listQuestion, m_listAnswerMask); diff --git a/dlgexamselect.cpp b/dlgexamselect.cpp index eebd1ae..75c14eb 100644 --- a/dlgexamselect.cpp +++ b/dlgexamselect.cpp @@ -85,7 +85,7 @@ void CDlgExamSelect::on_buttonBox_accepted() { if (m_iSelectedExam == -1) { - QMessageBox::information(this, tr("Information"), tr("Bitte eine Prüfung auswählen!")); + QMessageBox::information(this, tr("Information"), tr("Bitte eine Prüfung auswählen!")); return; } accept(); diff --git a/dlgexamstatistic.cpp b/dlgexamstatistic.cpp index aa9357e..bc8c2f6 100644 --- a/dlgexamstatistic.cpp +++ b/dlgexamstatistic.cpp @@ -34,7 +34,7 @@ CDlgExamStatistic::CDlgExamStatistic(QWidget *pParent) : QDialog(pParent) twExamStat->headerItem()->setText(1, "Ergebnis"); twExamStat->headerItem()->setText(2, "Fehler"); twExamStat->headerItem()->setText(3, "Dauer"); - twExamStat->headerItem()->setText(4, "Ø pro Frage"); + twExamStat->headerItem()->setText(4, "Ø pro Frage"); twExamStat->header()->resizeSection(0, 130); twExamStat->header()->resizeSection(2, 50); @@ -47,7 +47,7 @@ void CDlgExamStatistic::go (CCatalog *pCatalog) if (pCatalog->countExamStat() == 0) { - QMessageBox::information(parentWidget(), tr("Information"), tr("Es wurden bisher noch keine Prüfungen durchgeführt.")); + QMessageBox::information(parentWidget(), tr("Information"), tr("Es wurden bisher noch keine Prüfungen durchgeführt.")); return; } diff --git a/dlglearn.cpp b/dlglearn.cpp index 6a8831d..b9dd52c 100644 --- a/dlglearn.cpp +++ b/dlglearn.cpp @@ -177,7 +177,7 @@ CQuestion *p = 0; if (m_bAssistantEnable && m_pChapter->hasRecommendedQuestions()) { -// if (afu_random (0, 99) >= 0) // hier kann ggf. das Verhältnis zwischen RecommendedQuestion und Zufalls-Question ausgewählt werden +// if (afu_random (0, 99) >= 0) // hier kann ggf. das Verhältnis zwischen RecommendedQuestion und Zufalls-Question ausgewählt werden // { p = findNextTargetQuestion(); // Wichtig: p kann hier immernoch 0 sein! Dies bedeutet, dass keine passende Frage im TargetPool gefunden wurde. @@ -202,7 +202,7 @@ unsigned uRnd=0; { if (list.at(0) == m_pQuestion) // Regel: Niemals die gleiche Frage mehrfach hintereinander - // -> kann hier nicht erfüllt werden -> 0 zurückgeben -> hole Frage aus allg. Pool (siehe findNextQuestion) + // -> kann hier nicht erfüllt werden -> 0 zurückgeben -> hole Frage aus allg. Pool (siehe findNextQuestion) return 0; else return list.at(0); @@ -257,7 +257,7 @@ unsigned uRndMax = 0; do /* diese Schleife verhindert, dass eine Frage zweimal hintereinander kommt */ { - do /* diese Schleife wählt die Abfragehäufigkeit aus */ + do /* diese Schleife wählt die Abfragehäufigkeit aus */ { uRnd = afu_random (1, uRndMax); uLevel = LEVEL_MAX; @@ -268,7 +268,7 @@ unsigned uRndMax = 0; } while (uCountQuestion[uLevel] == 0); - // Zufällige Frage bestimmen + // Zufällige Frage bestimmen uRnd = afu_random (1, uCountQuestion[uLevel]); for (i=0; ilevel() == uLevel && --uRnd == 0) break; @@ -284,7 +284,7 @@ QString str, strCheat; if (m_listQuestion.size() == 0) { - QMessageBox::critical (this, "Fehler", "Es gibt keine Fragen, die gelernt werden könnten!"); + QMessageBox::critical (this, "Fehler", "Es gibt keine Fragen, die gelernt werden könnten!"); accept(); return; } @@ -367,7 +367,7 @@ unsigned uAnswerMask = 1<setToolTip(tr("Lern-Assistent aufrufen")); pbIgnore->setToolTip(tr("Meldung ignorieren, dieses Kapitel weiterlernen")); pbExit->setToolTip(tr("Lernmodus beenden")); - msgBox.setText(tr("Herzlichen Glückwunsch!

Sie haben das heutige Lernziel für dieses Kapitel erreicht.
Bitte folgen Sie den weiteren Empfehlungen des Lernassistents.")); + msgBox.setText(tr("Herzlichen Glückwunsch!

Sie haben das heutige Lernziel für dieses Kapitel erreicht.
Bitte folgen Sie den weiteren Empfehlungen des Lernassistents.")); msgBox.setWindowTitle(tr("Ziel erreicht")); msgBox.exec(); diff --git a/dlglearnassistant.cpp b/dlglearnassistant.cpp index b7b412b..64ea2b3 100644 --- a/dlglearnassistant.cpp +++ b/dlglearnassistant.cpp @@ -97,7 +97,7 @@ void CDlgLearnAssistant::on_buttonBox_accepted() QModelIndexList list = tvChapters->selectionModel()->selectedIndexes(); if (rbList->isChecked() && list.isEmpty()) { - QMessageBox::information(this, tr("Information"), tr("Bitte markieren Sie in der Liste ein Kapitel, das Sie lernen möchten!")); + QMessageBox::information(this, tr("Information"), tr("Bitte markieren Sie in der Liste ein Kapitel, das Sie lernen möchten!")); return; } accept(); diff --git a/exam.cpp b/exam.cpp index d50bc1f..507c162 100644 --- a/exam.cpp +++ b/exam.cpp @@ -87,7 +87,7 @@ CQuestion *q=0; if (listSelected.size() < questionCount()) { throw CError ( - QString("Für den regulären Ausdruck '%1' wurden nur %2 Fragen gefunden - zu wenig, um daraus %3 Fragen für die Prüfung auszuwählen.") + QString("Für den regulären Ausdruck '%1' wurden nur %2 Fragen gefunden - zu wenig, um daraus %3 Fragen für die Prüfung auszuwählen.") .arg(m_strRegExp).arg(listSelected.size()).arg(questionCount()), __PRETTY_FUNCTION__, __FILE__, __LINE__); } @@ -181,7 +181,7 @@ QList CExam::createQuestionPool(const QList& listAllQues QList listRet; #ifdef DEBUGMSG - qDebug ("Erzeuge Prüfungsfragen für '%s'", qPrintable(name())); + qDebug ("Erzeuge Prüfungsfragen für '%s'", qPrintable(name())); #endif try @@ -193,12 +193,12 @@ QList listRet; } catch (CError e) { - e.preText(QString("Konnte Prüfung '%1' nicht erzeugen.").arg(name())); + e.preText(QString("Konnte Prüfung '%1' nicht erzeugen.").arg(name())); throw; } #ifdef DEBUGMSG - qDebug ("Insg. %i Prüfungsfragen ausgewählt", listRet.size()); + qDebug ("Insg. %i Prüfungsfragen ausgewählt", listRet.size()); for (int i=0; iid())); #endif diff --git a/mainwindow.cpp b/mainwindow.cpp index b8bfb95..4a60587 100644 --- a/mainwindow.cpp +++ b/mainwindow.cpp @@ -137,11 +137,11 @@ void CMainWindow::setCatalog (CCatalog *pCatalog) QDate d = m_pCatalog->validUntil(); if (d.isValid() && d < QDate::currentDate()) { - QString str = tr("Dieser Fragenkatalog ist seit dem %1 nicht mehr gültig!").arg(d.toString(Qt::LocalDate)); + QString str = tr("Dieser Fragenkatalog ist seit dem %1 nicht mehr gültig!").arg(d.toString(Qt::LocalDate)); if (!m_pCatalog->publisher().isEmpty()) - str += tr("

Weitere Informationen zur Gültigkeit erhalten Sie vom Herausgeber:
")+m_pCatalog->publisher(); + str += tr("

Weitere Informationen zur Gültigkeit erhalten Sie vom Herausgeber:
")+m_pCatalog->publisher(); if (!m_pCatalog->contact().isEmpty()) - str += tr("

Einen aktuellen Fragenkatalog für den AFUTrainer erhalten Sie evt. von:
")+m_pCatalog->contact(); + str += tr("

Einen aktuellen Fragenkatalog für den AFUTrainer erhalten Sie evt. von:
")+m_pCatalog->contact(); QMessageBox::warning(this, tr("Warnung"), str); } @@ -154,7 +154,7 @@ QString str; if (m_pCatalog == 0) return false; str = m_pCatalog->checkForErrors(); if (str.isEmpty()) return false; - QMessageBox::critical(this, tr("Fehler im Fragenkatalog"), tr("Die gewünschte Funktion kann nicht ausgeführt werden, da der Fragenkatalog folgende Fehler enthält:

")+ str); + QMessageBox::critical(this, tr("Fehler im Fragenkatalog"), tr("Die gewünschte Funktion kann nicht ausgeführt werden, da der Fragenkatalog folgende Fehler enthält:

")+ str); return true; } @@ -181,7 +181,7 @@ void CMainWindow::on_actFileOpen_triggered() { QString strFileName; if (!checkForHomeDir()) return; - strFileName = QFileDialog::getOpenFileName(this, tr("Öffne Fragenkatalog"), QString(), tr("Amateur Radio Questionary Data Format (*.aqz)\nAlle Dateien (*.*)")); + strFileName = QFileDialog::getOpenFileName(this, tr("Öffne Fragenkatalog"), QString(), tr("Amateur Radio Questionary Data Format (*.aqz)\nAlle Dateien (*.*)")); onOpenFile(strFileName); } @@ -207,7 +207,7 @@ void CMainWindow::on_actFileInformation_triggered() CDlgInformation dlg(this); if (!m_pCatalog) { - QMessageBox::information(this, tr("Information"), tr("Kein Fragenkatalog geladen, zu dem Informationen angezeigt werden könnten.")); + QMessageBox::information(this, tr("Information"), tr("Kein Fragenkatalog geladen, zu dem Informationen angezeigt werden könnten.")); return; } dlg.setup(m_pCatalog); @@ -270,13 +270,13 @@ enum LastAdded {None, Chapter, Question, Answer}; LastAdded la=None; CCatalog *pCatalog=0; -strFileName = QFileDialog::getOpenFileName(this, tr("Öffne Datei zum Fragenkatalog-Import"), QString("D:/projekte/afutrainer/fragenkataloge/2007-02/Klasse A Technik/"), tr("TXT-Dateien (*.txt)\nAlle Dateien (*.*)")); +strFileName = QFileDialog::getOpenFileName(this, tr("Öffne Datei zum Fragenkatalog-Import"), QString("D:/projekte/afutrainer/fragenkataloge/2007-02/Klasse A Technik/"), tr("TXT-Dateien (*.txt)\nAlle Dateien (*.*)")); if (strFileName.isEmpty()) return; QFile file(strFileName); if(!file.open(QIODevice::ReadOnly)) { - QMessageBox::information(this, tr("Fehler"), tr("Konnte Datei '%1' nicht zum Lesen öffnen!").arg(strFileName)); + QMessageBox::information(this, tr("Fehler"), tr("Konnte Datei '%1' nicht zum Lesen öffnen!").arg(strFileName)); return; } QTextStream in(&file); @@ -285,7 +285,7 @@ strFileName = QFileDialog::getOpenFileName(this, tr(" while (!in.atEnd()) { strLine = in.readLine().trimmed(); - if (strLine.isEmpty() || strLine.contains(QRegExp("^Prüfungsfragen")) || strLine.contains("^Bundesnetzagentur")) + if (strLine.isEmpty() || strLine.contains(QRegExp("^Prüfungsfragen")) || strLine.contains("^Bundesnetzagentur")) { la = None; } @@ -370,7 +370,7 @@ strFileName = QFileDialog::getOpenFileName(this, tr(" } } - // Bilder hinzufügen + // Bilder hinzufügen QList listPool = pCatalog->questionPool(); QDir dirPath(strFileName.left(strFileName.lastIndexOf('/'))); for (int i=0; isetName("Importierter Katalog von " + strFileName); QMessageBox::information(this, tr("Information"), - "Bitte Debug-Ausgabe überprüfen, ob alle Grafik-Dateien zugeordnet wurden!

" - "Bitte überprüfen, ob alle Kapitel korrekt erkannt wurden. " + "Bitte Debug-Ausgabe überprüfen, ob alle Grafik-Dateien zugeordnet wurden!

" + "Bitte überprüfen, ob alle Kapitel korrekt erkannt wurden. " "Wenn nicht, muss die TXT-Datei von Hand kontrolliert werden!


"+strChapter); - qDebug("Weitere Vorgehensweise:\n\t1. Fragenkatalog als XML-Datei abspeichern.\n\t2. ggf. Korrekturen in der XML-Datei vornehmen\n\t3. XML-Datei und alle Grafik-Dateien in ein ZIP-Archiv packen und die Dateiänderung auf .atc ändern.\n\tFertig!"); + qDebug("Weitere Vorgehensweise:\n\t1. Fragenkatalog als XML-Datei abspeichern.\n\t2. ggf. Korrekturen in der XML-Datei vornehmen\n\t3. XML-Datei und alle Grafik-Dateien in ein ZIP-Archiv packen und die Dateiänderung auf .atc ändern.\n\tFertig!"); setCatalog (pCatalog); } @@ -481,13 +481,13 @@ enum LastAdded {None, Chapter, Question, Answer}; LastAdded la=None; CCatalog *pCatalog=0; -strFileName = QFileDialog::getOpenFileName(this, tr("Öffne Datei zum Fragenkatalog-Import"), QString("D:/projekte/afutrainer/fragenkataloge/US/"), tr("TXT-Dateien (*.txt)\nAlle Dateien (*.*)")); +strFileName = QFileDialog::getOpenFileName(this, tr("Öffne Datei zum Fragenkatalog-Import"), QString("D:/projekte/afutrainer/fragenkataloge/US/"), tr("TXT-Dateien (*.txt)\nAlle Dateien (*.*)")); if (strFileName.isEmpty()) return; QFile file(strFileName); if(!file.open(QIODevice::ReadOnly)) { - QMessageBox::information(this, tr("Fehler"), tr("Konnte Datei '%1' nicht zum Lesen öffnen!").arg(strFileName)); + QMessageBox::information(this, tr("Fehler"), tr("Konnte Datei '%1' nicht zum Lesen öffnen!").arg(strFileName)); return; } QTextStream in(&file); @@ -633,10 +633,10 @@ strFileName = QFileDialog::getOpenFileName(this, tr(" pCatalog->setName("Importierter Katalog von " + strFileName); QMessageBox::information(this, tr("Information"), - "Bitte überprüfen, ob alle Kapitel korrekt erkannt wurden. " + "Bitte überprüfen, ob alle Kapitel korrekt erkannt wurden. " "Wenn nicht, muss die TXT-Datei von Hand kontrolliert werden!
"+strChapter); - qDebug("Weitere Vorgehensweise:\n\t1. Fragenkatalog als XML-Datei abspeichern.\n\t2. ggf. Korrekturen in der XML-Datei vornehmen\n\t3. XML-Datei und alle Grafik-Dateien in ein ZIP-Archiv packen und die Dateiänderung auf .atc ändern.\n\tFertig!"); + qDebug("Weitere Vorgehensweise:\n\t1. Fragenkatalog als XML-Datei abspeichern.\n\t2. ggf. Korrekturen in der XML-Datei vornehmen\n\t3. XML-Datei und alle Grafik-Dateien in ein ZIP-Archiv packen und die Dateiänderung auf .atc ändern.\n\tFertig!"); setCatalog (pCatalog); } @@ -674,7 +674,7 @@ QModelIndexList list = m_pViewChapter->selectionModel()->selectedIndexes(); if (checkForErrors()) return; if (list.isEmpty()) { - QMessageBox::information(this, tr("Information"), tr("Bitte ein Kapitel zum Lernen auswählen!")); + QMessageBox::information(this, tr("Information"), tr("Bitte ein Kapitel zum Lernen auswählen!")); return; } CChapter *p = (CChapter*)list.first().internalPointer(); @@ -707,7 +707,7 @@ CExam exam; iCount = m_pCatalog->countExam(); if (iCount == 0) { - QMessageBox::information(this, tr("Information"), tr("Dieser Fragenkatalog enthält keine Prüfungen.")); + QMessageBox::information(this, tr("Information"), tr("Dieser Fragenkatalog enthält keine Prüfungen.")); return; } else if (iCount == 1) @@ -734,7 +734,7 @@ CDlgExamStatistic dlg(this); if (checkForErrors()) return; if (m_pCatalog->countExam() == 0) { - QMessageBox::information(this, tr("Information"), tr("Dieser Fragenkatalog enthält keine Prüfungen.")); + QMessageBox::information(this, tr("Information"), tr("Dieser Fragenkatalog enthält keine Prüfungen.")); return; } dlg.go(m_pCatalog); @@ -779,7 +779,7 @@ QString str = tr("AFUTrainer Version 3.0
" "along with this program; if not, write to the " "Free Software Foundation, Inc., " "59 Temple Place - Suite 330, Boston, MA 02111-1307, USA."); - QMessageBox::about(this,tr("Über..."), str); + QMessageBox::about(this,tr("Ãœber..."), str); } void CMainWindow::on_actHelpAboutQt_triggered() diff --git a/question.cpp b/question.cpp index 21f3b15..304716a 100644 --- a/question.cpp +++ b/question.cpp @@ -153,7 +153,7 @@ QString str, strHints; str += " " + repeatDateTextExtended(); if (!m_listAnswerClicked.isEmpty()) { - str += "

"; + str += "

Datum/Uhrzeit Antwort Richtig? Benötigte Zeit
"; for (int i=0; i"; + str += QObject::tr("Die Frage %1 hat nicht exakt vier Antworten, sondern %2 Stück.").arg(id()).arg(iAnswerCount) + "
"; iAnswerCount = countCorrectAnswer(); if (iAnswerCount != 1) - str += QObject::tr("Die Frage %1 hat nicht exakt eine richtige Antwort, sondern %2 Stück.").arg(id()).arg(iAnswerCount) + "
"; + str += QObject::tr("Die Frage %1 hat nicht exakt eine richtige Antwort, sondern %2 Stück.").arg(id()).arg(iAnswerCount) + "
"; for (int j=0; j"; + str += QObject::tr("Die Antwort %1 der Frage %2 enthält keinen Text.").arg(QChar('A' + j)).arg(id()) + "
"; } if (text().isEmpty()) - str += QObject::tr("Die Frage %1 enthält keinen Text.").arg(id()) + "
"; + str += QObject::tr("Die Frage %1 enthält keinen Text.").arg(id()) + "
"; return str; } @@ -415,7 +415,7 @@ QString CQuestion::correctionText(const unsigned uAnswerMask) } else { - return QObject::tr("Ihre Antwort %1 war leider falsch. Die richtige Antwort wäre %2 gewesen.") + return QObject::tr("Ihre Antwort %1 war leider falsch. Die richtige Antwort wäre %2 gewesen.") .arg(answerMaskToString(uAnswerMask)).arg(answerMaskToString(correctAnswerMask())); } } @@ -488,7 +488,7 @@ QString CQuestion::levelText(const unsigned uLevel) case LEVEL_VERYOFTEN: return QObject::tr("Ahnungslos"); case LEVEL_OFTEN: - return QObject::tr("Anfänger"); + return QObject::tr("Anfänger"); case LEVEL_NORMAL: return QObject::tr("Fortgeschritten"); case LEVEL_RARE: @@ -553,16 +553,16 @@ unsigned uLevelOld=0, uLevelNew=0; uLevelNew = levelAtEndOfDay(dtLastClicked.date()); if (uLevelOld == uLevelNew) - strRet += tr("Die Einstufung des Lernfortschritts änderte sich an diesem Tag nicht."); + strRet += tr("Die Einstufung des Lernfortschritts änderte sich an diesem Tag nicht."); else - strRet += tr("Der Lernfortschritt änderte sich an diesem Tag von '%1' auf '%2'.").arg(levelText(uLevelOld), levelText(uLevelNew)); + strRet += tr("Der Lernfortschritt änderte sich an diesem Tag von '%1' auf '%2'.").arg(levelText(uLevelOld), levelText(uLevelNew)); return strRet; } /*! \return Datum, an dem die Frage wiederholt werden soll. -Gibt es kein solches Datum, so wird ein ungültiges Datum (QDate::isValid()) zurückgegeben. +Gibt es kein solches Datum, so wird ein ungültiges Datum (QDate::isValid()) zurückgegeben. Hinweis: Das Datum kann auch in der Vergangenheit liegen! */ @@ -699,7 +699,7 @@ bool CQuestion::isLearningNew() const } /*! -\return true: Die Frage wurde gestern oder früher zum ersten Mal beantwortet +\return true: Die Frage wurde gestern oder früher zum ersten Mal beantwortet */ bool CQuestion::isKnownQuestion() const {
Datum/Uhrzeit Antwort Richtig? Benötigte Zeit