mirror of
https://github.com/subsurface/subsurface.git
synced 2025-01-19 14:25:27 +00:00
Use plot_data cylinderindex instead of event data
For the info box, we can't use the event data, because its not 1:1 mapped to whats in the cylinder and what we actually switched to. Use the plot_data here we already calculated what we are switching to. Signed-off-by: Anton Lundin <glance@acc.umu.se> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
This commit is contained in:
parent
e69bb1879e
commit
6d7a9b9466
1 changed files with 8 additions and 2 deletions
|
@ -87,9 +87,15 @@ void DiveEventItem::setupToolTipString()
|
|||
int type = internalEvent->type;
|
||||
if (value) {
|
||||
if (type == SAMPLE_EVENT_GASCHANGE || type == SAMPLE_EVENT_GASCHANGE2) {
|
||||
struct gasmix *g = get_gasmix_from_event(internalEvent);
|
||||
QModelIndexList result = dataModel->match(dataModel->index(0, DivePlotDataModel::TIME), Qt::DisplayRole, internalEvent->time.seconds);
|
||||
if (result.isEmpty()) {
|
||||
Q_ASSERT("can't find a spot in the dataModel");
|
||||
return;
|
||||
}
|
||||
// We need to look at row + 1, where the new gas is active to find what we are switching to.
|
||||
int cylinder_idx = dataModel->data(dataModel->index(result.first().row() + 1, DivePlotDataModel::CYLINDERINDEX)).toInt();
|
||||
name += ": ";
|
||||
name += gasname(g);
|
||||
name += gasname(¤t_dive->cylinder[cylinder_idx].gasmix);
|
||||
} else if (type == SAMPLE_EVENT_PO2 && name == "SP change") {
|
||||
name += QString(":%1").arg((double)value / 1000);
|
||||
} else {
|
||||
|
|
Loading…
Add table
Reference in a new issue