summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGravatar Robert C. Helling <helling@atdotde.de>2014-06-02 16:25:58 +0200
committerGravatar Dirk Hohndel <dirk@hohndel.org>2014-06-02 12:40:36 -0700
commit90885bfb8e9ac9eb21d969dd6de54b2ddb14c4cb (patch)
treee880e11d37ac162945185db0e136fdb960467fd4
parentcc012c1fa6ffca2c5c93fb79415b9a806cb3632c (diff)
downloadsubsurface-90885bfb8e9ac9eb21d969dd6de54b2ddb14c4cb.tar.gz
Optionally strip diveplan to bare minimum
There are new check-boxes to modify the look of the diveplan in the notes. The old behaviour appears with "verbatim display", others are shorter, runtimes, stoplengths and transitions being optional. Also round to full meters and minutes to remove optical clutter. To be done: Remember these setting in the config. Signed-off-by: Robert C. Helling <helling@atdotde.de> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
-rw-r--r--planner.c92
-rw-r--r--planner.h4
-rw-r--r--qt-ui/diveplanner.cpp28
-rw-r--r--qt-ui/diveplanner.h4
-rw-r--r--qt-ui/diveplanner.ui170
-rw-r--r--qt-ui/mainwindow.ui840
6 files changed, 639 insertions, 499 deletions
diff --git a/planner.c b/planner.c
index cc8e9d908..fa636bd5a 100644
--- a/planner.c
+++ b/planner.c
@@ -24,6 +24,7 @@ int decostoplevels[] = { 0, 3000, 6000, 9000, 12000, 15000, 18000, 21000, 24000,
180000, 190000, 200000, 220000, 240000, 260000, 280000, 300000,
320000, 340000, 360000, 380000 };
double plangflow, plangfhigh;
+bool plan_verbatim = false, plan_display_runtime = true, plan_display_duration = false, plan_display_transitions = false;
#if DEBUG_PLAN
void dump_plan(struct diveplan *diveplan)
@@ -71,6 +72,26 @@ void set_last_stop(bool last_stop_6m)
decostoplevels[1] = 3000;
}
+void set_verbatim(bool verbatim)
+{
+ plan_verbatim = verbatim;
+}
+
+void set_display_runtime(bool display)
+{
+ plan_display_runtime = display;
+}
+
+void set_display_duration(bool display)
+{
+ plan_display_duration = display;
+}
+
+void set_display_transitions(bool display)
+{
+ plan_display_transitions = display;
+}
+
void get_gas_from_events(struct divecomputer *dc, int time, struct gasmix *gas)
{
// we don't modify the values passed in if nothing is found
@@ -493,6 +514,7 @@ static void add_plan_to_notes(struct diveplan *diveplan, struct dive *dive, bool
int len, gasidx, lastdepth = 0, lasttime = 0;
struct divedatapoint *dp = diveplan->dp;
const char *disclaimer = "";
+ bool gaschange = true;
if (!dp)
return;
@@ -502,9 +524,14 @@ static void add_plan_to_notes(struct diveplan *diveplan, struct dive *dive, bool
"ALGORITHM AND A DIVE PLANNER IMPLEMENTION BASED ON THAT WHICH HAS "
"RECEIVED ONLY A LIMITED AMOUNT OF TESTING. WE STRONGLY RECOMMEND NOT TO "
"PLAN DIVES SIMPLY BASED ON THE RESULTS GIVEN HERE.");
- snprintf(buffer, sizeof(buffer),
- translate("gettextFromC", "%s\nSubsurface dive plan\nbased on GFlow = %d and GFhigh = %d\n\n"),
- disclaimer, diveplan->gflow, diveplan->gfhigh);
+ len = snprintf(buffer, sizeof(buffer),
+ translate("gettextFromC", "%s\nSubsurface dive plan\nbased on GFlow = %d and GFhigh = %d\n\ndepth"),
+ disclaimer, diveplan->gflow, diveplan->gfhigh);
+ if (plan_display_runtime)
+ len += snprintf(buffer + len, sizeof(buffer) - len, translate("gettextFromC", " runtime"));
+ if (plan_display_duration)
+ len += snprintf(buffer + len, sizeof(buffer) - len, translate("gettextFromC", " stop time"));
+ len += snprintf(buffer + len, sizeof(buffer) - len, " gas\n");
do {
struct gasmix gasmix, newgasmix;
const char *depth_unit;
@@ -534,28 +561,59 @@ static void add_plan_to_notes(struct diveplan *diveplan, struct dive *dive, bool
continue;
gasidx = get_gasidx(dive, &gasmix);
len = strlen(buffer);
- if (dp->depth != lastdepth)
- snprintf(buffer + len, sizeof(buffer) - len, translate("gettextFromC", "Transition to %.*f %s in %d:%02d min - runtime %d:%02u on %s\n"),
- decimals, depthvalue, depth_unit,
- FRACTION(dp->time - lasttime, 60),
- FRACTION(dp->time, 60),
- gasname(&gasmix));
- else
- snprintf(buffer + len, sizeof(buffer) - len, translate("gettextFromC", "Stay at %.*f %s for %d:%02d min - runtime %d:%02u on %s\n"),
- decimals, depthvalue, depth_unit,
- FRACTION(dp->time - lasttime, 60),
- FRACTION(dp->time, 60),
- gasname(&gasmix));
+ if (dp->depth != lastdepth) {
+ if (plan_display_transitions)
+ snprintf(buffer + len, sizeof(buffer) - len, translate("gettextFromC", "Transition to %.*f %s in %d:%02d min - runtime %d:%02u on %s\n"),
+ decimals, depthvalue, depth_unit,
+ FRACTION(dp->time - lasttime, 60),
+ FRACTION(dp->time, 60),
+ gasname(&gasmix));
+ else
+ if (dp->entered) {
+ len += snprintf(buffer + len, sizeof(buffer) - len, translate("gettextFromC", "%3.0f%s"), depthvalue, depth_unit);
+ if (plan_display_runtime)
+ len += snprintf(buffer + len, sizeof(buffer) - len, translate("gettextFromC", " %3dmin "), (dp->time + 30) / 60);
+ if (plan_display_duration)
+ len += snprintf(buffer + len, sizeof(buffer) - len, translate("gettextFromC", " %3dmin "), (dp->time - lasttime + 30) / 60);
+ if (gaschange) {
+ len += snprintf(buffer + len, sizeof(buffer) - len, " %s", gasname(&newgasmix));
+ gaschange = false;
+ }
+ len += snprintf(buffer + len, sizeof(buffer) - len, "\n");
+ }
+ } else {
+ if (plan_verbatim) {
+ snprintf(buffer + len, sizeof(buffer) - len, translate("gettextFromC", "Stay at %.*f %s for %d:%02d min - runtime %d:%02u on %s\n"),
+ decimals, depthvalue, depth_unit,
+ FRACTION(dp->time - lasttime, 60),
+ FRACTION(dp->time, 60),
+ gasname(&gasmix));
+ } else {
+ len += snprintf(buffer + len, sizeof(buffer) - len, translate("gettextFromC", "%3.0f%s"), depthvalue, depth_unit);
+ if (plan_display_runtime)
+ len += snprintf(buffer + len, sizeof(buffer) - len, translate("gettextFromC", " %3dmin "), (dp->time + 30) / 60);
+ if (plan_display_duration)
+ len += snprintf(buffer + len, sizeof(buffer) - len, translate("gettextFromC", " %3dmin "), (dp->time - lasttime + 30) / 60);
+ if (gaschange) {
+ len += snprintf(buffer + len, sizeof(buffer) - len, " %s", gasname(&newgasmix));
+ gaschange = false;
+ }
+ len += snprintf(buffer + len, sizeof(buffer) - len, "\n");
+ }
+ }
if (nextdp && gasmix_distance(&gasmix, &newgasmix)) {
// gas switch at this waypoint
- snprintf(buffer + len, sizeof(buffer) - len, translate("gettextFromC", "Switch gas to %s\n"), gasname(&newgasmix));
+ if (plan_verbatim)
+ snprintf(buffer + len, sizeof(buffer) - len, translate("gettextFromC", "Switch gas to %s\n"), gasname(&newgasmix));
+ else
+ gaschange = true;
gasmix = newgasmix;
}
lasttime = dp->time;
lastdepth = dp->depth;
} while ((dp = dp->next) != NULL);
len = strlen(buffer);
- snprintf(buffer + len, sizeof(buffer) - len, translate("gettextFromC", "Gas consumption:\n"));
+ snprintf(buffer + len, sizeof(buffer) - len, translate("gettextFromC", "\nGas consumption:\n"));
for (gasidx = 0; gasidx < MAX_CYLINDERS; gasidx++) {
double volume;
const char *unit;
diff --git a/planner.h b/planner.h
index 5542be14e..32419d073 100644
--- a/planner.h
+++ b/planner.h
@@ -11,6 +11,10 @@ extern int validate_po2(const char *text, int *mbar_po2);
extern timestamp_t current_time_notz(void);
extern void show_planned_dive(char **error_string_p);
extern void set_last_stop(bool last_stop_6m);
+extern void set_verbatim(bool verbatim);
+extern void set_display_runtime(bool display);
+extern void set_display_duration(bool display);
+extern void set_display_transitions(bool display);
extern void get_gas_from_events(struct divecomputer *dc, int time, struct gasmix *gas);
extern int get_gasidx(struct dive *dive, struct gasmix *mix);
extern bool diveplan_empty(struct diveplan *diveplan);
diff --git a/qt-ui/diveplanner.cpp b/qt-ui/diveplanner.cpp
index abe1c3a62..36c8538a1 100644
--- a/qt-ui/diveplanner.cpp
+++ b/qt-ui/diveplanner.cpp
@@ -273,6 +273,10 @@ DivePlannerWidget::DivePlannerWidget(QWidget *parent, Qt::WindowFlags f) : QWidg
connect(ui.gfhigh, SIGNAL(valueChanged(int)), plannerModel, SLOT(setGFHigh(int)));
connect(ui.gflow, SIGNAL(valueChanged(int)), plannerModel, SLOT(setGFLow(int)));
connect(ui.lastStop, SIGNAL(toggled(bool)), plannerModel, SLOT(setLastStop6m(bool)));
+ connect(ui.verbatim_plan, SIGNAL(toggled(bool)), plannerModel, SLOT(setVerbatim(bool)));
+ connect(ui.display_duration, SIGNAL(toggled(bool)), plannerModel, SLOT(setDisplayDuration(bool)));
+ connect(ui.display_runtime, SIGNAL(toggled(bool)), plannerModel, SLOT(setDisplayRuntime(bool)));
+ connect(ui.display_transitions, SIGNAL(toggled(bool)), plannerModel, SLOT(setDisplayTransitions(bool)));
// Creating (and canceling) the plan
connect(ui.buttonBox, SIGNAL(accepted()), plannerModel, SLOT(createPlan()));
@@ -505,6 +509,30 @@ void DivePlannerPointsModel::setLastStop6m(bool value)
emit dataChanged(createIndex(0, 0), createIndex(rowCount() - 1, COLUMNS - 1));
}
+void DivePlannerPointsModel::setVerbatim(bool value)
+{
+ set_verbatim(value);
+ emit dataChanged(createIndex(0, 0), createIndex(rowCount() - 1, COLUMNS - 1));
+}
+
+void DivePlannerPointsModel::setDisplayRuntime(bool value)
+{
+ set_display_runtime(value);
+ emit dataChanged(createIndex(0, 0), createIndex(rowCount() - 1, COLUMNS - 1));
+}
+
+void DivePlannerPointsModel::setDisplayDuration(bool value)
+{
+ set_display_duration(value);
+ emit dataChanged(createIndex(0, 0), createIndex(rowCount() - 1, COLUMNS - 1));
+}
+
+void DivePlannerPointsModel::setDisplayTransitions(bool value)
+{
+ set_display_transitions(value);
+ emit dataChanged(createIndex(0, 0), createIndex(rowCount() - 1, COLUMNS - 1));
+}
+
void DivePlannerPointsModel::setStartTime(const QTime &t)
{
diveplan.when = (t.msec() + QDateTime::currentMSecsSinceEpoch()) / 1000 - gettimezoneoffset();
diff --git a/qt-ui/diveplanner.h b/qt-ui/diveplanner.h
index a26038b2f..f96094059 100644
--- a/qt-ui/diveplanner.h
+++ b/qt-ui/diveplanner.h
@@ -73,6 +73,10 @@ slots:
void setDecoSac(int sac);
void setStartTime(const QTime &t);
void setLastStop6m(bool value);
+ void setVerbatim(bool value);
+ void setDisplayRuntime(bool value);
+ void setDisplayDuration(bool value);
+ void setDisplayTransitions(bool value);
void createPlan();
void remove(const QModelIndex &index);
void cancelPlan();
diff --git a/qt-ui/diveplanner.ui b/qt-ui/diveplanner.ui
index 558be069d..fe3f46086 100644
--- a/qt-ui/diveplanner.ui
+++ b/qt-ui/diveplanner.ui
@@ -62,36 +62,58 @@
<property name="spacing">
<number>2</number>
</property>
- <item row="1" column="1">
- <widget class="QLineEdit" name="ATMPressure"/>
+ <item row="10" column="0" colspan="2">
+ <widget class="TableView" name="tableWidget" native="true">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="MinimumExpanding" vsizetype="MinimumExpanding">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="minimumSize">
+ <size>
+ <width>0</width>
+ <height>50</height>
+ </size>
+ </property>
+ </widget>
</item>
- <item row="2" column="0">
- <widget class="QLabel" name="label_3">
- <property name="text">
- <string>Bottom SAC</string>
+ <item row="9" column="0" colspan="2">
+ <widget class="TableView" name="cylinderTableWidget" native="true">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="MinimumExpanding" vsizetype="Fixed">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="minimumSize">
+ <size>
+ <width>0</width>
+ <height>50</height>
+ </size>
</property>
</widget>
</item>
- <item row="4" column="1">
- <widget class="QLabel" name="label_6">
- <property name="text">
- <string>GFHigh</string>
+ <item row="3" column="1">
+ <widget class="QLineEdit" name="decoStopSAC"/>
+ </item>
+ <item row="5" column="0">
+ <widget class="QSpinBox" name="gflow">
+ <property name="minimum">
+ <number>1</number>
+ </property>
+ <property name="maximum">
+ <number>150</number>
</property>
</widget>
</item>
- <item row="2" column="1">
- <widget class="QLabel" name="label_4">
+ <item row="0" column="0">
+ <widget class="QLabel" name="label">
<property name="text">
- <string>SAC on DECO Stop</string>
+ <string>Start Time</string>
</property>
</widget>
</item>
- <item row="3" column="0">
- <widget class="QLineEdit" name="bottomSAC"/>
- </item>
- <item row="3" column="1">
- <widget class="QLineEdit" name="decoStopSAC"/>
- </item>
<item row="4" column="0">
<widget class="QLabel" name="label_5">
<property name="text">
@@ -99,16 +121,26 @@
</property>
</widget>
</item>
- <item row="5" column="0">
- <widget class="QSpinBox" name="gflow">
- <property name="minimum">
- <number>1</number>
+ <item row="1" column="0">
+ <widget class="QTimeEdit" name="startTime"/>
+ </item>
+ <item row="11" column="0" colspan="2">
+ <widget class="QDialogButtonBox" name="buttonBox">
+ <property name="standardButtons">
+ <set>QDialogButtonBox::Abort|QDialogButtonBox::Save</set>
</property>
- <property name="maximum">
- <number>150</number>
+ </widget>
+ </item>
+ <item row="6" column="0">
+ <widget class="QCheckBox" name="lastStop">
+ <property name="text">
+ <string>Last Stop at 6m</string>
</property>
</widget>
</item>
+ <item row="3" column="0">
+ <widget class="QLineEdit" name="bottomSAC"/>
+ </item>
<item row="5" column="1">
<widget class="QSpinBox" name="gfhigh">
<property name="minimum">
@@ -119,66 +151,74 @@
</property>
</widget>
</item>
- <item row="6" column="0">
- <widget class="QCheckBox" name="lastStop">
+ <item row="6" column="1">
+ <widget class="QCheckBox" name="verbatim_plan">
<property name="text">
- <string>Last Stop at 6m</string>
+ <string>verbatim diveplan</string>
</property>
</widget>
</item>
- <item row="7" column="0" colspan="2">
- <widget class="TableView" name="cylinderTableWidget" native="true">
- <property name="sizePolicy">
- <sizepolicy hsizetype="MinimumExpanding" vsizetype="Fixed">
- <horstretch>0</horstretch>
- <verstretch>0</verstretch>
- </sizepolicy>
- </property>
- <property name="minimumSize">
- <size>
- <width>0</width>
- <height>50</height>
- </size>
+ <item row="2" column="1">
+ <widget class="QLabel" name="label_4">
+ <property name="text">
+ <string>SAC on DECO Stop</string>
</property>
</widget>
</item>
- <item row="8" column="0" colspan="2">
- <widget class="TableView" name="tableWidget" native="true">
- <property name="sizePolicy">
- <sizepolicy hsizetype="MinimumExpanding" vsizetype="MinimumExpanding">
- <horstretch>0</horstretch>
- <verstretch>0</verstretch>
- </sizepolicy>
+ <item row="2" column="0">
+ <widget class="QLabel" name="label_3">
+ <property name="text">
+ <string>Bottom SAC</string>
</property>
- <property name="minimumSize">
- <size>
- <width>0</width>
- <height>50</height>
- </size>
+ </widget>
+ </item>
+ <item row="4" column="1">
+ <widget class="QLabel" name="label_6">
+ <property name="text">
+ <string>GFHigh</string>
</property>
</widget>
</item>
- <item row="9" column="0" colspan="2">
- <widget class="QDialogButtonBox" name="buttonBox">
- <property name="standardButtons">
- <set>QDialogButtonBox::Abort|QDialogButtonBox::Save</set>
+ <item row="0" column="1">
+ <widget class="QLabel" name="label_2">
+ <property name="text">
+ <string>ATM Pressure</string>
</property>
</widget>
</item>
- <item row="1" column="0">
- <widget class="QTimeEdit" name="startTime"/>
+ <item row="1" column="1">
+ <widget class="QLineEdit" name="ATMPressure"/>
</item>
- <item row="0" column="0">
- <widget class="QLabel" name="label">
+ <item row="7" column="1">
+ <widget class="QCheckBox" name="display_duration">
+ <property name="toolTip">
+ <string>In dive plan, show duration (relative time) of stops</string>
+ </property>
<property name="text">
- <string>Start Time</string>
+ <string>display stop duration</string>
</property>
</widget>
</item>
- <item row="0" column="1">
- <widget class="QLabel" name="label_2">
+ <item row="7" column="0">
+ <widget class="QCheckBox" name="display_runtime">
+ <property name="toolTip">
+ <string>In dive plan, show runtime (absolute time) of stops</string>
+ </property>
<property name="text">
- <string>ATM Pressure</string>
+ <string>display runtime</string>
+ </property>
+ <property name="checked">
+ <bool>true</bool>
+ </property>
+ </widget>
+ </item>
+ <item row="8" column="0">
+ <widget class="QCheckBox" name="display_transitions">
+ <property name="toolTip">
+ <string>In diveplan, list transitions or treat them as implicit</string>
+ </property>
+ <property name="text">
+ <string>display transitions</string>
</property>
</widget>
</item>
diff --git a/qt-ui/mainwindow.ui b/qt-ui/mainwindow.ui
index d73f19077..1dd6db59f 100644
--- a/qt-ui/mainwindow.ui
+++ b/qt-ui/mainwindow.ui
@@ -86,409 +86,409 @@
</widget>
</widget>
<widget class="QWidget" name="ProfileWidget">
- <layout class="QGridLayout" name="gridLayout">
- <property name="leftMargin">
- <number>0</number>
- </property>
- <property name="topMargin">
- <number>0</number>
- </property>
- <property name="rightMargin">
- <number>0</number>
- </property>
- <property name="bottomMargin">
- <number>0</number>
- </property>
- <property name="spacing">
- <number>0</number>
- </property>
- <item row="0" column="0">
- <widget class="QToolButton" name="profPO2">
- <property name="toolTip">
- <string>Enable the pO2 Graph</string>
- </property>
- <property name="text">
- <string>...</string>
- </property>
- <property name="icon">
- <iconset resource="../subsurface.qrc">
- <normaloff>:/icon_o2</normaloff>:/icon_o2</iconset>
- </property>
- <property name="iconSize">
- <size>
- <width>24</width>
- <height>24</height>
- </size>
- </property>
- <property name="checkable">
- <bool>true</bool>
- </property>
- <property name="autoRaise">
- <bool>true</bool>
- </property>
- </widget>
- </item>
- <item row="1" column="0">
- <widget class="QToolButton" name="profPn2">
- <property name="toolTip">
- <string>Enable the pN2 Graph</string>
- </property>
- <property name="text">
- <string>...</string>
- </property>
- <property name="icon">
- <iconset resource="../subsurface.qrc">
- <normaloff>:/icon_n2</normaloff>:/icon_n2</iconset>
- </property>
- <property name="iconSize">
- <size>
- <width>24</width>
- <height>24</height>
- </size>
- </property>
- <property name="checkable">
- <bool>true</bool>
- </property>
- <property name="autoRaise">
- <bool>true</bool>
- </property>
- </widget>
- </item>
- <item row="2" column="0">
- <widget class="QToolButton" name="profPhe">
- <property name="toolTip">
- <string>Enable the pHe graph</string>
- </property>
- <property name="text">
- <string>...</string>
- </property>
- <property name="icon">
- <iconset resource="../subsurface.qrc">
- <normaloff>:/icon_he</normaloff>:/icon_he</iconset>
- </property>
- <property name="iconSize">
- <size>
- <width>24</width>
- <height>24</height>
- </size>
- </property>
- <property name="checkable">
- <bool>true</bool>
- </property>
- <property name="autoRaise">
- <bool>true</bool>
- </property>
- </widget>
- </item>
- <item row="3" column="0">
- <widget class="QToolButton" name="profDcCeiling">
- <property name="enabled">
- <bool>true</bool>
- </property>
- <property name="toolTip">
- <string>Show the DC Reported Ceiling</string>
- </property>
- <property name="text">
- <string>...</string>
- </property>
- <property name="icon">
- <iconset resource="../subsurface.qrc">
- <normaloff>:/icon_ceiling_dc</normaloff>:/icon_ceiling_dc</iconset>
- </property>
- <property name="iconSize">
- <size>
- <width>24</width>
- <height>24</height>
- </size>
- </property>
- <property name="checkable">
- <bool>true</bool>
- </property>
- <property name="autoRaise">
- <bool>true</bool>
- </property>
- </widget>
- </item>
- <item row="4" column="0">
- <widget class="QToolButton" name="profCalcCeiling">
- <property name="enabled">
- <bool>true</bool>
- </property>
- <property name="toolTip">
- <string>Show the Calculated Ceiling</string>
- </property>
- <property name="text">
- <string>...</string>
- </property>
- <property name="icon">
- <iconset resource="../subsurface.qrc">
- <normaloff>:/icon_ceiling_calculated</normaloff>:/icon_ceiling_calculated</iconset>
- </property>
- <property name="iconSize">
- <size>
- <width>24</width>
- <height>24</height>
- </size>
- </property>
- <property name="checkable">
- <bool>true</bool>
- </property>
- <property name="autoRaise">
- <bool>true</bool>
- </property>
- </widget>
- </item>
- <item row="5" column="0">
- <widget class="QToolButton" name="profCalcAllTissues">
- <property name="toolTip">
- <string>Calculate All Tissues</string>
- </property>
- <property name="text">
- <string>...</string>
- </property>
- <property name="icon">
- <iconset resource="../subsurface.qrc">
- <normaloff>:/icon_ceiling_alltissues</normaloff>:/icon_ceiling_alltissues</iconset>
- </property>
- <property name="iconSize">
- <size>
- <width>24</width>
- <height>24</height>
- </size>
- </property>
- <property name="checkable">
- <bool>true</bool>
- </property>
- <property name="autoRaise">
- <bool>true</bool>
- </property>
- </widget>
- </item>
- <item row="6" column="0">
- <widget class="QToolButton" name="profIncrement3m">
- <property name="toolTip">
- <string>Show Calculated Ceiling with 3m Increments</string>
- </property>
- <property name="text">
- <string>...</string>
- </property>
- <property name="icon">
- <iconset resource="../subsurface.qrc">
- <normaloff>:/icon_ceiling_3m</normaloff>:/icon_ceiling_3m</iconset>
- </property>
- <property name="iconSize">
- <size>
- <width>24</width>
- <height>24</height>
- </size>
- </property>
- <property name="checkable">
- <bool>true</bool>
- </property>
- <property name="autoRaise">
- <bool>true</bool>
- </property>
- </widget>
- </item>
- <item row="7" column="0">
- <widget class="QToolButton" name="profHR">
- <property name="toolTip">
- <string>Show/hide heart rate</string>
- </property>
- <property name="text">
- <string>...</string>
- </property>
- <property name="icon">
- <iconset resource="../subsurface.qrc">
- <normaloff>:/icon_HR</normaloff>:/icon_HR</iconset>
- </property>
- <property name="iconSize">
- <size>
- <width>24</width>
- <height>24</height>
- </size>
- </property>
- <property name="checkable">
- <bool>true</bool>
- </property>
- <property name="autoRaise">
- <bool>true</bool>
- </property>
- </widget>
- </item>
- <item row="8" column="0">
- <widget class="QToolButton" name="profMod">
- <property name="toolTip">
- <string>Enable MOD</string>
- </property>
- <property name="text">
- <string>...</string>
- </property>
- <property name="icon">
- <iconset resource="../subsurface.qrc">
- <normaloff>:/icon_mod</normaloff>:/icon_mod</iconset>
- </property>
- <property name="iconSize">
- <size>
- <width>24</width>
- <height>24</height>
- </size>
- </property>
- <property name="checkable">
- <bool>true</bool>
- </property>
- <property name="autoRaise">
- <bool>true</bool>
- </property>
- </widget>
- </item>
- <item row="9" column="0">
- <widget class="QToolButton" name="profEad">
- <property name="toolTip">
- <string>Enable EAD, END, and EADD</string>
- </property>
- <property name="text">
- <string>...</string>
- </property>
- <property name="icon">
- <iconset resource="../subsurface.qrc">
- <normaloff>:/icon_ead</normaloff>:/icon_ead</iconset>
- </property>
- <property name="iconSize">
- <size>
- <width>24</width>
- <height>24</height>
- </size>
- </property>
- <property name="checkable">
- <bool>true</bool>
- </property>
- <property name="autoRaise">
- <bool>true</bool>
- </property>
- </widget>
- </item>
- <item row="10" column="0">
- <widget class="QToolButton" name="profNdl_tts">
- <property name="toolTip">
- <string>Show NDL / TTS</string>
- </property>
- <property name="text">
- <string>...</string>
- </property>
- <property name="icon">
- <iconset resource="../subsurface.qrc">
- <normaloff>:/icon_NDLTTS</normaloff>:/icon_NDLTTS</iconset>
- </property>
- <property name="iconSize">
- <size>
- <width>24</width>
- <height>24</height>
- </size>
- </property>
- <property name="checkable">
- <bool>true</bool>
- </property>
- <property name="autoRaise">
- <bool>true</bool>
- </property>
- </widget>
- </item>
- <item row="11" column="0">
- <widget class="QToolButton" name="profSAC">
- <property name="toolTip">
- <string>Show SAC Rate</string>
- </property>
- <property name="text">
- <string>...</string>
- </property>
- <property name="icon">
- <iconset resource="../subsurface.qrc">
- <normaloff>:/icon_lung</normaloff>:/icon_lung</iconset>
- </property>
- <property name="iconSize">
- <size>
- <width>24</width>
- <height>24</height>
- </size>
- </property>
- <property name="checkable">
- <bool>true</bool>
- </property>
- <property name="autoRaise">
- <bool>true</bool>
- </property>
- </widget>
- </item>
- <item row="12" column="0">
- <widget class="QToolButton" name="profRuler">
- <property name="toolTip">
- <string>Enable / Disable the Ruler</string>
- </property>
- <property name="text">
- <string>...</string>
- </property>
- <property name="icon">
- <iconset resource="../subsurface.qrc">
- <normaloff>:/units</normaloff>:/units</iconset>
- </property>
- <property name="iconSize">
- <size>
- <width>24</width>
- <height>24</height>
- </size>
- </property>
- <property name="checkable">
- <bool>true</bool>
- </property>
- <property name="autoRaise">
- <bool>true</bool>
- </property>
- </widget>
- </item>
- <item row="13" column="0">
- <widget class="QToolButton" name="profScaled">
- <property name="toolTip">
- <string>Rescale depth axis</string>
- </property>
- <property name="text">
- <string>...</string>
- </property>
- <property name="icon">
- <iconset resource="../subsurface.qrc">
- <normaloff>:/scale</normaloff>:/scale</iconset>
- </property>
- <property name="iconSize">
- <size>
- <width>24</width>
- <height>24</height>
- </size>
- </property>
- <property name="checkable">
- <bool>true</bool>
- </property>
- <property name="autoRaise">
- <bool>true</bool>
- </property>
- </widget>
- </item>
- <item row="0" column="1" rowspan="15">
- <widget class="ProfileWidget2" name="newProfile"/>
- </item>
- <item row="14" column="0">
- <spacer name="verticalSpacer">
- <property name="orientation">
- <enum>Qt::Vertical</enum>
- </property>
- <property name="sizeHint" stdset="0">
- <size>
- <width>20</width>
- <height>40</height>
- </size>
- </property>
- </spacer>
- </item>
- </layout>
+ <layout class="QGridLayout" name="gridLayout">
+ <property name="leftMargin">
+ <number>0</number>
+ </property>
+ <property name="topMargin">
+ <number>0</number>
+ </property>
+ <property name="rightMargin">
+ <number>0</number>
+ </property>
+ <property name="bottomMargin">
+ <number>0</number>
+ </property>
+ <property name="spacing">
+ <number>0</number>
+ </property>
+ <item row="0" column="0">
+ <widget class="QToolButton" name="profPO2">
+ <property name="toolTip">
+ <string>Enable the pO2 Graph</string>
+ </property>
+ <property name="text">
+ <string>...</string>
+ </property>
+ <property name="icon">
+ <iconset resource="../subsurface.qrc">
+ <normaloff>:/icon_o2</normaloff>:/icon_o2</iconset>
+ </property>
+ <property name="iconSize">
+ <size>
+ <width>24</width>
+ <height>24</height>
+ </size>
+ </property>
+ <property name="checkable">
+ <bool>true</bool>
+ </property>
+ <property name="autoRaise">
+ <bool>true</bool>
+ </property>
+ </widget>
+ </item>
+ <item row="1" column="0">
+ <widget class="QToolButton" name="profPn2">
+ <property name="toolTip">
+ <string>Enable the pN2 Graph</string>
+ </property>
+ <property name="text">
+ <string>...</string>
+ </property>
+ <property name="icon">
+ <iconset resource="../subsurface.qrc">
+ <normaloff>:/icon_n2</normaloff>:/icon_n2</iconset>
+ </property>
+ <property name="iconSize">
+ <size>
+ <width>24</width>
+ <height>24</height>
+ </size>
+ </property>
+ <property name="checkable">
+ <bool>true</bool>
+ </property>
+ <property name="autoRaise">
+ <bool>true</bool>
+ </property>
+ </widget>
+ </item>
+ <item row="2" column="0">
+ <widget class="QToolButton" name="profPhe">
+ <property name="toolTip">
+ <string>Enable the pHe graph</string>
+ </property>
+ <property name="text">
+ <string>...</string>
+ </property>
+ <property name="icon">
+ <iconset resource="../subsurface.qrc">
+ <normaloff>:/icon_he</normaloff>:/icon_he</iconset>
+ </property>
+ <property name="iconSize">
+ <size>
+ <width>24</width>
+ <height>24</height>
+ </size>
+ </property>
+ <property name="checkable">
+ <bool>true</bool>
+ </property>
+ <property name="autoRaise">
+ <bool>true</bool>
+ </property>
+ </widget>
+ </item>
+ <item row="3" column="0">
+ <widget class="QToolButton" name="profDcCeiling">
+ <property name="enabled">
+ <bool>true</bool>
+ </property>
+ <property name="toolTip">
+ <string>Show the DC Reported Ceiling</string>
+ </property>
+ <property name="text">
+ <string>...</string>
+ </property>
+ <property name="icon">
+ <iconset resource="../subsurface.qrc">
+ <normaloff>:/icon_ceiling_dc</normaloff>:/icon_ceiling_dc</iconset>
+ </property>
+ <property name="iconSize">
+ <size>
+ <width>24</width>
+ <height>24</height>
+ </size>
+ </property>
+ <property name="checkable">
+ <bool>true</bool>
+ </property>
+ <property name="autoRaise">
+ <bool>true</bool>
+ </property>
+ </widget>
+ </item>
+ <item row="4" column="0">
+ <widget class="QToolButton" name="profCalcCeiling">
+ <property name="enabled">
+ <bool>true</bool>
+ </property>
+ <property name="toolTip">
+ <string>Show the Calculated Ceiling</string>
+ </property>
+ <property name="text">
+ <string>...</string>
+ </property>
+ <property name="icon">
+ <iconset resource="../subsurface.qrc">
+ <normaloff>:/icon_ceiling_calculated</normaloff>:/icon_ceiling_calculated</iconset>
+ </property>
+ <property name="iconSize">
+ <size>
+ <width>24</width>
+ <height>24</height>
+ </size>
+ </property>
+ <property name="checkable">
+ <bool>true</bool>
+ </property>
+ <property name="autoRaise">
+ <bool>true</bool>
+ </property>
+ </widget>
+ </item>
+ <item row="5" column="0">
+ <widget class="QToolButton" name="profCalcAllTissues">
+ <property name="toolTip">
+ <string>Calculate All Tissues</string>
+ </property>
+ <property name="text">
+ <string>...</string>
+ </property>
+ <property name="icon">
+ <iconset resource="../subsurface.qrc">
+ <normaloff>:/icon_ceiling_alltissues</normaloff>:/icon_ceiling_alltissues</iconset>
+ </property>
+ <property name="iconSize">
+ <size>
+ <width>24</width>
+ <height>24</height>
+ </size>
+ </property>
+ <property name="checkable">
+ <bool>true</bool>
+ </property>
+ <property name="autoRaise">
+ <bool>true</bool>
+ </property>
+ </widget>
+ </item>
+ <item row="6" column="0">
+ <widget class="QToolButton" name="profIncrement3m">
+ <property name="toolTip">
+ <string>Show Calculated Ceiling with 3m Increments</string>
+ </property>
+ <property name="text">
+ <string>...</string>
+ </property>
+ <property name="icon">
+ <iconset resource="../subsurface.qrc">
+ <normaloff>:/icon_ceiling_3m</normaloff>:/icon_ceiling_3m</iconset>
+ </property>
+ <property name="iconSize">
+ <size>
+ <width>24</width>
+ <height>24</height>
+ </size>
+ </property>
+ <property name="checkable">
+ <bool>true</bool>
+ </property>
+ <property name="autoRaise">
+ <bool>true</bool>
+ </property>
+ </widget>
+ </item>
+ <item row="7" column="0">
+ <widget class="QToolButton" name="profHR">
+ <property name="toolTip">
+ <string>Show/hide heart rate</string>
+ </property>
+ <property name="text">
+ <string>...</string>
+ </property>
+ <property name="icon">
+ <iconset resource="../subsurface.qrc">
+ <normaloff>:/icon_HR</normaloff>:/icon_HR</iconset>
+ </property>
+ <property name="iconSize">
+ <size>
+ <width>24</width>
+ <height>24</height>
+ </size>
+ </property>
+ <property name="checkable">
+ <bool>true</bool>
+ </property>
+ <property name="autoRaise">
+ <bool>true</bool>
+ </property>
+ </widget>
+ </item>
+ <item row="8" column="0">
+ <widget class="QToolButton" name="profMod">
+ <property name="toolTip">
+ <string>Enable MOD</string>
+ </property>
+ <property name="text">
+ <string>...</string>
+ </property>
+ <property name="icon">
+ <iconset resource="../subsurface.qrc">
+ <normaloff>:/icon_mod</normaloff>:/icon_mod</iconset>
+ </property>
+ <property name="iconSize">
+ <size>
+ <width>24</width>
+ <height>24</height>
+ </size>
+ </property>
+ <property name="checkable">
+ <bool>true</bool>
+ </property>
+ <property name="autoRaise">
+ <bool>true</bool>
+ </property>
+ </widget>
+ </item>
+ <item row="9" column="0">
+ <widget class="QToolButton" name="profEad">
+ <property name="toolTip">
+ <string>Enable EAD, END, and EADD</string>
+ </property>
+ <property name="text">
+ <string>...</string>
+ </property>
+ <property name="icon">
+ <iconset resource="../subsurface.qrc">
+ <normaloff>:/icon_ead</normaloff>:/icon_ead</iconset>
+ </property>
+ <property name="iconSize">
+ <size>
+ <width>24</width>
+ <height>24</height>
+ </size>
+ </property>
+ <property name="checkable">
+ <bool>true</bool>
+ </property>
+ <property name="autoRaise">
+ <bool>true</bool>
+ </property>
+ </widget>
+ </item>
+ <item row="10" column="0">
+ <widget class="QToolButton" name="profNdl_tts">
+ <property name="toolTip">
+ <string>Show NDL / TTS</string>
+ </property>
+ <property name="text">
+ <string>...</string>
+ </property>
+ <property name="icon">
+ <iconset resource="../subsurface.qrc">
+ <normaloff>:/icon_NDLTTS</normaloff>:/icon_NDLTTS</iconset>
+ </property>
+ <property name="iconSize">
+ <size>
+ <width>24</width>
+ <height>24</height>
+ </size>
+ </property>
+ <property name="checkable">
+ <bool>true</bool>
+ </property>
+ <property name="autoRaise">
+ <bool>true</bool>
+ </property>
+ </widget>
+ </item>
+ <item row="11" column="0">
+ <widget class="QToolButton" name="profSAC">
+ <property name="toolTip">
+ <string>Show SAC Rate</string>
+ </property>
+ <property name="text">
+ <string>...</string>
+ </property>
+ <property name="icon">
+ <iconset resource="../subsurface.qrc">
+ <normaloff>:/icon_lung</normaloff>:/icon_lung</iconset>
+ </property>
+ <property name="iconSize">
+ <size>
+ <width>24</width>
+ <height>24</height>
+ </size>
+ </property>
+ <property name="checkable">
+ <bool>true</bool>
+ </property>
+ <property name="autoRaise">
+ <bool>true</bool>
+ </property>
+ </widget>
+ </item>
+ <item row="12" column="0">
+ <widget class="QToolButton" name="profRuler">
+ <property name="toolTip">
+ <string>Enable / Disable the Ruler</string>
+ </property>
+ <property name="text">
+ <string>...</string>
+ </property>
+ <property name="icon">
+ <iconset resource="../subsurface.qrc">
+ <normaloff>:/units</normaloff>:/units</iconset>
+ </property>
+ <property name="iconSize">
+ <size>
+ <width>24</width>
+ <height>24</height>
+ </size>
+ </property>
+ <property name="checkable">
+ <bool>true</bool>
+ </property>
+ <property name="autoRaise">
+ <bool>true</bool>
+ </property>
+ </widget>
+ </item>
+ <item row="13" column="0">
+ <widget class="QToolButton" name="profScaled">
+ <property name="toolTip">
+ <string>Rescale depth axis</string>
+ </property>
+ <property name="text">
+ <string>...</string>
+ </property>
+ <property name="icon">
+ <iconset resource="../subsurface.qrc">
+ <normaloff>:/scale</normaloff>:/scale</iconset>
+ </property>
+ <property name="iconSize">
+ <size>
+ <width>24</width>
+ <height>24</height>
+ </size>
+ </property>
+ <property name="checkable">
+ <bool>true</bool>
+ </property>
+ <property name="autoRaise">
+ <bool>true</bool>
+ </property>
+ </widget>
+ </item>
+ <item row="0" column="1" rowspan="15">
+ <widget class="ProfileWidget2" name="newProfile"/>
+ </item>
+ <item row="14" column="0">
+ <spacer name="verticalSpacer">
+ <property name="orientation">
+ <enum>Qt::Vertical</enum>
+ </property>
+ <property name="sizeHint" stdset="0">
+ <size>
+ <width>20</width>
+ <height>40</height>
+ </size>
+ </property>
+ </spacer>
+ </item>
+ </layout>
</widget>
</widget>
<widget class="QSplitter" name="listGlobeSplitter">
@@ -497,7 +497,7 @@
</property>
<widget class="QStackedWidget" name="diveListPane">
<property name="currentIndex">
- <number>0</number>
+ <number>1</number>
</property>
<widget class="DiveListView" name="ListWidget">
<property name="alternatingRowColors">
@@ -536,15 +536,26 @@
<property name="bottomMargin">
<number>0</number>
</property>
- <item>
- <widget class="QLabel" name="divePlanOutputLabel">
- <property name="text">
- <string>Dive plan details</string>
- </property>
+ <item>
+ <widget class="QLabel" name="divePlanOutputLabel">
+ <property name="text">
+ <string>Dive plan details</string>
+ </property>
</widget>
- </item>
+ </item>
<item>
- <widget class="QTextEdit" name="divePlanOutput" native="true"/>
+ <widget class="QTextEdit" name="divePlanOutput">
+ <property name="styleSheet">
+ <string notr="true">font: 13pt &quot;Courier&quot;;</string>
+ </property>
+ <property name="html">
+ <string>&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.0//EN&quot; &quot;http://www.w3.org/TR/REC-html40/strict.dtd&quot;&gt;
+&lt;html&gt;&lt;head&gt;&lt;meta name=&quot;qrichtext&quot; content=&quot;1&quot; /&gt;&lt;style type=&quot;text/css&quot;&gt;
+p, li { white-space: pre-wrap; }
+&lt;/style&gt;&lt;/head&gt;&lt;body style=&quot; font-family:'Courier'; font-size:13pt; font-weight:400; font-style:normal;&quot;&gt;
+&lt;p style=&quot;-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'.Curier New';&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
+ </property>
+ </widget>
</item>
</layout>
</widget>
@@ -570,7 +581,7 @@
<x>0</x>
<y>0</y>
<width>1418</width>
- <height>20</height>
+ <height>22</height>
</rect>
</property>
<widget class="QMenu" name="menuFile">
@@ -972,11 +983,6 @@
<container>1</container>
</customwidget>
<customwidget>
- <class>DivePlannerGraphics</class>
- <extends>QGraphicsView</extends>
- <header>diveplanner.h</header>
- </customwidget>
- <customwidget>
<class>DivePlannerWidget</class>
<extends>QWidget</extends>
<header>diveplanner.h</header>