cleanup hue plugin when a device is removed.

Fixes #19
This commit is contained in:
Michael Zanetti 2014-07-28 23:07:08 +02:00
parent 737fe7e00d
commit 7fb111de1e
2 changed files with 12 additions and 0 deletions

View File

@ -239,6 +239,17 @@ QPair<DeviceManager::DeviceSetupStatus, QString> DevicePluginPhilipsHue::setupDe
return reportDeviceSetup(DeviceManager::DeviceSetupStatusAsync);
}
void DevicePluginPhilipsHue::deviceRemoved(Device *device)
{
if (!m_lights.values().contains(device)) {
return;
}
Light *light = m_lights.key(device);
m_lights.remove(light);
m_unconfiguredLights.append(light);
}
QPair<DeviceManager::DeviceSetupStatus, QString> DevicePluginPhilipsHue::confirmPairing(const QUuid &pairingTransactionId, const DeviceClassId &deviceClassId, const ParamList &params)
{
Param ipParam;

View File

@ -49,6 +49,7 @@ public:
QPair<DeviceManager::DeviceError, QString> discoverDevices(const DeviceClassId &deviceClassId, const ParamList &params) override;
QPair<DeviceManager::DeviceSetupStatus, QString> setupDevice(Device *device) override;
void deviceRemoved(Device *device) override;
QPair<DeviceManager::DeviceSetupStatus, QString> confirmPairing(const QUuid &pairingTransactionId, const DeviceClassId &deviceClassId, const ParamList &params) override;