-rw-r--r-- | x11/ipc/client/ocopclient.cpp | 18 | ||||
-rw-r--r-- | x11/ipc/client/ocopclient.h | 2 | ||||
-rw-r--r-- | x11/libqpe-x11/libqpe-x11.pro | 25 | ||||
-rw-r--r-- | x11/libqpe-x11/qt/qcopchannel_qws.cpp | 8 |
4 files changed, 35 insertions, 18 deletions
diff --git a/x11/ipc/client/ocopclient.cpp b/x11/ipc/client/ocopclient.cpp index 1c25271..43e426c 100644 --- a/x11/ipc/client/ocopclient.cpp +++ b/x11/ipc/client/ocopclient.cpp @@ -18,13 +18,13 @@ OCOPClient::OCOPClient( const QString& path, QObject* obj ) { init(QFile::encodeName(path) ); } OCOPClient::~OCOPClient() { close( m_socket ); } -void OCOPClient::init( const QCString& str ) { +void OCOPClient::init( const QCString& ) { struct sockaddr_un unix_adr; if ( (m_socket = socket(PF_UNIX, SOCK_STREAM, 0) ) < 0 ) { qWarning("could not socket"); QTimer::singleShot(400, this,SLOT(init() ) ); return; } @@ -59,71 +59,71 @@ void OCOPClient::newData() { case OCOPPacket::Method: case OCOPPacket::RegisterChannel: case OCOPPacket::UnregisterChannel: case OCOPPacket::Return: case OCOPPacket::Signal: /* is Registered should be handled sync */ - case OCOPPacket::isRegistered: + case OCOPPacket::IsRegistered: break; /* emit the signal */ case OCOPPacket::Call: emit called( pack.channel(), pack.header(), pack.content() ); break; } } -OCOPPacket OCOPClient::packet() { +OCOPPacket OCOPClient::packet() const{ QCString chan; QCString func; QByteArray ar; OCOPHead head; memset(&head, 0, sizeof(head) ); read(m_socket, &head, sizeof(head) ); if ( head.magic == 47 ) { read(m_socket, chan.data(), head.chlen ); read(m_socket, func.data(), head.funclen ); read(m_socket, ar.data(), head.datalen ); } - OCOPPacket pack(head.type, chan, func, data ); + OCOPPacket pack(head.type, chan, func, ar ); return pack; } /* * we've blocking IO here on these sockets * so we send and go on read * this will be blocked */ -bool OCOPClient::isRegistered( const QCString& chan ) { +bool OCOPClient::isRegistered( const QCString& chan ) const{ /* should I disconnect the socket notfier? */ OCOPPacket packe(OCOPPacket::IsRegistered, chan ); OCOPHead head = packe.head(); write(m_socket, &head, sizeof(head) ); /* block */ OCOPPacket pack = packet(); /* connect here again */ if ( pack.channel() == chan ) { QCString func = pack.header(); if (func[0] == 1 ) - return; + return true; } return false; }; void OCOPClient::send( const QCString& chan, const QCString& fu, const QByteArray& arr ) { OCOPPacket pack(OCOPPacket::Call, chan, fu, arr ); call( pack ); } -void OCOPClient::addChannel(const QCString& channet) { +void OCOPClient::addChannel(const QCString& channel) { OCOPPacket pack(OCOPPacket::RegisterChannel, channel ); call( pack ); } void OCOPClient::delChannel(const QCString& chan ) { - OCOPPacket pack(OCOPPacket::UnregisterChannel, channel ); + OCOPPacket pack(OCOPPacket::UnregisterChannel, chan ); call( pack ); } -void OCOPPacket::call( const OCOPPacket& pack ) { +void OCOPClient::call( const OCOPPacket& pack ) { OCOPHead head = pack.head(); write(m_socket, &head, sizeof(head) ); write(m_socket, pack.channel().data(), pack.channel().size() ); write(m_socket, pack.header().data(), pack.header().size() ); write(m_socket, pack.content().data(), pack.content().size() ); } diff --git a/x11/ipc/client/ocopclient.h b/x11/ipc/client/ocopclient.h index db04d37..e9544b9 100644 --- a/x11/ipc/client/ocopclient.h +++ b/x11/ipc/client/ocopclient.h @@ -44,13 +44,13 @@ public: signals: void called(const QCString&, const QCString&, const QByteArray& ); private slots: void init(const QCString& pa); void newData(); private: - OCOPPacket packet(); + OCOPPacket packet()const; void call( const OCOPPacket& ); QSocketNotifier* m_notify; int m_socket; private slots: diff --git a/x11/libqpe-x11/libqpe-x11.pro b/x11/libqpe-x11/libqpe-x11.pro index 1d30f90..64c05fa 100644 --- a/x11/libqpe-x11/libqpe-x11.pro +++ b/x11/libqpe-x11/libqpe-x11.pro @@ -50,14 +50,18 @@ HEADERS = ../../library/calendar.h \ ../../library/findwidget_p.h \ ../../library/finddialog.h \ ../../library/lnkproperties.h \ ../../library/windowdecorationinterface.h \ ../../library/textcodecinterface.h \ ../../library/imagecodecinterface.h \ + qt/qcopchannel_qws.h \ qpe/qpeapplication.h \ - qpe/fontmanager.h + qpe/fontmanager.h \ + ../ipc/client/ocopclient.h \ + ../ipc/common/ocoppacket.h + SOURCES = ../../library/calendar.cpp \ ../../library/global.cpp \ ../../library/xmlreader.cpp \ ../../library/mimetype.cpp \ ../../library/menubutton.cpp \ @@ -103,22 +107,35 @@ SOURCES = ../../library/calendar.cpp \ ../../library/categorywidget.cpp \ ../../library/ir.cpp \ ../../library/backend/vcc_yacc.cpp \ ../../library/backend/vobject.cpp \ ../../library/findwidget_p.cpp \ ../../library/finddialog.cpp \ - ../../library/lnkproperties.cpp + ../../library/lnkproperties.cpp \ + qt/qcopchannel_qws.cpp \ + qpe/qpeapplication.cpp \ + ../ipc/client/ocopclient.cpp \ + ../ipc/common/ocoppacket.cpp # Qt 3 compatibility -qt2:HEADERS += quuid.h qcom.h qlibrary.h qlibrary_p.h -qt2:SOURCES += quuid.cpp qlibrary.cpp qlibrary_unix.cpp +HEADERS += ../../library/quuid.h \ + ../../library/qcom.h \ + ../../library/qlibrary.h \ + ../../library/qlibrary_p.h + +SOURCES += ../../library/quuid.cpp \ + ../../library/qlibrary.cpp \ + ../../library/qlibrary_unix.cpp + INCLUDEPATH += $(OPIEDIR)/include backend LIBS += -ldl -lcrypt -lm + INTERFACES = ../../library/passwordbase_p.ui \ ../../library/categoryeditbase_p.ui \ ../../library/findwidgetbase_p.ui \ ../../library/lnkpropertiesbase_p.ui + TARGET = qpe-x11 DESTDIR = $(QTDIR)/lib$(PROJMAK) # This is set by configure$(OPIEDIR). VERSION = 1.5.0.1 diff --git a/x11/libqpe-x11/qt/qcopchannel_qws.cpp b/x11/libqpe-x11/qt/qcopchannel_qws.cpp index efbef3f..c315d66 100644 --- a/x11/libqpe-x11/qt/qcopchannel_qws.cpp +++ b/x11/libqpe-x11/qt/qcopchannel_qws.cpp @@ -1,8 +1,8 @@ -#include "../ipc/client/ocopclient.h" +#include "../../ipc/client/ocopclient.h" #include <qcopchannel_qws.h> QCopChannel::QCopChannel( const QCString& channel, QObject* parent, const char* name ) : QObject( parent, name ),m_chan(channel) { @@ -24,23 +24,23 @@ QCString QCopChannel::channel()const { bool QCopChannel::isRegistered( const QCString& chan) { OCOPClient client; return client.isRegistered( chan ); } bool QCopChannel::send( const QCString& chan, const QCString& msg ) { QByteArray ar(0); - return return sendLocally(chan, msg, ar ); + return sendLocally(chan, msg, ar ); } -bool QCString::send( const QCString& chan, const QCString& msg, +bool QCopChannel::send( const QCString& chan, const QCString& msg, const QByteArray& ar ) { return sendLocally( chan, msg, ar ); } bool QCopChannel::sendLocally( const QCString& chan, const QCString& msg, const QByteArray& ar ) { OCOPClient client; client.send( chan, msg, ar ); return true; } void QCopChannel::rev( const QCString& chan, const QCString& msg, const QByteArray& ar ) { if (chan == m_chan ) - emit received(chan, msg, ar ); + emit received(msg, ar ); } |