6#include "GeoDataUpdate.h"
8#include "GeoDataCreate.h"
9#include "GeoDataDelete.h"
10#include "GeoDataChange.h"
11#include "GeoDataTypes.h"
18class GeoDataUpdatePrivate
21 GeoDataUpdatePrivate();
22 GeoDataCreate* m_create;
23 GeoDataDelete* m_delete;
24 GeoDataChange* m_change;
28GeoDataUpdatePrivate::GeoDataUpdatePrivate() :
29 m_create( nullptr ), m_delete( nullptr ), m_change( nullptr )
33GeoDataUpdate::GeoDataUpdate() :
34 d( new GeoDataUpdatePrivate )
38GeoDataUpdate::GeoDataUpdate(
const Marble::GeoDataUpdate &other ) :
39 GeoDataObject(), d( new GeoDataUpdatePrivate( *other.d ) )
43GeoDataUpdate &GeoDataUpdate::operator=(
const GeoDataUpdate &other )
45 GeoDataObject::operator =( other );
50bool GeoDataUpdate::operator==(
const GeoDataUpdate& other)
const
52 bool const changeEmpty = !d->m_change || d->m_change->size() == 0;
53 bool const otherChangeEmpty = !other.d->m_change || other.d->m_change->size() == 0;
55 if( changeEmpty != otherChangeEmpty ) {
57 }
else if( d->m_change && other.d->m_change && *d->m_change != *other.d->m_change ) {
61 return d->m_targetHref == other.d->m_targetHref;
64bool GeoDataUpdate::operator!=(
const GeoDataUpdate& other)
const
69GeoDataUpdate::~GeoDataUpdate()
74const char *GeoDataUpdate::nodeType()
const
76 return GeoDataTypes::GeoDataUpdateType;
79QString GeoDataUpdate::targetHref()
const
81 return d->m_targetHref;
84void GeoDataUpdate::setTargetHref(
const QString &targetHref )
86 d->m_targetHref = targetHref;
89const GeoDataChange *GeoDataUpdate::change()
const
94GeoDataChange *GeoDataUpdate::change()
99void GeoDataUpdate::setChange( GeoDataChange* change )
102 d->m_change = change;
104 d->m_change->setParent(
this );
108const GeoDataCreate *GeoDataUpdate::create()
const
113GeoDataCreate *GeoDataUpdate::create()
118void GeoDataUpdate::setCreate( GeoDataCreate* create )
127const GeoDataDelete *GeoDataUpdate::getDelete()
const
132GeoDataDelete *GeoDataUpdate::getDelete()
137void GeoDataUpdate::setDelete( GeoDataDelete* dataDelete )
140 d->m_delete = dataDelete;
142 d->m_delete->setParent(
this );
QAction * create(GameStandardAction id, const QObject *recvr, const char *slot, QObject *parent)
Binds a QML item to a specific geodetic location in screen coordinates.
void setParent(QObject *parent)
bool operator==(const QGraphicsApiFilter &reference, const QGraphicsApiFilter &sample)