Commit graph

3967 commits

Author SHA1 Message Date
Thiago Macieira
3e3fff262e Don't use an array where none are necessary
We don't need to keep the array of zip_source structs. We just need the
latest we created so we can add to the zip file.

Signed-off-by: Thiago Macieira <thiago@macieira.org>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-12-20 09:53:05 -08:00
Thiago Macieira
64f24234ab Move the variable initialisations closer to use and add blanks
Makes the code easier to read, IMHO.

Signed-off-by: Thiago Macieira <thiago@macieira.org>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-12-20 09:53:05 -08:00
Thiago Macieira
de47937dd1 Get more descriptive error messages when uploading to divelogs.de
Signed-off-by: Thiago Macieira <thiago@macieira.org>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-12-20 09:53:05 -08:00
Thiago Macieira
d36e4555da Move the divelogs.de preparation function into the C++ class
This is so we can mark the error messages for translation.

Signed-off-by: Thiago Macieira <thiago@macieira.org>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-12-20 09:53:05 -08:00
Thiago Macieira
b654bcdd7a Generate the file name for the dive log upload in the caller
This is a cleaner approach, according to the discussion in the mailing
list. It is also better because we can use QTemporaryDir in Qt 5.
Finally, it avoids having to remember to free it at every point.s

Signed-off-by: Thiago Macieira <thiago@macieira.org>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-12-20 09:53:05 -08:00
Thiago Macieira
8eb6dfdb02 Use QFile::{encode,decode}Name for file names
And make them use UTF-8 on Windows instead of the local 8 bit encoding.
This will also get us the proper NFD encoding on OS X.

Signed-off-by: Thiago Macieira <thiago@macieira.org>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-12-20 09:53:05 -08:00
Thiago Macieira
dbdf50d03c Fix compilation with libzip < 0.10
Signed-off-by: Thiago Macieira <thiago@macieira.org>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-12-20 09:53:05 -08:00
Anton Lundin
c49f7133c3 Add preprocessor directives around debug functions
These adds some ifdef's around some debug functions to disable them when
not using them.

Signed-off-by: Anton Lundin <glance@acc.umu.se>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-12-20 09:53:05 -08:00
Anton Lundin
a84826090a Planner: don't abort when saving a dive
The fix for dereferencing a null pointer from me was a bad fix that
broke the possibility of saving a planned dive as a dive.

This is a better fix to not dereference a null pointer and be able to
save the plan again.

Signed-off-by: Anton Lundin <glance@acc.umu.se>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-12-20 09:53:05 -08:00
Tomaz Canabrava
029522880f When saving / canceling edition, focus back to the Dive List
When saving / canceling the edition, focus was still being kept on the
current selected widget. not good. :) this patch makes the DiveList
keep the focus after a edit.

Signed-off-by: Tomaz Canabrava <tcanabrava@kde.org>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-12-20 09:53:05 -08:00
Tomaz Canabrava
29a19e2e84 Fix the cursor problem on the TagWidget
The problem was the Focus Prevention system on the
EventFilter. Instead of that we can pass the setFocusPolicy (
strongFocus ) that ignores the mousewheel. simpler and cleaner.

Fixes #376

Signed-off-by: Tomaz Canabrava <tcanabrava@kde.org>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-12-20 09:53:05 -08:00
Tomaz Canabrava
890d60ff9e Simplify the code by removing a few options from the if.
There was some options on the 'if' that didn't
really belonged there, so I create a if before those
to quit earlier if the condition is true.

Signed-off-by: Tomaz Canabrava <tcanabrava@kde.org>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-12-20 09:53:04 -08:00
Tomaz Canabrava
bffceb18e7 Do not New / Delete the item, use the Stack.
This should be somewhat faster, and the code is cleaner.

Signed-off-by: Tomaz Canabrava <tcanabrava@kde.org>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-12-20 09:53:04 -08:00
Tomaz Canabrava
2ead1ebe08 Removed obsolete code.
The QPainter::hightQualityAntiAliasing is ignored by Qt,
the docs says we should use QPainter::AntiAliasing.

Signed-off-by: Tomaz Canabrava <tcanabrava@kde.org>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-12-20 09:53:04 -08:00
Tomaz Canabrava
bdd1b3b546 Make it possible to use the Tag System in dark themes
The color used on the bright theme was cyan, and it's too bright when the
font is also white.

This patch uses the HSL information of the color to determine if the text
color is light or dark, and adjusting the background color for that.

