subsurface/desktop-widgets
John Plaxco 53e31c48ee Improve error reporting when exporting a selection of 0 dives.
If no dives are selected when trying to export a selection, a message
is shown that no dives were selected, but it's immediately hidden
behind a message saying that a temporary file could not be created.
In fact, the creation of the temporary file wasn't never attempted,
so the message that the user actually sees is misleading.

The solution chosen here is to duplicate the check that at least some
dives are selected, and abort early if that case is detected, rather
than continuing on to show the additional misleading message. Not
elegant, but it gets the job done.

Better solutions to this include refactoring prepare_dives_for_divelogs
to return something more descriptive than a bool, remove that check
from prepare_dives_for_divelogs entirely since it doesn't seem to be
a good fit there, or switch to exceptions for handling these problems
rather than return values. I don't have sufficient familiarity with
the codebase to attempt these more invasive changes, but they
should be considered in the future.

On a final note, some of the other error messages in this file start
with a capital letter, but the one relevant to this particular PR
does not. Again, I'm not familiar enough with the codebase (or
translations) to know if that's safe to change, so I'll leave that
for another time or another developer.

Reported-by: John Plaxco
Signed-off-by: John Plaxco <john@johnplaxco.com>
2018-12-23 04:55:28 +01:00
..
css Move qt-ui to desktop-widgets 2015-10-30 10:36:49 -07:00
plugins Cleanup: Turn widget accessor-functions into simple pointers 2018-10-13 21:42:53 -04:00
preferences Fix bug in for loop that can lead to segfault 2018-10-25 23:23:03 +01:00
statistics Cleanup: reinstate override modifiers 2018-09-29 15:23:25 -07:00
tab-widgets Show average max depth in statistics tab 2018-12-17 12:18:26 +01:00
about.cpp Get ready for 2018 2017-12-30 08:23:22 -08:00
about.h Add SPDX header to desktop widgets 2017-04-29 13:32:55 -07:00
about.ui Use icons relative path. 2017-11-30 23:14:46 -08:00
btdeviceselectiondialog.cpp Bluetooth: use standard Qt code on Windows 2018-09-30 08:09:37 -07:00
btdeviceselectiondialog.h Bluetooth: use standard Qt code on Windows 2018-09-30 08:09:37 -07:00
btdeviceselectiondialog.ui Introduce mode field in Bluetooth device selection dialog 2017-11-16 14:26:51 +01:00
CMakeLists.txt Drop old filter code 2018-12-14 01:05:18 +08:00
command.cpp Undo: make adding of planned dive undo-able 2018-10-11 16:22:27 -07:00
command.h Undo: make adding of planned dive undo-able 2018-10-11 16:22:27 -07:00
command_base.cpp Undo: isolate undo-commands 2018-10-11 16:22:27 -07:00
command_base.h Undo: isolate undo-commands 2018-10-11 16:22:27 -07:00
command_divelist.cpp core: shift dive time in correct direction 2018-12-21 08:08:02 +01:00
command_divelist.h Undo: make adding of planned dive undo-able 2018-10-11 16:22:27 -07:00
configuredivecomputerdialog.cpp Cleanup: we don't support configuring a Uemis SDA 2018-08-28 12:03:03 -07:00
configuredivecomputerdialog.h Cleanup: reinstate override modifiers 2018-09-29 15:23:25 -07:00
configuredivecomputerdialog.ui Configure ostc3: Remove obsoleted setting 2018-04-27 21:33:47 +03:00
divecomponentselection.ui Use icons relative path. 2017-11-30 23:14:46 -08:00
divecomputermanagementdialog.cpp Dive computers: turn QMultiMap into sorted vector 2018-06-17 06:53:13 +09:00
divecomputermanagementdialog.h Cleanup: fold DiveComputerManagementDialog::update() into init() 2018-06-17 06:53:13 +09:00
divecomputermanagementdialog.ui Use icons relative path. 2017-11-30 23:14:46 -08:00
divelistview.cpp Drop old filter code 2018-12-14 01:05:18 +08:00
divelistview.h Dive list: remove sortColumn and currentOrder members 2018-11-05 07:55:53 -08:00
divelogexportdialog.cpp Dive site: replace dive->dive_site_uuid by dive_site 2018-10-29 00:09:31 +00:00
divelogexportdialog.h Cleanup: fold core/helpers.h into core/qthelper.h 2018-06-04 08:50:10 -07:00
divelogexportdialog.ui Desktop UI: small layout correction export dialog 2018-09-16 08:07:33 -07:00
divelogimportdialog.cpp Drop old filter code 2018-12-14 01:05:18 +08:00
divelogimportdialog.h Import: Make DiveLogImportDialog modal 2018-10-04 10:22:11 +02:00
divelogimportdialog.ui Use icons relative path. 2017-11-30 23:14:46 -08:00
divepicturewidget.cpp Dive media: transport dive-id in drag'n'drop events 2018-07-18 09:06:37 -07:00
divepicturewidget.h Cleanup: reinstate override modifiers 2018-09-29 15:23:25 -07:00
diveplanner.cpp core/settings: change bestmixend to int, to allow qml to work 2018-09-11 17:25:00 -07:00
diveplanner.h Cleanup: replace virtual by override where appropriate 2018-07-31 11:02:34 +02:00
diveplanner.ui Choose water presets from a qcombobox in planner, custom value possible 2018-03-02 08:38:22 -08:00
diveshareexportdialog.cpp Revert "desktop-widgets: remove QSettings from desktop-widgets" 2018-08-29 03:09:10 -07:00
diveshareexportdialog.h Random whitespace cleanup 2017-05-27 11:07:20 -07:00
diveshareexportdialog.ui Move qt-ui to desktop-widgets 2015-10-30 10:36:49 -07:00
downloadfromdivecomputer.cpp Import: unglobalize downloadTable 2018-12-17 07:37:32 -08:00
downloadfromdivecomputer.h Bluetooth: run a discovery agent for BT/BLE dive computers on macOS 2018-10-12 08:22:44 -07:00
downloadfromdivecomputer.ui Desktop/remember DCs: avoid highlighted button 2018-09-23 11:49:30 -07:00
filterwidget2.cpp Hide unimplemented components from search 2018-12-14 01:05:18 +08:00
filterwidget2.h Handle Show / Close of the Filter Box 2018-12-14 01:05:18 +08:00
filterwidget2.ui Hide unimplemented components from search 2018-12-14 01:05:18 +08:00
findmovedimagesdialog.cpp UI change of "images"/"photo" to "media" or "media files" 2018-07-15 09:38:12 -07:00
findmovedimagesdialog.h Dive pictures: implement FindMovedImagesDialog 2018-07-04 02:27:36 +08:00
findmovedimagesdialog.ui UI change of "images"/"photo" to "media" or "media files" 2018-07-15 09:38:12 -07:00
groupedlineedit.cpp Unused code: GroupedLineEdit::removeAllColors() 2018-01-10 16:45:42 +01:00
groupedlineedit.h Cleanup: reinstate override modifiers 2018-09-29 15:23:25 -07:00
kmessagewidget.cpp Add SPDX header to desktop widgets 2017-04-29 13:32:55 -07:00
kmessagewidget.h Cleanup: reinstate override modifiers 2018-09-29 15:23:25 -07:00
listfilter.ui Start to implement a simplified version of the filter widget 2018-12-14 01:05:18 +08:00
locationinformation.cpp Drop old filter code 2018-12-14 01:05:18 +08:00
locationinformation.h Dive site: remove [start|stop]FilterDiveSite signals 2018-10-29 00:09:31 +00:00
locationInformation.ui Use correct alias for satellite icon for revers geo lookup 2018-01-27 12:29:00 -08:00
mainwindow.cpp Drop old filter code 2018-12-14 01:05:18 +08:00
mainwindow.h Drop old filter code 2018-12-14 01:05:18 +08:00
mainwindow.ui Drop old filter code 2018-12-14 01:05:18 +08:00
mapwidget.cpp Dive site: pass pointer-to-dive_site via QVariant 2018-10-29 00:09:31 +00:00
mapwidget.h Dive site: pass pointer to updateDiveSiteCoordinates() 2018-10-29 00:09:31 +00:00
modeldelegates.cpp Drop old filter code 2018-12-14 01:05:18 +08:00
modeldelegates.h Cleanup: reinstate override modifiers 2018-09-29 15:23:25 -07:00
notificationwidget.cpp Use queued connection to thread-safe MainWindow error handling 2018-01-31 14:47:26 +01:00
notificationwidget.h Use queued connection to thread-safe MainWindow error handling 2018-01-31 14:47:26 +01:00
plannerDetails.ui Bring back style sheet HTML for planner output 2017-02-24 01:06:09 -08:00
plannerSettings.ui Planner and profile limit minimum GFlow to 10 and minimum GFhigh to 40 2017-11-13 11:53:55 +01:00
printdialog.cpp Drop old filter code 2018-12-14 01:05:18 +08:00
printdialog.h Cleanup: replace virtual by override where appropriate 2018-07-31 11:02:34 +02:00
printer.cpp Cleanup: Turn widget accessor-functions into simple pointers 2018-10-13 21:42:53 -04:00
printer.h Add SPDX header to desktop widgets 2017-04-29 13:32:55 -07:00
printoptions.cpp Cleanup: fold core/helpers.h into core/qthelper.h 2018-06-04 08:50:10 -07:00
printoptions.h cleanup: Uninitialized pointer field 2017-12-29 09:14:20 -08:00
printoptions.ui Move qt-ui to desktop-widgets 2015-10-30 10:36:49 -07:00
qtwaitingspinner.cpp Move qt-ui to desktop-widgets 2015-10-30 10:36:49 -07:00
qtwaitingspinner.h Move qt-ui to desktop-widgets 2015-10-30 10:36:49 -07:00
renumber.ui Use icons relative path. 2017-11-30 23:14:46 -08:00
searchbar.ui Use better aliases for icons. 2017-11-30 23:14:46 -08:00
setpoint.ui Use icons relative path. 2017-11-30 23:14:46 -08:00
shiftimagetimes.ui UI change of "images"/"photo" to "media" or "media files" 2018-07-15 09:38:12 -07:00
shifttimes.ui Use icons relative path. 2017-11-30 23:14:46 -08:00
simplewidgets.cpp Drop old filter code 2018-12-14 01:05:18 +08:00
simplewidgets.h Drop old filter code 2018-12-14 01:05:18 +08:00
starwidget.cpp Cleanup: remove parameter from currentDiveChanged signal 2018-07-30 12:20:26 -07:00
starwidget.h Cleanup: reinstate override modifiers 2018-09-29 15:23:25 -07:00
subsurfacewebservices.cpp Improve error reporting when exporting a selection of 0 dives. 2018-12-23 04:55:28 +01:00
subsurfacewebservices.h Cleanup: Devirtualize WebServices::downloadTimedOut() 2018-09-29 15:16:11 -07:00
tableview.cpp Use better aliases for icons. 2017-11-30 23:14:46 -08:00
tableview.h Cleanup: reinstate override modifiers 2018-09-29 15:23:25 -07:00
tableview.ui Move qt-ui to desktop-widgets 2015-10-30 10:36:49 -07:00
tagwidget.cpp Cleanup: rename MainWindow member variables 2018-10-13 21:42:53 -04:00
tagwidget.h Add SPDX header to desktop widgets 2017-04-29 13:32:55 -07:00
templateedit.cpp Warnings: replace memcpy by assignment 2018-11-19 13:51:03 -08:00
templateedit.h Add SPDX header to desktop widgets 2017-04-29 13:32:55 -07:00
templateedit.ui templateedit.ui: give the layout for "Border width" unique name 2017-03-12 09:19:03 -07:00
templatelayout.cpp Statistics: only consider selected dives in HTML export statistics 2018-10-07 17:50:51 +03:00
templatelayout.h Translations: unify gettextFromC::tr() and QObject::tr() 2018-07-04 05:33:31 +08:00
updatemanager.cpp update-manager: actually remember that we asked the user 2018-10-02 13:20:44 -07:00
updatemanager.h Add SPDX header to desktop widgets 2017-04-29 13:32:55 -07:00
urldialog.ui UI change of "images"/"photo" to "media" or "media files" 2018-07-15 09:38:12 -07:00
usermanual.cpp Cleanup: fold core/helpers.h into core/qthelper.h 2018-06-04 08:50:10 -07:00
usermanual.h Desktop: Derive UserManual from QDialog 2018-05-31 21:29:29 +03:00
usersurvey.cpp Revert "desktop-widgets: remove QSettings from desktop-widgets" 2018-08-29 03:09:10 -07:00
usersurvey.h Add SPDX header to desktop widgets 2017-04-29 13:32:55 -07:00
usersurvey.ui fix: User survey UI. 2017-03-06 06:40:00 -08:00
webservices.ui Use icons relative path. 2017-11-30 23:14:46 -08:00