From 13e45fd2d89d3704aebfba1031cfc7b23aad73d2 Mon Sep 17 00:00:00 2001 From: Manuel Nickschas Date: Tue, 24 Oct 2006 11:29:19 +0000 Subject: [PATCH] Fixed a bug that prevented our custom Message type to be used with QDataStream, causing havoc when trying to use gui and core separately. Apparently you have to separately register the stream operators with the QMetaObject system. --- gui/channelwidget.ui | 2 +- main/CMakeLists.txt | 4 ++-- main/global.cpp | 1 + {network => main}/message.cpp | 0 {network => main}/message.h | 3 +++ network/CMakeLists.txt | 4 ++-- 6 files changed, 9 insertions(+), 5 deletions(-) rename {network => main}/message.cpp (100%) rename {network => main}/message.h (94%) diff --git a/gui/channelwidget.ui b/gui/channelwidget.ui index ffea438a..a821979f 100644 --- a/gui/channelwidget.ui +++ b/gui/channelwidget.ui @@ -130,7 +130,7 @@ false - true + false 1 diff --git a/main/CMakeLists.txt b/main/CMakeLists.txt index 4f38f8c5..bfdb7af4 100644 --- a/main/CMakeLists.txt +++ b/main/CMakeLists.txt @@ -1,5 +1,5 @@ -SET(main_SRCS global.cpp logger.cpp util.cpp) -SET(main_HDRS util.h) +SET(main_SRCS global.cpp logger.cpp util.cpp message.cpp) +SET(main_HDRS util.h message.h) SET(main_MOCS global.h logger.h) QT4_WRAP_CPP(_MOC ${main_MOCS}) diff --git a/main/global.cpp b/main/global.cpp index 25eba7ec..962ac41c 100644 --- a/main/global.cpp +++ b/main/global.cpp @@ -32,6 +32,7 @@ Global::Global() { if(global) qFatal("Trying to instantiate more than one Global object!"); qInstallMsgHandler(messageHandler); qRegisterMetaType("Message"); + qRegisterMetaTypeStreamOperators("Message"); //initIconMap(); } diff --git a/network/message.cpp b/main/message.cpp similarity index 100% rename from network/message.cpp rename to main/message.cpp diff --git a/network/message.h b/main/message.h similarity index 94% rename from network/message.h rename to main/message.h index c9f55a4e..9eb182a7 100644 --- a/network/message.h +++ b/main/message.h @@ -39,6 +39,9 @@ struct Message { }; +QDataStream &operator<<(QDataStream &out, const Message &msg); +QDataStream &operator>>(QDataStream &in, Message &msg); + Q_DECLARE_METATYPE(Message) #endif diff --git a/network/CMakeLists.txt b/network/CMakeLists.txt index 20b0c908..0ce6c67d 100644 --- a/network/CMakeLists.txt +++ b/network/CMakeLists.txt @@ -1,5 +1,5 @@ -SET(network_SRCS server.cpp buffer.cpp message.cpp) -SET(network_HDRS message.h) +SET(network_SRCS server.cpp buffer.cpp) +SET(network_HDRS) SET(network_MOCS server.h buffer.h) QT4_WRAP_CPP(_MOC ${network_MOCS}) -- 2.20.1