Diffstat (limited to 'noncore/net/opietooth/manager/bluebase.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r-- | noncore/net/opietooth/manager/bluebase.cpp | 40 |
1 files changed, 23 insertions, 17 deletions
diff --git a/noncore/net/opietooth/manager/bluebase.cpp b/noncore/net/opietooth/manager/bluebase.cpp index 3e7e2ab..d023302 100644 --- a/noncore/net/opietooth/manager/bluebase.cpp +++ b/noncore/net/opietooth/manager/bluebase.cpp @@ -33,12 +33,13 @@ #include <qmessagebox.h> #include <qcheckbox.h> #include <qlineedit.h> #include <qlistview.h> #include <qdir.h> #include <qpopupmenu.h> +#include <qtimer.h> #include <qpe/resource.h> #include <qpe/config.h> #include <remotedevice.h> @@ -62,12 +63,14 @@ namespace OpieTooth { connect( ListView2, SIGNAL( rightButtonClicked( QListViewItem *, const QPoint &, int ) ), this, SLOT(startServiceActionHold( QListViewItem *, const QPoint &, int) ) ); connect( localDevice , SIGNAL( foundServices( const QString& , Services::ValueList ) ), this, SLOT( addServicesToDevice( const QString& , Services::ValueList ) ) ); connect( localDevice, SIGNAL( available( const QString&, bool ) ), this, SLOT( deviceActive( const QString& , bool ) ) ); + connect( localDevice, SIGNAL( connections( Connection::ValueList ) ), + this, SLOT( addConnectedDevices( Connection::ValueList ) ) ); //Load all icons needed offPix = Resource::loadPixmap( "editdelete" ); onPix = Resource::loadPixmap( "installed" ); @@ -89,12 +92,14 @@ namespace OpieTooth { BTListItem *topLV2 = new BTListItem( ListView2, "Siemens S45", "", "device" ); topLV2->setPixmap( 1, onPix ); (void) new BTListItem( topLV2, "Serial" ,"", "service" ); (void) new BTListItem( topLV2, "BlueNiC" , "", "service" ); writeToHciConfig(); + // search conncetions + addConnectedDevices(); } /** * Reads all options from the config file */ @@ -292,17 +297,12 @@ namespace OpieTooth { deviceItem = new BTListItem( ListView2 , dev->name(), dev->mac(), "device" ); deviceItem->setExpandable ( true ); // look if device is avail. atm, async deviceActive( dev ); - // move into the c'tor - // deviceItem->setMac( dev->mac() ); - // what kind of entry is it. - //deviceItem->setType( "device"); - // ggf auch hier? addServicesToDevice( deviceItem ); } } @@ -407,22 +407,12 @@ namespace OpieTooth { for( it = deviceList.begin(); it != deviceList.end(); ++it ) { if ( it.key() == device ) { deviceItem = it.data(); } } - - // empty entries - // QListViewItem * myChild = deviceItem->firstChild(); - //QList<QListViewItem*> tmpList; - //while( myChild ) { - // tmpList.append(myChild); - // myChild = myChild->nextSibling(); - // } - - QValueList<OpieTooth::Services>::Iterator it2; BTListItem * serviceItem; if (!servicesList.isEmpty() ) { // add services @@ -436,19 +426,35 @@ namespace OpieTooth { } } /** * Add the existing connections (pairs) to the connections tab. - * + * This one triggers the search */ void BlueBase::addConnectedDevices() { + localDevice->searchConnections(); + } - //mac address + void BlueBase::addConnectedDevices( Connection::ValueList connectionList ) { + + QValueList<OpieTooth::Connection>::Iterator it; + BTListItem * connectionItem; + + if ( !connectionList.isEmpty() ) { + + for (it = connectionList.begin(); it != connectionList.end(); ++it) { + connectionItem = new BTListItem( ListView4 , (*it).mac() , (*it).mac() , "connection" ); + } + } else { + connectionItem = new BTListItem( ListView4 , tr("No connections found"), "", "connection" ); + } + // recall connection search after some time + QTimer::singleShot( 20000, this, SLOT( addConnectedDevices() ) ); } /** * Find out if a device can currently be reached */ void BlueBase::deviceActive( RemoteDevice *device ) { |