summaryrefslogtreecommitdiff
path: root/noncore/net
authorharlekin <harlekin>2002-06-28 12:35:57 (UTC)
committer harlekin <harlekin>2002-06-28 12:35:57 (UTC)
commitf67804b04c2acac7c4d9fd854eaee3501fd3915d (patch) (unidiff)
tree1c1b706ee826e38173677696a5c93c9d2d64cefd /noncore/net
parentffcfdb4e932dcbd147b0294aeb70762927cdbc5f (diff)
downloadopie-f67804b04c2acac7c4d9fd854eaee3501fd3915d.zip
opie-f67804b04c2acac7c4d9fd854eaee3501fd3915d.tar.gz
opie-f67804b04c2acac7c4d9fd854eaee3501fd3915d.tar.bz2
updates like editing hcid.conf and cleanups
Diffstat (limited to 'noncore/net') (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/net/opietooth/manager/bluebase.cpp54
-rw-r--r--noncore/net/opietooth/manager/bluebase.h3
-rw-r--r--noncore/net/opietooth/manager/manager.pro4
3 files changed, 52 insertions, 9 deletions
diff --git a/noncore/net/opietooth/manager/bluebase.cpp b/noncore/net/opietooth/manager/bluebase.cpp
index af65f14..b4b59c3 100644
--- a/noncore/net/opietooth/manager/bluebase.cpp
+++ b/noncore/net/opietooth/manager/bluebase.cpp
@@ -8,38 +8,38 @@
8 */ 8 */
9/*************************************************************************** 9/***************************************************************************
10 * * 10 * *
11 * This program is free software; you can redistribute it and/or modify * 11 * This program is free software; you can redistribute it and/or modify *
12 * it under the terms of the GNU General Public License as published by * 12 * it under the terms of the GNU General Public License as published by *
13 * the Free Software Foundation; either version 2 of the License, or * 13 * the Free Software Foundation; either version 2 of the License, or *
14 * (at your option) any later version. * 14 * (at your option) any later version. *
15 * * 15 * *
16 ***************************************************************************/ 16 ***************************************************************************/
17 17
18#include "bluebase.h" 18#include "bluebase.h"
19#include "scandialog.h" 19#include "scandialog.h"
20#include "hciconfwrapper.h"
20 21
21#include <qframe.h> 22#include <qframe.h>
22#include <qlabel.h> 23#include <qlabel.h>
23#include <qpushbutton.h> 24#include <qpushbutton.h>
24#include <qlayout.h> 25#include <qlayout.h>
25#include <qvariant.h> 26#include <qvariant.h>
26#include <qwhatsthis.h> 27#include <qwhatsthis.h>
27#include <qimage.h> 28#include <qimage.h>
28#include <qpixmap.h> 29#include <qpixmap.h>
29#include <qtabwidget.h> 30#include <qtabwidget.h>
30#include <qscrollview.h> 31#include <qscrollview.h>
31#include <qvbox.h> 32#include <qvbox.h>
32#include <qmessagebox.h> 33#include <qmessagebox.h>
33#include <qapplication.h>
34#include <qcheckbox.h> 34#include <qcheckbox.h>
35#include <qlineedit.h> 35#include <qlineedit.h>
36#include <qlistview.h> 36#include <qlistview.h>
37#include <qdir.h> 37#include <qdir.h>
38#include <qpopupmenu.h> 38#include <qpopupmenu.h>
39 39
40#include <qpe/resource.h> 40#include <qpe/resource.h>
41#include <qpe/config.h> 41#include <qpe/config.h>
42 42
43#include <remotedevice.h> 43#include <remotedevice.h>
44 44
45 45
@@ -49,26 +49,27 @@ namespace OpieTooth {
49 BlueBase::BlueBase( QWidget* parent, const char* name, WFlags fl ) 49 BlueBase::BlueBase( QWidget* parent, const char* name, WFlags fl )
50 : BluetoothBase( parent, name, fl ) { 50 : BluetoothBase( parent, name, fl ) {
51 51
52 localDevice = new Manager( "hci0" ); 52 localDevice = new Manager( "hci0" );
53 53
54 connect( PushButton2, SIGNAL( clicked() ), this, SLOT(startScan() ) ); 54 connect( PushButton2, SIGNAL( clicked() ), this, SLOT(startScan() ) );
55 connect( configApplyButton, SIGNAL(clicked() ), this, SLOT(applyConfigChanges() ) ); 55 connect( configApplyButton, SIGNAL(clicked() ), this, SLOT(applyConfigChanges() ) );
56 // not good since lib is async 56 // not good since lib is async
57 // connect( ListView2, SIGNAL( expanded ( QListViewItem* ) ), 57 // connect( ListView2, SIGNAL( expanded ( QListViewItem* ) ),
58 // this, SLOT( addServicesToDevice( QListViewItem * ) ) ); 58 // this, SLOT( addServicesToDevice( QListViewItem * ) ) );
59 connect( ListView2, SIGNAL( clicked( QListViewItem* )), 59 connect( ListView2, SIGNAL( clicked( QListViewItem* )),
60 this, SLOT( startServiceActionClicked( QListViewItem* ) ) ); 60 this, SLOT( startServiceActionClicked( QListViewItem* ) ) );
61 // hehe, cast right later
61 connect( ListView2, SIGNAL( rightButtonClicked( QListViewItem *, const QPoint &, int ) ), 62 connect( ListView2, SIGNAL( rightButtonClicked( QListViewItem *, const QPoint &, int ) ),
62 this, SLOT(startServiceActionHold( BTListItem *, const QPoint &, int) ) ); 63 this, SLOT(startServiceActionHold( QListViewItem *, const QPoint &, int) ) );
63 connect( localDevice , SIGNAL( foundServices( const QString& , Services::ValueList ) ), 64 connect( localDevice , SIGNAL( foundServices( const QString& , Services::ValueList ) ),
64 this, SLOT( addServicesToDevice( const QString& , Services::ValueList ) ) ); 65 this, SLOT( addServicesToDevice( const QString& , Services::ValueList ) ) );
65 connect( localDevice, SIGNAL( available( const QString&, bool ) ), 66 connect( localDevice, SIGNAL( available( const QString&, bool ) ),
66 this, SLOT( deviceActive( const QString& , bool ) ) ); 67 this, SLOT( deviceActive( const QString& , bool ) ) );
67 68
68 //Load all icons needed 69 //Load all icons needed
69 70
70 offPix = Resource::loadPixmap( "editdelete" ); 71 offPix = Resource::loadPixmap( "editdelete" );
71 onPix = Resource::loadPixmap( "installed" ); 72 onPix = Resource::loadPixmap( "installed" );
72 73
73 QPalette pal = this->palette(); 74 QPalette pal = this->palette();
74 QColor col = pal.color( QPalette::Active, QColorGroup::Background ); 75 QColor col = pal.color( QPalette::Active, QColorGroup::Background );
@@ -81,24 +82,25 @@ namespace OpieTooth {
81 setCaption( tr( "Bluetooth Manager" ) ); 82 setCaption( tr( "Bluetooth Manager" ) );
82 83
83 readConfig(); 84 readConfig();
84 initGui(); 85 initGui();
85 86
86 //TESTING 87 //TESTING
87 ListView2->setRootIsDecorated(true); 88 ListView2->setRootIsDecorated(true);
88 89
89 BTListItem *topLV2 = new BTListItem( ListView2, "Siemens S45", "", "device" ); 90 BTListItem *topLV2 = new BTListItem( ListView2, "Siemens S45", "", "device" );
90 topLV2->setPixmap( 1, onPix ); 91 topLV2->setPixmap( 1, onPix );
91 (void) new BTListItem( topLV2, "Serial" ,"", "service" ); 92 (void) new BTListItem( topLV2, "Serial" ,"", "service" );
92 (void) new BTListItem( topLV2, "BlueNiC" , "", "service" ); 93 (void) new BTListItem( topLV2, "BlueNiC" , "", "service" );
94 writeToHciConfig();
93 } 95 }
94 96
95 97
96 /** 98 /**
97 * Reads all options from the config file 99 * Reads all options from the config file
98 */ 100 */
99 void BlueBase::readConfig() { 101 void BlueBase::readConfig() {
100 102
101 Config cfg( "bluetoothmanager" ); 103 Config cfg( "bluetoothmanager" );
102 cfg.setGroup( "bluezsettings" ); 104 cfg.setGroup( "bluezsettings" );
103 105
104 106
@@ -117,25 +119,63 @@ namespace OpieTooth {
117 void BlueBase::writeConfig() { 119 void BlueBase::writeConfig() {
118 120
119 121
120 Config cfg( "bluetoothmanager" ); 122 Config cfg( "bluetoothmanager" );
121 cfg.setGroup( "bluezsettings" ); 123 cfg.setGroup( "bluezsettings" );
122 124
123 cfg.writeEntry( "name" , deviceName ); 125 cfg.writeEntry( "name" , deviceName );
124 cfg.writeEntryCrypt( "passkey" , defaultPasskey ); 126 cfg.writeEntryCrypt( "passkey" , defaultPasskey );
125 cfg.writeEntry( "useEncryption" , useEncryption ); 127 cfg.writeEntry( "useEncryption" , useEncryption );
126 cfg.writeEntry( "enableAuthentification" , enableAuthentification ); 128 cfg.writeEntry( "enableAuthentification" , enableAuthentification );
127 cfg.writeEntry( "enablePagescan" , enablePagescan ); 129 cfg.writeEntry( "enablePagescan" , enablePagescan );
128 cfg.writeEntry( "enableInquiryscan" , enableInquiryscan ); 130 cfg.writeEntry( "enableInquiryscan" , enableInquiryscan );
129} 131
132 writeToHciConfig();
133 }
134
135 void BlueBase::writeToHciConfig() {
136
137 HciConfWrapper *hciconf = new HciConfWrapper( "/tmp/hcid.conf" );
138 hciconf->setPinHelper( "/bin/QtPalmtop/bin/blue-pin" );
139
140
141 // hciconf->setPinHelper( "/bin/QtPalmtop/bin/blue-pin" );
142
143 hciconf->setName( deviceName );
144
145 if ( useEncryption == 1) {
146 hciconf->setEncrypt( true );
147 } else {
148 hciconf->setEncrypt( false );
149 }
150
151
152 if ( enableAuthentification == 1) {
153 hciconf->setAuth( true );
154 } else {
155 hciconf->setAuth( false );
156 }
157
158 if ( enablePagescan == 1) {
159 hciconf->setPscan( true );
160 } else {
161 hciconf->setPscan( false );
162 }
163
164 if ( enableInquiryscan == 1) {
165 hciconf->setIscan( true );
166 } else {
167 hciconf->setIscan( false );
168 }
169 }
130 170
131 171
132 /** 172 /**
133 * Read the list of allready known devices 173 * Read the list of allready known devices
134 * 174 *
135 */ 175 */
136 void BlueBase::readSavedDevices() { 176 void BlueBase::readSavedDevices() {
137 177
138 QList<RemoteDevice> *loadedDevices = new QList<RemoteDevice>; 178 QList<RemoteDevice> *loadedDevices = new QList<RemoteDevice>;
139 179
140 QDir deviceListSave( QDir::homeDirPath() + "/Settings/bluetooth/"); 180 QDir deviceListSave( QDir::homeDirPath() + "/Settings/bluetooth/");
141 // list of .conf files 181 // list of .conf files
@@ -216,24 +256,25 @@ namespace OpieTooth {
216 */ 256 */
217 void BlueBase::applyConfigChanges() { 257 void BlueBase::applyConfigChanges() {
218 258
219 deviceName = deviceNameLine->text(); 259 deviceName = deviceNameLine->text();
220 defaultPasskey = passkeyLine->text(); 260 defaultPasskey = passkeyLine->text();
221 useEncryption = cryptCheckBox->isChecked(); 261 useEncryption = cryptCheckBox->isChecked();
222 enableAuthentification = authCheckBox->isChecked(); 262 enableAuthentification = authCheckBox->isChecked();
223 enablePagescan = pagescanCheckBox->isChecked(); 263 enablePagescan = pagescanCheckBox->isChecked();
224 enableInquiryscan = inquiryscanCheckBox->isChecked(); 264 enableInquiryscan = inquiryscanCheckBox->isChecked();
225 265
226 writeConfig(); 266 writeConfig();
227 267
268
228 QMessageBox* box = new QMessageBox( this, "Test" ); 269 QMessageBox* box = new QMessageBox( this, "Test" );
229 box->setText( tr( "Changes applied" ) ); 270 box->setText( tr( "Changes applied" ) );
230 box->show(); 271 box->show();
231 // falls nötig hcid killhupen - die funktionalität adden 272 // falls nötig hcid killhupen - die funktionalität adden
232 } 273 }
233 274
234 275
235 /** 276 /**
236 * Add fresh found devices from scan dialog to the listing 277 * Add fresh found devices from scan dialog to the listing
237 * 278 *
238 */ 279 */
239 void BlueBase::addSearchedDevices( QList<RemoteDevice> &newDevices ) { 280 void BlueBase::addSearchedDevices( QList<RemoteDevice> &newDevices ) {
@@ -265,56 +306,57 @@ namespace OpieTooth {
265 306
266 /** 307 /**
267 * Action that is toggled on entrys on click 308 * Action that is toggled on entrys on click
268 */ 309 */
269 void BlueBase::startServiceActionClicked( QListViewItem *item ) { 310 void BlueBase::startServiceActionClicked( QListViewItem *item ) {
270 311
271 312
272 } 313 }
273 314
274 /** 315 /**
275 * Action that are toggled on hold (mostly QPopups i guess) 316 * Action that are toggled on hold (mostly QPopups i guess)
276 */ 317 */
277 void BlueBase::startServiceActionHold( BTListItem * item, const QPoint & point, int column ) { 318 void BlueBase::startServiceActionHold( QListViewItem * item, const QPoint & point, int column ) {
278 319
279 QPopupMenu *menu = new QPopupMenu(); 320 QPopupMenu *menu = new QPopupMenu();
280 321
281 int ret=0; 322 int ret=0;
282 323
324
283 //QSize s = menu->sizeHint ( ); 325 //QSize s = menu->sizeHint ( );
284 326
285 if ( item->type() == "device") { 327 if ( ((BTListItem*)item)->type() == "device") {
286 328
287 QPopupMenu *groups = new QPopupMenu(); 329 QPopupMenu *groups = new QPopupMenu();
288 330
289 menu->insertItem( tr("rescan sevices:"), 0); 331 menu->insertItem( tr("rescan sevices:"), 0);
290 menu->insertItem( tr("to group"), groups , 1); 332 menu->insertItem( tr("to group"), groups , 1);
291 menu->insertItem( tr("delete"), 2); 333 menu->insertItem( tr("delete"), 2);
292 334
293 335
294 ret = menu->exec( point , 0); 336 ret = menu->exec( point , 0);
295 337
296 switch(ret) { 338 switch(ret) {
297 case 0: 339 case 0:
298 break; 340 break;
299 case 1: 341 case 1:
300 break; 342 break;
301 case 2: 343 case 2:
302 // delete childs too 344 // delete childs too
303 delete item; 345 delete item;
304 break; 346 break;
305 } 347 }
306 delete groups; 348 delete groups;
307 349
308 } else if ( item->type() == "service") { 350 } else if ( ((BTListItem*)item)->type() == "service") {
309 menu->insertItem( tr("Test1:"), 0); 351 menu->insertItem( tr("Test1:"), 0);
310 menu->insertItem( tr("connect"), 1); 352 menu->insertItem( tr("connect"), 1);
311 menu->insertItem( tr("delete"), 2); 353 menu->insertItem( tr("delete"), 2);
312 354
313 ret = menu->exec( point , 0); 355 ret = menu->exec( point , 0);
314 356
315 switch(ret) { 357 switch(ret) {
316 case 0: 358 case 0:
317 break; 359 break;
318 case 1: 360 case 1:
319 break; 361 break;
320 case 2: 362 case 2:
diff --git a/noncore/net/opietooth/manager/bluebase.h b/noncore/net/opietooth/manager/bluebase.h
index 481f0c9..ef67aa2 100644
--- a/noncore/net/opietooth/manager/bluebase.h
+++ b/noncore/net/opietooth/manager/bluebase.h
@@ -36,45 +36,46 @@ namespace OpieTooth {
36 36
37 protected: 37 protected:
38 38
39 39
40 private slots: 40 private slots:
41 void startScan(); 41 void startScan();
42 42
43 private: 43 private:
44 void readConfig(); 44 void readConfig();
45 void writeConfig(); 45 void writeConfig();
46 void readSavedDevices(); 46 void readSavedDevices();
47 void writeSavedDevices(); 47 void writeSavedDevices();
48 void writeToHciConfig();
48 QString getStatus(); 49 QString getStatus();
49 void initGui(); 50 void initGui();
50 void setInfo(); 51 void setInfo();
51 Manager *localDevice; 52 Manager *localDevice;
52 QMap<QString,BTListItem*> deviceList; 53 QMap<QString,BTListItem*> deviceList;
53 54
54 void deviceActive( RemoteDevice *device ); 55 void deviceActive( RemoteDevice *device );
55 56
56 QString deviceName; 57 QString deviceName;
57 QString defaultPasskey; 58 QString defaultPasskey;
58 int useEncryption; 59 int useEncryption;
59 int enableAuthentification; 60 int enableAuthentification;
60 int enablePagescan; 61 int enablePagescan;
61 int enableInquiryscan; 62 int enableInquiryscan;
62 63
63 QPixmap offPix; 64 QPixmap offPix;
64 QPixmap onPix; 65 QPixmap onPix;
65 66
66 private slots: 67 private slots:
67 void addSearchedDevices( QList<RemoteDevice> &newDevices ); 68 void addSearchedDevices( QList<RemoteDevice> &newDevices );
68 void addServicesToDevice( BTListItem *item ); 69 void addServicesToDevice( BTListItem *item );
69 void addServicesToDevice( const QString& device, Services::ValueList ); 70 void addServicesToDevice( const QString& device, Services::ValueList );
70 void addConnectedDevices(); 71 void addConnectedDevices();
71 void startServiceActionClicked( QListViewItem *item ); 72 void startServiceActionClicked( QListViewItem *item );
72 void startServiceActionHold( BTListItem *, const QPoint &, int ); 73 void startServiceActionHold( QListViewItem *, const QPoint &, int );
73 void deviceActive( const QString& mac, bool connected ); 74 void deviceActive( const QString& mac, bool connected );
74 void applyConfigChanges(); 75 void applyConfigChanges();
75 76
76 }; 77 };
77 78
78} 79}
79 80
80#endif 81#endif
diff --git a/noncore/net/opietooth/manager/manager.pro b/noncore/net/opietooth/manager/manager.pro
index 39ddcaf..4fcf010 100644
--- a/noncore/net/opietooth/manager/manager.pro
+++ b/noncore/net/opietooth/manager/manager.pro
@@ -1,17 +1,17 @@
1TEMPLATE = app 1TEMPLATE = app
2CONFIG = qt warn_on debug 2CONFIG = qt warn_on debug
3#CONFIG = qt warn_on release 3#CONFIG = qt warn_on release
4HEADERS = bluebase.h scandialog.h btlistitem.h 4HEADERS = bluebase.h scandialog.h btlistitem.h hciconfwrapper.h
5SOURCES = main.cpp bluebase.cpp scandialog.cpp btlistitem.cpp 5SOURCES = main.cpp bluebase.cpp scandialog.cpp btlistitem.cpp hciconfwrapper.cpp
6INCLUDEPATH += $(OPIEDIR)/include 6INCLUDEPATH += $(OPIEDIR)/include
7INCLUDEPATH += $(OPIEDIR)/noncore/net/opietooth/lib 7INCLUDEPATH += $(OPIEDIR)/noncore/net/opietooth/lib
8DEPENDPATH += $(OPIEDIR)/include 8DEPENDPATH += $(OPIEDIR)/include
9LIBS += -lqpe -lopietooth -lopie 9LIBS += -lqpe -lopietooth -lopie
10INTERFACES = bluetoothbase.ui devicedialog.ui 10INTERFACES = bluetoothbase.ui devicedialog.ui
11DESTDIR = $(OPIEDIR)/bin 11DESTDIR = $(OPIEDIR)/bin
12TARGET = bluetooth-manager 12TARGET = bluetooth-manager
13 13
14TRANSLATIONS = ../../../../i18n/de/bluetooth-manager.ts \ 14TRANSLATIONS = ../../../../i18n/de/bluetooth-manager.ts \
15 ../../../../i18n/en/bluetooth-manager.ts \ 15 ../../../../i18n/en/bluetooth-manager.ts \
16 ../../../../i18n/es/bluetooth-manager.ts \ 16 ../../../../i18n/es/bluetooth-manager.ts \
17 ../../../../i18n/fr/bluetooth-manager.ts \ 17 ../../../../i18n/fr/bluetooth-manager.ts \