// SPDX-License-Identifier: GPL-2.0 #include "qt-models/weightsysteminfomodel.h" #include "core/subsurface-qt/divelistnotifier.h" #include "core/dive.h" #include "core/metrics.h" #include "core/gettextfromc.h" QVariant WSInfoModel::data(const QModelIndex &index, int role) const { if (!index.isValid() || index.row() >= rows) return QVariant(); struct ws_info_t *info = &ws_info[index.row()]; int gr = info->grams; switch (role) { case Qt::FontRole: return defaultModelFont(); case Qt::DisplayRole: case Qt::EditRole: switch (index.column()) { case GR: return gr; case DESCRIPTION: return gettextFromC::tr(info->name); } break; } return QVariant(); } int WSInfoModel::rowCount(const QModelIndex&) const { return rows; } WSInfoModel::WSInfoModel(QObject *parent) : CleanerTableModel(parent) { setHeaderDataStrings(QStringList() << tr("Description") << tr("kg")); rows = 0; for (struct ws_info_t *info = ws_info; info->name && info < ws_info + MAX_WS_INFO; info++, rows++) ; }