1 /* SPDX-FileCopyrightText: 2020-2021 Tobias Leupold <tobias.leupold@gmx.de>
2 
3    SPDX-License-Identifier: GPL-3.0-or-later OR LicenseRef-KDE-Accepted-GPL
4 */
5 
6 // Local includes
7 #include "SharedObjects.h"
8 #include "Settings.h"
9 #include "ImagesModel.h"
10 #include "GeoDataModel.h"
11 #include "GpxEngine.h"
12 #include "ElevationEngine.h"
13 #include "MapWidget.h"
14 #include "CoordinatesFormatter.h"
15 
SharedObjects(QObject * parent)16 SharedObjects::SharedObjects(QObject *parent) : QObject(parent)
17 {
18     m_settings = new Settings(this);
19     m_imagesModel = new ImagesModel(this, m_settings->splitImagesList(),
20                                     m_settings->thumbnailSize(), m_settings->previewSize());
21     m_geoDataModel = new GeoDataModel(this);
22     m_gpxEngine = new GpxEngine(this, m_geoDataModel);
23     m_elevationEngine = new ElevationEngine(this, m_settings);
24     m_mapWidget = new MapWidget(this);
25     m_coordinatesFormatter = new CoordinatesFormatter(this, &m_locale);
26 }
27 
settings() const28 Settings *SharedObjects::settings() const
29 {
30     return m_settings;
31 }
32 
imagesModel() const33 ImagesModel *SharedObjects::imagesModel() const
34 {
35     return m_imagesModel;
36 }
37 
geoDataModel() const38 GeoDataModel *SharedObjects::geoDataModel() const
39 {
40     return m_geoDataModel;
41 }
42 
gpxEngine() const43 GpxEngine *SharedObjects::gpxEngine() const
44 {
45     return m_gpxEngine;
46 }
47 
elevationEngine() const48 ElevationEngine *SharedObjects::elevationEngine() const
49 {
50     return m_elevationEngine;
51 }
52 
mapWidget() const53 MapWidget *SharedObjects::mapWidget() const
54 {
55     return m_mapWidget;
56 }
57 
coordinatesFormatter() const58 CoordinatesFormatter *SharedObjects::coordinatesFormatter() const
59 {
60     return m_coordinatesFormatter;
61 }
62 
setBookmarks(const QHash<QString,Coordinates> * bookmarks)63 void SharedObjects::setBookmarks(const QHash<QString, Coordinates> *bookmarks)
64 {
65     m_bookmarks = bookmarks;
66 }
67 
bookmarks() const68 const QHash<QString, Coordinates> *SharedObjects::bookmarks() const
69 {
70     return m_bookmarks;
71 }
72 
locale() const73 const QLocale *SharedObjects::locale() const
74 {
75     return &m_locale;
76 }
77