13 * |
13 * |
14 * Description: |
14 * Description: |
15 * |
15 * |
16 */ |
16 */ |
17 |
17 |
18 |
18 #include "btmoredevicesdialogwidget.h" |
19 #include <hblabel.h> |
19 #include <hblabel.h> |
20 #include <hblistview.h> |
20 #include <hblistview.h> |
21 #include <hbtoolbar.h> |
21 #include <hbtoolbar.h> |
22 #include <hbpushbutton.h> |
22 #include <hbpushbutton.h> |
23 #include <hblistwidget.h> |
23 #include <hblistwidget.h> |
24 #include <qstandarditemmodel.h> |
24 #include <qstandarditemmodel.h> |
25 #include "btmoredevicesdialogwidget.h" |
25 #include <btuidevtypemap.h> |
|
26 #include <btuiiconutil.h> |
|
27 #include <bluetoothdevicedialogs.h> |
|
28 |
26 |
29 |
27 |
30 |
28 const char* DOCML_BT_MORE_DEV_DIALOG = ":/docml/bt-more-devices-dialog.docml"; |
31 const char* DOCML_BT_MORE_DEV_DIALOG = ":/docml/bt-more-devices-dialog.docml"; |
29 |
32 |
30 |
33 |
53 delete mContentItemModel; |
56 delete mContentItemModel; |
54 } |
57 } |
55 |
58 |
56 bool BTMoreDevicesDialogWidget::setDeviceDialogParameters(const QVariantMap ¶meters) |
59 bool BTMoreDevicesDialogWidget::setDeviceDialogParameters(const QVariantMap ¶meters) |
57 { |
60 { |
58 QStandardItem* listitem = new QStandardItem(); |
61 double cod = parameters.value(QString::number(TBluetoothDeviceDialog::EDeviceClass)).toDouble(); |
59 QStringList info; |
62 int uiMajorDevice; |
60 // info.append(parameters.value("deviceName").toString()); |
63 int uiMinorDevice; |
61 //info.append(parameters.value("deviceType").toString()); |
64 |
62 info.append(parameters.value(parameters.keys().at(0)).toString()); |
65 BtuiDevProperty::mapDeiveType(uiMajorDevice, uiMinorDevice, cod); |
63 |
66 if ((uiMajorDevice & BtuiDevProperty::Phone)||(uiMajorDevice & BtuiDevProperty::Computer) ) |
64 |
67 { |
65 listitem->setData(info, Qt::DisplayRole); |
68 BtSendDataItem devData; |
66 listitem->setIcon(icon()); |
69 devData[NameAliasRole] = QVariant(parameters.value(QString::number(TBluetoothDeviceDialog::EDeviceName)).toString()); |
67 // listitem->setIcon(icon(parameters.value("deviceType").toString())); |
70 devData[ReadableBdaddrRole] = QVariant(parameters.value(QString::number(TBluetoothDialogParams::EAddress)).toString()); |
68 |
71 devData[CoDRole] = QVariant(cod); |
69 mContentItemModel->appendRow(listitem); |
72 |
70 |
73 setMajorProperty(devData,BtuiDevProperty::Bonded, |
|
74 parameters.value("Bonded").toBool()); |
|
75 setMajorProperty(devData,BtuiDevProperty::Blocked, |
|
76 parameters.value("Blocked").toBool()); |
|
77 setMajorProperty(devData,BtuiDevProperty::Trusted, |
|
78 parameters.value("Trusted").toBool()); |
|
79 setMajorProperty(devData,BtuiDevProperty::Connected, |
|
80 parameters.value("Connected").toBool()); |
|
81 mData.append(devData); |
|
82 |
|
83 QStandardItem* listitem = new QStandardItem(); |
|
84 QStringList info; |
|
85 info.append(devData[NameAliasRole].toString()); |
|
86 |
|
87 listitem->setData(info, Qt::DisplayRole); |
|
88 HbIcon icon = getBadgedDeviceTypeIcon(devData[CoDRole].toDouble(), |
|
89 devData[MajorPropertyRole].toInt(), |
|
90 BtuiBottomLeft | BtuiBottomRight | BtuiTopLeft | BtuiTopRight); |
|
91 listitem->setIcon(icon.qicon()); |
|
92 // listitem->setIcon(icon(parameters.value("deviceType").toString())); |
|
93 |
|
94 mContentItemModel->appendRow(listitem); |
|
95 } |
71 return true; |
96 return true; |
72 } |
97 } |
|
98 |
|
99 |
|
100 |
73 |
101 |
74 int BTMoreDevicesDialogWidget::deviceDialogError() const |
102 int BTMoreDevicesDialogWidget::deviceDialogError() const |
75 { |
103 { |
76 return 0; |
104 return 0; |
77 } |
105 } |
211 |
239 |
212 void BTMoreDevicesDialogWidget::deviceSelected(const QModelIndex& modelIndex) |
240 void BTMoreDevicesDialogWidget::deviceSelected(const QModelIndex& modelIndex) |
213 { |
241 { |
214 int row = modelIndex.row(); |
242 int row = modelIndex.row(); |
215 QVariantMap val; |
243 QVariantMap val; |
216 QVariant index(row); |
244 // QVariant index(row); |
217 val.insert("selectedindex",index); |
245 const BtSendDataItem& qtdev = mData.at(row); |
|
246 val.insert("selectedindex",QVariant(row)); |
|
247 val.insert("devicename",QVariant(qtdev[NameAliasRole])); |
|
248 val.insert("deviceaddress",QVariant(qtdev[ReadableBdaddrRole])); |
|
249 val.insert("deviceclass",QVariant(qtdev[CoDRole])); |
218 emit deviceDialogData(val); |
250 emit deviceDialogData(val); |
219 // mDeviceDialogData = 1;//flag is to say that device dialog data is emitted required when we cancel the dialog |
251 // mDeviceDialogData = 1;//flag is to say that device dialog data is emitted required when we cancel the dialog |
220 // this->close(); |
252 // this->close(); |
221 |
253 |
222 } |
254 } |