subsurface/desktop-widgets
Berthold Stoeger 9c253ee6c5 core: introduce divelog structure
The parser API was very annoying, as a number of tables
to-be-filled were passed in as pointers. The goal of this
commit is to collect all these tables in a single struct.
This should make it (more or less) clear what is actually
written into the divelog files.

Moreover, it should now be rather easy to search for
instances, where the global logfile is accessed (and it
turns out that there are many!).

The divelog struct does not contain the tables as substructs,
but only collects pointers. The idea is that the "divelog.h"
file can be included without all the other files describing
the numerous tables.

To make it easier to use from C++ parts of the code, the
struct implements a constructor and a destructor. Sadly,
we can't use smart pointers, since the pointers are accessed
from C code. Therfore the constructor and destructor are
quite complex.

The whole commit is large, but was mostly an automatic
conversion.

One oddity of note: the divelog structure also contains
the "autogroup" flag, since that is saved in the divelog.
This actually fixes a bug: Before, when importing dives
from a different log, the autogroup flag was overwritten.
This was probably not intended and does not happen anymore.

Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
2023-04-14 21:20:23 +02:00
..
css
preferences Map Short Names - add preference setting 2022-08-21 18:53:35 -07:00
qml statistics: don't import QtQuick in StatsView QML file 2022-11-19 15:07:07 -08:00
tab-widgets Cylindermodel: Improve editing of tank use 2023-02-07 14:20:29 +01:00
about.cpp cleanup: don't add QKeySequence values 2022-03-12 08:28:32 -08:00
about.h cleanup: fix deprecated QFlags use 2020-10-26 19:27:03 -07:00
about.ui
addfilterpreset.ui filter: create a primitive "create filter preset" dialog 2020-09-29 16:13:03 -07:00
btdeviceselectiondialog.cpp Qt6: Bluetooth API changes 2022-03-12 08:28:32 -08:00
btdeviceselectiondialog.h cleanup: remove QPointer instances 2020-12-17 13:03:56 -08:00
btdeviceselectiondialog.ui
CMakeLists.txt statistics: remove old unused statistics code 2022-11-19 15:03:30 -08:00
configuredivecomputerdialog.cpp Desktop: Add option to force overwrite firmware for OSTC4. 2023-03-18 00:11:08 +13:00
configuredivecomputerdialog.h cleanup: use safe connect() in ConfigureDiveComputerDialog 2020-10-06 10:38:45 -07:00
configuredivecomputerdialog.ui Desktop: Add option to force overwrite firmware for OSTC4. 2023-03-18 00:11:08 +13:00
divecomponentselection.ui core: replace dive master by dive guide 2022-02-15 09:35:43 -08:00
divelistview.cpp Desktop: Add notes column to dive list table. 2023-03-16 17:53:20 +01:00
divelistview.h cleanup: mark DiveListView::selectionChanged() as overridden 2022-08-28 13:34:13 -07:00
divelogexportdialog.cpp cleanup: fix incorrect QFuture return value 2022-03-12 08:28:32 -08:00
divelogexportdialog.h
divelogexportdialog.ui
divelogimportdialog.cpp core: introduce divelog structure 2023-04-14 21:20:23 +02:00
divelogimportdialog.h parser: replace params[] code by new xml_params struct 2020-10-23 18:17:02 -07:00
divelogimportdialog.ui
divepicturewidget.cpp cleanup: remove unnecessary includes from divepicturewidget.cpp 2020-12-03 10:32:20 -08:00
divepicturewidget.h
diveplanner.cpp Desktop: Fix time format in dive planner. 2023-03-28 20:37:21 -07:00
diveplanner.h profile: move DiveHandler to profile-widget folder 2020-12-12 15:52:40 -08:00
diveplanner.ui
diveshareexportdialog.cpp Qt6: move connection into C++ source 2022-03-12 08:28:32 -08:00
diveshareexportdialog.h
diveshareexportdialog.ui Qt6: move connection into C++ source 2022-03-12 08:28:32 -08:00
divesiteimportdialog.cpp core: fold display.h into profile.h 2022-03-13 15:07:33 -07:00
divesiteimportdialog.h
divesiteimportdialog.ui
divesitelistview.cpp core: introduce divelog structure 2023-04-14 21:20:23 +02:00
divesitelistview.h desktop: make dive site list an independent widget 2022-09-23 15:50:49 +02:00
divesitelistview.ui desktop: make dive site list an independent widget 2022-09-23 15:50:49 +02:00
downloadfromdivecomputer.cpp core: introduce divelog structure 2023-04-14 21:20:23 +02:00
downloadfromdivecomputer.h Qt6: if we want the QString argument we need the TextChanged slot 2022-03-12 08:28:32 -08:00
downloadfromdivecomputer.ui
filterconstraintwidget.cpp cleanup: Fix a Coverity warning 2022-02-15 09:30:43 -08:00
filterconstraintwidget.h
filterwidget.cpp desktop: fold ApplicationState into MainWindow 2021-02-17 07:26:55 -08:00
filterwidget.h cleanup: rename FilterWidget2 to FilterWidget 2020-09-29 16:14:31 -07:00
filterwidget.ui cleanup: rename FilterWidget2 to FilterWidget 2020-09-29 16:14:31 -07:00
findmovedimagesdialog.cpp
findmovedimagesdialog.h
findmovedimagesdialog.ui
groupedlineedit.cpp Qt6: add include files to keep QVectorIterator working 2022-03-12 08:28:32 -08:00
groupedlineedit.h
importgps.cpp
importgps.h
importgps.ui
kmessagewidget.cpp cleanup: prevent distracing conversion warnings 2022-03-12 08:28:32 -08:00
kmessagewidget.h
listfilter.ui
locationinformation.cpp core: introduce divelog structure 2023-04-14 21:20:23 +02:00
locationinformation.h desktop: make DiveLocationModel entries "editable" 2022-08-22 09:20:45 -07:00
locationinformation.ui
mainwindow.cpp core: introduce divelog structure 2023-04-14 21:20:23 +02:00
mainwindow.h desktop: remember previous state when switching to dive site mode 2022-09-23 15:50:50 +02:00
mainwindow.ui desktop: make dive site list an independent widget 2022-09-23 15:50:49 +02:00
mapwidget.cpp map: don't explicitly reload the map from the mainwindow 2022-09-15 12:16:32 -07:00
mapwidget.h
modeldelegates.cpp Cylindermodel: Improve editing of tank use 2023-02-07 14:20:29 +01:00
modeldelegates.h Use combo box for moving sensor data 2022-09-03 13:38:34 -07:00
notificationwidget.cpp cleanup: fix incorrect QFuture return value 2022-03-12 08:28:32 -08:00
notificationwidget.h cleanup: fix incorrect QFuture return value 2022-03-12 08:28:32 -08:00
plannerDetails.ui
plannerSettings.ui
printdialog.cpp Add printing option for page orientation 2023-03-28 21:08:37 -07:00
printdialog.h planner: pass in_planner down to TemplateLayout 2021-02-17 07:26:55 -08:00
printer.cpp profile: merge plotDive() into draw() call 2021-12-17 11:54:23 -08:00
printer.h profile: for printing/mobile access ProfileScene directly 2021-12-17 11:54:23 -08:00
printoptions.cpp Add printing option for page orientation 2023-03-28 21:08:37 -07:00
printoptions.h Add printing option for page orientation 2023-03-28 21:08:37 -07:00
printoptions.ui Add printing option for page orientation 2023-03-28 21:08:37 -07:00
profilewidget.cpp profile: reverse plotting and showing of profile 2022-10-30 15:02:36 -07:00
profilewidget.h profile: automatically enter edit mode 2022-03-12 18:33:34 +01:00
profilewidget.ui profile: remove profile widget code from mainwindow 2021-12-17 11:54:23 -08:00
qtwaitingspinner.cpp cleanup: prevent distracing conversion warnings 2022-03-12 08:28:32 -08:00
qtwaitingspinner.h
renumber.ui
searchbar.ui
setpoint.ui
shiftimagetimes.ui desktop/image-time-shift: reorder UI 2021-09-22 09:09:12 -07:00
shifttimes.ui cleanup: remove duplicate connections in .ui files 2022-03-12 08:28:32 -08:00
simplewidgets.cpp desktop: pass dive list to ShiftTimesDialog 2023-01-18 15:42:47 -08:00
simplewidgets.h desktop: pass dive list to ShiftTimesDialog 2023-01-18 15:42:47 -08:00
starwidget.cpp cleanup: remove reference to deprecated enum value 2020-10-26 19:27:03 -07:00
starwidget.h cleanup: fix deprecated QFlags use 2020-10-26 19:27:03 -07:00
statswidget.cpp Qt6: prevent QML object from being garbage collected 2022-03-12 08:28:32 -08:00
statswidget.h Qt6: prevent QML object from being garbage collected 2022-03-12 08:28:32 -08:00
statswidget.ui statistics: add a sort mode for categorical bar charts 2022-01-04 11:14:24 -08:00
subsurfacewebservices.cpp core: introduce divelog structure 2023-04-14 21:20:23 +02:00
subsurfacewebservices.h Qt6: update the connect calls for QNetworkReply 2022-04-18 07:24:39 +02:00
tableview.cpp desktop: fix saving of column-widths of device and site tables 2020-11-07 11:37:51 -08:00
tableview.h
tableview.ui
tagwidget.cpp desktop: let tag-widget completion popup accept composition events 2022-08-13 11:19:37 -07:00
tagwidget.h desktop: improve composition on TagWidgets 2022-08-13 11:19:37 -07:00
templateedit.cpp planner: pass in_planner down to TemplateLayout 2021-02-17 07:26:55 -08:00
templateedit.h printing: move #includes from headers to source files 2020-12-17 13:03:56 -08:00
templateedit.ui
templatelayout.cpp cleanup: move minute formating to format-string.cpp 2022-09-03 13:49:02 -07:00
templatelayout.h planner: pass in_planner down to TemplateLayout 2021-02-17 07:26:55 -08:00
textedit.cpp
textedit.h
tripselectiondialog.cpp core: introduce divelog structure 2023-04-14 21:20:23 +02:00
tripselectiondialog.h desktop: add trip selection dialog 2020-10-03 10:01:13 -07:00
tripselectiondialog.ui desktop: add trip selection dialog 2020-10-03 10:01:13 -07:00
updatemanager.cpp desktop/update-check: fix logic when to ask about update check 2021-01-06 10:18:23 -08:00
updatemanager.h
urldialog.ui Allow more than one media file when importing from the web 2022-04-01 08:28:05 -07:00
usermanual.cpp cleanup: don't initialize flags with just an integer 2020-10-26 19:27:03 -07:00
usermanual.h
webservices.ui