summaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
2014-06-13Start a user survey dialogGravatar Dirk Hohndel
The idea is that a week after the user starts using Subsurface we ask them if they would like to submit a survey response. If you are running a development build, don't wait seven days. This patch doesn't do anything with the user's selections, doesn't submit anything to our server, etc. It's just a placeholder to tune what we should ask, etc. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-06-13Prevent using uninitialized variableGravatar Dirk Hohndel
numberOfPictures was be read before it is written. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-06-12Fix tank size displayGravatar Dirk Hohndel
In commit 11380a5deb07 ("Really display liters with script el") I inadvertantly broke the display of cylinder sizes in the imperial case. This patch restores that and also tries to give slightly more useful guidance on the number of decimals to display. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-06-12Correct pO2 formula in CNS calculation.Gravatar Robert C. Helling
In commit e58f54cac1d0 ("Fix ATM-vs-bar confusion") Linus broke the CNS calculations; The partial pressure is fraction of gas times ambient pressure, not divided by. [Dirk Hohndel: identical patch sent by Robert and Anton; I combined the commit messages and added the ACK from the perpetrator] Signed-off-by: Robert C. Helling <helling@atdotde.de> Signed-off-by: Anton Lundin <glance@acc.umu.se> Acked-by: Linus Torvalds <torvalds@linux-foundation.org> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-06-12Don't copy the current dive ontop of editedDive after edit has startedGravatar Dirk Hohndel
If you switch to edit mode by making a change to cylinders or weights, then the data in the editedDive was changed and afterwards the current dive was once again copied into the editedDive - even though we already did that earlier when setting up the display. Fixes #539 Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-06-12Much needed clean on the HTML export dialog code.Gravatar Tomaz Canabrava
Correct usage of QFile, QString and code cleanup. [Dirk Hohndel: plus whitespace cleanup and removal of qDebug() calls] Signed-off-by: Tomaz Canabrava <tomaz.canabrava@intel.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-06-12Delay loading of some settings until laterGravatar Dirk Hohndel
This early in init_ui() the settings may not be available, yet. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-06-12Planner: don't show the planner panes by defaultGravatar Dirk Hohndel
With commit 708f19830e2a ("Planner: New plannerSettingsWidget") we suddenly started out showing the planner widget. Not useful. So let's switch us back to the default screen :-) Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-06-12Planner: update tabstop order againGravatar Dirk Hohndel
Robert's commit 708f19830e2a ("Planner: New plannerSettingsWidget") moved several of the widgets from the maintab area to the new planner settings widget. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-06-12Planner: New plannerSettingsWidgetGravatar Robert C. Helling
In planner mode, this replaces the globe with the dive plan and introduces a new plannerSettingsWidget in the diveListPane. All new fields are still disfunctional. This is WIP. Signed-off-by: Robert C. Helling <helling@atdotde.de> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-06-11Add beginning of pretend CCR XML fileGravatar Dirk Hohndel
Note that we are missing code to write out the new attributes, so saving this test dive back to a file loses them. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-06-11Simplify codeGravatar Dirk Hohndel
Since trimspace() null terminates the string, we can simply use strdup() here. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-06-11Provide for a dive_computer_type variable within dc structureGravatar Willem Ferguson
This patch lays the foundation for differentiating between open-circuit(OC)dives and rebreather dives (CCR). The following were done: 1) In dive.h add an enum type dive_computer_type 2) In dive.h add two more fields to the dc structure: a) dctype (an enum field indicating dc type) b) no_o2sensor (indicating number of o2 sensors for this dc) 3) In parse-xml.c add a function trimspace that strips any whitespace from a string. This is used by two functions: utf8_string as well as by get_dc_type, described below. The pointer to buffer is not changed in order to ensure consistency when the buffer is freed. 4) In parse-xml.c add a function get_dc_type. This parses the dc_type string from xml and assigns an enum value which will later be returned to the function that parses the dc variables. Signed-off-by: Willem Ferguson <willemferguson@zoology.up.ac.za> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-06-11Change the QDialog for html export to getExistingFolderGravatar Tomaz Canabrava
The QDialog for html creates a folder, we need to choose a folder, not a file. getSaveFileName was wrong. ;p Fixes #533 Signed-off-by: Tomaz Canabrava <tomaz.canabrava@intel.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-06-11Fix layout of Dive ExportGravatar Tomaz Canabrava
Signed-off-by: Tomaz Canabrava <tomaz.canabrava@intel.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-06-11Fix layout of import CVSGravatar Tomaz Canabrava
Signed-off-by: Tomaz Canabrava <tomaz.canabrava@intel.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-06-11Fix uninitialized memory warningGravatar Dirk Hohndel
It's kinda bogus, but since we add it to the Vector, we might as well initialize all of it. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-06-11Have explicit "%s" format strings in printf style statementsGravatar Robert C. Helling
Not having a format string that explicitly references the arguments is considered a potential security issue in code. This gets rid of a compiler warning that turned into an error on Fedora 21. Signed-off-by: Robert C. Helling <helling@atdotde.de> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-06-11Allow the user to delete a dive computer from a diveGravatar Dirk Hohndel
This can't be the only dive computer, of course. Goes nicely with the ability to reprder them. Fixes #551 Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-06-11Profile: add a flag to force redrawing the profileGravatar Dirk Hohndel
This is needed if something has changed that requires a redraw, but the plotDives() function can't tell (for example when a dive computer has been deleted and there's now a different DC in the same spot, with the same number - see next commit). Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-06-11Qmake: make clean failed on Windows cross buildsGravatar Dirk Hohndel
For some reason the docclean rule wasn't included in the Makefile when cross building for Windows on Linux. Doing some searching into the issue I found a much easier way to handle the make clean stage and sidestepped the actual problem. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-06-11ENABLE_PLANNER is obsoleteGravatar Dirk Hohndel
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-06-11Deal with some uninitialized variable warningsGravatar Dirk Hohndel
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-06-11Globe: do a better job detecting double clicks and setting GPS coordinatesGravatar Dirk Hohndel
For some reasons Marble appears to sometimes not detect double clicks and call the correct callback. With this commit we manually intercept the double clocks and route them to the right function. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-06-11Don't silently ignore suspcious data from libdivecomputerGravatar Dirk Hohndel
Otherwise possible bugs in libdivecomputer won't get reported and fixed. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-06-10Don't ignore actual diveable mixesGravatar Anton Lundin
Fist is really obvious. I quite regularly decompress using pure O2. It's as good a last decompression gas as you get. The second is a bit harder. There are very few that dive with 80%+ helium in their mixes but they exist, and there are real weirdos that dive heliox, so they are actual diveable gases too. Signed-off-by: Anton Lundin <glance@acc.umu.se> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-06-10Minor code readability improvementGravatar Dirk Hohndel
Tomaz pointed out that this is a better way to create that pair. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-06-10Remove unused variableGravatar Dirk Hohndel
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-06-10Planner: fix the tab orderGravatar Dirk Hohndel
I know this is being redone, but the messed up tab order was driving me insane when testing. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-06-10More layout work for stats tabGravatar Dirk Hohndel
This finally gets me something that I like. The way the different boxes get resized seems pleasant and intuitive. And it appears to do the right thing on all platforms (I learned that having different levels of layout nested creates no vertical offset on Linux/KDE, but a very ugly offset on Mac, for example). Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-06-10Improve statistic on used gasGravatar Dirk Hohndel
This raises the maximum number of gas mixes listed to 20 and also changes the layout / design of the stats tab to make it much more attractive. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-06-10Picture handling: when zooming thumbnail, put it in the foregroundGravatar Dirk Hohndel
This just seems to look much better. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-06-10Planner: don't reset GF when preferences changeGravatar Dirk Hohndel
The planner has its own view of the gradient factors. So replacing those with the ones set up for viewing dives in the preferences is wrong. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-06-10Planner: show the GF used for planning on top of the profileGravatar Dirk Hohndel
Showing the GF in the preferences is just confusing. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-06-10Planner: reset GFlow and GFhigh when we're doneGravatar Dirk Hohndel
While planning we might change the gradient factors. Make sure they are back to what's in the preferences when we're done planning. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-06-10Planner: use the actual setting for GF low at max depthGravatar Dirk Hohndel
Using the default_prefs value makes no sense. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-06-09Add gas consumption statistic for selected divesGravatar Dirk Hohndel
We already did a list of gases and volume consumed for the selected dive on the Dive Info tab, but did not provide that same data on the Stats tab for all the selected dives. I arbitrary limited this to eight gases (as the list can get quite long when you select a lot of dives). The gases are sorted by volume consumed. Fixes #535 Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-06-09Don't show the average depth for the selected divesGravatar Dirk Hohndel
Being shown between the deepest and shallowest dive's max depth it confuses a lot of people - the average depth is frequently less than the shallowest of the dives, so at first glance it looks like the "average" is less than the "minimum". So having three numbers grouped like this that use different algorithms is just distracting. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-06-09planner.c: prevent an uninitialized warningGravatar Lubomir I. Ivanov
"warning: 'bottom_time' may be used uninitialized in this function" we set it to zero for now. Signed-off-by: Lubomir I. Ivanov <neolit123@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-06-09profilewidget2: fix -Wreorder warningsGravatar Lubomir I. Ivanov
warning: 'ProfileWidget2::someVariableName' will be initialized after [-Wreorder] Signed-off-by: Lubomir I. Ivanov <neolit123@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-06-09mainwindow.cpp: fix a warning about parenthesesGravatar Lubomir I. Ivanov
"warning: suggest parentheses around assignment used as truth value [-Wparentheses]" I think 4.8.2 is confused about this one, but we suppress it regardless by separating into two assignments. Signed-off-by: Lubomir I. Ivanov <neolit123@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-06-09qt-gui.cpp: add another QT_VERSION checkGravatar Lubomir I. Ivanov
encodeUtf8() and decodeUtf8() are only used for Q_OS_WIN in init_ui(), but also that branch is wrapped in a "#if QT_VERSION < 0x050000" we do the same for the actual function declarations. Signed-off-by: Lubomir I. Ivanov <neolit123@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-06-09planner.c: use implicit struct initializerGravatar Lubomir I. Ivanov
We should either use mplicit struct initializers (empty braces { } or double braced zero {{ 0 }}) or memset the struct. Signed-off-by: Lubomir I. Ivanov <neolit123@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-06-09windows.c: prevent a warning due to #define _WIN32_WINNT...Gravatar Lubomir I. Ivanov
mingw 4.8.2 complains: warning: "_WIN32_WINNT" redefined 0x500 suits our needs windows.c wise. Signed-off-by: Lubomir I. Ivanov <neolit123@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-06-09Make sure Windows can find the user manualGravatar Dirk Hohndel
This worked before without the "file:///" prefix, but something else that I did broke that. Oh well, now it works again. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-06-09Fix incorrect argument order for %.*fGravatar Dirk Hohndel
Strangely, *prinf() on Linux appears to do the right thing in either order (my guess is based on the type of the two values?), but on Windows things go badly. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-06-09Dive edit: do a better job noticing when the coordinates were changedGravatar Dirk Hohndel
Previously the code could get confused by edits (including trivial things like deleting the coordinates). It seems much more reliable to simply compare the coordinates of the edited dive with the ones in the current dive before the edits. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-06-09Picture handling: switch to stronger typed offsetGravatar Dirk Hohndel
Also change the on file XML to be even easier to read by making it a duration as well (which gets us '32:34 min' instead of un-typed seconds). This is backwards compatible, it will happily read what was written with the previous commit). Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-06-09Picture handling: parse and convert old style picture eventsGravatar Dirk Hohndel
Speacial case handling for event type '123' to instead add a picture to the picture_list of the dive. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-06-08Change character for liter in SAC values as wellGravatar Dirk Hohndel
And fix the bug that in the info overlay SAC was always given in metric values. And try to reduce the number of places in which we calculate the unit conversions... Signed-off-by: Dirk Hohndel <dirk@hohndel.org>