Quick links: Tutorial - Examples - Files - Symbols.
Classes: Hierarchy - Index - List - Members.
Namespaces: Index - base - cs - display.

Classes | Public Member Functions | List of all members
cogitant::XmlDocument::Element Class Reference

Noeud de type Element. More...

#include "xmldocument.h"

Inheritance diagram for cogitant::XmlDocument::Element:
cogitant::XmlDocument::Node

Classes

class  Attribute
 Un attribut d'un élément. More...
 

Public Member Functions

 Element (Element *parent, std::string const &name)
 Constructeur. More...
 
 ~Element ()
 Destructeur. More...
 
Type type () const
 Accès au type du noeud. More...
 
NodedeepCopy (Element *newparent) const
 Crée une copie (profonde) du noeud courant, et le rattache au parent passé en paramètre. More...
 
void addChild (Node *n)
 Ajout d'un noeud fils (en fin). More...
 
void detachChild (Node *n)
 Détacher le noeud fils. More...
 
void deleteChild (Node *n)
 Détache et supprime le noeud fils. More...
 
std::list< Node * > const & children () const
 Accès à la liste des fils. More...
 
bool childrenNoElement () const
 Est-ce que l'élément ne contient aucun sous-élément (mais uniquement du texte ou des commentaires. More...
 
ElementsearchChild (std::string const &name, bool recurs=false) const
 Recherche du premier fils ayant comme nom la chaîne passée. More...
 
ElementsearchChild (std::string const &name, std::string const &attrname, std::string const &attrvalue, bool recurs=false) const
 Recherche du premier fils ayant comme nom la chaîne passée et comme attribut les valeurs passées. More...
 
ElementsearchChild (std::string const &name, std::string const &attrname1, std::string const &attrvalue1, std::string const &attrname2, std::string const &attrvalue2, bool recurs=false) const
 Recherche du premier fils ayant comme nom la chaîne passée et comme attributs les valeurs passées. More...
 
ElementsearchCreateChild (std::string const &name)
 Recherche du premier fils ayant comme nom la chaîne passée avec création si ce fils n'existe pas. More...
 
ElementaddAttribute (std::string const &name, std::string const &value)
 Ajoute un attribut. More...
 
void deleteAttribute (std::string const &name)
 Supprime un attribut. More...
 
std::string const & findAttribute (std::string const &name) const
 Recherche d'un attribut. More...
 
bool hasAttribute (std::string const &name) const
 Est-ce que l'élément possède l'attribut. More...
 
bool hasAttribute (std::string const &name, std::string &result) const
 Est-ce que l'élément possède l'attribut, et quelle est la valeur de cet attribut. More...
 
std::list< Attribute > const & attributes () const
 Accès à la liste des attributs. More...
 
std::list< Attribute > & attributes ()
 Accès à la liste des attributs. More...
 
- Public Member Functions inherited from cogitant::XmlDocument::Node
 Node (Element *parent, std::string const &name)
 Constructeur. More...
 
virtual ~Node ()
 Destructeur. More...
 
Elementparent () const
 Accès au parent. More...
 
std::string const & name () const
 Accès à l'intitulé. More...
 
std::string & name ()
 Accès à l'intitulé. More...
 
void setName (std::string const &name)
 Modification de l'intitulé. More...
 
XmlDeclarationasXmlDeclaration ()
 Conversion en noeud de type XMLDECLARATION. More...
 
DoctypeDeclarationasDoctypeDeclaration ()
 Conversion en noeud de type DOCTYPEDECLARATION. More...
 
ElementasElement ()
 Conversion en noeud de type ELEMENT. More...
 
TextasText ()
 Conversion en noeud de type TEXT. More...
 
CommentasComment ()
 Conversion en noeud de type COMMENT. More...
 
XmlDeclaration const & asXmlDeclaration () const
 Conversion en noeud de type XMLDECLARATION. More...
 
DoctypeDeclaration const & asDoctypeDeclaration () const
 Conversion en noeud de type DOCTYPEDECLARATION. More...
 
Element const & asElement () const
 Conversion en noeud de type ELEMENT. More...
 
Text const & asText () const
 Conversion en noeud de type TEXT. More...
 
Comment const & asComment () const
 Conversion en noeud de type COMMENT. More...
 

Additional Inherited Members

