-rw-r--r-- | core/applets/irdaapplet/irda.cpp | 8 | ||||
-rw-r--r-- | core/applets/irdaapplet/irda.h | 2 |
2 files changed, 5 insertions, 5 deletions
diff --git a/core/applets/irdaapplet/irda.cpp b/core/applets/irdaapplet/irda.cpp index 03912aa..28a79d1 100644 --- a/core/applets/irdaapplet/irda.cpp +++ b/core/applets/irdaapplet/irda.cpp @@ -132,107 +132,107 @@ void IrdaApplet::mousePressEvent( QMouseEvent *) { QPopupMenu *menu = new QPopupMenu(); QString cmd; int ret=0; /* Refresh active state */ timerEvent(NULL); // menu->insertItem( tr("More..."), 4 ); if (irdaactive) menu->insertItem( tr("Disable IrDA"), 0 ); else menu->insertItem( tr("Enable IrDA"), 1 ); if (irdaDiscoveryActive) menu->insertItem( tr("Disable Discovery"), 2 ); else menu->insertItem( tr("Enable Discovery"), 3 ); if( receiveActive ){ menu->insertItem( tr("Disable Receive"), 5 ); } else { menu->insertItem( tr("Enable Receive"), 4 ); } QPoint p = mapToGlobal( QPoint(1, menu->sizeHint().height()-1) ); ret = menu->exec(p, 2); qDebug("ret was %d\n", ret); switch(ret) { case 0: setIrdaStatus(0); timerEvent(NULL); break; case 1: setIrdaStatus(1); timerEvent(NULL); break; case 2: setIrdaDiscoveryStatus(0); timerEvent(NULL); break; case 3: setIrdaDiscoveryStatus(1); timerEvent(NULL); // NULL is undefined in c++ use 0 or 0l break; case 4: { // enable receive qWarning("Enable receive" ); - QCopEnvelope e("QPE/Obex", "receive(bool)" ); - e << true; + QCopEnvelope e("QPE/Obex", "receive(int)" ); + e << 1; receiveActive = true; receiveStateChanged = true; timerEvent(NULL); break; } case 5: { // disable receive qWarning("Disable receive" ); - QCopEnvelope e("QPE/Obex", "receive(bool)" ); - e << false; + QCopEnvelope e("QPE/Obex", "receive(int)" ); + e << 0; receiveActive = false; receiveStateChanged = true; timerEvent(NULL); break; } case 6: qDebug("FIXME: Bring up pretty menu...\n"); // With table of currently-detected devices. } delete menu; // Can somebody explain why use a QPopupMenu* and not QPopupMenu nor QAction. with out delete we will leak cause QPopupMenu doesn't have a parent in this case } void IrdaApplet::timerEvent( QTimerEvent * ) { int oldactive = irdaactive; int olddiscovery = irdaDiscoveryActive; bool receiveUpdate = false; if (receiveStateChanged) { receiveUpdate = true; receiveStateChanged = false; } irdaactive = checkIrdaStatus(); irdaDiscoveryActive = checkIrdaDiscoveryStatus(); if ((irdaactive != oldactive) || (irdaDiscoveryActive != olddiscovery) || receiveUpdate ) { paintEvent(NULL); } } void IrdaApplet::paintEvent( QPaintEvent* ) { QPainter p(this); qDebug("paint irda pixmap"); p.eraseRect ( 0, 0, this->width(), this->height() ); if (irdaactive > 0) { p.drawPixmap( 0, 1, irdaOnPixmap ); } else { p.drawPixmap( 0, 1, irdaOffPixmap ); } if (irdaDiscoveryActive > 0) { p.drawPixmap( 0, 1, irdaDiscoveryOnPixmap ); } if (receiveActive) { p.drawPixmap( 0, 1, receiveActivePixmap); } diff --git a/core/applets/irdaapplet/irda.h b/core/applets/irdaapplet/irda.h index 97ca3c3..002d295 100644 --- a/core/applets/irdaapplet/irda.h +++ b/core/applets/irdaapplet/irda.h @@ -6,58 +6,58 @@ ** GNU General Public License version 2 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. ** ** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE ** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. ** **********************************************************************/ #ifndef SCREENSHOT_APPLET_H__ #define SCREENSHOT_APPLET_H__ #include <qwidget.h> #include <qframe.h> #include <qpixmap.h> #include <qguardedptr.h> #include <qtimer.h> #include <qfile.h> class IrdaApplet : public QWidget { Q_OBJECT public: IrdaApplet( QWidget *parent = 0, const char *name=0 ); ~IrdaApplet(); protected: void timerEvent(QTimerEvent *te ); private: void mousePressEvent( QMouseEvent * ); void paintEvent( QPaintEvent* ); int checkIrdaStatus(); int setIrdaStatus(int); int checkIrdaDiscoveryStatus(); int setIrdaDiscoveryStatus(int); int sockfd; private: QPixmap irdaOnPixmap; QPixmap irdaOffPixmap; QPixmap irdaDiscoveryOnPixmap; QPixmap receiveActivePixmap; int irdaactive; // bool and bitfields later bool irdaactive :1 ; int irdaDiscoveryActive; - bool receiveActive; + bool receiveActive : 1; bool receiveStateChanged; private slots: }; #endif // __SCREENSHOT_APPLET_H__ |