void X3DXMLContentHandler::startElement(const char* qName, const char** atts) { if (_skipCount != 0) { _skipCount++; return; } int id = X3DTypes::getElementID(qName); X3DXMLAttributes xmlAttributes(atts); int state = _switch.doStartElement(id, xmlAttributes); if (state == XIOT::SKIP_CHILDREN) _skipCount = 1; }
void X3DXMLContentHandler::startElement(const XMLCh* const, const XMLCh* const, const XMLCh* const qname, const Attributes &attrs) { if (_skipCount != 0) { _skipCount++; return; } char* nodeName = XMLString::transcode(qname); int id = X3DTypes::getElementID(nodeName); X3DXMLAttributes xmlAttributes(&attrs); int state = _switch.doStartElement(id, xmlAttributes); if (state == XIOT::SKIP_CHILDREN) _skipCount = 1; XMLString::release(&nodeName); }
void Parser::xmlElement(XmlContext* ctx) { xmlTagName(ctx); if (T0 != T_XmlRightAngle && T0 != T_XmlSlashRightAngle) { ctx->addText(" "); xmlAttributes(ctx); } if (T0 == T_XmlRightAngle) { xmlAssert(ctx, T0); xmlElementContent(ctx); xmlAssert(ctx, T_XmlLeftAngleSlash); xmlAtomSkipSpace(); xmlTagName(ctx); xmlAssert(ctx, T_XmlRightAngle); } else xmlAssert(ctx, T_XmlSlashRightAngle); }