-rw-r--r-- | noncore/net/opietooth/manager/bluebase.cpp | 35 |
1 files changed, 26 insertions, 9 deletions
diff --git a/noncore/net/opietooth/manager/bluebase.cpp b/noncore/net/opietooth/manager/bluebase.cpp index 598ce16..d2854a1 100644 --- a/noncore/net/opietooth/manager/bluebase.cpp +++ b/noncore/net/opietooth/manager/bluebase.cpp @@ -138,25 +138,24 @@ void BlueBase::writeConfig() { cfg.writeEntry( "useEncryption" , m_useEncryption ); cfg.writeEntry( "enableAuthentification" , m_enableAuthentification ); cfg.writeEntry( "enablePagescan" , m_enablePagescan ); cfg.writeEntry( "enableInquiryscan" , m_enableInquiryscan ); writeToHciConfig(); } +/** + * Modify the hcid.conf file to our needs + */ void BlueBase::writeToHciConfig() { qWarning("writeToHciConfig"); HciConfWrapper hciconf ( "/etc/bluetooth/hcid.conf" ); hciconf.load(); hciconf.setPinHelper( "/bin/QtPalmtop/bin/blue-pin" ); - - - // hciconf->setPinHelper( "/bin/QtPalmtop/bin/blue-pin" ); - hciconf.setName( m_deviceName ); hciconf.setEncrypt( m_useEncryption ); hciconf.setAuth( m_enableAuthentification ); hciconf.setPscan( m_enablePagescan ); hciconf.setIscan( m_enableInquiryscan ); hciconf.save(); } @@ -169,16 +168,17 @@ void BlueBase::readSavedDevices() { QValueList<RemoteDevice> loadedDevices; DeviceHandler handler; loadedDevices = handler.load(); addSearchedDevices( loadedDevices ); } + /** * Write the list of allready known devices * */ void BlueBase::writeSavedDevices() { QListViewItemIterator it( ListView2 ); BTListItem* item; BTDeviceItem* device; @@ -272,16 +272,17 @@ void BlueBase::addSearchedDevices( const QValueList<RemoteDevice> &newDevices ) /** * Action that is toggled on entrys on click */ void BlueBase::startServiceActionClicked( QListViewItem */*item*/ ) { } + /** * Action that are toggled on hold (mostly QPopups i guess) */ void BlueBase::startServiceActionHold( QListViewItem * item, const QPoint & point, int /*column*/ ) { QPopupMenu *menu = new QPopupMenu(); int ret=0; @@ -308,17 +309,18 @@ void BlueBase::startServiceActionHold( QListViewItem * item, const QPoint & poin case 3: // delete childs too delete item; break; } delete groups; } - /** + + /* * We got service sensitive PopupMenus in our factory * We will create one through the factory and will insert * our Separator + ShowInfo into the menu or create a new * one if the factory returns 0 * PopupMenu deletion is kind of weird. * If escaped( -1 ) or any of our items were chosen we'll * delete the PopupMenu otherwise it's the responsibility of * the PopupMenu to delete itself @@ -358,20 +360,21 @@ void BlueBase::startServiceActionHold( QListViewItem * item, const QPoint & poin else if ( ret == del ) { // take item first? -zecke delete item; } } delete menu; } - /** - * Search and display avail. services for a device (on expand from device listing) - * - */ + +/** + * Search and display avail. services for a device (on expand from device listing) + * @param item the service item returned + */ void BlueBase::addServicesToDevice( BTDeviceItem * item ) { qDebug("addServicesToDevice"); // row of mac adress text(3) RemoteDevice device = item->remoteDevice(); m_deviceList.insert( item->mac() , item ); // and some time later I get a signal foundServices( const QString& device, Services::ValueList ); back m_localDevice->searchServices( device ); } @@ -425,17 +428,25 @@ void BlueBase::addServicesToDevice( const QString& device, Services::ValueList s * Add the existing connections (pairs) to the connections tab. * This one triggers the search */ void BlueBase::addConnectedDevices() { m_localDevice->searchConnections(); } +/** + * This adds the found connections to the connection tab. + * @param connectionList the ValueList with all current connections + */ void BlueBase::addConnectedDevices( ConnectionState::ValueList connectionList ) { + + // clear the ListView first + ListView4->clear(); + QValueList<OpieTooth::ConnectionState>::Iterator it; BTConnectionItem * connectionItem; if ( !connectionList.isEmpty() ) { for (it = connectionList.begin(); it != connectionList.end(); ++it) { connectionItem = new BTConnectionItem( ListView4 , (*it) ); } @@ -444,25 +455,28 @@ void BlueBase::addConnectedDevices( ConnectionState::ValueList connectionList ) con.setMac( tr("No connections found") ); connectionItem = new BTConnectionItem( ListView4 , con ); } // recall connection search after some time QTimer::singleShot( 20000, this, SLOT( addConnectedDevices() ) ); } + /** * Find out if a device can currently be reached + * @param device */ void BlueBase::deviceActive( const RemoteDevice &device ) { // search by mac, async, gets a signal back // We should have a BTDeviceItem there or where does it get added to the map -zecke m_localDevice->isAvailable( device.mac() ); } + /** * The signal catcher. Set the avail. status on device. * @param device - the mac address * @param connected - if it is avail. or not */ void BlueBase::deviceActive( const QString& device, bool connected ) { qDebug("deviceActive slot"); @@ -478,16 +492,17 @@ void BlueBase::deviceActive( const QString& device, bool connected ) { if ( connected ) { deviceItem->setPixmap( 1, m_onPix ); } else { deviceItem->setPixmap( 1, m_offPix ); } m_deviceList.remove( it ); } + /** * Open the "scan for devices" dialog */ void BlueBase::startScan() { ScanDialog *scan = new ScanDialog( this, "ScanDialog", true, WDestructiveClose ); QObject::connect( scan, SIGNAL( selectedDevices( const QValueList<RemoteDevice>& ) ), this, SLOT( addSearchedDevices( const QValueList<RemoteDevice>& ) ) ); @@ -498,24 +513,26 @@ void BlueBase::startScan() { /** * Set the informations about the local device in information Tab */ void BlueBase::setInfo() { StatusLabel->setText( status() ); } + /** * Decontructor */ BlueBase::~BlueBase() { writeSavedDevices(); delete m_iconLoader; } + /** * find searches the ListView for a BTDeviceItem containig * the same Device if found return true else false * @param dev RemoteDevice to find * @return returns true if found */ bool BlueBase::find( const RemoteDevice& rem ) { QListViewItemIterator it( ListView2 ); |