Commit graph

7425 commits

Author SHA1 Message Date
Miika Turkia
fb367b22b0 Switch Subsurface CSV import to use tab separator
As changing the export to use tabs, we need to switch the import to do
that as well. However, we also need to support comma separation as older
exports use that.

Signed-off-by: Miika Turkia <miika.turkia@gmail.com>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-01-24 14:50:51 -08:00
Miika Turkia
b8d02b4b27 Block the signals properly
It seems that at least in this occasion, the signal blocking requires
the UI element to be given.

Signed-off-by: Miika Turkia <miika.turkia@gmail.com>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-01-24 14:50:36 -08:00
Miika Turkia
6c82578540 Switching to tab delimited CSV export
Use tab as separator when exporting dive details to CSV file. This also
replaces tabs and line feeds from notes with spaces.

Signed-off-by: Miika Turkia <miika.turkia@gmail.com>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-01-24 14:50:16 -08:00
Miika Turkia
6fb0465654 Limit the row count properly when displaying CSV file
The import dialog now displays only a maximum of 10 lines of the CSV
file to be imported.

Signed-off-by: Miika Turkia <miika.turkia@gmail.com>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-01-24 14:50:02 -08:00
Miika Turkia
29c6d03dfa Fix a bug if CSV file does not have ending new line
Add a new line when importing a CSV file, so we get the last dive
imported as well (in case file ends without last new line).

See #814

Signed-off-by: Miika Turkia <miika.turkia@gmail.com>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-01-24 14:49:45 -08:00
Miika Turkia
6bb1fee9a6 Enable importing of dive profile from CSV files
This assumes that we have either dive details or dive profile, not
combined log files. Before the change in the import UI, user selected
the import type by the tab on import dialog, now we make an educated
guess based on whether sample time field is available.

Signed-off-by: Miika Turkia <miika.turkia@gmail.com>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-01-24 14:49:28 -08:00
Miika Turkia
afae2af13f Fix the support of APD Log Viewer CSV import
Signed-off-by: Miika Turkia <miika.turkia@gmail.com>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-01-24 14:49:04 -08:00
Miika Turkia
b29a1bfb7b CSV import, fix known import handling with tab separator
When we have the separator as tab, we need to use the proper tab
character instead of the string for known imports.

Signed-off-by: Miika Turkia <miika.turkia@gmail.com>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-01-24 14:48:45 -08:00
Dirk Hohndel
d9fd4cb69b Fix crash with empty dive list
Don't access current_dc unless there is a valid current_dive.

Fixes #817

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-01-24 14:42:25 -08:00
Dirk Hohndel
b8b15165f0 Add the hackish patch used to still compile with Qt4
We only use this for the Ubuntu 12.04 builds. The goal is to move away
from Qt4 support, so this is mainly an afterthought.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-01-24 20:00:54 +12:00
Dirk Hohndel
f912c05ea6 Make the beta show a nicer version in the about screen
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-01-24 14:52:26 +12:00
Dirk Hohndel
0cedd9d37d New strings and translations
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-01-24 14:42:10 +12:00
Dirk Hohndel
31a6f3c383 Handle building beta packages
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-01-23 16:51:58 -08:00
Anton Lundin
4a8e1485e1 DLF import: Correct format for NDL/TTS/Temp
Signed-off-by: Anton Lundin <glance@acc.umu.se>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-01-24 12:33:49 +12:00
Anton Lundin
a4e06bb68e DLF import: Parse CNS value from event to.
Signed-off-by: Anton Lundin <glance@acc.umu.se>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-01-24 12:33:42 +12:00
Anton Lundin
87153cefaa DLF import: Add bailout flag to GF-changed event
Signed-off-by: Anton Lundin <glance@acc.umu.se>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-01-24 12:33:38 +12:00
Anton Lundin
f0e68137d7 DLF import: parse and import surfacepressure
Signed-off-by: Anton Lundin <glance@acc.umu.se>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-01-24 12:33:32 +12:00
Anton Lundin
bc3b56a969 DLF import: cleanup start mode decoding
As i thought, only 3 bits there where dive mode. Only look at those.

Signed-off-by: Anton Lundin <glance@acc.umu.se>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-01-24 12:33:23 +12:00
willem ferguson
724a07b7e0 Avoid overprinting of cylinder presssure labels for CCR dives
This patch takes the cylinder pressures of CCR dives and prints them
in a non-overlapping way.

Remaining issue: When the dive profile is made taller by dragging the
window or the appropriate slider far down the screen, the labels move
further apart; similarly, when the profle is made flat/shallow by dragging
the window edge or appropriate slider up, the labels get close to each
other and start to overlap.

