diff options
author | ꦌꦫꦶꦏ꧀ꦦꦿꦧꦮꦑꦩꦭ꧀ <erik@darapsa.co.id> | 2021-07-10 18:58:44 +0800 |
---|---|---|
committer | ꦌꦫꦶꦏ꧀ꦦꦿꦧꦮꦑꦩꦭ꧀ <erik@darapsa.co.id> | 2021-07-10 18:58:44 +0800 |
commit | 597163edb74e7cef5da39361f67686c2d5cac902 (patch) | |
tree | a405425cf6a79f90d6d730ae840c7df8e0aba24d | |
parent | 0ffa08d177f3bdf10751af5818c9fc7127486fee (diff) |
Wrapper for icclient_path
-rw-r--r-- | client.cxx | 13 | ||||
-rw-r--r-- | qicclient.hxx | 7 |
2 files changed, 20 insertions, 0 deletions
@@ -37,6 +37,14 @@ namespace QICClient { }, nullptr); } + void Client::path(QString const& path) + { + icclient_path(path.toLatin1().constData(), [](icclient_response* response) { + client->emitPath(QString{response->data}); + icclient_free_response(response); + }); + } + void Client::defaultCatalog(QString const& prodGroup) { icclient_catalog(prodGroup.toLatin1().constData(), nullptr, [](struct icclient_catalog* catalog) { @@ -59,6 +67,11 @@ namespace QICClient { emit gotProduct(product); } + void Client::emitPath(QString const& path) + { + emit gotPath(path); + } + void Client::order(QString const& sku, Catalog const& catalog, Ord& order) { auto c_order = order.data(); diff --git a/qicclient.hxx b/qicclient.hxx index 664b566..88f07d8 100644 --- a/qicclient.hxx +++ b/qicclient.hxx @@ -48,6 +48,11 @@ namespace QICClient { */ void product(QString const& sku); /*! + * \brief For fetching data from a specific path. + * \param path The path. + */ + void path(QString const& path); + /*! * \brief For fetching products that belong a specific group. * \param prodGroup The name of the product group. */ @@ -60,10 +65,12 @@ namespace QICClient { signals: void gotCatalog(QString const& response); void gotProduct(QString const& response); + void gotPath(QString const& response); protected: void emitCatalog(QString const& response); void emitProduct(QString const& response); + void emitPath(QString const& response); }; } |