Signed-off-by: Tomaz Canabrava <tcanabrava@kde.org>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-12-20 09:53:04 -08:00
Tomaz Canabrava
9e57dd4826 Code cleanup: QPair<int, int> -> qMakePair
Signed-off-by: Tomaz Canabrava <tcanabrava@kde.org>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-12-20 09:53:04 -08:00
Dirk Hohndel
a0b9daf63b Improve signing script, adjust flags for gcc-4.2
On one of my machines codesign doesn't find my signing key by hash, but
does find it by name. Go figure.
Also on that same system (32bit Mac Mini with running Snow Leopard / 10.6)
gcc 4.2 doesn't support the -unused-result warning. So let's only turn
that on for more modern versions of gcc

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-12-19 20:42:59 -08:00
Lubomir I. Ivanov
a351bbde24 Files: use the new opendir() wrapper
This is a separate patch because it required more changes
and branches due to how opendir() works on win32
with the separate struct type _WDIR and the according _w...
methods for it.

Signed-off-by: Lubomir I. Ivanov <neolit123@gmail.com>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-12-19 07:28:27 -08:00
Lubomir I. Ivanov
86ed014339 Fix an unused variable warning
Signed-off-by: Lubomir I. Ivanov <neolit123@gmail.com>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-12-19 07:28:26 -08:00
Lubomir I. Ivanov
1bb7ab30c6 Files: prefer toUtf8() over toLocal8Bit()
We may want to use toUtf8() for win32 considerations.

Signed-off-by: Lubomir I. Ivanov <neolit123@gmail.com>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-12-19 07:28:25 -08:00
Lubomir I. Ivanov
69ed0d8393 Fix a missing parentheses warning
Signed-off-by: Lubomir I. Ivanov <neolit123@gmail.com>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-12-19 07:28:24 -08:00
Lubomir I. Ivanov
22b8d95d58 Fix a small coding style issue
Signed-off-by: Lubomir I. Ivanov <neolit123@gmail.com>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-12-19 07:28:23 -08:00
Lubomir I. Ivanov
fbff6127ac Files: use the new open() wrappers
Adds use of everything from the new wrappers(), but the
opendir() one.

Signed-off-by: Lubomir I. Ivanov <neolit123@gmail.com>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-12-19 07:28:21 -08:00
Lubomir I. Ivanov
f487953ad3 Files: add wrappers for certain open() methods
Due to filepath encoding issues on win32 we need
wrappers for:
- open()
- fopen()
- opendir()
- zip_open() (this is readonly on win32)

Patch only declares/defines the wrappers
in dive.h, windows.c, linux.c, macos.c.

Suggestions-by: Thiago Macieira <thiago@macieira.org>
Suggestions-by: Jef Driesen <jefdriesen@telenet.be>
Signed-off-by: Lubomir I. Ivanov <neolit123@gmail.com>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-12-19 07:28:20 -08:00
Tim Wootton
cad0d45fe1 Splits long lines in manual
This allows patches to be read more easily
This prevents the lines longer than 998 error in git send-email
Breaks lines at somewhere near 80 chars where possible

Signed-off-by: Tim Wootton <tim@tee-jay.demon.co.uk>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-12-19 07:23:11 -08:00
Tim Wootton
ecc33e6375 Adds unhide to profile menu context menu
Unhide menu is only shown when hidden events exist.
Also updates relavent manual section.

Signed-off-by: Tim Wootton <tim@tee-jay.demon.co.uk>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-12-18 14:07:41 -08:00
Tomaz Canabrava
77c2c4c5ad Make default font setting actually work
We were asking the widget.font() which returned the font that the
QFontSelector uses to display it's contents, instead of using
currentFont() that's the correctly selected font. duh. :))

Fixes #368
Fixes #375

(for #375 the solution is to select a different font that a) looks better
and b) has the missing characters)

Signed-off-by: Tomaz Canabrava <tcanabrava@kde.org>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-12-18 13:38:40 -08:00
Tomaz Canabrava
2f05934936 Whitespace fix
Signed-off-by: Tomaz Canabrava <tcanabrava@kde.org>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-12-18 13:38:24 -08:00
Dirk Hohndel
1e443eb78b Fix broken Linux install
In commit ca8aee4701 ("Move the XSLT files into a Qt resource") we
removed a line from the .pri file without removing the trailing '\' from
the previous line which caused the following line to be consumed by the
assignment - and the dummy target not being added to the EXTRA_TARGETS...

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-12-17 10:13:04 -08:00
Dirk Hohndel
33668ffd35 Don't enter edit profile mode when already editing the dive
This is not the ideal solution. Ideally we might want to simply enter the
profile edit mode if we edit a dive that was manually added. But right now
the code contains lots of assumptions about being in one mode or the other
and as we are redoing the profile / planner classes for 4.1 anyway, I'd
rather err on the safe side for 4.0.1

Fixes #374

