File indexing completed on 2024-05-12 16:16:02
0001 /* 0002 SPDX-FileCopyrightText: 2019-2023 Laurent Montel <montel@kde.org> 0003 0004 SPDX-License-Identifier: GPL-2.0-or-later 0005 */ 0006 0007 #include "languageinfo.h" 0008 0009 #include <QJsonObject> 0010 0011 using namespace TextGrammarCheck; 0012 0013 LanguageInfo::LanguageInfo() = default; 0014 0015 LanguageInfo::~LanguageInfo() = default; 0016 0017 QString LanguageInfo::name() const 0018 { 0019 return mName; 0020 } 0021 0022 void LanguageInfo::setName(const QString &name) 0023 { 0024 mName = name; 0025 } 0026 0027 QString LanguageInfo::longCode() const 0028 { 0029 return mLongCode; 0030 } 0031 0032 void LanguageInfo::setLongCode(const QString &longCode) 0033 { 0034 mLongCode = longCode; 0035 } 0036 0037 QString LanguageInfo::code() const 0038 { 0039 return mCode; 0040 } 0041 0042 void LanguageInfo::setCode(const QString &code) 0043 { 0044 mCode = code; 0045 } 0046 0047 bool LanguageInfo::isValid() const 0048 { 0049 // We need code and name 0050 return !mName.isEmpty() && !mCode.isEmpty(); 0051 } 0052 0053 void LanguageInfo::parse(const QJsonObject &obj) 0054 { 0055 mName = obj[QStringLiteral("name")].toString(); 0056 mCode = obj[QStringLiteral("code")].toString(); 0057 mLongCode = obj[QStringLiteral("longCode")].toString(); 0058 } 0059 0060 bool LanguageInfo::operator==(const LanguageInfo &other) const 0061 { 0062 return mName == other.name() && mCode == other.code() && mLongCode == other.longCode(); 0063 }