Warning, file /plasma/plasma-workspace/kcms/region_language/optionsmodel.h was not indexed or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).
0001 /* 0002 optionsmodel.h 0003 SPDX-FileCopyrightText: 2021 Han Young <hanyoung@protonmail.com> 0004 0005 SPDX-License-Identifier: GPL-2.0-or-later 0006 */ 0007 0008 #pragma once 0009 0010 #include <array> 0011 0012 #include <QAbstractListModel> 0013 0014 #include "regionandlangsettings.h" 0015 0016 class RegionAndLangSettings; 0017 class KCMRegionAndLang; 0018 0019 class OptionsModel : public QAbstractListModel 0020 { 0021 Q_OBJECT 0022 public: 0023 enum Roles { Name = Qt::DisplayRole, Subtitle, Example, Page }; 0024 explicit OptionsModel(KCMRegionAndLang *parent); 0025 int rowCount(const QModelIndex &parent = QModelIndex()) const override; 0026 QVariant data(const QModelIndex &index, int role = Qt::DisplayRole) const override; 0027 QHash<int, QByteArray> roleNames() const override; 0028 0029 public Q_SLOTS: 0030 void handleLangChange(); 0031 0032 private: 0033 QString implicitFormatExampleMsg() const; 0034 QString getNativeName(const QString &locale) const; 0035 0036 QString m_numberExample; 0037 QString m_timeExample; 0038 QString m_currencyExample; 0039 QString m_measurementExample; 0040 QString m_paperSizeExample; 0041 #ifdef LC_ADDRESS 0042 QString m_addressExample; 0043 QString m_nameStyleExample; 0044 QString m_phoneNumbersExample; 0045 #endif 0046 0047 std::vector<std::pair<QString, KCM_RegionAndLang::SettingType>> m_staticNames; // title, page 0048 0049 RegionAndLangSettings *m_settings; 0050 };