Changeset View
Changeset View
Standalone View
Standalone View
kdevplatform/vcs/vcsrevision.cpp
Show All 30 Lines | |||||
31 | 31 | | |||
32 | VcsRevision VcsRevision::createSpecialRevision( KDevelop::VcsRevision::RevisionSpecialType _type ) | 32 | VcsRevision VcsRevision::createSpecialRevision( KDevelop::VcsRevision::RevisionSpecialType _type ) | ||
33 | { | 33 | { | ||
34 | VcsRevision rev; | 34 | VcsRevision rev; | ||
35 | rev.setRevisionValue( QVariant::fromValue<KDevelop::VcsRevision::RevisionSpecialType>( _type ), VcsRevision::Special ); | 35 | rev.setRevisionValue( QVariant::fromValue<KDevelop::VcsRevision::RevisionSpecialType>( _type ), VcsRevision::Special ); | ||
36 | return rev; | 36 | return rev; | ||
37 | } | 37 | } | ||
38 | 38 | | |||
39 | class VcsRevisionPrivate | 39 | class VcsRevisionPrivate : public QSharedData | ||
40 | { | 40 | { | ||
41 | public: | 41 | public: | ||
42 | QVariant value; | 42 | QVariant value; | ||
43 | VcsRevision::RevisionType type; | 43 | VcsRevision::RevisionType type; | ||
44 | QMap<QString,QVariant> internalValues; | 44 | QMap<QString,QVariant> internalValues; | ||
45 | }; | 45 | }; | ||
46 | 46 | | |||
47 | VcsRevision::VcsRevision() | 47 | VcsRevision::VcsRevision() | ||
48 | : d(new VcsRevisionPrivate) | 48 | : d(new VcsRevisionPrivate) | ||
49 | { | 49 | { | ||
50 | d->type = VcsRevision::Invalid; | 50 | d->type = VcsRevision::Invalid; | ||
51 | } | 51 | } | ||
52 | 52 | | |||
53 | VcsRevision::VcsRevision( const VcsRevision& rhs ) | 53 | VcsRevision::VcsRevision( const VcsRevision& rhs ) | ||
54 | : d(new VcsRevisionPrivate) | 54 | : d(rhs.d) | ||
55 | { | 55 | { | ||
56 | d->value = rhs.d->value; | | |||
57 | d->internalValues = rhs.d->internalValues; | | |||
58 | d->type = rhs.d->type; | | |||
59 | } | 56 | } | ||
60 | 57 | | |||
61 | VcsRevision::~VcsRevision() = default; | 58 | VcsRevision::~VcsRevision() = default; | ||
62 | 59 | | |||
63 | VcsRevision& VcsRevision::operator=( const VcsRevision& rhs) | 60 | VcsRevision& VcsRevision::operator=( const VcsRevision& rhs) | ||
64 | { | 61 | { | ||
65 | if(this == &rhs) | 62 | d = rhs.d; | ||
66 | return *this; | | |||
67 | d->value = rhs.d->value; | | |||
68 | d->type = rhs.d->type; | | |||
69 | d->internalValues = rhs.d->internalValues; | | |||
70 | return *this; | 63 | return *this; | ||
71 | } | 64 | } | ||
72 | 65 | | |||
73 | void VcsRevision::setRevisionValue( const QVariant& rev, VcsRevision::RevisionType type ) | 66 | void VcsRevision::setRevisionValue( const QVariant& rev, VcsRevision::RevisionType type ) | ||
74 | { | 67 | { | ||
75 | d->value = rev; | 68 | d->value = rev; | ||
76 | d->type = type; | 69 | d->type = type; | ||
77 | } | 70 | } | ||
▲ Show 20 Lines • Show All 103 Lines • Show Last 20 Lines |