epoc32/include/xmlengtext.h
branchSymbian2
changeset 2 2fe1408b6811
parent 0 061f57f2323e
     1.1 --- a/epoc32/include/xmlengtext.h	Tue Nov 24 13:55:44 2009 +0000
     1.2 +++ b/epoc32/include/xmlengtext.h	Tue Mar 16 16:12:26 2010 +0000
     1.3 @@ -1,1 +1,90 @@
     1.4 -xmlengtext.h
     1.5 +/*
     1.6 +* Copyright (c) 2004-2006 Nokia Corporation and/or its subsidiary(-ies). 
     1.7 +* All rights reserved.
     1.8 +* This component and the accompanying materials are made available
     1.9 +* under the terms of the License "Symbian Foundation License v1.0" to Symbian Foundation members and "Symbian Foundation End User License Agreement v1.0" to non-members
    1.10 +* which accompanies this distribution, and is available
    1.11 +* at the URL "http://www.symbianfoundation.org/legal/licencesv10.html".
    1.12 +*
    1.13 +* Initial Contributors:
    1.14 +* Nokia Corporation - initial contribution.
    1.15 +*
    1.16 +* Contributors:
    1.17 +*
    1.18 +* Description:       Text node functions
    1.19 +*
    1.20 +*/
    1.21 +
    1.22 +
    1.23 +
    1.24 +
    1.25 +
    1.26 +
    1.27 +
    1.28 +#ifndef XMLENGINE_TEXT_H_INCLUDED
    1.29 +#define XMLENGINE_TEXT_H_INCLUDED
    1.30 +
    1.31 +#include "xmlengcharacterdata.h"
    1.32 +
    1.33 +
    1.34 +
    1.35 +/**
    1.36 + * The TXmlEngTextNode interface inherits from TXmlEngCharacterData and represents the textual content 
    1.37 + * (termed "character data" in XML) of an Element or TXmlEngAttr. 
    1.38 + *
    1.39 + * If there is no markup inside an element's content, the text is contained in a single object 
    1.40 + * of the TXmlEngTextNode interface that is the only child of the element. If there is markup, 
    1.41 + * it is parsed into the information items (elements, comments, etc.) and TXmlEngTextNode nodes that 
    1.42 + * form the list of children of the element.
    1.43 + * 
    1.44 + * When a document is first made available via the DOM, there is only one TXmlEngTextNode node for each 
    1.45 + * block of text. Users may create adjacent TXmlEngTextNode nodes that represent the contents of a given 
    1.46 + * element without any intervening markup, but should be aware that there is no way to 
    1.47 + * represent the separations between these nodes in XML or HTML, so they will not (in general) 
    1.48 + * persist between DOM editing sessions. 
    1.49 + * 
    1.50 + * No lexical check is done on the content of a TXmlEngTextNode node and, depending on its position in 
    1.51 + * the document, some characters must be escaped during serialization using character references; 
    1.52 + * e.g. the characters "<&" if the textual content is part of an element or of an attribute, 
    1.53 + * the character sequence "]]>" when part of an element, the quotation mark character " or 
    1.54 + * the apostrophe character ' when part of an attribute. 
    1.55 + * 
    1.56 + * <b>DOM Level 3 spec:</b>
    1.57 + * <p>http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core.html#ID-1312295772
    1.58 + * 
    1.59 + * @lib XmlEngineDOM.lib
    1.60 + * @since S60 v3.1
    1.61 + */
    1.62 +class TXmlEngTextNode : public TXmlEngCharacterData
    1.63 +{
    1.64 +public:
    1.65 +    /**
    1.66 +     * Default constructor
    1.67 +     *
    1.68 +     * @since S60 v3.1
    1.69 +     */
    1.70 +	inline TXmlEngTextNode();
    1.71 +
    1.72 +    /**
    1.73 +     * Check if element content is whitespace.
    1.74 +     *
    1.75 +     * @since S60 v3.1
    1.76 +     * @return TRUE if is only whitespace
    1.77 +     */
    1.78 +    IMPORT_C TBool IsElementContentWhitespace() const;
    1.79 +
    1.80 +protected:
    1.81 +    /**
    1.82 +     * Constructor
    1.83 +     *
    1.84 +     * @since S60 v3.1
    1.85 +     * @param aInternal Text node pointer
    1.86 +     */
    1.87 +    inline TXmlEngTextNode(void* aInternal);
    1.88 +};
    1.89 +
    1.90 +
    1.91 +
    1.92 +#include "xmlengtext.inl"
    1.93 +
    1.94 +#endif /* XMLENGINE_TEXT_H_INCLUDED */