1 /* SPDX-FileCopyrightText: 2020-2021 Tobias Leupold <tl@l3u.de> 2 3 SPDX-License-Identifier: GPL-3.0-or-later OR LicenseRef-KDE-Accepted-GPL 4 */ 5 6 #ifndef SETTINGS_H 7 #define SETTINGS_H 8 9 // Local includes 10 #include "KGeoTag.h" 11 #include "Coordinates.h" 12 13 // KDE includes 14 #include <KSharedConfig> 15 16 // Qt includes 17 #include <QColor> 18 #include <QHash> 19 20 class Settings : public QObject 21 { 22 Q_OBJECT 23 24 public: 25 explicit Settings(QObject *parent); 26 27 void saveMainWindowState(const QByteArray &data); 28 QByteArray mainWindowState() const; 29 30 void saveShowCrosshairs(bool state); 31 bool showCrosshairs() const; 32 33 void saveFloatersVisibility(const QHash<QString, bool> &data); 34 QHash<QString, bool> floatersVisibility(); 35 36 void saveMapCenter(const Coordinates &coordinates); 37 Coordinates mapCenter() const; 38 39 void saveZoom(int zoom); 40 int zoom() const; 41 42 void saveLastOpenPath(const QString &path); 43 QString lastOpenPath() const; 44 45 void saveSplitImagesList(bool state); 46 bool splitImagesList() const; 47 48 void saveThumbnailSize(int size); 49 int thumbnailSize() const; 50 51 void savePreviewSize(int size); 52 int previewSize() const; 53 54 void saveExactMatchTolerance(int seconds); 55 int exactMatchTolerance() const; 56 57 void saveMaximumInterpolationInterval(int seconds); 58 int maximumInterpolationInterval() const; 59 60 void saveMaximumInterpolationDistance(int meters); 61 int maximumInterpolationDistance() const; 62 63 void saveExcludeManuallyTaggedWhenReassigning(bool state); 64 bool excludeManuallyTaggedWhenReassigning() const; 65 66 void saveLookupElevationAutomatically(bool state); 67 bool lookupElevationAutomatically() const; 68 69 void saveElevationDataset(const QString &id); 70 QString elevationDataset() const; 71 72 void saveTrackColor(const QColor &color); 73 QColor trackColor() const; 74 75 void saveTrackWidth(int width); 76 int trackWidth() const; 77 78 void saveTrackStyle(Qt::PenStyle style); 79 Qt::PenStyle trackStyle() const; 80 81 void saveWriteMode(const QString &writeMode); 82 QString writeMode() const; 83 84 void saveCreateBackups(bool state); 85 bool createBackups() const; 86 87 void saveBookmarks(const QHash<QString, Coordinates> *bookmarks); 88 QHash<QString, Coordinates> bookmarks() const; 89 90 void saveDefaultMatchingMode(KGeoTag::SearchType mode); 91 KGeoTag::SearchType defaultMatchingMode() const; 92 93 private: // Variables 94 KSharedConfig::Ptr m_config; 95 96 }; 97 98 #endif // SETTINGS_H 99