// HTML_Element.h: interface for the HTML_Element class.
//
//////////////////////////////////////////////////////////////////////
#if !defined(AFX_HTML_ELEMENT_H__9704C929_7525_11D4_A35F_D87480A31908__INCLUDED_)
#define AFX_HTML_ELEMENT_H__9704C929_7525_11D4_A35F_D87480A31908__INCLUDED_
#if _MSC_VER >= 1000
#pragma once
#endif // _MSC_VER >= 1000
#include "HTML_Object.h"
class HTML_Tag;
class HTML_Table;
class HTML_Font;
class HTML_Form;
class HTML_Select;
class HTML_Input;
class HTML_TextArea;
class HTML_Element : public HTML_Object
{
public:
//new basic HTML elements
HTML_Select* newSelect();
HTML_Form* newForm();
HTML_Font* newFont();
HTML_Table* newTable();
HTML_Tag* newTag(char* tagname);
HTML_Input* newInput(char* x);
HTML_TextArea* newTextArea();
//shortcuts for some tags
HTML_Element* br();
HTML_Tag* italic();
HTML_Tag* bold();
//plain text
HTML_Element* overwrite(char* str);
HTML_Element* write(char* str);
HTML_Element* write(const char* str);
HTML_Element* writeRaw(char* str);
//printing
HTML_Element* printStringNested();
string& printString();
virtual HTML_Element* printOptions();
//text interface
string getText();
virtual HTML_Element* setText(char* str);
HTML_Element* setRawText(char* str);
//object nesting
virtual HTML_Element* insert(HTML_Element* obj);
//objects sweeping
HTML_Element* clearList();
//constructor
HTML_Element();
//destructor
virtual ~HTML_Element();
protected:
HTML_ObjectList objects;
string buffer;
string text;
private:
};
#include "HTML_Tag.h"
#endif // !defined(AFX_HTML_ELEMENT_H__9704C929_7525_11D4_A35F_D87480A31908__INCLUDED_)