Lines Matching refs:XMLNode

107  * "tweaks" that improve substancially the display of the content of the XMLNode objects
109 * the "smooth" display of the XMLNode objects, you cannot live without it anymore!
126 // 'XMLNode::openFileHelper' : cannot convert parameter 2 from 'const char [5]' to 'const wchar_t *'
254 * \note The constructors of the XMLNode class are protected, so use instead one of these four methods to get your first instance of XMLNode:
256 * <li> XMLNode::parseString </li>
257 * <li> XMLNode::parseFile </li>
258 * <li> XMLNode::openFileHelper </li>
259 * <li> XMLNode::createXMLTopNode (or XMLNode::createXMLTopNode_WOSD)</li>
261 typedef struct XMLDLLENTRY XMLNode {
266 /// Constructors are protected, so use instead one of: XMLNode::parseString, XMLNode::parseFile, XMLNode::openFileHelper, XMLNode::createXMLTopNode
267 XMLNode(struct XMLNodeDataTag *pParent, XMLSTR lpszName, char isDeclaration);
268 /// Constructors are protected, so use instead one of: XMLNode::parseString, XMLNode::parseFile, XMLNode::openFileHelper, XMLNode::createXMLTopNode
269 XMLNode(struct XMLNodeDataTag *p);
274 /** @defgroup conversions Parsing XML files/strings to an XMLNode structure and Rendering XMLNode's to files/string.
278 /// Parse an XML string and return the root of a XMLNode tree representing the string.
279 static XMLNode parseString(XMLCSTR lpXMLString, XMLCSTR tag = NULL,
281 /**< The "parseString" function parse an XML string and return the root of a XMLNode tree. The "opposite" of this function is
282 * the function "createXMLString" that re-creates an XML string from an XMLNode tree. If the XML document is corrupted, the
292 /// Parse an XML file and return the root of a XMLNode tree representing the file.
293 static XMLNode parseFile(XMLCSTR filename, XMLCSTR tag = NULL,
295 /**< The "parseFile" function parse an XML file and return the root of a XMLNode tree. The "opposite" of this function is
296 * the function "writeToFile" that re-creates an XML file from an XMLNode tree. If the XML document is corrupted, the
306 /// Parse an XML file and return the root of a XMLNode tree representing the file. A very crude error checking is made. An attempt to guess the Char Encoding used in the file is made.
307 static XMLNode openFileHelper(XMLCSTR filename, XMLCSTR tag = NULL);
327 /// Create an XML string starting from the current XMLNode.
345 /** @defgroup navigate Navigate the XMLNode structure
351 XMLNode getParentNode() const; ///< return the parent node
352 XMLNode getChildNode(int i=0) const; ///< return ith child node
353 XMLNode getChildNode(XMLCSTR name, int i) const; ///< return ith child node with specific name (return an empty node if failing). If i==-1, this returns the last XMLNode with the given name.
354 XMLNode getChildNode(XMLCSTR name, int *i=NULL) const; ///< return next child node with specific name (return an empty node if failing)
355 XMLNode* getChildNodePtr(XMLCSTR name, int *j) const;
356 XMLNode getChildNodeWithAttribute(XMLCSTR tagName,
360 XMLNode getChildNodeByPath(XMLCSTR path, char createNodeIfMissing=0, XMLCHAR sep='/');
362 XMLNode getChildNodeByPathNonConst(XMLSTR path, char createNodeIfMissing=0, XMLCHAR sep='/');
376 XMLNodeContents enumContents(XMLElementPosition i) const; ///< enumerate all the different contents (attribute,child,text, clear) of the current XMLNode. The order is reflecting the order of the original file/string. NOTE: 0 <= i < nElement();
380 XMLNode deepCopy() const; ///< deep copy (duplicate/clone) a XMLNode
381 static XMLNode emptyNode(); ///< return XMLNode::emptyXMLNode;
384 ~XMLNode();
385 XMLNode(const XMLNode &A); ///< to allow shallow/fast copy:
386 XMLNode& operator=( const XMLNode& A ); ///< to allow shallow/fast copy:
388 XMLNode(): d(NULL){};
389 static XMLNode emptyXMLNode;
393 /** @defgroup xmlModify Create or Update the XMLNode structure
395 * The functions in this group allows you to create from scratch (or update) a XMLNode structure. Start by creating your top
403 /** @defgroup creation Creating from scratch a XMLNode structure
406 static XMLNode createXMLTopNode(XMLCSTR lpszName, char isDeclaration=FALSE); ///< Create the top node of an XMLNode structure
407 XMLNode addChild(XMLCSTR lpszName, char isDeclaration=FALSE, XMLElementPosition pos=-1); ///< Add a new child node
408 XMLNode addChild(XMLNode nodeToAdd, XMLElementPosition pos=-1); ///< If the "nodeToAdd" has some parents, it will be detached from it's parents before being attached to the current XMLNode
439 /// The "deleteNodeContent" function forces the deletion of the content of this XMLNode and the subtree.
441 /**< \note The XMLNode instances that are referring to the part of the subtree that has been deleted CANNOT be used anymore!!. Unexpected results will occur if you continue using them. */
442 void deleteAttribute(int i=0); ///< Delete the ith attribute of the current XMLNode
445 void deleteText(int i=0); ///< Delete the Ith text content of the current XMLNode
446 void deleteText(XMLCSTR lpszValue); ///< Delete the text content "lpszValue" inside the current XMLNode (direct "pointer-to-pointer" comparison is used to find the right text)
447 void deleteClear(int i=0); ///< Delete the Ith clear tag inside the current XMLNode
448 void deleteClear(XMLCSTR lpszValue); ///< Delete the clear tag "lpszValue" inside the current XMLNode (direct "pointer-to-pointer" comparison is used to find the clear tag)
449 void deleteClear(XMLClear *p); ///< Delete the clear tag "p" inside the current XMLNode (direct "pointer-to-pointer" comparison on the lpszName of the clear tag is used to find the clear tag)
456 * will be free'd by the XMLNode class. For example, it means that this is incorrect:
479 * ('free(b)' is performed by the XMLNode class)
481 static XMLNode createXMLTopNode_WOSD(XMLSTR lpszName, char isDeclaration=FALSE); ///< Create the top node of an XMLNode structure
482 XMLNode addChild_WOSD(XMLSTR lpszName, char isDeclaration=FALSE, XMLElementPosition pos=-1); ///< Add a new child node
501 * middle (at a specified position) of a XMLNode tree already constructed. The value returned by these
510 XMLElementPosition positionOfChildNode(XMLNode x) const;
529 static char setGlobalOptions(XMLCharEncoding characterEncoding=XMLNode::char_encoding_UTF8, char guessWideCharChars=1,
535 * XMLNode::parseFile and XMLNode::openFileHelper functions will test if the file contains ASCII
540 * XMLNode::parseFile and XMLNode::openFileHelper functions will test if the file contains WideChar
546 * three currently recognized encodings: XMLNode::encoding_UTF8, XMLNode::encoding_ascii,
547 * XMLNode::encoding_ShiftJIS.
559 * XMLNode x=XMLNode::parseString("<a>foo<!-- hello -->bar<!DOCTYPE world >chu</a>","a");
585 * "characterEncoding" described in the XMLNode::setGlobalOptions. The guess is based on the content of a buffer of length
587 * file to be parsed. The XMLNode::openFileHelper function is using this function to automatically compute
596 // these are functions and structures used internally by the XMLNode class (don't bother about them):
606 XMLNode *pChild; // Array of child nodes
621 XMLNode addChild_priv(int, XMLSTR, char, int);
631 } XMLNode;
633 /// This structure is given by the function XMLNode::enumContents.
638 XMLNode child;
651 * a very handy function when used with all the "XMLNode::*_WOSD" functions (\link xmlWOSD \endlink).
686 * \note If you are creating from scratch an XML file using the provided XMLNode class
687 * you must not use the "ToXMLStringTool" class (because the "XMLNode" class does the