cleanup: generalize ExtraDataModel to display data of any dc

The goal here is to remove a dependency on displayed_dive.
While doing so, make the model more general and display any dc.
Pass in the dc of the current dive instead of displayed dive,
since all other tabs are already converted to show data of
the current dive. The QStrings are cached since we generate
them anyway, so we may just keep them. Thus, there is no
danger of the dc becoming invalid.

Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
This commit is contained in:
Berthold Stoeger 2020-05-06 22:25:48 +02:00 committed by Dirk Hohndel
parent 2ff459c356
commit 7a443423bc
3 changed files with 23 additions and 21 deletions

View file

@ -1,12 +1,13 @@
// SPDX-License-Identifier: GPL-2.0
#include "TabDiveExtraInfo.h"
#include "ui_TabDiveExtraInfo.h"
#include "core/dive.h"
#include "qt-models/divecomputerextradatamodel.h"
TabDiveExtraInfo::TabDiveExtraInfo(QWidget *parent) :
TabBase(parent),
ui(new Ui::TabDiveExtraInfo()),
extraDataModel(new ExtraDataModel())
extraDataModel(new ExtraDataModel(this))
{
ui->setupUi(this);
ui->extraData->setModel(extraDataModel);
@ -19,11 +20,10 @@ TabDiveExtraInfo::~TabDiveExtraInfo()
void TabDiveExtraInfo::updateData()
{
extraDataModel->updateDive();
extraDataModel->updateDiveComputer(current_dc);
}
void TabDiveExtraInfo::clear()
{
extraDataModel->updateDive();
extraDataModel->clear();
}