subsurface/qt-models
Berthold Stoeger fb6210a99a cleanup: invert control-flow when resetting the core structures
To reset the core data structures, the mobile and desktop UIs
were calling into the dive-list models, which then reset the
core data structures, themselves and the unrelated
locationinformation model. The UI code then reset various other
things, such as the TankInformation model or the map. . This was
unsatisfying from a control-flow perspective, as the models should
display the core data, not act on it. Moreover, this meant lots
of intricate intermodule-dependencies.

Thus, straighten up the control flow: give the C core the
possibility to send a "all data reset" event. And do that
in those functions that reset the core data structures.
Let each module react to this event by itself. This removes
inter-module dependencies. For example, the MainWindow now
doesn't have to reset the TankInfoModel or the MapWidget.

Then, to reset the core data structures, let the UI code
simply directly call the respective core functions.

Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
2020-05-07 08:43:27 -07:00
..
cleanertablemodel.cpp Cleanup: return directly from data() methods 2019-06-19 13:11:10 -07:00
cleanertablemodel.h CylindersModel: fold CHANGED() macro into setData() 2020-04-07 00:13:35 +02:00
CMakeLists.txt mobile: remove no longer used DiveListModel 2020-03-10 09:25:57 -07:00
completionmodels.cpp code cleanup: replace use of toStdVector() 2020-01-10 02:37:03 +09:00
completionmodels.h Add SPDX header to Qt models 2017-04-29 13:32:55 -07:00
cylindermodel.cpp core: always keep an empty cylinder at the end of the cylinder array 2020-05-01 12:36:28 +02:00
cylindermodel.h undo: show multiple dive warning when editing equipment 2020-04-07 00:13:35 +02:00
divecomputerextradatamodel.cpp qt-models: Change Q_UNUSED to no parameter name 2018-05-21 12:48:04 -07:00
divecomputerextradatamodel.h Cleanup: reinstate override modifiers 2018-09-29 15:23:25 -07:00
divecomputermodel.cpp Dive computers: turn QMultiMap into sorted vector 2018-06-17 06:53:13 +09:00
divecomputermodel.h Cleanup: reinstate override modifiers 2018-09-29 15:23:25 -07:00
diveimportedmodel.cpp Grammar: replaces 'indexes' by 'indices' 2020-03-11 08:26:30 -07:00
diveimportedmodel.h Grammar: replaces 'indexes' by 'indices' 2020-03-11 08:26:30 -07:00
divelocationmodel.cpp cleanup: invert control-flow when resetting the core structures 2020-05-07 08:43:27 -07:00
divelocationmodel.h cleanup: invert control-flow when resetting the core structures 2020-05-07 08:43:27 -07:00
divepicturemodel.cpp undo: make picture (media) deletion undoable 2020-05-06 13:58:09 -07:00
divepicturemodel.h undo: make picture (media) deletion undoable 2020-05-06 13:58:09 -07:00
diveplannermodel.cpp planner: remove conditional command-calls for mobile 2020-05-04 10:42:07 +02:00
diveplannermodel.h planner: send plan in calculatedPlanNotes 2020-05-04 10:42:07 +02:00
diveplotdatamodel.cpp cleanup: remove DivePlotDataModel::diveId 2020-04-30 14:14:13 -07:00
diveplotdatamodel.h cleanup: remove DivePlotDataModel::diveId 2020-04-30 14:14:13 -07:00
divesiteimportmodel.cpp Create DivesiteImportDialog to select sites to import 2019-05-06 10:48:44 +02:00
divesiteimportmodel.h Create DivesiteImportDialog to select sites to import 2019-05-06 10:48:44 +02:00
divesummarymodel.cpp mobile/dive-summary: use 64bit integers for statistics 2020-03-31 08:42:20 -07:00
divesummarymodel.h mobile/summary: add section headers 2020-02-08 10:29:36 -08:00
divetripmodel.cpp cleanup: invert control-flow when resetting the core structures 2020-05-07 08:43:27 -07:00
divetripmodel.h cleanup: invert control-flow when resetting the core structures 2020-05-07 08:43:27 -07:00
filtermodels.cpp cleanup: invert control-flow when resetting the core structures 2020-05-07 08:43:27 -07:00
filtermodels.h cleanup: invert control-flow when resetting the core structures 2020-05-07 08:43:27 -07:00
gpslistmodel.cpp cleanup: invert control-flow when resetting the core structures 2020-05-07 08:43:27 -07:00
gpslistmodel.h Cleanup: Make constructor of singletons private 2019-10-04 09:19:10 -07:00
maplocationmodel.cpp Filter: split out filter from model 2019-11-19 21:13:40 -08:00
maplocationmodel.h Cleanup: lower-case filenames in core/subsurface-qt/ 2020-02-04 02:16:46 +01:00
messagehandlermodel.cpp debug output: ensure our debug output is captured on Android 2020-04-18 09:00:21 -07:00
messagehandlermodel.h Cleanup: reinstate override modifiers 2018-09-29 15:23:25 -07:00
mobilelistmodel.cpp cleanup: invert control-flow when resetting the core structures 2020-05-07 08:43:27 -07:00
mobilelistmodel.h cleanup: invert control-flow when resetting the core structures 2020-05-07 08:43:27 -07:00
models.cpp Cylinders: access cylinders with get_cylinder() 2019-11-09 19:19:04 +01:00
models.h Cleanup: remove includes from qt-models/models.h 2019-07-18 05:42:55 -07:00
tankinfomodel.cpp cleanup: invert control-flow when resetting the core structures 2020-05-07 08:43:27 -07:00
tankinfomodel.h Cleanup: remove biggerString() functions 2019-04-29 13:06:39 -07:00
treemodel.cpp Cleanup: make DiveTripModel a global object 2018-09-01 07:48:43 -07:00
treemodel.h Cleanup: reinstate override modifiers 2018-09-29 15:23:25 -07:00
weightmodel.cpp undo: show multiple dive warning when editing equipment 2020-04-07 00:13:35 +02:00
weightmodel.h undo: show multiple dive warning when editing equipment 2020-04-07 00:13:35 +02:00
weightsysteminfomodel.cpp cleanup: invert control-flow when resetting the core structures 2020-05-07 08:43:27 -07:00
weightsysteminfomodel.h Cleanup: implement proper Qt-model semantics in WeightInfoModel 2019-04-29 13:06:39 -07:00
yearlystatisticsmodel.cpp Core: dynamically allocate the result of get_gas_used() 2019-11-09 19:19:04 +01:00
yearlystatisticsmodel.h Show average max depth in yearly statistics 2018-12-17 12:18:26 +01:00