on xenial help sign in
Use getters/setters for purchasing bool.
6f4e9a4Rodney Dawes
plugins/Ubuntu/Payments/Payments.cpp+15−4
@@ -42,11 +42,11 @@ static void observer(PayPackage* /* package */, const char* itemid, PayPackageIt
42 Q_EMIT self->purchaseCompleted();
42 Q_EMIT self->purchaseCompleted();
43 break;
43 break;
44 case PAY_PACKAGE_ITEM_STATUS_PURCHASING:
44 case PAY_PACKAGE_ITEM_STATUS_PURCHASING:
45− self->m_purchasing = true;
45+ self->setPurchasing(true);
46 break;
46 break;
47 case PAY_PACKAGE_ITEM_STATUS_NOT_PURCHASED:
47 case PAY_PACKAGE_ITEM_STATUS_NOT_PURCHASED:
48− if (self->m_purchasing) {
48+ if (self->purchasing()) {
49− self->m_purchasing = false;
49+ self->setPurchasing(false);
50 Q_EMIT self->purchaseCancelled();
50 Q_EMIT self->purchaseCancelled();
51 }
51 }
52 break;
52 break;
@@ -56,7 +56,8 @@ static void observer(PayPackage* /* package */, const char* itemid, PayPackageIt
56}
56}
57
57
58Payments::Payments(QObject *parent)
58Payments::Payments(QObject *parent)
59− : QObject(parent)
59+ : QObject(parent),
60+ m_purchasing(false)
60{
61{
61 m_package = pay_package_new("click-scope");
62 m_package = pay_package_new("click-scope");
62 pay_package_item_observer_install(m_package, observer, this);
63 pay_package_item_observer_install(m_package, observer, this);
@@ -89,6 +90,11 @@ QString Payments::formattedPrice() const
89 return locale.toCurrencyString(m_price, m_currency);
90 return locale.toCurrencyString(m_price, m_currency);
90}
91}
91
92
93+bool Payments::purchasing() const
94+{
95+ return m_purchasing;
96+}
97+
92void Payments::setCurrency(const QString &currency)
98void Payments::setCurrency(const QString &currency)
93{
99{
94 if(m_currency != currency) {
100 if(m_currency != currency) {
@@ -121,6 +127,11 @@ void Payments::setStoreItemId(const QString &store_item_id)
121 pay_package_item_start_verification(m_package, m_store_item_id.toLocal8Bit().data());
127 pay_package_item_start_verification(m_package, m_store_item_id.toLocal8Bit().data());
122}
128}
123
129
130+void Payments::setPurchasing(bool is_purchasing)
131+{
132+ m_purchasing = is_purchasing;
133+}
134+
124void Payments::start()
135void Payments::start()
125{
136{
126 pay_package_item_start_purchase(m_package, m_store_item_id.toLocal8Bit().data());
137 pay_package_item_start_purchase(m_package, m_store_item_id.toLocal8Bit().data());
plugins/Ubuntu/Payments/Payments.h+3−3
@@ -39,10 +39,12 @@ public:
39 double price() const;
39 double price() const;
40 QString storeItemId() const;
40 QString storeItemId() const;
41 QString formattedPrice() const;
41 QString formattedPrice() const;
42+ bool purchasing() const;
42
43
43 void setCurrency(const QString& currency);
44 void setCurrency(const QString& currency);
44 void setPrice(const double price);
45 void setPrice(const double price);
45 void setStoreItemId(const QString& store_item_id);
46 void setStoreItemId(const QString& store_item_id);
47+ void setPurchasing(bool is_purchasing);
46 Q_INVOKABLE void start();
48 Q_INVOKABLE void start();
47
49
48Q_SIGNALS:
50Q_SIGNALS:
@@ -55,13 +57,11 @@ Q_SIGNALS:
55 void purchaseCompleted();
57 void purchaseCompleted();
56 void purchaseCancelled();
58 void purchaseCancelled();
57
59
58−public:
59− bool m_purchasing = false;
60−
61private:
60private:
62 QString m_currency;
61 QString m_currency;
63 double m_price;
62 double m_price;
64 QString m_store_item_id;
63 QString m_store_item_id;
64+ bool m_purchasing;
65
65
66 PayPackage *m_package;
66 PayPackage *m_package;
67};
67};