Fix providing param overrides for rediscovery
This commit is contained in:
parent
63c65ed9c5
commit
79dd4d3882
@ -503,11 +503,15 @@ void DeviceManager::reconfigureDevice(const QUuid &deviceId, const QVariantList
|
||||
m_jsonClient->sendCommand("Devices.ReconfigureDevice", params, this, "reconfigureDeviceResponse");
|
||||
}
|
||||
|
||||
void DeviceManager::reconfigureDiscoveredDevice(const QUuid &deviceId, const QUuid &deviceDescriptorId)
|
||||
void DeviceManager::reconfigureDiscoveredDevice(const QUuid &deviceId, const QUuid &deviceDescriptorId, const QVariantList ¶mOverride)
|
||||
{
|
||||
QVariantMap params;
|
||||
params.insert("deviceId", deviceId.toString());
|
||||
params.insert("deviceDescriptorId", deviceDescriptorId);
|
||||
if (!paramOverride.isEmpty()) {
|
||||
params.insert("deviceParams", paramOverride);
|
||||
}
|
||||
qDebug() << "Calling ReconfigureDevice" << qUtf8Printable(QJsonDocument::fromVariant(params).toJson());
|
||||
m_jsonClient->sendCommand("Devices.ReconfigureDevice", params, this, "reconfigureDeviceResponse");
|
||||
}
|
||||
|
||||
|
||||
@ -91,7 +91,7 @@ public:
|
||||
Q_INVOKABLE void editDevice(const QUuid &deviceId, const QString &name);
|
||||
Q_INVOKABLE void setDeviceSettings(const QUuid &deviceId, const QVariantList &settings);
|
||||
Q_INVOKABLE void reconfigureDevice(const QUuid &deviceId, const QVariantList &deviceParams);
|
||||
Q_INVOKABLE void reconfigureDiscoveredDevice(const QUuid &deviceId, const QUuid &deviceDescriptorId);
|
||||
Q_INVOKABLE void reconfigureDiscoveredDevice(const QUuid &deviceId, const QUuid &deviceDescriptorId, const QVariantList ¶mOverride);
|
||||
Q_INVOKABLE int executeAction(const QUuid &deviceId, const QUuid &actionTypeId, const QVariantList ¶ms = QVariantList());
|
||||
Q_INVOKABLE BrowserItems* browseDevice(const QUuid &deviceId, const QString &itemId = QString());
|
||||
Q_INVOKABLE void refreshBrowserItems(BrowserItems *browserItems);
|
||||
|
||||
@ -403,17 +403,20 @@ Page {
|
||||
var params = []
|
||||
for (var i = 0; i < paramRepeater.count; i++) {
|
||||
var param = {}
|
||||
param.paramTypeId = paramRepeater.itemAt(i).paramType.id
|
||||
param.value = paramRepeater.itemAt(i).value
|
||||
print("adding param", param.paramTypeId, param.value)
|
||||
params.push(param)
|
||||
var paramType = paramRepeater.itemAt(i).paramType
|
||||
if (!paramType.readOnly) {
|
||||
param.paramTypeId = paramType.id
|
||||
param.value = paramRepeater.itemAt(i).value
|
||||
print("adding param", param.paramTypeId, param.value)
|
||||
params.push(param)
|
||||
}
|
||||
}
|
||||
|
||||
switch (root.deviceClass.setupMethod) {
|
||||
case 0:
|
||||
if (root.device) {
|
||||
if (d.deviceDescriptor) {
|
||||
engine.deviceManager.reconfigureDiscoveredDevice(root.device.id, d.deviceDescriptor.id);
|
||||
engine.deviceManager.reconfigureDiscoveredDevice(root.device.id, d.deviceDescriptor.id, params);
|
||||
} else {
|
||||
engine.deviceManager.reconfigureDevice(root.device.id, params);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user