7#include <QtSvg/private/qsvgnode_p.h>
8#include <QtSvg/private/qsvgstructure_p.h>
12QSvgStyleSelector::QSvgStyleSelector()
14 nameCaseSensitivity = Qt::CaseInsensitive;
23 return node->typeName();
28 return (QSvgNode*)node.ptr;
34 (n->type() == QSvgNode::Doc ||
35 n->type() == QSvgNode::Group ||
36 n->type() == QSvgNode::Defs ||
37 n->type() == QSvgNode::Switch)) {
38 return (QSvgStructureNode*)n;
45 QSvgNode *n = svgNode(node);
52 QSvgNode *n = svgNode(node);
55 QString name = nodeToName(n);
56 return QString::compare(name, nodeName, Qt::CaseInsensitive) == 0;
61 const QString &name = asel.name;
62 QSvgNode *n = svgNode(node);
63 if ((!n->nodeId().isEmpty() && (name == QLatin1String(
"id") ||
64 name == QLatin1String(
"xml:id"))))
66 if (!n->xmlClass().isEmpty() && name == QLatin1String(
"class"))
73 QSvgNode *n = svgNode(node);
75 (!n->nodeId().isEmpty() || !n->xmlClass().isEmpty()));
80 QSvgNode *n = svgNode(node);
84 QStringList lst; lst.append(nid);
90 QSvgNode *n = svgNode(node);
92 return QStringList(nodeToName(n));
103 QSvgNode *n = svgNode(node);
108 QSvgNode *svgParent = n->parent();
110 newNode.ptr = svgParent;
122 QSvgNode *n = svgNode(node);
128 newNode.ptr = svgParent->previousSiblingNode(n);
QStringList nodeNames(NodePtr node) const override
QSvgStructureNode * svgStructure(NodePtr node) const
bool hasAttributes(NodePtr node) const override
QString attributeValue(NodePtr node, const QCss::AttributeSelector &asel) const override
bool isNullNode(NodePtr node) const override
QSvgStructureNode * nodeToStructure(QSvgNode *n) const
void freeNode(NodePtr node) const override
QString nodeToName(QSvgNode *node) const
NodePtr duplicateNode(NodePtr node) const override
QSvgNode * svgNode(NodePtr node) const
NodePtr parentNode(NodePtr node) const override
virtual ~QSvgStyleSelector()
QStringList nodeIds(NodePtr node) const override
NodePtr previousSiblingNode(NodePtr node) const override
bool nodeNameEquals(NodePtr node, const QString &nodeName) const override
Combined button and popup list for selecting options.