diff options
author | Dirk Hohndel <dirk@hohndel.org> | 2013-09-10 11:42:26 -0700 |
---|---|---|
committer | Dirk Hohndel <dirk@hohndel.org> | 2013-09-10 11:42:26 -0700 |
commit | e91ac60f4985667f8599d30881698e14e15fffca (patch) | |
tree | ba65660dd71c75fb061b966eca98e54cfb0a7636 /qt-ui | |
parent | 923b4cd9b1932c13ef52567ea095740887345b38 (diff) | |
download | subsurface-e91ac60f4985667f8599d30881698e14e15fffca.tar.gz |
Fill ws_info structure and use it when entering weight systems
The code to initialize the weight systems from the last datafile loaded
had not been brought over from the Gtk version.
We now correctly update the data structure when loading file (but not yet
when editing values).
Most likely the same needs to be done for the tanks as well.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
Diffstat (limited to 'qt-ui')
-rw-r--r-- | qt-ui/mainwindow.cpp | 4 | ||||
-rw-r--r-- | qt-ui/modeldelegates.cpp | 1 | ||||
-rw-r--r-- | qt-ui/models.cpp | 18 | ||||
-rw-r--r-- | qt-ui/models.h | 1 |
4 files changed, 23 insertions, 1 deletions
diff --git a/qt-ui/mainwindow.cpp b/qt-ui/mainwindow.cpp index 4eead9616..f2f95897a 100644 --- a/qt-ui/mainwindow.cpp +++ b/qt-ui/mainwindow.cpp @@ -744,6 +744,8 @@ void MainWindow::importFiles(const QStringList fileNames) ui->globe->reload(); ui->ListWidget->reload(DiveTripModel::TREE); ui->ListWidget->setFocus(); + WSInfoModel *wsim = WSInfoModel::instance(); + wsim->updateInfo(); } void MainWindow::loadFiles(const QStringList fileNames) @@ -769,4 +771,6 @@ void MainWindow::loadFiles(const QStringList fileNames) ui->globe->reload(); ui->ListWidget->reload(DiveTripModel::TREE); ui->ListWidget->setFocus(); + WSInfoModel *wsim = WSInfoModel::instance(); + wsim->updateInfo(); } diff --git a/qt-ui/modeldelegates.cpp b/qt-ui/modeldelegates.cpp index 3549625f3..13201e436 100644 --- a/qt-ui/modeldelegates.cpp +++ b/qt-ui/modeldelegates.cpp @@ -238,7 +238,6 @@ void WSInfoDelegate::setModelData(QWidget* editor, QAbstractItemModel* model, co } mymodel->setData(IDX(WeightModel::TYPE), v, Qt::EditRole); mymodel->passInData(IDX(WeightModel::WEIGHT), grams); - qDebug() << "Fixme, every weight is 0.0 grams. see:" << grams; } WSInfoDelegate::WSInfoDelegate(QObject* parent): ComboBoxDelegate(WSInfoModel::instance(), parent) diff --git a/qt-ui/models.cpp b/qt-ui/models.cpp index 25429154f..1e5f15f0c 100644 --- a/qt-ui/models.cpp +++ b/qt-ui/models.cpp @@ -650,6 +650,24 @@ WSInfoModel::WSInfoModel() : QAbstractTableModel(), rows(-1) } } +void WSInfoModel::updateInfo() +{ + struct ws_info *info = ws_info; + beginRemoveRows(QModelIndex(), 0, this->rows); + endRemoveRows(); + for (info = ws_info; info->name; info++, rows++){ + QString wsInfoName(info->name); + if( wsInfoName.count() > biggerEntry.count()){ + biggerEntry = wsInfoName; + } + } + + if (rows > -1) { + beginInsertRows(QModelIndex(), 0, rows); + endInsertRows(); + } +} + void WSInfoModel::update() { if (rows > -1) { diff --git a/qt-ui/models.h b/qt-ui/models.h index 22cfe4b7e..c60856478 100644 --- a/qt-ui/models.h +++ b/qt-ui/models.h @@ -59,6 +59,7 @@ public: const QString& biggerString() const; void clear(); void update(); + void updateInfo(); private: int rows; QString biggerEntry; |