There are quite a few lines of additional code going into the patch. This
is primarily because separate provisions for when po2 > p(diluent) or vice
versa. In addition, I could not determine the size of the text characters
which would allow much more precise placement of text. This is because the
.scale member of the text is private and not available in the methods
involved in printing the labels. However, the height of the vertical scale
of the cylinder pressure graph can be determined [e.g. vAxis->maximum()].
This helped a lot to get the positioning of the text more or less correct.

While the results of the patch is not perfect, It contributes
significantly to make the profiles of Poseidon dives more readable.

Signed-off-by: willem ferguson <willemferguson@zoology.up.ac.za>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-01-24 09:48:12 +12:00
Martin Gysel
6607425b03 api change in libgit2-0.22
Yet another api change in libgit2...
let's quote the website "libgit2 is ... linkable library with a solid
API ..."

Signed-off-by: Martin Gysel <me@bearsh.org>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-01-24 07:47:51 +12:00
Miika Turkia
b772beda71 Known import fix for XP5
Signed-off-by: Miika Turkia <miika.turkia@gmail.com>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-01-24 07:09:29 +12:00
Miika Turkia
d501445bea Fix segm fault on known CSV imports
If the header line is not set up properly, the known imports assignments
will index out of the array.

Signed-off-by: Miika Turkia <miika.turkia@gmail.com>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-01-24 07:09:22 +12:00
Miika Turkia
9c4a4cb9f8 Different log record types added for DLF import
The events we decode from DLF file are divided between log record types
(1 through 5). Thus we need to parse the events from all of these record
types.

Signed-off-by: Miika Turkia <miika.turkia@gmail.com>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-01-24 07:09:05 +12:00
Miika Turkia
f45602f4f8 Add missing DLF events
Signed-off-by: Miika Turkia <miika.turkia@gmail.com>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-01-24 07:08:54 +12:00
Dirk Hohndel
c3614424f9 Correcly look at all relevant dive computer structures
When calculating maxima for a dive, we need to take data from all existing
dive computer structures plus potentially also a fake dive computer
structure that is just passed in in order to create a meaningful profile.

