Commit 1d193b99 authored by Don Gagne's avatar Don Gagne

Meta data values need string conversion as well

Changed to “f” string conversion from “g” to get better results
parent 4e6c64ad
...@@ -129,25 +129,30 @@ QVariant Fact::value(void) const ...@@ -129,25 +129,30 @@ QVariant Fact::value(void) const
return _value; return _value;
} }
QString Fact::valueString(void) const QString Fact::_variantToString(const QVariant& variant) const
{ {
QString valueString; QString valueString;
switch (type()) { switch (type()) {
case FactMetaData::valueTypeFloat: case FactMetaData::valueTypeFloat:
valueString = QString("%1").arg(value().toFloat(), 0, 'g', decimalPlaces()); valueString = QString("%1").arg(variant.toFloat(), 0, 'f', decimalPlaces());
break; break;
case FactMetaData::valueTypeDouble: case FactMetaData::valueTypeDouble:
valueString = QString("%1").arg(value().toDouble(), 0, 'g', decimalPlaces()); valueString = QString("%1").arg(variant.toDouble(), 0, 'f', decimalPlaces());
break; break;
default: default:
valueString = value().toString(); valueString = variant.toString();
break; break;
} }
return valueString; return valueString;
} }
QString Fact::valueString(void) const
{
return _variantToString(value());
}
QVariant Fact::defaultValue(void) const QVariant Fact::defaultValue(void) const
{ {
if (_metaData) { if (_metaData) {
...@@ -161,6 +166,11 @@ QVariant Fact::defaultValue(void) const ...@@ -161,6 +166,11 @@ QVariant Fact::defaultValue(void) const
} }
} }
QString Fact::defaultValueString(void) const
{
return _variantToString(defaultValue());
}
FactMetaData::ValueType_t Fact::type(void) const FactMetaData::ValueType_t Fact::type(void) const
{ {
return _type; return _type;
...@@ -206,6 +216,11 @@ QVariant Fact::min(void) const ...@@ -206,6 +216,11 @@ QVariant Fact::min(void) const
} }
} }
QString Fact::minString(void) const
{
return _variantToString(min());
}
QVariant Fact::max(void) const QVariant Fact::max(void) const
{ {
if (_metaData) { if (_metaData) {
...@@ -216,6 +231,11 @@ QVariant Fact::max(void) const ...@@ -216,6 +231,11 @@ QVariant Fact::max(void) const
} }
} }
QString Fact::maxString(void) const
{
return _variantToString(max());
}
bool Fact::minIsDefaultForType(void) const bool Fact::minIsDefaultForType(void) const
{ {
if (_metaData) { if (_metaData) {
......
...@@ -53,14 +53,17 @@ public: ...@@ -53,14 +53,17 @@ public:
Q_PROPERTY(QVariant valueString READ valueString NOTIFY valueChanged) Q_PROPERTY(QVariant valueString READ valueString NOTIFY valueChanged)
Q_PROPERTY(QString units READ units CONSTANT) Q_PROPERTY(QString units READ units CONSTANT)
Q_PROPERTY(QVariant defaultValue READ defaultValue CONSTANT) Q_PROPERTY(QVariant defaultValue READ defaultValue CONSTANT)
Q_PROPERTY(QString defaultValueString READ defaultValueString CONSTANT)
Q_PROPERTY(bool defaultValueAvailable READ defaultValueAvailable CONSTANT) Q_PROPERTY(bool defaultValueAvailable READ defaultValueAvailable CONSTANT)
Q_PROPERTY(bool valueEqualsDefault READ valueEqualsDefault NOTIFY valueChanged) Q_PROPERTY(bool valueEqualsDefault READ valueEqualsDefault NOTIFY valueChanged)
Q_PROPERTY(FactMetaData::ValueType_t type READ type CONSTANT) Q_PROPERTY(FactMetaData::ValueType_t type READ type CONSTANT)
Q_PROPERTY(QString shortDescription READ shortDescription CONSTANT) Q_PROPERTY(QString shortDescription READ shortDescription CONSTANT)
Q_PROPERTY(QString longDescription READ longDescription CONSTANT) Q_PROPERTY(QString longDescription READ longDescription CONSTANT)
Q_PROPERTY(QVariant min READ min CONSTANT) Q_PROPERTY(QVariant min READ min CONSTANT)
Q_PROPERTY(QString minString READ minString CONSTANT)
Q_PROPERTY(bool minIsDefaultForType READ minIsDefaultForType CONSTANT) Q_PROPERTY(bool minIsDefaultForType READ minIsDefaultForType CONSTANT)
Q_PROPERTY(QVariant max READ max CONSTANT) Q_PROPERTY(QVariant max READ max CONSTANT)
Q_PROPERTY(QString maxString READ maxString CONSTANT)
Q_PROPERTY(bool maxIsDefaultForType READ maxIsDefaultForType CONSTANT) Q_PROPERTY(bool maxIsDefaultForType READ maxIsDefaultForType CONSTANT)
Q_PROPERTY(int decimalPlaces READ decimalPlaces CONSTANT) Q_PROPERTY(int decimalPlaces READ decimalPlaces CONSTANT)
...@@ -70,25 +73,30 @@ public: ...@@ -70,25 +73,30 @@ public:
// Property system methods // Property system methods
QString name(void) const; QString name(void) const;
int componentId(void) const; int componentId(void) const;
QVariant value(void) const; QVariant value(void) const;
QString valueString(void) const; QString valueString(void) const;
void setValue(const QVariant& value); QVariant defaultValue(void) const;
QVariant defaultValue(void) const; QString defaultValueString(void) const;
bool defaultValueAvailable(void) const; bool defaultValueAvailable(void) const;
bool valueEqualsDefault(void) const; bool valueEqualsDefault(void) const;
QString shortDescription(void) const;
QString longDescription(void) const;
QString units(void) const;
QVariant min(void) const;
QString minString(void) const;
bool minIsDefaultForType(void) const;
QVariant max(void) const;
QString maxString(void) const;
bool maxIsDefaultForType(void) const;
QString group(void) const;
int decimalPlaces(void) const;
FactMetaData::ValueType_t type(void) const; FactMetaData::ValueType_t type(void) const;
QString shortDescription(void) const;
QString longDescription(void) const; void setValue(const QVariant& value);
QString units(void) const;
QVariant min(void) const;
bool minIsDefaultForType(void) const;
QVariant max(void) const;
bool maxIsDefaultForType(void) const;
QString group(void) const;
int decimalPlaces(void) const;
/// Sets and sends new value to vehicle even if value is the same /// Sets and sends new value to vehicle even if value is the same
void forceSetValue(const QVariant& value); void forceSetValue(const QVariant& value);
...@@ -115,6 +123,8 @@ signals: ...@@ -115,6 +123,8 @@ signals:
void _containerValueChanged(const QVariant& value); void _containerValueChanged(const QVariant& value);
private: private:
QString _variantToString(const QVariant& variant) const;
QString _name; QString _name;
int _componentId; int _componentId;
QVariant _value; QVariant _value;
......
...@@ -110,7 +110,7 @@ QGCViewDialog { ...@@ -110,7 +110,7 @@ QGCViewDialog {
visible: !fact.minIsDefaultForType visible: !fact.minIsDefaultForType
QGCLabel { text: "Minimum value:" } QGCLabel { text: "Minimum value:" }
QGCLabel { text: fact.min } QGCLabel { text: fact.minString }
} }
Row { Row {
...@@ -118,14 +118,14 @@ QGCViewDialog { ...@@ -118,14 +118,14 @@ QGCViewDialog {
visible: !fact.maxIsDefaultForType visible: !fact.maxIsDefaultForType
QGCLabel { text: "Maximum value:" } QGCLabel { text: "Maximum value:" }
QGCLabel { text: fact.max } QGCLabel { text: fact.maxString }
} }
Row { Row {
spacing: defaultTextWidth spacing: defaultTextWidth
QGCLabel { text: "Default value:" } QGCLabel { text: "Default value:" }
QGCLabel { text: fact.defaultValueAvailable ? fact.defaultValue : "none" } QGCLabel { text: fact.defaultValueAvailable ? fact.defaultValueString : "none" }
} }
QGCLabel { QGCLabel {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment