mirror of
https://github.com/subsurface/subsurface.git
synced 2024-12-03 15:43:09 +00:00
c99089e1fa
This commit is rather big, and I forgot to cut it in pieces. The first part creates a new 'calculate_gas_information' that will not fill the profile_info->maxpp member ( that should be removed from it as soon as the new dialog is finished ). The reason for that is that all of the profile data will be calculated and the graph needs to update dynamically, so whenever the settings changes, I ask for the model which is the biggest graph and replot only the ones we need. The second part adds a new animation function 'animdelete' to fade-out and delete the item when it's done. the old function 'hide' did just that but a hide shouldn't delete anything. The third part is preferenes awareness for the PP graphs. I created two new functions that receive the settings key for visibility and use the QSettings to show / hide them. This also works quite well for the axis; if no graph is visible, the axis will also hide itself. The fourth part is colors. The pp graphs now have the correct colors. And a bit of code cleanup too. Signed-off-by: Tomaz Canabrava <tcanabrava@kde.org> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
35 lines
No EOL
1.1 KiB
C++
35 lines
No EOL
1.1 KiB
C++
#ifndef DIVEPLOTDATAMODEL_H
|
|
#define DIVEPLOTDATAMODEL_H
|
|
|
|
#include <QAbstractTableModel>
|
|
|
|
struct dive;
|
|
struct plot_data;
|
|
struct plot_info;
|
|
|
|
class DivePlotDataModel : public QAbstractTableModel{
|
|
Q_OBJECT
|
|
public:
|
|
enum {DEPTH, TIME, PRESSURE, TEMPERATURE, USERENTERED, COLOR, CYLINDERINDEX, SENSOR_PRESSURE, INTERPOLATED_PRESSURE,
|
|
SAC, CEILING, TISSUE_1,TISSUE_2,TISSUE_3,TISSUE_4,TISSUE_5,TISSUE_6,TISSUE_7,TISSUE_8,TISSUE_9,TISSUE_10,
|
|
TISSUE_11,TISSUE_12,TISSUE_13,TISSUE_14,TISSUE_15,TISSUE_16, PN2,PHE,PO2,COLUMNS};
|
|
explicit DivePlotDataModel(QObject* parent = 0);
|
|
virtual int columnCount(const QModelIndex& parent = QModelIndex()) const;
|
|
virtual QVariant headerData(int section, Qt::Orientation orientation, int role = Qt::DisplayRole) const;
|
|
virtual QVariant data(const QModelIndex& index, int role = Qt::DisplayRole) const;
|
|
virtual int rowCount(const QModelIndex& parent = QModelIndex()) const;
|
|
void clear();
|
|
void setDive(struct dive *d, const plot_info& pInfo);
|
|
plot_data* data();
|
|
int id() const;
|
|
double pheMax();
|
|
double pn2Max();
|
|
double po2Max();
|
|
void emitDataChanged();
|
|
private:
|
|
int sampleCount;
|
|
plot_data *plotData;
|
|
int diveId;
|
|
};
|
|
|
|
#endif |