- Public Types inherited from cogitant::XmlDocument::Node
enum  Type {
  XMLDECLARATION, DOCTYPEDECLARATION, ELEMENT, TEXT,
  COMMENT
}
 Les types de noeuds qui composent un document. More...
 
- Protected Attributes inherited from cogitant::XmlDocument::Node
Elementm_parent
 Noeud parent (ou NULL si aucun).
 
std::string m_name
 Intitulé du noeud.
 

Detailed Description

Noeud de type Element.

Constructor & Destructor Documentation

◆ Element()

cogitant::XmlDocument::Element::Element ( Element parent,
std::string const &  name 
)

Constructeur.

◆ ~Element()

cogitant::XmlDocument::Element::~Element ( )

Destructeur.

Member Function Documentation

◆ addAttribute()

Element& cogitant::XmlDocument::Element::addAttribute ( std::string const &  name,
std::string const &  value 
)

Ajoute un attribut.

Si un attribut de ce nom existe déjà, il est mis à jour par la nouvelle valeur.

◆ addChild()

void cogitant::XmlDocument::Element::addChild ( Node n)

Ajout d'un noeud fils (en fin).

◆ attributes() [1/2]

std::list<Attribute> const& cogitant::XmlDocument::Element::attributes ( ) const
inline

Accès à la liste des attributs.

◆ attributes() [2/2]

std::list<Attribute>& cogitant::XmlDocument::Element::attributes ( )
inline

Accès à la liste des attributs.

◆ children()

std::list<Node *> const& cogitant::XmlDocument::Element::children ( ) const

Accès à la liste des fils.

◆ childrenNoElement()

bool cogitant::XmlDocument::Element::childrenNoElement ( ) const

Est-ce que l'élément ne contient aucun sous-élément (mais uniquement du texte ou des commentaires.

◆ deepCopy()

Node* cogitant::XmlDocument::Element::deepCopy ( Element newparent) const
virtual

Crée une copie (profonde) du noeud courant, et le rattache au parent passé en paramètre.

Implements cogitant::XmlDocument::Node.

◆ deleteAttribute()

void cogitant::XmlDocument::Element::deleteAttribute ( std::string const &  name)

Supprime un attribut.

◆ deleteChild()

void cogitant::XmlDocument::Element::deleteChild ( Node n)

Détache et supprime le noeud fils.

◆ detachChild()

void cogitant::XmlDocument::Element::detachChild ( Node n)

Détacher le noeud fils.

◆ findAttribute()

std::string const& cogitant::XmlDocument::Element::findAttribute ( std::string const &  name) const

Recherche d'un attribut.

Retourne la valeur de l'attribut name ou, si il n'est pas trouvé, une chaine vide.

◆ hasAttribute() [1/2]

bool cogitant::XmlDocument::Element::hasAttribute ( std::string const &  name) const

Est-ce que l'élément possède l'attribut.

◆ hasAttribute() [2/2]

bool cogitant::XmlDocument::Element::hasAttribute ( std::string const &  name,
std::string &  result 
) const

Est-ce que l'élément possède l'attribut, et quelle est la valeur de cet attribut.

◆ searchChild() [1/3]

Element* cogitant::XmlDocument::Element::searchChild ( std::string const &  name,
bool  recurs = false 
) const

Recherche du premier fils ayant comme nom la chaîne passée.

◆ searchChild() [2/3]

Element* cogitant::XmlDocument::Element::searchChild ( std::string const &  name,
std::string const &  attrname,
std::string const &  attrvalue,
bool  recurs = false 
) const

Recherche du premier fils ayant comme nom la chaîne passée et comme attribut les valeurs passées.

◆ searchChild() [3/3]

Element* cogitant::XmlDocument::Element::searchChild ( std::string const &  name,
std::string const &  attrname1,
std::string const &  attrvalue1,
std::string const &  attrname2,
std::string const &  attrvalue2,
bool  recurs = false 
) const

Recherche du premier fils ayant comme nom la chaîne passée et comme attributs les valeurs passées.

◆ searchCreateChild()

Element* cogitant::XmlDocument::Element::searchCreateChild ( std::string const &  name)

Recherche du premier fils ayant comme nom la chaîne passée avec création si ce fils n'existe pas.

◆ type()

Type cogitant::XmlDocument::Element::type ( ) const
virtual

Accès au type du noeud.

Implements cogitant::XmlDocument::Node.