(well, it fixes the second bug reported in 374 which is quite different
from the original bug)

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-12-17 06:45:31 -08:00
Dirk Hohndel
fe88a2a476 Don't quit while dive is edited
If the user edits a dive and then quits we try to ask them to finish
editing, first. If the user did this by either clicking the little 'x'
in the window decoration or by hitting Alt-F4 (or similar), we didn't
have that question (only the 'save changes' question in case the dive list
had already been modified.

Fixes #374

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-12-16 16:37:44 -08:00
Thiago Macieira
397898434e Remove the xslt_path now that all XSLT files are kept in a resource
Signed-off-by: Thiago Macieira <thiago@macieira.org>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-12-16 16:20:54 -08:00
Thiago Macieira
ca8aee4701 Move the XSLT files into a Qt resource
This means we no longer need to keep them on disk and worry about
installing / uninstalling them. They will always be kept in-memory
(compressed).

Signed-off-by: Thiago Macieira <thiago@macieira.org>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-12-16 16:20:52 -08:00
Michael Andreen
5f12660870 Use UTF-8 for text strings.
Fixes #371

Signed-off-by: Michael Andreen <harv@ruin.nu>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-12-16 16:14:50 -08:00
Willem Ferguson
43385eb31a The info icon of the manual got mislaid somewhere
Here it is.

Signed-off-by: Willem Ferguson <willemferguson@zoology.up.ac.za>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-12-16 09:46:18 -08:00
Dirk Hohndel
136b56eea2 Final update to ReleaseNotes for 4.0
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-12-15 14:26:11 -08:00
Dirk Hohndel
5c2ded5840 Disable https on Windows for 4.0
We appear to be missing the correct dll. I'm out of time trying to track
this down, so I just switched Subsurface to access divelogs.de via http on
Windwos.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-12-15 14:24:30 -08:00
Dirk Hohndel
d3065d811a Tools to create nice signed DMG
These are only useful for me, but having them in git makes my life so much
easier...

Instead of using macdeployqt to create my DMG I use the tool that I used for
Subsurface 3. This allows for much prettier DMG content as well.

Fixes #329

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-12-15 11:22:57 -08:00
Dirk Hohndel
79b8e558cd Fix install directory for Documentation on Mac
Can't believe I didn't catch that when I did the equivalent fix for Linux a
couple of days ago...

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-12-15 09:45:30 -08:00
Dirk Hohndel
be7978679a Make the SupportedDivecomputers.html match web site
I had forgotten that I used <dl> and not <ul> for the dive computers on
the web site.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-12-15 08:16:06 -08:00
Dirk Hohndel
a9b7b411dc Minor tweaks to INSTALL file
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-12-15 08:15:45 -08:00
Dirk Hohndel
e87fba995b User manual: new banner image
This reflects the Qt version (and again matches the one on the web site).

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-12-15 06:46:41 -08:00
Dirk Hohndel
e00733e538 Minor tweaks to the README
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-12-15 06:43:41 -08:00
Miika Turkia
2ac2ca7705 Tweaking man page to better reflect current status
Small tweaks to reflect the recent changes in Subsurface.

Signed-off-by: Miika Turkia <miika.turkia@gmail.com>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-12-14 20:19:58 -08:00
Dirk Hohndel
79c1f64800 Remove translations with insufficient coverage
Catalan, Croatian, Vietnamese and Indonesian all have less than 50%
coverage in their translations, so we had to remove them. Hebrew just
sneaked past this (rather arbitrary) cutoff.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-12-14 12:04:47 -08:00
Dirk Hohndel
4607fca54e Inching towards the 4.0 release
Updates to README, ReleaseNotes.txt and subsurface.pro

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-12-14 12:01:09 -08:00
Dirk Hohndel
d06eaf4efd Update translations
As always, I'm not the author.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-12-14 11:49:32 -08:00
Dirk Hohndel
4b98efb39c When editing multiple dives, only copy the cylinder type
Previously we would overwrite the gasmix as well as start and end
pressure even when editing multiple dives, which clearly is wrong.

Fixes #364

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-12-14 09:32:24 -08:00
Dirk Hohndel
27a0f91cff Correct install path for Documentation under Linux
One could argue that /usr/share/doc/subsurface is indeed correct, but we
look for the user-manual.html in /usr/share/subsurface/Documentation

Fixes #363

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-12-13 22:27:01 -08:00
Dirk Hohndel
d117becad8 Improve MainTab behavior when using the scroll wheel
This gets the behavior close to what we really want.
- scroll wheel no longer enters edit mode when over the tabWidget
- scroll wheel doesn't modify dateTimeEdit, nor does it enter edit mode
- scroll wheel still scrolls both the notes and the full widget

The only oddity is that when clicking on either the dateTimeEdit or the
tabWidget we don't immediately turn on the 'being edited' warning (as we
do for all the other widgets). For those two widgets the user has to press
a key before edit mode starts.

I think this Fixes #176

Reported-by: Linus Torvalds <torvalds@linux-foundation.org>
Ideas-by: Lubomir I. Ivanov <neolit123@gmail.com>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-12-13 21:18:54 -08:00