mirror of
https://github.com/Fishwaldo/qt-openzwave.git
synced 2025-07-07 21:58:19 +00:00
Fix basic setValue calls
This commit is contained in:
parent
e0f7cb9410
commit
b6fdb56eff
5 changed files with 11 additions and 6 deletions
|
@ -1660,9 +1660,11 @@ void QTOZWManager_Internal::pvt_valueModelDataChanged(const QModelIndex &topLeft
|
|||
if (!roles.contains(QTOZW_UserRoles::ModelDataChanged)) {
|
||||
return;
|
||||
}
|
||||
qCDebug(valueModel) << "valueModel Changed!" << static_cast<QTOZW_ValueIds::ValueIdColumns>(topLeft.column()) << ": "<< topLeft.data();
|
||||
qCDebug(valueModel) << "valueModel Changed!" << static_cast<QTOZW_ValueIds::ValueIdColumns>(topLeft.column())<< "-" << topLeft.row() << ": "<< topLeft.data();
|
||||
/* get the Node Number */
|
||||
quint64 vidKey = this->m_valueModel->data(topLeft.siblingAtColumn(QTOZW_ValueIds::ValueIdColumns::ValueIDKey), Qt::DisplayRole).value<quint64>();
|
||||
QVariant data = this->m_valueModel->data(topLeft.siblingAtColumn(QTOZW_ValueIds::ValueIdColumns::Value), Qt::DisplayRole);
|
||||
qCDebug(valueModel) << "valueModel Changed! vidKey:" << vidKey << data;
|
||||
try {
|
||||
OpenZWave::ValueID vid(this->homeId(), vidKey);
|
||||
switch (static_cast<OpenZWave::ValueID::ValueType>(vid.GetType())) {
|
||||
|
|
|
@ -178,13 +178,15 @@ bool QTOZW_ValueIds::setData(const QModelIndex &index, const QVariant &value, in
|
|||
switch (static_cast<ValueIdColumns>(index.column())) {
|
||||
case Value:
|
||||
if (this->m_valueData.at(index.row())[static_cast<ValueIdColumns>(index.column())] != value) {
|
||||
this->m_valueData.value(index.row())[static_cast<ValueIdColumns>(index.column())] = value;
|
||||
qCDebug(valueModel) << "setData Called for Row" << index.row() << " With Value" << value;
|
||||
this->m_valueData[index.row()][static_cast<ValueIdColumns>(index.column())] = value;
|
||||
QVector<int> roles;
|
||||
roles << Qt::DisplayRole << QTOZW_UserRoles::ModelDataChanged;
|
||||
this->dataChanged(index, index, roles);
|
||||
}
|
||||
break;
|
||||
default:
|
||||
qCWarning(valueModel) << "got a setData for a Column other than Value. Ignoring" << index.column();
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
|
|
|
@ -109,7 +109,7 @@ int main(int argc, char *argv[])
|
|||
"qt.remoteobjects.io.debug=true\n"
|
||||
"default.debug=true");
|
||||
#else
|
||||
QLoggingCategory::setFilterRules("default.debug=true");
|
||||
QLoggingCategory::setFilterRules("*.debug=true");
|
||||
#endif
|
||||
|
||||
QStringList PossibleDBPaths;
|
||||
|
|
|
@ -236,7 +236,7 @@ bool mqttValueIDModel::encodeValue(rapidjson::Document &value, quint64 vidKey) {
|
|||
}
|
||||
|
||||
bool mqttValueIDModel::setData(quint64 vidKey, QVariant data) {
|
||||
return QTOZW_ValueIds::setData(this->index(this->getValueRow(vidKey), QTOZW_ValueIds::ValueIdColumns::Value), data, Qt::EditRole);
|
||||
return QTOZW_ValueIds::setData(this->index(this->getValueRow(vidKey), QTOZW_ValueIds::ValueIdColumns::Value), data);
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -21,7 +21,7 @@ bool MqttCommand_SetValue::processMessage(rapidjson::Document &msg) {
|
|||
return this->sendSimpleStatus(false, "Missing Field Value");
|
||||
}
|
||||
|
||||
quint64 vidKey = msg["ValueIdKey"].GetUint();
|
||||
quint64 vidKey = msg["ValueIDKey"].GetUint();
|
||||
QBitArray flags = this->getValueData(vidKey, QTOZW_ValueIds::ValueIdColumns::ValueFlags).value<QBitArray>();
|
||||
if (flags[QTOZW_ValueIds::ValueIDFlags::ReadOnly] == true) {
|
||||
return this->sendSimpleStatus(false, "ValueID is Read Only");
|
||||
|
@ -129,5 +129,6 @@ bool MqttCommand_SetValue::processMessage(rapidjson::Document &msg) {
|
|||
qCWarning(ozwmcsv) << "Data is undefined for setValue... Json Conversion Failed?";
|
||||
return this->sendSimpleStatus(false, "JSON Conversion Failed");
|
||||
}
|
||||
qCInfo(ozwmcsv) << "Setting " << vidKey << " to Value " << data;
|
||||
return this->sendSimpleStatus(this->setValue(vidKey, data));
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue