From 552b14eeda6fc65c6246224425a03a4bf1b31154 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EA=A6=8C=20=EA=A6=AB=EA=A6=B6=20=EA=A6=8F=EA=A7=80?= =?UTF-8?q?=EA=A6=A6=EA=A6=BF=20=EA=A6=A7=20=EA=A6=AE=20=EA=A6=91=20?= =?UTF-8?q?=EA=A6=A9=20=EA=A6=AD=EA=A7=80?= Date: Fri, 27 Sep 2019 08:55:15 +0800 Subject: Adjust with the new allproducts function name --- qicclient/client.hxx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'qicclient') diff --git a/qicclient/client.hxx b/qicclient/client.hxx index 27ba2af..4994ad9 100644 --- a/qicclient/client.hxx +++ b/qicclient/client.hxx @@ -16,7 +16,7 @@ namespace ICClient { Client(char const* url, char const* certificate = nullptr); ~Client(); - void productAll(icclient_catalog** catalogptr + void allProducts(icclient_catalog** catalogptr , size_t (*callback)(void* contents , size_t size, size_t nmemb , void* userdata)); @@ -26,7 +26,7 @@ namespace ICClient { void logOut(); signals: - void gotProductAll(icclient_catalog* catalog); + void gotAllProducts(icclient_catalog* catalog); void loggedIn(QString const& username); void loggedOut(); }; -- cgit v1.2.3 From faad7cb0e18d3316173b1f4b67d83ffdfb7424d1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EA=A6=8C=20=EA=A6=AB=EA=A6=B6=20=EA=A6=8F=EA=A7=80?= =?UTF-8?q?=EA=A6=A6=EA=A6=BF=20=EA=A6=A7=20=EA=A6=AE=20=EA=A6=91=20?= =?UTF-8?q?=EA=A6=A9=20=EA=A6=AD=EA=A7=80?= Date: Fri, 27 Sep 2019 11:41:22 +0800 Subject: User class only a part of the libicclient version so far --- qicclient/user.hxx | 147 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 147 insertions(+) create mode 100644 qicclient/user.hxx (limited to 'qicclient') diff --git a/qicclient/user.hxx b/qicclient/user.hxx new file mode 100644 index 0000000..b554cba --- /dev/null +++ b/qicclient/user.hxx @@ -0,0 +1,147 @@ +#ifndef QICCLIENT_USER_HXX +#define QICCLIENT_USER_HXX + +#include +#include + +struct icclient_user; + +namespace ICClient { + + class User : public QObject + { + Q_OBJECT + Q_PROPERTY(QString userName READ userName WRITE setUserName NOTIFY userNameChanged) + Q_PROPERTY(QString userNick READ userNick WRITE setUserNick NOTIFY userNickChanged) + Q_PROPERTY(QString password READ password WRITE setPassword NOTIFY passwordChanged) + Q_PROPERTY(QString expiration READ expiration WRITE setExpiration NOTIFY expirationChanged) + Q_PROPERTY(QString acl READ acl WRITE setAcl NOTIFY aclChanged) + Q_PROPERTY(QString modTime READ modTime WRITE setModTime NOTIFY modTimeChanged) + Q_PROPERTY(QString sNickName READ sNickName WRITE setSNickName NOTIFY sNickNameChanged) + Q_PROPERTY(QString company READ company WRITE setCompany NOTIFY companyChanged) + Q_PROPERTY(QString fName READ fName WRITE setFName NOTIFY fNameChanged) + Q_PROPERTY(QString lName READ lName WRITE setLName NOTIFY lNameChanged) + Q_PROPERTY(QString address1 READ address1 WRITE setAddress1 NOTIFY address1Changed) + Q_PROPERTY(QString address2 READ address2 WRITE setAddress2 NOTIFY address2Changed) + Q_PROPERTY(QString address3 READ address3 WRITE setAddress3 NOTIFY address3Changed) + Q_PROPERTY(QString city READ city WRITE setCity NOTIFY cityChanged) + Q_PROPERTY(QString state READ state WRITE setState NOTIFY stateChanged) + Q_PROPERTY(QString zip READ zip WRITE setZip NOTIFY zipChanged) + Q_PROPERTY(QString country READ country WRITE setCountry NOTIFY countryChanged) + Q_PROPERTY(QString phoneDay READ phoneDay WRITE setPhoneDay NOTIFY phoneDayChanged) + Q_PROPERTY(QString email READ email WRITE setEmail NOTIFY emailChanged) + + public: + explicit User(QObject* parent = nullptr) + : QObject{parent} + , m_userName{""} + , m_userNick{""} + , m_password{""} + , m_expiration{""} + , m_acl{""} + , m_modTime{""} + , m_sNickName{""} + , m_company{""} + , m_fName{""} + , m_lName{""} + , m_address1{""} + , m_address2{""} + , m_address3{""} + , m_city{""} + , m_state{""} + , m_zip{""} + , m_country{""} + , m_phoneDay{""} + , m_email{""} + {} + ~User() {} + + QString const& userName() const { return m_userName; } + QString const& userNick() const { return m_userNick; } + QString const& password() const { return m_password; } + QString const& expiration() const { return m_expiration; } + QString const& acl() const { return m_acl; } + QString const& modTime() const { return m_modTime; } + QString const& sNickName() const { return m_sNickName; } + QString const& company() const { return m_company; } + QString const& fName() const { return m_fName; } + QString const& lName() const { return m_lName; } + QString const& address1() const { return m_address1; } + QString const& address2() const { return m_address2; } + QString const& address3() const { return m_address3; } + QString const& city() const { return m_city; } + QString const& state() const { return m_state; } + QString const& zip() const { return m_zip; } + QString const& country() const { return m_country; } + QString const& phoneDay() const { return m_phoneDay; } + QString const& email() const { return m_email; } + + void setUserName(QString const& userName); + void setUserNick(QString const& userNick); + void setPassword(QString const& password); + void setExpiration(QString const& expiration); + void setAcl(QString const& acl); + void setModTime(QString const& modTime); + void setSNickName(QString const& sNickName); + void setCompany(QString const& company); + void setFName(QString const& fName); + void setLName(QString const& lName); + void setAddress1(QString const& address1); + void setAddress2(QString const& address2); + void setAddress3(QString const& address3); + void setCity(QString const& city); + void setState(QString const& state); + void setZip(QString const& zip); + void setCountry(QString const& country); + void setPhoneDay(QString const& phoneDay); + void setEmail(QString const& email); + + public slots: + void update(icclient_user* user); + + signals: + void userNameChanged(); + void userNickChanged(); + void passwordChanged(); + void expirationChanged(); + void aclChanged(); + void modTimeChanged(); + void sNickNameChanged(); + void companyChanged(); + void fNameChanged(); + void lNameChanged(); + void address1Changed(); + void address2Changed(); + void address3Changed(); + void cityChanged(); + void stateChanged(); + void zipChanged(); + void countryChanged(); + void phoneDayChanged(); + void emailChanged(); + + private: + QString m_userName; + QString m_userNick; + QString m_password; + QString m_expiration; + QString m_acl; + QString m_modTime; + QString m_sNickName; + QString m_company; + QString m_fName; + QString m_lName; + QString m_address1; + QString m_address2; + QString m_address3; + QString m_city; + QString m_state; + QString m_zip; + QString m_country; + QString m_phoneDay; + QString m_email; + }; + +} + +#endif // QICCLIENT_USER_HXX -- cgit v1.2.3 From f3bdb1378aba6e9ed2ff6a6b30931c9045680301 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EA=A6=8C=20=EA=A6=AB=EA=A6=B6=20=EA=A6=8F=EA=A7=80?= =?UTF-8?q?=EA=A6=A6=EA=A6=BF=20=EA=A6=A7=20=EA=A6=AE=20=EA=A6=91=20?= =?UTF-8?q?=EA=A6=A9=20=EA=A6=AD=EA=A7=80?= Date: Fri, 27 Sep 2019 16:21:02 +0800 Subject: Make the catalog update slot public --- qicclient/catalog.hxx | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'qicclient') diff --git a/qicclient/catalog.hxx b/qicclient/catalog.hxx index 27b4c8e..782c864 100644 --- a/qicclient/catalog.hxx +++ b/qicclient/catalog.hxx @@ -61,15 +61,15 @@ namespace ICClient { , int role = Qt::DisplayRole ) const Q_DECL_OVERRIDE; + public slots: + void update(icclient_catalog* catalog); + signals: void updated(); protected: QHash roleNames() const Q_DECL_OVERRIDE; - private slots: - void update(icclient_catalog* catalog); - private: QList products; void addProduct(Product const& product); -- cgit v1.2.3 From 564738b2a05b6dde4f4344f49eb4f14641bca366 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EA=A6=8C=20=EA=A6=AB=EA=A6=B6=20=EA=A6=8F=EA=A7=80?= =?UTF-8?q?=EA=A6=A6=EA=A6=BF=20=EA=A6=A7=20=EA=A6=AE=20=EA=A6=91=20?= =?UTF-8?q?=EA=A6=A9=20=EA=A6=AD=EA=A7=80?= Date: Fri, 27 Sep 2019 16:21:18 +0800 Subject: More prototypes for client --- qicclient/client.hxx | 32 ++++++++++++++++++++++++++++++-- 1 file changed, 30 insertions(+), 2 deletions(-) (limited to 'qicclient') diff --git a/qicclient/client.hxx b/qicclient/client.hxx index 4994ad9..131f3f4 100644 --- a/qicclient/client.hxx +++ b/qicclient/client.hxx @@ -5,6 +5,7 @@ #include struct icclient_catalog; +struct icclient_order; namespace ICClient { @@ -22,12 +23,39 @@ namespace ICClient { , void* userdata)); public slots: - void logIn(QString const& username, QString const& password); + /* + void order(QString const& sku); + void remove(unsigned int const& indices); + void checkout(); + */ + void logIn(QString const& username + , QString const& password); + /* + void account(QString const& firstName + , QString const& lastName + , QString const& address1 + , QString const& address2 + , QString const& city + , QString const& state + , QString const& zip + , QString const& email + , QString const& phoneDay); + void changePassword(QString const& passwordOld + , QString const& password + , QString const& verify); + */ void logOut(); + /* + void newItem(QString const& description + , QString const& comment, + QString const& price + , QString const& imagePath); + */ signals: void gotAllProducts(icclient_catalog* catalog); - void loggedIn(QString const& username); + void ordered(icclient_order* order); + void loggedIn(QString const& userName); void loggedOut(); }; -- cgit v1.2.3 From 4ec7c925e46cebe461cf6c8b21c35b58afb96c78 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EA=A6=8C=20=EA=A6=AB=EA=A6=B6=20=EA=A6=8F=EA=A7=80?= =?UTF-8?q?=EA=A6=A6=EA=A6=BF=20=EA=A6=A7=20=EA=A6=AE=20=EA=A6=91=20?= =?UTF-8?q?=EA=A6=A9=20=EA=A6=AD=EA=A7=80?= Date: Sat, 28 Sep 2019 12:50:55 +0800 Subject: Fix header guard --- qicclient/client.hxx | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'qicclient') diff --git a/qicclient/client.hxx b/qicclient/client.hxx index 131f3f4..a8b50f4 100644 --- a/qicclient/client.hxx +++ b/qicclient/client.hxx @@ -1,5 +1,5 @@ -#ifndef QRTCLIENT_CLIENT_HXX -#define QRTCLIENT_CLIENT_HXX +#ifndef QICCLIENT_CLIENT_HXX +#define QICCLIENT_CLIENT_HXX #include #include @@ -61,4 +61,4 @@ namespace ICClient { } -#endif // QRTCLIENT_CLIENT_HXX +#endif // QICCLIENT_CLIENT_HXX -- cgit v1.2.3 From bffd7c68508f793fc00c7453850668f7c654e1d0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EA=A6=8C=20=EA=A6=AB=EA=A6=B6=20=EA=A6=8F=EA=A7=80?= =?UTF-8?q?=EA=A6=A6=EA=A6=BF=20=EA=A6=A7=20=EA=A6=AE=20=EA=A6=91=20?= =?UTF-8?q?=EA=A6=A9=20=EA=A6=AD=EA=A7=80?= Date: Sat, 28 Sep 2019 13:05:03 +0800 Subject: The app should be able to accept the catalog in QICClient's form --- qicclient/client.hxx | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) (limited to 'qicclient') diff --git a/qicclient/client.hxx b/qicclient/client.hxx index a8b50f4..bccd665 100644 --- a/qicclient/client.hxx +++ b/qicclient/client.hxx @@ -17,8 +17,7 @@ namespace ICClient { Client(char const* url, char const* certificate = nullptr); ~Client(); - void allProducts(icclient_catalog** catalogptr - , size_t (*callback)(void* contents + void allProducts(size_t (*handler)(void* contents , size_t size, size_t nmemb , void* userdata)); -- cgit v1.2.3 From 73851e44295b0a1e1963689036a0f60c4cbb8330 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EA=A6=8C=20=EA=A6=AB=EA=A6=B6=20=EA=A6=8F=EA=A7=80?= =?UTF-8?q?=EA=A6=A6=EA=A6=BF=20=EA=A6=A7=20=EA=A6=AE=20=EA=A6=91=20?= =?UTF-8?q?=EA=A6=A9=20=EA=A6=AD=EA=A7=80?= Date: Sat, 28 Sep 2019 15:54:09 +0800 Subject: Client triggers catalog to update directly since getting all products would only be good for catalog. Besides, emitting there seems to cause crash somehow. --- qicclient/client.hxx | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'qicclient') diff --git a/qicclient/client.hxx b/qicclient/client.hxx index bccd665..5531d53 100644 --- a/qicclient/client.hxx +++ b/qicclient/client.hxx @@ -3,8 +3,8 @@ #include #include +#include "catalog.hxx" -struct icclient_catalog; struct icclient_order; namespace ICClient { @@ -17,7 +17,8 @@ namespace ICClient { Client(char const* url, char const* certificate = nullptr); ~Client(); - void allProducts(size_t (*handler)(void* contents + void allProducts(Catalog* catalog + , size_t (*handler)(void* contents , size_t size, size_t nmemb , void* userdata)); @@ -52,7 +53,6 @@ namespace ICClient { */ signals: - void gotAllProducts(icclient_catalog* catalog); void ordered(icclient_order* order); void loggedIn(QString const& userName); void loggedOut(); -- cgit v1.2.3 From 0640cec9e13edd30b85c50da9943f6fb56aec0df Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EA=A6=8C=20=EA=A6=AB=EA=A6=B6=20=EA=A6=8F=EA=A7=80?= =?UTF-8?q?=EA=A6=A6=EA=A6=BF=20=EA=A6=A7=20=EA=A6=AE=20=EA=A6=91=20?= =?UTF-8?q?=EA=A6=A9=20=EA=A6=AD=EA=A7=80?= Date: Sun, 29 Sep 2019 07:40:23 +0800 Subject: Revert "Client triggers catalog to update directly" This reverts commit 73851e44295b0a1e1963689036a0f60c4cbb8330. --- qicclient/client.hxx | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'qicclient') diff --git a/qicclient/client.hxx b/qicclient/client.hxx index 5531d53..bccd665 100644 --- a/qicclient/client.hxx +++ b/qicclient/client.hxx @@ -3,8 +3,8 @@ #include #include -#include "catalog.hxx" +struct icclient_catalog; struct icclient_order; namespace ICClient { @@ -17,8 +17,7 @@ namespace ICClient { Client(char const* url, char const* certificate = nullptr); ~Client(); - void allProducts(Catalog* catalog - , size_t (*handler)(void* contents + void allProducts(size_t (*handler)(void* contents , size_t size, size_t nmemb , void* userdata)); @@ -53,6 +52,7 @@ namespace ICClient { */ signals: + void gotAllProducts(icclient_catalog* catalog); void ordered(icclient_order* order); void loggedIn(QString const& userName); void loggedOut(); -- cgit v1.2.3