Commit 86c961614b ("Actually walk all dive computers, don't just claim
to do so") missed that second case and no longer took the fake_dc into
account, breaking the display of dives that don't have samples.

Reported-by: Miika Turkia <miika.turkia@gmail.com>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-01-24 07:07:02 +12:00
Dirk Hohndel
6aee901f6f Don't show previous dive computer text
There were situations when the last text was still shown. E.g. when the
current file was closed and then a new dive was imported from CSV.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-01-24 06:54:16 +12:00
willem ferguson
4487e13e15 Code cleanup: CCR setpoint and o2 sensor visualisation
This patch does some cleaning up of the code that provides visualisation
of CCR o2 sensor and o2 setpoint data. It reduces the number of
conditional evalauations that are required and it improves the readability
of these parts of the code.

Signed-off-by: willem ferguson <willemferguson@zoology.up.ac.za>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-01-23 21:41:28 +12:00
Miika Turkia
54aa6dd91f Fix quoted CSV import
I am a bit baffled as to how this used to work before and does not work
anymore. Anyway, it should be sufficient that we take the quoted text
without verifying that the next character is the field separator. (Of
course it would be better to make sure field separator follows, as then
quotation marks could be used in the free-form texts.)

Signed-off-by: Miika Turkia <miika.turkia@gmail.com>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-01-23 17:43:08 +12:00
Miika Turkia
c5075b93a2 Have Sensus samples inside divecomputer tag
Signed-off-by: Miika Turkia <miika.turkia@gmail.com>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-01-23 17:42:20 +12:00
Miika Turkia
5ac5619a77 Set the known import selection for Seabear import
Signed-off-by: Miika Turkia <miika.turkia@gmail.com>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-01-23 06:31:47 +12:00
Miika Turkia
2e77e710a0 Use proper sample headings for Seabear CSV import
Signed-off-by: Miika Turkia <miika.turkia@gmail.com>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-01-23 06:31:38 +12:00
Miika Turkia
a4c3e9cdc0 Use correct case for string matching on CSV import
As the string was changed in our CSVApps array, we must change it here
as well.

Signed-off-by: Miika Turkia <miika.turkia@gmail.com>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-01-22 21:49:15 +12:00
Miika Turkia
f8f5e73dae Improve testing whether we have temp and depth info
Signed-off-by: Miika Turkia <miika.turkia@gmail.com>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-01-22 21:49:08 +12:00
Miika Turkia
f8b9d61b92 Fix string that is used as XML tag name
We use the human readable name here as XML tag name so it cannot contain
spaces. Note that currently some of the names can have spaces in them as
they are special cases and not used as XML tag name.

Signed-off-by: Miika Turkia <miika.turkia@gmail.com>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-01-22 21:49:03 +12:00
Miika Turkia
ffdb78a3dc Fix order of CSV field separators
Unfortunately we are referencing these separators with index, so they
need to be on same order as used in XSLT files.

Signed-off-by: Miika Turkia <miika.turkia@gmail.com>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-01-22 21:48:57 +12:00
Miika Turkia
c1f716614f Special handling of Seaber CSV files
These files contain a bit of extra data before the actual CSV part, so
we need to skip there to show sensible information to users.

Signed-off-by: Miika Turkia <miika.turkia@gmail.com>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-01-22 21:48:44 +12:00
Dirk Hohndel
cbab6cc9c8 When importing dives from CSV, mark them accordingly
The dive computer model string should indicate that these were imported
from CSV.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-01-22 06:54:03 +12:00
Anton Lundin
fd33e70135 Use correct flag when connecting the progress events to the progress bar
Signed-off-by: Anton Lundin <glance@acc.umu.se>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-01-22 06:26:57 +12:00
Anton Lundin
8997fc88a3 DLF import: set no_o2sensors in CCR/PSCR mode
This triggers the rest of the code to treat the sensor value as our
ppO2 value.

Signed-off-by: Anton Lundin <glance@acc.umu.se>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-01-22 06:26:49 +12:00
Anton Lundin
e0c0ba4836 Set divemode to FREEDIVE now when we support that
Previous code mapped all our free dive inputs to OC, but now when we
actually have a FREEDIVE divemode, we can do better.

Signed-off-by: Anton Lundin <glance@acc.umu.se>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-01-22 06:02:34 +12:00
Anton Lundin
e8b02d3b2a Add a QProgressDialog to auto-ostc3-firmware
Signed-off-by: Anton Lundin <glance@acc.umu.se>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-01-21 17:04:52 +12:00
Anton Lundin
b0260c6025 Emit 100% progress after quick actions
These actions are basically instant. The infrastructure are in place so
if someone feels for building a proper progress, be my guest, but this
just makes sure the progress bar acts like in the other cases to the
user.

Signed-off-by: Anton Lundin <glance@acc.umu.se>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-01-21 17:04:04 +12:00
Anton Lundin
3f805dda1d Emit progress from suunto vyper config operations
Signed-off-by: Anton Lundin <glance@acc.umu.se>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-01-21 17:03:32 +12:00
Anton Lundin
cbdaec4d9d Emit progress events from firmware updates
Signed-off-by: Anton Lundin <glance@acc.umu.se>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-01-21 17:03:28 +12:00
Anton Lundin
724170f4b6 Connect the progress events to the progress bar
Signed-off-by: Anton Lundin <glance@acc.umu.se>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-01-21 17:03:24 +12:00
Anton Lundin
1d67bae745 Add infrastructure to emit progress from threads
Signed-off-by: Anton Lundin <glance@acc.umu.se>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-01-21 17:03:21 +12:00
Anton Lundin
ba525df766 Use a progressbar in the configure dc dialog
This switches from a couple of labels in the dialog to a progress bar,
to later being able to use it to provide better user experience.

Signed-off-by: Anton Lundin <glance@acc.umu.se>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-01-21 17:03:18 +12:00
Anton Lundin
0787d941a0 Refactor device handling threads
This refactors the device handling threads into having one common
ancestor class.

Signed-off-by: Anton Lundin <glance@acc.umu.se>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-01-21 17:03:14 +12:00
willem ferguson
a700be3207 CCR option: display o2 sensor data
This patch creates the possibility of viewing the individual sensor
values when the po2 button on the profile toolbar is activated. This
follows exactly the procedure for optionally displaying the setpoint
values while viewing po2. A checkbox in the preferences panel determines
whether sensor information is shown. By default it is set to OFF. When
checked, and the po2 button is activated, sensor1 values are shown in
grey, sensor2 in blue and sensor3 in brown.

Signed-off-by: willem ferguson <willemferguson@zoology.up.ac.za>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-01-21 17:00:18 +12:00
Robert C. Helling
2923329e8e UI for pSCR preferences
Signed-off-by: Robert C. Helling <helling@atdotde.de>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-01-20 22:38:52 +12:00