00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018 #ifndef _PARSE_HANDLER_H_
00019 #define _PARSE_HANDLER_H_
00020 #include "document.h"
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036
00037
00038
00039
00040
00041
00042
00043
00044
00045
00046
00047
00048
00049 class ParseHandler {
00050 public:
00051 virtual ~ParseHandler() {}
00052
00053
00054 virtual void NewDocument(const Document* doc) {}
00055 virtual void EndDocument(const Document* doc) {}
00056
00057
00058
00059 virtual void Flush() {}
00060
00061
00062
00063
00064 virtual void AddHeader(const char* key, int keylen,
00065 const char* value, int valuelen) {}
00066
00067
00068 virtual void AddResponseCode(int response_code) {}
00069
00070 virtual void AddTerm(const char* term, int termlen, int face, int size) { }
00071
00072 virtual void AddPunctuation(const char * text, int leng,
00073 int face, int size) { }
00074
00075
00076
00077
00078
00079 virtual void AddBaseURL(const char* baseurl, int baseurllen) {}
00080 virtual void AddAnchor(const char* href, int hreflen) {}
00081 virtual void AddLocalName(const char * name, int namelen) {}
00082 virtual void AnchorDone() {}
00083
00084 virtual void ChangeFontColor(const char * color, int colorlen) {}
00085 virtual void ChangeFontColorEnd() {}
00086 virtual void ChangeBGColor(const char * color, int colorlen) {}
00087 virtual void ChangeBGColorEnd() {}
00088
00089
00090 virtual void AddImage(const char* tag, int taglen) {}
00091
00092 virtual void AddImageHeight(const char* src, int srclen) {}
00093 virtual void AddImageWidth(const char* src, int srclen) {}
00094
00095
00096 virtual void AddApplet(const char* src, int srclen) {}
00097 virtual void AddAppletDone() {}
00098 virtual void AddIFrame(const char* src, int srclen) {}
00099 virtual void AddIFrameDone() {}
00100
00101
00102
00103
00104 virtual void AddFrame(const char* src, int srclen) {
00105 AddAnchor(src, srclen); AnchorDone();
00106 }
00107 virtual void AddArea(const char* href, int hreflen) {
00108 AddAnchor(href, hreflen); AnchorDone();
00109 }
00110
00111
00112
00113 virtual void AddMeta(const char* meta, int metalen) {}
00114
00115 virtual void AddFrameset(const char* fields, int fieldslen) {}
00116 virtual void AddFramesetDone() {}
00117
00118
00119 virtual void AddBody(const char* body, int bodylen) {}
00120 virtual void AddBodyDone() {}
00121
00122
00123
00124 virtual void ParagraphStart(const char* fields, int fieldlen) { }
00125 virtual void ParagraphEnd() { }
00126
00127 virtual void AddBreak() { }
00128 virtual void AddHorizontalRule() { }
00129
00130 virtual void AddListItem() { }
00131 virtual void AddUnorderedList() { }
00132 virtual void AddOrderedList() { }
00133 virtual void AddListDone() { }
00134
00135 virtual void AddDiv(const char * fields, int fieldlen) { }
00136 virtual void AddDivDone(const char * fields, int fieldlen) { }
00137 virtual void AddSpan(const char * fields, int fieldlen) { }
00138 virtual void AddSpanDone(const char * fields, int fieldlen) { }
00139
00140 virtual void AddTable() { }
00141 virtual void AddTableDone() { }
00142 virtual void AddCaption() { }
00143 virtual void AddCaptionDone() { }
00144 virtual void AddTableHCell(const char* fields, int fieldlen) { }
00145 virtual void AddTableDCell(const char* fields, int fieldlen) { }
00146 virtual void AddTableCellDone() { }
00147 virtual void AddTableRow() { }
00148 virtual void AddTableRowDone() { }
00149
00150 virtual void AddForm(const char * fields, int fieldlen) { }
00151 virtual void AddFormDone() { }
00152 virtual void AddSelect(const char * fields, int fieldlen) { }
00153 virtual void AddSelectDone() { }
00154 virtual void AddOption(const char * fields, int fieldlen) { }
00155 virtual void AddOptionDone() { }
00156 virtual void AddTextArea(const char * fields, int fieldlen) { }
00157 virtual void AddTextAreaDone() { }
00158 virtual void AddInput(const char * fields, int fieldlen) { }
00159
00160 virtual void AddHeading(int hnum) { }
00161 virtual void AddHeadingDone() { }
00162
00163 virtual void AddNoframes() { }
00164 virtual void AddNoframesDone() { }
00165
00166 virtual void WhitespaceEndedTerm() { }
00167
00168 virtual void AddObject(const char * fields, int fieldlen) { }
00169 virtual void AddObjectDone() { }
00170 virtual void AddParam(const char * fields, int fieldlen) { }
00171 virtual void AddEmbed(const char * fields, int fieldlen) { }
00172
00173 virtual void AddHead(const char * fields, int fieldlen) { }
00174 virtual void AddHeadDone() { }
00175 };
00176
00177 #endif