File indexing completed on 2024-05-12 17:07:26

0001 /*
0002     SPDX-FileCopyrightText: 2020 Benjamin Port <benjamin.port@enioka.com>
0003 
0004     SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted-GPL
0005 */
0006 
0007 #include "spellcheckingdata.h"
0008 
0009 #include <QVariantList>
0010 
0011 #include <Sonnet/Settings>
0012 
0013 #include "spellcheckingskeleton.h"
0014 
0015 SpellCheckingData::SpellCheckingData(QObject *parent, const QVariantList &args)
0016     : KCModuleData(parent, args)
0017     , m_settings(new SpellCheckingSkeleton(this))
0018 {
0019     autoRegisterSkeletons();
0020 }
0021 
0022 SpellCheckingSkeleton *SpellCheckingData::settings() const
0023 {
0024     return m_settings;
0025 }
0026 
0027 bool SpellCheckingData::isDefaults() const
0028 {
0029     bool isDefaults = KCModuleData::isDefaults();
0030 
0031     QStringList refIgnoreList(m_settings->ignoreList());
0032     refIgnoreList.removeDuplicates();
0033     refIgnoreList.sort();
0034 
0035     QStringList defaultIgnoreList(Sonnet::Settings::defaultIgnoreList());
0036     defaultIgnoreList.removeDuplicates();
0037     defaultIgnoreList.sort();
0038 
0039     QStringList refPreferredLanguagesList(m_settings->preferredLanguages());
0040     refPreferredLanguagesList.removeDuplicates();
0041     refPreferredLanguagesList.sort();
0042 
0043     QStringList defaultPreferredLanguagesList(Sonnet::Settings::defaultPreferredLanguages());
0044     defaultPreferredLanguagesList.removeDuplicates();
0045     defaultPreferredLanguagesList.sort();
0046 
0047     isDefaults &= refIgnoreList == defaultIgnoreList;
0048     isDefaults &= refPreferredLanguagesList == defaultPreferredLanguagesList;
0049     isDefaults &= m_settings->defaultLanguage() == Sonnet::Settings::defaultDefaultLanguage();
0050 
0051     return isDefaults;
0052 }
0053 
0054 #include "spellcheckingdata.moc"