File indexing completed on 2024-04-21 03:41:59
0001 /* 0002 This file is part of Kiten, a KDE Japanese Reference Tool 0003 SPDX-FileCopyrightText: 2001 Jason Katz-Brown <jason@katzbrown.com> 0004 SPDX-FileCopyrightText: 2006 Joseph Kerian <jkerian@gmail.com> 0005 SPDX-FileCopyrightText: 2006 Eric Kjeldergaard <kjelderg@gmail.com> 0006 SPDX-FileCopyrightText: 2011 Daniel E. Moctezuma <democtezuma@gmail.com> 0007 0008 SPDX-License-Identifier: LGPL-2.0-or-later 0009 */ 0010 0011 #ifndef KITEN_DEINFLECTION_H 0012 #define KITEN_DEINFLECTION_H 0013 0014 #include "dictfile.h" 0015 0016 class DictQuery; 0017 class EntryEdict; 0018 class EntryList; 0019 class QString; 0020 0021 class Deinflection 0022 { 0023 public: 0024 explicit Deinflection(const QString &name); 0025 0026 QString *getDeinflectionLabel(); 0027 QString *getWordType(); 0028 EntryList *search(const DictQuery &query, const QVector<QString> &preliminaryResults); 0029 bool load(); 0030 0031 private: 0032 struct Conjugation { 0033 // The ending we are replacing 0034 QString ending; 0035 // The replacement (dictionary form) ending 0036 QString replace; 0037 // What this type of replacement is called 0038 QString label; 0039 }; 0040 0041 EntryEdict *makeEntry(const QString &entry); 0042 0043 static QList<Conjugation> *conjugationList; 0044 0045 QString m_deinflectionLabel; 0046 QString m_wordType; 0047 const QString m_dictionaryName; 0048 }; 0049 0050 #endif