diff options
-rw-r--r-- | dive.h | 1 | ||||
-rw-r--r-- | planner.c | 1 | ||||
-rw-r--r-- | qt-ui/diveplanner.cpp | 13 | ||||
-rw-r--r-- | qt-ui/diveplanner.h | 2 | ||||
-rw-r--r-- | qt-ui/diveplanner.ui | 98 |
5 files changed, 86 insertions, 29 deletions
@@ -766,6 +766,7 @@ struct diveplan { int surface_pressure; /* mbar */ int bottomsac; /* ml/min */ int decosac; /* ml/min */ + int salinity; short gflow; short gfhigh; struct divedatapoint *dp; @@ -259,6 +259,7 @@ static void create_dive_from_plan(struct diveplan *diveplan, bool track_gas) printf("in create_dive_from_plan\n"); dump_plan(diveplan); #endif + displayed_dive.salinity = diveplan->salinity; // reset the cylinders and clear out the samples and events of the // displayed dive so we can restart reset_cylinders(&displayed_dive, track_gas); diff --git a/qt-ui/diveplanner.cpp b/qt-ui/diveplanner.cpp index d825c6e84..b8d251c2c 100644 --- a/qt-ui/diveplanner.cpp +++ b/qt-ui/diveplanner.cpp @@ -297,6 +297,7 @@ DivePlannerWidget::DivePlannerWidget(QWidget *parent, Qt::WindowFlags f) : QWidg connect(ui.dateEdit, SIGNAL(dateChanged(QDate)), plannerModel, SLOT(setStartDate(QDate))); connect(ui.ATMPressure, SIGNAL(valueChanged(int)), this, SLOT(atmPressureChanged(int))); connect(ui.atmHeight, SIGNAL(valueChanged(int)), this, SLOT(heightChanged(int))); + connect(ui.salinity, SIGNAL(valueChanged(double)), this, SLOT(salinityChanged(double))); connect(DivePlannerPointsModel::instance(), SIGNAL(startTimeChanged(QDateTime)), this, SLOT(setupStartTime(QDateTime))); // Creating (and canceling) the plan @@ -367,6 +368,12 @@ void DivePlannerWidget::heightChanged(const int height) plannerModel->setSurfacePressure(pressure); } +void DivePlannerWidget::salinityChanged(const double salinity) +{ + /* Salinity is expressed in weight in grams per 10l */ + plannerModel->setSalinity(10000 * salinity); +} + void PlannerSettingsWidget::bottomSacChanged(const double bottomSac) { plannerModel->setBottomSac(bottomSac); @@ -786,6 +793,12 @@ void DivePlannerPointsModel::setSurfacePressure(int pressure) emit dataChanged(createIndex(0, 0), createIndex(rowCount() - 1, COLUMNS - 1)); } +void DivePlannerPointsModel::setSalinity(int salinity) +{ + diveplan.salinity = salinity; + emit dataChanged(createIndex(0, 0), createIndex(rowCount() - 1, COLUMNS - 1)); +} + int DivePlannerPointsModel::getSurfacePressure() { return diveplan.surface_pressure; diff --git a/qt-ui/diveplanner.h b/qt-ui/diveplanner.h index c613ae210..bca0deb78 100644 --- a/qt-ui/diveplanner.h +++ b/qt-ui/diveplanner.h @@ -70,6 +70,7 @@ slots: 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); @@ -146,6 +147,7 @@ slots: void settingsChanged(); void atmPressureChanged(const int pressure); void heightChanged(const int height); + void salinityChanged(const double salinity); void printDecoPlan(); private: diff --git a/qt-ui/diveplanner.ui b/qt-ui/diveplanner.ui index 54abcc35a..0edd742fa 100644 --- a/qt-ui/diveplanner.ui +++ b/qt-ui/diveplanner.ui @@ -65,7 +65,7 @@ <property name="spacing"> <number>2</number> </property> - <item row="6" column="0" colspan="2"> + <item row="5" column="0" colspan="3"> <widget class="TableView" name="tableWidget" native="true"> <property name="sizePolicy"> <sizepolicy hsizetype="MinimumExpanding" vsizetype="MinimumExpanding"> @@ -81,7 +81,7 @@ </property> </widget> </item> - <item row="5" column="0" colspan="2"> + <item row="4" column="0" colspan="3"> <widget class="TableView" name="cylinderTableWidget" native="true"> <property name="sizePolicy"> <sizepolicy hsizetype="MinimumExpanding" vsizetype="Fixed"> @@ -110,7 +110,30 @@ </property> </widget> </item> + <item row="1" column="0"> + <widget class="QDateEdit" name="dateEdit"> + <property name="sizePolicy"> + <sizepolicy hsizetype="Expanding" vsizetype="Fixed"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + <property name="calendarPopup"> + <bool>true</bool> + </property> + </widget> + </item> <item row="1" column="1"> + <widget class="QTimeEdit" name="startTime"> + <property name="sizePolicy"> + <sizepolicy hsizetype="Expanding" vsizetype="Fixed"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + </widget> + </item> + <item row="1" column="2"> <widget class="QDialogButtonBox" name="buttonBox"> <property name="sizePolicy"> <sizepolicy hsizetype="Expanding" vsizetype="Fixed"> @@ -123,33 +146,6 @@ </property> </widget> </item> - <item row="1" column="0"> - <layout class="QHBoxLayout" name="dateAndTime"> - <item> - <widget class="QDateEdit" name="dateEdit"> - <property name="sizePolicy"> - <sizepolicy hsizetype="Fixed" vsizetype="Fixed"> - <horstretch>0</horstretch> - <verstretch>0</verstretch> - </sizepolicy> - </property> - <property name="calendarPopup"> - <bool>true</bool> - </property> - </widget> - </item> - <item> - <widget class="QTimeEdit" name="startTime"> - <property name="sizePolicy"> - <sizepolicy hsizetype="Fixed" vsizetype="Fixed"> - <horstretch>0</horstretch> - <verstretch>0</verstretch> - </sizepolicy> - </property> - </widget> - </item> - </layout> - </item> <item row="2" column="0"> <widget class="QLabel" name="label_7"> <property name="text"> @@ -164,8 +160,21 @@ </property> </widget> </item> + <item row="2" column="2"> + <widget class="QLabel" name="label_3"> + <property name="text"> + <string>Salinity</string> + </property> + </widget> + </item> <item row="3" column="1"> <widget class="QSpinBox" name="ATMPressure"> + <property name="sizePolicy"> + <sizepolicy hsizetype="Expanding" vsizetype="Fixed"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> <property name="suffix"> <string>mbar</string> </property> @@ -179,6 +188,12 @@ </item> <item row="3" column="0"> <widget class="QSpinBox" name="atmHeight"> + <property name="sizePolicy"> + <sizepolicy hsizetype="Expanding" vsizetype="Fixed"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> <property name="suffix"> <string>m</string> </property> @@ -193,6 +208,31 @@ </property> </widget> </item> + <item row="3" column="2"> + <widget class="QDoubleSpinBox" name="salinity"> + <property name="sizePolicy"> + <sizepolicy hsizetype="Expanding" vsizetype="Fixed"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + <property name="suffix"> + <string> kg/ℓ</string> + </property> + <property name="minimum"> + <double>1.000000000000000</double> + </property> + <property name="maximum"> + <double>1.050000000000000</double> + </property> + <property name="singleStep"> + <double>0.010000000000000</double> + </property> + <property name="value"> + <double>1.030000000000000</double> + </property> + </widget> + </item> </layout> </widget> </widget> |