summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMarius Bugge Monsen <mmonsen@trolltech.com>2009-09-15 16:42:06 +0200
committerMarius Bugge Monsen <mmonsen@trolltech.com>2009-09-15 16:42:06 +0200
commit3c26a471834f582f2bedb67ae9ea95ba28f6e5cf (patch)
treeccfa5a703a3ea8f976a26d04028dd9ee234e5e61
parent6bd8a385d6497da9390a752df4ba4a56a3f7fd5e (diff)
Add the protocol header file to the repo.
-rw-r--r--protocol.h92
-rw-r--r--qgraphicssystem_dd.h2
2 files changed, 93 insertions, 1 deletions
diff --git a/protocol.h b/protocol.h
new file mode 100644
index 0000000..f918565
--- /dev/null
+++ b/protocol.h
@@ -0,0 +1,92 @@
+#ifndef PROTOCOL_H
+#define PROTOCOL_H
+
+#include <QtCore/QRectF>
+
+struct Message
+{
+ enum MessageType
+ {
+ InvalidMessage,
+ RequestMessage,
+ ResponseMessage,
+ EventMessage
+ };
+
+ inline Message(MessageType message = InvalidMessage, quint16 type = -1, quint32 id = -1, const QRectF &rect = QRectF())
+ : message(message), type(type), id(id), rect(rect) {}
+
+ quint16 message;
+ quint16 type;
+ quint32 id;
+ QRectF rect;
+};
+
+struct Request : public Message
+{
+ enum RequestType
+ {
+ InvalidRequest,
+ CreateRequest,
+ DestroyRequest,
+ ShowRequest,
+ HideRequest,
+ RaiseRequest,
+ LowerRequest,
+ UpdateRequest,
+ SetGeometryRequest,
+ };
+
+ inline Request(RequestType type = InvalidRequest, quint32 id = -1, const QRectF &rect = QRectF())
+ : Message(RequestMessage, type, id, rect) {}
+};
+
+struct Response : public Message
+{
+ enum ResponseType
+ {
+ InvalidResponse,
+ CreatedResponse
+ };
+
+ inline Response(ResponseType type = InvalidResponse, quint32 id = -1, const QRectF &rect = QRectF())
+ : Message(ResponseMessage, type, id, rect) {}
+};
+
+struct Event : public Message
+{
+ enum EventType
+ {
+ InvalidEvent,
+ ErrorEvent,
+ ShowEvent,
+ HideEvent,
+ PaintEvent,
+ GeometryChangeEvent,
+ MousePressEvent,
+ MouseReleaseEvent,
+ };
+
+ inline Event(EventType type = InvalidEvent, quint32 id = -1, const QRectF &rect = QRectF())
+ : Message(EventMessage, type, id, rect) {}
+};
+
+inline QDataStream &operator>>(QDataStream &in, Message &message)
+{
+ in >> message.message;
+ in >> message.type;
+ in >> message.id;
+ in >> message.rect;
+ return in;
+}
+
+inline QDataStream &operator<<(QDataStream &out, const Message &message)
+{
+ out << message.message;
+ out << message.type;
+ out << message.id;
+ out << message.rect;
+ return out;
+}
+
+#endif//PROTOCOL_H
diff --git a/qgraphicssystem_dd.h b/qgraphicssystem_dd.h
index 6021d47..9e8af8a 100644
--- a/qgraphicssystem_dd.h
+++ b/qgraphicssystem_dd.h
@@ -47,7 +47,7 @@
#include <QtNetwork/qtcpsocket.h>
#include <QtGui/private/qgraphicssystem_p.h>
-#include "/Users/mmonsen/Development/depots/display-server-client/protocol.h"
+#include "protocol.h"
QT_BEGIN_NAMESPACE