subsurface/desktop-widgets/tab-widgets/TabDiveInformation.h
Berthold Stoeger 16a35a8bbe desktop: update information tab when cylinders change
The SAC rate, etc were only updated when switching between dives.
They should always be updated when an undo command changes (adds,
edits, removes) the cylinders of a dive.

Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
2020-05-06 11:44:22 -07:00

49 lines
1.3 KiB
C++

// SPDX-License-Identifier: GPL-2.0
#ifndef TAB_DIVE_INFORMATION_H
#define TAB_DIVE_INFORMATION_H
#include "TabBase.h"
#include "core/subsurface-qt/divelistnotifier.h"
namespace Ui {
class TabDiveInformation;
};
class TabDiveInformation : public TabBase {
Q_OBJECT
public:
TabDiveInformation(QWidget *parent = 0);
~TabDiveInformation();
void updateData() override;
void clear() override;
private slots:
void divesChanged(const QVector<dive *> &dives, DiveField field);
void cylinderChanged(dive *d);
void diveModeChanged(int index);
void on_atmPressVal_editingFinished();
void on_atmPressType_currentIndexChanged(int index);
void on_visibility_valueChanged(int value);
void on_wavesize_valueChanged(int value);
void on_current_valueChanged(int value);
void on_surge_valueChanged(int value);
void on_chill_valueChanged(int value);
void on_airtemp_editingFinished();
void on_watertemp_editingFinished();
void on_waterTypeCombo_activated(int index);
private:
Ui::TabDiveInformation *ui;
bool manualDive;
void updateProfile();
int updateSalinityComboIndex(int salinity);
void checkDcSalinityOverWritten();
void updateWhen();
int pressTypeIndex;
void updateWaterTypeWidget();
void updateTextBox(int event);
void updateMode(struct dive *d);
void divesEdited(int);
void closeWarning();
void showCurrentWidget(bool show, int position);
};
#endif