GXmlTag Class Reference

#include <GXmlTree.h>

Inheritance diagram for GXmlTag:


List of all members.

Public Member Functions

 GXmlTag (char *tag=0, GXmlAlloc *alloc=0)
 Construct the object.
 GXmlTag (const GXmlTag &t)
 Construct the object.
bool Dump (int Depth=0)
 For debugging.
void Empty (bool Deep)
 Free any memory owned by this object.
void EmptyAttributes ()
 Free all attributes.
void EmptyChildren ()
 Frees all child tags.
bool IsTag (char *s)
char * GetAttr (char *Name)
 Get the string value of a named attribute.
int GetAsInt (char *Name)
 Get the value of a named attribute as an int.
bool SetAttr (char *Name, char *Value)
 Set the value of a named attribute to a string.
bool SetAttr (char *Name, int Value)
 Set the value of a named attribute to an int.
bool DelAttr (char *Name)
 Deletes an attribute.
bool SerializeAttr (char *Attr, int &Int)
 Read/write a native C integer into an attribute.
bool SerializeAttr (char *Attr, char *&Str)
 Read/write a native C dynamically allocated string into an attribute.
bool SerializeAttr (char *Attr, double &Dbl)
 Read/write a native C double into an attribute.
virtual bool Serialize ()
 Read/write all your native types in here.
GXmlTagGetTag (char *Name, bool Create=false)
 Returns a pointer to a child tag if present, or NULL if not.
GXmlTagCreateTag (char *Name)
 Creates a sub tag if it doesn't already exist.
virtual void InsertTag (GXmlTag *t)
 Inserts a child tag.
virtual void RemoveTag ()
 Removes this tag from the DOM heirarchy.
GXmlTagoperator= (GXmlTag &t)
 Copy operator, doesn't effect children.
bool Copy (GXmlTag &t, bool Deep=false)
 Copy method, deep option copies all child elements as well.

Public Attributes

char * Tag
char * Content
 Any content following the tag.
 The parent element/tag.
GArray< GXmlAttrAttr
 A list of attributes that this tag has.
List< GXmlTagChildren


class GXmlTree

Detailed Description

An XML element or tag. Contains optionally sub tags and a list of attributes. C++ applications can inherit from this and have native member types mapped to attributes using the SerializeAttr methods. All you have to do is override the virtual member function Serialize and call SerializeAttr on each of your native member variables. When loading and saving the attributes will be mapped to and from your native types.

Constructor & Destructor Documentation

GXmlTag::GXmlTag ( char *  tag = 0,
GXmlAlloc *  alloc = 0 

Construct the object.

tag  [Optional] Start with this name
alloc  [Optional] Use this allocator

References Content, Parent, and Tag.

Referenced by GetTag().

Member Function Documentation

bool GXmlTag::IsTag ( char *  s  )  [inline]

true if the tag is 's'

Member Data Documentation

A list of child tags. Don't edit this list yourself, use the InsertTag and RemoveTag methods.

Referenced by GXmlToUi::Convert(), Copy(), Dump(), EmptyChildren(), GetTag(), InsertTag(), GXmlTree::Read(), and RemoveTag().

char* GXmlTag::Tag

The name of the tag/element. This can be NULL in the case that the element is purely content.

Referenced by GXmlToUi::Convert(), Copy(), Dump(), Empty(), GXmlTag(), GXmlTree::Read(), and GApp::SetConfig().

The documentation for this class was generated from the following files:

Generated on Wed Dec 1 15:41:05 2010 for Lgi by  doxygen