diff --git a/src/libs/ifc/xml/vabstractpattern.cpp b/src/libs/ifc/xml/vabstractpattern.cpp index c0c6ea1f1..5b4080c88 100644 --- a/src/libs/ifc/xml/vabstractpattern.cpp +++ b/src/libs/ifc/xml/vabstractpattern.cpp @@ -1203,6 +1203,7 @@ QStringList VAbstractPattern::ListExpressions() const list << ListArcExpressions(); list << ListSplineExpressions(); list << ListIncrementExpressions(); + list << ListOperationExpressions(); return list; } @@ -1393,6 +1394,29 @@ QStringList VAbstractPattern::ListIncrementExpressions() const return expressions; } +//--------------------------------------------------------------------------------------------------------------------- +QStringList VAbstractPattern::ListOperationExpressions() const +{ + QStringList expressions; + const QDomNodeList list = elementsByTagName(TagOperation); + for (int i=0; i < list.size(); ++i) + { + const QDomElement dom = list.at(i).toElement(); + + // Each tag can contains several attributes. + try + { + expressions.append(GetParametrString(dom, AttrAngle)); + } + catch (VExceptionEmptyParameter &e) + { + Q_UNUSED(e) + } + } + + return expressions; +} + //--------------------------------------------------------------------------------------------------------------------- bool VAbstractPattern::IsVariable(const QString &token) const { diff --git a/src/libs/ifc/xml/vabstractpattern.h b/src/libs/ifc/xml/vabstractpattern.h index 8847ec6ab..45a9901ad 100644 --- a/src/libs/ifc/xml/vabstractpattern.h +++ b/src/libs/ifc/xml/vabstractpattern.h @@ -294,6 +294,7 @@ private: QStringList ListSplineExpressions() const; QStringList ListPathPointExpressions() const; QStringList ListIncrementExpressions() const; + QStringList ListOperationExpressions() const; bool IsVariable(const QString& token) const; bool IsPostfixOperator(const QString& token) const;