File indexing completed on 2024-04-21 03:42:00

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 
0007     SPDX-License-Identifier: LGPL-2.0-or-later
0008 */
0009 
0010 #ifndef KITEN_ENTRYKANJIDIC_H
0011 #define KITEN_ENTRYKANJIDIC_H
0012 
0013 #include "entry.h"
0014 
0015 #include "kiten_export.h"
0016 
0017 #include <QStringList>
0018 
0019 class QString;
0020 
0021 class KITEN_EXPORT EntryKanjidic : public Entry
0022 {
0023 public:
0024     EntryKanjidic(const EntryKanjidic &dict);
0025     explicit EntryKanjidic(const QString &dict);
0026     EntryKanjidic(const QString &dict, const QString &entry);
0027 
0028     Entry *clone() const override;
0029     QString dumpEntry() const override;
0030     QString getAsRadicalReadings() const;
0031     QStringList getAsRadicalReadingsList() const;
0032     QString getDictionaryType() const override;
0033     QString getInNamesReadings() const;
0034     QStringList getInNamesReadingsList() const;
0035     QString getKanjiGrade() const;
0036     QString getKunyomiReadings() const;
0037     QStringList getKunyomiReadingsList() const;
0038     QString getOnyomiReadings() const;
0039     QStringList getOnyomiReadingsList() const;
0040     QString getStrokesCount() const;
0041     bool loadEntry(const QString &entryLine) override;
0042     QString toHTML() const override;
0043 
0044 protected:
0045     bool extendedItemCheck(const QString &key, const QString &value) const override;
0046     virtual QString HTMLExtendedInfo(const QString &field) const;
0047     QString HTMLReadings() const override;
0048     QString HTMLWord() const override;
0049     virtual QString makeReadingLink(const QString &inReading) const;
0050 
0051     QStringList AsRadicalReadings;
0052     QStringList InNamesReadings;
0053     QStringList KunyomiReadings;
0054     QStringList OnyomiReadings;
0055     QStringList originalReadings;
0056 
0057 private:
0058     QString addReadings(const QStringList &list) const;
0059 };
0060 
0061 #endif