|
|
|
@ -23,6 +23,7 @@
|
|
|
|
|
#include <tqlayout.h>
|
|
|
|
|
#include <tqlineedit.h>
|
|
|
|
|
#include <tqpushbutton.h>
|
|
|
|
|
#include <tqtimer.h>
|
|
|
|
|
|
|
|
|
|
#include <dcopclient.h>
|
|
|
|
|
|
|
|
|
@ -96,7 +97,7 @@ TDEHWManager::TDEHWManager(TQWidget *parent, const char *name, const TQStringLis
|
|
|
|
|
connect(base->showByConnection, TQT_SIGNAL(clicked()), TQT_SLOT(populateTreeView()));
|
|
|
|
|
|
|
|
|
|
connect(hwdevices, TQT_SIGNAL(hardwareAdded(TDEGenericDevice*)), this, TQT_SLOT(populateTreeView()));
|
|
|
|
|
connect(hwdevices, TQT_SIGNAL(hardwareRemoved(TDEGenericDevice*)), this, TQT_SLOT(populateTreeView()));
|
|
|
|
|
connect(hwdevices, TQT_SIGNAL(hardwareRemoved(TDEGenericDevice*)), this, TQT_SLOT(delayedPopulateTreeView()));
|
|
|
|
|
connect(hwdevices, TQT_SIGNAL(hardwareUpdated(TDEGenericDevice*)), this, TQT_SLOT(deviceChanged(TDEGenericDevice*)));
|
|
|
|
|
|
|
|
|
|
load();
|
|
|
|
@ -157,7 +158,7 @@ void TDEHWManager::populateTreeView()
|
|
|
|
|
cdevice->enableCardMonitoring(true);
|
|
|
|
|
cdevice->enablePINEntryCallbacks(true);
|
|
|
|
|
}
|
|
|
|
|
DeviceIconItem* item = new DeviceIconItem(base->deviceTree, hwdevice->detailedFriendlyName(), hwdevice->icon(base->deviceTree->iconSize()), hwdevice);
|
|
|
|
|
DeviceIconItem* item = new DeviceIconItem(base->deviceTree, hwdevice->detailedFriendlyName(), hwdevice->icon(base->deviceTree->iconSize()), hwdevice->uniqueID());
|
|
|
|
|
if ((!selected_syspath.isNull()) && (hwdevice->systemPath() == selected_syspath)) {
|
|
|
|
|
base->deviceTree->ensureItemVisible(item);
|
|
|
|
|
base->deviceTree->setSelected(item, true);
|
|
|
|
@ -169,7 +170,7 @@ void TDEHWManager::populateTreeView()
|
|
|
|
|
TDEHardwareDevices *hwdevices = TDEGlobal::hardwareDevices();
|
|
|
|
|
for (int i=0;i<=TDEGenericDeviceType::Last;i++) {
|
|
|
|
|
if (i != TDEGenericDeviceType::Root) {
|
|
|
|
|
DeviceIconItem* rootitem = new DeviceIconItem(base->deviceTree, hwdevices->getFriendlyDeviceTypeStringFromType((TDEGenericDeviceType::TDEGenericDeviceType)i), hwdevices->getDeviceTypeIconFromType((TDEGenericDeviceType::TDEGenericDeviceType)i, base->deviceTree->iconSize()), 0);
|
|
|
|
|
DeviceIconItem* rootitem = new DeviceIconItem(base->deviceTree, hwdevices->getFriendlyDeviceTypeStringFromType((TDEGenericDeviceType::TDEGenericDeviceType)i), hwdevices->getDeviceTypeIconFromType((TDEGenericDeviceType::TDEGenericDeviceType)i, base->deviceTree->iconSize()), TQString::null);
|
|
|
|
|
TDEGenericDevice *hwdevice;
|
|
|
|
|
TDEGenericHardwareList hwlist = hwdevices->listByDeviceClass((TDEGenericDeviceType::TDEGenericDeviceType)i);
|
|
|
|
|
for ( hwdevice = hwlist.first(); hwdevice; hwdevice = hwlist.next() ) {
|
|
|
|
@ -179,7 +180,7 @@ void TDEHWManager::populateTreeView()
|
|
|
|
|
cdevice->enableCardMonitoring(true);
|
|
|
|
|
cdevice->enablePINEntryCallbacks(true);
|
|
|
|
|
}
|
|
|
|
|
DeviceIconItem* item = new DeviceIconItem(rootitem, hwdevice->detailedFriendlyName(), hwdevice->icon(base->deviceTree->iconSize()), hwdevice);
|
|
|
|
|
DeviceIconItem* item = new DeviceIconItem(rootitem, hwdevice->detailedFriendlyName(), hwdevice->icon(base->deviceTree->iconSize()), hwdevice->uniqueID());
|
|
|
|
|
if ((!selected_syspath.isNull()) && (hwdevice->systemPath() == selected_syspath)) {
|
|
|
|
|
base->deviceTree->ensureItemVisible(item);
|
|
|
|
|
base->deviceTree->setSelected(item, true);
|
|
|
|
@ -190,6 +191,13 @@ void TDEHWManager::populateTreeView()
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void TDEHWManager::delayedPopulateTreeView() {
|
|
|
|
|
// When hardwareRemoved() is triggered, the list of devices still contains the device which
|
|
|
|
|
// is about to be removed. Therefore we need to delay repopulating the device tree after the
|
|
|
|
|
// removal of the device.
|
|
|
|
|
TQTimer::singleShot(0, this, TQT_SLOT(populateTreeView()));
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void TDEHWManager::populateTreeViewLeaf(DeviceIconItem *parent, bool show_by_connection, TQString selected_syspath) {
|
|
|
|
|
if (show_by_connection) {
|
|
|
|
|
TDEHardwareDevices *hwdevices = TDEGlobal::hardwareDevices();
|
|
|
|
@ -203,7 +211,7 @@ void TDEHWManager::populateTreeViewLeaf(DeviceIconItem *parent, bool show_by_con
|
|
|
|
|
cdevice->enablePINEntryCallbacks(true);
|
|
|
|
|
}
|
|
|
|
|
if (hwdevice->parentDevice() == parent->device()) {
|
|
|
|
|
DeviceIconItem* item = new DeviceIconItem(parent, hwdevice->detailedFriendlyName(), hwdevice->icon(base->deviceTree->iconSize()), hwdevice);
|
|
|
|
|
DeviceIconItem* item = new DeviceIconItem(parent, hwdevice->detailedFriendlyName(), hwdevice->icon(base->deviceTree->iconSize()), hwdevice->uniqueID());
|
|
|
|
|
if ((!selected_syspath.isNull()) && (hwdevice->systemPath() == selected_syspath)) {
|
|
|
|
|
base->deviceTree->ensureItemVisible(item);
|
|
|
|
|
base->deviceTree->setSelected(item, true);
|
|
|
|
|