Changeset View
Changeset View
Standalone View
Standalone View
kmymoney/mymoney/mymoneysecurity.cpp
Context not available. | |||||
46 | using namespace MyMoneyStorageNodes; | 46 | using namespace MyMoneyStorageNodes; | ||
---|---|---|---|---|---|
47 | 47 | | |||
48 | MyMoneySecurity::MyMoneySecurity() : | 48 | MyMoneySecurity::MyMoneySecurity() : | ||
49 | d_ptr(new MyMoneySecurityPrivate) | 49 | MyMoneyObject(*new MyMoneySecurityPrivate) | ||
50 | { | 50 | { | ||
51 | } | 51 | } | ||
52 | 52 | | |||
Context not available. | |||||
56 | const int smallestCashFraction, | 56 | const int smallestCashFraction, | ||
57 | const int smallestAccountFraction, | 57 | const int smallestAccountFraction, | ||
58 | const int pricePrecision) : | 58 | const int pricePrecision) : | ||
59 | MyMoneyObject(id), | 59 | MyMoneyObject(*new MyMoneySecurityPrivate, id), | ||
60 | MyMoneyKeyValueContainer(), | 60 | MyMoneyKeyValueContainer() | ||
61 | d_ptr(new MyMoneySecurityPrivate) | | |||
62 | { | 61 | { | ||
63 | Q_D(MyMoneySecurity); | 62 | Q_D(MyMoneySecurity); | ||
64 | d->m_name = name; | 63 | d->m_name = name; | ||
Context not available. | |||||
78 | } | 77 | } | ||
79 | 78 | | |||
80 | MyMoneySecurity::MyMoneySecurity(const QDomElement& node) : | 79 | MyMoneySecurity::MyMoneySecurity(const QDomElement& node) : | ||
81 | MyMoneyObject(node), | 80 | MyMoneyObject(*new MyMoneySecurityPrivate, node), | ||
82 | MyMoneyKeyValueContainer(node.elementsByTagName(nodeNames[nnKeyValuePairs]).item(0).toElement()), | 81 | MyMoneyKeyValueContainer(node.elementsByTagName(nodeNames[nnKeyValuePairs]).item(0).toElement()) | ||
83 | d_ptr(new MyMoneySecurityPrivate) | | |||
84 | { | 82 | { | ||
85 | { | 83 | { | ||
86 | const auto tag = node.tagName(); | 84 | const auto tag = node.tagName(); | ||
Context not available. | |||||
114 | } | 112 | } | ||
115 | 113 | | |||
116 | MyMoneySecurity::MyMoneySecurity(const MyMoneySecurity& other) : | 114 | MyMoneySecurity::MyMoneySecurity(const MyMoneySecurity& other) : | ||
117 | MyMoneyObject(other.id()), | 115 | MyMoneyObject(*new MyMoneySecurityPrivate(*other.d_func()), other.id()), | ||
118 | MyMoneyKeyValueContainer(other), | 116 | MyMoneyKeyValueContainer(other) | ||
119 | d_ptr(new MyMoneySecurityPrivate(*other.d_func())) | | |||
120 | { | 117 | { | ||
121 | } | 118 | } | ||
122 | 119 | | |||
123 | MyMoneySecurity::MyMoneySecurity(const QString& id, const MyMoneySecurity& other) : | 120 | MyMoneySecurity::MyMoneySecurity(const QString& id, const MyMoneySecurity& other) : | ||
124 | MyMoneyObject(id), | 121 | MyMoneyObject(*new MyMoneySecurityPrivate(*other.d_func()), id), | ||
125 | MyMoneyKeyValueContainer(other), | 122 | MyMoneyKeyValueContainer(other) | ||
126 | d_ptr(new MyMoneySecurityPrivate(*other.d_func())) | | |||
127 | { | 123 | { | ||
128 | } | 124 | } | ||
129 | 125 | | |||
130 | MyMoneySecurity::~MyMoneySecurity() | 126 | MyMoneySecurity::~MyMoneySecurity() | ||
131 | { | 127 | { | ||
132 | Q_D(MyMoneySecurity); | | |||
133 | delete d; | | |||
134 | } | 128 | } | ||
135 | 129 | | |||
136 | bool MyMoneySecurity::operator == (const MyMoneySecurity& right) const | 130 | bool MyMoneySecurity::operator == (const MyMoneySecurity& right) const | ||
137 | { | 131 | { | ||
138 | Q_D(const MyMoneySecurity); | 132 | Q_D(const MyMoneySecurity); | ||
139 | auto d2 = static_cast<const MyMoneySecurityPrivate *>(right.d_func()); | 133 | auto d2 = static_cast<const MyMoneySecurityPrivate *>(right.d_func()); | ||
140 | return (m_id == right.m_id) | 134 | return (d->m_id == d2->m_id) | ||
141 | && (d->m_name == d2->m_name) | 135 | && (d->m_name == d2->m_name) | ||
142 | && (d->m_tradingSymbol == d2->m_tradingSymbol) | 136 | && (d->m_tradingSymbol == d2->m_tradingSymbol) | ||
143 | && (d->m_tradingMarket == d2->m_tradingMarket) | 137 | && (d->m_tradingMarket == d2->m_tradingMarket) | ||
Context not available. | |||||
293 | else | 287 | else | ||
294 | el = document.createElement(nodeNames[nnSecurity]); | 288 | el = document.createElement(nodeNames[nnSecurity]); | ||
295 | 289 | | |||
296 | writeBaseXML(document, el); | | |||
297 | | ||||
298 | Q_D(const MyMoneySecurity); | 290 | Q_D(const MyMoneySecurity); | ||
291 | d->writeBaseXML(document, el); | ||||
292 | | ||||
299 | el.setAttribute(d->getAttrName(Security::Attribute::Name), d->m_name); | 293 | el.setAttribute(d->getAttrName(Security::Attribute::Name), d->m_name); | ||
300 | el.setAttribute(d->getAttrName(Security::Attribute::Symbol),d->m_tradingSymbol); | 294 | el.setAttribute(d->getAttrName(Security::Attribute::Symbol),d->m_tradingSymbol); | ||
301 | el.setAttribute(d->getAttrName(Security::Attribute::Type), static_cast<int>(d->m_securityType)); | 295 | el.setAttribute(d->getAttrName(Security::Attribute::Type), static_cast<int>(d->m_securityType)); | ||
Context not available. |