File indexing completed on 2024-04-21 03:51:04

0001 /*
0002     SPDX-FileCopyrightText: 2010 Frederik Gladhorn <gladhorn@kde.org>
0003     SPDX-License-Identifier: GPL-2.0-or-later
0004 */
0005 
0006 #ifndef COMPARISONBACKENDMODE_H
0007 #define COMPARISONBACKENDMODE_H
0008 
0009 #include "abstractbackendmode.h"
0010 #include "practice/sessionmanagerbase.h"
0011 
0012 namespace Practice
0013 {
0014 class ComparisonBackendMode : public AbstractBackendMode
0015 {
0016     Q_OBJECT
0017 
0018 public:
0019     ComparisonBackendMode(AbstractFrontend *frontend, QObject *parent, Practice::SessionManagerBase *sessionManager, KEduVocDocument *doc);
0020 
0021     bool setTestEntry(TestEntry *current) override;
0022     grade_t currentPreGradeForEntry() const override;
0023     grade_t currentGradeForEntry() const override;
0024 
0025     void checkAnswer() override;
0026 
0027 public Q_SLOTS:
0028     void hintAction() override;
0029 
0030 protected:
0031     void updateGrades() override;
0032 
0033 private:
0034     SessionManagerBase *m_sessionManager{nullptr};
0035     KEduVocDocument *m_doc{nullptr};
0036     QStringList m_lastAnswers;
0037 };
0038 
0039 }
0040 
0041 #endif