[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: kdelibs/khtml/dom
From: David Faure <faure () kde ! org>
Date: 2003-06-24 22:14:27
[Download RAW message or body]
CVS commit by faure:
This I can "forward port" to HEAD. The rest is... well, such a mess.
M +26 -13 dom_element.cpp 1.41
--- kdelibs/khtml/dom/dom_element.cpp #1.40:1.41
@@ -344,31 +344,44 @@ CSSStyleDeclaration Element::style()
}
-bool Element::khtmlValidAttrName(const DOMString &/*name*/)
+bool Element::khtmlValidAttrName(const DOMString &name)
{
- // ###
+ // Check if name is valid
+ // http://www.w3.org/TR/2000/REC-xml-20001006#NT-Name
+ DOMStringImpl* _name = name.implementation();
+ QChar ch = _name->s[0];
+ if ( !ch.isLetter() && ch != '_' && ch != ':' )
+ return false; // first char isn't valid
+ for ( uint i = 0; i < _name->l; ++i )
+ {
+ ch = _name->s[i];
+ if ( !ch.isLetter() && !ch.isDigit() && ch != '.'
+ && ch != '-' && ch != '_' && ch != ':'
+ && ch.category() != QChar::Mark_SpacingCombining
+ /* no idea what "extender is" */ )
+ return false;
+ }
return true;
}
-bool Element::khtmlValidPrefix(const DOMString &/*name*/)
+bool Element::khtmlValidPrefix(const DOMString &name)
{
- // ###
- return true;
+ return khtmlValidAttrName(name);
}
-bool Element::khtmlValidQualifiedName(const DOMString &/*name*/)
+bool Element::khtmlValidQualifiedName(const DOMString &name)
{
- // ###
- return true;
+ return khtmlValidAttrName(name);
}
-bool Element::khtmlMalformedQualifiedName(const DOMString &/*name*/)
+bool Element::khtmlMalformedQualifiedName(const DOMString &name)
{
- // ###
- return false;
+ // #### Not clearly defined in the DOM spec...
+ // But we know for sure that a null qualified name is malformed
+ return name.isNull();
}
bool Element::khtmlMalformedPrefix(const DOMString &/*name*/)
{
- // ###
+ // ####
return false;
}
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic