|
|
|
|
@ -725,23 +725,23 @@ namespace GraphCanvas
|
|
|
|
|
case Attribute::LineColor:
|
|
|
|
|
case Attribute::StripeColor:
|
|
|
|
|
{
|
|
|
|
|
QString value(member->value.GetString());
|
|
|
|
|
QString valueStr(member->value.GetString());
|
|
|
|
|
|
|
|
|
|
if (IsColorValid(value))
|
|
|
|
|
if (IsColorValid(valueStr))
|
|
|
|
|
{
|
|
|
|
|
style->SetAttribute(attribute, ParseColor(value));
|
|
|
|
|
style->SetAttribute(attribute, ParseColor(valueStr));
|
|
|
|
|
}
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
case Attribute::BackgroundImage:
|
|
|
|
|
{
|
|
|
|
|
QString value(member->value.GetString());
|
|
|
|
|
QString valueStr(member->value.GetString());
|
|
|
|
|
|
|
|
|
|
if (value.startsWith(QStringLiteral(":/")))
|
|
|
|
|
if (valueStr.startsWith(QStringLiteral(":/")))
|
|
|
|
|
{
|
|
|
|
|
value = QString("qrc%1").arg(value);
|
|
|
|
|
valueStr = QString("qrc%1").arg(valueStr);
|
|
|
|
|
}
|
|
|
|
|
QUrl url(value);
|
|
|
|
|
QUrl url(valueStr);
|
|
|
|
|
if (url.isValid())
|
|
|
|
|
{
|
|
|
|
|
style->SetAttribute(attribute, url);
|
|
|
|
|
@ -844,103 +844,103 @@ namespace GraphCanvas
|
|
|
|
|
case Attribute::BorderStyle:
|
|
|
|
|
case Attribute::LineStyle:
|
|
|
|
|
{
|
|
|
|
|
QString value(member->value.GetString());
|
|
|
|
|
QString valueStr(member->value.GetString());
|
|
|
|
|
|
|
|
|
|
if (IsLineStyleValid(value))
|
|
|
|
|
if (IsLineStyleValid(valueStr))
|
|
|
|
|
{
|
|
|
|
|
style->SetAttribute(attribute, QVariant::fromValue(ParseLineStyle(value)));
|
|
|
|
|
style->SetAttribute(attribute, QVariant::fromValue(ParseLineStyle(valueStr)));
|
|
|
|
|
}
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
case Attribute::LineCurve:
|
|
|
|
|
{
|
|
|
|
|
QString value(member->value.GetString());
|
|
|
|
|
QString valueStr(member->value.GetString());
|
|
|
|
|
|
|
|
|
|
if (IsLineCurveValid(value))
|
|
|
|
|
if (IsLineCurveValid(valueStr))
|
|
|
|
|
{
|
|
|
|
|
style->SetAttribute(attribute, QVariant::fromValue(ParseLineCurve(value)));
|
|
|
|
|
style->SetAttribute(attribute, QVariant::fromValue(ParseLineCurve(valueStr)));
|
|
|
|
|
}
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
case Attribute::CapStyle:
|
|
|
|
|
{
|
|
|
|
|
QString value(member->value.GetString());
|
|
|
|
|
QString valueStr(member->value.GetString());
|
|
|
|
|
|
|
|
|
|
if (IsCapStyleValid(value))
|
|
|
|
|
if (IsCapStyleValid(valueStr))
|
|
|
|
|
{
|
|
|
|
|
style->SetAttribute(attribute, QVariant::fromValue(ParseCapStyle(value)));
|
|
|
|
|
style->SetAttribute(attribute, QVariant::fromValue(ParseCapStyle(valueStr)));
|
|
|
|
|
}
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
case Attribute::FontFamily:
|
|
|
|
|
{
|
|
|
|
|
QString value(member->value.GetString());
|
|
|
|
|
QString valueStr(member->value.GetString());
|
|
|
|
|
|
|
|
|
|
if (QString::compare(value, QLatin1String("default"), Qt::CaseInsensitive) == 0)
|
|
|
|
|
if (QString::compare(valueStr, QLatin1String("default"), Qt::CaseInsensitive) == 0)
|
|
|
|
|
{
|
|
|
|
|
value = defaultFontInfo.family();
|
|
|
|
|
valueStr = defaultFontInfo.family();
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
QFont font(value);
|
|
|
|
|
QFont font(valueStr);
|
|
|
|
|
QFontInfo info(font);
|
|
|
|
|
if (!info.exactMatch())
|
|
|
|
|
{
|
|
|
|
|
qWarning() << "Invalid font-family:" << value;
|
|
|
|
|
qWarning() << "Invalid font-family:" << valueStr;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
style->SetAttribute(attribute, value);
|
|
|
|
|
style->SetAttribute(attribute, valueStr);
|
|
|
|
|
}
|
|
|
|
|
case Attribute::FontStyle:
|
|
|
|
|
{
|
|
|
|
|
QString value(member->value.GetString());
|
|
|
|
|
QString valueStr(member->value.GetString());
|
|
|
|
|
|
|
|
|
|
if (QString::compare(value, QLatin1String("default"), Qt::CaseInsensitive) == 0)
|
|
|
|
|
if (QString::compare(valueStr, QLatin1String("default"), Qt::CaseInsensitive) == 0)
|
|
|
|
|
{
|
|
|
|
|
style->SetAttribute(attribute, defaultFontInfo.style());
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
if (IsFontStyleValid(value))
|
|
|
|
|
if (IsFontStyleValid(valueStr))
|
|
|
|
|
{
|
|
|
|
|
style->SetAttribute(attribute, ParseFontStyle(value));
|
|
|
|
|
style->SetAttribute(attribute, ParseFontStyle(valueStr));
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
case Attribute::FontWeight:
|
|
|
|
|
{
|
|
|
|
|
QString value(member->value.GetString());
|
|
|
|
|
QString valueStr(member->value.GetString());
|
|
|
|
|
|
|
|
|
|
if (QString::compare(value, QLatin1String("default"), Qt::CaseInsensitive) == 0)
|
|
|
|
|
if (QString::compare(valueStr, QLatin1String("default"), Qt::CaseInsensitive) == 0)
|
|
|
|
|
{
|
|
|
|
|
style->SetAttribute(attribute, defaultFontInfo.weight());
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
if (IsFontWeightValid(value))
|
|
|
|
|
if (IsFontWeightValid(valueStr))
|
|
|
|
|
{
|
|
|
|
|
style->SetAttribute(attribute, ParseFontWeight(value));
|
|
|
|
|
style->SetAttribute(attribute, ParseFontWeight(valueStr));
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
case Attribute::FontVariant:
|
|
|
|
|
{
|
|
|
|
|
QString value(member->value.GetString());
|
|
|
|
|
QString valueStr(member->value.GetString());
|
|
|
|
|
|
|
|
|
|
if (QString::compare(value, QLatin1String("default"), Qt::CaseInsensitive) == 0)
|
|
|
|
|
if (QString::compare(valueStr, QLatin1String("default"), Qt::CaseInsensitive) == 0)
|
|
|
|
|
{
|
|
|
|
|
style->SetAttribute(attribute, defaultFont.capitalization());
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
if (IsFontVariantValid(value))
|
|
|
|
|
if (IsFontVariantValid(valueStr))
|
|
|
|
|
{
|
|
|
|
|
style->SetAttribute(attribute, value);
|
|
|
|
|
style->SetAttribute(attribute, valueStr);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
break;
|
|
|
|
|
@ -965,23 +965,23 @@ namespace GraphCanvas
|
|
|
|
|
break;
|
|
|
|
|
case Attribute::PaletteStyle:
|
|
|
|
|
{
|
|
|
|
|
QString value(member->value.GetString());
|
|
|
|
|
style->SetAttribute(attribute, QVariant::fromValue(ParsePaletteStyle(value)));
|
|
|
|
|
QString valueStr(member->value.GetString());
|
|
|
|
|
style->SetAttribute(attribute, QVariant::fromValue(ParsePaletteStyle(valueStr)));
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
case Attribute::PatternTemplate:
|
|
|
|
|
case Attribute::PatternPalettes:
|
|
|
|
|
{
|
|
|
|
|
QString value(member->value.GetString());
|
|
|
|
|
style->SetAttribute(attribute, value);
|
|
|
|
|
QString valueStr(member->value.GetString());
|
|
|
|
|
style->SetAttribute(attribute, valueStr);
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
case Attribute::Steps:
|
|
|
|
|
{
|
|
|
|
|
QList<QVariant> stepList;
|
|
|
|
|
QString value(member->value.GetString());
|
|
|
|
|
QString valueStr(member->value.GetString());
|
|
|
|
|
|
|
|
|
|
QStringList splitValues = value.split("|");
|
|
|
|
|
QStringList splitValues = valueStr.split("|");
|
|
|
|
|
|
|
|
|
|
for (QString currentString : splitValues)
|
|
|
|
|
{
|
|
|
|
|
|