diff options
author | Tomaz Canabrava <tomaz.canabrava@intel.com> | 2015-05-28 16:23:49 -0300 |
---|---|---|
committer | Dirk Hohndel <dirk@hohndel.org> | 2015-05-29 14:09:13 -0700 |
commit | f432b764e78ac3d66f5ab1bfc7c18fbdb75624e5 (patch) | |
tree | c2ec5c81660d22bf986968808bd4ecb7256623ae /qt-ui/diveplanner.h | |
parent | 6e4aa7d044a344527e61f17c2254851ba799c4bd (diff) | |
download | subsurface-f432b764e78ac3d66f5ab1bfc7c18fbdb75624e5.tar.gz |
Move DivePlannerModel and CylinderModel to qt-models
Still trying to make it easier for the Mobile Port:
This patch is a bit bigger than I hopped, but it was the smallest that I
could get.
A lot of TODO items where added where I broke the code because the current
implementation would break the QML implementtion on the designer. I'll
most probably fix those myself when I finish the transition to the models
to the new folder.
I only moved both models at once because there's an interdependency
between them (seems inevitable, tough, but I'll take a better look at it
later).
Signed-off-by: Tomaz Canabrava <tomaz.canabrava@intel.com>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
Diffstat (limited to 'qt-ui/diveplanner.h')
-rw-r--r-- | qt-ui/diveplanner.h | 111 |
1 files changed, 1 insertions, 110 deletions
diff --git a/qt-ui/diveplanner.h b/qt-ui/diveplanner.h index 42e0dc44a..8c7ff9c46 100644 --- a/qt-ui/diveplanner.h +++ b/qt-ui/diveplanner.h @@ -10,113 +10,7 @@ class QListView; class QModelIndex; - -class DivePlannerPointsModel : public QAbstractTableModel { - Q_OBJECT -public: - static DivePlannerPointsModel *instance(); - enum Sections { - REMOVE, - DEPTH, - DURATION, - RUNTIME, - GAS, - CCSETPOINT, - COLUMNS - }; - enum Mode { - NOTHING, - PLAN, - ADD - }; - virtual int columnCount(const QModelIndex &parent = QModelIndex()) const; - virtual QVariant data(const QModelIndex &index, int role = Qt::DisplayRole) const; - virtual int rowCount(const QModelIndex &parent = QModelIndex()) const; - virtual QVariant headerData(int section, Qt::Orientation orientation, int role = Qt::DisplayRole) const; - virtual bool setData(const QModelIndex &index, const QVariant &value, int role = Qt::EditRole); - virtual Qt::ItemFlags flags(const QModelIndex &index) const; - void gaschange(const QModelIndex &index, QString newgas); - void removeSelectedPoints(const QVector<int> &rows); - void setPlanMode(Mode mode); - bool isPlanner(); - void createSimpleDive(); - void setupStartTime(); - void clear(); - Mode currentMode() const; - bool setRecalc(bool recalc); - bool recalcQ(); - void tanksUpdated(); - void rememberTanks(); - bool tankInUse(struct gasmix gasmix); - void setupCylinders(); - /** - * @return the row number. - */ - void editStop(int row, divedatapoint newData); - divedatapoint at(int row); - int size(); - struct diveplan &getDiveplan(); - QStringList &getGasList(); - QVector<QPair<int, int> > collectGases(dive *d); - int lastEnteredPoint(); - void removeDeco(); - static bool addingDeco; - -public -slots: - int addStop(int millimeters = 0, int seconds = 0, struct gasmix *gas = 0, int ccpoint = 0, bool entered = true); - void addCylinder_clicked(); - void setGFHigh(const int gfhigh); - void triggerGFHigh(); - void setGFLow(const int ghflow); - void triggerGFLow(); - void setSurfacePressure(int pressure); - void setSalinity(int salinity); - int getSurfacePressure(); - void setBottomSac(double sac); - void setDecoSac(double sac); - void setStartTime(const QTime &t); - void setStartDate(const QDate &date); - void setLastStop6m(bool value); - void setDropStoneMode(bool value); - void setVerbatim(bool value); - void setDisplayRuntime(bool value); - void setDisplayDuration(bool value); - void setDisplayTransitions(bool value); - void setRecreationalMode(bool value); - void setSafetyStop(bool value); - void savePlan(); - void saveDuplicatePlan(); - void remove(const QModelIndex &index); - void cancelPlan(); - void createTemporaryPlan(); - void deleteTemporaryPlan(); - void loadFromDive(dive *d); - void emitDataChanged(); - void setRebreatherMode(int mode); - void setReserveGas(int reserve); - -signals: - void planCreated(); - void planCanceled(); - void cylinderModelEdited(); - void startTimeChanged(QDateTime); - void recreationChanged(bool); - -private: - explicit DivePlannerPointsModel(QObject *parent = 0); - bool addGas(struct gasmix mix); - void createPlan(bool replanCopy); - struct diveplan diveplan; - Mode mode; - bool recalc; - QVector<divedatapoint> divepoints; - QVector<sample> backupSamples; // For editing added dives. - QVector<QPair<int, int> > oldGases; - QDateTime startTime; - int tempGFHigh; - int tempGFLow; -}; +class DivePlannerPointsModel; class DiveHandler : public QObject, public QGraphicsEllipseItem { Q_OBJECT @@ -205,7 +99,4 @@ private: Ui::plannerDetails ui; }; - -QString dpGasToStr(const divedatapoint &p); - #endif // DIVEPLANNER_H |