static void fixUrl(const QmlDesigner::ModelNode &modelNode, const QmlDesigner::PropertyName &name, QVariant *value) { if (modelNode.isValid() && modelNode.metaInfo().isValid() && (modelNode.metaInfo().propertyTypeName(name) == "QUrl" || modelNode.metaInfo().propertyTypeName(name) == "url")) { if (!value->isValid()) *value = QString(QLatin1String("")); } }
/* "red" is the same color as "#ff0000" To simplify editing we convert all explicit color names in the hash format */ static void fixAmbigousColorNames(const QmlDesigner::ModelNode &modelNode, const QString &name, QVariant *value) { if (modelNode.isValid() && modelNode.metaInfo().isValid() && (modelNode.metaInfo().propertyTypeName(name) == "QColor" || modelNode.metaInfo().propertyTypeName(name) == "color")) { if ((value->type() == QVariant::Color)) { QColor color = value->value<QColor>(); int alpha = color.alpha(); color = QColor(color.name()); color.setAlpha(alpha); *value = color; } else if (value->toString() != QLatin1String("transparent")) { *value = QColor(value->toString()).name(); } } }