summaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
2014-10-18Add GAS settings to the gas screenGravatar Anton Lundin
These settings are gas related so they fitted in the spare space in the gas screen. Signed-off-by: Anton Lundin <glance@acc.umu.se> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-10-18Bugfix restore gas settings from xmlGravatar Anton Lundin
There was a typo, restoring gas2 over gas1. Signed-off-by: Anton Lundin <glance@acc.umu.se> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-10-18Fix 02 typo, rename O2 members in devicesettingsGravatar Anton Lundin
Signed-off-by: Anton Lundin <glance@acc.umu.se> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-10-18Add missing compass gain read from the OSTC3Gravatar Anton Lundin
Signed-off-by: Anton Lundin <glance@acc.umu.se> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-10-18Fix plus icon position based on the themeGravatar Tomaz Canabrava
I hope this time I got it right. basically, the old code tried to guess where the plus icon should be with a fairly bad set of defauults. This one patch asks for the Qt style where everything is and uses that knowledge to make it be in a more sane position. Signed-off-by: Tomaz Canabrava <tomaz.canabrava@intel.com> Signed-off-by: Giuseppe Bilotta <giuseppe.bilota@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-10-18Unify icon metricsGravatar Giuseppe Bilotta
Signed-off-by: Giuseppe Bilotta <giuseppe.bilotta@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-10-18actually use defaultIconSize()Gravatar Giuseppe Bilotta
Signed-off-by: Giuseppe Bilotta <giuseppe.bilotta@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-10-18Define auxiliary functions for metricsGravatar Giuseppe Bilotta
Collect font, font metrics and icon size functions in a separate module. Signed-off-by: Giuseppe Bilotta <giuseppe.bilotta@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-10-18Dynamic dive trip list column widthsGravatar Giuseppe Bilotta
Compute the default widths for the columns in the dive trip list from their header and (expected) content length rather than some fixed pixel sizes. Signed-off-by: Giuseppe Bilotta <giuseppe.bilotta@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-10-18Make TableView resolution independentGravatar Giuseppe Bilotta
Don't hard-code column widths or icon sizes/positions. Instead, compute them from the fonts used. Signed-off-by: Giuseppe Bilotta <giuseppe.bilotta@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-10-18Dynamic ToolTipItem metricsGravatar Giuseppe Bilotta
Instead of hard-coding the icon sizes and spacing, compute them from the font sizes, that Qt auto-computes from the displya DPI. Signed-off-by: Giuseppe Bilotta <giuseppe.bilotta@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-10-18Dynamic StarWidget metricsGravatar Giuseppe Bilotta
The default IMG_SIZE and SPACING in the StarWidget are not appropriate for HiDPI displays. Replace them with StarMetrics which are auto-computed from the (default) font size (which Qt determines from the display DPI settings). Signed-off-by: Giuseppe Bilotta <giuseppe.bilotta@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-10-16Fix the type of the for the Suunto max depthGravatar Anton Lundin
The type is now a double. It was a int during development, but due to the feet/128 precision i changed it to a Double, but the default value wasn't changed type on. All the Qt tools swallowed the number there without complaining but the Qt designer insisted on changing it to a double. Signed-off-by: Anton Lundin <glance@acc.umu.se> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-10-16Fix column order for OSTC3 diluent tableGravatar Anton Lundin
The fist column is the O2% value, and was handled like that in the data. It was only the column header that was wrong. Signed-off-by: Anton Lundin <glance@acc.umu.se> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-10-16Add a missing break after OSTC3 settings writeGravatar Anton Lundin
There was a missing break after writing the settings to the OSTC3. It caused us to fall down into the default case and saying that the operation was unsupported. Signed-off-by: Anton Lundin <glance@acc.umu.se> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-10-16Set the diluent values from the right bufferGravatar Anton Lundin
The OSTC3 settings code read the data from the computer into spData, but set the data into the devicedetails object from dilData. Signed-off-by: Anton Lundin <glance@acc.umu.se> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-10-16Save columnwith of Ostc3 settings tablesGravatar Anton Lundin
Signed-off-by: Anton Lundin <glance@acc.umu.se> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-10-16Make ConfigureDiveComputerDialog ui a class memberGravatar Anton Lundin
Almost all of our other classes have the ui class as a class member in the controller code. This switches ConfigureDiveComputerDialog to that model. Signed-off-by: Anton Lundin <glance@acc.umu.se> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-10-16Enable/Disable Update Firmware button based on dcGravatar Anton Lundin
Disable the Update Firmware button if you choose a device that we don't support update firmware for. Signed-off-by: Anton Lundin <glance@acc.umu.se> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-10-16Don't allow writing before we got dataGravatar Anton Lundin
Don't allow creation of backup files or writes to the computer before we know we got some data, either from a backup file or from the actual device. Signed-off-by: Anton Lundin <glance@acc.umu.se> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-10-16Set limits for Saturation/Desaturation on OSTC3Gravatar Anton Lundin
The default max value for a QSpinBox is 99. The default Saturation factor for the OSTC3 is 110%. This code sets the max, min and default values on those spinboxes. The values comes from me reading the assembler code for the OSTC3. Signed-off-by: Anton Lundin <glance@acc.umu.se> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-10-15Remove double includeGravatar Giuseppe Bilotta
Signed-off-by: Giuseppe Bilotta <giuseppe.bilotta@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-10-15255% as limit for Saturation/Desaturation on OSTC3Gravatar Anton Lundin
The default max value for a QSpinBox is 99. The default Saturation factor for the OSTC3 is 110%. This code raises the max values to 255 which is as far as i've read the ostc3_interface.odt the max value. Signed-off-by: Anton Lundin <glance@acc.umu.se> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-10-15Read and write desaturation from OSTC3'sGravatar Anton Lundin
This adds missing code to read and write the desaturation factor to and from OSTC3's. Signed-off-by: Anton Lundin <glance@acc.umu.se> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-10-14CCR patch: Correction of inconsistency in profile.cGravatar willem ferguson
fill_o2_values() in profile.c: Robert identified the inconsistency of po2 assignmemts when using OC dives as opposed to CCR dives. This is corrected here. OC dives still need to be processed in this function because the po2 values have not been initialised anywhere else before thos code executes. Signed-off-by: willem ferguson <willemferguson@zoology.up.ac.za> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-10-14Reshuffle CCR voting logic and minor clean upsGravatar Robert C. Helling
Signed-off-by: Robert C. Helling <helling@atdotde.de> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-10-14Export to DiveShareGravatar Salvo 'LtWorf' Tomaselli
Adds the possibility of exporting dives to DiveShare. Signed-off-by: Salvo 'LtWorf' Tomaselli <tiposchi@tiscali.it> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-10-14Setup defaults for some of the OSTC3 settingsGravatar Dirk Hohndel
This is still missing lots of values which are now set to 0 with rather unfortunate consequences (for example, setting Saturation and Desaturation to 0 turns off the NDL / Deco calculations). So this code right now is quite broken. But at least this fixes the reported crash and gets some valid data initialized. Fixes #744 Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-10-14Fix compilation on other Unix besides LinuxGravatar Thiago Macieira
The linux.c file is really for just generic Unix systems, so adapt the .pro file logic to match. Signed-off-by: Thiago Macieira <thiago@macieira.org> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-10-14Check that the model is a supported oneGravatar Anton Lundin
This code adds some crude checks to verify that the device is a supported one before we actually read/write from it. This is to white/black-list devices so we don't write or read memory that we don't know anything about. Signed-off-by: Anton Lundin <glance@acc.umu.se> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-10-13CCR patch: Reorganise the oxygen partial pressure calculationsGravatar willem ferguson
This patch responds to the side effects that the CCR code has had with respect to ceilings in OC dives and dive plans. Dive ceilings are now calculated correctly again. The following were performed: 1) remove the oxygen sensor and setpoint fields from the gas_pressures structure. 2) Re-insert setpoint and oxygen sensor fields in the plot_data structure. 3) Remove the algorithm that reads the o2 sensor data and calculates the pressures.po2 value from function fill_pressures() in dive.c and save it as a separate function calc_ccr_po2() in profile.c. 4) Activate calc_ccr_po2 from function fill_pressures() in profile.c. 5) Move the relative position of the call to fill_pressures() within the function create_polt_info_new() in profile.c. Signed-off-by: willem ferguson <willemferguson@zoology.up.ac.za> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-10-13Ignore pictures when parsing divelogs.de importGravatar Miika Turkia
Do not do XML parse on pictures. Currently just ignore them, in the future we might want to save them somewhere and include them in Subsurface logs. Signed-off-by: Miika Turkia <miika.turkia@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-10-12Export additional tanks to divelogs.deGravatar Miika Turkia
All recorded cylinders are exported to divelogs.de. This potentially includes cylinders that have not been used. The start and end pressure for additional cylinders is taken from the cylinder information. Main tank gets this information from first and last pressure reading or from the cylinder information if samples are not available. This should be ok when there is only one cylinder with pressure sensor, but does not probably work for people having multiple sensors. Signed-off-by: Miika Turkia <miika.turkia@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-10-12CCR patch: Calculate the correct partial gas pressures for CCR divesGravatar willem ferguson
This patch adds code to the function fillpressures() in dive.c to allow calculating o2 pressures, based on the data from the po2 sensors in the system. The following changes were made: 1) add code to perform po2 calculations for CCR with 1, 2 or 3 oxygen sesnors. 2) Add four fields to the gas_pressures structure in dive.h. This allows communication of data between the function that calls get_pressures() and the return of partail pressure values to the calling function. 3) Delete the fields for setpoint and gas partial pressures from the structure plot_info. All partial pressures (from instruments as well as calculated) now reside in the pressures structure that forms part of plot_info. 4) Perform changes in several parts of profile.c to make use of the pressures structure in plot_info. [Dirk Hohndel: yet again massive whitespace cleanup] Signed-off-by: willem ferguson <willemferguson@zoology.up.ac.za> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-10-12Support for importing additional tanksGravatar Miika Turkia
This patch adds support for importing additional cylinders from divelogs.de. This also adds support for He on the import. Signed-off-by: Miika Turkia <miika.turkia@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-10-12Correctly copy all information in an eventGravatar Dirk Hohndel
Instead of trying to use add_event() to reinsert events we simply copy the memory and adjust the pointers. Using add_event() lost the gas mix and gas index information on gaschange events - and this prevent switches between cylinders with the same gasmix to be rendered correctly. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-10-12CCR patch: Oxygen partial pressuresGravatar willem ferguson
This patch does three things: 1) A new function fill_o2_values() is added to profile.c. This fills all oxygen sesnsor and setpoint values that have been zeroed before in order to save space in the dive log. This recreates the full set of sensor values obtained from the original CCR xml log file. 2) Function fill_o2_values() is activated in function create_ plot_info_new() in profile.c 3) The calling parameters to function fill_pressures() in dive.c are changed. The last parameter is now a pointer to a structure of divecomputer. This will be needed in the last patch of the present series of three patches. [Dirk Hohndel: minor whitespace cleanup] Signed-off-by: willem ferguson <willemferguson@zoology.up.ac.za> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-10-12Remove unused variablesGravatar Anton Lundin
Signed-off-by: Anton Lundin <glance@acc.umu.se> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-10-12Connect the Suunto Vyper Configuration uiGravatar Anton Lundin
This code connects up the configuration ui with the backing data structures thats gets read/written to/from the devices. Signed-off-by: Anton Lundin <glance@acc.umu.se> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-10-12This adds a ui for Suunto Vyper settingsGravatar Anton Lundin
This builds up a ui to use for all the settings for the Suunto Vyper family devices. Some of the fields are pure information, eg, max depth and number of dives, so they are marked read-only. Signed-off-by: Anton Lundin <glance@acc.umu.se> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-10-12This adds read/write of Suunto Vyper configsGravatar Anton Lundin
This implements the reading and writing of the configuration varables from the Suunto Vyper family devices. Everything here is implemented based on the excellent information on: http://www.sarnau.info/papers:suunto_vyper Signed-off-by: Anton Lundin <glance@acc.umu.se> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-10-12This saves and restores Suunto Vyper configsGravatar Anton Lundin
Signed-off-by: Anton Lundin <glance@acc.umu.se> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-10-12Add backing stores for Suunto Vyper configurationsGravatar Anton Lundin
This adds varables to store all the settings for the Suunto Vyper family. Signed-off-by: Anton Lundin <glance@acc.umu.se> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-10-12Remove double-assignment to rc varableGravatar Anton Lundin
Signed-off-by: Anton Lundin <glance@acc.umu.se> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-10-12Initialize everything to zero in devicedetailsGravatar Anton Lundin
Before this, if you did click save backup xml before you read the data, you would get a xml file full of bogus. This initializes everything to zero. Signed-off-by: Anton Lundin <glance@acc.umu.se> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-10-12Start sanitizing gaschange event informationGravatar Linus Torvalds
Decode the gasmix data into a sane format when creating the event, and add the (currently unused) ability to specify a gas change to a particular cylinder rather than (or in addition to) the gasmix. Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-10-12Teach uemis downloader about downloading into private tripsGravatar Linus Torvalds
Now that we pass in the full device_data_t information, we can look at the "create_private_dive" flag and decide just how to record newly downloaded dives properly. Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-10-12Pass the whole 'device_data_t' to the uemis downloaderGravatar Linus Torvalds
Not only does it make it look more like the libdivecomputer downloaders, but the uemis downloader needs it in order to support all the flags we have. Notably "download into private trip". Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-10-11Just use strdupGravatar Dirk Hohndel
In commit 272f85bb2444 ("Fix silly crash") I indeed fixed the crash, but I also broke the code. Now a broken userid might end upsaved in the data file. Oops. This should be correct now. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-10-11Keeping up the fight for whitespace consistencyGravatar Dirk Hohndel
Sadly, some of the code being fixed is my own... Signed-off-by: Dirk Hohndel <dirk@hohndel.org>