From 48f8a0cf237e757d1ef3f8be424f7a1acb915b0c Mon Sep 17 00:00:00 2001 From: Liang Qi Date: Fri, 13 Feb 2015 10:11:37 +0100 Subject: Doc: add description and image for echoclient html MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Change-Id: I7e2adaf19d15842f914be6f946f30d09b7b5532f Reviewed-by: Topi Reiniƶ --- examples/websockets/doc/echoserver.qdoc | 9 ++++++++- .../websockets/doc/images/echoclient-html-example.png | Bin 0 -> 47215 bytes 2 files changed, 8 insertions(+), 1 deletion(-) create mode 100644 examples/websockets/doc/images/echoclient-html-example.png (limited to 'examples') diff --git a/examples/websockets/doc/echoserver.qdoc b/examples/websockets/doc/echoserver.qdoc index e6d4f2c..ae6218a 100644 --- a/examples/websockets/doc/echoserver.qdoc +++ b/examples/websockets/doc/echoserver.qdoc @@ -39,7 +39,14 @@ sends back the messages it receives. The Echo Server Example shows how to create a simple server application that - sends back the messages it receives, using the WebSocket API. + sends back the messages it receives, using the \l {Qt WebSockets}{WebSocket} API. + + If your web browser supports \l {Qt WebSockets}{WebSocket}, you can also use it + to open the \l {echoserver/echoclient.html}{echoclient.html} file, and operate + like the following screenshot. + + \image echoclient-html-example.png Screenshot of the HTML version of Echo + Client example \sa {Echo Client Example} */ diff --git a/examples/websockets/doc/images/echoclient-html-example.png b/examples/websockets/doc/images/echoclient-html-example.png new file mode 100644 index 0000000..2cda8fd Binary files /dev/null and b/examples/websockets/doc/images/echoclient-html-example.png differ -- cgit v1.2.1 From 1bbba5b9e8761fabe79a212e221102503fb0ac25 Mon Sep 17 00:00:00 2001 From: Liang Qi Date: Mon, 16 Feb 2015 14:51:41 +0100 Subject: Examples: add an option for debug outputs in echoclient MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Change-Id: I9bec2324b666c00212135ef6c9d5a69594cda050 Reviewed-by: Topi Reiniƶ --- examples/websockets/echoclient/echoclient.cpp | 13 +++++++++---- examples/websockets/echoclient/echoclient.h | 3 ++- examples/websockets/echoclient/main.cpp | 15 ++++++++++++++- 3 files changed, 25 insertions(+), 6 deletions(-) (limited to 'examples') diff --git a/examples/websockets/echoclient/echoclient.cpp b/examples/websockets/echoclient/echoclient.cpp index 229ee1b..0e7b3c9 100644 --- a/examples/websockets/echoclient/echoclient.cpp +++ b/examples/websockets/echoclient/echoclient.cpp @@ -36,10 +36,13 @@ QT_USE_NAMESPACE //! [constructor] -EchoClient::EchoClient(const QUrl &url, QObject *parent) : +EchoClient::EchoClient(const QUrl &url, bool debug, QObject *parent) : QObject(parent), - m_url(url) + m_url(url), + m_debug(debug) { + if (m_debug) + qDebug() << "WebSocket server:" << url; connect(&m_webSocket, &QWebSocket::connected, this, &EchoClient::onConnected); connect(&m_webSocket, &QWebSocket::disconnected, this, &EchoClient::closed); m_webSocket.open(QUrl(url)); @@ -49,7 +52,8 @@ EchoClient::EchoClient(const QUrl &url, QObject *parent) : //! [onConnected] void EchoClient::onConnected() { - qDebug() << "WebSocket connected"; + if (m_debug) + qDebug() << "WebSocket connected"; connect(&m_webSocket, &QWebSocket::textMessageReceived, this, &EchoClient::onTextMessageReceived); m_webSocket.sendTextMessage(QStringLiteral("Hello, world!")); @@ -59,7 +63,8 @@ void EchoClient::onConnected() //! [onTextMessageReceived] void EchoClient::onTextMessageReceived(QString message) { - qDebug() << "Message received:" << message; + if (m_debug) + qDebug() << "Message received:" << message; m_webSocket.close(); } //! [onTextMessageReceived] diff --git a/examples/websockets/echoclient/echoclient.h b/examples/websockets/echoclient/echoclient.h index 2ddef4c..dc005dc 100644 --- a/examples/websockets/echoclient/echoclient.h +++ b/examples/websockets/echoclient/echoclient.h @@ -40,7 +40,7 @@ class EchoClient : public QObject { Q_OBJECT public: - explicit EchoClient(const QUrl &url, QObject *parent = Q_NULLPTR); + explicit EchoClient(const QUrl &url, bool debug = false, QObject *parent = Q_NULLPTR); Q_SIGNALS: void closed(); @@ -52,6 +52,7 @@ private Q_SLOTS: private: QWebSocket m_webSocket; QUrl m_url; + bool m_debug; }; #endif // ECHOCLIENT_H diff --git a/examples/websockets/echoclient/main.cpp b/examples/websockets/echoclient/main.cpp index cdc6d04..911c069 100644 --- a/examples/websockets/echoclient/main.cpp +++ b/examples/websockets/echoclient/main.cpp @@ -31,12 +31,25 @@ ** ****************************************************************************/ #include +#include +#include #include "echoclient.h" int main(int argc, char *argv[]) { QCoreApplication a(argc, argv); - EchoClient client(QUrl(QStringLiteral("ws://localhost:1234"))); + + QCommandLineParser parser; + parser.setApplicationDescription("QtWebSockets example: echoclient"); + parser.addHelpOption(); + + QCommandLineOption dbgOption(QStringList() << "d" << "debug", + QCoreApplication::translate("main", "Debug output [default: off].")); + parser.addOption(dbgOption); + parser.process(a); + bool debug = parser.isSet(dbgOption); + + EchoClient client(QUrl(QStringLiteral("ws://localhost:1234")), debug); QObject::connect(&client, &EchoClient::closed, &a, &QCoreApplication::quit); return a.exec(); -- cgit v1.2.1