aboutsummaryrefslogtreecommitdiffstats
path: root/qt-ui
diff options
context:
space:
mode:
authorGravatar Dirk Hohndel <dirk@hohndel.org>2013-09-10 11:42:26 -0700
committerGravatar Dirk Hohndel <dirk@hohndel.org>2013-09-10 11:42:26 -0700
commite91ac60f4985667f8599d30881698e14e15fffca (patch)
treeba65660dd71c75fb061b966eca98e54cfb0a7636 /qt-ui
parent923b4cd9b1932c13ef52567ea095740887345b38 (diff)
downloadsubsurface-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.cpp4
-rw-r--r--qt-ui/modeldelegates.cpp1
-rw-r--r--qt-ui/models.cpp18
-rw-r--r--qt-ui/models.h1
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;