summaryrefslogtreecommitdiff
Unidiff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/net/opietooth/applet/bluezapplet.cpp15
-rw-r--r--noncore/net/opietooth/applet/bluezapplet.h4
2 files changed, 12 insertions, 7 deletions
diff --git a/noncore/net/opietooth/applet/bluezapplet.cpp b/noncore/net/opietooth/applet/bluezapplet.cpp
index 94e29c7..8bb7a93 100644
--- a/noncore/net/opietooth/applet/bluezapplet.cpp
+++ b/noncore/net/opietooth/applet/bluezapplet.cpp
@@ -1,199 +1,204 @@
1/* 1/*
2               =. This file is part of the OPIE Project 2               =. This file is part of the OPIE Project
3             .=l. Copyright (c) 2002 Maximilian Reiss <max.reiss@gmx.de> 3             .=l. Copyright (c) 2002 Maximilian Reiss <max.reiss@gmx.de>
4           .>+-= 4           .>+-=
5 _;:,     .>    :=|. This library is free software; you can 5 _;:,     .>    :=|. This library is free software; you can
6.> <,   >  .   <= redistribute it and/or modify it under 6.> <,   >  .   <= redistribute it and/or modify it under
7:=1 )Y*s>-.--   : the terms of the GNU Library General Public 7:=1 )Y*s>-.--   : the terms of the GNU Library General Public
8.="- .-=="i,     .._ License as published by the Free Software 8.="- .-=="i,     .._ License as published by the Free Software
9 - .   .-<_>     .<> Foundation; either version 2 of the License, 9 - .   .-<_>     .<> Foundation; either version 2 of the License,
10     ._= =}       : or (at your option) any later version. 10     ._= =}       : or (at your option) any later version.
11    .%+i>       _;_. 11    .%+i>       _;_.
12    .i_,=:_.      -<s. This library is distributed in the hope that 12    .i_,=:_.      -<s. This library is distributed in the hope that
13     +  .  -:.       = it will be useful, but WITHOUT ANY WARRANTY; 13     +  .  -:.       = it will be useful, but WITHOUT ANY WARRANTY;
14    : ..    .:,     . . . without even the implied warranty of 14    : ..    .:,     . . . without even the implied warranty of
15    =_        +     =;=| MERCHANTABILITY or FITNESS FOR A 15    =_        +     =;=| MERCHANTABILITY or FITNESS FOR A
16  _.=:.       :    :=>: PARTICULAR PURPOSE. See the GNU 16  _.=:.       :    :=>: PARTICULAR PURPOSE. See the GNU
17..}^=.=       =       ; Library General Public License for more 17..}^=.=       =       ; Library General Public License for more
18++=   -.     .     .: details. 18++=   -.     .     .: details.
19 :     =  ...= . :.=- 19 :     =  ...= . :.=-
20 -.   .:....=;==+<; You should have received a copy of the GNU 20 -.   .:....=;==+<; You should have received a copy of the GNU
21  -_. . .   )=.  = Library General Public License along with 21  -_. . .   )=.  = Library General Public License along with
22    --        :-= this library; see the file COPYING.LIB. 22    --        :-= this library; see the file COPYING.LIB.
23 If not, write to the Free Software Foundation, 23 If not, write to the Free Software Foundation,
24 Inc., 59 Temple Place - Suite 330, 24 Inc., 59 Temple Place - Suite 330,
25 Boston, MA 02111-1307, USA. 25 Boston, MA 02111-1307, USA.
26 26
27*/ 27*/
28 28
29 29
30#include "bluezapplet.h" 30#include "bluezapplet.h"
31#include <qapplication.h> 31#include <qapplication.h>
32 32
33#include <qpe/resource.h> 33#include <qpe/resource.h>
34#include <qpe/qcopenvelope_qws.h> 34#include <qpe/qcopenvelope_qws.h>
35#include <qpe/resource.h> 35#include <qpe/resource.h>
36#include <qpe/config.h> 36#include <qpe/config.h>
37 37
38#include <qpoint.h> 38#include <qpoint.h>
39#include <qpainter.h> 39#include <qpainter.h>
40#include <qlayout.h> 40#include <qlayout.h>
41#include <qframe.h> 41#include <qframe.h>
42#include <qpixmap.h> 42#include <qpixmap.h>
43#include <qstring.h> 43#include <qstring.h>
44#include <qtimer.h> 44#include <qtimer.h>
45#include <qpopupmenu.h> 45#include <qpopupmenu.h>
46 46
47#include <device.h> 47#include <device.h>
48 48
49namespace OpieTooth { 49namespace OpieTooth {
50 50
51 BluezApplet::BluezApplet( QWidget *parent, const char *name ) : QWidget( parent, name ) { 51 BluezApplet::BluezApplet( QWidget *parent, const char *name ) : QWidget( parent, name ) {
52 setFixedHeight( 18 ); 52 setFixedHeight( 18 );
53 setFixedWidth( 14 ); 53 setFixedWidth( 14 );
54 bluezOnPixmap = Resource::loadPixmap( "bluetoothapplet/bluezon" ); 54 bluezOnPixmap = Resource::loadPixmap( "bluetoothapplet/bluezon" );
55 bluezOffPixmap = Resource::loadPixmap( "bluetoothapplet/bluezoff" ); 55 bluezOffPixmap = Resource::loadPixmap( "bluetoothapplet/bluezoff" );
56 // bluezDiscoveryOnPixmap = Resource::loadPixmap( "bluetoothapplet/magglass" ); 56 // bluezDiscoveryOnPixmap = Resource::loadPixmap( "bluetoothapplet/magglass" );
57 startTimer(5000); 57 startTimer(5000);
58 btDevice = 0; 58 btDevice = 0;
59 59
60 } 60 }
61 61
62 BluezApplet::~BluezApplet() { 62 BluezApplet::~BluezApplet() {
63 } 63 }
64 64
65 int BluezApplet::checkBluezStatus() { 65 bool BluezApplet::checkBluezStatus() {
66 if (btDevice) { 66 if (btDevice) {
67 if (btDevice->isLoaded() ) { 67 if (btDevice->isLoaded() ) {
68 return 1; 68 return true;
69 } else { 69 } else {
70 return 0; 70 return false;
71 } 71 }
72 } else { 72 } else {
73 return 0; 73 return false;
74 } 74 }
75 } 75 }
76 76
77 int BluezApplet::setBluezStatus(int c) { 77 int BluezApplet::setBluezStatus(int c) {
78 78
79 if (c == 1) { 79 if (c == 1) {
80 btDevice = new Device("/dev/ttySB0", "csr" ); 80 btDevice = new Device("/dev/ttySB0", "csr" );
81 } else { 81 } else {
82 if (btDevice) { 82 if (btDevice) {
83 delete btDevice; 83 delete btDevice;
84 btDevice = 0; 84 btDevice = 0;
85 } 85 }
86 } 86 }
87 return 0; 87 return 0;
88 } 88 }
89 89
90 int BluezApplet::checkBluezDiscoveryStatus() { 90 int BluezApplet::checkBluezDiscoveryStatus() {
91 } 91 }
92 92
93 int BluezApplet::setBluezDiscoveryStatus(int d) { 93 int BluezApplet::setBluezDiscoveryStatus(int d) {
94 } 94 }
95 95
96 void BluezApplet::mousePressEvent( QMouseEvent *) { 96 void BluezApplet::mousePressEvent( QMouseEvent *) {
97 97
98 QPopupMenu *menu = new QPopupMenu(); 98 QPopupMenu *menu = new QPopupMenu();
99 QPopupMenu *signal = new QPopupMenu(); 99 QPopupMenu *signal = new QPopupMenu();
100 int ret=0; 100 int ret=0;
101 101
102 /* Refresh active state */ 102 /* Refresh active state */
103 timerEvent(NULL); 103 timerEvent(NULL);
104 104
105 105
106 if (bluezactive) { 106 if (bluezactive) {
107 menu->insertItem( tr("Disable Bluetooth"), 0 ); 107 menu->insertItem( tr("Disable Bluetooth"), 0 );
108 } else { 108 } else {
109 menu->insertItem( tr("Enable Bluetooth"), 1 ); 109 menu->insertItem( tr("Enable Bluetooth"), 1 );
110 } 110 }
111 111
112 menu->insertItem( tr("Launch manager"), 2 ); 112 menu->insertItem( tr("Launch manager"), 2 );
113 113
114 menu->insertSeparator(6); 114 menu->insertSeparator(6);
115 menu->insertItem( tr("Signal strength"), signal, 5); 115 menu->insertItem( tr("Signal strength"), signal, 5);
116 menu->insertSeparator(8); 116 menu->insertSeparator(8);
117 117
118 if (bluezDiscoveryActive) { 118 if (bluezDiscoveryActive) {
119 menu->insertItem( tr("Disable discovery"), 3 ); 119 menu->insertItem( tr("Disable discovery"), 3 );
120 } else { 120 } else {
121 menu->insertItem( tr("Enable discovery"), 4 ); 121 menu->insertItem( tr("Enable discovery"), 4 );
122 } 122 }
123 123
124 124
125 QPoint p = mapToGlobal( QPoint(1, -menu->sizeHint().height()-1) ); 125 QPoint p = mapToGlobal( QPoint(1, -menu->sizeHint().height()-1) );
126 ret = menu->exec(p, 0); 126 ret = menu->exec(p, 0);
127 127
128 switch(ret) { 128 switch(ret) {
129 case 0: 129 case 0:
130 setBluezStatus(0); 130 setBluezStatus(0);
131 timerEvent(NULL);
131 break; 132 break;
132 case 1: 133 case 1:
133 setBluezStatus(1); 134 setBluezStatus(1);
135 timerEvent(NULL);
134 break; 136 break;
135 case 2: 137 case 2:
136 // start bluetoothmanager 138 // start bluetoothmanager
137 launchManager(); 139 launchManager();
140 timerEvent(NULL);
138 break; 141 break;
139 case 3: 142 case 3:
140 setBluezDiscoveryStatus(0); 143 setBluezDiscoveryStatus(0);
144 timerEvent(NULL);
141 break; 145 break;
142 case 4: 146 case 4:
143 setBluezDiscoveryStatus(1); 147 setBluezDiscoveryStatus(1);
148 timerEvent(NULL);
144 break; 149 break;
145 //case 7: 150 //case 7:
146 // With table of currently-detected devices. 151 // With table of currently-detected devices.
147 } 152 }
148 153
149 timerEvent(NULL); 154 timerEvent(NULL);
150 delete signal; 155 delete signal;
151 delete menu; 156 delete menu;
152 } 157 }
153 158
154 159
155/** 160/**
156 * Launches the bluetooth manager 161 * Launches the bluetooth manager
157 */ 162 */
158 void BluezApplet::launchManager() { 163 void BluezApplet::launchManager() {
159 QCopEnvelope e("QPE/System", "execute(QString)"); 164 QCopEnvelope e("QPE/System", "execute(QString)");
160 e << QString("bluetooth-manager"); 165 e << QString("bluetooth-manager");
161 } 166 }
162 167
163/** 168/**
164 * Refresh timer 169 * Refresh timer
165 * @param the timer event 170 * @param the timer event
166 */ 171 */
167 void BluezApplet::timerEvent( QTimerEvent * ) { 172 void BluezApplet::timerEvent( QTimerEvent * ) {
168 int oldactive = bluezactive; 173 bool oldactive = bluezactive;
169 int olddiscovery = bluezDiscoveryActive; 174 int olddiscovery = bluezDiscoveryActive;
170 175
171 bluezactive = checkBluezStatus(); 176 bluezactive = checkBluezStatus();
172 bluezDiscoveryActive = checkBluezDiscoveryStatus(); 177 bluezDiscoveryActive = checkBluezDiscoveryStatus();
173 178
174 if ((bluezactive != oldactive) || (bluezDiscoveryActive != olddiscovery)) { 179 if ((bluezactive != oldactive) || (bluezDiscoveryActive != olddiscovery)) {
175 paintEvent(NULL); 180 paintEvent(NULL);
176 } 181 }
177 } 182 }
178 183
179/** 184/**
180 * Implementation of the paint event 185 * Implementation of the paint event
181 * @param the QPaintEvent 186 * @param the QPaintEvent
182 */ 187 */
183 void BluezApplet::paintEvent( QPaintEvent* ) { 188 void BluezApplet::paintEvent( QPaintEvent* ) {
184 QPainter p(this); 189 QPainter p(this);
185 qDebug("paint bluetooth pixmap"); 190 qDebug("paint bluetooth pixmap");
186 191
187 p.eraseRect ( 0, 0, this->width(), this->height() ); 192 p.eraseRect ( 0, 0, this->width(), this->height() );
188 193
189 if (bluezactive > 0) { 194 if (bluezactive > 0) {
190 p.drawPixmap( 0, 1, bluezOnPixmap ); 195 p.drawPixmap( 0, 1, bluezOnPixmap );
191 } else { 196 } else {
192 p.drawPixmap( 0, 1, bluezOffPixmap ); 197 p.drawPixmap( 0, 1, bluezOffPixmap );
193 } 198 }
194 199
195 if (bluezDiscoveryActive > 0) { 200 if (bluezDiscoveryActive > 0) {
196 p.drawPixmap( 0, 1, bluezDiscoveryOnPixmap ); 201 p.drawPixmap( 0, 1, bluezDiscoveryOnPixmap );
197 } 202 }
198 } 203 }
199}; 204};
diff --git a/noncore/net/opietooth/applet/bluezapplet.h b/noncore/net/opietooth/applet/bluezapplet.h
index da05a18..6a8a00e 100644
--- a/noncore/net/opietooth/applet/bluezapplet.h
+++ b/noncore/net/opietooth/applet/bluezapplet.h
@@ -1,75 +1,75 @@
1/* 1/*
2               =. This file is part of the OPIE Project 2               =. This file is part of the OPIE Project
3             .=l. Copyright (c) 2002 Maximilian Reiss <max.reiss@gmx.de> 3             .=l. Copyright (c) 2002 Maximilian Reiss <max.reiss@gmx.de>
4           .>+-= 4           .>+-=
5 _;:,     .>    :=|. This library is free software; you can 5 _;:,     .>    :=|. This library is free software; you can
6.> <,   >  .   <= redistribute it and/or modify it under 6.> <,   >  .   <= redistribute it and/or modify it under
7:=1 )Y*s>-.--   : the terms of the GNU Library General Public 7:=1 )Y*s>-.--   : the terms of the GNU Library General Public
8.="- .-=="i,     .._ License as published by the Free Software 8.="- .-=="i,     .._ License as published by the Free Software
9 - .   .-<_>     .<> Foundation; either version 2 of the License, 9 - .   .-<_>     .<> Foundation; either version 2 of the License,
10     ._= =}       : or (at your option) any later version. 10     ._= =}       : or (at your option) any later version.
11    .%+i>       _;_. 11    .%+i>       _;_.
12    .i_,=:_.      -<s. This library is distributed in the hope that 12    .i_,=:_.      -<s. This library is distributed in the hope that
13     +  .  -:.       = it will be useful, but WITHOUT ANY WARRANTY; 13     +  .  -:.       = it will be useful, but WITHOUT ANY WARRANTY;
14    : ..    .:,     . . . without even the implied warranty of 14    : ..    .:,     . . . without even the implied warranty of
15    =_        +     =;=| MERCHANTABILITY or FITNESS FOR A 15    =_        +     =;=| MERCHANTABILITY or FITNESS FOR A
16  _.=:.       :    :=>: PARTICULAR PURPOSE. See the GNU 16  _.=:.       :    :=>: PARTICULAR PURPOSE. See the GNU
17..}^=.=       =       ; Library General Public License for more 17..}^=.=       =       ; Library General Public License for more
18++=   -.     .     .: details. 18++=   -.     .     .: details.
19 :     =  ...= . :.=- 19 :     =  ...= . :.=-
20 -.   .:....=;==+<; You should have received a copy of the GNU 20 -.   .:....=;==+<; You should have received a copy of the GNU
21  -_. . .   )=.  = Library General Public License along with 21  -_. . .   )=.  = Library General Public License along with
22    --        :-= this library; see the file COPYING.LIB. 22    --        :-= this library; see the file COPYING.LIB.
23 If not, write to the Free Software Foundation, 23 If not, write to the Free Software Foundation,
24 Inc., 59 Temple Place - Suite 330, 24 Inc., 59 Temple Place - Suite 330,
25 Boston, MA 02111-1307, USA. 25 Boston, MA 02111-1307, USA.
26 26
27*/ 27*/
28 28
29#ifndef __BLUEZAPPLET_H__ 29#ifndef __BLUEZAPPLET_H__
30#define __BLUEZAPPLET_H__ 30#define __BLUEZAPPLET_H__
31 31
32#include <qwidget.h> 32#include <qwidget.h>
33#include <qpixmap.h> 33#include <qpixmap.h>
34#include <qtimer.h> 34#include <qtimer.h>
35 35
36namespace OpieTooth { 36namespace OpieTooth {
37 class Device; 37 class Device;
38 38
39 class BluezApplet : public QWidget { 39 class BluezApplet : public QWidget {
40 Q_OBJECT 40 Q_OBJECT
41 public: 41 public:
42 BluezApplet( QWidget *parent = 0, const char *name=0 ); 42 BluezApplet( QWidget *parent = 0, const char *name=0 );
43 ~BluezApplet(); 43 ~BluezApplet();
44 44
45 protected: 45 protected:
46 void timerEvent(QTimerEvent *te ); 46 void timerEvent(QTimerEvent *te );
47 47
48public slots: 48public slots:
49 private: 49 private:
50 void mousePressEvent( QMouseEvent * ); 50 void mousePressEvent( QMouseEvent * );
51 void paintEvent( QPaintEvent* ); 51 void paintEvent( QPaintEvent* );
52 void launchManager(); 52 void launchManager();
53 int checkBluezStatus(); 53 bool checkBluezStatus();
54 int setBluezStatus(int); 54 int setBluezStatus(int);
55 int checkBluezDiscoveryStatus(); 55 int checkBluezDiscoveryStatus();
56 int setBluezDiscoveryStatus(int); 56 int setBluezDiscoveryStatus(int);
57 int sockfd; 57 int sockfd;
58 58
59 private: 59 private:
60 Device* btDevice; 60 Device* btDevice;
61 QPixmap bluezOnPixmap; 61 QPixmap bluezOnPixmap;
62 QPixmap bluezOffPixmap; 62 QPixmap bluezOffPixmap;
63 QPixmap bluezDiscoveryOnPixmap; 63 QPixmap bluezDiscoveryOnPixmap;
64 int bluezactive; 64 bool bluezactive;
65 int bluezDiscoveryActive; 65 int bluezDiscoveryActive;
66 66
67private slots: 67private slots:
68 68
69 69
70 }; 70 };
71}; 71};
72 72
73 73
74#endif 74#endif
75 75