Marble

MergeItem.h
1// SPDX-License-Identifier: LGPL-2.1-or-later
2//
3// SPDX-FileCopyrightText: 2013 Utku Aydın <utkuaydin34@gmail.com>
4//
5
6#ifndef MERGEITEM_H
7#define MERGEITEM_H
8
9#include "GeoDataPlacemark.h"
10#include "marble_export.h"
11
12#include <QObject>
13
14namespace Marble
15{
16
17class MARBLE_EXPORT MergeItem : public QObject
18{
19 Q_OBJECT
20
21public:
22 MergeItem();
23
24 Q_PROPERTY(QString pathA READ pathA WRITE setPathA NOTIFY pathAChanged)
25 Q_PROPERTY(QString pathB READ pathB WRITE setPathB NOTIFY pathBChanged)
26 Q_PROPERTY(GeoDataPlacemark placemarkA READ placemarkA WRITE setPlacemarkA NOTIFY placemarkAChanged)
27 Q_PROPERTY(GeoDataPlacemark placemarkB READ placemarkB WRITE setPlacemarkB NOTIFY placemarkBChanged)
28 Q_PROPERTY(QString nameA READ nameA NOTIFY nameAChanged())
29 Q_PROPERTY(QString nameB READ nameB NOTIFY nameBChanged())
30 Q_PROPERTY(QString descriptionA READ descriptionA NOTIFY descriptionAChanged())
31 Q_PROPERTY(QString descriptionB READ descriptionB NOTIFY descriptionBChanged())
32 Q_PROPERTY(MergeItem::Action actionA READ actionA WRITE setActionA NOTIFY actionAChanged)
33 Q_PROPERTY(MergeItem::Action actionB READ actionB WRITE setActionB NOTIFY actionBChanged)
34 Q_PROPERTY(MergeItem::Resolution resolution READ resolution WRITE setResolution NOTIFY resolutionChanged)
35
36 enum Resolution {
37 None,
38 A,
39 B
40 };
41
42 enum Action {
43 Changed,
45 };
46
47 QString pathA() const;
48 void setPathA(const QString &path);
49
50 QString pathB() const;
51 void setPathB(const QString &path);
52
53 GeoDataPlacemark placemarkA() const;
54 void setPlacemarkA(const GeoDataPlacemark &placemark);
55
56 GeoDataPlacemark placemarkB() const;
57 void setPlacemarkB(const GeoDataPlacemark &placemark);
58
59 QString nameA() const;
60 QString nameB() const;
61
62 QString descriptionA() const;
63 QString descriptionB() const;
64
65 MergeItem::Action actionA() const;
66 void setActionA(MergeItem::Action action);
67
68 MergeItem::Action actionB() const;
69 void setActionB(MergeItem::Action action);
70
71 MergeItem::Resolution resolution() const;
72 void setResolution(MergeItem::Resolution resolution);
73
74Q_SIGNALS:
75 void pathAChanged();
76 void pathBChanged();
77 void placemarkAChanged();
78 void placemarkBChanged();
79 void nameAChanged();
80 void nameBChanged();
81 void descriptionAChanged();
82 void descriptionBChanged();
83 void actionAChanged();
84 void actionBChanged();
85 void resolutionChanged();
86
87private:
88 QString m_pathA;
89 QString m_pathB;
90 GeoDataPlacemark m_placemarkA;
91 GeoDataPlacemark m_placemarkB;
92 MergeItem::Action m_actionA;
93 MergeItem::Action m_actionB;
94 MergeItem::Resolution m_resolution;
95};
96
97}
98
99#endif // MERGEITEM_H
AKONADI_MIME_EXPORT const char Deleted[]
Binds a QML item to a specific geodetic location in screen coordinates.
This file is part of the KDE documentation.
Documentation copyright © 1996-2024 The KDE developers.
Generated on Fri Nov 8 2024 12:02:42 by doxygen 1.12.0 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.