Classes | Namespaces | Macros | Functions
HTMLClasses.h File Reference

The header file containing HTML output classes. More...

`#include "CgiDefs.h"`
`#include "HTMLAtomicElement.h"`
`#include "HTMLBooleanElement.h"`
`#include "HTMLDoctype.h"`

Go to the source code of this file.

## Classes
class | cgicc::nullTag
class | cgicc::comment
| An HTML comment. More...

## Namespaces
namespace | cgicc
| The namespace containing the cgicc library.

## Macros
#define | TAG(name, tag)
| Create an HTML element rendering class. More...
#define | ATOMIC_ELEMENT(name, tag) TAG(name, tag); typedef HTMLAtomicElement<name##Tag> name
| Create an atomic HTML element. More...
#define | BOOLEAN_ELEMENT(name, tag) TAG(name, tag); typedef HTMLBooleanElement<name##Tag> name
| An HTML element maintaining an internal on/off state. More...

## Functions
| cgicc::BOOLEAN_ELEMENT (html, "html")
| cgicc::BOOLEAN_ELEMENT (head, "head")
| cgicc::BOOLEAN_ELEMENT (title, "title")
| cgicc::ATOMIC_ELEMENT (meta, "meta")
| cgicc::BOOLEAN_ELEMENT (style, "style")
| cgicc::BOOLEAN_ELEMENT (body, "body")
| cgicc::BOOLEAN_ELEMENT (div, "div")
| cgicc::BOOLEAN_ELEMENT (span, "span")
| cgicc::BOOLEAN_ELEMENT (h1, "h1")
| cgicc::BOOLEAN_ELEMENT (h2, "h2")
| cgicc::BOOLEAN_ELEMENT (h3, "h3")
| cgicc::BOOLEAN_ELEMENT (h4, "h4")
| cgicc::BOOLEAN_ELEMENT (h5, "h5")
| cgicc::BOOLEAN_ELEMENT (h6, "h6")
| cgicc::BOOLEAN_ELEMENT (address, "address")
| cgicc::BOOLEAN_ELEMENT (em, "em")
| cgicc::BOOLEAN_ELEMENT (strong, "strong")
| cgicc::BOOLEAN_ELEMENT (cite, "cite")
| cgicc::BOOLEAN_ELEMENT (dfn, "dfn")
| cgicc::BOOLEAN_ELEMENT (code, "code")
| cgicc::BOOLEAN_ELEMENT (samp, "samp")
| cgicc::BOOLEAN_ELEMENT (kbd, "kbd")
| cgicc::BOOLEAN_ELEMENT (var, "var")
| cgicc::BOOLEAN_ELEMENT (abbr, "abbr")
| cgicc::BOOLEAN_ELEMENT (acronym, "acronym")
| cgicc::BOOLEAN_ELEMENT (blockquote, "blockquote")
| cgicc::BOOLEAN_ELEMENT (q, "q")
| cgicc::BOOLEAN_ELEMENT (sub, "sub")
| cgicc::BOOLEAN_ELEMENT (sup, "sup")
| cgicc::BOOLEAN_ELEMENT (p, "p")
| cgicc::ATOMIC_ELEMENT (br, "br")
| cgicc::BOOLEAN_ELEMENT (pre, "pre")
| cgicc::BOOLEAN_ELEMENT (ins, "ins")
| cgicc::BOOLEAN_ELEMENT (del, "del")
| cgicc::BOOLEAN_ELEMENT (bdo, "bdo")
| cgicc::BOOLEAN_ELEMENT (ul, "ul")
| cgicc::BOOLEAN_ELEMENT (ol, "ol")
| cgicc::BOOLEAN_ELEMENT (li, "li")
| cgicc::BOOLEAN_ELEMENT (dl, "dl")
| cgicc::BOOLEAN_ELEMENT (dt, "dt")
| cgicc::BOOLEAN_ELEMENT (dd, "dd")
| cgicc::BOOLEAN_ELEMENT (table, "table")
| cgicc::BOOLEAN_ELEMENT (caption, "caption")
| cgicc::BOOLEAN_ELEMENT (thead, "thead")
| cgicc::BOOLEAN_ELEMENT (tfoot, "tfoot")
| cgicc::BOOLEAN_ELEMENT (tbody, "tbody")
| cgicc::BOOLEAN_ELEMENT (colgroup, "colgroup")
| cgicc::ATOMIC_ELEMENT (col, "col")
| cgicc::BOOLEAN_ELEMENT (tr, "tr")
| cgicc::BOOLEAN_ELEMENT (th, "th")
| cgicc::BOOLEAN_ELEMENT (td, "td")
| cgicc::BOOLEAN_ELEMENT (a, "a")
| cgicc::ATOMIC_ELEMENT (link, "link")
| cgicc::ATOMIC_ELEMENT (base, "base")
| cgicc::ATOMIC_ELEMENT (img, "img")
| cgicc::BOOLEAN_ELEMENT (object, "object")
| cgicc::ATOMIC_ELEMENT (param, "param")
| cgicc::BOOLEAN_ELEMENT (map, "map")
| cgicc::ATOMIC_ELEMENT (area, "area")
| cgicc::ATOMIC_ELEMENT (hr, "hr")
| cgicc::BOOLEAN_ELEMENT (tt, "tt")
| cgicc::BOOLEAN_ELEMENT (i, "i")
| cgicc::BOOLEAN_ELEMENT (b, "b")
| cgicc::BOOLEAN_ELEMENT (big, "big")
| cgicc::BOOLEAN_ELEMENT (small, "small")
| cgicc::BOOLEAN_ELEMENT (frameset, "frameset")
| cgicc::ATOMIC_ELEMENT (frame, "frame")
| cgicc::BOOLEAN_ELEMENT (noframes, "noframes")
| cgicc::BOOLEAN_ELEMENT (iframe, "iframe")
| cgicc::BOOLEAN_ELEMENT (form, "form")
| cgicc::ATOMIC_ELEMENT (input, "input")
| cgicc::BOOLEAN_ELEMENT (button, "button")
| cgicc::BOOLEAN_ELEMENT (select, "select")
| cgicc::BOOLEAN_ELEMENT (optgroup, "optgroup")
| cgicc::BOOLEAN_ELEMENT (option, "option")
| cgicc::BOOLEAN_ELEMENT (textarea, "textarea")
| cgicc::BOOLEAN_ELEMENT (label, "label")
| cgicc::BOOLEAN_ELEMENT (fieldset, "fieldset")
| cgicc::BOOLEAN_ELEMENT (legend, "legend")
| cgicc::BOOLEAN_ELEMENT (script, "script")
| cgicc::BOOLEAN_ELEMENT (noscript, "noscript")

