*.dylib
*.obj
Makefile*
-moc_*.cpp
-*.moc
# Directories to ignore
# ---------------------
build-unittests-Qt_5_1_0_clang_64-Release/unittests
examples/.coverity-submit
-reports
-doc/html
-build-examples-Qt_5_1_0_clang_64_temporary-Debug
-build-unittests-Qt_5_1_0_clang_64-Release
-src/doc/html
+# Qt specific
.qmake.cache
-examples/echoclient/echoclient
-src/libQWebSockets.0.9.0.dylib
-src/libQWebSockets.0.9.dylib
-src/libQWebSockets.0.dylib
-src/libQWebSockets.1.0.0.dylib
-src/libQWebSockets.1.0.dylib
-src/libQWebSockets.1.dylib
-src/libQWebSockets.dylib
-examples/echoserver/echoserver
-tests/unittests
+*.pro.user
+*.pro.shared
+moc_*.cpp
+*.moc
+*_resource.rc
+ui_*.h
+qrc_*.cpp
+
+*~
+*.pdb
+*.exe
+*.lib
+*.res
+*.exp
+*.manifest
+config.log
+tmp
+imports/*
+include
+tests/auto/cmake/build
+lib/
+mkspecs/
+qml/
--- /dev/null
+load(qt_build_config)
+
+CONFIG += qt_example_installs
+
+MODULE_VERSION = 5.1.1
-QT += core
+QT += core websockets
QT -= gui
TARGET = echoclient
TEMPLATE = app
-include(../../src/qwebsockets.pri)
-
SOURCES += \
main.cpp \
echoclient.cpp
-QT += core
+QT += core websockets
QT -= gui
TARGET = echoserver
TEMPLATE = app
-include(../../src/qwebsockets.pri)
-
SOURCES += \
main.cpp \
echoserver.cpp
-cache()
TEMPLATE = subdirs
-SUBDIRS = echoclient \
- echoserver
+SUBDIRS = echoclient \
+ echoserver \
+ qmlwebsocketclient
--- /dev/null
+<RCC>
+ <qresource prefix="/">
+ <file>qml/qmlwebsocketclient/main.qml</file>
+ </qresource>
+</RCC>
--- /dev/null
+/*
+QWebSockets implements the WebSocket protocol as defined in RFC 6455.
+Copyright (C) 2013 Kurt Pattyn (pattyn.kurt@gmail.com)
+
+This library is free software; you can redistribute it and/or
+modify it under the terms of the GNU Lesser General Public
+License as published by the Free Software Foundation; either
+version 2.1 of the License, or (at your option) any later version.
+
+This library is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+Lesser General Public License for more details.
+
+You should have received a copy of the GNU Lesser General Public
+License along with this library; if not, write to the Free Software
+Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+*/
+
+#include <QtGui/QGuiApplication>
+#include <QQuickView>
+
+int main(int argc, char *argv[])
+{
+ QGuiApplication app(argc, argv);
+
+ QQuickView view;
+ view.setSource(QUrl(QStringLiteral("qrc:/qml/qmlwebsocketclient/main.qml")));
+ view.show();
+
+ return app.exec();
+}
--- /dev/null
+/*
+QWebSockets implements the WebSocket protocol as defined in RFC 6455.
+Copyright (C) 2013 Kurt Pattyn (pattyn.kurt@gmail.com)
+
+This library is free software; you can redistribute it and/or
+modify it under the terms of the GNU Lesser General Public
+License as published by the Free Software Foundation; either
+version 2.1 of the License, or (at your option) any later version.
+
+This library is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+Lesser General Public License for more details.
+
+You should have received a copy of the GNU Lesser General Public
+License along with this library; if not, write to the Free Software
+Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+*/
+
+import QtQuick 2.0
+import Qt.Playground.WebSockets 1.0
+
+Rectangle {
+ width: 360
+ height: 360
+
+ WebSocket {
+
+ }
+
+ Text {
+ text: qsTr("Hello World")
+ anchors.centerIn: parent
+ }
+
+ MouseArea {
+ anchors.fill: parent
+ onClicked: {
+ Qt.quit();
+ }
+ }
+}
--- /dev/null
+QT += qml quick
+
+TARGET = qmlwebsocketclient
+
+CONFIG -= app_bundle
+
+SOURCES += main.cpp
+
+RESOURCES += \
+ data.qrc
+
+++ /dev/null
-cache()
-TEMPLATE = subdirs
-
-SUBDIRS = \
- src \
- examples \
- tests
-CONFIG += ordered
--- /dev/null
+TEMPLATE = subdirs
+
+SUBDIRS += qmlwebsockets
--- /dev/null
+module Qt.Playground.WebSockets
+
+plugin declarative_qmlwebsockets
--- /dev/null
+QT += websockets qml
+
+TARGETPATH = Qt/Playground/WebSockets
+
+HEADERS += qmlwebsockets_plugin.h \
+ qqmlwebsocket.h
+
+SOURCES += qmlwebsockets_plugin.cpp \
+ qqmlwebsocket.cpp
+
+load(qml_plugin)
--- /dev/null
+/*
+QWebSockets implements the WebSocket protocol as defined in RFC 6455.
+Copyright (C) 2013 Kurt Pattyn (pattyn.kurt@gmail.com)
+
+This library is free software; you can redistribute it and/or
+modify it under the terms of the GNU Lesser General Public
+License as published by the Free Software Foundation; either
+version 2.1 of the License, or (at your option) any later version.
+
+This library is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+Lesser General Public License for more details.
+
+You should have received a copy of the GNU Lesser General Public
+License along with this library; if not, write to the Free Software
+Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+*/
+
+#include "qmlwebsockets_plugin.h"
+
+#include <QtQml>
+
+void QmlWebsocket_plugin::registerTypes(const char *uri)
+{
+ Q_ASSERT(uri == QLatin1String("Qt.Playground.WebSockets"));
+
+ int major = 1;
+ int minor = 0;
+
+ // @uri Qt.Playground.WebSockets
+
+ qmlRegisterType<QQmlWebSocket>(uri, major, minor, "WebSocket");
+}
--- /dev/null
+/*
+QWebSockets implements the WebSocket protocol as defined in RFC 6455.
+Copyright (C) 2013 Kurt Pattyn (pattyn.kurt@gmail.com)
+
+This library is free software; you can redistribute it and/or
+modify it under the terms of the GNU Lesser General Public
+License as published by the Free Software Foundation; either
+version 2.1 of the License, or (at your option) any later version.
+
+This library is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+Lesser General Public License for more details.
+
+You should have received a copy of the GNU Lesser General Public
+License along with this library; if not, write to the Free Software
+Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+*/
+
+#ifndef QMLWEBSOCKET_PLUGIN_H
+#define QMLWEBSOCKET_PLUGIN_H
+
+#include <QQmlExtensionPlugin>
+
+#include "qqmlwebsocket.h"
+
+QT_BEGIN_NAMESPACE
+
+class QmlWebsocket_plugin : public QQmlExtensionPlugin
+{
+ Q_OBJECT
+ Q_PLUGIN_METADATA(IID "org.qt-project.Qt.QQmlExtensionInterface")
+
+public:
+ void registerTypes(const char *uri);
+};
+
+QT_END_NAMESPACE
+
+#endif // QMLWEBSOCKET_PLUGIN_H
--- /dev/null
+/*
+QWebSockets implements the WebSocket protocol as defined in RFC 6455.
+Copyright (C) 2013 Kurt Pattyn (pattyn.kurt@gmail.com)
+
+This library is free software; you can redistribute it and/or
+modify it under the terms of the GNU Lesser General Public
+License as published by the Free Software Foundation; either
+version 2.1 of the License, or (at your option) any later version.
+
+This library is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+Lesser General Public License for more details.
+
+You should have received a copy of the GNU Lesser General Public
+License along with this library; if not, write to the Free Software
+Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+*/
+
+#include "qqmlwebsocket.h"
+
+QQmlWebSocket::QQmlWebSocket(QObject *parent) :
+ QObject(parent)
+{
+}
+
+void QQmlWebSocket::classBegin()
+{
+
+}
+
+void QQmlWebSocket::componentComplete()
+{
+
+}
--- /dev/null
+/*
+QWebSockets implements the WebSocket protocol as defined in RFC 6455.
+Copyright (C) 2013 Kurt Pattyn (pattyn.kurt@gmail.com)
+
+This library is free software; you can redistribute it and/or
+modify it under the terms of the GNU Lesser General Public
+License as published by the Free Software Foundation; either
+version 2.1 of the License, or (at your option) any later version.
+
+This library is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+Lesser General Public License for more details.
+
+You should have received a copy of the GNU Lesser General Public
+License along with this library; if not, write to the Free Software
+Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+*/
+
+#ifndef QQMLWEBSOCKET_H
+#define QQMLWEBSOCKET_H
+
+#include <QObject>
+#include <QQmlParserStatus>
+
+class QQmlWebSocket : public QObject, public QQmlParserStatus
+{
+ Q_OBJECT
+ Q_DISABLE_COPY(QQmlWebSocket)
+ Q_INTERFACES(QQmlParserStatus)
+
+public:
+ explicit QQmlWebSocket(QObject *parent = 0);
+
+public:
+ void classBegin() Q_DECL_OVERRIDE;
+ void componentComplete() Q_DECL_OVERRIDE;
+};
+
+#endif // QQMLWEBSOCKET_H
+++ /dev/null
-QMAKE_DOCS = $$PWD/doc/qwebsockets.qdocconfig
-
-include($$PWD/qwebsockets.pri)
-
-TEMPLATE = lib
-VERSION = 0.9
-TARGET = QWebSockets
-
-mac:QMAKE_FRAMEWORK_BUNDLE_NAME = $$TARGET
-mac:QMAKE_CXXFLAGS += -Wall -Werror -Wextra
-include ($$PWD/qwebsockets.pro)
+TEMPLATE = subdirs
+
+SUBDIRS += websockets imports
-QT *= network
+QT += network
+
+TARGET = QtWebSockets
+
+TEMPLATE += lib
+
+DEFINES += QTWEBSOCKETS_LIBRARY
+
+load(qt_module)
+
+QMAKE_DOCS = $$PWD/doc/qwebsockets.qdocconfig
+
+PUBLIC_HEADERS += \
+ $$PWD/qwebsocket.h \
+ $$PWD/qwebsocketserver.h \
+ $$PWD/qwebsocketprotocol.h \
+ $$PWD/qwebsocketsglobal.h \
+ $$PWD/qcorsauthenticator.h
+
+PRIVATE_HEADERS += \
+ $$PWD/qwebsocket_p.h \
+ $$PWD/qwebsocketserver_p.h \
+ $$PWD/handshakerequest_p.h \
+ $$PWD/handshakeresponse_p.h \
+ $$PWD/dataprocessor_p.h \
+ $$PWD/qcorsauthenticator_p.h
SOURCES += \
$$PWD/qwebsocket.cpp \
$$PWD/dataprocessor_p.cpp \
$$PWD/qcorsauthenticator.cpp
-HEADERS += \
- $$PWD/qwebsocket.h \
- $$PWD/qwebsocket_p.h \
- $$PWD/qwebsocketserver.h \
- $$PWD/qwebsocketserver_p.h \
- $$PWD/qwebsocketprotocol.h \
- $$PWD/handshakerequest_p.h \
- $$PWD/handshakeresponse_p.h \
- $$PWD/dataprocessor_p.h \
- $$PWD/qwebsocketsglobal.h \
- $$PWD/qcorsauthenticator.h \
- qcorsauthenticator_p.h
+HEADERS += $$PUBLIC_HEADERS $$PRIVATE_HEADERS
+
+#mac:QMAKE_FRAMEWORK_BUNDLE_NAME = $$TARGET
+#mac:QMAKE_CXXFLAGS += -Wall -Werror -Wextra
+
+
-INCLUDEPATH += $$PWD
-DEPENDPATH += $$PWD
%modules = (
- "QWebSockets" => "$basedir/src",
+ "QtWebSockets" => "$basedir/src/websockets",
+);
+
+%moduleheaders = (
+);
+
+%classnames = (
+ "qtwebsockets.h" => "QtWebSockets",
);
%dependencies = (
cache()
-QT += core network testlib
+QT += core network websockets testlib
TARGET = unittests
CONFIG += testcase
TEMPLATE = app
-mac:QMAKE_CXXFLAGS += -Wall -Werror -Wextra
-
-include(../src/qwebsockets.pri)
-
-# Remove the main.cpp file from the sources.
-#S = $$SOURCES
-#for(F, S) {
-# M = $$find(F, main.cpp)
-# count(M, 0) {
-# SOURCES += $$F
-# }
-#}
-
SOURCES += \
main.cpp \
tst_websockets.cpp \
HEADERS += \
unittests.h
-INCLUDEPATH +=
-DEPENDPATH +=
-
DEFINES += SRCDIR=\\\"$$PWD/\\\"
--- /dev/null
+load(qt_parts)