forked from qt-creator/qt-creator
QmlJS: Adding IntValue and RealValue
This allows to distinguish between int an real numbers Reviewed-by: Christian Kamm
This commit is contained in:
committed by
Christian Kamm
parent
e9fd078e45
commit
ba39234627
@@ -870,13 +870,13 @@ const Value *QmlObjectValue::propertyValue(const FakeMetaProperty &prop) const
|
||||
} else if (typeName == QLatin1String("bool")) {
|
||||
value = engine()->booleanValue();
|
||||
} else if (typeName == QLatin1String("int")
|
||||
|| typeName == QLatin1String("float")
|
||||
|| typeName == QLatin1String("double")
|
||||
|| typeName == QLatin1String("qreal")
|
||||
|| typeName == QLatin1String("long")
|
||||
// ### Review: more types here?
|
||||
) {
|
||||
value = engine()->numberValue();
|
||||
|| typeName == QLatin1String("long")) {
|
||||
value = engine()->intValue();
|
||||
} else if (typeName == QLatin1String("float")
|
||||
|| typeName == QLatin1String("double")
|
||||
|| typeName == QLatin1String("qreal")) {
|
||||
// ### Review: more types here?
|
||||
value = engine()->realValue();
|
||||
} else if (typeName == QLatin1String("QFont")) {
|
||||
value = engine()->qmlFontObject();
|
||||
} else if (typeName == QLatin1String("QPoint")
|
||||
@@ -1318,6 +1318,17 @@ const NumberValue *Value::asNumberValue() const
|
||||
return 0;
|
||||
}
|
||||
|
||||
const IntValue *Value::asIntValue() const
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
const RealValue *Value::asRealValue() const
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
const BooleanValue *Value::asBooleanValue() const
|
||||
{
|
||||
return 0;
|
||||
@@ -1381,6 +1392,17 @@ const NumberValue *NumberValue::asNumberValue() const
|
||||
return this;
|
||||
}
|
||||
|
||||
const RealValue *RealValue::asRealValue() const
|
||||
{
|
||||
return this;
|
||||
|
||||
}
|
||||
|
||||
const IntValue *IntValue::asIntValue() const
|
||||
{
|
||||
return this;
|
||||
}
|
||||
|
||||
void NumberValue::accept(ValueVisitor *visitor) const
|
||||
{
|
||||
visitor->visit(this);
|
||||
@@ -2526,6 +2548,15 @@ const NumberValue *Engine::numberValue() const
|
||||
return &_numberValue;
|
||||
}
|
||||
|
||||
const RealValue *Engine::realValue() const
|
||||
{
|
||||
return &_realValue;
|
||||
}
|
||||
const IntValue *Engine::intValue() const
|
||||
{
|
||||
return &_intValue;
|
||||
}
|
||||
|
||||
const BooleanValue *Engine::booleanValue() const
|
||||
{
|
||||
return &_booleanValue;
|
||||
|
Reference in New Issue
Block a user