diff options
-rw-r--r-- | src/domhelpers.cpp | 14 | ||||
-rw-r--r-- | src/domhelpers.h | 2 |
2 files changed, 14 insertions, 2 deletions
diff --git a/src/domhelpers.cpp b/src/domhelpers.cpp index 7ecf963..038e2df 100644 --- a/src/domhelpers.cpp +++ b/src/domhelpers.cpp @@ -179,7 +179,19 @@ void DOMHelpers::insertAfter(DOM::Node& parent, const DOM::Node& node, parent.insertBefore(node, sibling); } -DOM::Element DOMHelpers::getChildElement(const DOM::Node& parent, const string& name) +DOM::Element DOMHelpers::findChildElement(const DOM::Node& parent, const string& name) +{ + DOM::Node child = parent.getFirstChild(); + while(child != NULL) + { + if(isElement(child, name)) + return (DOM::Element&)child; + } + + return DOM::Element(); +} + +DOM::Element DOMHelpers::findDescendantElement(const DOM::Node& parent, const string& name) { DOM::Node child = parent.getFirstChild(); while(child != NULL) diff --git a/src/domhelpers.h b/src/domhelpers.h index fd386f8..8b14e2b 100644 --- a/src/domhelpers.h +++ b/src/domhelpers.h @@ -73,7 +73,7 @@ public: static DOM::Element getPriorElement(const DOM::Node& node, const string& name); // Get first child element of a given name - static DOM::Element getChildElement(const DOM::Node& parent, const string& name); + static DOM::Element findChildElement(const DOM::Node& parent, const string& name); // Check if a given element is anothers ancestor static bool hasAncestor(const DOM::Node& ancestor, const DOM::Node& node); |