The FavoriteLocaleModel class This class keeps track of favorite locales from the config.
More...
#include <LocaleHandler.h>
The FavoriteLocaleModel class This class keeps track of favorite locales from the config.
Definition at line 104 of file LocaleHandler.h.
◆ Roles
◆ FavoriteLocaleModel()
| FavoriteLocaleModel::FavoriteLocaleModel |
( |
QObject * | parent = nullptr | ) |
|
Definition at line 259 of file LocaleHandler.cpp.
260 : QAbstractListModel(parent)
262{
263}
const QScopedPointer< Private > d
◆ ~FavoriteLocaleModel()
| FavoriteLocaleModel::~FavoriteLocaleModel |
( |
| ) |
|
◆ addCode()
| void FavoriteLocaleModel::addCode |
( |
const QString & | code | ) |
|
Definition at line 323 of file LocaleHandler.cpp.
324{
325 if (!
d->locales.contains(code)) {
326 beginInsertRows(QModelIndex(),
d->locales.size(),
d->locales.size());
327 d->locales.append(code);
328 endInsertRows();
329 }
330}
References d.
◆ data()
| QVariant FavoriteLocaleModel::data |
( |
const QModelIndex & | index, |
|
|
int | role ) const |
|
override |
Definition at line 276 of file LocaleHandler.cpp.
277{
278 if (index.isValid()) {
279 const QString code =
d->locales.at(index.row());
280 if (role == Qt::DisplayRole) {
283 }
else if (role ==
Code) {
284 return code;
286 return d->favorites.contains(code);
287 }
288 }
289 return QVariant();
290}
const QString localeName(const KoWritingSystemUtils::Bcp47Locale &locale)
static Bcp47Locale parseBcp47Locale(const QString &locale)
The Bcp47Locale class This holds a parsed BCP47 locale. QLocale is primarily made for POSIX locale fo...
References Code, d, Favorite, localeName(), and KoWritingSystemUtils::parseBcp47Locale().
◆ favoritesUpdated
| void FavoriteLocaleModel::favoritesUpdated |
( |
| ) |
|
|
signal |
◆ roleNames()
| QHash< int, QByteArray > FavoriteLocaleModel::roleNames |
( |
| ) |
const |
|
override |
Definition at line 332 of file LocaleHandler.cpp.
333{
334 QHash<int, QByteArray> roles = QAbstractItemModel::roleNames();
335 roles[
Code] =
"code";
337 return roles;
338}
References Code, and Favorite.
◆ rowCount()
| int FavoriteLocaleModel::rowCount |
( |
const QModelIndex & | parent | ) |
const |
|
override |
Definition at line 270 of file LocaleHandler.cpp.
271{
272 Q_UNUSED(parent)
273 return d->locales.size();
274}
References d.
◆ setData()
| bool FavoriteLocaleModel::setData |
( |
const QModelIndex & | index, |
|
|
const QVariant & | value, |
|
|
int | role ) |
|
override |
Definition at line 292 of file LocaleHandler.cpp.
293{
294 if (!index.isValid()) return false;
295
296 const QString code =
d->locales.at(index.row());
298
299 const bool fav =
value.toBool();
300 bool updated = false;
301
302 if (fav) {
303 if (!
d->favorites.contains(code)) {
304 d->favorites.append(code);
305 updated = true;
306 }
307 } else {
308 const int i =
d->favorites.indexOf(code);
309 if (i > 0) {
310 d->favorites.removeAt(i);
311 updated = true;
312 }
313 }
314 if (updated) {
316 emit dataChanged(index, index, {role});
317 return true;
318 }
319 }
320 return false;
321}
float value(const T *src, size_t ch)
References d, Favorite, updateConfig(), and value().
◆ updateConfig
| void FavoriteLocaleModel::updateConfig |
( |
| ) |
|
|
privateslot |
| const QScopedPointer<Private> FavoriteLocaleModel::d |
|
private |
The documentation for this class was generated from the following files: