summaryrefslogtreecommitdiff
Side-by-side diff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/net/opietooth/manager/bluebase.cpp19
1 files changed, 13 insertions, 6 deletions
diff --git a/noncore/net/opietooth/manager/bluebase.cpp b/noncore/net/opietooth/manager/bluebase.cpp
index d2854a1..af64663 100644
--- a/noncore/net/opietooth/manager/bluebase.cpp
+++ b/noncore/net/opietooth/manager/bluebase.cpp
@@ -283,40 +283,46 @@ void BlueBase::startServiceActionClicked( QListViewItem */*item*/ ) {
*/
void BlueBase::startServiceActionHold( QListViewItem * item, const QPoint & point, int /*column*/ ) {
QPopupMenu *menu = new QPopupMenu();
int ret=0;
if ( ((BTListItem*)item)->type() == "device") {
QPopupMenu *groups = new QPopupMenu();
menu->insertItem( tr("rescan sevices:"), 0);
menu->insertItem( tr("to group"), groups , 1);
- menu->insertItem( tr("bound device"), 2);
+ // menu->insertItem( tr("bound device"), 2);
menu->insertItem( tr("delete"), 3);
ret = menu->exec( point , 0);
switch(ret) {
case -1:
-
+ break;
+ case 0:
+ addServicesToDevice( (BTDeviceItem*)item );
break;
case 1:
+
break;
- case 2:
+
+ // NO need to, since hcid does that on the fly
+ // case 2:
// make connection
- break;
+ //m_localDevice->connectTo( ((BTDeviceItem*)item)->mac() );
+ //break;
case 3:
- // delete childs too
+ // deletes 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
@@ -400,26 +406,27 @@ void BlueBase::addServicesToDevice( const QString& device, Services::ValueList s
QValueList<OpieTooth::Services>::Iterator it2;
BTServiceItem * serviceItem;
if (!servicesList.isEmpty() ) {
// add services
QMap<int, QString> list;
QMap<int, QString>::Iterator classIt;
for( it2 = servicesList.begin(); it2 != servicesList.end(); ++it2 ) {
serviceItem = new BTServiceItem( deviceItem , (*it2) );
list = (*it2).classIdList();
classIt = list.begin();
int classId=0;
- if ( classIt != list.end() )
+ if ( classIt != list.end() ) {
classId = classIt.key();
+ }
serviceItem->setPixmap( 0, m_iconLoader->serviceIcon( classId ) );
}
} else {
Services s1;
s1.setServiceName( tr("no serives found") );
serviceItem = new BTServiceItem( deviceItem, s1 );
}
// now remove them from the list
m_deviceList.remove( it );
}