## Detailed Description

The header file containing HTML output classes.

One class is defined for each element in the HTML 4.0 standard.

Definition in file HTMLClasses.h.

## Macro Definition Documentation

## ◆ ATOMIC_ELEMENT

#define ATOMIC_ELEMENT | ( |  | name,
|  |  | tag
| ) |  | TAG(name, tag); typedef HTMLAtomicElement<name##Tag> name

Create an atomic HTML element.

Atomic HTML elements maintain no internal on/off state. For example, `br` and `meta` are atomic elements.

Parameters

  name | The name of the class to define
  tag | The text to output when this tag is rendered

Definition at line 60 of file HTMLClasses.h.

## ◆ BOOLEAN_ELEMENT

#define BOOLEAN_ELEMENT | ( |  | name,
|  |  | tag
| ) |  | TAG(name, tag); typedef HTMLBooleanElement<name##Tag> name

An HTML element maintaining an internal on/off state.

Boolean HTML elements maintain an internal state, and the output rendered depends on the current state. For example, `h1` and `title` are boolean elements.

Parameters

  name | The name of the class to define
  tag | The text to output when this tag is rendered

Definition at line 72 of file HTMLClasses.h.

## ◆ TAG

#define TAG | ( |  | name,
|  |  | tag
| ) |  |

Value:
class name##Tag \
{ public: inline static const char* getName() { return tag; } }

Create an HTML element rendering class.

Parameters

  name | The name of the class to define
  tag | The text to output when this tag is rendered

Definition at line 48 of file HTMLClasses.h.