diff --git a/.gitignore b/.gitignore index 8ef0016..e69f6db 100644 --- a/.gitignore +++ b/.gitignore @@ -10,6 +10,7 @@ /htmldoc/tidy-config.xml /htmldoc/tidy-help.xml /htmldoc/tidy.1 +/htmldoc/quickref.html /lib/ *.user *.suo diff --git a/Makefile b/Makefile index b48bf13..93b4365 100644 --- a/Makefile +++ b/Makefile @@ -1,8 +1,11 @@ HTML2MARKDOWN=html2text GIT=git GITFLAGS= +DOXYGEN=doxygen +DOXYGENFLAGS= -all: README.md src/version.h bin/tidy +.PHONEY: api-docs src/version.h +all: README.md src/version.h bin/tidy quickref.html api-docs bin/tidy: $(MAKE) -C build/gmake @@ -14,10 +17,17 @@ README.md: README.html src/version.h: $(GIT) $(GITFLAGS) log --pretty=format:'static const char TY_(release_date)[] = "https://github.com/w3c/tidy-html5/tree/%h";' -n 1 > $@ +quickref.html: htmldoc/quickref.html + cp $< $@ + +api-docs: + $(DOXYGEN) $(DOXYGENFLAGS) htmldoc/doxygen.cfg + install: sudo $(MAKE) install -C build/gmake clean: $(MAKE) clean -C build/gmake $(RM) README.md - $(RM) src/version.h + $(RM) test/testall.log + $(RM) -r test/tmp diff --git a/htmldoc/api/annotated.html b/htmldoc/api/annotated.html new file mode 100644 index 0000000..71f0736 --- /dev/null +++ b/htmldoc/api/annotated.html @@ -0,0 +1,89 @@ + + + + +HTML Tidy: Data Structures + + + + + + + + + + + + +
+ + +
+ + + + + + + + + + + + + +
+
HTML Tidy +  0.1 +
+ +
+
+ + +
+
+ +
+
+
+ +
+
+
+
Data Structures
+
+
+
Here are the data structures with brief descriptions:
+ + + + + + + + + +
_TidyAllocator
_TidyAllocatorVtbl
_TidyBuffer
_TidyInputSource
_TidyOutputSink
TidyAttr
TidyDoc
TidyNode
TidyOption
+
+
+ + + + + diff --git a/htmldoc/api/bc_s.png b/htmldoc/api/bc_s.png new file mode 100644 index 0000000..e401862 Binary files /dev/null and b/htmldoc/api/bc_s.png differ diff --git a/htmldoc/api/buffio_8h.html b/htmldoc/api/buffio_8h.html new file mode 100644 index 0000000..29bbc1f --- /dev/null +++ b/htmldoc/api/buffio_8h.html @@ -0,0 +1,549 @@ + + + + +HTML Tidy: buffio.h File Reference + + + + + + + + + + + + +
+ + +
+ + + + + + + + + + + + + +
+
HTML Tidy +  0.1 +
+ +
+
+ + +
+
+ +
+
+
+ +
+
+ +
+
buffio.h File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + + + + + + + + + + + + + + +

+Data Structures

struct  _TidyBuffer

+Functions

void TIDY_CALL tidyBufInit (TidyBuffer *buf)
void TIDY_CALL tidyBufInitWithAllocator (TidyBuffer *buf, TidyAllocator *allocator)
void TIDY_CALL tidyBufAlloc (TidyBuffer *buf, uint allocSize)
void TIDY_CALL tidyBufAllocWithAllocator (TidyBuffer *buf, TidyAllocator *allocator, uint allocSize)
void TIDY_CALL tidyBufCheckAlloc (TidyBuffer *buf, uint allocSize, uint chunkSize)
void TIDY_CALL tidyBufFree (TidyBuffer *buf)
void TIDY_CALL tidyBufClear (TidyBuffer *buf)
void TIDY_CALL tidyBufAttach (TidyBuffer *buf, byte *bp, uint size)
void TIDY_CALL tidyBufDetach (TidyBuffer *buf)
void TIDY_CALL tidyBufAppend (TidyBuffer *buf, void *vp, uint size)
void TIDY_CALL tidyBufPutByte (TidyBuffer *buf, byte bv)
int TIDY_CALL tidyBufPopByte (TidyBuffer *buf)
int TIDY_CALL tidyBufGetByte (TidyBuffer *buf)
Bool TIDY_CALL tidyBufEndOfInput (TidyBuffer *buf)
void TIDY_CALL tidyBufUngetByte (TidyBuffer *buf, byte bv)
void TIDY_CALL tidyInitInputBuffer (TidyInputSource *inp, TidyBuffer *buf)
void TIDY_CALL tidyInitOutputBuffer (TidyOutputSink *outp, TidyBuffer *buf)
+

Detailed Description

+
    +
  • Treat buffer as an I/O stream.
  • +
+

(c) 1998-2007 (W3C) MIT, ERCIM, Keio University See tidy.h for the copyright notice.

+

CVS Info :

+
Author:
arnaud02
+
Date:
2007/01/23 11:17:45
+
Revision:
1.9
+

Requires buffer to automatically grow as bytes are added. Must keep track of current read and write points.

+

Function Documentation

+ +
+
+ + + + + + + + +
void TIDY_CALL tidyBufInit (TidyBufferbuf)
+
+
+

Initialize data structure using the default allocator

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void TIDY_CALL tidyBufInitWithAllocator (TidyBufferbuf,
TidyAllocatorallocator 
)
+
+
+

Initialize data structure using the given custom allocator

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void TIDY_CALL tidyBufAlloc (TidyBufferbuf,
uint allocSize 
)
+
+
+

Free current buffer, allocate given amount, reset input pointer, use the default allocator

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void TIDY_CALL tidyBufAllocWithAllocator (TidyBufferbuf,
TidyAllocatorallocator,
uint allocSize 
)
+
+
+

Free current buffer, allocate given amount, reset input pointer, use the given custom allocator

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void TIDY_CALL tidyBufCheckAlloc (TidyBufferbuf,
uint allocSize,
uint chunkSize 
)
+
+
+

Expand buffer to given size. Chunk size is minimum growth. Pass 0 for default of 256 bytes.

+ +
+
+ +
+
+ + + + + + + + +
void TIDY_CALL tidyBufFree (TidyBufferbuf)
+
+
+

Free current contents and zero out

+ +
+
+ +
+
+ + + + + + + + +
void TIDY_CALL tidyBufClear (TidyBufferbuf)
+
+
+

Set buffer bytes to 0

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void TIDY_CALL tidyBufAttach (TidyBufferbuf,
byte * bp,
uint size 
)
+
+
+

Attach to existing buffer

+ +
+
+ +
+
+ + + + + + + + +
void TIDY_CALL tidyBufDetach (TidyBufferbuf)
+
+
+

Detach from buffer. Caller must free.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void TIDY_CALL tidyBufAppend (TidyBufferbuf,
void * vp,
uint size 
)
+
+
+

Append bytes to buffer. Expand if necessary.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void TIDY_CALL tidyBufPutByte (TidyBufferbuf,
byte bv 
)
+
+
+

Append one byte to buffer. Expand if necessary.

+ +
+
+ +
+
+ + + + + + + + +
int TIDY_CALL tidyBufPopByte (TidyBufferbuf)
+
+
+

Get byte from end of buffer

+ +
+
+ +
+
+ + + + + + + + +
int TIDY_CALL tidyBufGetByte (TidyBufferbuf)
+
+
+

Get byte from front of buffer. Increment input offset.

+ +
+
+ +
+
+ + + + + + + + +
Bool TIDY_CALL tidyBufEndOfInput (TidyBufferbuf)
+
+
+

At end of buffer?

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void TIDY_CALL tidyBufUngetByte (TidyBufferbuf,
byte bv 
)
+
+
+

Put a byte back into the buffer. Decrement input offset.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void TIDY_CALL tidyInitInputBuffer (TidyInputSourceinp,
TidyBufferbuf 
)
+
+
+

Initialize a buffer input source

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void TIDY_CALL tidyInitOutputBuffer (TidyOutputSinkoutp,
TidyBufferbuf 
)
+
+
+

Initialize a buffer output sink

+ +
+
+
+
+ + + + + diff --git a/htmldoc/api/buffio_8h_source.html b/htmldoc/api/buffio_8h_source.html new file mode 100644 index 0000000..690ee73 --- /dev/null +++ b/htmldoc/api/buffio_8h_source.html @@ -0,0 +1,197 @@ + + + + +HTML Tidy: buffio.h Source File + + + + + + + + + + + + +
+ + +
+ + + + + + + + + + + + + +
+
HTML Tidy +  0.1 +
+ +
+
+ + +
+
+ +
+
+
+ +
+
+
+
buffio.h
+
+
+Go to the documentation of this file.
00001 #ifndef __TIDY_BUFFIO_H__
+00002 #define __TIDY_BUFFIO_H__
+00003 
+00004 /** @file buffio.h - Treat buffer as an I/O stream.
+00005 
+00006   (c) 1998-2007 (W3C) MIT, ERCIM, Keio University
+00007   See tidy.h for the copyright notice.
+00008 
+00009   CVS Info :
+00010 
+00011     $Author: arnaud02 $ 
+00012     $Date: 2007/01/23 11:17:45 $ 
+00013     $Revision: 1.9 $ 
+00014 
+00015   Requires buffer to automatically grow as bytes are added.
+00016   Must keep track of current read and write points.
+00017 
+00018 */
+00019 
+00020 #include "platform.h"
+00021 #include "tidy.h"
+00022 
+00023 #ifdef __cplusplus
+00024 extern "C" {
+00025 #endif
+00026 
+00027 /** TidyBuffer - A chunk of memory */
+00028 TIDY_STRUCT
+00029 struct _TidyBuffer 
+00030 {
+00031     TidyAllocator* allocator;  /**< Memory allocator */
+00032     byte* bp;           /**< Pointer to bytes */
+00033     uint  size;         /**< # bytes currently in use */
+00034     uint  allocated;    /**< # bytes allocated */ 
+00035     uint  next;         /**< Offset of current input position */
+00036 };
+00037 
+00038 /** Initialize data structure using the default allocator */
+00039 TIDY_EXPORT void TIDY_CALL tidyBufInit( TidyBuffer* buf );
+00040 
+00041 /** Initialize data structure using the given custom allocator */
+00042 TIDY_EXPORT void TIDY_CALL tidyBufInitWithAllocator( TidyBuffer* buf, TidyAllocator* allocator );
+00043 
+00044 /** Free current buffer, allocate given amount, reset input pointer,
+00045     use the default allocator */
+00046 TIDY_EXPORT void TIDY_CALL tidyBufAlloc( TidyBuffer* buf, uint allocSize );
+00047 
+00048 /** Free current buffer, allocate given amount, reset input pointer,
+00049     use the given custom allocator */
+00050 TIDY_EXPORT void TIDY_CALL tidyBufAllocWithAllocator( TidyBuffer* buf,
+00051                                                       TidyAllocator* allocator,
+00052                                                       uint allocSize );
+00053 
+00054 /** Expand buffer to given size. 
+00055 **  Chunk size is minimum growth. Pass 0 for default of 256 bytes.
+00056 */
+00057 TIDY_EXPORT void TIDY_CALL tidyBufCheckAlloc( TidyBuffer* buf,
+00058                                               uint allocSize, uint chunkSize );
+00059 
+00060 /** Free current contents and zero out */
+00061 TIDY_EXPORT void TIDY_CALL tidyBufFree( TidyBuffer* buf );
+00062 
+00063 /** Set buffer bytes to 0 */
+00064 TIDY_EXPORT void TIDY_CALL tidyBufClear( TidyBuffer* buf );
+00065 
+00066 /** Attach to existing buffer */
+00067 TIDY_EXPORT void TIDY_CALL tidyBufAttach( TidyBuffer* buf, byte* bp, uint size );
+00068 
+00069 /** Detach from buffer.  Caller must free. */
+00070 TIDY_EXPORT void TIDY_CALL tidyBufDetach( TidyBuffer* buf );
+00071 
+00072 
+00073 /** Append bytes to buffer.  Expand if necessary. */
+00074 TIDY_EXPORT void TIDY_CALL tidyBufAppend( TidyBuffer* buf, void* vp, uint size );
+00075 
+00076 /** Append one byte to buffer.  Expand if necessary. */
+00077 TIDY_EXPORT void TIDY_CALL tidyBufPutByte( TidyBuffer* buf, byte bv );
+00078 
+00079 /** Get byte from end of buffer */
+00080 TIDY_EXPORT int TIDY_CALL  tidyBufPopByte( TidyBuffer* buf );
+00081 
+00082 
+00083 /** Get byte from front of buffer.  Increment input offset. */
+00084 TIDY_EXPORT int TIDY_CALL  tidyBufGetByte( TidyBuffer* buf );
+00085 
+00086 /** At end of buffer? */
+00087 TIDY_EXPORT Bool TIDY_CALL tidyBufEndOfInput( TidyBuffer* buf );
+00088 
+00089 /** Put a byte back into the buffer.  Decrement input offset. */
+00090 TIDY_EXPORT void TIDY_CALL tidyBufUngetByte( TidyBuffer* buf, byte bv );
+00091 
+00092 
+00093 /**************
+00094    TIDY
+00095 **************/
+00096 
+00097 /* Forward declarations
+00098 */
+00099 
+00100 /** Initialize a buffer input source */
+00101 TIDY_EXPORT void TIDY_CALL tidyInitInputBuffer( TidyInputSource* inp, TidyBuffer* buf );
+00102 
+00103 /** Initialize a buffer output sink */
+00104 TIDY_EXPORT void TIDY_CALL tidyInitOutputBuffer( TidyOutputSink* outp, TidyBuffer* buf );
+00105 
+00106 #ifdef __cplusplus
+00107 }
+00108 #endif
+00109 #endif /* __TIDY_BUFFIO_H__ */
+00110 
+00111 /*
+00112  * local variables:
+00113  * mode: c
+00114  * indent-tabs-mode: nil
+00115  * c-basic-offset: 4
+00116  * eval: (c-set-offset 'substatement-open 0)
+00117  * end:
+00118  */
+
+
+ + + + + diff --git a/htmldoc/api/classes.html b/htmldoc/api/classes.html new file mode 100644 index 0000000..eb8a40c --- /dev/null +++ b/htmldoc/api/classes.html @@ -0,0 +1,88 @@ + + + + +HTML Tidy: Data Structure Index + + + + + + + + + + + + +
+ + +
+ + + + + + + + + + + + + +
+
HTML Tidy +  0.1 +
+ +
+
+ + +
+
+ +
+
+
+ +
+
+
+
Data Structure Index
+
+
+
T | _
+ + + + + +
  T  
+
TidyDoc   
  _  
+
_TidyAllocatorVtbl   _TidyOutputSink   
TidyNode   _TidyBuffer   
TidyAttr   TidyOption   _TidyAllocator   _TidyInputSource   
+
T | _
+
+
+ + + + + diff --git a/htmldoc/api/closed.png b/htmldoc/api/closed.png new file mode 100644 index 0000000..b7d4bd9 Binary files /dev/null and b/htmldoc/api/closed.png differ diff --git a/htmldoc/api/deprecated.html b/htmldoc/api/deprecated.html new file mode 100644 index 0000000..9e52e41 --- /dev/null +++ b/htmldoc/api/deprecated.html @@ -0,0 +1,92 @@ + + + + +HTML Tidy: Deprecated List + + + + + + + + + + + + +
+ + +
+ + + + + + + + + + + + + +
+
HTML Tidy +  0.1 +
+ +
+
+ + +
+
+ +
+
+
+ +
+
+
+
Deprecated List
+
+
+
+
Group AttrGetAttributeName
+

The functions tidyAttrGet{AttributeName} are deprecated and should be replaced by tidyAttrGetById. For instance, tidyAttrGetID( TidyNode tnod ) can be replaced by tidyAttrGetById( TidyNode tnod, TidyAttr_ID ). This avoids a potential name clash with tidyAttrGetId for case-insensitive languages.

+

+
+
Group AttrIsAttributeName
+

The functions tidyAttrIs{AttributeName} are deprecated and should be replaced by tidyAttrGetId.

+

+
+
Group NodeIsElementName
+

The functions tidyNodeIs{ElementName} are deprecated and should be replaced by tidyNodeGetId.

+

+
+
+
+
+ + + + + diff --git a/htmldoc/api/doxygen.css b/htmldoc/api/doxygen.css new file mode 100644 index 0000000..22c7b5c --- /dev/null +++ b/htmldoc/api/doxygen.css @@ -0,0 +1,946 @@ +/* The standard CSS for doxygen */ + +body, table, div, p, dl { + font-family: Lucida Grande, Verdana, Geneva, Arial, sans-serif; + font-size: 12px; +} + +/* @group Heading Levels */ + +h1 { + font-size: 150%; +} + +.title { + font-size: 150%; + font-weight: bold; + margin: 10px 2px; +} + +h2 { + font-size: 120%; +} + +h3 { + font-size: 100%; +} + +dt { + font-weight: bold; +} + +div.multicol { + -moz-column-gap: 1em; + -webkit-column-gap: 1em; + -moz-column-count: 3; + -webkit-column-count: 3; +} + +p.startli, p.startdd, p.starttd { + margin-top: 2px; +} + +p.endli { + margin-bottom: 0px; +} + +p.enddd { + margin-bottom: 4px; +} + +p.endtd { + margin-bottom: 2px; +} + +/* @end */ + +caption { + font-weight: bold; +} + +span.legend { + font-size: 70%; + text-align: center; +} + +h3.version { + font-size: 90%; + text-align: center; +} + +div.qindex, div.navtab{ + background-color: #EBEFF6; + border: 1px solid #A3B4D7; + text-align: center; +} + +div.qindex, div.navpath { + width: 100%; + line-height: 140%; +} + +div.navtab { + margin-right: 15px; +} + +/* @group Link Styling */ + +a { + color: #3D578C; + font-weight: normal; + text-decoration: none; +} + +.contents a:visited { + color: #4665A2; +} + +a:hover { + text-decoration: underline; +} + +a.qindex { + font-weight: bold; +} + +a.qindexHL { + font-weight: bold; + background-color: #9CAFD4; + color: #ffffff; + border: 1px double #869DCA; +} + +.contents a.qindexHL:visited { + color: #ffffff; +} + +a.el { + font-weight: bold; +} + +a.elRef { +} + +a.code { + color: #4665A2; +} + +a.codeRef { + color: #4665A2; +} + +/* @end */ + +dl.el { + margin-left: -1cm; +} + +.fragment { + font-family: monospace, fixed; + font-size: 105%; +} + +pre.fragment { + border: 1px solid #C4CFE5; + background-color: #FBFCFD; + padding: 4px 6px; + margin: 4px 8px 4px 2px; + overflow: auto; + word-wrap: break-word; + font-size: 9pt; + line-height: 125%; +} + +div.ah { + background-color: black; + font-weight: bold; + color: #ffffff; + margin-bottom: 3px; + margin-top: 3px; + padding: 0.2em; + border: solid thin #333; + border-radius: 0.5em; + -webkit-border-radius: .5em; + -moz-border-radius: .5em; + box-shadow: 2px 2px 3px #999; + -webkit-box-shadow: 2px 2px 3px #999; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#eee), to(#000),color-stop(0.3, #444)); + background-image: -moz-linear-gradient(center top, #eee 0%, #444 40%, #000); +} + +div.groupHeader { + margin-left: 16px; + margin-top: 12px; + font-weight: bold; +} + +div.groupText { + margin-left: 16px; + font-style: italic; +} + +body { + background-color: white; + color: black; + margin: 0; +} + +div.contents { + margin-top: 10px; + margin-left: 8px; + margin-right: 8px; +} + +td.indexkey { + background-color: #EBEFF6; + font-weight: bold; + border: 1px solid #C4CFE5; + margin: 2px 0px 2px 0; + padding: 2px 10px; +} + +td.indexvalue { + background-color: #EBEFF6; + border: 1px solid #C4CFE5; + padding: 2px 10px; + margin: 2px 0px; +} + +tr.memlist { + background-color: #EEF1F7; +} + +p.formulaDsp { + text-align: center; +} + +img.formulaDsp { + +} + +img.formulaInl { + vertical-align: middle; +} + +div.center { + text-align: center; + margin-top: 0px; + margin-bottom: 0px; + padding: 0px; +} + +div.center img { + border: 0px; +} + +address.footer { + text-align: right; + padding-right: 12px; +} + +img.footer { + border: 0px; + vertical-align: middle; +} + +/* @group Code Colorization */ + +span.keyword { + color: #008000 +} + +span.keywordtype { + color: #604020 +} + +span.keywordflow { + color: #e08000 +} + +span.comment { + color: #800000 +} + +span.preprocessor { + color: #806020 +} + +span.stringliteral { + color: #002080 +} + +span.charliteral { + color: #008080 +} + +span.vhdldigit { + color: #ff00ff +} + +span.vhdlchar { + color: #000000 +} + +span.vhdlkeyword { + color: #700070 +} + +span.vhdllogic { + color: #ff0000 +} + +/* @end */ + +/* +.search { + color: #003399; + font-weight: bold; +} + +form.search { + margin-bottom: 0px; + margin-top: 0px; +} + +input.search { + font-size: 75%; + color: #000080; + font-weight: normal; + background-color: #e8eef2; +} +*/ + +td.tiny { + font-size: 75%; +} + +.dirtab { + padding: 4px; + border-collapse: collapse; + border: 1px solid #A3B4D7; +} + +th.dirtab { + background: #EBEFF6; + font-weight: bold; +} + +hr { + height: 0px; + border: none; + border-top: 1px solid #4A6AAA; +} + +hr.footer { + height: 1px; +} + +/* @group Member Descriptions */ + +table.memberdecls { + border-spacing: 0px; + padding: 0px; +} + +.mdescLeft, .mdescRight, +.memItemLeft, .memItemRight, +.memTemplItemLeft, .memTemplItemRight, .memTemplParams { + background-color: #F9FAFC; + border: none; + margin: 4px; + padding: 1px 0 0 8px; +} + +.mdescLeft, .mdescRight { + padding: 0px 8px 4px 8px; + color: #555; +} + +.memItemLeft, .memItemRight, .memTemplParams { + border-top: 1px solid #C4CFE5; +} + +.memItemLeft, .memTemplItemLeft { + white-space: nowrap; +} + +.memItemRight { + width: 100%; +} + +.memTemplParams { + color: #4665A2; + white-space: nowrap; +} + +/* @end */ + +/* @group Member Details */ + +/* Styles for detailed member documentation */ + +.memtemplate { + font-size: 80%; + color: #4665A2; + font-weight: normal; + margin-left: 9px; +} + +.memnav { + background-color: #EBEFF6; + border: 1px solid #A3B4D7; + text-align: center; + margin: 2px; + margin-right: 15px; + padding: 2px; +} + +.mempage { + width: 100%; +} + +.memitem { + padding: 0; + margin-bottom: 10px; + margin-right: 5px; +} + +.memname { + white-space: nowrap; + font-weight: bold; + margin-left: 6px; +} + +.memproto, dl.reflist dt { + border-top: 1px solid #A8B8D9; + border-left: 1px solid #A8B8D9; + border-right: 1px solid #A8B8D9; + padding: 6px 0px 6px 0px; + color: #253555; + font-weight: bold; + text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); + /* opera specific markup */ + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + border-top-right-radius: 8px; + border-top-left-radius: 8px; + /* firefox specific markup */ + -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px; + -moz-border-radius-topright: 8px; + -moz-border-radius-topleft: 8px; + /* webkit specific markup */ + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + -webkit-border-top-right-radius: 8px; + -webkit-border-top-left-radius: 8px; + background-image:url('nav_f.png'); + background-repeat:repeat-x; + background-color: #E2E8F2; + +} + +.memdoc, dl.reflist dd { + border-bottom: 1px solid #A8B8D9; + border-left: 1px solid #A8B8D9; + border-right: 1px solid #A8B8D9; + padding: 2px 5px; + background-color: #FBFCFD; + border-top-width: 0; + /* opera specific markup */ + border-bottom-left-radius: 8px; + border-bottom-right-radius: 8px; + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + /* firefox specific markup */ + -moz-border-radius-bottomleft: 8px; + -moz-border-radius-bottomright: 8px; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px; + background-image: -moz-linear-gradient(center top, #FFFFFF 0%, #FFFFFF 60%, #F7F8FB 95%, #EEF1F7); + /* webkit specific markup */ + -webkit-border-bottom-left-radius: 8px; + -webkit-border-bottom-right-radius: 8px; + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + background-image: -webkit-gradient(linear,center top,center bottom,from(#FFFFFF), color-stop(0.6,#FFFFFF), color-stop(0.60,#FFFFFF), color-stop(0.95,#F7F8FB), to(#EEF1F7)); +} + +dl.reflist dt { + padding: 5px; +} + +dl.reflist dd { + margin: 0px 0px 10px 0px; + padding: 5px; +} + +.paramkey { + text-align: right; +} + +.paramtype { + white-space: nowrap; +} + +.paramname { + color: #602020; + white-space: nowrap; +} +.paramname em { + font-style: normal; +} + +.params, .retval, .exception, .tparams { + border-spacing: 6px 2px; +} + +.params .paramname, .retval .paramname { + font-weight: bold; + vertical-align: top; +} + +.params .paramtype { + font-style: italic; + vertical-align: top; +} + +.params .paramdir { + font-family: "courier new",courier,monospace; + vertical-align: top; +} + + + + +/* @end */ + +/* @group Directory (tree) */ + +/* for the tree view */ + +.ftvtree { + font-family: sans-serif; + margin: 0px; +} + +/* these are for tree view when used as main index */ + +.directory { + font-size: 9pt; + font-weight: bold; + margin: 5px; +} + +.directory h3 { + margin: 0px; + margin-top: 1em; + font-size: 11pt; +} + +/* +The following two styles can be used to replace the root node title +with an image of your choice. Simply uncomment the next two styles, +specify the name of your image and be sure to set 'height' to the +proper pixel height of your image. +*/ + +/* +.directory h3.swap { + height: 61px; + background-repeat: no-repeat; + background-image: url("yourimage.gif"); +} +.directory h3.swap span { + display: none; +} +*/ + +.directory > h3 { + margin-top: 0; +} + +.directory p { + margin: 0px; + white-space: nowrap; +} + +.directory div { + display: none; + margin: 0px; +} + +.directory img { + vertical-align: -30%; +} + +/* these are for tree view when not used as main index */ + +.directory-alt { + font-size: 100%; + font-weight: bold; +} + +.directory-alt h3 { + margin: 0px; + margin-top: 1em; + font-size: 11pt; +} + +.directory-alt > h3 { + margin-top: 0; +} + +.directory-alt p { + margin: 0px; + white-space: nowrap; +} + +.directory-alt div { + display: none; + margin: 0px; +} + +.directory-alt img { + vertical-align: -30%; +} + +/* @end */ + +div.dynheader { + margin-top: 8px; +} + +address { + font-style: normal; + color: #2A3D61; +} + +table.doxtable { + border-collapse:collapse; +} + +table.doxtable td, table.doxtable th { + border: 1px solid #2D4068; + padding: 3px 7px 2px; +} + +table.doxtable th { + background-color: #374F7F; + color: #FFFFFF; + font-size: 110%; + padding-bottom: 4px; + padding-top: 5px; + text-align:left; +} + +table.fieldtable { + width: 100%; + margin-bottom: 10px; + border: 1px solid #A8B8D9; + border-spacing: 0px; + -moz-border-radius: 4px; + -webkit-border-radius: 4px; + border-radius: 4px; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px; + -webkit-box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15); + box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15); +} + +.fieldtable td, .fieldtable th { + padding: 3px 7px 2px; +} + +.fieldtable td.fieldtype, .fieldtable td.fieldname { + white-space: nowrap; + border-right: 1px solid #A8B8D9; + border-bottom: 1px solid #A8B8D9; + vertical-align: top; +} + +.fieldtable td.fielddoc { + border-bottom: 1px solid #A8B8D9; + width: 100%; +} + +.fieldtable tr:last-child td { + border-bottom: none; +} + +.fieldtable th { + background-image:url('nav_f.png'); + background-repeat:repeat-x; + background-color: #E2E8F2; + font-size: 90%; + color: #253555; + padding-bottom: 4px; + padding-top: 5px; + text-align:left; + -moz-border-radius-topleft: 4px; + -moz-border-radius-topright: 4px; + -webkit-border-top-left-radius: 4px; + -webkit-border-top-right-radius: 4px; + border-top-left-radius: 4px; + border-top-right-radius: 4px; + border-bottom: 1px solid #A8B8D9; +} + + +.tabsearch { + top: 0px; + left: 10px; + height: 36px; + background-image: url('tab_b.png'); + z-index: 101; + overflow: hidden; + font-size: 13px; +} + +.navpath ul +{ + font-size: 11px; + background-image:url('tab_b.png'); + background-repeat:repeat-x; + height:30px; + line-height:30px; + color:#8AA0CC; + border:solid 1px #C2CDE4; + overflow:hidden; + margin:0px; + padding:0px; +} + +.navpath li +{ + list-style-type:none; + float:left; + padding-left:10px; + padding-right:15px; + background-image:url('bc_s.png'); + background-repeat:no-repeat; + background-position:right; + color:#364D7C; +} + +.navpath li.navelem a +{ + height:32px; + display:block; + text-decoration: none; + outline: none; +} + +.navpath li.navelem a:hover +{ + color:#6884BD; +} + +.navpath li.footer +{ + list-style-type:none; + float:right; + padding-left:10px; + padding-right:15px; + background-image:none; + background-repeat:no-repeat; + background-position:right; + color:#364D7C; + font-size: 8pt; +} + + +div.summary +{ + float: right; + font-size: 8pt; + padding-right: 5px; + width: 50%; + text-align: right; +} + +div.summary a +{ + white-space: nowrap; +} + +div.ingroups +{ + margin-left: 5px; + font-size: 8pt; + padding-left: 5px; + width: 50%; + text-align: left; +} + +div.ingroups a +{ + white-space: nowrap; +} + +div.header +{ + background-image:url('nav_h.png'); + background-repeat:repeat-x; + background-color: #F9FAFC; + margin: 0px; + border-bottom: 1px solid #C4CFE5; +} + +div.headertitle +{ + padding: 5px 5px 5px 7px; +} + +dl +{ + padding: 0 0 0 10px; +} + +dl.note, dl.warning, dl.attention, dl.pre, dl.post, dl.invariant, dl.deprecated, dl.todo, dl.test, dl.bug +{ + border-left:4px solid; + padding: 0 0 0 6px; +} + +dl.note +{ + border-color: #D0C000; +} + +dl.warning, dl.attention +{ + border-color: #FF0000; +} + +dl.pre, dl.post, dl.invariant +{ + border-color: #00D000; +} + +dl.deprecated +{ + border-color: #505050; +} + +dl.todo +{ + border-color: #00C0E0; +} + +dl.test +{ + border-color: #3030E0; +} + +dl.bug +{ + border-color: #C08050; +} + +#projectlogo +{ + text-align: center; + vertical-align: bottom; + border-collapse: separate; +} + +#projectlogo img +{ + border: 0px none; +} + +#projectname +{ + font: 300% Tahoma, Arial,sans-serif; + margin: 0px; + padding: 2px 0px; +} + +#projectbrief +{ + font: 120% Tahoma, Arial,sans-serif; + margin: 0px; + padding: 0px; +} + +#projectnumber +{ + font: 50% Tahoma, Arial,sans-serif; + margin: 0px; + padding: 0px; +} + +#titlearea +{ + padding: 0px; + margin: 0px; + width: 100%; + border-bottom: 1px solid #5373B4; +} + +.image +{ + text-align: center; +} + +.dotgraph +{ + text-align: center; +} + +.mscgraph +{ + text-align: center; +} + +.caption +{ + font-weight: bold; +} + +div.zoom +{ + border: 1px solid #90A5CE; +} + +dl.citelist { + margin-bottom:50px; +} + +dl.citelist dt { + color:#334975; + float:left; + font-weight:bold; + margin-right:10px; + padding:5px; +} + +dl.citelist dd { + margin:2px 0; + padding:5px 0; +} + +@media print +{ + #top { display: none; } + #side-nav { display: none; } + #nav-path { display: none; } + body { overflow:visible; } + h1, h2, h3, h4, h5, h6 { page-break-after: avoid; } + .summary { display: none; } + .memitem { page-break-inside: avoid; } + #doc-content + { + margin-left:0 !important; + height:auto !important; + width:auto !important; + overflow:inherit; + display:inline; + } + pre.fragment + { + overflow: visible; + text-wrap: unrestricted; + white-space: -moz-pre-wrap; /* Moz */ + white-space: -pre-wrap; /* Opera 4-6 */ + white-space: -o-pre-wrap; /* Opera 7 */ + white-space: pre-wrap; /* CSS3 */ + word-wrap: break-word; /* IE 5.5+ */ + } +} + diff --git a/htmldoc/api/doxygen.png b/htmldoc/api/doxygen.png new file mode 100644 index 0000000..635ed52 Binary files /dev/null and b/htmldoc/api/doxygen.png differ diff --git a/htmldoc/api/files.html b/htmldoc/api/files.html new file mode 100644 index 0000000..e2a82d5 --- /dev/null +++ b/htmldoc/api/files.html @@ -0,0 +1,84 @@ + + + + +HTML Tidy: File List + + + + + + + + + + + + +
+ + +
+ + + + + + + + + + + + + +
+
HTML Tidy +  0.1 +
+ +
+
+ + +
+
+ +
+
+
+ +
+
+
+
File List
+
+
+
Here is a list of all documented files with brief descriptions:
+ + + + +
buffio.h [code]
platform.h [code]
tidy.h [code]
tidyenum.h [code]
+
+
+ + + + + diff --git a/htmldoc/api/ftv2blank.png b/htmldoc/api/ftv2blank.png new file mode 100644 index 0000000..3b7a29c Binary files /dev/null and b/htmldoc/api/ftv2blank.png differ diff --git a/htmldoc/api/ftv2doc.png b/htmldoc/api/ftv2doc.png new file mode 100644 index 0000000..310e441 Binary files /dev/null and b/htmldoc/api/ftv2doc.png differ diff --git a/htmldoc/api/ftv2folderclosed.png b/htmldoc/api/ftv2folderclosed.png new file mode 100644 index 0000000..79aeaf7 Binary files /dev/null and b/htmldoc/api/ftv2folderclosed.png differ diff --git a/htmldoc/api/ftv2folderopen.png b/htmldoc/api/ftv2folderopen.png new file mode 100644 index 0000000..1b703dd Binary files /dev/null and b/htmldoc/api/ftv2folderopen.png differ diff --git a/htmldoc/api/ftv2lastnode.png b/htmldoc/api/ftv2lastnode.png new file mode 100644 index 0000000..3b7a29c Binary files /dev/null and b/htmldoc/api/ftv2lastnode.png differ diff --git a/htmldoc/api/ftv2link.png b/htmldoc/api/ftv2link.png new file mode 100644 index 0000000..310e441 Binary files /dev/null and b/htmldoc/api/ftv2link.png differ diff --git a/htmldoc/api/ftv2mlastnode.png b/htmldoc/api/ftv2mlastnode.png new file mode 100644 index 0000000..ec51f17 Binary files /dev/null and b/htmldoc/api/ftv2mlastnode.png differ diff --git a/htmldoc/api/ftv2mnode.png b/htmldoc/api/ftv2mnode.png new file mode 100644 index 0000000..ec51f17 Binary files /dev/null and b/htmldoc/api/ftv2mnode.png differ diff --git a/htmldoc/api/ftv2node.png b/htmldoc/api/ftv2node.png new file mode 100644 index 0000000..3b7a29c Binary files /dev/null and b/htmldoc/api/ftv2node.png differ diff --git a/htmldoc/api/ftv2plastnode.png b/htmldoc/api/ftv2plastnode.png new file mode 100644 index 0000000..270a965 Binary files /dev/null and b/htmldoc/api/ftv2plastnode.png differ diff --git a/htmldoc/api/ftv2pnode.png b/htmldoc/api/ftv2pnode.png new file mode 100644 index 0000000..270a965 Binary files /dev/null and b/htmldoc/api/ftv2pnode.png differ diff --git a/htmldoc/api/ftv2splitbar.png b/htmldoc/api/ftv2splitbar.png new file mode 100644 index 0000000..f60a527 Binary files /dev/null and b/htmldoc/api/ftv2splitbar.png differ diff --git a/htmldoc/api/ftv2vertline.png b/htmldoc/api/ftv2vertline.png new file mode 100644 index 0000000..3b7a29c Binary files /dev/null and b/htmldoc/api/ftv2vertline.png differ diff --git a/htmldoc/api/functions.html b/htmldoc/api/functions.html new file mode 100644 index 0000000..f804181 --- /dev/null +++ b/htmldoc/api/functions.html @@ -0,0 +1,125 @@ + + + + +HTML Tidy: Data Fields + + + + + + + + + + + + +
+ + +
+ + + + + + + + + + + + + +
+
HTML Tidy +  0.1 +
+ +
+
+ + + +
+
+ +
+
+
+ +
+
+
Here is a list of all documented struct and union fields with links to the struct/union documentation for each field:
+
+
+ + + + + diff --git a/htmldoc/api/functions_func.html b/htmldoc/api/functions_func.html new file mode 100644 index 0000000..ae3220a --- /dev/null +++ b/htmldoc/api/functions_func.html @@ -0,0 +1,92 @@ + + + + +HTML Tidy: Data Fields - Functions + + + + + + + + + + + + +
+ + +
+ + + + + + + + + + + + + +
+
HTML Tidy +  0.1 +
+ +
+
+ + + +
+
+ +
+
+
+ +
+
+
+
+ + + + + diff --git a/htmldoc/api/functions_vars.html b/htmldoc/api/functions_vars.html new file mode 100644 index 0000000..d103435 --- /dev/null +++ b/htmldoc/api/functions_vars.html @@ -0,0 +1,116 @@ + + + + +HTML Tidy: Data Fields - Variables + + + + + + + + + + + + +
+ + +
+ + + + + + + + + + + + + +
+
HTML Tidy +  0.1 +
+ +
+
+ + + +
+
+ +
+
+
+ +
+
+
+
+ + + + + diff --git a/htmldoc/api/globals.html b/htmldoc/api/globals.html new file mode 100644 index 0000000..f970703 --- /dev/null +++ b/htmldoc/api/globals.html @@ -0,0 +1,438 @@ + + + + +HTML Tidy: Globals + + + + + + + + + + + + +
+ + +
+ + + + + + + + + + + + + +
+
HTML Tidy +  0.1 +
+ +
+
+ + + + +
+
+ +
+
+
+ +
+
+
Here is a list of all documented functions, variables, defines, enums, and typedefs with links to the documentation:
+ +

- e -

+ + +

- t -

+
+
+ + + + + diff --git a/htmldoc/api/globals_defs.html b/htmldoc/api/globals_defs.html new file mode 100644 index 0000000..06268b0 --- /dev/null +++ b/htmldoc/api/globals_defs.html @@ -0,0 +1,87 @@ + + + + +HTML Tidy: Globals + + + + + + + + + + + + +
+ + +
+ + + + + + + + + + + + + +
+
HTML Tidy +  0.1 +
+ +
+
+ + + +
+
+ +
+
+
+ +
+
+
+
+ + + + + diff --git a/htmldoc/api/globals_func.html b/htmldoc/api/globals_func.html new file mode 100644 index 0000000..2529eab --- /dev/null +++ b/htmldoc/api/globals_func.html @@ -0,0 +1,388 @@ + + + + +HTML Tidy: Globals + + + + + + + + + + + + +
+ + +
+ + + + + + + + + + + + + +
+
HTML Tidy +  0.1 +
+ +
+
+ + + + +
+
+ +
+
+
+ +
+
+  + +

- t -

+
+
+ + + + + diff --git a/htmldoc/api/globals_type.html b/htmldoc/api/globals_type.html new file mode 100644 index 0000000..f77b31d --- /dev/null +++ b/htmldoc/api/globals_type.html @@ -0,0 +1,126 @@ + + + + +HTML Tidy: Globals + + + + + + + + + + + + +
+ + +
+ + + + + + + + + + + + + +
+
HTML Tidy +  0.1 +
+ +
+
+ + + +
+
+ +
+
+
+ +
+
+
+
+ + + + + diff --git a/htmldoc/api/group__AttrGet.html b/htmldoc/api/group__AttrGet.html new file mode 100644 index 0000000..36347fb --- /dev/null +++ b/htmldoc/api/group__AttrGet.html @@ -0,0 +1,92 @@ + + + + +HTML Tidy: Attribute Retrieval + + + + + + + + + + + + +
+ + +
+ + + + + + + + + + + + + +
+
HTML Tidy +  0.1 +
+ +
+
+ + +
+
+ +
+
+
+ +
+
+ +
+
Attribute Retrieval
+
+
+ + + + + +

+Modules

 Deprecated attribute retrieval per AttrId

+Functions

+TidyAttr TIDY_CALL tidyAttrGetById (TidyNode tnod, TidyAttrId attId)
+

Detailed Description

+

Lookup an attribute from a given node

+
+
+ + + + + diff --git a/htmldoc/api/group__AttrGetAttributeName.html b/htmldoc/api/group__AttrGetAttributeName.html new file mode 100644 index 0000000..80a030d --- /dev/null +++ b/htmldoc/api/group__AttrGetAttributeName.html @@ -0,0 +1,176 @@ + + + + +HTML Tidy: Deprecated attribute retrieval per AttrId + + + + + + + + + + + + +
+ + +
+ + + + + + + + + + + + + +
+
HTML Tidy +  0.1 +
+ +
+
+ + +
+
+ +
+
+
+ +
+
+ +
+
Deprecated attribute retrieval per AttrId
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

+TidyAttr TIDY_CALL tidyAttrGetHREF (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetSRC (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetID (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetNAME (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetSUMMARY (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetALT (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetLONGDESC (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetUSEMAP (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetISMAP (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetLANGUAGE (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetTYPE (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetVALUE (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetCONTENT (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetTITLE (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetXMLNS (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetDATAFLD (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetWIDTH (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetHEIGHT (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetFOR (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetSELECTED (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetCHECKED (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetLANG (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetTARGET (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetHTTP_EQUIV (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetREL (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetOnMOUSEMOVE (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetOnMOUSEDOWN (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetOnMOUSEUP (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetOnCLICK (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetOnMOUSEOVER (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetOnMOUSEOUT (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetOnKEYDOWN (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetOnKEYUP (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetOnKEYPRESS (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetOnFOCUS (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetOnBLUR (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetBGCOLOR (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetLINK (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetALINK (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetVLINK (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetTEXT (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetSTYLE (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetABBR (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetCOLSPAN (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetROWSPAN (TidyNode tnod)
+

Detailed Description

+
Deprecated:
The functions tidyAttrGet{AttributeName} are deprecated and should be replaced by tidyAttrGetById. For instance, tidyAttrGetID( TidyNode tnod ) can be replaced by tidyAttrGetById( TidyNode tnod, TidyAttr_ID ). This avoids a potential name clash with tidyAttrGetId for case-insensitive languages.
+
+
+ + + + + diff --git a/htmldoc/api/group__AttrIsAttributeName.html b/htmldoc/api/group__AttrIsAttributeName.html new file mode 100644 index 0000000..01c5f34 --- /dev/null +++ b/htmldoc/api/group__AttrIsAttributeName.html @@ -0,0 +1,176 @@ + + + + +HTML Tidy: Deprecated attribute interrogation per AttrId + + + + + + + + + + + + +
+ + +
+ + + + + + + + + + + + + +
+
HTML Tidy +  0.1 +
+ +
+
+ + +
+
+ +
+
+
+ +
+
+ +
+
Deprecated attribute interrogation per AttrId
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

+Bool TIDY_CALL tidyAttrIsHREF (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsSRC (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsID (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsNAME (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsSUMMARY (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsALT (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsLONGDESC (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsUSEMAP (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsISMAP (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsLANGUAGE (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsTYPE (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsVALUE (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsCONTENT (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsTITLE (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsXMLNS (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsDATAFLD (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsWIDTH (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsHEIGHT (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsFOR (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsSELECTED (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsCHECKED (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsLANG (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsTARGET (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsHTTP_EQUIV (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsREL (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsOnMOUSEMOVE (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsOnMOUSEDOWN (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsOnMOUSEUP (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsOnCLICK (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsOnMOUSEOVER (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsOnMOUSEOUT (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsOnKEYDOWN (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsOnKEYUP (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsOnKEYPRESS (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsOnFOCUS (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsOnBLUR (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsBGCOLOR (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsLINK (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsALINK (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsVLINK (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsTEXT (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsSTYLE (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsABBR (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsCOLSPAN (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsROWSPAN (TidyAttr tattr)
+

Detailed Description

+
Deprecated:
The functions tidyAttrIs{AttributeName} are deprecated and should be replaced by tidyAttrGetId.
+
+
+ + + + + diff --git a/htmldoc/api/group__Attribute.html b/htmldoc/api/group__Attribute.html new file mode 100644 index 0000000..da9ad12 --- /dev/null +++ b/htmldoc/api/group__Attribute.html @@ -0,0 +1,96 @@ + + + + +HTML Tidy: Attribute Interrogation + + + + + + + + + + + + +
+ + +
+ + + + + + + + + + + + + +
+
HTML Tidy +  0.1 +
+ +
+
+ + +
+
+ +
+
+
+ +
+
+ +
+
Attribute Interrogation
+
+
+ + + + + + + +

+Modules

 Deprecated attribute interrogation per AttrId

+Functions

+TidyAttrId TIDY_CALL tidyAttrGetId (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsEvent (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsProp (TidyAttr tattr)
+

Detailed Description

+

Get information about any given attribute.

+
+
+ + + + + diff --git a/htmldoc/api/group__Basic.html b/htmldoc/api/group__Basic.html new file mode 100644 index 0000000..b569de1 --- /dev/null +++ b/htmldoc/api/group__Basic.html @@ -0,0 +1,604 @@ + + + + +HTML Tidy: Basic Operations + + + + + + + + + + + + +
+ + +
+ + + + + + + + + + + + + +
+
HTML Tidy +  0.1 +
+ +
+
+ + +
+
+ +
+
+
+ +
+
+ +
+
Basic Operations
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

+TidyDoc TIDY_CALL tidyCreate (void)
+TidyDoc TIDY_CALL tidyCreateWithAllocator (TidyAllocator *allocator)
+void TIDY_CALL tidyRelease (TidyDoc tdoc)
void TIDY_CALL tidySetAppData (TidyDoc tdoc, void *appData)
void *TIDY_CALL tidyGetAppData (TidyDoc tdoc)
ctmbstr TIDY_CALL tidyReleaseDate (void)
int TIDY_CALL tidyStatus (TidyDoc tdoc)
int TIDY_CALL tidyDetectedHtmlVersion (TidyDoc tdoc)
Bool TIDY_CALL tidyDetectedXhtml (TidyDoc tdoc)
Bool TIDY_CALL tidyDetectedGenericXml (TidyDoc tdoc)
uint TIDY_CALL tidyErrorCount (TidyDoc tdoc)
uint TIDY_CALL tidyWarningCount (TidyDoc tdoc)
uint TIDY_CALL tidyAccessWarningCount (TidyDoc tdoc)
uint TIDY_CALL tidyConfigErrorCount (TidyDoc tdoc)
int TIDY_CALL tidyLoadConfig (TidyDoc tdoc, ctmbstr configFile)
int TIDY_CALL tidyLoadConfigEnc (TidyDoc tdoc, ctmbstr configFile, ctmbstr charenc)
+Bool TIDY_CALL tidyFileExists (TidyDoc tdoc, ctmbstr filename)
int TIDY_CALL tidySetCharEncoding (TidyDoc tdoc, ctmbstr encnam)
int TIDY_CALL tidySetInCharEncoding (TidyDoc tdoc, ctmbstr encnam)
int TIDY_CALL tidySetOutCharEncoding (TidyDoc tdoc, ctmbstr encnam)
int TIDY_CALL tidyOptSaveFile (TidyDoc tdoc, ctmbstr cfgfil)
int TIDY_CALL tidyOptSaveSink (TidyDoc tdoc, TidyOutputSink *sink)
void TIDY_CALL tidyErrorSummary (TidyDoc tdoc)
void TIDY_CALL tidyGeneralInfo (TidyDoc tdoc)
+

Detailed Description

+

Tidy public interface

+

Several functions return an integer document status:

+
+ 0    -> SUCCESS
+ >0   -> 1 == TIDY WARNING, 2 == TIDY ERROR
+ <0   -> SEVERE ERROR
+ 

The following is a short example program.

+
+#include <tidy.h>
+#include <buffio.h>
+#include <stdio.h>
+#include <errno.h>
int main(int argc, char **argv )
+{
+  const char* input = "&lt;title&gt;Foo&lt;/title&gt;&lt;p&gt;Foo!";
+  TidyBuffer output;
+  TidyBuffer errbuf;
+  int rc = -1;
+  Bool ok;
  TidyDoc tdoc = tidyCreate();                     // Initialize "document"
+  tidyBufInit( &output );
+  tidyBufInit( &errbuf );
+  printf( "Tidying:\t\%s\\n", input );
  ok = tidyOptSetBool( tdoc, TidyXhtmlOut, yes );  // Convert to XHTML
+  if ( ok )
+    rc = tidySetErrorBuffer( tdoc, &errbuf );      // Capture diagnostics
+  if ( rc >= 0 )
+    rc = tidyParseString( tdoc, input );           // Parse the input
+  if ( rc >= 0 )
+    rc = tidyCleanAndRepair( tdoc );               // Tidy it up!
+  if ( rc >= 0 )
+    rc = tidyRunDiagnostics( tdoc );               // Kvetch
+  if ( rc > 1 )                                    // If error, force output.
+    rc = ( tidyOptSetBool(tdoc, TidyForceOutput, yes) ? rc : -1 );
+  if ( rc >= 0 )
+    rc = tidySaveBuffer( tdoc, &output );          // Pretty Print
  if ( rc >= 0 )
+  {
+    if ( rc > 0 )
+      printf( "\\nDiagnostics:\\n\\n\%s", errbuf.bp );
+    printf( "\\nAnd here is the result:\\n\\n\%s", output.bp );
+  }
+  else
+    printf( "A severe error (\%d) occurred.\\n", rc );
  tidyBufFree( &output );
+  tidyBufFree( &errbuf );
+  tidyRelease( tdoc );
+  return rc;
+}
+

Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
void TIDY_CALL tidySetAppData (TidyDoc tdoc,
void * appData 
)
+
+
+

Let application store a chunk of data w/ each Tidy instance. Useful for callbacks.

+ +
+
+ +
+
+ + + + + + + + +
void* TIDY_CALL tidyGetAppData (TidyDoc tdoc)
+
+
+

Get application data set previously

+ +
+
+ +
+
+ + + + + + + + +
ctmbstr TIDY_CALL tidyReleaseDate (void )
+
+
+

Get release date (version) for current library

+ +
+
+ +
+
+ + + + + + + + +
int TIDY_CALL tidyStatus (TidyDoc tdoc)
+
+
+

Get status of current document.

+ +
+
+ +
+
+ + + + + + + + +
int TIDY_CALL tidyDetectedHtmlVersion (TidyDoc tdoc)
+
+
+

Detected HTML version: 0, 2, 3 or 4

+ +
+
+ +
+
+ + + + + + + + +
Bool TIDY_CALL tidyDetectedXhtml (TidyDoc tdoc)
+
+
+

Input is XHTML?

+ +
+
+ +
+
+ + + + + + + + +
Bool TIDY_CALL tidyDetectedGenericXml (TidyDoc tdoc)
+
+
+

Input is generic XML (not HTML or XHTML)?

+ +
+
+ +
+
+ + + + + + + + +
uint TIDY_CALL tidyErrorCount (TidyDoc tdoc)
+
+
+

Number of Tidy errors encountered. If > 0, output is suppressed unless TidyForceOutput is set.

+ +
+
+ +
+
+ + + + + + + + +
uint TIDY_CALL tidyWarningCount (TidyDoc tdoc)
+
+
+

Number of Tidy warnings encountered.

+ +
+
+ +
+
+ + + + + + + + +
uint TIDY_CALL tidyAccessWarningCount (TidyDoc tdoc)
+
+
+

Number of Tidy accessibility warnings encountered.

+ +
+
+ +
+
+ + + + + + + + +
uint TIDY_CALL tidyConfigErrorCount (TidyDoc tdoc)
+
+
+

Number of Tidy configuration errors encountered.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
int TIDY_CALL tidyLoadConfig (TidyDoc tdoc,
ctmbstr configFile 
)
+
+
+

Load an ASCII Tidy configuration file

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
int TIDY_CALL tidyLoadConfigEnc (TidyDoc tdoc,
ctmbstr configFile,
ctmbstr charenc 
)
+
+
+

Load a Tidy configuration file with the specified character encoding

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
int TIDY_CALL tidySetCharEncoding (TidyDoc tdoc,
ctmbstr encnam 
)
+
+
+

Set the input/output character encoding for parsing markup. Values include: ascii, latin1, raw, utf8, iso2022, mac, win1252, utf16le, utf16be, utf16, big5 and shiftjis. Case in-sensitive.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
int TIDY_CALL tidySetInCharEncoding (TidyDoc tdoc,
ctmbstr encnam 
)
+
+
+

Set the input encoding for parsing markup. As for tidySetCharEncoding but only affects the input encoding

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
int TIDY_CALL tidySetOutCharEncoding (TidyDoc tdoc,
ctmbstr encnam 
)
+
+
+

Set the output encoding.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
int TIDY_CALL tidyOptSaveFile (TidyDoc tdoc,
ctmbstr cfgfil 
)
+
+
+

Save current settings to named file. Only non-default values are written.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
int TIDY_CALL tidyOptSaveSink (TidyDoc tdoc,
TidyOutputSinksink 
)
+
+
+

Save current settings to given output sink. Only non-default values are written.

+ +
+
+ +
+
+ + + + + + + + +
void TIDY_CALL tidyErrorSummary (TidyDoc tdoc)
+
+
+

Write more complete information about errors to current error sink.

+ +
+
+ +
+
+ + + + + + + + +
void TIDY_CALL tidyGeneralInfo (TidyDoc tdoc)
+
+
+

Write more general information about markup to current error sink.

+ +
+
+
+
+ + + + + diff --git a/htmldoc/api/group__Clean.html b/htmldoc/api/group__Clean.html new file mode 100644 index 0000000..f1c8195 --- /dev/null +++ b/htmldoc/api/group__Clean.html @@ -0,0 +1,123 @@ + + + + +HTML Tidy: Diagnostics and Repair + + + + + + + + + + + + +
+ + +
+ + + + + + + + + + + + + +
+
HTML Tidy +  0.1 +
+ +
+
+ + +
+
+ +
+
+
+ +
+
+ +
+
Diagnostics and Repair
+
+
+ + + + +

+Functions

int TIDY_CALL tidyCleanAndRepair (TidyDoc tdoc)
int TIDY_CALL tidyRunDiagnostics (TidyDoc tdoc)
+

Function Documentation

+ +
+
+ + + + + + + + +
int TIDY_CALL tidyCleanAndRepair (TidyDoc tdoc)
+
+
+

Execute configured cleanup and repair operations on parsed markup

+ +
+
+ +
+
+ + + + + + + + +
int TIDY_CALL tidyRunDiagnostics (TidyDoc tdoc)
+
+
+

Run configured diagnostics on parsed and repaired markup. Must call tidyCleanAndRepair() first.

+ +
+
+
+
+ + + + + diff --git a/htmldoc/api/group__Configuration.html b/htmldoc/api/group__Configuration.html new file mode 100644 index 0000000..d3e3d6d --- /dev/null +++ b/htmldoc/api/group__Configuration.html @@ -0,0 +1,1019 @@ + + + + +HTML Tidy: Configuration Options + + + + + + + + + + + + +
+ + +
+ + + + + + + + + + + + + +
+
HTML Tidy +  0.1 +
+ +
+
+ + +
+
+ +
+
+
+ +
+
+ +
+
Configuration Options
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Typedefs

typedef Bool(TIDY_CALL * TidyOptCallback )(ctmbstr option, ctmbstr value)

+Functions

+Bool TIDY_CALL tidySetOptionCallback (TidyDoc tdoc, TidyOptCallback pOptCallback)
TidyOptionId TIDY_CALL tidyOptGetIdForName (ctmbstr optnam)
TidyIterator TIDY_CALL tidyGetOptionList (TidyDoc tdoc)
TidyOption TIDY_CALL tidyGetNextOption (TidyDoc tdoc, TidyIterator *pos)
TidyOption TIDY_CALL tidyGetOption (TidyDoc tdoc, TidyOptionId optId)
TidyOption TIDY_CALL tidyGetOptionByName (TidyDoc tdoc, ctmbstr optnam)
TidyOptionId TIDY_CALL tidyOptGetId (TidyOption opt)
ctmbstr TIDY_CALL tidyOptGetName (TidyOption opt)
TidyOptionType TIDY_CALL tidyOptGetType (TidyOption opt)
Bool TIDY_CALL tidyOptIsReadOnly (TidyOption opt)
TidyConfigCategory TIDY_CALL tidyOptGetCategory (TidyOption opt)
ctmbstr TIDY_CALL tidyOptGetDefault (TidyOption opt)
ulong TIDY_CALL tidyOptGetDefaultInt (TidyOption opt)
Bool TIDY_CALL tidyOptGetDefaultBool (TidyOption opt)
TidyIterator TIDY_CALL tidyOptGetPickList (TidyOption opt)
ctmbstr TIDY_CALL tidyOptGetNextPick (TidyOption opt, TidyIterator *pos)
ctmbstr TIDY_CALL tidyOptGetValue (TidyDoc tdoc, TidyOptionId optId)
Bool TIDY_CALL tidyOptSetValue (TidyDoc tdoc, TidyOptionId optId, ctmbstr val)
Bool TIDY_CALL tidyOptParseValue (TidyDoc tdoc, ctmbstr optnam, ctmbstr val)
ulong TIDY_CALL tidyOptGetInt (TidyDoc tdoc, TidyOptionId optId)
Bool TIDY_CALL tidyOptSetInt (TidyDoc tdoc, TidyOptionId optId, ulong val)
Bool TIDY_CALL tidyOptGetBool (TidyDoc tdoc, TidyOptionId optId)
Bool TIDY_CALL tidyOptSetBool (TidyDoc tdoc, TidyOptionId optId, Bool val)
Bool TIDY_CALL tidyOptResetToDefault (TidyDoc tdoc, TidyOptionId opt)
Bool TIDY_CALL tidyOptResetAllToDefault (TidyDoc tdoc)
Bool TIDY_CALL tidyOptSnapshot (TidyDoc tdoc)
Bool TIDY_CALL tidyOptResetToSnapshot (TidyDoc tdoc)
Bool TIDY_CALL tidyOptDiffThanDefault (TidyDoc tdoc)
Bool TIDY_CALL tidyOptDiffThanSnapshot (TidyDoc tdoc)
Bool TIDY_CALL tidyOptCopyConfig (TidyDoc tdocTo, TidyDoc tdocFrom)
ctmbstr TIDY_CALL tidyOptGetEncName (TidyDoc tdoc, TidyOptionId optId)
ctmbstr TIDY_CALL tidyOptGetCurrPick (TidyDoc tdoc, TidyOptionId optId)
TidyIterator TIDY_CALL tidyOptGetDeclTagList (TidyDoc tdoc)
ctmbstr TIDY_CALL tidyOptGetNextDeclTag (TidyDoc tdoc, TidyOptionId optId, TidyIterator *iter)
ctmbstr TIDY_CALL tidyOptGetDoc (TidyDoc tdoc, TidyOption opt)
TidyIterator TIDY_CALL tidyOptGetDocLinksList (TidyDoc tdoc, TidyOption opt)
TidyOption TIDY_CALL tidyOptGetNextDocLinks (TidyDoc tdoc, TidyIterator *pos)
+

Detailed Description

+

Functions for getting and setting Tidy configuration options.

+

Typedef Documentation

+ +
+
+ + + + +
typedef Bool(TIDY_CALL * TidyOptCallback)(ctmbstr option, ctmbstr value)
+
+
+

Applications using TidyLib may want to augment command-line and configuration file options. Setting this callback allows an application developer to examine command-line and configuration file options after TidyLib has examined them and failed to recognize them.

+ +
+
+

Function Documentation

+ +
+
+ + + + + + + + +
TidyOptionId TIDY_CALL tidyOptGetIdForName (ctmbstr optnam)
+
+
+

Get option ID by name

+ +
+
+ +
+
+ + + + + + + + +
TidyIterator TIDY_CALL tidyGetOptionList (TidyDoc tdoc)
+
+
+

Get iterator for list of option Example:

+
+TidyIterator itOpt = tidyGetOptionList( tdoc );
+while ( itOpt )
+{
+  TidyOption opt = tidyGetNextOption( tdoc, &itOpt );
+  .. get/set option values ..
+}
+
+
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
TidyOption TIDY_CALL tidyGetNextOption (TidyDoc tdoc,
TidyIterator * pos 
)
+
+
+

Get next Option

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
TidyOption TIDY_CALL tidyGetOption (TidyDoc tdoc,
TidyOptionId optId 
)
+
+
+

Lookup option by ID

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
TidyOption TIDY_CALL tidyGetOptionByName (TidyDoc tdoc,
ctmbstr optnam 
)
+
+
+

Lookup option by name

+ +
+
+ +
+
+ + + + + + + + +
TidyOptionId TIDY_CALL tidyOptGetId (TidyOption opt)
+
+
+

Get ID of given Option

+ +
+
+ +
+
+ + + + + + + + +
ctmbstr TIDY_CALL tidyOptGetName (TidyOption opt)
+
+
+

Get name of given Option

+ +
+
+ +
+
+ + + + + + + + +
TidyOptionType TIDY_CALL tidyOptGetType (TidyOption opt)
+
+
+

Get datatype of given Option

+ +
+
+ +
+
+ + + + + + + + +
Bool TIDY_CALL tidyOptIsReadOnly (TidyOption opt)
+
+
+

Is Option read-only?

+ +
+
+ +
+
+ + + + + + + + +
TidyConfigCategory TIDY_CALL tidyOptGetCategory (TidyOption opt)
+
+
+

Get category of given Option

+ +
+
+ +
+
+ + + + + + + + +
ctmbstr TIDY_CALL tidyOptGetDefault (TidyOption opt)
+
+
+

Get default value of given Option as a string

+ +
+
+ +
+
+ + + + + + + + +
ulong TIDY_CALL tidyOptGetDefaultInt (TidyOption opt)
+
+
+

Get default value of given Option as an unsigned integer

+ +
+
+ +
+
+ + + + + + + + +
Bool TIDY_CALL tidyOptGetDefaultBool (TidyOption opt)
+
+
+

Get default value of given Option as a Boolean value

+ +
+
+ +
+
+ + + + + + + + +
TidyIterator TIDY_CALL tidyOptGetPickList (TidyOption opt)
+
+
+

Iterate over Option "pick list"

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
ctmbstr TIDY_CALL tidyOptGetNextPick (TidyOption opt,
TidyIterator * pos 
)
+
+
+

Get next string value of Option "pick list"

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
ctmbstr TIDY_CALL tidyOptGetValue (TidyDoc tdoc,
TidyOptionId optId 
)
+
+
+

Get current Option value as a string

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
Bool TIDY_CALL tidyOptSetValue (TidyDoc tdoc,
TidyOptionId optId,
ctmbstr val 
)
+
+
+

Set Option value as a string

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
Bool TIDY_CALL tidyOptParseValue (TidyDoc tdoc,
ctmbstr optnam,
ctmbstr val 
)
+
+
+

Set named Option value as a string. Good if not sure of type.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
ulong TIDY_CALL tidyOptGetInt (TidyDoc tdoc,
TidyOptionId optId 
)
+
+
+

Get current Option value as an integer

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
Bool TIDY_CALL tidyOptSetInt (TidyDoc tdoc,
TidyOptionId optId,
ulong val 
)
+
+
+

Set Option value as an integer

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
Bool TIDY_CALL tidyOptGetBool (TidyDoc tdoc,
TidyOptionId optId 
)
+
+
+

Get current Option value as a Boolean flag

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
Bool TIDY_CALL tidyOptSetBool (TidyDoc tdoc,
TidyOptionId optId,
Bool val 
)
+
+
+

Set Option value as a Boolean flag

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
Bool TIDY_CALL tidyOptResetToDefault (TidyDoc tdoc,
TidyOptionId opt 
)
+
+
+

Reset option to default value by ID

+ +
+
+ +
+
+ + + + + + + + +
Bool TIDY_CALL tidyOptResetAllToDefault (TidyDoc tdoc)
+
+
+

Reset all options to their default values

+ +
+
+ +
+
+ + + + + + + + +
Bool TIDY_CALL tidyOptSnapshot (TidyDoc tdoc)
+
+
+

Take a snapshot of current config settings

+ +
+
+ +
+
+ + + + + + + + +
Bool TIDY_CALL tidyOptResetToSnapshot (TidyDoc tdoc)
+
+
+

Reset config settings to snapshot (after document processing)

+ +
+
+ +
+
+ + + + + + + + +
Bool TIDY_CALL tidyOptDiffThanDefault (TidyDoc tdoc)
+
+
+

Any settings different than default?

+ +
+
+ +
+
+ + + + + + + + +
Bool TIDY_CALL tidyOptDiffThanSnapshot (TidyDoc tdoc)
+
+
+

Any settings different than snapshot?

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
Bool TIDY_CALL tidyOptCopyConfig (TidyDoc tdocTo,
TidyDoc tdocFrom 
)
+
+
+

Copy current configuration settings from one document to another

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
ctmbstr TIDY_CALL tidyOptGetEncName (TidyDoc tdoc,
TidyOptionId optId 
)
+
+
+

Get character encoding name. Used with TidyCharEncoding, TidyOutCharEncoding, TidyInCharEncoding

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
ctmbstr TIDY_CALL tidyOptGetCurrPick (TidyDoc tdoc,
TidyOptionId optId 
)
+
+
+

Get current pick list value for option by ID. Useful for enum types.

+ +
+
+ +
+
+ + + + + + + + +
TidyIterator TIDY_CALL tidyOptGetDeclTagList (TidyDoc tdoc)
+
+
+

Iterate over user declared tags

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
ctmbstr TIDY_CALL tidyOptGetNextDeclTag (TidyDoc tdoc,
TidyOptionId optId,
TidyIterator * iter 
)
+
+
+

Get next declared tag of specified type: TidyInlineTags, TidyBlockTags, TidyEmptyTags, TidyPreTags

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
ctmbstr TIDY_CALL tidyOptGetDoc (TidyDoc tdoc,
TidyOption opt 
)
+
+
+

Get option description

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
TidyIterator TIDY_CALL tidyOptGetDocLinksList (TidyDoc tdoc,
TidyOption opt 
)
+
+
+

Iterate over a list of related options

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
TidyOption TIDY_CALL tidyOptGetNextDocLinks (TidyDoc tdoc,
TidyIterator * pos 
)
+
+
+

Get next related option

+ +
+
+
+
+ + + + + diff --git a/htmldoc/api/group__IO.html b/htmldoc/api/group__IO.html new file mode 100644 index 0000000..5cfd459 --- /dev/null +++ b/htmldoc/api/group__IO.html @@ -0,0 +1,516 @@ + + + + +HTML Tidy: I/O and Messages + + + + + + + + + + + + +
+ + +
+ + + + + + + + + + + + + +
+
HTML Tidy +  0.1 +
+ +
+
+ + +
+
+ +
+
+
+ +
+
+ +
+
I/O and Messages
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + +

+Data Structures

struct  _TidyInputSource
struct  _TidyOutputSink

+Defines

#define EndOfStream   (~0u)

+Typedefs

typedef int(TIDY_CALL * TidyGetByteFunc )(void *sourceData)
typedef void(TIDY_CALL * TidyUngetByteFunc )(void *sourceData, byte bt)
typedef Bool(TIDY_CALL * TidyEOFFunc )(void *sourceData)
typedef TIDY_STRUCT struct
+_TidyInputSource 
TidyInputSource
typedef void(TIDY_CALL * TidyPutByteFunc )(void *sinkData, byte bt)
typedef TIDY_STRUCT struct
+_TidyOutputSink 
TidyOutputSink
typedef Bool(TIDY_CALL * TidyReportFilter )(TidyDoc tdoc, TidyReportLevel lvl, uint line, uint col, ctmbstr mssg)

+Functions

Bool TIDY_CALL tidyInitSource (TidyInputSource *source, void *srcData, TidyGetByteFunc gbFunc, TidyUngetByteFunc ugbFunc, TidyEOFFunc endFunc)
uint TIDY_CALL tidyGetByte (TidyInputSource *source)
void TIDY_CALL tidyUngetByte (TidyInputSource *source, uint byteValue)
Bool TIDY_CALL tidyIsEOF (TidyInputSource *source)
Bool TIDY_CALL tidyInitSink (TidyOutputSink *sink, void *snkData, TidyPutByteFunc pbFunc)
void TIDY_CALL tidyPutByte (TidyOutputSink *sink, uint byteValue)
Bool TIDY_CALL tidySetReportFilter (TidyDoc tdoc, TidyReportFilter filtCallback)
FILE *TIDY_CALL tidySetErrorFile (TidyDoc tdoc, ctmbstr errfilnam)
int TIDY_CALL tidySetErrorBuffer (TidyDoc tdoc, TidyBuffer *errbuf)
int TIDY_CALL tidySetErrorSink (TidyDoc tdoc, TidyOutputSink *sink)
+

Detailed Description

+

By default, Tidy will define, create and use instances of input and output handlers for standard C buffered I/O (i.e. FILE* stdin, FILE* stdout and FILE* stderr for content input, content output and diagnostic output, respectively. A FILE* cfgFile input handler will be used for config files. Command line options will just be set directly.

+

Define Documentation

+ +
+
+ + + + +
#define EndOfStream   (~0u)
+
+
+

End of input "character"

+ +
+
+

Typedef Documentation

+ +
+
+ + + + +
typedef int(TIDY_CALL * TidyGetByteFunc)(void *sourceData)
+
+
+

Input Callback: get next byte of input

+ +
+
+ +
+
+ + + + +
typedef void(TIDY_CALL * TidyUngetByteFunc)(void *sourceData, byte bt)
+
+
+

Input Callback: unget a byte of input

+ +
+
+ +
+
+ + + + +
typedef Bool(TIDY_CALL * TidyEOFFunc)(void *sourceData)
+
+
+

Input Callback: is end of input?

+ +
+
+ +
+
+ + + + +
typedef TIDY_STRUCT struct _TidyInputSource TidyInputSource
+
+
+

TidyInputSource - Delivers raw bytes of input

+ +
+
+ +
+
+ + + + +
typedef void(TIDY_CALL * TidyPutByteFunc)(void *sinkData, byte bt)
+
+
+

Output callback: send a byte to output

+ +
+
+ +
+
+ + + + +
typedef TIDY_STRUCT struct _TidyOutputSink TidyOutputSink
+
+
+

TidyOutputSink - accepts raw bytes of output

+ +
+
+ +
+
+ + + + +
typedef Bool(TIDY_CALL * TidyReportFilter)(TidyDoc tdoc, TidyReportLevel lvl, uint line, uint col, ctmbstr mssg)
+
+
+

Callback to filter messages by diagnostic level: info, warning, etc. Just set diagnostic output handler to redirect all diagnostics output. Return true to proceed with output, false to cancel.

+ +
+
+

Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Bool TIDY_CALL tidyInitSource (TidyInputSourcesource,
void * srcData,
TidyGetByteFunc gbFunc,
TidyUngetByteFunc ugbFunc,
TidyEOFFunc endFunc 
)
+
+
+

Facilitates user defined source by providing an entry point to marshal pointers-to-functions. Needed by .NET and possibly other language bindings.

+ +
+
+ +
+
+ + + + + + + + +
uint TIDY_CALL tidyGetByte (TidyInputSourcesource)
+
+
+

Helper: get next byte from input source

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void TIDY_CALL tidyUngetByte (TidyInputSourcesource,
uint byteValue 
)
+
+
+

Helper: unget byte back to input source

+ +
+
+ +
+
+ + + + + + + + +
Bool TIDY_CALL tidyIsEOF (TidyInputSourcesource)
+
+
+

Helper: check if input source at end

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
Bool TIDY_CALL tidyInitSink (TidyOutputSinksink,
void * snkData,
TidyPutByteFunc pbFunc 
)
+
+
+

Facilitates user defined sinks by providing an entry point to marshal pointers-to-functions. Needed by .NET and possibly other language bindings.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void TIDY_CALL tidyPutByte (TidyOutputSinksink,
uint byteValue 
)
+
+
+

Helper: send a byte to output

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
Bool TIDY_CALL tidySetReportFilter (TidyDoc tdoc,
TidyReportFilter filtCallback 
)
+
+
+

Give Tidy a filter callback to use

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
FILE* TIDY_CALL tidySetErrorFile (TidyDoc tdoc,
ctmbstr errfilnam 
)
+
+
+

Set error sink to named file

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
int TIDY_CALL tidySetErrorBuffer (TidyDoc tdoc,
TidyBuffererrbuf 
)
+
+
+

Set error sink to given buffer

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
int TIDY_CALL tidySetErrorSink (TidyDoc tdoc,
TidyOutputSinksink 
)
+
+
+

Set error sink to given generic sink

+ +
+
+
+
+ + + + + diff --git a/htmldoc/api/group__Memory.html b/htmldoc/api/group__Memory.html new file mode 100644 index 0000000..c3a5d66 --- /dev/null +++ b/htmldoc/api/group__Memory.html @@ -0,0 +1,269 @@ + + + + +HTML Tidy: Memory Allocation + + + + + + + + + + + + +
+ + +
+ + + + + + + + + + + + + +
+
HTML Tidy +  0.1 +
+ +
+
+ + +
+
+ +
+
+
+ +
+
+ +
+
Memory Allocation
+
+
+ + + + + + + + + + + + + + + + +

+Data Structures

struct  _TidyAllocatorVtbl
struct  _TidyAllocator

+Typedefs

typedef struct _TidyAllocatorVtbl TidyAllocatorVtbl
typedef struct _TidyAllocator TidyAllocator
typedef void *(TIDY_CALL * TidyMalloc )(size_t len)
typedef void *(TIDY_CALL * TidyRealloc )(void *buf, size_t len)
typedef void(TIDY_CALL * TidyFree )(void *buf)
typedef void(TIDY_CALL * TidyPanic )(ctmbstr mssg)

+Functions

Bool TIDY_CALL tidySetMallocCall (TidyMalloc fmalloc)
Bool TIDY_CALL tidySetReallocCall (TidyRealloc frealloc)
Bool TIDY_CALL tidySetFreeCall (TidyFree ffree)
Bool TIDY_CALL tidySetPanicCall (TidyPanic fpanic)
+

Detailed Description

+

Tidy uses a user provided allocator for all memory allocations. If this allocator is not provided, then a default allocator is used which simply wraps standard C malloc/free calls. These wrappers call the panic function upon any failure. The default panic function prints an out of memory message to stderr, and calls exit(2).

+

For applications in which it is unacceptable to abort in the case of memory allocation, then the panic function can be replaced with one which longjmps() out of the tidy code. For this to clean up completely, you should be careful not to use any tidy methods that open files as these will not be closed before panic() is called.

+

TODO: associate file handles with tidyDoc and ensure that tidyDocRelease() can close them all.

+

Calling the withAllocator() family ( tidyCreateWithAllocator, tidyBufInitWithAllocator, tidyBufAllocWithAllocator) allow settings custom allocators).

+

All parts of the document use the same allocator. Calls that require a user provided buffer can optionally use a different allocator.

+

For reference in designing a plug-in allocator, most allocations made by tidy are less than 100 bytes, corresponding to attribute names/values, etc.

+

There is also an additional class of much larger allocations which are where most of the data from the lexer is stored. (It is not currently possible to use a separate allocator for the lexer, this would be a useful extension).

+

In general, approximately 1/3rd of the memory used by tidy is freed during the parse, so if memory usage is an issue then an allocator that can reuse this memory is a good idea.

+

Typedef Documentation

+ +
+
+ + + + +
typedef struct _TidyAllocatorVtbl TidyAllocatorVtbl
+
+
+

The allocators function table

+ +
+
+ +
+
+ + + + +
typedef struct _TidyAllocator TidyAllocator
+
+
+

The allocator

+ +
+
+ +
+
+ + + + +
typedef void*(TIDY_CALL * TidyMalloc)(size_t len)
+
+
+

Callback for "malloc" replacement

+ +
+
+ +
+
+ + + + +
typedef void*(TIDY_CALL * TidyRealloc)(void *buf, size_t len)
+
+
+

Callback for "realloc" replacement

+ +
+
+ +
+
+ + + + +
typedef void(TIDY_CALL * TidyFree)(void *buf)
+
+
+

Callback for "free" replacement

+ +
+
+ +
+
+ + + + +
typedef void(TIDY_CALL * TidyPanic)(ctmbstr mssg)
+
+
+

Callback for "out of memory" panic state

+ +
+
+

Function Documentation

+ +
+
+ + + + + + + + +
Bool TIDY_CALL tidySetMallocCall (TidyMalloc fmalloc)
+
+
+

Give Tidy a malloc() replacement

+ +
+
+ +
+
+ + + + + + + + +
Bool TIDY_CALL tidySetReallocCall (TidyRealloc frealloc)
+
+
+

Give Tidy a realloc() replacement

+ +
+
+ +
+
+ + + + + + + + +
Bool TIDY_CALL tidySetFreeCall (TidyFree ffree)
+
+
+

Give Tidy a free() replacement

+ +
+
+ +
+
+ + + + + + + + +
Bool TIDY_CALL tidySetPanicCall (TidyPanic fpanic)
+
+
+

Give Tidy an "out of memory" handler

+ +
+
+
+
+ + + + + diff --git a/htmldoc/api/group__NodeAsk.html b/htmldoc/api/group__NodeAsk.html new file mode 100644 index 0000000..7ece081 --- /dev/null +++ b/htmldoc/api/group__NodeAsk.html @@ -0,0 +1,112 @@ + + + + +HTML Tidy: Node Interrogation + + + + + + + + + + + + +
+ + +
+ + + + + + + + + + + + + +
+
HTML Tidy +  0.1 +
+ +
+
+ + +
+
+ +
+
+
+ +
+
+ +
+
Node Interrogation
+
+
+ + + + + + + + + + + + + + + +

+Modules

 Deprecated node interrogation per TagId

+Functions

+TidyNodeType TIDY_CALL tidyNodeGetType (TidyNode tnod)
+ctmbstr TIDY_CALL tidyNodeGetName (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsText (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsProp (TidyDoc tdoc, TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsHeader (TidyNode tnod)
+Bool TIDY_CALL tidyNodeHasText (TidyDoc tdoc, TidyNode tnod)
+Bool TIDY_CALL tidyNodeGetText (TidyDoc tdoc, TidyNode tnod, TidyBuffer *buf)
+Bool TIDY_CALL tidyNodeGetValue (TidyDoc tdoc, TidyNode tnod, TidyBuffer *buf)
+TidyTagId TIDY_CALL tidyNodeGetId (TidyNode tnod)
+uint TIDY_CALL tidyNodeLine (TidyNode tnod)
+uint TIDY_CALL tidyNodeColumn (TidyNode tnod)
+

Detailed Description

+

Get information about any givent node.

+
+
+ + + + + diff --git a/htmldoc/api/group__NodeIsElementName.html b/htmldoc/api/group__NodeIsElementName.html new file mode 100644 index 0000000..72d79b9 --- /dev/null +++ b/htmldoc/api/group__NodeIsElementName.html @@ -0,0 +1,246 @@ + + + + +HTML Tidy: Deprecated node interrogation per TagId + + + + + + + + + + + + +
+ + +
+ + + + + + + + + + + + + +
+
HTML Tidy +  0.1 +
+ +
+
+ + +
+
+ +
+
+
+ +
+
+ +
+
Deprecated node interrogation per TagId
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

+Bool TIDY_CALL tidyNodeIsHTML (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsHEAD (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsTITLE (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsBASE (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsMETA (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsBODY (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsFRAMESET (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsFRAME (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsIFRAME (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsNOFRAMES (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsHR (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsH1 (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsH2 (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsPRE (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsLISTING (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsP (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsUL (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsOL (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsDL (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsDIR (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsLI (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsDT (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsDD (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsTABLE (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsCAPTION (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsTD (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsTH (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsTR (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsCOL (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsCOLGROUP (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsBR (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsA (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsLINK (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsB (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsI (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsSTRONG (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsEM (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsBIG (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsSMALL (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsPARAM (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsOPTION (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsOPTGROUP (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsIMG (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsMAP (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsAREA (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsNOBR (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsWBR (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsFONT (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsLAYER (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsSPACER (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsCENTER (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsSTYLE (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsSCRIPT (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsNOSCRIPT (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsFORM (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsTEXTAREA (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsBLOCKQUOTE (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsAPPLET (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsOBJECT (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsDIV (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsSPAN (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsINPUT (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsQ (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsLABEL (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsH3 (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsH4 (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsH5 (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsH6 (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsADDRESS (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsXMP (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsSELECT (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsBLINK (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsMARQUEE (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsEMBED (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsBASEFONT (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsISINDEX (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsS (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsSTRIKE (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsU (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsMENU (TidyNode tnod)
+

Detailed Description

+
Deprecated:
The functions tidyNodeIs{ElementName} are deprecated and should be replaced by tidyNodeGetId.
+
+
+ + + + + diff --git a/htmldoc/api/group__Opaque.html b/htmldoc/api/group__Opaque.html new file mode 100644 index 0000000..e7fd049 --- /dev/null +++ b/htmldoc/api/group__Opaque.html @@ -0,0 +1,101 @@ + + + + +HTML Tidy: Opaque Types + + + + + + + + + + + + +
+ + +
+ + + + + + + + + + + + + +
+
HTML Tidy +  0.1 +
+ +
+
+ + +
+
+ +
+
+
+ +
+
+ +
+
Opaque Types
+
+
+ + + + + + + + + + + +

+Data Structures

struct  TidyDoc
struct  TidyOption
struct  TidyNode
struct  TidyAttr

+Functions

opaque_type (TidyDoc)
opaque_type (TidyOption)
opaque_type (TidyNode)
opaque_type (TidyAttr)
+

Detailed Description

+

Cast to implementation types within lib. Reduces inter-dependencies/conflicts w/ application code.

+
+
+ + + + + diff --git a/htmldoc/api/group__Parse.html b/htmldoc/api/group__Parse.html new file mode 100644 index 0000000..65e3c8a --- /dev/null +++ b/htmldoc/api/group__Parse.html @@ -0,0 +1,222 @@ + + + + +HTML Tidy: Document Parse + + + + + + + + + + + + +
+ + +
+ + + + + + + + + + + + + +
+
HTML Tidy +  0.1 +
+ +
+
+ + +
+
+ +
+
+
+ +
+
+ +
+
Document Parse
+
+
+ + + + + + + +

+Functions

int TIDY_CALL tidyParseFile (TidyDoc tdoc, ctmbstr filename)
int TIDY_CALL tidyParseStdin (TidyDoc tdoc)
int TIDY_CALL tidyParseString (TidyDoc tdoc, ctmbstr content)
int TIDY_CALL tidyParseBuffer (TidyDoc tdoc, TidyBuffer *buf)
int TIDY_CALL tidyParseSource (TidyDoc tdoc, TidyInputSource *source)
+

Detailed Description

+

Parse markup from a given input source. String and filename functions added for convenience. HTML/XHTML version determined from input.

+

Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
int TIDY_CALL tidyParseFile (TidyDoc tdoc,
ctmbstr filename 
)
+
+
+

Parse markup in named file

+ +
+
+ +
+
+ + + + + + + + +
int TIDY_CALL tidyParseStdin (TidyDoc tdoc)
+
+
+

Parse markup from the standard input

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
int TIDY_CALL tidyParseString (TidyDoc tdoc,
ctmbstr content 
)
+
+
+

Parse markup in given string

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
int TIDY_CALL tidyParseBuffer (TidyDoc tdoc,
TidyBufferbuf 
)
+
+
+

Parse markup in given buffer

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
int TIDY_CALL tidyParseSource (TidyDoc tdoc,
TidyInputSourcesource 
)
+
+
+

Parse markup in given generic input source

+ +
+
+
+
+ + + + + diff --git a/htmldoc/api/group__Save.html b/htmldoc/api/group__Save.html new file mode 100644 index 0000000..b4527a8 --- /dev/null +++ b/htmldoc/api/group__Save.html @@ -0,0 +1,228 @@ + + + + +HTML Tidy: Document Save Functions + + + + + + + + + + + + +
+ + +
+ + + + + + + + + + + + + +
+
HTML Tidy +  0.1 +
+ +
+
+ + +
+
+ +
+
+
+ +
+
+ +
+
Document Save Functions
+
+
+ + + + + + + +

+Functions

int TIDY_CALL tidySaveFile (TidyDoc tdoc, ctmbstr filename)
int TIDY_CALL tidySaveStdout (TidyDoc tdoc)
int TIDY_CALL tidySaveBuffer (TidyDoc tdoc, TidyBuffer *buf)
int TIDY_CALL tidySaveString (TidyDoc tdoc, tmbstr buffer, uint *buflen)
int TIDY_CALL tidySaveSink (TidyDoc tdoc, TidyOutputSink *sink)
+

Detailed Description

+

Save currently parsed document to the given output sink. File name and string/buffer functions provided for convenience.

+

Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
int TIDY_CALL tidySaveFile (TidyDoc tdoc,
ctmbstr filename 
)
+
+
+

Save to named file

+ +
+
+ +
+
+ + + + + + + + +
int TIDY_CALL tidySaveStdout (TidyDoc tdoc)
+
+
+

Save to standard output (FILE*)

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
int TIDY_CALL tidySaveBuffer (TidyDoc tdoc,
TidyBufferbuf 
)
+
+
+

Save to given TidyBuffer object

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
int TIDY_CALL tidySaveString (TidyDoc tdoc,
tmbstr buffer,
uint * buflen 
)
+
+
+

Save document to application buffer. If buffer is not big enough, ENOMEM will be returned and the necessary buffer size will be placed in *buflen.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
int TIDY_CALL tidySaveSink (TidyDoc tdoc,
TidyOutputSinksink 
)
+
+
+

Save to given generic output sink

+ +
+
+
+
+ + + + + diff --git a/htmldoc/api/group__Tree.html b/htmldoc/api/group__Tree.html new file mode 100644 index 0000000..332e9d1 --- /dev/null +++ b/htmldoc/api/group__Tree.html @@ -0,0 +1,146 @@ + + + + +HTML Tidy: Document Tree + + + + + + + + + + + + +
+ + +
+ + + + + + + + + + + + + +
+
HTML Tidy +  0.1 +
+ +
+
+ + +
+
+ +
+
+
+ +
+
+ +
+
Document Tree
+
+
+ + + + + + + + + + + + + + +

+Functions

+TidyNode TIDY_CALL tidyGetRoot (TidyDoc tdoc)
+TidyNode TIDY_CALL tidyGetHtml (TidyDoc tdoc)
+TidyNode TIDY_CALL tidyGetHead (TidyDoc tdoc)
+TidyNode TIDY_CALL tidyGetBody (TidyDoc tdoc)
+TidyNode TIDY_CALL tidyGetParent (TidyNode tnod)
+TidyNode TIDY_CALL tidyGetChild (TidyNode tnod)
+TidyNode TIDY_CALL tidyGetNext (TidyNode tnod)
+TidyNode TIDY_CALL tidyGetPrev (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrFirst (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrNext (TidyAttr tattr)
+ctmbstr TIDY_CALL tidyAttrName (TidyAttr tattr)
+ctmbstr TIDY_CALL tidyAttrValue (TidyAttr tattr)
+

Detailed Description

+

A parsed and, optionally, repaired document is represented by Tidy as a Tree, much like a W3C DOM. This tree may be traversed using these functions. The following snippet gives a basic idea how these functions can be used.

+
+void dumpNode( TidyNode tnod, int indent )
+{
+  TidyNode child;
  for ( child = tidyGetChild(tnod); child; child = tidyGetNext(child) )
+  {
+    ctmbstr name;
+    switch ( tidyNodeGetType(child) )
+    {
+    case TidyNode_Root:       name = "Root";                    break;
+    case TidyNode_DocType:    name = "DOCTYPE";                 break;
+    case TidyNode_Comment:    name = "Comment";                 break;
+    case TidyNode_ProcIns:    name = "Processing Instruction";  break;
+    case TidyNode_Text:       name = "Text";                    break;
+    case TidyNode_CDATA:      name = "CDATA";                   break;
+    case TidyNode_Section:    name = "XML Section";             break;
+    case TidyNode_Asp:        name = "ASP";                     break;
+    case TidyNode_Jste:       name = "JSTE";                    break;
+    case TidyNode_Php:        name = "PHP";                     break;
+    case TidyNode_XmlDecl:    name = "XML Declaration";         break;
    case TidyNode_Start:
+    case TidyNode_End:
+    case TidyNode_StartEnd:
+    default:
+      name = tidyNodeGetName( child );
+      break;
+    }
+    assert( name != NULL );
+    printf( "\%*.*sNode: \%s\\n", indent, indent, " ", name );
+    dumpNode( child, indent + 4 );
+  }
+}
void dumpDoc( TidyDoc tdoc )
+{
+  dumpNode( tidyGetRoot(tdoc), 0 );
+}
void dumpBody( TidyDoc tdoc )
+{
+  dumpNode( tidyGetBody(tdoc), 0 );
+}
+
+
+ + + + + diff --git a/htmldoc/api/index.html b/htmldoc/api/index.html new file mode 100644 index 0000000..1b399ad --- /dev/null +++ b/htmldoc/api/index.html @@ -0,0 +1,90 @@ + + + + +HTML Tidy: Main Page + + + + + + + + + + + + +
+ + +
+ + + + + + + + + + + + + +
+
HTML Tidy +  0.1 +
+ +
+
+ + +
+
+ +
+
+
+ +
+
+
+
HTML Tidy Documentation
+
+
+ +
+
+ + + + + diff --git a/htmldoc/api/jquery.js b/htmldoc/api/jquery.js new file mode 100644 index 0000000..c052173 --- /dev/null +++ b/htmldoc/api/jquery.js @@ -0,0 +1,54 @@ +/* + * jQuery JavaScript Library v1.3.2 + * http://jquery.com/ + * + * Copyright (c) 2009 John Resig + * Dual licensed under the MIT and GPL licenses. + * http://docs.jquery.com/License + * + * Date: 2009-02-19 17:34:21 -0500 (Thu, 19 Feb 2009) + * Revision: 6246 + */ +(function(){var l=this,g,y=l.jQuery,p=l.$,o=l.jQuery=l.$=function(E,F){return new o.fn.init(E,F)},D=/^[^<]*(<(.|\s)+>)[^>]*$|^#([\w-]+)$/,f=/^.[^:#\[\.,]*$/;o.fn=o.prototype={init:function(E,H){E=E||document;if(E.nodeType){this[0]=E;this.length=1;this.context=E;return this}if(typeof E==="string"){var G=D.exec(E);if(G&&(G[1]||!H)){if(G[1]){E=o.clean([G[1]],H)}else{var I=document.getElementById(G[3]);if(I&&I.id!=G[3]){return o().find(E)}var F=o(I||[]);F.context=document;F.selector=E;return F}}else{return o(H).find(E)}}else{if(o.isFunction(E)){return o(document).ready(E)}}if(E.selector&&E.context){this.selector=E.selector;this.context=E.context}return this.setArray(o.isArray(E)?E:o.makeArray(E))},selector:"",jquery:"1.3.2",size:function(){return this.length},get:function(E){return E===g?Array.prototype.slice.call(this):this[E]},pushStack:function(F,H,E){var G=o(F);G.prevObject=this;G.context=this.context;if(H==="find"){G.selector=this.selector+(this.selector?" ":"")+E}else{if(H){G.selector=this.selector+"."+H+"("+E+")"}}return G},setArray:function(E){this.length=0;Array.prototype.push.apply(this,E);return this},each:function(F,E){return o.each(this,F,E)},index:function(E){return o.inArray(E&&E.jquery?E[0]:E,this)},attr:function(F,H,G){var E=F;if(typeof F==="string"){if(H===g){return this[0]&&o[G||"attr"](this[0],F)}else{E={};E[F]=H}}return this.each(function(I){for(F in E){o.attr(G?this.style:this,F,o.prop(this,E[F],G,I,F))}})},css:function(E,F){if((E=="width"||E=="height")&&parseFloat(F)<0){F=g}return this.attr(E,F,"curCSS")},text:function(F){if(typeof F!=="object"&&F!=null){return this.empty().append((this[0]&&this[0].ownerDocument||document).createTextNode(F))}var E="";o.each(F||this,function(){o.each(this.childNodes,function(){if(this.nodeType!=8){E+=this.nodeType!=1?this.nodeValue:o.fn.text([this])}})});return E},wrapAll:function(E){if(this[0]){var F=o(E,this[0].ownerDocument).clone();if(this[0].parentNode){F.insertBefore(this[0])}F.map(function(){var G=this;while(G.firstChild){G=G.firstChild}return G}).append(this)}return this},wrapInner:function(E){return this.each(function(){o(this).contents().wrapAll(E)})},wrap:function(E){return this.each(function(){o(this).wrapAll(E)})},append:function(){return this.domManip(arguments,true,function(E){if(this.nodeType==1){this.appendChild(E)}})},prepend:function(){return this.domManip(arguments,true,function(E){if(this.nodeType==1){this.insertBefore(E,this.firstChild)}})},before:function(){return this.domManip(arguments,false,function(E){this.parentNode.insertBefore(E,this)})},after:function(){return this.domManip(arguments,false,function(E){this.parentNode.insertBefore(E,this.nextSibling)})},end:function(){return this.prevObject||o([])},push:[].push,sort:[].sort,splice:[].splice,find:function(E){if(this.length===1){var F=this.pushStack([],"find",E);F.length=0;o.find(E,this[0],F);return F}else{return this.pushStack(o.unique(o.map(this,function(G){return o.find(E,G)})),"find",E)}},clone:function(G){var E=this.map(function(){if(!o.support.noCloneEvent&&!o.isXMLDoc(this)){var I=this.outerHTML;if(!I){var J=this.ownerDocument.createElement("div");J.appendChild(this.cloneNode(true));I=J.innerHTML}return o.clean([I.replace(/ jQuery\d+="(?:\d+|null)"/g,"").replace(/^\s*/,"")])[0]}else{return this.cloneNode(true)}});if(G===true){var H=this.find("*").andSelf(),F=0;E.find("*").andSelf().each(function(){if(this.nodeName!==H[F].nodeName){return}var I=o.data(H[F],"events");for(var K in I){for(var J in I[K]){o.event.add(this,K,I[K][J],I[K][J].data)}}F++})}return E},filter:function(E){return this.pushStack(o.isFunction(E)&&o.grep(this,function(G,F){return E.call(G,F)})||o.multiFilter(E,o.grep(this,function(F){return F.nodeType===1})),"filter",E)},closest:function(E){var G=o.expr.match.POS.test(E)?o(E):null,F=0;return this.map(function(){var H=this;while(H&&H.ownerDocument){if(G?G.index(H)>-1:o(H).is(E)){o.data(H,"closest",F);return H}H=H.parentNode;F++}})},not:function(E){if(typeof E==="string"){if(f.test(E)){return this.pushStack(o.multiFilter(E,this,true),"not",E)}else{E=o.multiFilter(E,this)}}var F=E.length&&E[E.length-1]!==g&&!E.nodeType;return this.filter(function(){return F?o.inArray(this,E)<0:this!=E})},add:function(E){return this.pushStack(o.unique(o.merge(this.get(),typeof E==="string"?o(E):o.makeArray(E))))},is:function(E){return !!E&&o.multiFilter(E,this).length>0},hasClass:function(E){return !!E&&this.is("."+E)},val:function(K){if(K===g){var E=this[0];if(E){if(o.nodeName(E,"option")){return(E.attributes.value||{}).specified?E.value:E.text}if(o.nodeName(E,"select")){var I=E.selectedIndex,L=[],M=E.options,H=E.type=="select-one";if(I<0){return null}for(var F=H?I:0,J=H?I+1:M.length;F=0||o.inArray(this.name,K)>=0)}else{if(o.nodeName(this,"select")){var N=o.makeArray(K);o("option",this).each(function(){this.selected=(o.inArray(this.value,N)>=0||o.inArray(this.text,N)>=0)});if(!N.length){this.selectedIndex=-1}}else{this.value=K}}})},html:function(E){return E===g?(this[0]?this[0].innerHTML.replace(/ jQuery\d+="(?:\d+|null)"/g,""):null):this.empty().append(E)},replaceWith:function(E){return this.after(E).remove()},eq:function(E){return this.slice(E,+E+1)},slice:function(){return this.pushStack(Array.prototype.slice.apply(this,arguments),"slice",Array.prototype.slice.call(arguments).join(","))},map:function(E){return this.pushStack(o.map(this,function(G,F){return E.call(G,F,G)}))},andSelf:function(){return this.add(this.prevObject)},domManip:function(J,M,L){if(this[0]){var I=(this[0].ownerDocument||this[0]).createDocumentFragment(),F=o.clean(J,(this[0].ownerDocument||this[0]),I),H=I.firstChild;if(H){for(var G=0,E=this.length;G1||G>0?I.cloneNode(true):I)}}if(F){o.each(F,z)}}return this;function K(N,O){return M&&o.nodeName(N,"table")&&o.nodeName(O,"tr")?(N.getElementsByTagName("tbody")[0]||N.appendChild(N.ownerDocument.createElement("tbody"))):N}}};o.fn.init.prototype=o.fn;function z(E,F){if(F.src){o.ajax({url:F.src,async:false,dataType:"script"})}else{o.globalEval(F.text||F.textContent||F.innerHTML||"")}if(F.parentNode){F.parentNode.removeChild(F)}}function e(){return +new Date}o.extend=o.fn.extend=function(){var J=arguments[0]||{},H=1,I=arguments.length,E=false,G;if(typeof J==="boolean"){E=J;J=arguments[1]||{};H=2}if(typeof J!=="object"&&!o.isFunction(J)){J={}}if(I==H){J=this;--H}for(;H-1}},swap:function(H,G,I){var E={};for(var F in G){E[F]=H.style[F];H.style[F]=G[F]}I.call(H);for(var F in G){H.style[F]=E[F]}},css:function(H,F,J,E){if(F=="width"||F=="height"){var L,G={position:"absolute",visibility:"hidden",display:"block"},K=F=="width"?["Left","Right"]:["Top","Bottom"];function I(){L=F=="width"?H.offsetWidth:H.offsetHeight;if(E==="border"){return}o.each(K,function(){if(!E){L-=parseFloat(o.curCSS(H,"padding"+this,true))||0}if(E==="margin"){L+=parseFloat(o.curCSS(H,"margin"+this,true))||0}else{L-=parseFloat(o.curCSS(H,"border"+this+"Width",true))||0}})}if(H.offsetWidth!==0){I()}else{o.swap(H,G,I)}return Math.max(0,Math.round(L))}return o.curCSS(H,F,J)},curCSS:function(I,F,G){var L,E=I.style;if(F=="opacity"&&!o.support.opacity){L=o.attr(E,"opacity");return L==""?"1":L}if(F.match(/float/i)){F=w}if(!G&&E&&E[F]){L=E[F]}else{if(q.getComputedStyle){if(F.match(/float/i)){F="float"}F=F.replace(/([A-Z])/g,"-$1").toLowerCase();var M=q.getComputedStyle(I,null);if(M){L=M.getPropertyValue(F)}if(F=="opacity"&&L==""){L="1"}}else{if(I.currentStyle){var J=F.replace(/\-(\w)/g,function(N,O){return O.toUpperCase()});L=I.currentStyle[F]||I.currentStyle[J];if(!/^\d+(px)?$/i.test(L)&&/^\d/.test(L)){var H=E.left,K=I.runtimeStyle.left;I.runtimeStyle.left=I.currentStyle.left;E.left=L||0;L=E.pixelLeft+"px";E.left=H;I.runtimeStyle.left=K}}}}return L},clean:function(F,K,I){K=K||document;if(typeof K.createElement==="undefined"){K=K.ownerDocument||K[0]&&K[0].ownerDocument||document}if(!I&&F.length===1&&typeof F[0]==="string"){var H=/^<(\w+)\s*\/?>$/.exec(F[0]);if(H){return[K.createElement(H[1])]}}var G=[],E=[],L=K.createElement("div");o.each(F,function(P,S){if(typeof S==="number"){S+=""}if(!S){return}if(typeof S==="string"){S=S.replace(/(<(\w+)[^>]*?)\/>/g,function(U,V,T){return T.match(/^(abbr|br|col|img|input|link|meta|param|hr|area|embed)$/i)?U:V+">"});var O=S.replace(/^\s+/,"").substring(0,10).toLowerCase();var Q=!O.indexOf("",""]||!O.indexOf("",""]||O.match(/^<(thead|tbody|tfoot|colg|cap)/)&&[1,"","
"]||!O.indexOf("",""]||(!O.indexOf("",""]||!O.indexOf("",""]||!o.support.htmlSerialize&&[1,"div
","
"]||[0,"",""];L.innerHTML=Q[1]+S+Q[2];while(Q[0]--){L=L.lastChild}if(!o.support.tbody){var R=/"&&!R?L.childNodes:[];for(var M=N.length-1;M>=0;--M){if(o.nodeName(N[M],"tbody")&&!N[M].childNodes.length){N[M].parentNode.removeChild(N[M])}}}if(!o.support.leadingWhitespace&&/^\s/.test(S)){L.insertBefore(K.createTextNode(S.match(/^\s*/)[0]),L.firstChild)}S=o.makeArray(L.childNodes)}if(S.nodeType){G.push(S)}else{G=o.merge(G,S)}});if(I){for(var J=0;G[J];J++){if(o.nodeName(G[J],"script")&&(!G[J].type||G[J].type.toLowerCase()==="text/javascript")){E.push(G[J].parentNode?G[J].parentNode.removeChild(G[J]):G[J])}else{if(G[J].nodeType===1){G.splice.apply(G,[J+1,0].concat(o.makeArray(G[J].getElementsByTagName("script"))))}I.appendChild(G[J])}}return E}return G},attr:function(J,G,K){if(!J||J.nodeType==3||J.nodeType==8){return g}var H=!o.isXMLDoc(J),L=K!==g;G=H&&o.props[G]||G;if(J.tagName){var F=/href|src|style/.test(G);if(G=="selected"&&J.parentNode){J.parentNode.selectedIndex}if(G in J&&H&&!F){if(L){if(G=="type"&&o.nodeName(J,"input")&&J.parentNode){throw"type property can't be changed"}J[G]=K}if(o.nodeName(J,"form")&&J.getAttributeNode(G)){return J.getAttributeNode(G).nodeValue}if(G=="tabIndex"){var I=J.getAttributeNode("tabIndex");return I&&I.specified?I.value:J.nodeName.match(/(button|input|object|select|textarea)/i)?0:J.nodeName.match(/^(a|area)$/i)&&J.href?0:g}return J[G]}if(!o.support.style&&H&&G=="style"){return o.attr(J.style,"cssText",K)}if(L){J.setAttribute(G,""+K)}var E=!o.support.hrefNormalized&&H&&F?J.getAttribute(G,2):J.getAttribute(G);return E===null?g:E}if(!o.support.opacity&&G=="opacity"){if(L){J.zoom=1;J.filter=(J.filter||"").replace(/alpha\([^)]*\)/,"")+(parseInt(K)+""=="NaN"?"":"alpha(opacity="+K*100+")")}return J.filter&&J.filter.indexOf("opacity=")>=0?(parseFloat(J.filter.match(/opacity=([^)]*)/)[1])/100)+"":""}G=G.replace(/-([a-z])/ig,function(M,N){return N.toUpperCase()});if(L){J[G]=K}return J[G]},trim:function(E){return(E||"").replace(/^\s+|\s+$/g,"")},makeArray:function(G){var E=[];if(G!=null){var F=G.length;if(F==null||typeof G==="string"||o.isFunction(G)||G.setInterval){E[0]=G}else{while(F){E[--F]=G[F]}}}return E},inArray:function(G,H){for(var E=0,F=H.length;E0?this.clone(true):this).get();o.fn[F].apply(o(L[K]),I);J=J.concat(I)}return this.pushStack(J,E,G)}});o.each({removeAttr:function(E){o.attr(this,E,"");if(this.nodeType==1){this.removeAttribute(E)}},addClass:function(E){o.className.add(this,E)},removeClass:function(E){o.className.remove(this,E)},toggleClass:function(F,E){if(typeof E!=="boolean"){E=!o.className.has(this,F)}o.className[E?"add":"remove"](this,F)},remove:function(E){if(!E||o.filter(E,[this]).length){o("*",this).add([this]).each(function(){o.event.remove(this);o.removeData(this)});if(this.parentNode){this.parentNode.removeChild(this)}}},empty:function(){o(this).children().remove();while(this.firstChild){this.removeChild(this.firstChild)}}},function(E,F){o.fn[E]=function(){return this.each(F,arguments)}});function j(E,F){return E[0]&&parseInt(o.curCSS(E[0],F,true),10)||0}var h="jQuery"+e(),v=0,A={};o.extend({cache:{},data:function(F,E,G){F=F==l?A:F;var H=F[h];if(!H){H=F[h]=++v}if(E&&!o.cache[H]){o.cache[H]={}}if(G!==g){o.cache[H][E]=G}return E?o.cache[H][E]:H},removeData:function(F,E){F=F==l?A:F;var H=F[h];if(E){if(o.cache[H]){delete o.cache[H][E];E="";for(E in o.cache[H]){break}if(!E){o.removeData(F)}}}else{try{delete F[h]}catch(G){if(F.removeAttribute){F.removeAttribute(h)}}delete o.cache[H]}},queue:function(F,E,H){if(F){E=(E||"fx")+"queue";var G=o.data(F,E);if(!G||o.isArray(H)){G=o.data(F,E,o.makeArray(H))}else{if(H){G.push(H)}}}return G},dequeue:function(H,G){var E=o.queue(H,G),F=E.shift();if(!G||G==="fx"){F=E[0]}if(F!==g){F.call(H)}}});o.fn.extend({data:function(E,G){var H=E.split(".");H[1]=H[1]?"."+H[1]:"";if(G===g){var F=this.triggerHandler("getData"+H[1]+"!",[H[0]]);if(F===g&&this.length){F=o.data(this[0],E)}return F===g&&H[1]?this.data(H[0]):F}else{return this.trigger("setData"+H[1]+"!",[H[0],G]).each(function(){o.data(this,E,G)})}},removeData:function(E){return this.each(function(){o.removeData(this,E)})},queue:function(E,F){if(typeof E!=="string"){F=E;E="fx"}if(F===g){return o.queue(this[0],E)}return this.each(function(){var G=o.queue(this,E,F);if(E=="fx"&&G.length==1){G[0].call(this)}})},dequeue:function(E){return this.each(function(){o.dequeue(this,E)})}}); +/* + * Sizzle CSS Selector Engine - v0.9.3 + * Copyright 2009, The Dojo Foundation + * Released under the MIT, BSD, and GPL Licenses. + * More information: http://sizzlejs.com/ + */ +(function(){var R=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^[\]]*\]|['"][^'"]*['"]|[^[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?/g,L=0,H=Object.prototype.toString;var F=function(Y,U,ab,ac){ab=ab||[];U=U||document;if(U.nodeType!==1&&U.nodeType!==9){return[]}if(!Y||typeof Y!=="string"){return ab}var Z=[],W,af,ai,T,ad,V,X=true;R.lastIndex=0;while((W=R.exec(Y))!==null){Z.push(W[1]);if(W[2]){V=RegExp.rightContext;break}}if(Z.length>1&&M.exec(Y)){if(Z.length===2&&I.relative[Z[0]]){af=J(Z[0]+Z[1],U)}else{af=I.relative[Z[0]]?[U]:F(Z.shift(),U);while(Z.length){Y=Z.shift();if(I.relative[Y]){Y+=Z.shift()}af=J(Y,af)}}}else{var ae=ac?{expr:Z.pop(),set:E(ac)}:F.find(Z.pop(),Z.length===1&&U.parentNode?U.parentNode:U,Q(U));af=F.filter(ae.expr,ae.set);if(Z.length>0){ai=E(af)}else{X=false}while(Z.length){var ah=Z.pop(),ag=ah;if(!I.relative[ah]){ah=""}else{ag=Z.pop()}if(ag==null){ag=U}I.relative[ah](ai,ag,Q(U))}}if(!ai){ai=af}if(!ai){throw"Syntax error, unrecognized expression: "+(ah||Y)}if(H.call(ai)==="[object Array]"){if(!X){ab.push.apply(ab,ai)}else{if(U.nodeType===1){for(var aa=0;ai[aa]!=null;aa++){if(ai[aa]&&(ai[aa]===true||ai[aa].nodeType===1&&K(U,ai[aa]))){ab.push(af[aa])}}}else{for(var aa=0;ai[aa]!=null;aa++){if(ai[aa]&&ai[aa].nodeType===1){ab.push(af[aa])}}}}}else{E(ai,ab)}if(V){F(V,U,ab,ac);if(G){hasDuplicate=false;ab.sort(G);if(hasDuplicate){for(var aa=1;aa":function(Z,U,aa){var X=typeof U==="string";if(X&&!/\W/.test(U)){U=aa?U:U.toUpperCase();for(var V=0,T=Z.length;V=0)){if(!V){T.push(Y)}}else{if(V){U[X]=false}}}}return false},ID:function(T){return T[1].replace(/\\/g,"")},TAG:function(U,T){for(var V=0;T[V]===false;V++){}return T[V]&&Q(T[V])?U[1]:U[1].toUpperCase()},CHILD:function(T){if(T[1]=="nth"){var U=/(-?)(\d*)n((?:\+|-)?\d*)/.exec(T[2]=="even"&&"2n"||T[2]=="odd"&&"2n+1"||!/\D/.test(T[2])&&"0n+"+T[2]||T[2]);T[2]=(U[1]+(U[2]||1))-0;T[3]=U[3]-0}T[0]=L++;return T},ATTR:function(X,U,V,T,Y,Z){var W=X[1].replace(/\\/g,"");if(!Z&&I.attrMap[W]){X[1]=I.attrMap[W]}if(X[2]==="~="){X[4]=" "+X[4]+" "}return X},PSEUDO:function(X,U,V,T,Y){if(X[1]==="not"){if(X[3].match(R).length>1||/^\w/.test(X[3])){X[3]=F(X[3],null,null,U)}else{var W=F.filter(X[3],U,V,true^Y);if(!V){T.push.apply(T,W)}return false}}else{if(I.match.POS.test(X[0])||I.match.CHILD.test(X[0])){return true}}return X},POS:function(T){T.unshift(true);return T}},filters:{enabled:function(T){return T.disabled===false&&T.type!=="hidden"},disabled:function(T){return T.disabled===true},checked:function(T){return T.checked===true},selected:function(T){T.parentNode.selectedIndex;return T.selected===true},parent:function(T){return !!T.firstChild},empty:function(T){return !T.firstChild},has:function(V,U,T){return !!F(T[3],V).length},header:function(T){return/h\d/i.test(T.nodeName)},text:function(T){return"text"===T.type},radio:function(T){return"radio"===T.type},checkbox:function(T){return"checkbox"===T.type},file:function(T){return"file"===T.type},password:function(T){return"password"===T.type},submit:function(T){return"submit"===T.type},image:function(T){return"image"===T.type},reset:function(T){return"reset"===T.type},button:function(T){return"button"===T.type||T.nodeName.toUpperCase()==="BUTTON"},input:function(T){return/input|select|textarea|button/i.test(T.nodeName)}},setFilters:{first:function(U,T){return T===0},last:function(V,U,T,W){return U===W.length-1},even:function(U,T){return T%2===0},odd:function(U,T){return T%2===1},lt:function(V,U,T){return UT[3]-0},nth:function(V,U,T){return T[3]-0==U},eq:function(V,U,T){return T[3]-0==U}},filter:{PSEUDO:function(Z,V,W,aa){var U=V[1],X=I.filters[U];if(X){return X(Z,W,V,aa)}else{if(U==="contains"){return(Z.textContent||Z.innerText||"").indexOf(V[3])>=0}else{if(U==="not"){var Y=V[3];for(var W=0,T=Y.length;W=0)}}},ID:function(U,T){return U.nodeType===1&&U.getAttribute("id")===T},TAG:function(U,T){return(T==="*"&&U.nodeType===1)||U.nodeName===T},CLASS:function(U,T){return(" "+(U.className||U.getAttribute("class"))+" ").indexOf(T)>-1},ATTR:function(Y,W){var V=W[1],T=I.attrHandle[V]?I.attrHandle[V](Y):Y[V]!=null?Y[V]:Y.getAttribute(V),Z=T+"",X=W[2],U=W[4];return T==null?X==="!=":X==="="?Z===U:X==="*="?Z.indexOf(U)>=0:X==="~="?(" "+Z+" ").indexOf(U)>=0:!U?Z&&T!==false:X==="!="?Z!=U:X==="^="?Z.indexOf(U)===0:X==="$="?Z.substr(Z.length-U.length)===U:X==="|="?Z===U||Z.substr(0,U.length+1)===U+"-":false},POS:function(X,U,V,Y){var T=U[2],W=I.setFilters[T];if(W){return W(X,V,U,Y)}}}};var M=I.match.POS;for(var O in I.match){I.match[O]=RegExp(I.match[O].source+/(?![^\[]*\])(?![^\(]*\))/.source)}var E=function(U,T){U=Array.prototype.slice.call(U);if(T){T.push.apply(T,U);return T}return U};try{Array.prototype.slice.call(document.documentElement.childNodes)}catch(N){E=function(X,W){var U=W||[];if(H.call(X)==="[object Array]"){Array.prototype.push.apply(U,X)}else{if(typeof X.length==="number"){for(var V=0,T=X.length;V";var T=document.documentElement;T.insertBefore(U,T.firstChild);if(!!document.getElementById(V)){I.find.ID=function(X,Y,Z){if(typeof Y.getElementById!=="undefined"&&!Z){var W=Y.getElementById(X[1]);return W?W.id===X[1]||typeof W.getAttributeNode!=="undefined"&&W.getAttributeNode("id").nodeValue===X[1]?[W]:g:[]}};I.filter.ID=function(Y,W){var X=typeof Y.getAttributeNode!=="undefined"&&Y.getAttributeNode("id");return Y.nodeType===1&&X&&X.nodeValue===W}}T.removeChild(U)})();(function(){var T=document.createElement("div");T.appendChild(document.createComment(""));if(T.getElementsByTagName("*").length>0){I.find.TAG=function(U,Y){var X=Y.getElementsByTagName(U[1]);if(U[1]==="*"){var W=[];for(var V=0;X[V];V++){if(X[V].nodeType===1){W.push(X[V])}}X=W}return X}}T.innerHTML="";if(T.firstChild&&typeof T.firstChild.getAttribute!=="undefined"&&T.firstChild.getAttribute("href")!=="#"){I.attrHandle.href=function(U){return U.getAttribute("href",2)}}})();if(document.querySelectorAll){(function(){var T=F,U=document.createElement("div");U.innerHTML="

";if(U.querySelectorAll&&U.querySelectorAll(".TEST").length===0){return}F=function(Y,X,V,W){X=X||document;if(!W&&X.nodeType===9&&!Q(X)){try{return E(X.querySelectorAll(Y),V)}catch(Z){}}return T(Y,X,V,W)};F.find=T.find;F.filter=T.filter;F.selectors=T.selectors;F.matches=T.matches})()}if(document.getElementsByClassName&&document.documentElement.getElementsByClassName){(function(){var T=document.createElement("div");T.innerHTML="
";if(T.getElementsByClassName("e").length===0){return}T.lastChild.className="e";if(T.getElementsByClassName("e").length===1){return}I.order.splice(1,0,"CLASS");I.find.CLASS=function(U,V,W){if(typeof V.getElementsByClassName!=="undefined"&&!W){return V.getElementsByClassName(U[1])}}})()}function P(U,Z,Y,ad,aa,ac){var ab=U=="previousSibling"&&!ac;for(var W=0,V=ad.length;W0){X=T;break}}}T=T[U]}ad[W]=X}}}var K=document.compareDocumentPosition?function(U,T){return U.compareDocumentPosition(T)&16}:function(U,T){return U!==T&&(U.contains?U.contains(T):true)};var Q=function(T){return T.nodeType===9&&T.documentElement.nodeName!=="HTML"||!!T.ownerDocument&&Q(T.ownerDocument)};var J=function(T,aa){var W=[],X="",Y,V=aa.nodeType?[aa]:aa;while((Y=I.match.PSEUDO.exec(T))){X+=Y[0];T=T.replace(I.match.PSEUDO,"")}T=I.relative[T]?T+"*":T;for(var Z=0,U=V.length;Z0||T.offsetHeight>0};F.selectors.filters.animated=function(T){return o.grep(o.timers,function(U){return T===U.elem}).length};o.multiFilter=function(V,T,U){if(U){V=":not("+V+")"}return F.matches(V,T)};o.dir=function(V,U){var T=[],W=V[U];while(W&&W!=document){if(W.nodeType==1){T.push(W)}W=W[U]}return T};o.nth=function(X,T,V,W){T=T||1;var U=0;for(;X;X=X[V]){if(X.nodeType==1&&++U==T){break}}return X};o.sibling=function(V,U){var T=[];for(;V;V=V.nextSibling){if(V.nodeType==1&&V!=U){T.push(V)}}return T};return;l.Sizzle=F})();o.event={add:function(I,F,H,K){if(I.nodeType==3||I.nodeType==8){return}if(I.setInterval&&I!=l){I=l}if(!H.guid){H.guid=this.guid++}if(K!==g){var G=H;H=this.proxy(G);H.data=K}var E=o.data(I,"events")||o.data(I,"events",{}),J=o.data(I,"handle")||o.data(I,"handle",function(){return typeof o!=="undefined"&&!o.event.triggered?o.event.handle.apply(arguments.callee.elem,arguments):g});J.elem=I;o.each(F.split(/\s+/),function(M,N){var O=N.split(".");N=O.shift();H.type=O.slice().sort().join(".");var L=E[N];if(o.event.specialAll[N]){o.event.specialAll[N].setup.call(I,K,O)}if(!L){L=E[N]={};if(!o.event.special[N]||o.event.special[N].setup.call(I,K,O)===false){if(I.addEventListener){I.addEventListener(N,J,false)}else{if(I.attachEvent){I.attachEvent("on"+N,J)}}}}L[H.guid]=H;o.event.global[N]=true});I=null},guid:1,global:{},remove:function(K,H,J){if(K.nodeType==3||K.nodeType==8){return}var G=o.data(K,"events"),F,E;if(G){if(H===g||(typeof H==="string"&&H.charAt(0)==".")){for(var I in G){this.remove(K,I+(H||""))}}else{if(H.type){J=H.handler;H=H.type}o.each(H.split(/\s+/),function(M,O){var Q=O.split(".");O=Q.shift();var N=RegExp("(^|\\.)"+Q.slice().sort().join(".*\\.")+"(\\.|$)");if(G[O]){if(J){delete G[O][J.guid]}else{for(var P in G[O]){if(N.test(G[O][P].type)){delete G[O][P]}}}if(o.event.specialAll[O]){o.event.specialAll[O].teardown.call(K,Q)}for(F in G[O]){break}if(!F){if(!o.event.special[O]||o.event.special[O].teardown.call(K,Q)===false){if(K.removeEventListener){K.removeEventListener(O,o.data(K,"handle"),false)}else{if(K.detachEvent){K.detachEvent("on"+O,o.data(K,"handle"))}}}F=null;delete G[O]}}})}for(F in G){break}if(!F){var L=o.data(K,"handle");if(L){L.elem=null}o.removeData(K,"events");o.removeData(K,"handle")}}},trigger:function(I,K,H,E){var G=I.type||I;if(!E){I=typeof I==="object"?I[h]?I:o.extend(o.Event(G),I):o.Event(G);if(G.indexOf("!")>=0) +{I.type=G=G.slice(0,-1);I.exclusive=true}if(!H){I.stopPropagation();if(this.global[G]){o.each(o.cache,function(){if(this.events&&this.events[G]){o.event.trigger(I,K,this.handle.elem)}})}}if(!H||H.nodeType==3||H.nodeType==8){return g}I.result=g;I.target=H;K=o.makeArray(K);K.unshift(I)}I.currentTarget=H;var J=o.data(H,"handle");if(J){J.apply(H,K)}if((!H[G]||(o.nodeName(H,"a")&&G=="click"))&&H["on"+G]&&H["on"+G].apply(H,K)===false){I.result=false}if(!E&&H[G]&&!I.isDefaultPrevented()&&!(o.nodeName(H,"a")&&G=="click")){this.triggered=true;try{H[G]()}catch(L){}}this.triggered=false;if(!I.isPropagationStopped()){var F=H.parentNode||H.ownerDocument;if(F){o.event.trigger(I,K,F,true)}}},handle:function(K){var J,E;K=arguments[0]=o.event.fix(K||l.event);K.currentTarget=this;var L=K.type.split(".");K.type=L.shift();J=!L.length&&!K.exclusive;var I=RegExp("(^|\\.)"+L.slice().sort().join(".*\\.")+"(\\.|$)");E=(o.data(this,"events")||{})[K.type];for(var G in E){var H=E[G];if(J||I.test(H.type)){K.handler=H;K.data=H.data;var F=H.apply(this,arguments);if(F!==g){K.result=F;if(F===false){K.preventDefault();K.stopPropagation()}}if(K.isImmediatePropagationStopped()){break}}}},props:"altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode metaKey newValue originalTarget pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target toElement view wheelDelta which".split(" "),fix:function(H){if(H[h]){return H}var F=H;H=o.Event(F);for(var G=this.props.length,J;G;){J=this.props[--G];H[J]=F[J]}if(!H.target){H.target=H.srcElement||document}if(H.target.nodeType==3){H.target=H.target.parentNode}if(!H.relatedTarget&&H.fromElement){H.relatedTarget=H.fromElement==H.target?H.toElement:H.fromElement}if(H.pageX==null&&H.clientX!=null){var I=document.documentElement,E=document.body;H.pageX=H.clientX+(I&&I.scrollLeft||E&&E.scrollLeft||0)-(I.clientLeft||0);H.pageY=H.clientY+(I&&I.scrollTop||E&&E.scrollTop||0)-(I.clientTop||0)}if(!H.which&&((H.charCode||H.charCode===0)?H.charCode:H.keyCode)){H.which=H.charCode||H.keyCode}if(!H.metaKey&&H.ctrlKey){H.metaKey=H.ctrlKey}if(!H.which&&H.button){H.which=(H.button&1?1:(H.button&2?3:(H.button&4?2:0)))}return H},proxy:function(F,E){E=E||function(){return F.apply(this,arguments)};E.guid=F.guid=F.guid||E.guid||this.guid++;return E},special:{ready:{setup:B,teardown:function(){}}},specialAll:{live:{setup:function(E,F){o.event.add(this,F[0],c)},teardown:function(G){if(G.length){var E=0,F=RegExp("(^|\\.)"+G[0]+"(\\.|$)");o.each((o.data(this,"events").live||{}),function(){if(F.test(this.type)){E++}});if(E<1){o.event.remove(this,G[0],c)}}}}}};o.Event=function(E){if(!this.preventDefault){return new o.Event(E)}if(E&&E.type){this.originalEvent=E;this.type=E.type}else{this.type=E}this.timeStamp=e();this[h]=true};function k(){return false}function u(){return true}o.Event.prototype={preventDefault:function(){this.isDefaultPrevented=u;var E=this.originalEvent;if(!E){return}if(E.preventDefault){E.preventDefault()}E.returnValue=false},stopPropagation:function(){this.isPropagationStopped=u;var E=this.originalEvent;if(!E){return}if(E.stopPropagation){E.stopPropagation()}E.cancelBubble=true},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=u;this.stopPropagation()},isDefaultPrevented:k,isPropagationStopped:k,isImmediatePropagationStopped:k};var a=function(F){var E=F.relatedTarget;while(E&&E!=this){try{E=E.parentNode}catch(G){E=this}}if(E!=this){F.type=F.data;o.event.handle.apply(this,arguments)}};o.each({mouseover:"mouseenter",mouseout:"mouseleave"},function(F,E){o.event.special[E]={setup:function(){o.event.add(this,F,a,E)},teardown:function(){o.event.remove(this,F,a)}}});o.fn.extend({bind:function(F,G,E){return F=="unload"?this.one(F,G,E):this.each(function(){o.event.add(this,F,E||G,E&&G)})},one:function(G,H,F){var E=o.event.proxy(F||H,function(I){o(this).unbind(I,E);return(F||H).apply(this,arguments)});return this.each(function(){o.event.add(this,G,E,F&&H)})},unbind:function(F,E){return this.each(function(){o.event.remove(this,F,E)})},trigger:function(E,F){return this.each(function(){o.event.trigger(E,F,this)})},triggerHandler:function(E,G){if(this[0]){var F=o.Event(E);F.preventDefault();F.stopPropagation();o.event.trigger(F,G,this[0]);return F.result}},toggle:function(G){var E=arguments,F=1;while(F=0){var E=G.slice(I,G.length);G=G.slice(0,I)}var H="GET";if(J){if(o.isFunction(J)){K=J;J=null}else{if(typeof J==="object"){J=o.param(J);H="POST"}}}var F=this;o.ajax({url:G,type:H,dataType:"html",data:J,complete:function(M,L){if(L=="success"||L=="notmodified"){F.html(E?o("
").append(M.responseText.replace(//g,"")).find(E):M.responseText)}if(K){F.each(K,[M.responseText,L,M])}}});return this},serialize:function(){return o.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?o.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||/select|textarea/i.test(this.nodeName)||/text|hidden|password|search/i.test(this.type))}).map(function(E,F){var G=o(this).val();return G==null?null:o.isArray(G)?o.map(G,function(I,H){return{name:F.name,value:I}}):{name:F.name,value:G}}).get()}});o.each("ajaxStart,ajaxStop,ajaxComplete,ajaxError,ajaxSuccess,ajaxSend".split(","),function(E,F){o.fn[F]=function(G){return this.bind(F,G)}});var r=e();o.extend({get:function(E,G,H,F){if(o.isFunction(G)){H=G;G=null}return o.ajax({type:"GET",url:E,data:G,success:H,dataType:F})},getScript:function(E,F){return o.get(E,null,F,"script")},getJSON:function(E,F,G){return o.get(E,F,G,"json")},post:function(E,G,H,F){if(o.isFunction(G)){H=G;G={}}return o.ajax({type:"POST",url:E,data:G,success:H,dataType:F})},ajaxSetup:function(E){o.extend(o.ajaxSettings,E)},ajaxSettings:{url:location.href,global:true,type:"GET",contentType:"application/x-www-form-urlencoded",processData:true,async:true,xhr:function(){return l.ActiveXObject?new ActiveXObject("Microsoft.XMLHTTP"):new XMLHttpRequest()},accepts:{xml:"application/xml, text/xml",html:"text/html",script:"text/javascript, application/javascript",json:"application/json, text/javascript",text:"text/plain",_default:"*/*"}},lastModified:{},ajax:function(M){M=o.extend(true,M,o.extend(true,{},o.ajaxSettings,M));var W,F=/=\?(&|$)/g,R,V,G=M.type.toUpperCase();if(M.data&&M.processData&&typeof M.data!=="string"){M.data=o.param(M.data)}if(M.dataType=="jsonp"){if(G=="GET"){if(!M.url.match(F)){M.url+=(M.url.match(/\?/)?"&":"?")+(M.jsonp||"callback")+"=?"}}else{if(!M.data||!M.data.match(F)){M.data=(M.data?M.data+"&":"")+(M.jsonp||"callback")+"=?"}}M.dataType="json"}if(M.dataType=="json"&&(M.data&&M.data.match(F)||M.url.match(F))){W="jsonp"+r++;if(M.data){M.data=(M.data+"").replace(F,"="+W+"$1")}M.url=M.url.replace(F,"="+W+"$1");M.dataType="script";l[W]=function(X){V=X;I();L();l[W]=g;try{delete l[W]}catch(Y){}if(H){H.removeChild(T)}}}if(M.dataType=="script"&&M.cache==null){M.cache=false}if(M.cache===false&&G=="GET"){var E=e();var U=M.url.replace(/(\?|&)_=.*?(&|$)/,"$1_="+E+"$2");M.url=U+((U==M.url)?(M.url.match(/\?/)?"&":"?")+"_="+E:"")}if(M.data&&G=="GET"){M.url+=(M.url.match(/\?/)?"&":"?")+M.data;M.data=null}if(M.global&&!o.active++){o.event.trigger("ajaxStart")}var Q=/^(\w+:)?\/\/([^\/?#]+)/.exec(M.url);if(M.dataType=="script"&&G=="GET"&&Q&&(Q[1]&&Q[1]!=location.protocol||Q[2]!=location.host)){var H=document.getElementsByTagName("head")[0];var T=document.createElement("script");T.src=M.url;if(M.scriptCharset){T.charset=M.scriptCharset}if(!W){var O=false;T.onload=T.onreadystatechange=function(){if(!O&&(!this.readyState||this.readyState=="loaded"||this.readyState=="complete")){O=true;I();L();T.onload=T.onreadystatechange=null;H.removeChild(T)}}}H.appendChild(T);return g}var K=false;var J=M.xhr();if(M.username){J.open(G,M.url,M.async,M.username,M.password)}else{J.open(G,M.url,M.async)}try{if(M.data){J.setRequestHeader("Content-Type",M.contentType)}if(M.ifModified){J.setRequestHeader("If-Modified-Since",o.lastModified[M.url]||"Thu, 01 Jan 1970 00:00:00 GMT")}J.setRequestHeader("X-Requested-With","XMLHttpRequest");J.setRequestHeader("Accept",M.dataType&&M.accepts[M.dataType]?M.accepts[M.dataType]+", */*":M.accepts._default)}catch(S){}if(M.beforeSend&&M.beforeSend(J,M)===false){if(M.global&&!--o.active){o.event.trigger("ajaxStop")}J.abort();return false}if(M.global){o.event.trigger("ajaxSend",[J,M])}var N=function(X){if(J.readyState==0){if(P){clearInterval(P);P=null;if(M.global&&!--o.active){o.event.trigger("ajaxStop")}}}else{if(!K&&J&&(J.readyState==4||X=="timeout")){K=true;if(P){clearInterval(P);P=null}R=X=="timeout"?"timeout":!o.httpSuccess(J)?"error":M.ifModified&&o.httpNotModified(J,M.url)?"notmodified":"success";if(R=="success"){try{V=o.httpData(J,M.dataType,M)}catch(Z){R="parsererror"}}if(R=="success"){var Y;try{Y=J.getResponseHeader("Last-Modified")}catch(Z){}if(M.ifModified&&Y){o.lastModified[M.url]=Y}if(!W){I()}}else{o.handleError(M,J,R)}L();if(X){J.abort()}if(M.async){J=null}}}};if(M.async){var P=setInterval(N,13);if(M.timeout>0){setTimeout(function(){if(J&&!K){N("timeout")}},M.timeout)}}try{J.send(M.data)}catch(S){o.handleError(M,J,null,S)}if(!M.async){N()}function I(){if(M.success){M.success(V,R)}if(M.global){o.event.trigger("ajaxSuccess",[J,M])}}function L(){if(M.complete){M.complete(J,R)}if(M.global){o.event.trigger("ajaxComplete",[J,M])}if(M.global&&!--o.active){o.event.trigger("ajaxStop")}}return J},handleError:function(F,H,E,G){if(F.error){F.error(H,E,G)}if(F.global){o.event.trigger("ajaxError",[H,F,G])}},active:0,httpSuccess:function(F){try{return !F.status&&location.protocol=="file:"||(F.status>=200&&F.status<300)||F.status==304||F.status==1223}catch(E){}return false},httpNotModified:function(G,E){try{var H=G.getResponseHeader("Last-Modified");return G.status==304||H==o.lastModified[E]}catch(F){}return false},httpData:function(J,H,G){var F=J.getResponseHeader("content-type"),E=H=="xml"||!H&&F&&F.indexOf("xml")>=0,I=E?J.responseXML:J.responseText;if(E&&I.documentElement.tagName=="parsererror"){throw"parsererror"}if(G&&G.dataFilter){I=G.dataFilter(I,H)}if(typeof I==="string"){if(H=="script"){o.globalEval(I)}if(H=="json"){I=l["eval"]("("+I+")")}}return I},param:function(E){var G=[];function H(I,J){G[G.length]=encodeURIComponent(I)+"="+encodeURIComponent(J)}if(o.isArray(E)||E.jquery){o.each(E,function(){H(this.name,this.value)})}else{for(var F in E){if(o.isArray(E[F])){o.each(E[F],function(){H(F,this)})}else{H(F,o.isFunction(E[F])?E[F]():E[F])}}}return G.join("&").replace(/%20/g,"+")}});var m={},n,d=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]];function t(F,E){var G={};o.each(d.concat.apply([],d.slice(0,E)),function() +{G[this]=F});return G}o.fn.extend({show:function(J,L){if(J){return this.animate(t("show",3),J,L)}else{for(var H=0,F=this.length;H").appendTo("body");K=I.css("display");if(K==="none"){K="block"}I.remove();m[G]=K}o.data(this[H],"olddisplay",K)}}for(var H=0,F=this.length;H=0;H--){if(G[H].elem==this){if(E){G[H](true)}G.splice(H,1)}}});if(!E){this.dequeue()}return this}});o.each({slideDown:t("show",1),slideUp:t("hide",1),slideToggle:t("toggle",1),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"}},function(E,F){o.fn[E]=function(G,H){return this.animate(F,G,H)}});o.extend({speed:function(G,H,F){var E=typeof G==="object"?G:{complete:F||!F&&H||o.isFunction(G)&&G,duration:G,easing:F&&H||H&&!o.isFunction(H)&&H};E.duration=o.fx.off?0:typeof E.duration==="number"?E.duration:o.fx.speeds[E.duration]||o.fx.speeds._default;E.old=E.complete;E.complete=function(){if(E.queue!==false){o(this).dequeue()}if(o.isFunction(E.old)){E.old.call(this)}};return E},easing:{linear:function(G,H,E,F){return E+F*G},swing:function(G,H,E,F){return((-Math.cos(G*Math.PI)/2)+0.5)*F+E}},timers:[],fx:function(F,E,G){this.options=E;this.elem=F;this.prop=G;if(!E.orig){E.orig={}}}});o.fx.prototype={update:function(){if(this.options.step){this.options.step.call(this.elem,this.now,this)}(o.fx.step[this.prop]||o.fx.step._default)(this);if((this.prop=="height"||this.prop=="width")&&this.elem.style){this.elem.style.display="block"}},cur:function(F){if(this.elem[this.prop]!=null&&(!this.elem.style||this.elem.style[this.prop]==null)){return this.elem[this.prop]}var E=parseFloat(o.css(this.elem,this.prop,F));return E&&E>-10000?E:parseFloat(o.curCSS(this.elem,this.prop))||0},custom:function(I,H,G){this.startTime=e();this.start=I;this.end=H;this.unit=G||this.unit||"px";this.now=this.start;this.pos=this.state=0;var E=this;function F(J){return E.step(J)}F.elem=this.elem;if(F()&&o.timers.push(F)&&!n){n=setInterval(function(){var K=o.timers;for(var J=0;J=this.options.duration+this.startTime){this.now=this.end;this.pos=this.state=1;this.update();this.options.curAnim[this.prop]=true;var E=true;for(var F in this.options.curAnim){if(this.options.curAnim[F]!==true){E=false}}if(E){if(this.options.display!=null){this.elem.style.overflow=this.options.overflow;this.elem.style.display=this.options.display;if(o.css(this.elem,"display")=="none"){this.elem.style.display="block"}}if(this.options.hide){o(this.elem).hide()}if(this.options.hide||this.options.show){for(var I in this.options.curAnim){o.attr(this.elem.style,I,this.options.orig[I])}}this.options.complete.call(this.elem)}return false}else{var J=G-this.startTime;this.state=J/this.options.duration;this.pos=o.easing[this.options.easing||(o.easing.swing?"swing":"linear")](this.state,J,0,1,this.options.duration);this.now=this.start+((this.end-this.start)*this.pos);this.update()}return true}};o.extend(o.fx,{speeds:{slow:600,fast:200,_default:400},step:{opacity:function(E){o.attr(E.elem.style,"opacity",E.now)},_default:function(E){if(E.elem.style&&E.elem.style[E.prop]!=null){E.elem.style[E.prop]=E.now+E.unit}else{E.elem[E.prop]=E.now}}}});if(document.documentElement.getBoundingClientRect){o.fn.offset=function(){if(!this[0]){return{top:0,left:0}}if(this[0]===this[0].ownerDocument.body){return o.offset.bodyOffset(this[0])}var G=this[0].getBoundingClientRect(),J=this[0].ownerDocument,F=J.body,E=J.documentElement,L=E.clientTop||F.clientTop||0,K=E.clientLeft||F.clientLeft||0,I=G.top+(self.pageYOffset||o.boxModel&&E.scrollTop||F.scrollTop)-L,H=G.left+(self.pageXOffset||o.boxModel&&E.scrollLeft||F.scrollLeft)-K;return{top:I,left:H}}}else{o.fn.offset=function(){if(!this[0]){return{top:0,left:0}}if(this[0]===this[0].ownerDocument.body){return o.offset.bodyOffset(this[0])}o.offset.initialized||o.offset.initialize();var J=this[0],G=J.offsetParent,F=J,O=J.ownerDocument,M,H=O.documentElement,K=O.body,L=O.defaultView,E=L.getComputedStyle(J,null),N=J.offsetTop,I=J.offsetLeft;while((J=J.parentNode)&&J!==K&&J!==H){M=L.getComputedStyle(J,null);N-=J.scrollTop,I-=J.scrollLeft;if(J===G){N+=J.offsetTop,I+=J.offsetLeft;if(o.offset.doesNotAddBorder&&!(o.offset.doesAddBorderForTableAndCells&&/^t(able|d|h)$/i.test(J.tagName))){N+=parseInt(M.borderTopWidth,10)||0,I+=parseInt(M.borderLeftWidth,10)||0}F=G,G=J.offsetParent}if(o.offset.subtractsBorderForOverflowNotVisible&&M.overflow!=="visible"){N+=parseInt(M.borderTopWidth,10)||0,I+=parseInt(M.borderLeftWidth,10)||0}E=M}if(E.position==="relative"||E.position==="static"){N+=K.offsetTop,I+=K.offsetLeft}if(E.position==="fixed"){N+=Math.max(H.scrollTop,K.scrollTop),I+=Math.max(H.scrollLeft,K.scrollLeft)}return{top:N,left:I}}}o.offset={initialize:function(){if(this.initialized){return}var L=document.body,F=document.createElement("div"),H,G,N,I,M,E,J=L.style.marginTop,K='
';M={position:"absolute",top:0,left:0,margin:0,border:0,width:"1px",height:"1px",visibility:"hidden"};for(E in M){F.style[E]=M[E]}F.innerHTML=K;L.insertBefore(F,L.firstChild);H=F.firstChild,G=H.firstChild,I=H.nextSibling.firstChild.firstChild;this.doesNotAddBorder=(G.offsetTop!==5);this.doesAddBorderForTableAndCells=(I.offsetTop===5);H.style.overflow="hidden",H.style.position="relative";this.subtractsBorderForOverflowNotVisible=(G.offsetTop===-5);L.style.marginTop="1px";this.doesNotIncludeMarginInBodyOffset=(L.offsetTop===0);L.style.marginTop=J;L.removeChild(F);this.initialized=true},bodyOffset:function(E){o.offset.initialized||o.offset.initialize();var G=E.offsetTop,F=E.offsetLeft;if(o.offset.doesNotIncludeMarginInBodyOffset){G+=parseInt(o.curCSS(E,"marginTop",true),10)||0,F+=parseInt(o.curCSS(E,"marginLeft",true),10)||0}return{top:G,left:F}}};o.fn.extend({position:function(){var I=0,H=0,F;if(this[0]){var G=this.offsetParent(),J=this.offset(),E=/^body|html$/i.test(G[0].tagName)?{top:0,left:0}:G.offset();J.top-=j(this,"marginTop");J.left-=j(this,"marginLeft");E.top+=j(G,"borderTopWidth");E.left+=j(G,"borderLeftWidth");F={top:J.top-E.top,left:J.left-E.left}}return F},offsetParent:function(){var E=this[0].offsetParent||document.body;while(E&&(!/^body|html$/i.test(E.tagName)&&o.css(E,"position")=="static")){E=E.offsetParent}return o(E)}});o.each(["Left","Top"],function(F,E){var G="scroll"+E;o.fn[G]=function(H){if(!this[0]){return null}return H!==g?this.each(function(){this==l||this==document?l.scrollTo(!F?H:o(l).scrollLeft(),F?H:o(l).scrollTop()):this[G]=H}):this[0]==l||this[0]==document?self[F?"pageYOffset":"pageXOffset"]||o.boxModel&&document.documentElement[G]||document.body[G]:this[0][G]}});o.each(["Height","Width"],function(I,G){var E=I?"Left":"Top",H=I?"Right":"Bottom",F=G.toLowerCase();o.fn["inner"+G]=function(){return this[0]?o.css(this[0],F,false,"padding"):null};o.fn["outer"+G]=function(K){return this[0]?o.css(this[0],F,false,K?"margin":"border"):null};var J=G.toLowerCase();o.fn[J]=function(K){return this[0]==l?document.compatMode=="CSS1Compat"&&document.documentElement["client"+G]||document.body["client"+G]:this[0]==document?Math.max(document.documentElement["client"+G],document.body["scroll"+G],document.documentElement["scroll"+G],document.body["offset"+G],document.documentElement["offset"+G]):K===g?(this.length?o.css(this[0],J):null):this.css(J,typeof K==="string"?K:K+"px")}})})(); +/* + * jQuery UI 1.7.2 + * + * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) + * Dual licensed under the MIT (MIT-LICENSE.txt) + * and GPL (GPL-LICENSE.txt) licenses. + * + * http://docs.jquery.com/UI + */ +jQuery.ui||(function(c){var i=c.fn.remove,d=c.browser.mozilla&&(parseFloat(c.browser.version)<1.9);c.ui={version:"1.7.2",plugin:{add:function(k,l,n){var m=c.ui[k].prototype;for(var j in n){m.plugins[j]=m.plugins[j]||[];m.plugins[j].push([l,n[j]])}},call:function(j,l,k){var n=j.plugins[l];if(!n||!j.element[0].parentNode){return}for(var m=0;m0){return true}m[j]=1;l=(m[j]>0);m[j]=0;return l},isOverAxis:function(k,j,l){return(k>j)&&(k<(j+l))},isOver:function(o,k,n,m,j,l){return c.ui.isOverAxis(o,n,j)&&c.ui.isOverAxis(k,m,l)},keyCode:{BACKSPACE:8,CAPS_LOCK:20,COMMA:188,CONTROL:17,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,INSERT:45,LEFT:37,NUMPAD_ADD:107,NUMPAD_DECIMAL:110,NUMPAD_DIVIDE:111,NUMPAD_ENTER:108,NUMPAD_MULTIPLY:106,NUMPAD_SUBTRACT:109,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SHIFT:16,SPACE:32,TAB:9,UP:38}};if(d){var f=c.attr,e=c.fn.removeAttr,h="http://www.w3.org/2005/07/aaa",a=/^aria-/,b=/^wairole:/;c.attr=function(k,j,l){var m=l!==undefined;return(j=="role"?(m?f.call(this,k,j,"wairole:"+l):(f.apply(this,arguments)||"").replace(b,"")):(a.test(j)?(m?k.setAttributeNS(h,j.replace(a,"aaa:"),l):f.call(this,k,j.replace(a,"aaa:"))):f.apply(this,arguments)))};c.fn.removeAttr=function(j){return(a.test(j)?this.each(function(){this.removeAttributeNS(h,j.replace(a,""))}):e.call(this,j))}}c.fn.extend({remove:function(){c("*",this).add(this).each(function(){c(this).triggerHandler("remove")});return i.apply(this,arguments)},enableSelection:function(){return this.attr("unselectable","off").css("MozUserSelect","").unbind("selectstart.ui")},disableSelection:function(){return this.attr("unselectable","on").css("MozUserSelect","none").bind("selectstart.ui",function(){return false})},scrollParent:function(){var j;if((c.browser.msie&&(/(static|relative)/).test(this.css("position")))||(/absolute/).test(this.css("position"))){j=this.parents().filter(function(){return(/(relative|absolute|fixed)/).test(c.curCSS(this,"position",1))&&(/(auto|scroll)/).test(c.curCSS(this,"overflow",1)+c.curCSS(this,"overflow-y",1)+c.curCSS(this,"overflow-x",1))}).eq(0)}else{j=this.parents().filter(function(){return(/(auto|scroll)/).test(c.curCSS(this,"overflow",1)+c.curCSS(this,"overflow-y",1)+c.curCSS(this,"overflow-x",1))}).eq(0)}return(/fixed/).test(this.css("position"))||!j.length?c(document):j}});c.extend(c.expr[":"],{data:function(l,k,j){return !!c.data(l,j[3])},focusable:function(k){var l=k.nodeName.toLowerCase(),j=c.attr(k,"tabindex");return(/input|select|textarea|button|object/.test(l)?!k.disabled:"a"==l||"area"==l?k.href||!isNaN(j):!isNaN(j))&&!c(k)["area"==l?"parents":"closest"](":hidden").length},tabbable:function(k){var j=c.attr(k,"tabindex");return(isNaN(j)||j>=0)&&c(k).is(":focusable")}});function g(m,n,o,l){function k(q){var p=c[m][n][q]||[];return(typeof p=="string"?p.split(/,?\s+/):p)}var j=k("getter");if(l.length==1&&typeof l[0]=="string"){j=j.concat(k("getterSetter"))}return(c.inArray(o,j)!=-1)}c.widget=function(k,j){var l=k.split(".")[0];k=k.split(".")[1];c.fn[k]=function(p){var n=(typeof p=="string"),o=Array.prototype.slice.call(arguments,1);if(n&&p.substring(0,1)=="_"){return this}if(n&&g(l,k,p,o)){var m=c.data(this[0],k);return(m?m[p].apply(m,o):undefined)}return this.each(function(){var q=c.data(this,k);(!q&&!n&&c.data(this,k,new c[l][k](this,p))._init());(q&&n&&c.isFunction(q[p])&&q[p].apply(q,o))})};c[l]=c[l]||{};c[l][k]=function(o,n){var m=this;this.namespace=l;this.widgetName=k;this.widgetEventPrefix=c[l][k].eventPrefix||k;this.widgetBaseClass=l+"-"+k;this.options=c.extend({},c.widget.defaults,c[l][k].defaults,c.metadata&&c.metadata.get(o)[k],n);this.element=c(o).bind("setData."+k,function(q,p,r){if(q.target==o){return m._setData(p,r)}}).bind("getData."+k,function(q,p){if(q.target==o){return m._getData(p)}}).bind("remove",function(){return m.destroy()})};c[l][k].prototype=c.extend({},c.widget.prototype,j);c[l][k].getterSetter="option"};c.widget.prototype={_init:function(){},destroy:function(){this.element.removeData(this.widgetName).removeClass(this.widgetBaseClass+"-disabled "+this.namespace+"-state-disabled").removeAttr("aria-disabled")},option:function(l,m){var k=l,j=this;if(typeof l=="string"){if(m===undefined){return this._getData(l)}k={};k[l]=m}c.each(k,function(n,o){j._setData(n,o)})},_getData:function(j){return this.options[j]},_setData:function(j,k){this.options[j]=k;if(j=="disabled"){this.element[k?"addClass":"removeClass"](this.widgetBaseClass+"-disabled "+this.namespace+"-state-disabled").attr("aria-disabled",k)}},enable:function(){this._setData("disabled",false)},disable:function(){this._setData("disabled",true)},_trigger:function(l,m,n){var p=this.options[l],j=(l==this.widgetEventPrefix?l:this.widgetEventPrefix+l);m=c.Event(m);m.type=j;if(m.originalEvent){for(var k=c.event.props.length,o;k;){o=c.event.props[--k];m[o]=m.originalEvent[o]}}this.element.trigger(m,n);return !(c.isFunction(p)&&p.call(this.element[0],m,n)===false||m.isDefaultPrevented())}};c.widget.defaults={disabled:false};c.ui.mouse={_mouseInit:function(){var j=this;this.element.bind("mousedown."+this.widgetName,function(k){return j._mouseDown(k)}).bind("click."+this.widgetName,function(k){if(j._preventClickEvent){j._preventClickEvent=false;k.stopImmediatePropagation();return false}});if(c.browser.msie){this._mouseUnselectable=this.element.attr("unselectable");this.element.attr("unselectable","on")}this.started=false},_mouseDestroy:function(){this.element.unbind("."+this.widgetName);(c.browser.msie&&this.element.attr("unselectable",this._mouseUnselectable))},_mouseDown:function(l){l.originalEvent=l.originalEvent||{};if(l.originalEvent.mouseHandled){return}(this._mouseStarted&&this._mouseUp(l));this._mouseDownEvent=l;var k=this,m=(l.which==1),j=(typeof this.options.cancel=="string"?c(l.target).parents().add(l.target).filter(this.options.cancel).length:false);if(!m||j||!this._mouseCapture(l)){return true}this.mouseDelayMet=!this.options.delay;if(!this.mouseDelayMet){this._mouseDelayTimer=setTimeout(function(){k.mouseDelayMet=true},this.options.delay)}if(this._mouseDistanceMet(l)&&this._mouseDelayMet(l)){this._mouseStarted=(this._mouseStart(l)!==false);if(!this._mouseStarted){l.preventDefault();return true}}this._mouseMoveDelegate=function(n){return k._mouseMove(n)};this._mouseUpDelegate=function(n){return k._mouseUp(n)};c(document).bind("mousemove."+this.widgetName,this._mouseMoveDelegate).bind("mouseup."+this.widgetName,this._mouseUpDelegate);(c.browser.safari||l.preventDefault());l.originalEvent.mouseHandled=true;return true},_mouseMove:function(j){if(c.browser.msie&&!j.button){return this._mouseUp(j)}if(this._mouseStarted){this._mouseDrag(j);return j.preventDefault()}if(this._mouseDistanceMet(j)&&this._mouseDelayMet(j)){this._mouseStarted=(this._mouseStart(this._mouseDownEvent,j)!==false);(this._mouseStarted?this._mouseDrag(j):this._mouseUp(j))}return !this._mouseStarted},_mouseUp:function(j){c(document).unbind("mousemove."+this.widgetName,this._mouseMoveDelegate).unbind("mouseup."+this.widgetName,this._mouseUpDelegate);if(this._mouseStarted){this._mouseStarted=false;this._preventClickEvent=(j.target==this._mouseDownEvent.target);this._mouseStop(j)}return false},_mouseDistanceMet:function(j){return(Math.max(Math.abs(this._mouseDownEvent.pageX-j.pageX),Math.abs(this._mouseDownEvent.pageY-j.pageY))>=this.options.distance)},_mouseDelayMet:function(j){return this.mouseDelayMet},_mouseStart:function(j){},_mouseDrag:function(j){},_mouseStop:function(j){},_mouseCapture:function(j){return true}};c.ui.mouse.defaults={cancel:null,distance:1,delay:0}})(jQuery);;/* * jQuery UI Resizable 1.7.2 + * + * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) + * Dual licensed under the MIT (MIT-LICENSE.txt) + * and GPL (GPL-LICENSE.txt) licenses. + * + * http://docs.jquery.com/UI/Resizables + * + * Depends: + * ui.core.js + */ +(function(c){c.widget("ui.resizable",c.extend({},c.ui.mouse,{_init:function(){var e=this,j=this.options;this.element.addClass("ui-resizable");c.extend(this,{_aspectRatio:!!(j.aspectRatio),aspectRatio:j.aspectRatio,originalElement:this.element,_proportionallyResizeElements:[],_helper:j.helper||j.ghost||j.animate?j.helper||"ui-resizable-helper":null});if(this.element[0].nodeName.match(/canvas|textarea|input|select|button|img/i)){if(/relative/.test(this.element.css("position"))&&c.browser.opera){this.element.css({position:"relative",top:"auto",left:"auto"})}this.element.wrap(c('
').css({position:this.element.css("position"),width:this.element.outerWidth(),height:this.element.outerHeight(),top:this.element.css("top"),left:this.element.css("left")}));this.element=this.element.parent().data("resizable",this.element.data("resizable"));this.elementIsWrapper=true;this.element.css({marginLeft:this.originalElement.css("marginLeft"),marginTop:this.originalElement.css("marginTop"),marginRight:this.originalElement.css("marginRight"),marginBottom:this.originalElement.css("marginBottom")});this.originalElement.css({marginLeft:0,marginTop:0,marginRight:0,marginBottom:0});this.originalResizeStyle=this.originalElement.css("resize");this.originalElement.css("resize","none");this._proportionallyResizeElements.push(this.originalElement.css({position:"static",zoom:1,display:"block"}));this.originalElement.css({margin:this.originalElement.css("margin")});this._proportionallyResize()}this.handles=j.handles||(!c(".ui-resizable-handle",this.element).length?"e,s,se":{n:".ui-resizable-n",e:".ui-resizable-e",s:".ui-resizable-s",w:".ui-resizable-w",se:".ui-resizable-se",sw:".ui-resizable-sw",ne:".ui-resizable-ne",nw:".ui-resizable-nw"});if(this.handles.constructor==String){if(this.handles=="all"){this.handles="n,e,s,w,se,sw,ne,nw"}var k=this.handles.split(",");this.handles={};for(var f=0;f
');if(/sw|se|ne|nw/.test(h)){g.css({zIndex:++j.zIndex})}if("se"==h){g.addClass("ui-icon ui-icon-gripsmall-diagonal-se")}this.handles[h]=".ui-resizable-"+h;this.element.append(g)}}this._renderAxis=function(p){p=p||this.element;for(var m in this.handles){if(this.handles[m].constructor==String){this.handles[m]=c(this.handles[m],this.element).show()}if(this.elementIsWrapper&&this.originalElement[0].nodeName.match(/textarea|input|select|button/i)){var n=c(this.handles[m],this.element),o=0;o=/sw|ne|nw|se|n|s/.test(m)?n.outerHeight():n.outerWidth();var l=["padding",/ne|nw|n/.test(m)?"Top":/se|sw|s/.test(m)?"Bottom":/^e$/.test(m)?"Right":"Left"].join("");p.css(l,o);this._proportionallyResize()}if(!c(this.handles[m]).length){continue}}};this._renderAxis(this.element);this._handles=c(".ui-resizable-handle",this.element).disableSelection();this._handles.mouseover(function(){if(!e.resizing){if(this.className){var i=this.className.match(/ui-resizable-(se|sw|ne|nw|n|e|s|w)/i)}e.axis=i&&i[1]?i[1]:"se"}});if(j.autoHide){this._handles.hide();c(this.element).addClass("ui-resizable-autohide").hover(function(){c(this).removeClass("ui-resizable-autohide");e._handles.show()},function(){if(!e.resizing){c(this).addClass("ui-resizable-autohide");e._handles.hide()}})}this._mouseInit()},destroy:function(){this._mouseDestroy();var d=function(f){c(f).removeClass("ui-resizable ui-resizable-disabled ui-resizable-resizing").removeData("resizable").unbind(".resizable").find(".ui-resizable-handle").remove()};if(this.elementIsWrapper){d(this.element);var e=this.element;e.parent().append(this.originalElement.css({position:e.css("position"),width:e.outerWidth(),height:e.outerHeight(),top:e.css("top"),left:e.css("left")})).end().remove()}this.originalElement.css("resize",this.originalResizeStyle);d(this.originalElement)},_mouseCapture:function(e){var f=false;for(var d in this.handles){if(c(this.handles[d])[0]==e.target){f=true}}return this.options.disabled||!!f},_mouseStart:function(f){var i=this.options,e=this.element.position(),d=this.element;this.resizing=true;this.documentScroll={top:c(document).scrollTop(),left:c(document).scrollLeft()};if(d.is(".ui-draggable")||(/absolute/).test(d.css("position"))){d.css({position:"absolute",top:e.top,left:e.left})}if(c.browser.opera&&(/relative/).test(d.css("position"))){d.css({position:"relative",top:"auto",left:"auto"})}this._renderProxy();var j=b(this.helper.css("left")),g=b(this.helper.css("top"));if(i.containment){j+=c(i.containment).scrollLeft()||0;g+=c(i.containment).scrollTop()||0}this.offset=this.helper.offset();this.position={left:j,top:g};this.size=this._helper?{width:d.outerWidth(),height:d.outerHeight()}:{width:d.width(),height:d.height()};this.originalSize=this._helper?{width:d.outerWidth(),height:d.outerHeight()}:{width:d.width(),height:d.height()};this.originalPosition={left:j,top:g};this.sizeDiff={width:d.outerWidth()-d.width(),height:d.outerHeight()-d.height()};this.originalMousePosition={left:f.pageX,top:f.pageY};this.aspectRatio=(typeof i.aspectRatio=="number")?i.aspectRatio:((this.originalSize.width/this.originalSize.height)||1);var h=c(".ui-resizable-"+this.axis).css("cursor");c("body").css("cursor",h=="auto"?this.axis+"-resize":h);d.addClass("ui-resizable-resizing");this._propagate("start",f);return true},_mouseDrag:function(d){var g=this.helper,f=this.options,l={},p=this,i=this.originalMousePosition,m=this.axis;var q=(d.pageX-i.left)||0,n=(d.pageY-i.top)||0;var h=this._change[m];if(!h){return false}var k=h.apply(this,[d,q,n]),j=c.browser.msie&&c.browser.version<7,e=this.sizeDiff;if(this._aspectRatio||d.shiftKey){k=this._updateRatio(k,d)}k=this._respectSize(k,d);this._propagate("resize",d);g.css({top:this.position.top+"px",left:this.position.left+"px",width:this.size.width+"px",height:this.size.height+"px"});if(!this._helper&&this._proportionallyResizeElements.length){this._proportionallyResize()}this._updateCache(k);this._trigger("resize",d,this.ui());return false},_mouseStop:function(g){this.resizing=false;var h=this.options,l=this;if(this._helper){var f=this._proportionallyResizeElements,d=f.length&&(/textarea/i).test(f[0].nodeName),e=d&&c.ui.hasScroll(f[0],"left")?0:l.sizeDiff.height,j=d?0:l.sizeDiff.width;var m={width:(l.size.width-j),height:(l.size.height-e)},i=(parseInt(l.element.css("left"),10)+(l.position.left-l.originalPosition.left))||null,k=(parseInt(l.element.css("top"),10)+(l.position.top-l.originalPosition.top))||null;if(!h.animate){this.element.css(c.extend(m,{top:k,left:i}))}l.helper.height(l.size.height);l.helper.width(l.size.width);if(this._helper&&!h.animate){this._proportionallyResize()}}c("body").css("cursor","auto");this.element.removeClass("ui-resizable-resizing");this._propagate("stop",g);if(this._helper){this.helper.remove()}return false},_updateCache:function(d){var e=this.options;this.offset=this.helper.offset();if(a(d.left)){this.position.left=d.left}if(a(d.top)){this.position.top=d.top}if(a(d.height)){this.size.height=d.height}if(a(d.width)){this.size.width=d.width}},_updateRatio:function(g,f){var h=this.options,i=this.position,e=this.size,d=this.axis;if(g.height){g.width=(e.height*this.aspectRatio)}else{if(g.width){g.height=(e.width/this.aspectRatio)}}if(d=="sw"){g.left=i.left+(e.width-g.width);g.top=null}if(d=="nw"){g.top=i.top+(e.height-g.height);g.left=i.left+(e.width-g.width)}return g},_respectSize:function(k,f){var i=this.helper,h=this.options,q=this._aspectRatio||f.shiftKey,p=this.axis,s=a(k.width)&&h.maxWidth&&(h.maxWidthk.width),r=a(k.height)&&h.minHeight&&(h.minHeight>k.height);if(g){k.width=h.minWidth}if(r){k.height=h.minHeight}if(s){k.width=h.maxWidth}if(l){k.height=h.maxHeight}var e=this.originalPosition.left+this.originalSize.width,n=this.position.top+this.size.height;var j=/sw|nw|w/.test(p),d=/nw|ne|n/.test(p);if(g&&j){k.left=e-h.minWidth}if(s&&j){k.left=e-h.maxWidth}if(r&&d){k.top=n-h.minHeight}if(l&&d){k.top=n-h.maxHeight}var m=!k.width&&!k.height;if(m&&!k.left&&k.top){k.top=null}else{if(m&&!k.top&&k.left){k.left=null}}return k},_proportionallyResize:function(){var j=this.options;if(!this._proportionallyResizeElements.length){return}var f=this.helper||this.element;for(var e=0;e');var d=c.browser.msie&&c.browser.version<7,f=(d?1:0),g=(d?2:-1);this.helper.addClass(this._helper).css({width:this.element.outerWidth()+g,height:this.element.outerHeight()+g,position:"absolute",left:this.elementOffset.left-f+"px",top:this.elementOffset.top-f+"px",zIndex:++h.zIndex});this.helper.appendTo("body").disableSelection()}else{this.helper=this.element}},_change:{e:function(f,e,d){return{width:this.originalSize.width+e}},w:function(g,e,d){var i=this.options,f=this.originalSize,h=this.originalPosition;return{left:h.left+e,width:f.width-e}},n:function(g,e,d){var i=this.options,f=this.originalSize,h=this.originalPosition;return{top:h.top+d,height:f.height-d}},s:function(f,e,d){return{height:this.originalSize.height+d}},se:function(f,e,d){return c.extend(this._change.s.apply(this,arguments),this._change.e.apply(this,[f,e,d]))},sw:function(f,e,d){return c.extend(this._change.s.apply(this,arguments),this._change.w.apply(this,[f,e,d]))},ne:function(f,e,d){return c.extend(this._change.n.apply(this,arguments),this._change.e.apply(this,[f,e,d]))},nw:function(f,e,d){return c.extend(this._change.n.apply(this,arguments),this._change.w.apply(this,[f,e,d]))}},_propagate:function(e,d){c.ui.plugin.call(this,e,[d,this.ui()]);(e!="resize"&&this._trigger(e,d,this.ui()))},plugins:{},ui:function(){return{originalElement:this.originalElement,element:this.element,helper:this.helper,position:this.position,size:this.size,originalSize:this.originalSize,originalPosition:this.originalPosition}}}));c.extend(c.ui.resizable,{version:"1.7.2",eventPrefix:"resize",defaults:{alsoResize:false,animate:false,animateDuration:"slow",animateEasing:"swing",aspectRatio:false,autoHide:false,cancel:":input,option",containment:false,delay:0,distance:1,ghost:false,grid:false,handles:"e,s,se",helper:false,maxHeight:null,maxWidth:null,minHeight:10,minWidth:10,zIndex:1000}});c.ui.plugin.add("resizable","alsoResize",{start:function(e,f){var d=c(this).data("resizable"),g=d.options;_store=function(h){c(h).each(function(){c(this).data("resizable-alsoresize",{width:parseInt(c(this).width(),10),height:parseInt(c(this).height(),10),left:parseInt(c(this).css("left"),10),top:parseInt(c(this).css("top"),10)})})};if(typeof(g.alsoResize)=="object"&&!g.alsoResize.parentNode){if(g.alsoResize.length){g.alsoResize=g.alsoResize[0];_store(g.alsoResize)}else{c.each(g.alsoResize,function(h,i){_store(h)})}}else{_store(g.alsoResize)}},resize:function(f,h){var e=c(this).data("resizable"),i=e.options,g=e.originalSize,k=e.originalPosition;var j={height:(e.size.height-g.height)||0,width:(e.size.width-g.width)||0,top:(e.position.top-k.top)||0,left:(e.position.left-k.left)||0},d=function(l,m){c(l).each(function(){var p=c(this),q=c(this).data("resizable-alsoresize"),o={},n=m&&m.length?m:["width","height","top","left"];c.each(n||["width","height","top","left"],function(r,t){var s=(q[t]||0)+(j[t]||0);if(s&&s>=0){o[t]=s||null}});if(/relative/.test(p.css("position"))&&c.browser.opera){e._revertToRelativePosition=true;p.css({position:"absolute",top:"auto",left:"auto"})}p.css(o)})};if(typeof(i.alsoResize)=="object"&&!i.alsoResize.nodeType){c.each(i.alsoResize,function(l,m){d(l,m)})}else{d(i.alsoResize)}},stop:function(e,f){var d=c(this).data("resizable");if(d._revertToRelativePosition&&c.browser.opera){d._revertToRelativePosition=false;el.css({position:"relative"})}c(this).removeData("resizable-alsoresize-start")}});c.ui.plugin.add("resizable","animate",{stop:function(h,m){var n=c(this).data("resizable"),i=n.options;var g=n._proportionallyResizeElements,d=g.length&&(/textarea/i).test(g[0].nodeName),e=d&&c.ui.hasScroll(g[0],"left")?0:n.sizeDiff.height,k=d?0:n.sizeDiff.width;var f={width:(n.size.width-k),height:(n.size.height-e)},j=(parseInt(n.element.css("left"),10)+(n.position.left-n.originalPosition.left))||null,l=(parseInt(n.element.css("top"),10)+(n.position.top-n.originalPosition.top))||null;n.element.animate(c.extend(f,l&&j?{top:l,left:j}:{}),{duration:i.animateDuration,easing:i.animateEasing,step:function(){var o={width:parseInt(n.element.css("width"),10),height:parseInt(n.element.css("height"),10),top:parseInt(n.element.css("top"),10),left:parseInt(n.element.css("left"),10)};if(g&&g.length){c(g[0]).css({width:o.width,height:o.height})}n._updateCache(o);n._propagate("resize",h)}})}});c.ui.plugin.add("resizable","containment",{start:function(e,q){var s=c(this).data("resizable"),i=s.options,k=s.element;var f=i.containment,j=(f instanceof c)?f.get(0):(/parent/.test(f))?k.parent().get(0):f;if(!j){return}s.containerElement=c(j);if(/document/.test(f)||f==document){s.containerOffset={left:0,top:0};s.containerPosition={left:0,top:0};s.parentData={element:c(document),left:0,top:0,width:c(document).width(),height:c(document).height()||document.body.parentNode.scrollHeight}}else{var m=c(j),h=[];c(["Top","Right","Left","Bottom"]).each(function(p,o){h[p]=b(m.css("padding"+o))});s.containerOffset=m.offset();s.containerPosition=m.position();s.containerSize={height:(m.innerHeight()-h[3]),width:(m.innerWidth()-h[1])};var n=s.containerOffset,d=s.containerSize.height,l=s.containerSize.width,g=(c.ui.hasScroll(j,"left")?j.scrollWidth:l),r=(c.ui.hasScroll(j)?j.scrollHeight:d);s.parentData={element:j,left:n.left,top:n.top,width:g,height:r}}},resize:function(f,p){var s=c(this).data("resizable"),h=s.options,e=s.containerSize,n=s.containerOffset,l=s.size,m=s.position,q=s._aspectRatio||f.shiftKey,d={top:0,left:0},g=s.containerElement;if(g[0]!=document&&(/static/).test(g.css("position"))){d=n}if(m.left<(s._helper?n.left:0)){s.size.width=s.size.width+(s._helper?(s.position.left-n.left):(s.position.left-d.left));if(q){s.size.height=s.size.width/h.aspectRatio}s.position.left=h.helper?n.left:0}if(m.top<(s._helper?n.top:0)) +{s.size.height=s.size.height+(s._helper?(s.position.top-n.top):s.position.top);if(q){s.size.width=s.size.height*h.aspectRatio}s.position.top=s._helper?n.top:0}s.offset.left=s.parentData.left+s.position.left;s.offset.top=s.parentData.top+s.position.top;var k=Math.abs((s._helper?s.offset.left-d.left:(s.offset.left-d.left))+s.sizeDiff.width),r=Math.abs((s._helper?s.offset.top-d.top:(s.offset.top-n.top))+s.sizeDiff.height);var j=s.containerElement.get(0)==s.element.parent().get(0),i=/relative|absolute/.test(s.containerElement.css("position"));if(j&&i){k-=s.parentData.left}if(k+s.size.width>=s.parentData.width){s.size.width=s.parentData.width-k;if(q){s.size.height=s.size.width/s.aspectRatio}}if(r+s.size.height>=s.parentData.height){s.size.height=s.parentData.height-r;if(q){s.size.width=s.size.height*s.aspectRatio}}},stop:function(e,m){var p=c(this).data("resizable"),f=p.options,k=p.position,l=p.containerOffset,d=p.containerPosition,g=p.containerElement;var i=c(p.helper),q=i.offset(),n=i.outerWidth()-p.sizeDiff.width,j=i.outerHeight()-p.sizeDiff.height;if(p._helper&&!f.animate&&(/relative/).test(g.css("position"))){c(this).css({left:q.left-d.left-l.left,width:n,height:j})}if(p._helper&&!f.animate&&(/static/).test(g.css("position"))){c(this).css({left:q.left-d.left-l.left,width:n,height:j})}}});c.ui.plugin.add("resizable","ghost",{start:function(f,g){var d=c(this).data("resizable"),h=d.options,e=d.size;d.ghost=d.originalElement.clone();d.ghost.css({opacity:0.25,display:"block",position:"relative",height:e.height,width:e.width,margin:0,left:0,top:0}).addClass("ui-resizable-ghost").addClass(typeof h.ghost=="string"?h.ghost:"");d.ghost.appendTo(d.helper)},resize:function(e,f){var d=c(this).data("resizable"),g=d.options;if(d.ghost){d.ghost.css({position:"relative",height:d.size.height,width:d.size.width})}},stop:function(e,f){var d=c(this).data("resizable"),g=d.options;if(d.ghost&&d.helper){d.helper.get(0).removeChild(d.ghost.get(0))}}});c.ui.plugin.add("resizable","grid",{resize:function(d,l){var n=c(this).data("resizable"),g=n.options,j=n.size,h=n.originalSize,i=n.originalPosition,m=n.axis,k=g._aspectRatio||d.shiftKey;g.grid=typeof g.grid=="number"?[g.grid,g.grid]:g.grid;var f=Math.round((j.width-h.width)/(g.grid[0]||1))*(g.grid[0]||1),e=Math.round((j.height-h.height)/(g.grid[1]||1))*(g.grid[1]||1);if(/^(se|s|e)$/.test(m)){n.size.width=h.width+f;n.size.height=h.height+e}else{if(/^(ne)$/.test(m)){n.size.width=h.width+f;n.size.height=h.height+e;n.position.top=i.top-e}else{if(/^(sw)$/.test(m)){n.size.width=h.width+f;n.size.height=h.height+e;n.position.left=i.left-f}else{n.size.width=h.width+f;n.size.height=h.height+e;n.position.top=i.top-e;n.position.left=i.left-f}}}}});var b=function(d){return parseInt(d,10)||0};var a=function(d){return !isNaN(parseInt(d,10))}})(jQuery);; +/** + * jQuery.ScrollTo - Easy element scrolling using jQuery. + * Copyright (c) 2008 Ariel Flesler - aflesler(at)gmail(dot)com + * Licensed under GPL license (http://www.opensource.org/licenses/gpl-license.php). + * Date: 2/8/2008 + * @author Ariel Flesler + * @version 1.3.2 + */ +;(function($){var o=$.scrollTo=function(a,b,c){o.window().scrollTo(a,b,c)};o.defaults={axis:'y',duration:1};o.window=function(){return $($.browser.safari?'body':'html')};$.fn.scrollTo=function(l,m,n){if(typeof m=='object'){n=m;m=0}n=$.extend({},o.defaults,n);m=m||n.speed||n.duration;n.queue=n.queue&&n.axis.length>1;if(n.queue)m/=2;n.offset=j(n.offset);n.over=j(n.over);return this.each(function(){var a=this,b=$(a),t=l,c,d={},w=b.is('html,body');switch(typeof t){case'number':case'string':if(/^([+-]=)?\d+(px)?$/.test(t)){t=j(t);break}t=$(t,this);case'object':if(t.is||t.style)c=(t=$(t)).offset()}$.each(n.axis.split(''),function(i,f){var P=f=='x'?'Left':'Top',p=P.toLowerCase(),k='scroll'+P,e=a[k],D=f=='x'?'Width':'Height';if(c){d[k]=c[p]+(w?0:e-b.offset()[p]);if(n.margin){d[k]-=parseInt(t.css('margin'+P))||0;d[k]-=parseInt(t.css('border'+P+'Width'))||0}d[k]+=n.offset[p]||0;if(n.over[p])d[k]+=t[D.toLowerCase()]()*n.over[p]}else d[k]=t[p];if(/^\d+$/.test(d[k]))d[k]=d[k]<=0?0:Math.min(d[k],h(D));if(!i&&n.queue){if(e!=d[k])g(n.onAfterFirst);delete d[k]}});g(n.onAfter);function g(a){b.animate(d,m,n.easing,a&&function(){a.call(this,l)})};function h(D){var b=w?$.browser.opera?document.body:document.documentElement:a;return b['scroll'+D]-b['client'+D]}})};function j(a){return typeof a=='object'?a:{top:a,left:a}}})(jQuery); + diff --git a/htmldoc/api/modules.html b/htmldoc/api/modules.html new file mode 100644 index 0000000..fb41e80 --- /dev/null +++ b/htmldoc/api/modules.html @@ -0,0 +1,101 @@ + + + + +HTML Tidy: Modules + + + + + + + + + + + + +
+ + +
+ + + + + + + + + + + + + +
+
HTML Tidy +  0.1 +
+ +
+
+ + +
+
+ +
+
+
+ + + + + + + diff --git a/htmldoc/api/nav_f.png b/htmldoc/api/nav_f.png new file mode 100644 index 0000000..1b07a16 Binary files /dev/null and b/htmldoc/api/nav_f.png differ diff --git a/htmldoc/api/nav_h.png b/htmldoc/api/nav_h.png new file mode 100644 index 0000000..01f5fa6 Binary files /dev/null and b/htmldoc/api/nav_h.png differ diff --git a/htmldoc/api/navtree.css b/htmldoc/api/navtree.css new file mode 100644 index 0000000..e46ffcd --- /dev/null +++ b/htmldoc/api/navtree.css @@ -0,0 +1,123 @@ +#nav-tree .children_ul { + margin:0; + padding:4px; +} + +#nav-tree ul { + list-style:none outside none; + margin:0px; + padding:0px; +} + +#nav-tree li { + white-space:nowrap; + margin:0px; + padding:0px; +} + +#nav-tree .plus { + margin:0px; +} + +#nav-tree .selected { + background-image: url('tab_a.png'); + background-repeat:repeat-x; + color: #fff; + text-shadow: 0px 1px 1px rgba(0, 0, 0, 1.0); +} + +#nav-tree img { + margin:0px; + padding:0px; + border:0px; + vertical-align: middle; +} + +#nav-tree a { + text-decoration:none; + padding:0px; + margin:0px; + outline:none; +} + +#nav-tree .label { + margin:0px; + padding:0px; +} + +#nav-tree .label a { + padding:2px; +} + +#nav-tree .selected a { + text-decoration:none; + padding:2px; + margin:0px; + color:#fff; +} + +#nav-tree .children_ul { + margin:0px; + padding:0px; +} + +#nav-tree .item { + margin:0px; + padding:0px; +} + +#nav-tree { + padding: 0px 0px; + background-color: #FAFAFF; + font-size:14px; + overflow:auto; +} + +#doc-content { + overflow:auto; + display:block; + padding:0px; + margin:0px; +} + +#side-nav { + padding:0 6px 0 0; + margin: 0px; + display:block; + position: absolute; + left: 0px; + width: 300px; +} + +.ui-resizable .ui-resizable-handle { + display:block; +} + +.ui-resizable-e { + background:url("ftv2splitbar.png") repeat scroll right center transparent; + cursor:e-resize; + height:100%; + right:0; + top:0; + width:6px; +} + +.ui-resizable-handle { + display:none; + font-size:0.1px; + position:absolute; + z-index:1; +} + +#nav-tree-contents { + margin: 6px 0px 0px 0px; +} + +#nav-tree { + background-image:url('nav_h.png'); + background-repeat:repeat-x; + background-color: #F9FAFC; +} + + + diff --git a/htmldoc/api/navtree.js b/htmldoc/api/navtree.js new file mode 100644 index 0000000..4b4f285 --- /dev/null +++ b/htmldoc/api/navtree.js @@ -0,0 +1,294 @@ +var NAVTREE = +[ + [ "HTML Tidy", "index.html", [ + [ "Related Pages", "pages.html", [ + [ "Deprecated List", "deprecated.html", null ] + ] ], + [ "Modules", "modules.html", [ + [ "Opaque Types", "group__Opaque.html", null ], + [ "Memory Allocation", "group__Memory.html", null ], + [ "Basic Operations", "group__Basic.html", null ], + [ "Configuration Options", "group__Configuration.html", null ], + [ "I/O and Messages", "group__IO.html", null ], + [ "Document Parse", "group__Parse.html", null ], + [ "Diagnostics and Repair", "group__Clean.html", null ], + [ "Document Save Functions", "group__Save.html", null ], + [ "Document Tree", "group__Tree.html", null ], + [ "Node Interrogation", "group__NodeAsk.html", [ + [ "Deprecated node interrogation per TagId", "group__NodeIsElementName.html", null ] + ] ], + [ "Attribute Interrogation", "group__Attribute.html", [ + [ "Deprecated attribute interrogation per AttrId", "group__AttrIsAttributeName.html", null ] + ] ], + [ "Attribute Retrieval", "group__AttrGet.html", [ + [ "Deprecated attribute retrieval per AttrId", "group__AttrGetAttributeName.html", null ] + ] ] + ] ], + [ "Data Structures", "annotated.html", [ + [ "_TidyAllocator", "struct__TidyAllocator.html", null ], + [ "_TidyAllocatorVtbl", "struct__TidyAllocatorVtbl.html", null ], + [ "_TidyBuffer", "struct__TidyBuffer.html", null ], + [ "_TidyInputSource", "struct__TidyInputSource.html", null ], + [ "_TidyOutputSink", "struct__TidyOutputSink.html", null ], + [ "TidyAttr", "structTidyAttr.html", null ], + [ "TidyDoc", "structTidyDoc.html", null ], + [ "TidyNode", "structTidyNode.html", null ], + [ "TidyOption", "structTidyOption.html", null ] + ] ], + [ "Data Structure Index", "classes.html", null ], + [ "Data Fields", "functions.html", null ], + [ "File List", "files.html", [ + [ "buffio.h", "buffio_8h.html", null ], + [ "platform.h", null, null ], + [ "tidy.h", "tidy_8h.html", null ], + [ "tidyenum.h", null, null ] + ] ], + [ "Globals", "globals.html", null ] + ] ] +]; + +function createIndent(o,domNode,node,level) +{ + if (node.parentNode && node.parentNode.parentNode) + { + createIndent(o,domNode,node.parentNode,level+1); + } + var imgNode = document.createElement("img"); + if (level==0 && node.childrenData) + { + node.plus_img = imgNode; + node.expandToggle = document.createElement("a"); + node.expandToggle.href = "javascript:void(0)"; + node.expandToggle.onclick = function() + { + if (node.expanded) + { + $(node.getChildrenUL()).slideUp("fast"); + if (node.isLast) + { + node.plus_img.src = node.relpath+"ftv2plastnode.png"; + } + else + { + node.plus_img.src = node.relpath+"ftv2pnode.png"; + } + node.expanded = false; + } + else + { + expandNode(o, node, false); + } + } + node.expandToggle.appendChild(imgNode); + domNode.appendChild(node.expandToggle); + } + else + { + domNode.appendChild(imgNode); + } + if (level==0) + { + if (node.isLast) + { + if (node.childrenData) + { + imgNode.src = node.relpath+"ftv2plastnode.png"; + } + else + { + imgNode.src = node.relpath+"ftv2lastnode.png"; + domNode.appendChild(imgNode); + } + } + else + { + if (node.childrenData) + { + imgNode.src = node.relpath+"ftv2pnode.png"; + } + else + { + imgNode.src = node.relpath+"ftv2node.png"; + domNode.appendChild(imgNode); + } + } + } + else + { + if (node.isLast) + { + imgNode.src = node.relpath+"ftv2blank.png"; + } + else + { + imgNode.src = node.relpath+"ftv2vertline.png"; + } + } + imgNode.border = "0"; +} + +function newNode(o, po, text, link, childrenData, lastNode) +{ + var node = new Object(); + node.children = Array(); + node.childrenData = childrenData; + node.depth = po.depth + 1; + node.relpath = po.relpath; + node.isLast = lastNode; + + node.li = document.createElement("li"); + po.getChildrenUL().appendChild(node.li); + node.parentNode = po; + + node.itemDiv = document.createElement("div"); + node.itemDiv.className = "item"; + + node.labelSpan = document.createElement("span"); + node.labelSpan.className = "label"; + + createIndent(o,node.itemDiv,node,0); + node.itemDiv.appendChild(node.labelSpan); + node.li.appendChild(node.itemDiv); + + var a = document.createElement("a"); + node.labelSpan.appendChild(a); + node.label = document.createTextNode(text); + a.appendChild(node.label); + if (link) + { + a.href = node.relpath+link; + } + else + { + if (childrenData != null) + { + a.className = "nolink"; + a.href = "javascript:void(0)"; + a.onclick = node.expandToggle.onclick; + node.expanded = false; + } + } + + node.childrenUL = null; + node.getChildrenUL = function() + { + if (!node.childrenUL) + { + node.childrenUL = document.createElement("ul"); + node.childrenUL.className = "children_ul"; + node.childrenUL.style.display = "none"; + node.li.appendChild(node.childrenUL); + } + return node.childrenUL; + }; + + return node; +} + +function showRoot() +{ + var headerHeight = $("#top").height(); + var footerHeight = $("#nav-path").height(); + var windowHeight = $(window).height() - headerHeight - footerHeight; + navtree.scrollTo('#selected',0,{offset:-windowHeight/2}); +} + +function expandNode(o, node, imm) +{ + if (node.childrenData && !node.expanded) + { + if (!node.childrenVisited) + { + getNode(o, node); + } + if (imm) + { + $(node.getChildrenUL()).show(); + } + else + { + $(node.getChildrenUL()).slideDown("fast",showRoot); + } + if (node.isLast) + { + node.plus_img.src = node.relpath+"ftv2mlastnode.png"; + } + else + { + node.plus_img.src = node.relpath+"ftv2mnode.png"; + } + node.expanded = true; + } +} + +function getNode(o, po) +{ + po.childrenVisited = true; + var l = po.childrenData.length-1; + for (var i in po.childrenData) + { + var nodeData = po.childrenData[i]; + po.children[i] = newNode(o, po, nodeData[0], nodeData[1], nodeData[2], + i==l); + } +} + +function findNavTreePage(url, data) +{ + var nodes = data; + var result = null; + for (var i in nodes) + { + var d = nodes[i]; + if (d[1] == url) + { + return new Array(i); + } + else if (d[2] != null) // array of children + { + result = findNavTreePage(url, d[2]); + if (result != null) + { + return (new Array(i).concat(result)); + } + } + } + return null; +} + +function initNavTree(toroot,relpath) +{ + var o = new Object(); + o.toroot = toroot; + o.node = new Object(); + o.node.li = document.getElementById("nav-tree-contents"); + o.node.childrenData = NAVTREE; + o.node.children = new Array(); + o.node.childrenUL = document.createElement("ul"); + o.node.getChildrenUL = function() { return o.node.childrenUL; }; + o.node.li.appendChild(o.node.childrenUL); + o.node.depth = 0; + o.node.relpath = relpath; + + getNode(o, o.node); + + o.breadcrumbs = findNavTreePage(toroot, NAVTREE); + if (o.breadcrumbs == null) + { + o.breadcrumbs = findNavTreePage("index.html",NAVTREE); + } + if (o.breadcrumbs != null && o.breadcrumbs.length>0) + { + var p = o.node; + for (var i in o.breadcrumbs) + { + var j = o.breadcrumbs[i]; + p = p.children[j]; + expandNode(o,p,true); + } + p.itemDiv.className = p.itemDiv.className + " selected"; + p.itemDiv.id = "selected"; + $(window).load(showRoot); + } +} + diff --git a/htmldoc/api/open.png b/htmldoc/api/open.png new file mode 100644 index 0000000..7b35d2c Binary files /dev/null and b/htmldoc/api/open.png differ diff --git a/htmldoc/api/pages.html b/htmldoc/api/pages.html new file mode 100644 index 0000000..2b2214f --- /dev/null +++ b/htmldoc/api/pages.html @@ -0,0 +1,82 @@ + + + + +HTML Tidy: Related Pages + + + + + + + + + + + + +
+ + +
+ + + + + + + + + + + + + +
+
HTML Tidy +  0.1 +
+ +
+
+ + +
+
+ +
+
+
+ +
+
+
+
Related Pages
+
+
+
Here is a list of all related documentation pages:
+
+
+ + + + + diff --git a/htmldoc/api/platform_8h_source.html b/htmldoc/api/platform_8h_source.html new file mode 100644 index 0000000..34afd38 --- /dev/null +++ b/htmldoc/api/platform_8h_source.html @@ -0,0 +1,715 @@ + + + + +HTML Tidy: platform.h Source File + + + + + + + + + + + + +
+ + +
+ + + + + + + + + + + + + +
+
HTML Tidy +  0.1 +
+ +
+
+ + +
+
+ +
+
+
+ +
+
+
+
platform.h
+
+
+
00001 #ifndef __TIDY_PLATFORM_H__
+00002 #define __TIDY_PLATFORM_H__
+00003 
+00004 /* platform.h -- Platform specifics
+00005 
+00006   (c) 1998-2008 (W3C) MIT, ERCIM, Keio University
+00007   See tidy.h for the copyright notice.
+00008 
+00009   CVS Info :
+00010 
+00011     $Author: arnaud02 $ 
+00012     $Date: 2008/03/17 12:57:01 $ 
+00013     $Revision: 1.66 $ 
+00014 
+00015 */
+00016 
+00017 #ifdef __cplusplus
+00018 extern "C" {
+00019 #endif
+00020 
+00021 /*
+00022   Uncomment and edit one of the following #defines if you
+00023   want to specify the config file at compile-time.
+00024 */
+00025 
+00026 /* #define TIDY_CONFIG_FILE "/etc/tidy_config.txt" */ /* original */
+00027 /* #define TIDY_CONFIG_FILE "/etc/tidyrc" */
+00028 /* #define TIDY_CONFIG_FILE "/etc/tidy.conf" */
+00029 
+00030 /*
+00031   Uncomment the following #define if you are on a system
+00032   supporting the HOME environment variable.
+00033   It enables tidy to find config files named ~/.tidyrc if 
+00034   the HTML_TIDY environment variable is not set.
+00035 */
+00036 /* #define TIDY_USER_CONFIG_FILE "~/.tidyrc" */
+00037 
+00038 /*
+00039   Uncomment the following #define if your
+00040   system supports the call getpwnam(). 
+00041   E.g. Unix and Linux.
+00042 
+00043   It enables tidy to find files named 
+00044   ~your/foo for use in the HTML_TIDY environment
+00045   variable or CONFIG_FILE or USER_CONFIGFILE or
+00046   on the command line: -config ~joebob/tidy.cfg
+00047 
+00048   Contributed by Todd Lewis.
+00049 */
+00050 
+00051 /* #define SUPPORT_GETPWNAM */
+00052 
+00053 
+00054 /* Enable/disable support for Big5 and Shift_JIS character encodings */
+00055 #ifndef SUPPORT_ASIAN_ENCODINGS
+00056 #define SUPPORT_ASIAN_ENCODINGS 1
+00057 #endif
+00058 
+00059 /* Enable/disable support for UTF-16 character encodings */
+00060 #ifndef SUPPORT_UTF16_ENCODINGS
+00061 #define SUPPORT_UTF16_ENCODINGS 1
+00062 #endif
+00063 
+00064 /* Enable/disable support for additional accessibility checks */
+00065 #ifndef SUPPORT_ACCESSIBILITY_CHECKS
+00066 #define SUPPORT_ACCESSIBILITY_CHECKS 1
+00067 #endif
+00068 
+00069 
+00070 /* Convenience defines for Mac platforms */
+00071 
+00072 #if defined(macintosh)
+00073 /* Mac OS 6.x/7.x/8.x/9.x, with or without CarbonLib - MPW or Metrowerks 68K/PPC compilers */
+00074 #define MAC_OS_CLASSIC
+00075 #ifndef PLATFORM_NAME
+00076 #define PLATFORM_NAME "Mac OS"
+00077 #endif
+00078 
+00079 /* needed for access() */
+00080 #if !defined(_POSIX) && !defined(NO_ACCESS_SUPPORT)
+00081 #define NO_ACCESS_SUPPORT
+00082 #endif
+00083 
+00084 #ifdef SUPPORT_GETPWNAM
+00085 #undef SUPPORT_GETPWNAM
+00086 #endif
+00087 
+00088 #elif defined(__APPLE__) && defined(__MACH__)
+00089 /* Mac OS X (client) 10.x (or server 1.x/10.x) - gcc or Metrowerks MachO compilers */
+00090 #define MAC_OS_X
+00091 #ifndef PLATFORM_NAME
+00092 #define PLATFORM_NAME "Mac OS X"
+00093 #endif
+00094 #endif
+00095 
+00096 #if defined(MAC_OS_CLASSIC) || defined(MAC_OS_X)
+00097 /* Any OS on Mac platform */
+00098 #define MAC_OS
+00099 #define FILENAMES_CASE_SENSITIVE 0
+00100 #define strcasecmp strcmp
+00101 #ifndef DFLT_REPL_CHARENC
+00102 #define DFLT_REPL_CHARENC MACROMAN
+00103 #endif
+00104 #endif
+00105 
+00106 /* Convenience defines for BSD like platforms */
+00107  
+00108 #if defined(__FreeBSD__)
+00109 #define BSD_BASED_OS
+00110 #ifndef PLATFORM_NAME
+00111 #define PLATFORM_NAME "FreeBSD"
+00112 #endif
+00113 
+00114 #elif defined(__NetBSD__)
+00115 #define BSD_BASED_OS
+00116 #ifndef PLATFORM_NAME
+00117 #define PLATFORM_NAME "NetBSD"
+00118 #endif
+00119 
+00120 #elif defined(__OpenBSD__)
+00121 #define BSD_BASED_OS
+00122 #ifndef PLATFORM_NAME
+00123 #define PLATFORM_NAME "OpenBSD"
+00124 #endif
+00125 
+00126 #elif defined(__DragonFly__)
+00127 #define BSD_BASED_OS
+00128 #ifndef PLATFORM_NAME
+00129 #define PLATFORM_NAME "DragonFly"
+00130 #endif
+00131 
+00132 #elif defined(__MINT__)
+00133 #define BSD_BASED_OS
+00134 #ifndef PLATFORM_NAME
+00135 #define PLATFORM_NAME "FreeMiNT"
+00136 #endif
+00137 
+00138 #elif defined(__bsdi__)
+00139 #define BSD_BASED_OS
+00140 #ifndef PLATFORM_NAME
+00141 #define PLATFORM_NAME "BSD/OS"
+00142 #endif
+00143 
+00144 #endif
+00145 
+00146 /* Convenience defines for Windows platforms */
+00147  
+00148 #if defined(WINDOWS) || defined(_WIN32)
+00149 
+00150 #define WINDOWS_OS
+00151 #ifndef PLATFORM_NAME
+00152 #define PLATFORM_NAME "Windows"
+00153 #endif
+00154 
+00155 #if defined(__MWERKS__) || defined(__MSL__)
+00156 /* not available with Metrowerks Standard Library */
+00157 
+00158 #ifdef SUPPORT_GETPWNAM
+00159 #undef SUPPORT_GETPWNAM
+00160 #endif
+00161 
+00162 /* needed for setmode() */
+00163 #if !defined(NO_SETMODE_SUPPORT)
+00164 #define NO_SETMODE_SUPPORT
+00165 #endif
+00166 
+00167 #define strcasecmp _stricmp
+00168 
+00169 #endif
+00170 
+00171 #if defined(__BORLANDC__)
+00172 #define strcasecmp stricmp
+00173 #endif
+00174 
+00175 #define FILENAMES_CASE_SENSITIVE 0
+00176 #define SUPPORT_POSIX_MAPPED_FILES 0
+00177 
+00178 #endif
+00179 
+00180 /* Convenience defines for Linux platforms */
+00181  
+00182 #if defined(linux) && defined(__alpha__)
+00183 /* Linux on Alpha - gcc compiler */
+00184 #define LINUX_OS
+00185 #ifndef PLATFORM_NAME
+00186 #define PLATFORM_NAME "Linux/Alpha"
+00187 #endif
+00188 
+00189 #elif defined(linux) && defined(__sparc__)
+00190 /* Linux on Sparc - gcc compiler */
+00191 #define LINUX_OS
+00192 #ifndef PLATFORM_NAME
+00193 #define PLATFORM_NAME "Linux/Sparc"
+00194 #endif
+00195 
+00196 #elif defined(linux) && (defined(__i386__) || defined(__i486__) || defined(__i586__) || defined(__i686__))
+00197 /* Linux on x86 - gcc compiler */
+00198 #define LINUX_OS
+00199 #ifndef PLATFORM_NAME
+00200 #define PLATFORM_NAME "Linux/x86"
+00201 #endif
+00202 
+00203 #elif defined(linux) && defined(__powerpc__)
+00204 /* Linux on PPC - gcc compiler */
+00205 #define LINUX_OS
+00206 
+00207 #if defined(__linux__) && defined(__powerpc__)
+00208 
+00209 /* #if #system(linux) */
+00210 /* MkLinux on PPC  - gcc (egcs) compiler */
+00211 /* #define MAC_OS_MKLINUX */
+00212 #ifndef PLATFORM_NAME
+00213 #define PLATFORM_NAME "MkLinux"
+00214 #endif
+00215 
+00216 #else
+00217 
+00218 #ifndef PLATFORM_NAME
+00219 #define PLATFORM_NAME "Linux/PPC"
+00220 #endif
+00221 
+00222 #endif
+00223 
+00224 #elif defined(linux) || defined(__linux__)
+00225 /* generic Linux */
+00226 #define LINUX_OS
+00227 #ifndef PLATFORM_NAME
+00228 #define PLATFORM_NAME "Linux"
+00229 #endif
+00230 
+00231 #endif
+00232 
+00233 /* Convenience defines for Solaris platforms */
+00234  
+00235 #if defined(sun)
+00236 #define SOLARIS_OS
+00237 #ifndef PLATFORM_NAME
+00238 #define PLATFORM_NAME "Solaris"
+00239 #endif
+00240 #endif
+00241 
+00242 /* Convenience defines for HPUX + gcc platforms */
+00243 
+00244 #if defined(__hpux)
+00245 #define HPUX_OS
+00246 #ifndef PLATFORM_NAME
+00247 #define PLATFORM_NAME "HPUX"
+00248 #endif
+00249 #endif
+00250 
+00251 /* Convenience defines for RISCOS + gcc platforms */
+00252 
+00253 #if defined(__riscos__)
+00254 #define RISC_OS
+00255 #ifndef PLATFORM_NAME
+00256 #define PLATFORM_NAME "RISC OS"
+00257 #endif
+00258 #endif
+00259 
+00260 /* Convenience defines for OS/2 + icc/gcc platforms */
+00261 
+00262 #if defined(__OS2__) || defined(__EMX__)
+00263 #define OS2_OS
+00264 #ifndef PLATFORM_NAME
+00265 #define PLATFORM_NAME "OS/2"
+00266 #endif
+00267 #define FILENAMES_CASE_SENSITIVE 0
+00268 #define strcasecmp stricmp
+00269 #endif
+00270 
+00271 /* Convenience defines for IRIX */
+00272 
+00273 #if defined(__sgi)
+00274 #define IRIX_OS
+00275 #ifndef PLATFORM_NAME
+00276 #define PLATFORM_NAME "SGI IRIX"
+00277 #endif
+00278 #endif
+00279 
+00280 /* Convenience defines for AIX */
+00281 
+00282 #if defined(_AIX)
+00283 #define AIX_OS
+00284 #ifndef PLATFORM_NAME
+00285 #define PLATFORM_NAME "IBM AIX"
+00286 #endif
+00287 #endif
+00288 
+00289 
+00290 /* Convenience defines for BeOS platforms */
+00291 
+00292 #if defined(__BEOS__)
+00293 #define BE_OS
+00294 #ifndef PLATFORM_NAME
+00295 #define PLATFORM_NAME "BeOS"
+00296 #endif
+00297 #endif
+00298 
+00299 /* Convenience defines for Cygwin platforms */
+00300 
+00301 #if defined(__CYGWIN__)
+00302 #define CYGWIN_OS
+00303 #ifndef PLATFORM_NAME
+00304 #define PLATFORM_NAME "Cygwin"
+00305 #endif
+00306 #define FILENAMES_CASE_SENSITIVE 0
+00307 #endif
+00308 
+00309 /* Convenience defines for OpenVMS */
+00310 
+00311 #if defined(__VMS)
+00312 #define OPENVMS_OS
+00313 #ifndef PLATFORM_NAME
+00314 #define PLATFORM_NAME "OpenVMS"
+00315 #endif
+00316 #define FILENAMES_CASE_SENSITIVE 0
+00317 #endif
+00318 
+00319 /* Convenience defines for DEC Alpha OSF + gcc platforms */
+00320 
+00321 #if defined(__osf__)
+00322 #define OSF_OS
+00323 #ifndef PLATFORM_NAME
+00324 #define PLATFORM_NAME "DEC Alpha OSF"
+00325 #endif
+00326 #endif
+00327 
+00328 /* Convenience defines for ARM platforms */
+00329 
+00330 #if defined(__arm)
+00331 #define ARM_OS
+00332 
+00333 #if defined(forARM) && defined(__NEWTON_H)
+00334 
+00335 /* Using Newton C++ Tools ARMCpp compiler */
+00336 #define NEWTON_OS
+00337 #ifndef PLATFORM_NAME
+00338 #define PLATFORM_NAME "Newton"
+00339 #endif
+00340 
+00341 #else
+00342 
+00343 #ifndef PLATFORM_NAME
+00344 #define PLATFORM_NAME "ARM"
+00345 #endif
+00346 
+00347 #endif
+00348 
+00349 #endif
+00350 
+00351 #include <ctype.h>
+00352 #include <stdio.h>
+00353 #include <setjmp.h>  /* for longjmp on error exit */
+00354 #include <stdlib.h>
+00355 #include <stdarg.h>  /* may need <varargs.h> for Unix V */
+00356 #include <string.h>
+00357 #include <assert.h>
+00358 
+00359 #ifdef NEEDS_MALLOC_H
+00360 #include <malloc.h>
+00361 #endif
+00362 
+00363 #ifdef SUPPORT_GETPWNAM
+00364 #include <pwd.h>
+00365 #endif
+00366 
+00367 #ifdef NEEDS_UNISTD_H
+00368 #include <unistd.h>  /* needed for unlink on some Unix systems */
+00369 #endif
+00370 
+00371 /* This can be set at compile time.  Usually Windows,
+00372 ** except for Macintosh builds.
+00373 */
+00374 #ifndef DFLT_REPL_CHARENC
+00375 #define DFLT_REPL_CHARENC WIN1252
+00376 #endif
+00377 
+00378 /* By default, use case-sensitive filename comparison.
+00379 */
+00380 #ifndef FILENAMES_CASE_SENSITIVE
+00381 #define FILENAMES_CASE_SENSITIVE 1
+00382 #endif
+00383 
+00384 
+00385 /*
+00386   Tidy preserves the last modified time for the files it
+00387   cleans up.
+00388 */
+00389 
+00390 /*
+00391   If your platform doesn't support <utime.h> and the
+00392   utime() function, or <sys/futime> and the futime()
+00393   function then set PRESERVE_FILE_TIMES to 0.
+00394   
+00395   If your platform doesn't support <sys/utime.h> and the
+00396   futime() function, then set HAS_FUTIME to 0.
+00397   
+00398   If your platform supports <utime.h> and the
+00399   utime() function requires the file to be
+00400   closed first, then set UTIME_NEEDS_CLOSED_FILE to 1.
+00401 */
+00402 
+00403 /* Keep old PRESERVEFILETIMES define for compatibility */
+00404 #ifdef PRESERVEFILETIMES
+00405 #undef PRESERVE_FILE_TIMES
+00406 #define PRESERVE_FILE_TIMES PRESERVEFILETIMES
+00407 #endif
+00408 
+00409 #ifndef PRESERVE_FILE_TIMES
+00410 #if defined(RISC_OS) || defined(OPENVMS_OS) || defined(OSF_OS)
+00411 #define PRESERVE_FILE_TIMES 0
+00412 #else
+00413 #define PRESERVE_FILE_TIMES 1
+00414 #endif
+00415 #endif
+00416 
+00417 #if PRESERVE_FILE_TIMES
+00418 
+00419 #ifndef HAS_FUTIME
+00420 #if defined(CYGWIN_OS) || defined(BE_OS) || defined(OS2_OS) || defined(HPUX_OS) || defined(SOLARIS_OS) || defined(LINUX_OS) || defined(BSD_BASED_OS) || defined(MAC_OS) || defined(__MSL__) || defined(IRIX_OS) || defined(AIX_OS) || defined(__BORLANDC__)
+00421 #define HAS_FUTIME 0
+00422 #else
+00423 #define HAS_FUTIME 1
+00424 #endif
+00425 #endif
+00426 
+00427 #ifndef UTIME_NEEDS_CLOSED_FILE
+00428 #if defined(SOLARIS_OS) || defined(BSD_BASED_OS) || defined(MAC_OS) || defined(__MSL__) || defined(LINUX_OS)
+00429 #define UTIME_NEEDS_CLOSED_FILE 1
+00430 #else
+00431 #define UTIME_NEEDS_CLOSED_FILE 0
+00432 #endif
+00433 #endif
+00434 
+00435 #if defined(MAC_OS_X) || (!defined(MAC_OS_CLASSIC) && !defined(__MSL__))
+00436 #include <sys/types.h> 
+00437 #include <sys/stat.h>
+00438 #else
+00439 #include <stat.h>
+00440 #endif
+00441 
+00442 #if HAS_FUTIME
+00443 #include <sys/utime.h>
+00444 #else
+00445 #include <utime.h>
+00446 #endif /* HASFUTIME */
+00447 
+00448 /*
+00449   MS Windows needs _ prefix for Unix file functions.
+00450   Not required by Metrowerks Standard Library (MSL).
+00451   
+00452   Tidy uses following for preserving the last modified time.
+00453 
+00454   WINDOWS automatically set by Win16 compilers.
+00455   _WIN32 automatically set by Win32 compilers.
+00456 */
+00457 #if defined(_WIN32) && !defined(__MSL__) && !defined(__BORLANDC__)
+00458 
+00459 #define futime _futime
+00460 #define fstat _fstat
+00461 #define utimbuf _utimbuf /* Windows seems to want utimbuf */
+00462 #define stat _stat
+00463 #define utime _utime
+00464 #define vsnprintf _vsnprintf
+00465 #endif /* _WIN32 */
+00466 
+00467 #endif /* PRESERVE_FILE_TIMES */
+00468 
+00469 /*
+00470   MS Windows needs _ prefix for Unix file functions.
+00471   Not required by Metrowerks Standard Library (MSL).
+00472   
+00473   WINDOWS automatically set by Win16 compilers.
+00474   _WIN32 automatically set by Win32 compilers.
+00475 */
+00476 #if defined(_WIN32) && !defined(__MSL__) && !defined(__BORLANDC__)
+00477 
+00478 #ifndef __WATCOMC__
+00479 #define fileno _fileno
+00480 #define setmode _setmode
+00481 #endif
+00482 
+00483 #define access _access
+00484 #define strcasecmp _stricmp
+00485 
+00486 #if _MSC_VER > 1000
+00487 #pragma warning( disable : 4189 ) /* local variable is initialized but not referenced */
+00488 #pragma warning( disable : 4100 ) /* unreferenced formal parameter */
+00489 #pragma warning( disable : 4706 ) /* assignment within conditional expression */
+00490 #endif
+00491 
+00492 #if _MSC_VER > 1300
+00493 #pragma warning( disable : 4996 ) /* disable depreciation warning */
+00494 #endif
+00495 
+00496 #endif /* _WIN32 */
+00497 
+00498 #if defined(_WIN32)
+00499 
+00500 #if (defined(_USRDLL) || defined(_WINDLL)) && !defined(TIDY_EXPORT)
+00501 #define TIDY_EXPORT __declspec( dllexport ) 
+00502 #endif
+00503 
+00504 #ifndef TIDY_CALL
+00505 #ifdef _WIN64
+00506 #  define TIDY_CALL __fastcall
+00507 #else
+00508 #  define TIDY_CALL __stdcall
+00509 #endif
+00510 #endif
+00511 
+00512 #endif /* _WIN32 */
+00513 
+00514 /* hack for gnu sys/types.h file which defines uint and ulong */
+00515 
+00516 #if defined(BE_OS) || defined(SOLARIS_OS) || defined(BSD_BASED_OS) || defined(OSF_OS) || defined(IRIX_OS) || defined(AIX_OS)
+00517 #include <sys/types.h>
+00518 #endif
+00519 #if !defined(HPUX_OS) && !defined(CYGWIN_OS) && !defined(MAC_OS_X) && !defined(BE_OS) && !defined(SOLARIS_OS) && !defined(BSD_BASED_OS) && !defined(OSF_OS) && !defined(IRIX_OS) && !defined(AIX_OS) && !defined(LINUX_OS)
+00520 # undef uint
+00521 typedef unsigned int uint;
+00522 #endif
+00523 #if defined(HPUX_OS) || defined(CYGWIN_OS) || defined(MAC_OS) || defined(BSD_BASED_OS) || defined(_WIN32)
+00524 # undef ulong
+00525 typedef unsigned long ulong;
+00526 #endif
+00527 
+00528 /*
+00529 With GCC 4,  __attribute__ ((visibility("default"))) can be used along compiling with tidylib 
+00530 with "-fvisibility=hidden". See http://gcc.gnu.org/wiki/Visibility and build/gmake/Makefile.
+00531 */
+00532 /*
+00533 #if defined(__GNUC__) && __GNUC__ >= 4
+00534 #define TIDY_EXPORT __attribute__ ((visibility("default")))
+00535 #endif
+00536 */
+00537 
+00538 #ifndef TIDY_EXPORT /* Define it away for most builds */
+00539 #define TIDY_EXPORT 
+00540 #endif
+00541 
+00542 #ifndef TIDY_STRUCT
+00543 #define TIDY_STRUCT
+00544 #endif
+00545 
+00546 typedef unsigned char byte;
+00547 
+00548 typedef uint tchar;         /* single, full character */
+00549 typedef char tmbchar;       /* single, possibly partial character */
+00550 #ifndef TMBSTR_DEFINED
+00551 typedef tmbchar* tmbstr;    /* pointer to buffer of possibly partial chars */
+00552 typedef const tmbchar* ctmbstr; /* Ditto, but const */
+00553 #define NULLSTR (tmbstr)""
+00554 #define TMBSTR_DEFINED
+00555 #endif
+00556 
+00557 #ifndef TIDY_CALL
+00558 #define TIDY_CALL
+00559 #endif
+00560 
+00561 #if defined(__GNUC__) || defined(__INTEL_COMPILER)
+00562 # define ARG_UNUSED(x) x __attribute__((unused))
+00563 #else
+00564 # define ARG_UNUSED(x) x
+00565 #endif
+00566 
+00567 /* HAS_VSNPRINTF triggers the use of "vsnprintf", which is safe related to
+00568    buffer overflow. Therefore, we make it the default unless HAS_VSNPRINTF
+00569    has been defined. */
+00570 #ifndef HAS_VSNPRINTF
+00571 # define HAS_VSNPRINTF 1
+00572 #endif
+00573 
+00574 #ifndef SUPPORT_POSIX_MAPPED_FILES
+00575 # define SUPPORT_POSIX_MAPPED_FILES 1
+00576 #endif
+00577 
+00578 /*
+00579   bool is a reserved word in some but
+00580   not all C++ compilers depending on age
+00581   work around is to avoid bool altogether
+00582   by introducing a new enum called Bool
+00583 */
+00584 /* We could use the C99 definition where supported
+00585 typedef _Bool Bool;
+00586 #define no (_Bool)0
+00587 #define yes (_Bool)1
+00588 */
+00589 typedef enum
+00590 {
+00591    no,
+00592    yes
+00593 } Bool;
+00594 
+00595 /* for NULL pointers 
+00596 #define null ((const void*)0)
+00597 extern void* null;
+00598 */
+00599 
+00600 #if defined(DMALLOC)
+00601 #include "dmalloc.h"
+00602 #endif
+00603 
+00604 /* Opaque data structure.
+00605 *  Cast to implementation type struct within lib.
+00606 *  This will reduce inter-dependencies/conflicts w/ application code.
+00607 */
+00608 #if 1
+00609 #define opaque_type( typenam )\
+00610 struct _##typenam { int _opaque; };\
+00611 typedef struct _##typenam const * typenam
+00612 #else
+00613 #define opaque_type(typenam) typedef const void* typenam
+00614 #endif
+00615 
+00616 /* Opaque data structure used to pass back
+00617 ** and forth to keep current position in a
+00618 ** list or other collection.
+00619 */
+00620 opaque_type( TidyIterator );
+00621 
+00622 #ifdef __cplusplus
+00623 } /* extern "C" */
+00624 #endif
+00625 
+00626 #endif /* __TIDY_PLATFORM_H__ */
+00627 
+00628 
+00629 /*
+00630  * local variables:
+00631  * mode: c
+00632  * indent-tabs-mode: nil
+00633  * c-basic-offset: 4
+00634  * eval: (c-set-offset 'substatement-open 0)
+00635  * end:
+00636  */
+
+
+ + + + + diff --git a/htmldoc/api/resize.js b/htmldoc/api/resize.js new file mode 100644 index 0000000..04fa95c --- /dev/null +++ b/htmldoc/api/resize.js @@ -0,0 +1,81 @@ +var cookie_namespace = 'doxygen'; +var sidenav,navtree,content,header; + +function readCookie(cookie) +{ + var myCookie = cookie_namespace+"_"+cookie+"="; + if (document.cookie) + { + var index = document.cookie.indexOf(myCookie); + if (index != -1) + { + var valStart = index + myCookie.length; + var valEnd = document.cookie.indexOf(";", valStart); + if (valEnd == -1) + { + valEnd = document.cookie.length; + } + var val = document.cookie.substring(valStart, valEnd); + return val; + } + } + return 0; +} + +function writeCookie(cookie, val, expiration) +{ + if (val==undefined) return; + if (expiration == null) + { + var date = new Date(); + date.setTime(date.getTime()+(10*365*24*60*60*1000)); // default expiration is one week + expiration = date.toGMTString(); + } + document.cookie = cookie_namespace + "_" + cookie + "=" + val + "; expires=" + expiration+"; path=/"; +} + +function resizeWidth() +{ + var windowWidth = $(window).width() + "px"; + var sidenavWidth = $(sidenav).width(); + content.css({marginLeft:parseInt(sidenavWidth)+6+"px"}); //account for 6px-wide handle-bar + writeCookie('width',sidenavWidth, null); +} + +function restoreWidth(navWidth) +{ + var windowWidth = $(window).width() + "px"; + content.css({marginLeft:parseInt(navWidth)+6+"px"}); + sidenav.css({width:navWidth + "px"}); +} + +function resizeHeight() +{ + var headerHeight = header.height(); + var footerHeight = footer.height(); + var windowHeight = $(window).height() - headerHeight - footerHeight; + content.css({height:windowHeight + "px"}); + navtree.css({height:windowHeight + "px"}); + sidenav.css({height:windowHeight + "px",top: headerHeight+"px"}); +} + +function initResizable() +{ + header = $("#top"); + sidenav = $("#side-nav"); + content = $("#doc-content"); + navtree = $("#nav-tree"); + footer = $("#nav-path"); + $(".side-nav-resizable").resizable({resize: function(e, ui) { resizeWidth(); } }); + $(window).resize(function() { resizeHeight(); }); + var width = readCookie('width'); + if (width) { restoreWidth(width); } else { resizeWidth(); } + resizeHeight(); + var url = location.href; + var i=url.indexOf("#"); + if (i>=0) window.location.hash=url.substr(i); + var _preventDefault = function(evt) { evt.preventDefault(); }; + $("#splitbar").bind("dragstart", _preventDefault).bind("selectstart", _preventDefault); +} + + diff --git a/htmldoc/api/structTidyAttr.html b/htmldoc/api/structTidyAttr.html new file mode 100644 index 0000000..9617c99 --- /dev/null +++ b/htmldoc/api/structTidyAttr.html @@ -0,0 +1,86 @@ + + + + +HTML Tidy: TidyAttr Struct Reference + + + + + + + + + + + + +
+ + +
+ + + + + + + + + + + + + +
+
HTML Tidy +  0.1 +
+ +
+
+ + +
+
+ +
+
+
+ +
+
+
+
TidyAttr Struct Reference
+
+
+ +

#include <tidy.h>

+

Detailed Description

+

Opaque attribute datatype

+

The documentation for this struct was generated from the following file: +
+
+ + + + + diff --git a/htmldoc/api/structTidyDoc.html b/htmldoc/api/structTidyDoc.html new file mode 100644 index 0000000..1e8d2b9 --- /dev/null +++ b/htmldoc/api/structTidyDoc.html @@ -0,0 +1,86 @@ + + + + +HTML Tidy: TidyDoc Struct Reference + + + + + + + + + + + + +
+ + +
+ + + + + + + + + + + + + +
+
HTML Tidy +  0.1 +
+ +
+
+ + +
+
+ +
+
+
+ +
+
+
+
TidyDoc Struct Reference
+
+
+ +

#include <tidy.h>

+

Detailed Description

+

Opaque document datatype

+

The documentation for this struct was generated from the following file: +
+
+ + + + + diff --git a/htmldoc/api/structTidyNode.html b/htmldoc/api/structTidyNode.html new file mode 100644 index 0000000..1d4c051 --- /dev/null +++ b/htmldoc/api/structTidyNode.html @@ -0,0 +1,86 @@ + + + + +HTML Tidy: TidyNode Struct Reference + + + + + + + + + + + + +
+ + +
+ + + + + + + + + + + + + +
+
HTML Tidy +  0.1 +
+ +
+
+ + +
+
+ +
+
+
+ +
+
+
+
TidyNode Struct Reference
+
+
+ +

#include <tidy.h>

+

Detailed Description

+

Opaque node datatype

+

The documentation for this struct was generated from the following file: +
+
+ + + + + diff --git a/htmldoc/api/structTidyOption.html b/htmldoc/api/structTidyOption.html new file mode 100644 index 0000000..b150dec --- /dev/null +++ b/htmldoc/api/structTidyOption.html @@ -0,0 +1,86 @@ + + + + +HTML Tidy: TidyOption Struct Reference + + + + + + + + + + + + +
+ + +
+ + + + + + + + + + + + + +
+
HTML Tidy +  0.1 +
+ +
+
+ + +
+
+ +
+
+
+ +
+
+
+
TidyOption Struct Reference
+
+
+ +

#include <tidy.h>

+

Detailed Description

+

Opaque option datatype

+

The documentation for this struct was generated from the following file: +
+
+ + + + + diff --git a/htmldoc/api/struct__TidyAllocator.html b/htmldoc/api/struct__TidyAllocator.html new file mode 100644 index 0000000..9a2ceae --- /dev/null +++ b/htmldoc/api/struct__TidyAllocator.html @@ -0,0 +1,100 @@ + + + + +HTML Tidy: _TidyAllocator Struct Reference + + + + + + + + + + + + +
+ + +
+ + + + + + + + + + + + + +
+
HTML Tidy +  0.1 +
+ +
+
+ + +
+
+ +
+
+
+ +
+
+ +
+
_TidyAllocator Struct Reference
+
+
+ +

#include <tidy.h>

+ + + +

+Data Fields

+const TidyAllocatorVtblvtbl
+

Detailed Description

+

An allocator. To create your own allocator, do something like the following:

+

typedef struct _MyAllocator { TidyAllocator base; ...other custom allocator state... } MyAllocator;

+

void* MyAllocator_alloc(TidyAllocator *base, void *block, size_t nBytes) { MyAllocator *self = (MyAllocator*)base; ... } (etc)

+

static const TidyAllocatorVtbl MyAllocatorVtbl = { MyAllocator_alloc, MyAllocator_realloc, MyAllocator_free, MyAllocator_panic };

+

myAllocator allocator; TidyDoc doc;

+

allocator.base.vtbl = &MyAllocatorVtbl; ...initialise allocator specific state... doc = tidyCreateWithAllocator(&allocator); ...

+

Although this looks slightly long winded, the advantage is that to create a custom allocator you simply need to set the vtbl pointer correctly. The vtbl itself can reside in static/global data, and hence does not need to be initialised each time an allocator is created, and furthermore the memory is shared amongst all created allocators.

+

The documentation for this struct was generated from the following file: +
+
+ + + + + diff --git a/htmldoc/api/struct__TidyAllocatorVtbl.html b/htmldoc/api/struct__TidyAllocatorVtbl.html new file mode 100644 index 0000000..2f74e31 --- /dev/null +++ b/htmldoc/api/struct__TidyAllocatorVtbl.html @@ -0,0 +1,202 @@ + + + + +HTML Tidy: _TidyAllocatorVtbl Struct Reference + + + + + + + + + + + + +
+ + +
+ + + + + + + + + + + + + +
+
HTML Tidy +  0.1 +
+ +
+
+ + +
+
+ +
+
+
+ +
+
+ +
+
_TidyAllocatorVtbl Struct Reference
+
+
+ +

#include <tidy.h>

+ + + + + + + + + +

+Public Member Functions

void *TIDY_CALL * alloc (TidyAllocator *self, size_t nBytes)
void *TIDY_CALL * realloc (TidyAllocator *self, void *block, size_t nBytes)
 void (TIDY_CALL *free)(TidyAllocator *self
 void (TIDY_CALL *panic)(TidyAllocator *self

+Data Fields

+void * block
+ctmbstr msg
+

Detailed Description

+

An allocator's function table. All functions here must be provided.

+

Member Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
void* TIDY_CALL* _TidyAllocatorVtbl::alloc (TidyAllocatorself,
size_t nBytes 
)
+
+
+

Called to allocate a block of nBytes of memory

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void* TIDY_CALL* _TidyAllocatorVtbl::realloc (TidyAllocatorself,
void * block,
size_t nBytes 
)
+
+
+

Called to resize (grow, in general) a block of memory. Must support being called with NULL.

+ +
+
+ +
+
+ + + + + + + + +
_TidyAllocatorVtbl::void (TIDY_CALL * free)
+
+
+

Called to free a previously allocated block of memory

+ +
+
+ +
+
+ + + + + + + + +
_TidyAllocatorVtbl::void (TIDY_CALL * panic)
+
+
+

Called when a panic condition is detected. Must support block == NULL. This function is not called if either alloc or realloc fails; it is up to the allocator to do this. Currently this function can only be called if an error is detected in the tree integrity via the internal function CheckNodeIntegrity(). This is a situation that can only arise in the case of a programming error in tidylib. You can turn off node integrity checking by defining the constant NO_NODE_INTEGRITY_CHECK during the build.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+ + + + + diff --git a/htmldoc/api/struct__TidyBuffer.html b/htmldoc/api/struct__TidyBuffer.html new file mode 100644 index 0000000..9fce340 --- /dev/null +++ b/htmldoc/api/struct__TidyBuffer.html @@ -0,0 +1,168 @@ + + + + +HTML Tidy: _TidyBuffer Struct Reference + + + + + + + + + + + + +
+ + +
+ + + + + + + + + + + + + +
+
HTML Tidy +  0.1 +
+ +
+
+ + +
+
+ +
+
+
+ +
+
+ +
+
_TidyBuffer Struct Reference
+
+
+ +

#include <buffio.h>

+ + + + + + + +

+Data Fields

TidyAllocatorallocator
byte * bp
uint size
uint allocated
uint next
+

Detailed Description

+

TidyBuffer - A chunk of memory

+

Field Documentation

+ +
+ +
+

Memory allocator

+ +
+
+ +
+
+ + + + +
byte* _TidyBuffer::bp
+
+
+

Pointer to bytes

+ +
+
+ +
+
+ + + + +
uint _TidyBuffer::size
+
+
+

# bytes currently in use

+ +
+
+ +
+
+ + + + +
uint _TidyBuffer::allocated
+
+
+

# bytes allocated

+ +
+
+ +
+
+ + + + +
uint _TidyBuffer::next
+
+
+

Offset of current input position

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+ + + + + diff --git a/htmldoc/api/struct__TidyInputSource.html b/htmldoc/api/struct__TidyInputSource.html new file mode 100644 index 0000000..d117dbc --- /dev/null +++ b/htmldoc/api/struct__TidyInputSource.html @@ -0,0 +1,153 @@ + + + + +HTML Tidy: _TidyInputSource Struct Reference + + + + + + + + + + + + +
+ + +
+ + + + + + + + + + + + + +
+
HTML Tidy +  0.1 +
+ +
+
+ + +
+
+ +
+
+
+ +
+
+ +
+
_TidyInputSource Struct Reference
+
+
+ +

#include <tidy.h>

+ + + + + + +

+Data Fields

void * sourceData
TidyGetByteFunc getByte
TidyUngetByteFunc ungetByte
TidyEOFFunc eof
+

Detailed Description

+

TidyInputSource - Delivers raw bytes of input

+

Field Documentation

+ +
+
+ + + + +
void* _TidyInputSource::sourceData
+
+
+

Input context. Passed to callbacks

+ +
+
+ +
+ +
+

Pointer to "get byte" callback

+ +
+
+ +
+ +
+

Pointer to "unget" callback

+ +
+
+ +
+ +
+

Pointer to "eof" callback

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+ + + + + diff --git a/htmldoc/api/struct__TidyOutputSink.html b/htmldoc/api/struct__TidyOutputSink.html new file mode 100644 index 0000000..c05f5a5 --- /dev/null +++ b/htmldoc/api/struct__TidyOutputSink.html @@ -0,0 +1,123 @@ + + + + +HTML Tidy: _TidyOutputSink Struct Reference + + + + + + + + + + + + +
+ + +
+ + + + + + + + + + + + + +
+
HTML Tidy +  0.1 +
+ +
+
+ + +
+
+ +
+
+
+ +
+
+ +
+
_TidyOutputSink Struct Reference
+
+
+ +

#include <tidy.h>

+ + + + +

+Data Fields

void * sinkData
TidyPutByteFunc putByte
+

Detailed Description

+

TidyOutputSink - accepts raw bytes of output

+

Field Documentation

+ +
+
+ + + + +
void* _TidyOutputSink::sinkData
+
+
+

Output context. Passed to callbacks

+ +
+
+ +
+ +
+

Pointer to "put byte" callback

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+ + + + + diff --git a/htmldoc/api/tab_a.png b/htmldoc/api/tab_a.png new file mode 100644 index 0000000..2d99ef2 Binary files /dev/null and b/htmldoc/api/tab_a.png differ diff --git a/htmldoc/api/tab_b.png b/htmldoc/api/tab_b.png new file mode 100644 index 0000000..b2c3d2b Binary files /dev/null and b/htmldoc/api/tab_b.png differ diff --git a/htmldoc/api/tab_h.png b/htmldoc/api/tab_h.png new file mode 100644 index 0000000..c11f48f Binary files /dev/null and b/htmldoc/api/tab_h.png differ diff --git a/htmldoc/api/tab_s.png b/htmldoc/api/tab_s.png new file mode 100644 index 0000000..978943a Binary files /dev/null and b/htmldoc/api/tab_s.png differ diff --git a/htmldoc/api/tabs.css b/htmldoc/api/tabs.css new file mode 100644 index 0000000..2192056 --- /dev/null +++ b/htmldoc/api/tabs.css @@ -0,0 +1,59 @@ +.tabs, .tabs2, .tabs3 { + background-image: url('tab_b.png'); + width: 100%; + z-index: 101; + font-size: 13px; +} + +.tabs2 { + font-size: 10px; +} +.tabs3 { + font-size: 9px; +} + +.tablist { + margin: 0; + padding: 0; + display: table; +} + +.tablist li { + float: left; + display: table-cell; + background-image: url('tab_b.png'); + line-height: 36px; + list-style: none; +} + +.tablist a { + display: block; + padding: 0 20px; + font-weight: bold; + background-image:url('tab_s.png'); + background-repeat:no-repeat; + background-position:right; + color: #283A5D; + text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); + text-decoration: none; + outline: none; +} + +.tabs3 .tablist a { + padding: 0 10px; +} + +.tablist a:hover { + background-image: url('tab_h.png'); + background-repeat:repeat-x; + color: #fff; + text-shadow: 0px 1px 1px rgba(0, 0, 0, 1.0); + text-decoration: none; +} + +.tablist li.current a { + background-image: url('tab_a.png'); + background-repeat:repeat-x; + color: #fff; + text-shadow: 0px 1px 1px rgba(0, 0, 0, 1.0); +} diff --git a/htmldoc/api/tidy_8h.html b/htmldoc/api/tidy_8h.html new file mode 100644 index 0000000..81a80f6 --- /dev/null +++ b/htmldoc/api/tidy_8h.html @@ -0,0 +1,634 @@ + + + + +HTML Tidy: tidy.h File Reference + + + + + + + + + + + + +
+ + +
+ + + + + + + + + + + + + +
+
HTML Tidy +  0.1 +
+ +
+
+ + +
+
+ +
+
+
+ +
+
+ +
+
tidy.h File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Data Structures

struct  _TidyAllocatorVtbl
struct  _TidyAllocator
struct  _TidyInputSource
struct  _TidyOutputSink

+Defines

#define EndOfStream   (~0u)

+Typedefs

+typedef struct _TidyBuffer TidyBuffer
typedef struct _TidyAllocatorVtbl TidyAllocatorVtbl
typedef struct _TidyAllocator TidyAllocator
typedef void *(TIDY_CALL * TidyMalloc )(size_t len)
typedef void *(TIDY_CALL * TidyRealloc )(void *buf, size_t len)
typedef void(TIDY_CALL * TidyFree )(void *buf)
typedef void(TIDY_CALL * TidyPanic )(ctmbstr mssg)
typedef Bool(TIDY_CALL * TidyOptCallback )(ctmbstr option, ctmbstr value)
typedef int(TIDY_CALL * TidyGetByteFunc )(void *sourceData)
typedef void(TIDY_CALL * TidyUngetByteFunc )(void *sourceData, byte bt)
typedef Bool(TIDY_CALL * TidyEOFFunc )(void *sourceData)
typedef TIDY_STRUCT struct
+_TidyInputSource 
TidyInputSource
typedef void(TIDY_CALL * TidyPutByteFunc )(void *sinkData, byte bt)
typedef TIDY_STRUCT struct
+_TidyOutputSink 
TidyOutputSink
typedef Bool(TIDY_CALL * TidyReportFilter )(TidyDoc tdoc, TidyReportLevel lvl, uint line, uint col, ctmbstr mssg)

+Functions

opaque_type (TidyDoc)
opaque_type (TidyOption)
opaque_type (TidyNode)
opaque_type (TidyAttr)
Bool TIDY_CALL tidySetMallocCall (TidyMalloc fmalloc)
Bool TIDY_CALL tidySetReallocCall (TidyRealloc frealloc)
Bool TIDY_CALL tidySetFreeCall (TidyFree ffree)
Bool TIDY_CALL tidySetPanicCall (TidyPanic fpanic)
+TidyDoc TIDY_CALL tidyCreate (void)
+TidyDoc TIDY_CALL tidyCreateWithAllocator (TidyAllocator *allocator)
+void TIDY_CALL tidyRelease (TidyDoc tdoc)
void TIDY_CALL tidySetAppData (TidyDoc tdoc, void *appData)
void *TIDY_CALL tidyGetAppData (TidyDoc tdoc)
ctmbstr TIDY_CALL tidyReleaseDate (void)
int TIDY_CALL tidyStatus (TidyDoc tdoc)
int TIDY_CALL tidyDetectedHtmlVersion (TidyDoc tdoc)
Bool TIDY_CALL tidyDetectedXhtml (TidyDoc tdoc)
Bool TIDY_CALL tidyDetectedGenericXml (TidyDoc tdoc)
uint TIDY_CALL tidyErrorCount (TidyDoc tdoc)
uint TIDY_CALL tidyWarningCount (TidyDoc tdoc)
uint TIDY_CALL tidyAccessWarningCount (TidyDoc tdoc)
uint TIDY_CALL tidyConfigErrorCount (TidyDoc tdoc)
int TIDY_CALL tidyLoadConfig (TidyDoc tdoc, ctmbstr configFile)
int TIDY_CALL tidyLoadConfigEnc (TidyDoc tdoc, ctmbstr configFile, ctmbstr charenc)
+Bool TIDY_CALL tidyFileExists (TidyDoc tdoc, ctmbstr filename)
int TIDY_CALL tidySetCharEncoding (TidyDoc tdoc, ctmbstr encnam)
int TIDY_CALL tidySetInCharEncoding (TidyDoc tdoc, ctmbstr encnam)
int TIDY_CALL tidySetOutCharEncoding (TidyDoc tdoc, ctmbstr encnam)
+Bool TIDY_CALL tidySetOptionCallback (TidyDoc tdoc, TidyOptCallback pOptCallback)
TidyOptionId TIDY_CALL tidyOptGetIdForName (ctmbstr optnam)
TidyIterator TIDY_CALL tidyGetOptionList (TidyDoc tdoc)
TidyOption TIDY_CALL tidyGetNextOption (TidyDoc tdoc, TidyIterator *pos)
TidyOption TIDY_CALL tidyGetOption (TidyDoc tdoc, TidyOptionId optId)
TidyOption TIDY_CALL tidyGetOptionByName (TidyDoc tdoc, ctmbstr optnam)
TidyOptionId TIDY_CALL tidyOptGetId (TidyOption opt)
ctmbstr TIDY_CALL tidyOptGetName (TidyOption opt)
TidyOptionType TIDY_CALL tidyOptGetType (TidyOption opt)
Bool TIDY_CALL tidyOptIsReadOnly (TidyOption opt)
TidyConfigCategory TIDY_CALL tidyOptGetCategory (TidyOption opt)
ctmbstr TIDY_CALL tidyOptGetDefault (TidyOption opt)
ulong TIDY_CALL tidyOptGetDefaultInt (TidyOption opt)
Bool TIDY_CALL tidyOptGetDefaultBool (TidyOption opt)
TidyIterator TIDY_CALL tidyOptGetPickList (TidyOption opt)
ctmbstr TIDY_CALL tidyOptGetNextPick (TidyOption opt, TidyIterator *pos)
ctmbstr TIDY_CALL tidyOptGetValue (TidyDoc tdoc, TidyOptionId optId)
Bool TIDY_CALL tidyOptSetValue (TidyDoc tdoc, TidyOptionId optId, ctmbstr val)
Bool TIDY_CALL tidyOptParseValue (TidyDoc tdoc, ctmbstr optnam, ctmbstr val)
ulong TIDY_CALL tidyOptGetInt (TidyDoc tdoc, TidyOptionId optId)
Bool TIDY_CALL tidyOptSetInt (TidyDoc tdoc, TidyOptionId optId, ulong val)
Bool TIDY_CALL tidyOptGetBool (TidyDoc tdoc, TidyOptionId optId)
Bool TIDY_CALL tidyOptSetBool (TidyDoc tdoc, TidyOptionId optId, Bool val)
Bool TIDY_CALL tidyOptResetToDefault (TidyDoc tdoc, TidyOptionId opt)
Bool TIDY_CALL tidyOptResetAllToDefault (TidyDoc tdoc)
Bool TIDY_CALL tidyOptSnapshot (TidyDoc tdoc)
Bool TIDY_CALL tidyOptResetToSnapshot (TidyDoc tdoc)
Bool TIDY_CALL tidyOptDiffThanDefault (TidyDoc tdoc)
Bool TIDY_CALL tidyOptDiffThanSnapshot (TidyDoc tdoc)
Bool TIDY_CALL tidyOptCopyConfig (TidyDoc tdocTo, TidyDoc tdocFrom)
ctmbstr TIDY_CALL tidyOptGetEncName (TidyDoc tdoc, TidyOptionId optId)
ctmbstr TIDY_CALL tidyOptGetCurrPick (TidyDoc tdoc, TidyOptionId optId)
TidyIterator TIDY_CALL tidyOptGetDeclTagList (TidyDoc tdoc)
ctmbstr TIDY_CALL tidyOptGetNextDeclTag (TidyDoc tdoc, TidyOptionId optId, TidyIterator *iter)
ctmbstr TIDY_CALL tidyOptGetDoc (TidyDoc tdoc, TidyOption opt)
TidyIterator TIDY_CALL tidyOptGetDocLinksList (TidyDoc tdoc, TidyOption opt)
TidyOption TIDY_CALL tidyOptGetNextDocLinks (TidyDoc tdoc, TidyIterator *pos)
Bool TIDY_CALL tidyInitSource (TidyInputSource *source, void *srcData, TidyGetByteFunc gbFunc, TidyUngetByteFunc ugbFunc, TidyEOFFunc endFunc)
uint TIDY_CALL tidyGetByte (TidyInputSource *source)
void TIDY_CALL tidyUngetByte (TidyInputSource *source, uint byteValue)
Bool TIDY_CALL tidyIsEOF (TidyInputSource *source)
Bool TIDY_CALL tidyInitSink (TidyOutputSink *sink, void *snkData, TidyPutByteFunc pbFunc)
void TIDY_CALL tidyPutByte (TidyOutputSink *sink, uint byteValue)
Bool TIDY_CALL tidySetReportFilter (TidyDoc tdoc, TidyReportFilter filtCallback)
FILE *TIDY_CALL tidySetErrorFile (TidyDoc tdoc, ctmbstr errfilnam)
int TIDY_CALL tidySetErrorBuffer (TidyDoc tdoc, TidyBuffer *errbuf)
int TIDY_CALL tidySetErrorSink (TidyDoc tdoc, TidyOutputSink *sink)
int TIDY_CALL tidyParseFile (TidyDoc tdoc, ctmbstr filename)
int TIDY_CALL tidyParseStdin (TidyDoc tdoc)
int TIDY_CALL tidyParseString (TidyDoc tdoc, ctmbstr content)
int TIDY_CALL tidyParseBuffer (TidyDoc tdoc, TidyBuffer *buf)
int TIDY_CALL tidyParseSource (TidyDoc tdoc, TidyInputSource *source)
int TIDY_CALL tidyCleanAndRepair (TidyDoc tdoc)
int TIDY_CALL tidyRunDiagnostics (TidyDoc tdoc)
int TIDY_CALL tidySaveFile (TidyDoc tdoc, ctmbstr filename)
int TIDY_CALL tidySaveStdout (TidyDoc tdoc)
int TIDY_CALL tidySaveBuffer (TidyDoc tdoc, TidyBuffer *buf)
int TIDY_CALL tidySaveString (TidyDoc tdoc, tmbstr buffer, uint *buflen)
int TIDY_CALL tidySaveSink (TidyDoc tdoc, TidyOutputSink *sink)
int TIDY_CALL tidyOptSaveFile (TidyDoc tdoc, ctmbstr cfgfil)
int TIDY_CALL tidyOptSaveSink (TidyDoc tdoc, TidyOutputSink *sink)
void TIDY_CALL tidyErrorSummary (TidyDoc tdoc)
void TIDY_CALL tidyGeneralInfo (TidyDoc tdoc)
+TidyNode TIDY_CALL tidyGetRoot (TidyDoc tdoc)
+TidyNode TIDY_CALL tidyGetHtml (TidyDoc tdoc)
+TidyNode TIDY_CALL tidyGetHead (TidyDoc tdoc)
+TidyNode TIDY_CALL tidyGetBody (TidyDoc tdoc)
+TidyNode TIDY_CALL tidyGetParent (TidyNode tnod)
+TidyNode TIDY_CALL tidyGetChild (TidyNode tnod)
+TidyNode TIDY_CALL tidyGetNext (TidyNode tnod)
+TidyNode TIDY_CALL tidyGetPrev (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrFirst (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrNext (TidyAttr tattr)
+ctmbstr TIDY_CALL tidyAttrName (TidyAttr tattr)
+ctmbstr TIDY_CALL tidyAttrValue (TidyAttr tattr)
+TidyNodeType TIDY_CALL tidyNodeGetType (TidyNode tnod)
+ctmbstr TIDY_CALL tidyNodeGetName (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsText (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsProp (TidyDoc tdoc, TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsHeader (TidyNode tnod)
+Bool TIDY_CALL tidyNodeHasText (TidyDoc tdoc, TidyNode tnod)
+Bool TIDY_CALL tidyNodeGetText (TidyDoc tdoc, TidyNode tnod, TidyBuffer *buf)
+Bool TIDY_CALL tidyNodeGetValue (TidyDoc tdoc, TidyNode tnod, TidyBuffer *buf)
+TidyTagId TIDY_CALL tidyNodeGetId (TidyNode tnod)
+uint TIDY_CALL tidyNodeLine (TidyNode tnod)
+uint TIDY_CALL tidyNodeColumn (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsHTML (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsHEAD (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsTITLE (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsBASE (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsMETA (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsBODY (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsFRAMESET (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsFRAME (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsIFRAME (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsNOFRAMES (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsHR (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsH1 (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsH2 (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsPRE (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsLISTING (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsP (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsUL (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsOL (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsDL (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsDIR (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsLI (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsDT (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsDD (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsTABLE (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsCAPTION (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsTD (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsTH (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsTR (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsCOL (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsCOLGROUP (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsBR (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsA (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsLINK (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsB (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsI (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsSTRONG (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsEM (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsBIG (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsSMALL (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsPARAM (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsOPTION (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsOPTGROUP (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsIMG (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsMAP (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsAREA (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsNOBR (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsWBR (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsFONT (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsLAYER (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsSPACER (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsCENTER (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsSTYLE (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsSCRIPT (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsNOSCRIPT (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsFORM (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsTEXTAREA (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsBLOCKQUOTE (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsAPPLET (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsOBJECT (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsDIV (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsSPAN (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsINPUT (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsQ (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsLABEL (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsH3 (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsH4 (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsH5 (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsH6 (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsADDRESS (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsXMP (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsSELECT (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsBLINK (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsMARQUEE (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsEMBED (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsBASEFONT (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsISINDEX (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsS (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsSTRIKE (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsU (TidyNode tnod)
+Bool TIDY_CALL tidyNodeIsMENU (TidyNode tnod)
+TidyAttrId TIDY_CALL tidyAttrGetId (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsEvent (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsProp (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsHREF (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsSRC (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsID (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsNAME (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsSUMMARY (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsALT (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsLONGDESC (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsUSEMAP (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsISMAP (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsLANGUAGE (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsTYPE (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsVALUE (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsCONTENT (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsTITLE (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsXMLNS (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsDATAFLD (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsWIDTH (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsHEIGHT (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsFOR (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsSELECTED (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsCHECKED (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsLANG (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsTARGET (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsHTTP_EQUIV (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsREL (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsOnMOUSEMOVE (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsOnMOUSEDOWN (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsOnMOUSEUP (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsOnCLICK (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsOnMOUSEOVER (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsOnMOUSEOUT (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsOnKEYDOWN (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsOnKEYUP (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsOnKEYPRESS (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsOnFOCUS (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsOnBLUR (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsBGCOLOR (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsLINK (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsALINK (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsVLINK (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsTEXT (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsSTYLE (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsABBR (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsCOLSPAN (TidyAttr tattr)
+Bool TIDY_CALL tidyAttrIsROWSPAN (TidyAttr tattr)
+TidyAttr TIDY_CALL tidyAttrGetById (TidyNode tnod, TidyAttrId attId)
+TidyAttr TIDY_CALL tidyAttrGetHREF (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetSRC (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetID (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetNAME (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetSUMMARY (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetALT (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetLONGDESC (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetUSEMAP (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetISMAP (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetLANGUAGE (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetTYPE (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetVALUE (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetCONTENT (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetTITLE (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetXMLNS (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetDATAFLD (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetWIDTH (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetHEIGHT (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetFOR (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetSELECTED (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetCHECKED (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetLANG (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetTARGET (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetHTTP_EQUIV (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetREL (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetOnMOUSEMOVE (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetOnMOUSEDOWN (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetOnMOUSEUP (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetOnCLICK (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetOnMOUSEOVER (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetOnMOUSEOUT (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetOnKEYDOWN (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetOnKEYUP (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetOnKEYPRESS (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetOnFOCUS (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetOnBLUR (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetBGCOLOR (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetLINK (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetALINK (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetVLINK (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetTEXT (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetSTYLE (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetABBR (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetCOLSPAN (TidyNode tnod)
+TidyAttr TIDY_CALL tidyAttrGetROWSPAN (TidyNode tnod)
+

Detailed Description

+
    +
  • Defines HTML Tidy API implemented by tidy library.
  • +
+

Public interface is const-correct and doesn't explicitly depend on any globals. Thus, thread-safety may be introduced w/out changing the interface.

+

Looking ahead to a C++ wrapper, C functions always pass this-equivalent as 1st arg.

+

Copyright (c) 1998-2008 World Wide Web Consortium (Massachusetts Institute of Technology, European Research Consortium for Informatics and Mathematics, Keio University). All Rights Reserved.

+

CVS Info :

+
Author:
arnaud02
+
Date:
2008/04/22 11:00:42
+
Revision:
1.22
+

Contributing Author(s):

+

Dave Raggett <dsr@w3.org>

+

The contributing author(s) would like to thank all those who helped with testing, bug fixes and suggestions for improvements. This wouldn't have been possible without your help.

+

COPYRIGHT NOTICE:

+

This software and documentation is provided "as is," and the copyright holders and contributing author(s) make no representations or warranties, express or implied, including but not limited to, warranties of merchantability or fitness for any particular purpose or that the use of the software or documentation will not infringe any third party patents, copyrights, trademarks or other rights.

+

The copyright holders and contributing author(s) will not be held liable for any direct, indirect, special or consequential damages arising out of any use of the software or documentation, even if advised of the possibility of such damage.

+

Permission is hereby granted to use, copy, modify, and distribute this source code, or portions hereof, documentation and executables, for any purpose, without fee, subject to the following restrictions:

+

1. The origin of this source code must not be misrepresented. 2. Altered versions must be plainly marked as such and must not be misrepresented as being the original source. 3. This Copyright notice may not be removed or altered from any source or altered source distribution.

+

The copyright holders and contributing author(s) specifically permit, without fee, and encourage the use of this source code as a component for supporting the Hypertext Markup Language in commercial products. If you use this source code in a product, acknowledgment is not required but would be appreciated.

+

Created 2001-05-20 by Charles Reitzel Updated 2002-07-01 by Charles Reitzel - 1st Implementation

+
+
+ + + + + diff --git a/htmldoc/api/tidy_8h_source.html b/htmldoc/api/tidy_8h_source.html new file mode 100644 index 0000000..caaa6a8 --- /dev/null +++ b/htmldoc/api/tidy_8h_source.html @@ -0,0 +1,1176 @@ + + + + +HTML Tidy: tidy.h Source File + + + + + + + + + + + + +
+ + +
+ + + + + + + + + + + + + +
+
HTML Tidy +  0.1 +
+ +
+
+ + +
+
+ +
+
+
+ +
+
+
+
tidy.h
+
+
+Go to the documentation of this file.
00001 #ifndef __TIDY_H__
+00002 #define __TIDY_H__
+00003 
+00004 /** @file tidy.h - Defines HTML Tidy API implemented by tidy library.
+00005 
+00006   Public interface is const-correct and doesn't explicitly depend
+00007   on any globals.  Thus, thread-safety may be introduced w/out
+00008   changing the interface.
+00009 
+00010   Looking ahead to a C++ wrapper, C functions always pass 
+00011   this-equivalent as 1st arg.
+00012 
+00013 
+00014   Copyright (c) 1998-2008 World Wide Web Consortium
+00015   (Massachusetts Institute of Technology, European Research 
+00016   Consortium for Informatics and Mathematics, Keio University).
+00017   All Rights Reserved.
+00018 
+00019   CVS Info :
+00020 
+00021     $Author: arnaud02 $ 
+00022     $Date: 2008/04/22 11:00:42 $ 
+00023     $Revision: 1.22 $ 
+00024 
+00025   Contributing Author(s):
+00026 
+00027      Dave Raggett <dsr@w3.org>
+00028 
+00029   The contributing author(s) would like to thank all those who
+00030   helped with testing, bug fixes and suggestions for improvements. 
+00031   This wouldn't have been possible without your help.
+00032 
+00033   COPYRIGHT NOTICE:
+00034  
+00035   This software and documentation is provided "as is," and
+00036   the copyright holders and contributing author(s) make no
+00037   representations or warranties, express or implied, including
+00038   but not limited to, warranties of merchantability or fitness
+00039   for any particular purpose or that the use of the software or
+00040   documentation will not infringe any third party patents,
+00041   copyrights, trademarks or other rights. 
+00042 
+00043   The copyright holders and contributing author(s) will not be held
+00044   liable for any direct, indirect, special or consequential damages
+00045   arising out of any use of the software or documentation, even if
+00046   advised of the possibility of such damage.
+00047 
+00048   Permission is hereby granted to use, copy, modify, and distribute
+00049   this source code, or portions hereof, documentation and executables,
+00050   for any purpose, without fee, subject to the following restrictions:
+00051 
+00052   1. The origin of this source code must not be misrepresented.
+00053   2. Altered versions must be plainly marked as such and must
+00054      not be misrepresented as being the original source.
+00055   3. This Copyright notice may not be removed or altered from any
+00056      source or altered source distribution.
+00057  
+00058   The copyright holders and contributing author(s) specifically
+00059   permit, without fee, and encourage the use of this source code
+00060   as a component for supporting the Hypertext Markup Language in
+00061   commercial products. If you use this source code in a product,
+00062   acknowledgment is not required but would be appreciated.
+00063 
+00064 
+00065   Created 2001-05-20 by Charles Reitzel
+00066   Updated 2002-07-01 by Charles Reitzel - 1st Implementation
+00067 
+00068 */
+00069 
+00070 #include "platform.h"
+00071 #include "tidyenum.h"
+00072 
+00073 #ifdef __cplusplus
+00074 extern "C" {
+00075 #endif
+00076 
+00077 /** @defgroup Opaque Opaque Types
+00078 **
+00079 ** Cast to implementation types within lib.
+00080 ** Reduces inter-dependencies/conflicts w/ application code.
+00081 ** @{
+00082 */
+00083 
+00084 /** @struct TidyDoc
+00085 **  Opaque document datatype
+00086 */
+00087 opaque_type( TidyDoc );
+00088 
+00089 /** @struct TidyOption
+00090 **  Opaque option datatype
+00091 */
+00092 opaque_type( TidyOption );
+00093 
+00094 /** @struct TidyNode
+00095 **  Opaque node datatype
+00096 */
+00097 opaque_type( TidyNode );
+00098 
+00099 /** @struct TidyAttr
+00100 **  Opaque attribute datatype
+00101 */
+00102 opaque_type( TidyAttr );
+00103 
+00104 /** @} end Opaque group */
+00105 
+00106 TIDY_STRUCT struct _TidyBuffer;
+00107 typedef struct _TidyBuffer TidyBuffer;
+00108 
+00109 
+00110 /** @defgroup Memory  Memory Allocation
+00111 **
+00112 ** Tidy uses a user provided allocator for all
+00113 ** memory allocations.  If this allocator is
+00114 ** not provided, then a default allocator is
+00115 ** used which simply wraps standard C malloc/free
+00116 ** calls.  These wrappers call the panic function
+00117 ** upon any failure.  The default panic function
+00118 ** prints an out of memory message to stderr, and
+00119 ** calls exit(2).
+00120 **
+00121 ** For applications in which it is unacceptable to
+00122 ** abort in the case of memory allocation, then the
+00123 ** panic function can be replaced with one which
+00124 ** longjmps() out of the tidy code.  For this to
+00125 ** clean up completely, you should be careful not
+00126 ** to use any tidy methods that open files as these
+00127 ** will not be closed before panic() is called.
+00128 **
+00129 ** TODO: associate file handles with tidyDoc and
+00130 ** ensure that tidyDocRelease() can close them all.
+00131 **
+00132 ** Calling the withAllocator() family (
+00133 ** tidyCreateWithAllocator, tidyBufInitWithAllocator,
+00134 ** tidyBufAllocWithAllocator) allow settings custom
+00135 ** allocators).
+00136 **
+00137 ** All parts of the document use the same allocator.
+00138 ** Calls that require a user provided buffer can
+00139 ** optionally use a different allocator.
+00140 **
+00141 ** For reference in designing a plug-in allocator,
+00142 ** most allocations made by tidy are less than 100
+00143 ** bytes, corresponding to attribute names/values, etc.
+00144 **
+00145 ** There is also an additional class of much larger
+00146 ** allocations which are where most of the data from
+00147 ** the lexer is stored.  (It is not currently possible
+00148 ** to use a separate allocator for the lexer, this
+00149 ** would be a useful extension).
+00150 **
+00151 ** In general, approximately 1/3rd of the memory
+00152 ** used by tidy is freed during the parse, so if
+00153 ** memory usage is an issue then an allocator that 
+00154 ** can reuse this memory is a good idea.
+00155 **
+00156 ** @{
+00157 */
+00158 
+00159 /** Prototype for the allocator's function table */
+00160 struct _TidyAllocatorVtbl;
+00161 /** The allocators function table */
+00162 typedef struct _TidyAllocatorVtbl TidyAllocatorVtbl;
+00163 
+00164 /** Prototype for the allocator */
+00165 struct _TidyAllocator;
+00166 /** The allocator **/
+00167 typedef struct _TidyAllocator TidyAllocator;
+00168 
+00169 /** An allocator's function table.  All functions here must
+00170     be provided.
+00171  */
+00172 struct _TidyAllocatorVtbl {
+00173     /** Called to allocate a block of nBytes of memory */
+00174     void* (TIDY_CALL *alloc)( TidyAllocator *self, size_t nBytes );
+00175     /** Called to resize (grow, in general) a block of memory.
+00176         Must support being called with NULL.
+00177     */
+00178     void* (TIDY_CALL *realloc)( TidyAllocator *self, void *block, size_t nBytes );
+00179     /** Called to free a previously allocated block of memory */
+00180     void (TIDY_CALL *free)( TidyAllocator *self, void *block);
+00181     /** Called when a panic condition is detected.  Must support
+00182         block == NULL.  This function is not called if either alloc 
+00183         or realloc fails; it is up to the allocator to do this.
+00184         Currently this function can only be called if an error is
+00185         detected in the tree integrity via the internal function
+00186         CheckNodeIntegrity().  This is a situation that can
+00187         only arise in the case of a programming error in tidylib.
+00188         You can turn off node integrity checking by defining
+00189         the constant NO_NODE_INTEGRITY_CHECK during the build.
+00190     **/
+00191     void (TIDY_CALL *panic)( TidyAllocator *self, ctmbstr msg );
+00192 };
+00193 
+00194 /** An allocator.  To create your own allocator, do something like
+00195     the following:
+00196     
+00197     typedef struct _MyAllocator {
+00198        TidyAllocator base;
+00199        ...other custom allocator state...
+00200     } MyAllocator;
+00201     
+00202     void* MyAllocator_alloc(TidyAllocator *base, void *block, size_t nBytes)
+00203     {
+00204         MyAllocator *self = (MyAllocator*)base;
+00205         ...
+00206     }
+00207     (etc)
+00208 
+00209     static const TidyAllocatorVtbl MyAllocatorVtbl = {
+00210         MyAllocator_alloc,
+00211         MyAllocator_realloc,
+00212         MyAllocator_free,
+00213         MyAllocator_panic
+00214     };
+00215 
+00216     myAllocator allocator;
+00217     TidyDoc doc;
+00218 
+00219     allocator.base.vtbl = &amp;MyAllocatorVtbl;
+00220     ...initialise allocator specific state...
+00221     doc = tidyCreateWithAllocator(&allocator);
+00222     ...
+00223 
+00224     Although this looks slightly long winded, the advantage is that to create
+00225     a custom allocator you simply need to set the vtbl pointer correctly.
+00226     The vtbl itself can reside in static/global data, and hence does not
+00227     need to be initialised each time an allocator is created, and furthermore
+00228     the memory is shared amongst all created allocators.
+00229 */
+00230 struct _TidyAllocator {
+00231     const TidyAllocatorVtbl *vtbl;
+00232 };
+00233 
+00234 /** Callback for "malloc" replacement */
+00235 typedef void* (TIDY_CALL *TidyMalloc)( size_t len );
+00236 /** Callback for "realloc" replacement */
+00237 typedef void* (TIDY_CALL *TidyRealloc)( void* buf, size_t len );
+00238 /** Callback for "free" replacement */
+00239 typedef void  (TIDY_CALL *TidyFree)( void* buf );
+00240 /** Callback for "out of memory" panic state */
+00241 typedef void  (TIDY_CALL *TidyPanic)( ctmbstr mssg );
+00242 
+00243 
+00244 /** Give Tidy a malloc() replacement */
+00245 TIDY_EXPORT Bool TIDY_CALL tidySetMallocCall( TidyMalloc fmalloc );
+00246 /** Give Tidy a realloc() replacement */
+00247 TIDY_EXPORT Bool TIDY_CALL tidySetReallocCall( TidyRealloc frealloc );
+00248 /** Give Tidy a free() replacement */
+00249 TIDY_EXPORT Bool TIDY_CALL tidySetFreeCall( TidyFree ffree );
+00250 /** Give Tidy an "out of memory" handler */
+00251 TIDY_EXPORT Bool TIDY_CALL tidySetPanicCall( TidyPanic fpanic );
+00252 
+00253 /** @} end Memory group */
+00254 
+00255 /** @defgroup Basic Basic Operations
+00256 **
+00257 ** Tidy public interface
+00258 **
+00259 ** Several functions return an integer document status:
+00260 **
+00261 ** <pre>
+00262 ** 0    -> SUCCESS
+00263 ** >0   -> 1 == TIDY WARNING, 2 == TIDY ERROR
+00264 ** <0   -> SEVERE ERROR
+00265 ** </pre>
+00266 ** 
+00267 The following is a short example program.
+00268 
+00269 <pre>
+00270 #include &lt;tidy.h&gt;
+00271 #include &lt;buffio.h&gt;
+00272 #include &lt;stdio.h&gt;
+00273 #include &lt;errno.h&gt;
+00274 
+00275 
+00276 int main(int argc, char **argv )
+00277 {
+00278   const char* input = "&lt;title&gt;Foo&lt;/title&gt;&lt;p&gt;Foo!";
+00279   TidyBuffer output;
+00280   TidyBuffer errbuf;
+00281   int rc = -1;
+00282   Bool ok;
+00283 
+00284   TidyDoc tdoc = tidyCreate();                     // Initialize "document"
+00285   tidyBufInit( &amp;output );
+00286   tidyBufInit( &amp;errbuf );
+00287   printf( "Tidying:\t\%s\\n", input );
+00288 
+00289   ok = tidyOptSetBool( tdoc, TidyXhtmlOut, yes );  // Convert to XHTML
+00290   if ( ok )
+00291     rc = tidySetErrorBuffer( tdoc, &amp;errbuf );      // Capture diagnostics
+00292   if ( rc &gt;= 0 )
+00293     rc = tidyParseString( tdoc, input );           // Parse the input
+00294   if ( rc &gt;= 0 )
+00295     rc = tidyCleanAndRepair( tdoc );               // Tidy it up!
+00296   if ( rc &gt;= 0 )
+00297     rc = tidyRunDiagnostics( tdoc );               // Kvetch
+00298   if ( rc &gt; 1 )                                    // If error, force output.
+00299     rc = ( tidyOptSetBool(tdoc, TidyForceOutput, yes) ? rc : -1 );
+00300   if ( rc &gt;= 0 )
+00301     rc = tidySaveBuffer( tdoc, &amp;output );          // Pretty Print
+00302 
+00303   if ( rc &gt;= 0 )
+00304   {
+00305     if ( rc &gt; 0 )
+00306       printf( "\\nDiagnostics:\\n\\n\%s", errbuf.bp );
+00307     printf( "\\nAnd here is the result:\\n\\n\%s", output.bp );
+00308   }
+00309   else
+00310     printf( "A severe error (\%d) occurred.\\n", rc );
+00311 
+00312   tidyBufFree( &amp;output );
+00313   tidyBufFree( &amp;errbuf );
+00314   tidyRelease( tdoc );
+00315   return rc;
+00316 }
+00317 </pre>
+00318 ** @{
+00319 */
+00320 
+00321 TIDY_EXPORT TidyDoc TIDY_CALL     tidyCreate(void);
+00322 TIDY_EXPORT TidyDoc TIDY_CALL     tidyCreateWithAllocator( TidyAllocator *allocator );
+00323 TIDY_EXPORT void TIDY_CALL        tidyRelease( TidyDoc tdoc );
+00324 
+00325 /** Let application store a chunk of data w/ each Tidy instance.
+00326 **  Useful for callbacks.
+00327 */
+00328 TIDY_EXPORT void TIDY_CALL        tidySetAppData( TidyDoc tdoc, void* appData );
+00329 
+00330 /** Get application data set previously */
+00331 TIDY_EXPORT void* TIDY_CALL       tidyGetAppData( TidyDoc tdoc );
+00332 
+00333 /** Get release date (version) for current library */
+00334 TIDY_EXPORT ctmbstr TIDY_CALL     tidyReleaseDate(void);
+00335 
+00336 /* Diagnostics and Repair
+00337 */
+00338 
+00339 /** Get status of current document. */
+00340 TIDY_EXPORT int TIDY_CALL         tidyStatus( TidyDoc tdoc );
+00341 
+00342 /** Detected HTML version: 0, 2, 3 or 4 */
+00343 TIDY_EXPORT int TIDY_CALL         tidyDetectedHtmlVersion( TidyDoc tdoc );
+00344 
+00345 /** Input is XHTML? */
+00346 TIDY_EXPORT Bool TIDY_CALL        tidyDetectedXhtml( TidyDoc tdoc );
+00347 
+00348 /** Input is generic XML (not HTML or XHTML)? */
+00349 TIDY_EXPORT Bool TIDY_CALL        tidyDetectedGenericXml( TidyDoc tdoc );
+00350 
+00351 /** Number of Tidy errors encountered.  If > 0, output is suppressed
+00352 **  unless TidyForceOutput is set.
+00353 */
+00354 TIDY_EXPORT uint TIDY_CALL        tidyErrorCount( TidyDoc tdoc );
+00355 
+00356 /** Number of Tidy warnings encountered. */
+00357 TIDY_EXPORT uint TIDY_CALL        tidyWarningCount( TidyDoc tdoc );
+00358 
+00359 /** Number of Tidy accessibility warnings encountered. */
+00360 TIDY_EXPORT uint TIDY_CALL        tidyAccessWarningCount( TidyDoc tdoc );
+00361 
+00362 /** Number of Tidy configuration errors encountered. */
+00363 TIDY_EXPORT uint TIDY_CALL        tidyConfigErrorCount( TidyDoc tdoc );
+00364 
+00365 /* Get/Set configuration options
+00366 */
+00367 /** Load an ASCII Tidy configuration file */
+00368 TIDY_EXPORT int TIDY_CALL         tidyLoadConfig( TidyDoc tdoc, ctmbstr configFile );
+00369 
+00370 /** Load a Tidy configuration file with the specified character encoding */
+00371 TIDY_EXPORT int TIDY_CALL         tidyLoadConfigEnc( TidyDoc tdoc, ctmbstr configFile,
+00372                                                      ctmbstr charenc );
+00373 
+00374 TIDY_EXPORT Bool TIDY_CALL        tidyFileExists( TidyDoc tdoc, ctmbstr filename );
+00375 
+00376 
+00377 /** Set the input/output character encoding for parsing markup.
+00378 **  Values include: ascii, latin1, raw, utf8, iso2022, mac,
+00379 **  win1252, utf16le, utf16be, utf16, big5 and shiftjis.  Case in-sensitive.
+00380 */
+00381 TIDY_EXPORT int TIDY_CALL         tidySetCharEncoding( TidyDoc tdoc, ctmbstr encnam );
+00382 
+00383 /** Set the input encoding for parsing markup.
+00384 ** As for tidySetCharEncoding but only affects the input encoding
+00385 **/
+00386 TIDY_EXPORT int TIDY_CALL         tidySetInCharEncoding( TidyDoc tdoc, ctmbstr encnam );
+00387 
+00388 /** Set the output encoding.
+00389 **/
+00390 TIDY_EXPORT int TIDY_CALL         tidySetOutCharEncoding( TidyDoc tdoc, ctmbstr encnam );
+00391 
+00392 /** @} end Basic group */
+00393 
+00394 
+00395 /** @defgroup Configuration Configuration Options
+00396 **
+00397 ** Functions for getting and setting Tidy configuration options.
+00398 ** @{
+00399 */
+00400 
+00401 /** Applications using TidyLib may want to augment command-line and
+00402 **  configuration file options.  Setting this callback allows an application 
+00403 **  developer to examine command-line and configuration file options after
+00404 **  TidyLib has examined them and failed to recognize them.
+00405 **/
+00406 
+00407 typedef Bool (TIDY_CALL *TidyOptCallback)( ctmbstr option, ctmbstr value );
+00408 
+00409 TIDY_EXPORT Bool TIDY_CALL          tidySetOptionCallback( TidyDoc tdoc, TidyOptCallback pOptCallback );
+00410 
+00411 /** Get option ID by name */
+00412 TIDY_EXPORT TidyOptionId TIDY_CALL  tidyOptGetIdForName( ctmbstr optnam );
+00413 
+00414 /** Get iterator for list of option */
+00415 /** 
+00416 Example:
+00417 <pre>
+00418 TidyIterator itOpt = tidyGetOptionList( tdoc );
+00419 while ( itOpt )
+00420 {
+00421   TidyOption opt = tidyGetNextOption( tdoc, &itOpt );
+00422   .. get/set option values ..
+00423 }
+00424 </pre>
+00425 */
+00426 
+00427 TIDY_EXPORT TidyIterator TIDY_CALL  tidyGetOptionList( TidyDoc tdoc );
+00428 /** Get next Option */
+00429 TIDY_EXPORT TidyOption TIDY_CALL    tidyGetNextOption( TidyDoc tdoc, TidyIterator* pos );
+00430 
+00431 /** Lookup option by ID */
+00432 TIDY_EXPORT TidyOption TIDY_CALL    tidyGetOption( TidyDoc tdoc, TidyOptionId optId );
+00433 /** Lookup option by name */
+00434 TIDY_EXPORT TidyOption TIDY_CALL    tidyGetOptionByName( TidyDoc tdoc, ctmbstr optnam );
+00435 
+00436 /** Get ID of given Option */
+00437 TIDY_EXPORT TidyOptionId TIDY_CALL  tidyOptGetId( TidyOption opt );
+00438 
+00439 /** Get name of given Option */
+00440 TIDY_EXPORT ctmbstr TIDY_CALL       tidyOptGetName( TidyOption opt );
+00441 
+00442 /** Get datatype of given Option */
+00443 TIDY_EXPORT TidyOptionType TIDY_CALL tidyOptGetType( TidyOption opt );
+00444 
+00445 /** Is Option read-only? */
+00446 TIDY_EXPORT Bool TIDY_CALL          tidyOptIsReadOnly( TidyOption opt );
+00447 
+00448 /** Get category of given Option */
+00449 TIDY_EXPORT TidyConfigCategory TIDY_CALL tidyOptGetCategory( TidyOption opt );
+00450 
+00451 /** Get default value of given Option as a string */
+00452 TIDY_EXPORT ctmbstr TIDY_CALL       tidyOptGetDefault( TidyOption opt );
+00453 
+00454 /** Get default value of given Option as an unsigned integer */
+00455 TIDY_EXPORT ulong TIDY_CALL         tidyOptGetDefaultInt( TidyOption opt );
+00456 
+00457 /** Get default value of given Option as a Boolean value */
+00458 TIDY_EXPORT Bool TIDY_CALL          tidyOptGetDefaultBool( TidyOption opt );
+00459 
+00460 /** Iterate over Option "pick list" */
+00461 TIDY_EXPORT TidyIterator TIDY_CALL  tidyOptGetPickList( TidyOption opt );
+00462 /** Get next string value of Option "pick list" */
+00463 TIDY_EXPORT ctmbstr TIDY_CALL       tidyOptGetNextPick( TidyOption opt, TidyIterator* pos );
+00464 
+00465 /** Get current Option value as a string */
+00466 TIDY_EXPORT ctmbstr TIDY_CALL       tidyOptGetValue( TidyDoc tdoc, TidyOptionId optId );
+00467 /** Set Option value as a string */
+00468 TIDY_EXPORT Bool TIDY_CALL          tidyOptSetValue( TidyDoc tdoc, TidyOptionId optId, ctmbstr val );
+00469 /** Set named Option value as a string.  Good if not sure of type. */
+00470 TIDY_EXPORT Bool TIDY_CALL          tidyOptParseValue( TidyDoc tdoc, ctmbstr optnam, ctmbstr val );
+00471 
+00472 /** Get current Option value as an integer */
+00473 TIDY_EXPORT ulong TIDY_CALL         tidyOptGetInt( TidyDoc tdoc, TidyOptionId optId );
+00474 /** Set Option value as an integer */
+00475 TIDY_EXPORT Bool TIDY_CALL          tidyOptSetInt( TidyDoc tdoc, TidyOptionId optId, ulong val );
+00476 
+00477 /** Get current Option value as a Boolean flag */
+00478 TIDY_EXPORT Bool TIDY_CALL          tidyOptGetBool( TidyDoc tdoc, TidyOptionId optId );
+00479 /** Set Option value as a Boolean flag */
+00480 TIDY_EXPORT Bool TIDY_CALL          tidyOptSetBool( TidyDoc tdoc, TidyOptionId optId, Bool val );
+00481 
+00482 /** Reset option to default value by ID */
+00483 TIDY_EXPORT Bool TIDY_CALL          tidyOptResetToDefault( TidyDoc tdoc, TidyOptionId opt );
+00484 /** Reset all options to their default values */
+00485 TIDY_EXPORT Bool TIDY_CALL          tidyOptResetAllToDefault( TidyDoc tdoc );
+00486 
+00487 /** Take a snapshot of current config settings */
+00488 TIDY_EXPORT Bool TIDY_CALL          tidyOptSnapshot( TidyDoc tdoc );
+00489 /** Reset config settings to snapshot (after document processing) */
+00490 TIDY_EXPORT Bool TIDY_CALL          tidyOptResetToSnapshot( TidyDoc tdoc );
+00491 
+00492 /** Any settings different than default? */
+00493 TIDY_EXPORT Bool TIDY_CALL          tidyOptDiffThanDefault( TidyDoc tdoc );
+00494 /** Any settings different than snapshot? */
+00495 TIDY_EXPORT Bool TIDY_CALL          tidyOptDiffThanSnapshot( TidyDoc tdoc );
+00496 
+00497 /** Copy current configuration settings from one document to another */
+00498 TIDY_EXPORT Bool TIDY_CALL          tidyOptCopyConfig( TidyDoc tdocTo, TidyDoc tdocFrom );
+00499 
+00500 /** Get character encoding name.  Used with TidyCharEncoding,
+00501 **  TidyOutCharEncoding, TidyInCharEncoding */
+00502 TIDY_EXPORT ctmbstr TIDY_CALL       tidyOptGetEncName( TidyDoc tdoc, TidyOptionId optId );
+00503 
+00504 /** Get current pick list value for option by ID.  Useful for enum types. */
+00505 TIDY_EXPORT ctmbstr TIDY_CALL       tidyOptGetCurrPick( TidyDoc tdoc, TidyOptionId optId);
+00506 
+00507 /** Iterate over user declared tags */
+00508 TIDY_EXPORT TidyIterator TIDY_CALL  tidyOptGetDeclTagList( TidyDoc tdoc );
+00509 /** Get next declared tag of specified type: TidyInlineTags, TidyBlockTags,
+00510 **  TidyEmptyTags, TidyPreTags */
+00511 TIDY_EXPORT ctmbstr TIDY_CALL       tidyOptGetNextDeclTag( TidyDoc tdoc, 
+00512                                                           TidyOptionId optId,
+00513                                                           TidyIterator* iter );
+00514 /** Get option description */
+00515 TIDY_EXPORT ctmbstr TIDY_CALL       tidyOptGetDoc( TidyDoc tdoc, TidyOption opt );
+00516 
+00517 /** Iterate over a list of related options */
+00518 TIDY_EXPORT TidyIterator TIDY_CALL  tidyOptGetDocLinksList( TidyDoc tdoc,
+00519                                                   TidyOption opt );
+00520 /** Get next related option */
+00521 TIDY_EXPORT TidyOption TIDY_CALL    tidyOptGetNextDocLinks( TidyDoc tdoc,
+00522                                                   TidyIterator* pos );
+00523 
+00524 /** @} end Configuration group */
+00525 
+00526 /** @defgroup IO  I/O and Messages
+00527 **
+00528 ** By default, Tidy will define, create and use 
+00529 ** instances of input and output handlers for 
+00530 ** standard C buffered I/O (i.e. FILE* stdin,
+00531 ** FILE* stdout and FILE* stderr for content
+00532 ** input, content output and diagnostic output,
+00533 ** respectively.  A FILE* cfgFile input handler
+00534 ** will be used for config files.  Command line
+00535 ** options will just be set directly.
+00536 **
+00537 ** @{
+00538 */
+00539 
+00540 /*****************
+00541    Input Source
+00542 *****************/
+00543 /** Input Callback: get next byte of input */
+00544 typedef int  (TIDY_CALL *TidyGetByteFunc)( void* sourceData );
+00545 
+00546 /** Input Callback: unget a byte of input */
+00547 typedef void (TIDY_CALL *TidyUngetByteFunc)( void* sourceData, byte bt );
+00548 
+00549 /** Input Callback: is end of input? */
+00550 typedef Bool (TIDY_CALL *TidyEOFFunc)( void* sourceData );
+00551 
+00552 /** End of input "character" */
+00553 #define EndOfStream (~0u)
+00554 
+00555 /** TidyInputSource - Delivers raw bytes of input
+00556 */
+00557 TIDY_STRUCT
+00558 typedef struct _TidyInputSource
+00559 {
+00560   /* Instance data */
+00561   void*               sourceData;  /**< Input context.  Passed to callbacks */
+00562 
+00563   /* Methods */
+00564   TidyGetByteFunc     getByte;     /**< Pointer to "get byte" callback */
+00565   TidyUngetByteFunc   ungetByte;   /**< Pointer to "unget" callback */
+00566   TidyEOFFunc         eof;         /**< Pointer to "eof" callback */
+00567 } TidyInputSource;
+00568 
+00569 /** Facilitates user defined source by providing
+00570 **  an entry point to marshal pointers-to-functions.
+00571 **  Needed by .NET and possibly other language bindings.
+00572 */
+00573 TIDY_EXPORT Bool TIDY_CALL tidyInitSource( TidyInputSource*  source,
+00574                                           void*             srcData,
+00575                                           TidyGetByteFunc   gbFunc,
+00576                                           TidyUngetByteFunc ugbFunc,
+00577                                           TidyEOFFunc       endFunc );
+00578 
+00579 /** Helper: get next byte from input source */
+00580 TIDY_EXPORT uint TIDY_CALL tidyGetByte( TidyInputSource* source );
+00581 
+00582 /** Helper: unget byte back to input source */
+00583 TIDY_EXPORT void TIDY_CALL tidyUngetByte( TidyInputSource* source, uint byteValue );
+00584 
+00585 /** Helper: check if input source at end */
+00586 TIDY_EXPORT Bool TIDY_CALL tidyIsEOF( TidyInputSource* source );
+00587 
+00588 
+00589 /****************
+00590    Output Sink
+00591 ****************/
+00592 /** Output callback: send a byte to output */
+00593 typedef void (TIDY_CALL *TidyPutByteFunc)( void* sinkData, byte bt );
+00594 
+00595 
+00596 /** TidyOutputSink - accepts raw bytes of output
+00597 */
+00598 TIDY_STRUCT
+00599 typedef struct _TidyOutputSink
+00600 {
+00601   /* Instance data */
+00602   void*               sinkData;  /**< Output context.  Passed to callbacks */
+00603 
+00604   /* Methods */
+00605   TidyPutByteFunc     putByte;   /**< Pointer to "put byte" callback */
+00606 } TidyOutputSink;
+00607 
+00608 /** Facilitates user defined sinks by providing
+00609 **  an entry point to marshal pointers-to-functions.
+00610 **  Needed by .NET and possibly other language bindings.
+00611 */
+00612 TIDY_EXPORT Bool TIDY_CALL tidyInitSink( TidyOutputSink* sink, 
+00613                                         void*           snkData,
+00614                                         TidyPutByteFunc pbFunc );
+00615 
+00616 /** Helper: send a byte to output */
+00617 TIDY_EXPORT void TIDY_CALL tidyPutByte( TidyOutputSink* sink, uint byteValue );
+00618 
+00619 
+00620 /** Callback to filter messages by diagnostic level:
+00621 **  info, warning, etc.  Just set diagnostic output 
+00622 **  handler to redirect all diagnostics output.  Return true
+00623 **  to proceed with output, false to cancel.
+00624 */
+00625 typedef Bool (TIDY_CALL *TidyReportFilter)( TidyDoc tdoc, TidyReportLevel lvl,
+00626                                            uint line, uint col, ctmbstr mssg );
+00627 
+00628 /** Give Tidy a filter callback to use */
+00629 TIDY_EXPORT Bool TIDY_CALL    tidySetReportFilter( TidyDoc tdoc,
+00630                                                   TidyReportFilter filtCallback );
+00631 
+00632 /** Set error sink to named file */
+00633 TIDY_EXPORT FILE* TIDY_CALL   tidySetErrorFile( TidyDoc tdoc, ctmbstr errfilnam );
+00634 /** Set error sink to given buffer */
+00635 TIDY_EXPORT int TIDY_CALL     tidySetErrorBuffer( TidyDoc tdoc, TidyBuffer* errbuf );
+00636 /** Set error sink to given generic sink */
+00637 TIDY_EXPORT int TIDY_CALL     tidySetErrorSink( TidyDoc tdoc, TidyOutputSink* sink );
+00638 
+00639 /** @} end IO group */
+00640 
+00641 /* TODO: Catalog all messages for easy translation
+00642 TIDY_EXPORT ctmbstr     tidyLookupMessage( int errorNo );
+00643 */
+00644 
+00645 
+00646 
+00647 /** @defgroup Parse Document Parse
+00648 **
+00649 ** Parse markup from a given input source.  String and filename 
+00650 ** functions added for convenience.  HTML/XHTML version determined
+00651 ** from input.
+00652 ** @{
+00653 */
+00654 
+00655 /** Parse markup in named file */
+00656 TIDY_EXPORT int TIDY_CALL         tidyParseFile( TidyDoc tdoc, ctmbstr filename );
+00657 
+00658 /** Parse markup from the standard input */
+00659 TIDY_EXPORT int TIDY_CALL         tidyParseStdin( TidyDoc tdoc );
+00660 
+00661 /** Parse markup in given string */
+00662 TIDY_EXPORT int TIDY_CALL         tidyParseString( TidyDoc tdoc, ctmbstr content );
+00663 
+00664 /** Parse markup in given buffer */
+00665 TIDY_EXPORT int TIDY_CALL         tidyParseBuffer( TidyDoc tdoc, TidyBuffer* buf );
+00666 
+00667 /** Parse markup in given generic input source */
+00668 TIDY_EXPORT int TIDY_CALL         tidyParseSource( TidyDoc tdoc, TidyInputSource* source);
+00669 
+00670 /** @} End Parse group */
+00671 
+00672 
+00673 /** @defgroup Clean Diagnostics and Repair
+00674 **
+00675 ** @{
+00676 */
+00677 /** Execute configured cleanup and repair operations on parsed markup */
+00678 TIDY_EXPORT int TIDY_CALL         tidyCleanAndRepair( TidyDoc tdoc );
+00679 
+00680 /** Run configured diagnostics on parsed and repaired markup. 
+00681 **  Must call tidyCleanAndRepair() first.
+00682 */
+00683 TIDY_EXPORT int TIDY_CALL         tidyRunDiagnostics( TidyDoc tdoc );
+00684 
+00685 /** @} end Clean group */
+00686 
+00687 
+00688 /** @defgroup Save Document Save Functions
+00689 **
+00690 ** Save currently parsed document to the given output sink.  File name
+00691 ** and string/buffer functions provided for convenience.
+00692 ** @{
+00693 */
+00694 
+00695 /** Save to named file */
+00696 TIDY_EXPORT int TIDY_CALL         tidySaveFile( TidyDoc tdoc, ctmbstr filename );
+00697 
+00698 /** Save to standard output (FILE*) */
+00699 TIDY_EXPORT int TIDY_CALL         tidySaveStdout( TidyDoc tdoc );
+00700 
+00701 /** Save to given TidyBuffer object */
+00702 TIDY_EXPORT int TIDY_CALL         tidySaveBuffer( TidyDoc tdoc, TidyBuffer* buf );
+00703 
+00704 /** Save document to application buffer.  If buffer is not big enough,
+00705 **  ENOMEM will be returned and the necessary buffer size will be placed
+00706 **  in *buflen.
+00707 */
+00708 TIDY_EXPORT int TIDY_CALL         tidySaveString( TidyDoc tdoc,
+00709                                                  tmbstr buffer, uint* buflen );
+00710 
+00711 /** Save to given generic output sink */
+00712 TIDY_EXPORT int TIDY_CALL         tidySaveSink( TidyDoc tdoc, TidyOutputSink* sink );
+00713 
+00714 /** @} end Save group */
+00715 
+00716 
+00717 /** @addtogroup Basic
+00718 ** @{
+00719 */
+00720 /** Save current settings to named file.
+00721     Only non-default values are written. */
+00722 TIDY_EXPORT int TIDY_CALL         tidyOptSaveFile( TidyDoc tdoc, ctmbstr cfgfil );
+00723 
+00724 /** Save current settings to given output sink.
+00725     Only non-default values are written. */
+00726 TIDY_EXPORT int TIDY_CALL         tidyOptSaveSink( TidyDoc tdoc, TidyOutputSink* sink );
+00727 
+00728 
+00729 /* Error reporting functions 
+00730 */
+00731 
+00732 /** Write more complete information about errors to current error sink. */
+00733 TIDY_EXPORT void TIDY_CALL        tidyErrorSummary( TidyDoc tdoc );
+00734 
+00735 /** Write more general information about markup to current error sink. */
+00736 TIDY_EXPORT void TIDY_CALL        tidyGeneralInfo( TidyDoc tdoc );
+00737 
+00738 /** @} end Basic group (again) */
+00739 
+00740 
+00741 /** @defgroup Tree Document Tree
+00742 **
+00743 ** A parsed and, optionally, repaired document is
+00744 ** represented by Tidy as a Tree, much like a W3C DOM.
+00745 ** This tree may be traversed using these functions.
+00746 ** The following snippet gives a basic idea how these
+00747 ** functions can be used.
+00748 **
+00749 <pre>
+00750 void dumpNode( TidyNode tnod, int indent )
+00751 {
+00752   TidyNode child;
+00753 
+00754   for ( child = tidyGetChild(tnod); child; child = tidyGetNext(child) )
+00755   {
+00756     ctmbstr name;
+00757     switch ( tidyNodeGetType(child) )
+00758     {
+00759     case TidyNode_Root:       name = "Root";                    break;
+00760     case TidyNode_DocType:    name = "DOCTYPE";                 break;
+00761     case TidyNode_Comment:    name = "Comment";                 break;
+00762     case TidyNode_ProcIns:    name = "Processing Instruction";  break;
+00763     case TidyNode_Text:       name = "Text";                    break;
+00764     case TidyNode_CDATA:      name = "CDATA";                   break;
+00765     case TidyNode_Section:    name = "XML Section";             break;
+00766     case TidyNode_Asp:        name = "ASP";                     break;
+00767     case TidyNode_Jste:       name = "JSTE";                    break;
+00768     case TidyNode_Php:        name = "PHP";                     break;
+00769     case TidyNode_XmlDecl:    name = "XML Declaration";         break;
+00770 
+00771     case TidyNode_Start:
+00772     case TidyNode_End:
+00773     case TidyNode_StartEnd:
+00774     default:
+00775       name = tidyNodeGetName( child );
+00776       break;
+00777     }
+00778     assert( name != NULL );
+00779     printf( "\%*.*sNode: \%s\\n", indent, indent, " ", name );
+00780     dumpNode( child, indent + 4 );
+00781   }
+00782 }
+00783 
+00784 void dumpDoc( TidyDoc tdoc )
+00785 {
+00786   dumpNode( tidyGetRoot(tdoc), 0 );
+00787 }
+00788 
+00789 void dumpBody( TidyDoc tdoc )
+00790 {
+00791   dumpNode( tidyGetBody(tdoc), 0 );
+00792 }
+00793 </pre>
+00794 
+00795 @{
+00796 
+00797 */
+00798 
+00799 TIDY_EXPORT TidyNode TIDY_CALL    tidyGetRoot( TidyDoc tdoc );
+00800 TIDY_EXPORT TidyNode TIDY_CALL    tidyGetHtml( TidyDoc tdoc );
+00801 TIDY_EXPORT TidyNode TIDY_CALL    tidyGetHead( TidyDoc tdoc );
+00802 TIDY_EXPORT TidyNode TIDY_CALL    tidyGetBody( TidyDoc tdoc );
+00803 
+00804 /* parent / child */
+00805 TIDY_EXPORT TidyNode TIDY_CALL    tidyGetParent( TidyNode tnod );
+00806 TIDY_EXPORT TidyNode TIDY_CALL    tidyGetChild( TidyNode tnod );
+00807 
+00808 /* siblings */
+00809 TIDY_EXPORT TidyNode TIDY_CALL    tidyGetNext( TidyNode tnod );
+00810 TIDY_EXPORT TidyNode TIDY_CALL    tidyGetPrev( TidyNode tnod );
+00811 
+00812 /* Null for non-element nodes and all pure HTML
+00813 TIDY_EXPORT ctmbstr     tidyNodeNsLocal( TidyNode tnod );
+00814 TIDY_EXPORT ctmbstr     tidyNodeNsPrefix( TidyNode tnod );
+00815 TIDY_EXPORT ctmbstr     tidyNodeNsUri( TidyNode tnod );
+00816 */
+00817 
+00818 /* Iterate over attribute values */
+00819 TIDY_EXPORT TidyAttr TIDY_CALL    tidyAttrFirst( TidyNode tnod );
+00820 TIDY_EXPORT TidyAttr TIDY_CALL    tidyAttrNext( TidyAttr tattr );
+00821 
+00822 TIDY_EXPORT ctmbstr TIDY_CALL     tidyAttrName( TidyAttr tattr );
+00823 TIDY_EXPORT ctmbstr TIDY_CALL     tidyAttrValue( TidyAttr tattr );
+00824 
+00825 /* Null for pure HTML
+00826 TIDY_EXPORT ctmbstr     tidyAttrNsLocal( TidyAttr tattr );
+00827 TIDY_EXPORT ctmbstr     tidyAttrNsPrefix( TidyAttr tattr );
+00828 TIDY_EXPORT ctmbstr     tidyAttrNsUri( TidyAttr tattr );
+00829 */
+00830 
+00831 /** @} end Tree group */
+00832 
+00833 
+00834 /** @defgroup NodeAsk Node Interrogation
+00835 **
+00836 ** Get information about any givent node.
+00837 ** @{
+00838 */
+00839 
+00840 /* Node info */
+00841 TIDY_EXPORT TidyNodeType TIDY_CALL tidyNodeGetType( TidyNode tnod );
+00842 TIDY_EXPORT ctmbstr TIDY_CALL     tidyNodeGetName( TidyNode tnod );
+00843 
+00844 TIDY_EXPORT Bool TIDY_CALL tidyNodeIsText( TidyNode tnod );
+00845 TIDY_EXPORT Bool TIDY_CALL tidyNodeIsProp( TidyDoc tdoc, TidyNode tnod );
+00846 TIDY_EXPORT Bool TIDY_CALL tidyNodeIsHeader( TidyNode tnod ); /* h1, h2, ... */
+00847 
+00848 TIDY_EXPORT Bool TIDY_CALL tidyNodeHasText( TidyDoc tdoc, TidyNode tnod );
+00849 TIDY_EXPORT Bool TIDY_CALL tidyNodeGetText( TidyDoc tdoc, TidyNode tnod, TidyBuffer* buf );
+00850 
+00851 /* Copy the unescaped value of this node into the given TidyBuffer as UTF-8 */
+00852 TIDY_EXPORT Bool TIDY_CALL tidyNodeGetValue( TidyDoc tdoc, TidyNode tnod, TidyBuffer* buf );
+00853 
+00854 TIDY_EXPORT TidyTagId TIDY_CALL tidyNodeGetId( TidyNode tnod );
+00855 
+00856 TIDY_EXPORT uint TIDY_CALL tidyNodeLine( TidyNode tnod );
+00857 TIDY_EXPORT uint TIDY_CALL tidyNodeColumn( TidyNode tnod );
+00858 
+00859 /** @defgroup NodeIsElementName Deprecated node interrogation per TagId
+00860 **
+00861 ** @deprecated The functions tidyNodeIs{ElementName} are deprecated and 
+00862 ** should be replaced by tidyNodeGetId.
+00863 ** @{
+00864 */
+00865 TIDY_EXPORT Bool TIDY_CALL tidyNodeIsHTML( TidyNode tnod );
+00866 TIDY_EXPORT Bool TIDY_CALL tidyNodeIsHEAD( TidyNode tnod );
+00867 TIDY_EXPORT Bool TIDY_CALL tidyNodeIsTITLE( TidyNode tnod );
+00868 TIDY_EXPORT Bool TIDY_CALL tidyNodeIsBASE( TidyNode tnod );
+00869 TIDY_EXPORT Bool TIDY_CALL tidyNodeIsMETA( TidyNode tnod );
+00870 TIDY_EXPORT Bool TIDY_CALL tidyNodeIsBODY( TidyNode tnod );
+00871 TIDY_EXPORT Bool TIDY_CALL tidyNodeIsFRAMESET( TidyNode tnod );
+00872 TIDY_EXPORT Bool TIDY_CALL tidyNodeIsFRAME( TidyNode tnod );
+00873 TIDY_EXPORT Bool TIDY_CALL tidyNodeIsIFRAME( TidyNode tnod );
+00874 TIDY_EXPORT Bool TIDY_CALL tidyNodeIsNOFRAMES( TidyNode tnod );
+00875 TIDY_EXPORT Bool TIDY_CALL tidyNodeIsHR( TidyNode tnod );
+00876 TIDY_EXPORT Bool TIDY_CALL tidyNodeIsH1( TidyNode tnod );
+00877 TIDY_EXPORT Bool TIDY_CALL tidyNodeIsH2( TidyNode tnod );
+00878 TIDY_EXPORT Bool TIDY_CALL tidyNodeIsPRE( TidyNode tnod );
+00879 TIDY_EXPORT Bool TIDY_CALL tidyNodeIsLISTING( TidyNode tnod );
+00880 TIDY_EXPORT Bool TIDY_CALL tidyNodeIsP( TidyNode tnod );
+00881 TIDY_EXPORT Bool TIDY_CALL tidyNodeIsUL( TidyNode tnod );
+00882 TIDY_EXPORT Bool TIDY_CALL tidyNodeIsOL( TidyNode tnod );
+00883 TIDY_EXPORT Bool TIDY_CALL tidyNodeIsDL( TidyNode tnod );
+00884 TIDY_EXPORT Bool TIDY_CALL tidyNodeIsDIR( TidyNode tnod );
+00885 TIDY_EXPORT Bool TIDY_CALL tidyNodeIsLI( TidyNode tnod );
+00886 TIDY_EXPORT Bool TIDY_CALL tidyNodeIsDT( TidyNode tnod );
+00887 TIDY_EXPORT Bool TIDY_CALL tidyNodeIsDD( TidyNode tnod );
+00888 TIDY_EXPORT Bool TIDY_CALL tidyNodeIsTABLE( TidyNode tnod );
+00889 TIDY_EXPORT Bool TIDY_CALL tidyNodeIsCAPTION( TidyNode tnod );
+00890 TIDY_EXPORT Bool TIDY_CALL tidyNodeIsTD( TidyNode tnod );
+00891 TIDY_EXPORT Bool TIDY_CALL tidyNodeIsTH( TidyNode tnod );
+00892 TIDY_EXPORT Bool TIDY_CALL tidyNodeIsTR( TidyNode tnod );
+00893 TIDY_EXPORT Bool TIDY_CALL tidyNodeIsCOL( TidyNode tnod );
+00894 TIDY_EXPORT Bool TIDY_CALL tidyNodeIsCOLGROUP( TidyNode tnod );
+00895 TIDY_EXPORT Bool TIDY_CALL tidyNodeIsBR( TidyNode tnod );
+00896 TIDY_EXPORT Bool TIDY_CALL tidyNodeIsA( TidyNode tnod );
+00897 TIDY_EXPORT Bool TIDY_CALL tidyNodeIsLINK( TidyNode tnod );
+00898 TIDY_EXPORT Bool TIDY_CALL tidyNodeIsB( TidyNode tnod );
+00899 TIDY_EXPORT Bool TIDY_CALL tidyNodeIsI( TidyNode tnod );
+00900 TIDY_EXPORT Bool TIDY_CALL tidyNodeIsSTRONG( TidyNode tnod );
+00901 TIDY_EXPORT Bool TIDY_CALL tidyNodeIsEM( TidyNode tnod );
+00902 TIDY_EXPORT Bool TIDY_CALL tidyNodeIsBIG( TidyNode tnod );
+00903 TIDY_EXPORT Bool TIDY_CALL tidyNodeIsSMALL( TidyNode tnod );
+00904 TIDY_EXPORT Bool TIDY_CALL tidyNodeIsPARAM( TidyNode tnod );
+00905 TIDY_EXPORT Bool TIDY_CALL tidyNodeIsOPTION( TidyNode tnod );
+00906 TIDY_EXPORT Bool TIDY_CALL tidyNodeIsOPTGROUP( TidyNode tnod );
+00907 TIDY_EXPORT Bool TIDY_CALL tidyNodeIsIMG( TidyNode tnod );
+00908 TIDY_EXPORT Bool TIDY_CALL tidyNodeIsMAP( TidyNode tnod );
+00909 TIDY_EXPORT Bool TIDY_CALL tidyNodeIsAREA( TidyNode tnod );
+00910 TIDY_EXPORT Bool TIDY_CALL tidyNodeIsNOBR( TidyNode tnod );
+00911 TIDY_EXPORT Bool TIDY_CALL tidyNodeIsWBR( TidyNode tnod );
+00912 TIDY_EXPORT Bool TIDY_CALL tidyNodeIsFONT( TidyNode tnod );
+00913 TIDY_EXPORT Bool TIDY_CALL tidyNodeIsLAYER( TidyNode tnod );
+00914 TIDY_EXPORT Bool TIDY_CALL tidyNodeIsSPACER( TidyNode tnod );
+00915 TIDY_EXPORT Bool TIDY_CALL tidyNodeIsCENTER( TidyNode tnod );
+00916 TIDY_EXPORT Bool TIDY_CALL tidyNodeIsSTYLE( TidyNode tnod );
+00917 TIDY_EXPORT Bool TIDY_CALL tidyNodeIsSCRIPT( TidyNode tnod );
+00918 TIDY_EXPORT Bool TIDY_CALL tidyNodeIsNOSCRIPT( TidyNode tnod );
+00919 TIDY_EXPORT Bool TIDY_CALL tidyNodeIsFORM( TidyNode tnod );
+00920 TIDY_EXPORT Bool TIDY_CALL tidyNodeIsTEXTAREA( TidyNode tnod );
+00921 TIDY_EXPORT Bool TIDY_CALL tidyNodeIsBLOCKQUOTE( TidyNode tnod );
+00922 TIDY_EXPORT Bool TIDY_CALL tidyNodeIsAPPLET( TidyNode tnod );
+00923 TIDY_EXPORT Bool TIDY_CALL tidyNodeIsOBJECT( TidyNode tnod );
+00924 TIDY_EXPORT Bool TIDY_CALL tidyNodeIsDIV( TidyNode tnod );
+00925 TIDY_EXPORT Bool TIDY_CALL tidyNodeIsSPAN( TidyNode tnod );
+00926 TIDY_EXPORT Bool TIDY_CALL tidyNodeIsINPUT( TidyNode tnod );
+00927 TIDY_EXPORT Bool TIDY_CALL tidyNodeIsQ( TidyNode tnod );
+00928 TIDY_EXPORT Bool TIDY_CALL tidyNodeIsLABEL( TidyNode tnod );
+00929 TIDY_EXPORT Bool TIDY_CALL tidyNodeIsH3( TidyNode tnod );
+00930 TIDY_EXPORT Bool TIDY_CALL tidyNodeIsH4( TidyNode tnod );
+00931 TIDY_EXPORT Bool TIDY_CALL tidyNodeIsH5( TidyNode tnod );
+00932 TIDY_EXPORT Bool TIDY_CALL tidyNodeIsH6( TidyNode tnod );
+00933 TIDY_EXPORT Bool TIDY_CALL tidyNodeIsADDRESS( TidyNode tnod );
+00934 TIDY_EXPORT Bool TIDY_CALL tidyNodeIsXMP( TidyNode tnod );
+00935 TIDY_EXPORT Bool TIDY_CALL tidyNodeIsSELECT( TidyNode tnod );
+00936 TIDY_EXPORT Bool TIDY_CALL tidyNodeIsBLINK( TidyNode tnod );
+00937 TIDY_EXPORT Bool TIDY_CALL tidyNodeIsMARQUEE( TidyNode tnod );
+00938 TIDY_EXPORT Bool TIDY_CALL tidyNodeIsEMBED( TidyNode tnod );
+00939 TIDY_EXPORT Bool TIDY_CALL tidyNodeIsBASEFONT( TidyNode tnod );
+00940 TIDY_EXPORT Bool TIDY_CALL tidyNodeIsISINDEX( TidyNode tnod );
+00941 TIDY_EXPORT Bool TIDY_CALL tidyNodeIsS( TidyNode tnod );
+00942 TIDY_EXPORT Bool TIDY_CALL tidyNodeIsSTRIKE( TidyNode tnod );
+00943 TIDY_EXPORT Bool TIDY_CALL tidyNodeIsU( TidyNode tnod );
+00944 TIDY_EXPORT Bool TIDY_CALL tidyNodeIsMENU( TidyNode tnod );
+00945 
+00946 /** @} End NodeIsElementName group */
+00947 
+00948 /** @} End NodeAsk group */
+00949 
+00950 
+00951 /** @defgroup Attribute Attribute Interrogation
+00952 **
+00953 ** Get information about any given attribute.
+00954 ** @{
+00955 */
+00956 
+00957 TIDY_EXPORT TidyAttrId TIDY_CALL tidyAttrGetId( TidyAttr tattr );
+00958 TIDY_EXPORT Bool TIDY_CALL tidyAttrIsEvent( TidyAttr tattr );
+00959 TIDY_EXPORT Bool TIDY_CALL tidyAttrIsProp( TidyAttr tattr );
+00960 
+00961 /** @defgroup AttrIsAttributeName Deprecated attribute interrogation per AttrId
+00962 **
+00963 ** @deprecated The functions  tidyAttrIs{AttributeName} are deprecated and 
+00964 ** should be replaced by tidyAttrGetId.
+00965 ** @{
+00966 */
+00967 TIDY_EXPORT Bool TIDY_CALL tidyAttrIsHREF( TidyAttr tattr );
+00968 TIDY_EXPORT Bool TIDY_CALL tidyAttrIsSRC( TidyAttr tattr );
+00969 TIDY_EXPORT Bool TIDY_CALL tidyAttrIsID( TidyAttr tattr );
+00970 TIDY_EXPORT Bool TIDY_CALL tidyAttrIsNAME( TidyAttr tattr );
+00971 TIDY_EXPORT Bool TIDY_CALL tidyAttrIsSUMMARY( TidyAttr tattr );
+00972 TIDY_EXPORT Bool TIDY_CALL tidyAttrIsALT( TidyAttr tattr );
+00973 TIDY_EXPORT Bool TIDY_CALL tidyAttrIsLONGDESC( TidyAttr tattr );
+00974 TIDY_EXPORT Bool TIDY_CALL tidyAttrIsUSEMAP( TidyAttr tattr );
+00975 TIDY_EXPORT Bool TIDY_CALL tidyAttrIsISMAP( TidyAttr tattr );
+00976 TIDY_EXPORT Bool TIDY_CALL tidyAttrIsLANGUAGE( TidyAttr tattr );
+00977 TIDY_EXPORT Bool TIDY_CALL tidyAttrIsTYPE( TidyAttr tattr );
+00978 TIDY_EXPORT Bool TIDY_CALL tidyAttrIsVALUE( TidyAttr tattr );
+00979 TIDY_EXPORT Bool TIDY_CALL tidyAttrIsCONTENT( TidyAttr tattr );
+00980 TIDY_EXPORT Bool TIDY_CALL tidyAttrIsTITLE( TidyAttr tattr );
+00981 TIDY_EXPORT Bool TIDY_CALL tidyAttrIsXMLNS( TidyAttr tattr );
+00982 TIDY_EXPORT Bool TIDY_CALL tidyAttrIsDATAFLD( TidyAttr tattr );
+00983 TIDY_EXPORT Bool TIDY_CALL tidyAttrIsWIDTH( TidyAttr tattr );
+00984 TIDY_EXPORT Bool TIDY_CALL tidyAttrIsHEIGHT( TidyAttr tattr );
+00985 TIDY_EXPORT Bool TIDY_CALL tidyAttrIsFOR( TidyAttr tattr );
+00986 TIDY_EXPORT Bool TIDY_CALL tidyAttrIsSELECTED( TidyAttr tattr );
+00987 TIDY_EXPORT Bool TIDY_CALL tidyAttrIsCHECKED( TidyAttr tattr );
+00988 TIDY_EXPORT Bool TIDY_CALL tidyAttrIsLANG( TidyAttr tattr );
+00989 TIDY_EXPORT Bool TIDY_CALL tidyAttrIsTARGET( TidyAttr tattr );
+00990 TIDY_EXPORT Bool TIDY_CALL tidyAttrIsHTTP_EQUIV( TidyAttr tattr );
+00991 TIDY_EXPORT Bool TIDY_CALL tidyAttrIsREL( TidyAttr tattr );
+00992 TIDY_EXPORT Bool TIDY_CALL tidyAttrIsOnMOUSEMOVE( TidyAttr tattr );
+00993 TIDY_EXPORT Bool TIDY_CALL tidyAttrIsOnMOUSEDOWN( TidyAttr tattr );
+00994 TIDY_EXPORT Bool TIDY_CALL tidyAttrIsOnMOUSEUP( TidyAttr tattr );
+00995 TIDY_EXPORT Bool TIDY_CALL tidyAttrIsOnCLICK( TidyAttr tattr );
+00996 TIDY_EXPORT Bool TIDY_CALL tidyAttrIsOnMOUSEOVER( TidyAttr tattr );
+00997 TIDY_EXPORT Bool TIDY_CALL tidyAttrIsOnMOUSEOUT( TidyAttr tattr );
+00998 TIDY_EXPORT Bool TIDY_CALL tidyAttrIsOnKEYDOWN( TidyAttr tattr );
+00999 TIDY_EXPORT Bool TIDY_CALL tidyAttrIsOnKEYUP( TidyAttr tattr );
+01000 TIDY_EXPORT Bool TIDY_CALL tidyAttrIsOnKEYPRESS( TidyAttr tattr );
+01001 TIDY_EXPORT Bool TIDY_CALL tidyAttrIsOnFOCUS( TidyAttr tattr );
+01002 TIDY_EXPORT Bool TIDY_CALL tidyAttrIsOnBLUR( TidyAttr tattr );
+01003 TIDY_EXPORT Bool TIDY_CALL tidyAttrIsBGCOLOR( TidyAttr tattr );
+01004 TIDY_EXPORT Bool TIDY_CALL tidyAttrIsLINK( TidyAttr tattr );
+01005 TIDY_EXPORT Bool TIDY_CALL tidyAttrIsALINK( TidyAttr tattr );
+01006 TIDY_EXPORT Bool TIDY_CALL tidyAttrIsVLINK( TidyAttr tattr );
+01007 TIDY_EXPORT Bool TIDY_CALL tidyAttrIsTEXT( TidyAttr tattr );
+01008 TIDY_EXPORT Bool TIDY_CALL tidyAttrIsSTYLE( TidyAttr tattr );
+01009 TIDY_EXPORT Bool TIDY_CALL tidyAttrIsABBR( TidyAttr tattr );
+01010 TIDY_EXPORT Bool TIDY_CALL tidyAttrIsCOLSPAN( TidyAttr tattr );
+01011 TIDY_EXPORT Bool TIDY_CALL tidyAttrIsROWSPAN( TidyAttr tattr );
+01012 
+01013 /** @} End AttrIsAttributeName group */
+01014 
+01015 /** @} end AttrAsk group */
+01016 
+01017 
+01018 /** @defgroup AttrGet Attribute Retrieval
+01019 **
+01020 ** Lookup an attribute from a given node
+01021 ** @{
+01022 */
+01023 
+01024 TIDY_EXPORT TidyAttr TIDY_CALL tidyAttrGetById( TidyNode tnod, TidyAttrId attId );
+01025 
+01026 /** @defgroup AttrGetAttributeName Deprecated attribute retrieval per AttrId
+01027 **
+01028 ** @deprecated The functions tidyAttrGet{AttributeName} are deprecated and 
+01029 ** should be replaced by tidyAttrGetById.
+01030 ** For instance, tidyAttrGetID( TidyNode tnod ) can be replaced by 
+01031 ** tidyAttrGetById( TidyNode tnod, TidyAttr_ID ). This avoids a potential
+01032 ** name clash with tidyAttrGetId for case-insensitive languages.
+01033 ** @{
+01034 */
+01035 TIDY_EXPORT TidyAttr TIDY_CALL tidyAttrGetHREF( TidyNode tnod );
+01036 TIDY_EXPORT TidyAttr TIDY_CALL tidyAttrGetSRC( TidyNode tnod );
+01037 TIDY_EXPORT TidyAttr TIDY_CALL tidyAttrGetID( TidyNode tnod );
+01038 TIDY_EXPORT TidyAttr TIDY_CALL tidyAttrGetNAME( TidyNode tnod );
+01039 TIDY_EXPORT TidyAttr TIDY_CALL tidyAttrGetSUMMARY( TidyNode tnod );
+01040 TIDY_EXPORT TidyAttr TIDY_CALL tidyAttrGetALT( TidyNode tnod );
+01041 TIDY_EXPORT TidyAttr TIDY_CALL tidyAttrGetLONGDESC( TidyNode tnod );
+01042 TIDY_EXPORT TidyAttr TIDY_CALL tidyAttrGetUSEMAP( TidyNode tnod );
+01043 TIDY_EXPORT TidyAttr TIDY_CALL tidyAttrGetISMAP( TidyNode tnod );
+01044 TIDY_EXPORT TidyAttr TIDY_CALL tidyAttrGetLANGUAGE( TidyNode tnod );
+01045 TIDY_EXPORT TidyAttr TIDY_CALL tidyAttrGetTYPE( TidyNode tnod );
+01046 TIDY_EXPORT TidyAttr TIDY_CALL tidyAttrGetVALUE( TidyNode tnod );
+01047 TIDY_EXPORT TidyAttr TIDY_CALL tidyAttrGetCONTENT( TidyNode tnod );
+01048 TIDY_EXPORT TidyAttr TIDY_CALL tidyAttrGetTITLE( TidyNode tnod );
+01049 TIDY_EXPORT TidyAttr TIDY_CALL tidyAttrGetXMLNS( TidyNode tnod );
+01050 TIDY_EXPORT TidyAttr TIDY_CALL tidyAttrGetDATAFLD( TidyNode tnod );
+01051 TIDY_EXPORT TidyAttr TIDY_CALL tidyAttrGetWIDTH( TidyNode tnod );
+01052 TIDY_EXPORT TidyAttr TIDY_CALL tidyAttrGetHEIGHT( TidyNode tnod );
+01053 TIDY_EXPORT TidyAttr TIDY_CALL tidyAttrGetFOR( TidyNode tnod );
+01054 TIDY_EXPORT TidyAttr TIDY_CALL tidyAttrGetSELECTED( TidyNode tnod );
+01055 TIDY_EXPORT TidyAttr TIDY_CALL tidyAttrGetCHECKED( TidyNode tnod );
+01056 TIDY_EXPORT TidyAttr TIDY_CALL tidyAttrGetLANG( TidyNode tnod );
+01057 TIDY_EXPORT TidyAttr TIDY_CALL tidyAttrGetTARGET( TidyNode tnod );
+01058 TIDY_EXPORT TidyAttr TIDY_CALL tidyAttrGetHTTP_EQUIV( TidyNode tnod );
+01059 TIDY_EXPORT TidyAttr TIDY_CALL tidyAttrGetREL( TidyNode tnod );
+01060 TIDY_EXPORT TidyAttr TIDY_CALL tidyAttrGetOnMOUSEMOVE( TidyNode tnod );
+01061 TIDY_EXPORT TidyAttr TIDY_CALL tidyAttrGetOnMOUSEDOWN( TidyNode tnod );
+01062 TIDY_EXPORT TidyAttr TIDY_CALL tidyAttrGetOnMOUSEUP( TidyNode tnod );
+01063 TIDY_EXPORT TidyAttr TIDY_CALL tidyAttrGetOnCLICK( TidyNode tnod );
+01064 TIDY_EXPORT TidyAttr TIDY_CALL tidyAttrGetOnMOUSEOVER( TidyNode tnod );
+01065 TIDY_EXPORT TidyAttr TIDY_CALL tidyAttrGetOnMOUSEOUT( TidyNode tnod );
+01066 TIDY_EXPORT TidyAttr TIDY_CALL tidyAttrGetOnKEYDOWN( TidyNode tnod );
+01067 TIDY_EXPORT TidyAttr TIDY_CALL tidyAttrGetOnKEYUP( TidyNode tnod );
+01068 TIDY_EXPORT TidyAttr TIDY_CALL tidyAttrGetOnKEYPRESS( TidyNode tnod );
+01069 TIDY_EXPORT TidyAttr TIDY_CALL tidyAttrGetOnFOCUS( TidyNode tnod );
+01070 TIDY_EXPORT TidyAttr TIDY_CALL tidyAttrGetOnBLUR( TidyNode tnod );
+01071 TIDY_EXPORT TidyAttr TIDY_CALL tidyAttrGetBGCOLOR( TidyNode tnod );
+01072 TIDY_EXPORT TidyAttr TIDY_CALL tidyAttrGetLINK( TidyNode tnod );
+01073 TIDY_EXPORT TidyAttr TIDY_CALL tidyAttrGetALINK( TidyNode tnod );
+01074 TIDY_EXPORT TidyAttr TIDY_CALL tidyAttrGetVLINK( TidyNode tnod );
+01075 TIDY_EXPORT TidyAttr TIDY_CALL tidyAttrGetTEXT( TidyNode tnod );
+01076 TIDY_EXPORT TidyAttr TIDY_CALL tidyAttrGetSTYLE( TidyNode tnod );
+01077 TIDY_EXPORT TidyAttr TIDY_CALL tidyAttrGetABBR( TidyNode tnod );
+01078 TIDY_EXPORT TidyAttr TIDY_CALL tidyAttrGetCOLSPAN( TidyNode tnod );
+01079 TIDY_EXPORT TidyAttr TIDY_CALL tidyAttrGetROWSPAN( TidyNode tnod );
+01080 
+01081 /** @} End AttrGetAttributeName group */
+01082 
+01083 /** @} end AttrGet group */
+01084 
+01085 #ifdef __cplusplus
+01086 }  /* extern "C" */
+01087 #endif
+01088 #endif /* __TIDY_H__ */
+01089 
+01090 /*
+01091  * local variables:
+01092  * mode: c
+01093  * indent-tabs-mode: nil
+01094  * c-basic-offset: 4
+01095  * eval: (c-set-offset 'substatement-open 0)
+01096  * end:
+01097  */
+
+
+ + + + + diff --git a/htmldoc/api/tidyenum_8h_source.html b/htmldoc/api/tidyenum_8h_source.html new file mode 100644 index 0000000..8582835 --- /dev/null +++ b/htmldoc/api/tidyenum_8h_source.html @@ -0,0 +1,827 @@ + + + + +HTML Tidy: tidyenum.h Source File + + + + + + + + + + + + +
+ + +
+ + + + + + + + + + + + + +
+
HTML Tidy +  0.1 +
+ +
+
+ + +
+
+ +
+
+
+ +
+
+
+
tidyenum.h
+
+
+
00001 #ifndef __TIDYENUM_H__
+00002 #define __TIDYENUM_H__
+00003 
+00004 /* @file tidyenum.h -- Split public enums into separate header
+00005 
+00006   Simplifies enum re-use in various wrappers.  e.g. SWIG
+00007   generated wrappers and COM IDL files.
+00008 
+00009   Copyright (c) 1998-2008 World Wide Web Consortium
+00010   (Massachusetts Institute of Technology, European Research 
+00011   Consortium for Informatics and Mathematics, Keio University).
+00012   All Rights Reserved.
+00013 
+00014   CVS Info :
+00015 
+00016     $Author: arnaud02 $ 
+00017     $Date: 2008/06/18 20:18:54 $ 
+00018     $Revision: 1.18 $ 
+00019 
+00020   Contributing Author(s):
+00021 
+00022      Dave Raggett <dsr@w3.org>
+00023 
+00024   The contributing author(s) would like to thank all those who
+00025   helped with testing, bug fixes and suggestions for improvements. 
+00026   This wouldn't have been possible without your help.
+00027 
+00028   COPYRIGHT NOTICE:
+00029  
+00030   This software and documentation is provided "as is," and
+00031   the copyright holders and contributing author(s) make no
+00032   representations or warranties, express or implied, including
+00033   but not limited to, warranties of merchantability or fitness
+00034   for any particular purpose or that the use of the software or
+00035   documentation will not infringe any third party patents,
+00036   copyrights, trademarks or other rights. 
+00037 
+00038   The copyright holders and contributing author(s) will not be held
+00039   liable for any direct, indirect, special or consequential damages
+00040   arising out of any use of the software or documentation, even if
+00041   advised of the possibility of such damage.
+00042 
+00043   Permission is hereby granted to use, copy, modify, and distribute
+00044   this source code, or portions hereof, documentation and executables,
+00045   for any purpose, without fee, subject to the following restrictions:
+00046 
+00047   1. The origin of this source code must not be misrepresented.
+00048   2. Altered versions must be plainly marked as such and must
+00049      not be misrepresented as being the original source.
+00050   3. This Copyright notice may not be removed or altered from any
+00051      source or altered source distribution.
+00052  
+00053   The copyright holders and contributing author(s) specifically
+00054   permit, without fee, and encourage the use of this source code
+00055   as a component for supporting the Hypertext Markup Language in
+00056   commercial products. If you use this source code in a product,
+00057   acknowledgment is not required but would be appreciated.
+00058 
+00059 
+00060   Created 2001-05-20 by Charles Reitzel
+00061   Updated 2002-07-01 by Charles Reitzel - 1st Implementation
+00062 
+00063 */
+00064 
+00065 #ifdef __cplusplus
+00066 extern "C" {
+00067 #endif
+00068 
+00069 /* Enumerate configuration options
+00070 */
+00071 
+00072 /** Categories of Tidy configuration options
+00073 */
+00074 typedef enum
+00075 {
+00076   TidyMarkup,          /**< Markup options: (X)HTML version, etc */
+00077   TidyDiagnostics,     /**< Diagnostics */
+00078   TidyPrettyPrint,     /**< Output layout */
+00079   TidyEncoding,        /**< Character encodings */
+00080   TidyMiscellaneous    /**< File handling, message format, etc. */
+00081 } TidyConfigCategory;
+00082 
+00083 
+00084 /** Option IDs Used to get/set option values.
+00085 */
+00086 typedef enum
+00087 {
+00088   TidyUnknownOption,   /**< Unknown option! */
+00089   TidyIndentSpaces,    /**< Indentation n spaces */
+00090   TidyWrapLen,         /**< Wrap margin */
+00091   TidyTabSize,         /**< Expand tabs to n spaces */
+00092 
+00093   TidyCharEncoding,    /**< In/out character encoding */
+00094   TidyInCharEncoding,  /**< Input character encoding (if different) */
+00095   TidyOutCharEncoding, /**< Output character encoding (if different) */    
+00096   TidyNewline,         /**< Output line ending (default to platform) */
+00097 
+00098   TidyDoctypeMode,     /**< See doctype property */
+00099   TidyDoctype,         /**< User specified doctype */
+00100 
+00101   TidyDuplicateAttrs,  /**< Keep first or last duplicate attribute */
+00102   TidyAltText,         /**< Default text for alt attribute */
+00103   
+00104   /* obsolete */
+00105   TidySlideStyle,      /**< Style sheet for slides: not used for anything yet */
+00106 
+00107   TidyErrFile,         /**< File name to write errors to */
+00108   TidyOutFile,         /**< File name to write markup to */
+00109   TidyWriteBack,       /**< If true then output tidied markup */
+00110   TidyShowMarkup,      /**< If false, normal output is suppressed */
+00111   TidyShowWarnings,    /**< However errors are always shown */
+00112   TidyQuiet,           /**< No 'Parsing X', guessed DTD or summary */
+00113   TidyIndentContent,   /**< Indent content of appropriate tags */
+00114                        /**< "auto" does text/block level content indentation */
+00115   TidyHideEndTags,     /**< Suppress optional end tags */
+00116   TidyXmlTags,         /**< Treat input as XML */
+00117   TidyXmlOut,          /**< Create output as XML */
+00118   TidyXhtmlOut,        /**< Output extensible HTML */
+00119   TidyHtmlOut,         /**< Output plain HTML, even for XHTML input.
+00120                            Yes means set explicitly. */
+00121   TidyXmlDecl,         /**< Add <?xml?> for XML docs */
+00122   TidyUpperCaseTags,   /**< Output tags in upper not lower case */
+00123   TidyUpperCaseAttrs,  /**< Output attributes in upper not lower case */
+00124   TidyMakeBare,        /**< Make bare HTML: remove Microsoft cruft */
+00125   TidyMakeClean,       /**< Replace presentational clutter by style rules */
+00126   TidyLogicalEmphasis, /**< Replace i by em and b by strong */
+00127   TidyDropPropAttrs,   /**< Discard proprietary attributes */
+00128   TidyDropFontTags,    /**< Discard presentation tags */
+00129   TidyDropEmptyParas,  /**< Discard empty p elements */
+00130   TidyFixComments,     /**< Fix comments with adjacent hyphens */
+00131   TidyBreakBeforeBR,   /**< Output newline before <br> or not? */
+00132 
+00133   /* obsolete */
+00134   TidyBurstSlides,     /**< Create slides on each h2 element */
+00135 
+00136   TidyNumEntities,     /**< Use numeric entities */
+00137   TidyQuoteMarks,      /**< Output " marks as &quot; */
+00138   TidyQuoteNbsp,       /**< Output non-breaking space as entity */
+00139   TidyQuoteAmpersand,  /**< Output naked ampersand as &amp; */
+00140   TidyWrapAttVals,     /**< Wrap within attribute values */
+00141   TidyWrapScriptlets,  /**< Wrap within JavaScript string literals */
+00142   TidyWrapSection,     /**< Wrap within <![ ... ]> section tags */
+00143   TidyWrapAsp,         /**< Wrap within ASP pseudo elements */
+00144   TidyWrapJste,        /**< Wrap within JSTE pseudo elements */
+00145   TidyWrapPhp,         /**< Wrap within PHP pseudo elements */
+00146   TidyFixBackslash,    /**< Fix URLs by replacing \ with / */
+00147   TidyIndentAttributes,/**< Newline+indent before each attribute */
+00148   TidyXmlPIs,          /**< If set to yes PIs must end with ?> */
+00149   TidyXmlSpace,        /**< If set to yes adds xml:space attr as needed */
+00150   TidyEncloseBodyText, /**< If yes text at body is wrapped in P's */
+00151   TidyEncloseBlockText,/**< If yes text in blocks is wrapped in P's */
+00152   TidyKeepFileTimes,   /**< If yes last modied time is preserved */
+00153   TidyWord2000,        /**< Draconian cleaning for Word2000 */
+00154   TidyMark,            /**< Add meta element indicating tidied doc */
+00155   TidyEmacs,           /**< If true format error output for GNU Emacs */
+00156   TidyEmacsFile,       /**< Name of current Emacs file */
+00157   TidyLiteralAttribs,  /**< If true attributes may use newlines */
+00158   TidyBodyOnly,        /**< Output BODY content only */
+00159   TidyFixUri,          /**< Applies URI encoding if necessary */
+00160   TidyLowerLiterals,   /**< Folds known attribute values to lower case */
+00161   TidyHideComments,    /**< Hides all (real) comments in output */
+00162   TidyIndentCdata,     /**< Indent <!CDATA[ ... ]]> section */
+00163   TidyForceOutput,     /**< Output document even if errors were found */
+00164   TidyShowErrors,      /**< Number of errors to put out */
+00165   TidyAsciiChars,      /**< Convert quotes and dashes to nearest ASCII char */
+00166   TidyJoinClasses,     /**< Join multiple class attributes */
+00167   TidyJoinStyles,      /**< Join multiple style attributes */
+00168   TidyEscapeCdata,     /**< Replace <![CDATA[]]> sections with escaped text */
+00169 
+00170 #if SUPPORT_ASIAN_ENCODINGS
+00171   TidyLanguage,        /**< Language property: not used for anything yet */
+00172   TidyNCR,             /**< Allow numeric character references */
+00173 #else
+00174   TidyLanguageNotUsed,
+00175   TidyNCRNotUsed,
+00176 #endif
+00177 #if SUPPORT_UTF16_ENCODINGS
+00178   TidyOutputBOM,      /**< Output a Byte Order Mark (BOM) for UTF-16 encodings */
+00179                       /**< auto: if input stream has BOM, we output a BOM */
+00180 #else
+00181   TidyOutputBOMNotUsed,
+00182 #endif
+00183 
+00184   TidyReplaceColor,    /**< Replace hex color attribute values with names */
+00185   TidyCSSPrefix,       /**< CSS class naming for -clean option */
+00186 
+00187   TidyInlineTags,      /**< Declared inline tags */
+00188   TidyBlockTags,       /**< Declared block tags */
+00189   TidyEmptyTags,       /**< Declared empty tags */
+00190   TidyPreTags,         /**< Declared pre tags */
+00191 
+00192   TidyAccessibilityCheckLevel, /**< Accessibility check level 
+00193                                    0 (old style), or 1, 2, 3 */
+00194 
+00195   TidyVertSpace,       /**< degree to which markup is spread out vertically */
+00196 #if SUPPORT_ASIAN_ENCODINGS
+00197   TidyPunctWrap,       /**< consider punctuation and breaking spaces for wrapping */
+00198 #else
+00199   TidyPunctWrapNotUsed,
+00200 #endif
+00201   TidyMergeDivs,       /**< Merge multiple DIVs */
+00202   TidyDecorateInferredUL,  /**< Mark inferred UL elements with no indent CSS */
+00203   TidyPreserveEntities,    /**< Preserve entities */
+00204   TidySortAttributes,      /**< Sort attributes */
+00205   TidyMergeSpans,       /**< Merge multiple SPANs */
+00206   TidyAnchorAsName,    /**< Define anchors as name attributes */
+00207   N_TIDY_OPTIONS       /**< Must be last */
+00208 } TidyOptionId;
+00209 
+00210 /** Option data types
+00211 */
+00212 typedef enum
+00213 {
+00214   TidyString,          /**< String */
+00215   TidyInteger,         /**< Integer or enumeration */
+00216   TidyBoolean          /**< Boolean flag */
+00217 } TidyOptionType;
+00218 
+00219 
+00220 /** AutoBool values used by ParseBool, ParseTriState, ParseIndent, ParseBOM
+00221 */
+00222 typedef enum
+00223 {
+00224    TidyNoState,     /**< maps to 'no' */
+00225    TidyYesState,    /**< maps to 'yes' */
+00226    TidyAutoState    /**< Automatic */
+00227 } TidyTriState;
+00228 
+00229 /** TidyNewline option values to control output line endings.
+00230 */
+00231 typedef enum
+00232 {
+00233     TidyLF,         /**< Use Unix style: LF */
+00234     TidyCRLF,       /**< Use DOS/Windows style: CR+LF */
+00235     TidyCR          /**< Use Macintosh style: CR */
+00236 } TidyLineEnding;
+00237 
+00238 
+00239 /** Mode controlling treatment of doctype
+00240 */
+00241 typedef enum
+00242 {
+00243     TidyDoctypeOmit,    /**< Omit DOCTYPE altogether */
+00244     TidyDoctypeAuto,    /**< Keep DOCTYPE in input.  Set version to content */
+00245     TidyDoctypeStrict,  /**< Convert document to HTML 4 strict content model */
+00246     TidyDoctypeLoose,   /**< Convert document to HTML 4 transitional
+00247                              content model */
+00248     TidyDoctypeUser     /**< Set DOCTYPE FPI explicitly */
+00249 } TidyDoctypeModes;
+00250 
+00251 /** Mode controlling treatment of duplicate Attributes
+00252 */
+00253 typedef enum
+00254 {
+00255     TidyKeepFirst,
+00256     TidyKeepLast
+00257 } TidyDupAttrModes;
+00258 
+00259 /** Mode controlling treatment of sorting attributes
+00260 */
+00261 typedef enum
+00262 {
+00263     TidySortAttrNone,
+00264     TidySortAttrAlpha
+00265 } TidyAttrSortStrategy;
+00266 
+00267 /* I/O and Message handling interface
+00268 **
+00269 ** By default, Tidy will define, create and use 
+00270 ** instances of input and output handlers for 
+00271 ** standard C buffered I/O (i.e. FILE* stdin,
+00272 ** FILE* stdout and FILE* stderr for content
+00273 ** input, content output and diagnostic output,
+00274 ** respectively.  A FILE* cfgFile input handler
+00275 ** will be used for config files.  Command line
+00276 ** options will just be set directly.
+00277 */
+00278 
+00279 /** Message severity level
+00280 */
+00281 typedef enum 
+00282 {
+00283   TidyInfo,             /**< Information about markup usage */
+00284   TidyWarning,          /**< Warning message */
+00285   TidyConfig,           /**< Configuration error */
+00286   TidyAccess,           /**< Accessibility message */
+00287   TidyError,            /**< Error message - output suppressed */
+00288   TidyBadDocument,      /**< I/O or file system error */
+00289   TidyFatal             /**< Crash! */
+00290 } TidyReportLevel;
+00291 
+00292 
+00293 /* Document tree traversal functions
+00294 */
+00295 
+00296 /** Node types
+00297 */
+00298 typedef enum 
+00299 {
+00300   TidyNode_Root,        /**< Root */
+00301   TidyNode_DocType,     /**< DOCTYPE */
+00302   TidyNode_Comment,     /**< Comment */
+00303   TidyNode_ProcIns,     /**< Processing Instruction */
+00304   TidyNode_Text,        /**< Text */
+00305   TidyNode_Start,       /**< Start Tag */
+00306   TidyNode_End,         /**< End Tag */
+00307   TidyNode_StartEnd,    /**< Start/End (empty) Tag */
+00308   TidyNode_CDATA,       /**< Unparsed Text */
+00309   TidyNode_Section,     /**< XML Section */
+00310   TidyNode_Asp,         /**< ASP Source */
+00311   TidyNode_Jste,        /**< JSTE Source */
+00312   TidyNode_Php,         /**< PHP Source */
+00313   TidyNode_XmlDecl      /**< XML Declaration */
+00314 } TidyNodeType;
+00315 
+00316 
+00317 /** Known HTML element types
+00318 */
+00319 typedef enum
+00320 {
+00321   TidyTag_UNKNOWN,  /**< Unknown tag! */
+00322   TidyTag_A,        /**< A */
+00323   TidyTag_ABBR,     /**< ABBR */
+00324   TidyTag_ACRONYM,  /**< ACRONYM */
+00325   TidyTag_ADDRESS,  /**< ADDRESS */
+00326   TidyTag_ALIGN,    /**< ALIGN */
+00327   TidyTag_APPLET,   /**< APPLET */
+00328   TidyTag_AREA,     /**< AREA */
+00329   TidyTag_B,        /**< B */
+00330   TidyTag_BASE,     /**< BASE */
+00331   TidyTag_BASEFONT, /**< BASEFONT */
+00332   TidyTag_BDO,      /**< BDO */
+00333   TidyTag_BGSOUND,  /**< BGSOUND */
+00334   TidyTag_BIG,      /**< BIG */
+00335   TidyTag_BLINK,    /**< BLINK */
+00336   TidyTag_BLOCKQUOTE,   /**< BLOCKQUOTE */
+00337   TidyTag_BODY,     /**< BODY */
+00338   TidyTag_BR,       /**< BR */
+00339   TidyTag_BUTTON,   /**< BUTTON */
+00340   TidyTag_CAPTION,  /**< CAPTION */
+00341   TidyTag_CENTER,   /**< CENTER */
+00342   TidyTag_CITE,     /**< CITE */
+00343   TidyTag_CODE,     /**< CODE */
+00344   TidyTag_COL,      /**< COL */
+00345   TidyTag_COLGROUP, /**< COLGROUP */
+00346   TidyTag_COMMENT,  /**< COMMENT */
+00347   TidyTag_DD,       /**< DD */
+00348   TidyTag_DEL,      /**< DEL */
+00349   TidyTag_DFN,      /**< DFN */
+00350   TidyTag_DIR,      /**< DIR */
+00351   TidyTag_DIV,      /**< DIF */
+00352   TidyTag_DL,       /**< DL */
+00353   TidyTag_DT,       /**< DT */
+00354   TidyTag_EM,       /**< EM */
+00355   TidyTag_EMBED,    /**< EMBED */
+00356   TidyTag_FIELDSET, /**< FIELDSET */
+00357   TidyTag_FONT,     /**< FONT */
+00358   TidyTag_FORM,     /**< FORM */
+00359   TidyTag_FRAME,    /**< FRAME */
+00360   TidyTag_FRAMESET, /**< FRAMESET */
+00361   TidyTag_H1,       /**< H1 */
+00362   TidyTag_H2,       /**< H2 */
+00363   TidyTag_H3,       /**< H3 */
+00364   TidyTag_H4,       /**< H4 */
+00365   TidyTag_H5,       /**< H5 */
+00366   TidyTag_H6,       /**< H6 */
+00367   TidyTag_HEAD,     /**< HEAD */
+00368   TidyTag_HR,       /**< HR */
+00369   TidyTag_HTML,     /**< HTML */
+00370   TidyTag_I,        /**< I */
+00371   TidyTag_IFRAME,   /**< IFRAME */
+00372   TidyTag_ILAYER,   /**< ILAYER */
+00373   TidyTag_IMG,      /**< IMG */
+00374   TidyTag_INPUT,    /**< INPUT */
+00375   TidyTag_INS,      /**< INS */
+00376   TidyTag_ISINDEX,  /**< ISINDEX */
+00377   TidyTag_KBD,      /**< KBD */
+00378   TidyTag_KEYGEN,   /**< KEYGEN */
+00379   TidyTag_LABEL,    /**< LABEL */
+00380   TidyTag_LAYER,    /**< LAYER */
+00381   TidyTag_LEGEND,   /**< LEGEND */
+00382   TidyTag_LI,       /**< LI */
+00383   TidyTag_LINK,     /**< LINK */
+00384   TidyTag_LISTING,  /**< LISTING */
+00385   TidyTag_MAP,      /**< MAP */
+00386   TidyTag_MARQUEE,  /**< MARQUEE */
+00387   TidyTag_MENU,     /**< MENU */
+00388   TidyTag_META,     /**< META */
+00389   TidyTag_MULTICOL, /**< MULTICOL */
+00390   TidyTag_NOBR,     /**< NOBR */
+00391   TidyTag_NOEMBED,  /**< NOEMBED */
+00392   TidyTag_NOFRAMES, /**< NOFRAMES */
+00393   TidyTag_NOLAYER,  /**< NOLAYER */
+00394   TidyTag_NOSAVE,   /**< NOSAVE */
+00395   TidyTag_NOSCRIPT, /**< NOSCRIPT */
+00396   TidyTag_OBJECT,   /**< OBJECT */
+00397   TidyTag_OL,       /**< OL */
+00398   TidyTag_OPTGROUP, /**< OPTGROUP */
+00399   TidyTag_OPTION,   /**< OPTION */
+00400   TidyTag_P,        /**< P */
+00401   TidyTag_PARAM,    /**< PARAM */
+00402   TidyTag_PLAINTEXT,/**< PLAINTEXT */
+00403   TidyTag_PRE,      /**< PRE */
+00404   TidyTag_Q,        /**< Q */
+00405   TidyTag_RB,       /**< RB */
+00406   TidyTag_RBC,      /**< RBC */
+00407   TidyTag_RP,       /**< RP */
+00408   TidyTag_RT,       /**< RT */
+00409   TidyTag_RTC,      /**< RTC */
+00410   TidyTag_RUBY,     /**< RUBY */
+00411   TidyTag_S,        /**< S */
+00412   TidyTag_SAMP,     /**< SAMP */
+00413   TidyTag_SCRIPT,   /**< SCRIPT */
+00414   TidyTag_SELECT,   /**< SELECT */
+00415   TidyTag_SERVER,   /**< SERVER */
+00416   TidyTag_SERVLET,  /**< SERVLET */
+00417   TidyTag_SMALL,    /**< SMALL */
+00418   TidyTag_SPACER,   /**< SPACER */
+00419   TidyTag_SPAN,     /**< SPAN */
+00420   TidyTag_STRIKE,   /**< STRIKE */
+00421   TidyTag_STRONG,   /**< STRONG */
+00422   TidyTag_STYLE,    /**< STYLE */
+00423   TidyTag_SUB,      /**< SUB */
+00424   TidyTag_SUP,      /**< SUP */
+00425   TidyTag_TABLE,    /**< TABLE */
+00426   TidyTag_TBODY,    /**< TBODY */
+00427   TidyTag_TD,       /**< TD */
+00428   TidyTag_TEXTAREA, /**< TEXTAREA */
+00429   TidyTag_TFOOT,    /**< TFOOT */
+00430   TidyTag_TH,       /**< TH */
+00431   TidyTag_THEAD,    /**< THEAD */
+00432   TidyTag_TITLE,    /**< TITLE */
+00433   TidyTag_TR,       /**< TR */
+00434   TidyTag_TT,       /**< TT */
+00435   TidyTag_U,        /**< U */
+00436   TidyTag_UL,       /**< UL */
+00437   TidyTag_VAR,      /**< VAR */
+00438   TidyTag_WBR,      /**< WBR */
+00439   TidyTag_XMP,      /**< XMP */
+00440   TidyTag_NEXTID,   /**< NEXTID */
+00441 
+00442   TidyTag_ARTICLE,
+00443   TidyTag_ASIDE,
+00444   TidyTag_AUDIO,
+00445   TidyTag_CANVAS,
+00446   TidyTag_COMMAND,
+00447   TidyTag_DATALIST,
+00448   TidyTag_DETAILS,
+00449   TidyTag_FIGCAPTION,
+00450   TidyTag_FIGURE,
+00451   TidyTag_FOOTER,
+00452   TidyTag_HEADER,
+00453   TidyTag_HGROUP,
+00454   TidyTag_MARK,
+00455   TidyTag_METER,
+00456   TidyTag_NAV,
+00457   TidyTag_OUTPUT,
+00458   TidyTag_PROGRESS,
+00459   TidyTag_SECTION,
+00460   TidyTag_SOURCE,
+00461   TidyTag_SUMMARY,
+00462   TidyTag_TIME,
+00463   TidyTag_TRACK,
+00464   TidyTag_VIDEO,
+00465 
+00466   N_TIDY_TAGS       /**< Must be last */
+00467 } TidyTagId;
+00468 
+00469 /* Attribute interrogation
+00470 */
+00471 
+00472 /** Known HTML attributes
+00473 */
+00474 typedef enum
+00475 {
+00476   TidyAttr_UNKNOWN,           /**< UNKNOWN= */
+00477   TidyAttr_ABBR,              /**< ABBR= */
+00478   TidyAttr_ACCEPT,            /**< ACCEPT= */
+00479   TidyAttr_ACCEPT_CHARSET,    /**< ACCEPT_CHARSET= */
+00480   TidyAttr_ACCESSKEY,         /**< ACCESSKEY= */
+00481   TidyAttr_ACTION,            /**< ACTION= */
+00482   TidyAttr_ADD_DATE,          /**< ADD_DATE= */
+00483   TidyAttr_ALIGN,             /**< ALIGN= */
+00484   TidyAttr_ALINK,             /**< ALINK= */
+00485   TidyAttr_ALT,               /**< ALT= */
+00486   TidyAttr_ARCHIVE,           /**< ARCHIVE= */
+00487   TidyAttr_AXIS,              /**< AXIS= */
+00488   TidyAttr_BACKGROUND,        /**< BACKGROUND= */
+00489   TidyAttr_BGCOLOR,           /**< BGCOLOR= */
+00490   TidyAttr_BGPROPERTIES,      /**< BGPROPERTIES= */
+00491   TidyAttr_BORDER,            /**< BORDER= */
+00492   TidyAttr_BORDERCOLOR,       /**< BORDERCOLOR= */
+00493   TidyAttr_BOTTOMMARGIN,      /**< BOTTOMMARGIN= */
+00494   TidyAttr_CELLPADDING,       /**< CELLPADDING= */
+00495   TidyAttr_CELLSPACING,       /**< CELLSPACING= */
+00496   TidyAttr_CHAR,              /**< CHAR= */
+00497   TidyAttr_CHAROFF,           /**< CHAROFF= */
+00498   TidyAttr_CHARSET,           /**< CHARSET= */
+00499   TidyAttr_CHECKED,           /**< CHECKED= */
+00500   TidyAttr_CITE,              /**< CITE= */
+00501   TidyAttr_CLASS,             /**< CLASS= */
+00502   TidyAttr_CLASSID,           /**< CLASSID= */
+00503   TidyAttr_CLEAR,             /**< CLEAR= */
+00504   TidyAttr_CODE,              /**< CODE= */
+00505   TidyAttr_CODEBASE,          /**< CODEBASE= */
+00506   TidyAttr_CODETYPE,          /**< CODETYPE= */
+00507   TidyAttr_COLOR,             /**< COLOR= */
+00508   TidyAttr_COLS,              /**< COLS= */
+00509   TidyAttr_COLSPAN,           /**< COLSPAN= */
+00510   TidyAttr_COMPACT,           /**< COMPACT= */
+00511   TidyAttr_CONTENT,           /**< CONTENT= */
+00512   TidyAttr_COORDS,            /**< COORDS= */
+00513   TidyAttr_DATA,              /**< DATA= */
+00514   TidyAttr_DATAFLD,           /**< DATAFLD= */
+00515   TidyAttr_DATAFORMATAS,      /**< DATAFORMATAS= */
+00516   TidyAttr_DATAPAGESIZE,      /**< DATAPAGESIZE= */
+00517   TidyAttr_DATASRC,           /**< DATASRC= */
+00518   TidyAttr_DATETIME,          /**< DATETIME= */
+00519   TidyAttr_DECLARE,           /**< DECLARE= */
+00520   TidyAttr_DEFER,             /**< DEFER= */
+00521   TidyAttr_DIR,               /**< DIR= */
+00522   TidyAttr_DISABLED,          /**< DISABLED= */
+00523   TidyAttr_ENCODING,          /**< ENCODING= */
+00524   TidyAttr_ENCTYPE,           /**< ENCTYPE= */
+00525   TidyAttr_FACE,              /**< FACE= */
+00526   TidyAttr_FOR,               /**< FOR= */
+00527   TidyAttr_FRAME,             /**< FRAME= */
+00528   TidyAttr_FRAMEBORDER,       /**< FRAMEBORDER= */
+00529   TidyAttr_FRAMESPACING,      /**< FRAMESPACING= */
+00530   TidyAttr_GRIDX,             /**< GRIDX= */
+00531   TidyAttr_GRIDY,             /**< GRIDY= */
+00532   TidyAttr_HEADERS,           /**< HEADERS= */
+00533   TidyAttr_HEIGHT,            /**< HEIGHT= */
+00534   TidyAttr_HREF,              /**< HREF= */
+00535   TidyAttr_HREFLANG,          /**< HREFLANG= */
+00536   TidyAttr_HSPACE,            /**< HSPACE= */
+00537   TidyAttr_HTTP_EQUIV,        /**< HTTP_EQUIV= */
+00538   TidyAttr_ID,                /**< ID= */
+00539   TidyAttr_ISMAP,             /**< ISMAP= */
+00540   TidyAttr_ITEMPROP,          /**< ITEMPROP= */
+00541   TidyAttr_LABEL,             /**< LABEL= */
+00542   TidyAttr_LANG,              /**< LANG= */
+00543   TidyAttr_LANGUAGE,          /**< LANGUAGE= */
+00544   TidyAttr_LAST_MODIFIED,     /**< LAST_MODIFIED= */
+00545   TidyAttr_LAST_VISIT,        /**< LAST_VISIT= */
+00546   TidyAttr_LEFTMARGIN,        /**< LEFTMARGIN= */
+00547   TidyAttr_LINK,              /**< LINK= */
+00548   TidyAttr_LONGDESC,          /**< LONGDESC= */
+00549   TidyAttr_LOWSRC,            /**< LOWSRC= */
+00550   TidyAttr_MARGINHEIGHT,      /**< MARGINHEIGHT= */
+00551   TidyAttr_MARGINWIDTH,       /**< MARGINWIDTH= */
+00552   TidyAttr_MAXLENGTH,         /**< MAXLENGTH= */
+00553   TidyAttr_MEDIA,             /**< MEDIA= */
+00554   TidyAttr_METHOD,            /**< METHOD= */
+00555   TidyAttr_MULTIPLE,          /**< MULTIPLE= */
+00556   TidyAttr_NAME,              /**< NAME= */
+00557   TidyAttr_NOHREF,            /**< NOHREF= */
+00558   TidyAttr_NORESIZE,          /**< NORESIZE= */
+00559   TidyAttr_NOSHADE,           /**< NOSHADE= */
+00560   TidyAttr_NOWRAP,            /**< NOWRAP= */
+00561   TidyAttr_OBJECT,            /**< OBJECT= */
+00562   TidyAttr_OnAFTERUPDATE,     /**< OnAFTERUPDATE= */
+00563   TidyAttr_OnBEFOREUNLOAD,    /**< OnBEFOREUNLOAD= */
+00564   TidyAttr_OnBEFOREUPDATE,    /**< OnBEFOREUPDATE= */
+00565   TidyAttr_OnBLUR,            /**< OnBLUR= */
+00566   TidyAttr_OnCHANGE,          /**< OnCHANGE= */
+00567   TidyAttr_OnCLICK,           /**< OnCLICK= */
+00568   TidyAttr_OnDATAAVAILABLE,   /**< OnDATAAVAILABLE= */
+00569   TidyAttr_OnDATASETCHANGED,  /**< OnDATASETCHANGED= */
+00570   TidyAttr_OnDATASETCOMPLETE, /**< OnDATASETCOMPLETE= */
+00571   TidyAttr_OnDBLCLICK,        /**< OnDBLCLICK= */
+00572   TidyAttr_OnERRORUPDATE,     /**< OnERRORUPDATE= */
+00573   TidyAttr_OnFOCUS,           /**< OnFOCUS= */
+00574   TidyAttr_OnKEYDOWN,         /**< OnKEYDOWN= */
+00575   TidyAttr_OnKEYPRESS,        /**< OnKEYPRESS= */
+00576   TidyAttr_OnKEYUP,           /**< OnKEYUP= */
+00577   TidyAttr_OnLOAD,            /**< OnLOAD= */
+00578   TidyAttr_OnMOUSEDOWN,       /**< OnMOUSEDOWN= */
+00579   TidyAttr_OnMOUSEMOVE,       /**< OnMOUSEMOVE= */
+00580   TidyAttr_OnMOUSEOUT,        /**< OnMOUSEOUT= */
+00581   TidyAttr_OnMOUSEOVER,       /**< OnMOUSEOVER= */
+00582   TidyAttr_OnMOUSEUP,         /**< OnMOUSEUP= */
+00583   TidyAttr_OnRESET,           /**< OnRESET= */
+00584   TidyAttr_OnROWENTER,        /**< OnROWENTER= */
+00585   TidyAttr_OnROWEXIT,         /**< OnROWEXIT= */
+00586   TidyAttr_OnSELECT,          /**< OnSELECT= */
+00587   TidyAttr_OnSUBMIT,          /**< OnSUBMIT= */
+00588   TidyAttr_OnUNLOAD,          /**< OnUNLOAD= */
+00589   TidyAttr_PROFILE,           /**< PROFILE= */
+00590   TidyAttr_PROMPT,            /**< PROMPT= */
+00591   TidyAttr_RBSPAN,            /**< RBSPAN= */
+00592   TidyAttr_READONLY,          /**< READONLY= */
+00593   TidyAttr_REL,               /**< REL= */
+00594   TidyAttr_REV,               /**< REV= */
+00595   TidyAttr_RIGHTMARGIN,       /**< RIGHTMARGIN= */
+00596   TidyAttr_ROWS,              /**< ROWS= */
+00597   TidyAttr_ROWSPAN,           /**< ROWSPAN= */
+00598   TidyAttr_RULES,             /**< RULES= */
+00599   TidyAttr_SCHEME,            /**< SCHEME= */
+00600   TidyAttr_SCOPE,             /**< SCOPE= */
+00601   TidyAttr_SCROLLING,         /**< SCROLLING= */
+00602   TidyAttr_SELECTED,          /**< SELECTED= */
+00603   TidyAttr_SHAPE,             /**< SHAPE= */
+00604   TidyAttr_SHOWGRID,          /**< SHOWGRID= */
+00605   TidyAttr_SHOWGRIDX,         /**< SHOWGRIDX= */
+00606   TidyAttr_SHOWGRIDY,         /**< SHOWGRIDY= */
+00607   TidyAttr_SIZE,              /**< SIZE= */
+00608   TidyAttr_SPAN,              /**< SPAN= */
+00609   TidyAttr_SRC,               /**< SRC= */
+00610   TidyAttr_STANDBY,           /**< STANDBY= */
+00611   TidyAttr_START,             /**< START= */
+00612   TidyAttr_STYLE,             /**< STYLE= */
+00613   TidyAttr_SUMMARY,           /**< SUMMARY= */
+00614   TidyAttr_TABINDEX,          /**< TABINDEX= */
+00615   TidyAttr_TARGET,            /**< TARGET= */
+00616   TidyAttr_TEXT,              /**< TEXT= */
+00617   TidyAttr_TITLE,             /**< TITLE= */
+00618   TidyAttr_TOPMARGIN,         /**< TOPMARGIN= */
+00619   TidyAttr_TYPE,              /**< TYPE= */
+00620   TidyAttr_USEMAP,            /**< USEMAP= */
+00621   TidyAttr_VALIGN,            /**< VALIGN= */
+00622   TidyAttr_VALUE,             /**< VALUE= */
+00623   TidyAttr_VALUETYPE,         /**< VALUETYPE= */
+00624   TidyAttr_VERSION,           /**< VERSION= */
+00625   TidyAttr_VLINK,             /**< VLINK= */
+00626   TidyAttr_VSPACE,            /**< VSPACE= */
+00627   TidyAttr_WIDTH,             /**< WIDTH= */
+00628   TidyAttr_WRAP,              /**< WRAP= */
+00629   TidyAttr_XML_LANG,          /**< XML_LANG= */
+00630   TidyAttr_XML_SPACE,         /**< XML_SPACE= */
+00631   TidyAttr_XMLNS,             /**< XMLNS= */
+00632 
+00633   TidyAttr_EVENT,             /**< EVENT= */
+00634   TidyAttr_METHODS,           /**< METHODS= */
+00635   TidyAttr_N,                 /**< N= */
+00636   TidyAttr_SDAFORM,           /**< SDAFORM= */
+00637   TidyAttr_SDAPREF,           /**< SDAPREF= */
+00638   TidyAttr_SDASUFF,           /**< SDASUFF= */
+00639   TidyAttr_URN,               /**< URN= */
+00640 
+00641   TidyAttr_ASYNC,
+00642   TidyAttr_AUTOCOMPLETE,
+00643   TidyAttr_AUTOFOCUS,
+00644   TidyAttr_AUTOPLAY,
+00645   TidyAttr_CHALLENGE,
+00646   TidyAttr_CONTENTEDITABLE,
+00647   TidyAttr_CONTEXTMENU,
+00648   TidyAttr_CONTROLS,
+00649   TidyAttr_DEFAULT,
+00650   TidyAttr_DIRNAME,
+00651   TidyAttr_DRAGGABLE,
+00652   TidyAttr_DROPZONE,
+00653   TidyAttr_FORM,
+00654   TidyAttr_FORMACTION,
+00655   TidyAttr_FORMENCTYPE,
+00656   TidyAttr_FORMMETHOD,
+00657   TidyAttr_FORMNOVALIDATE,
+00658   TidyAttr_FORMTARGET,
+00659   TidyAttr_HIDDEN,
+00660   TidyAttr_HIGH,
+00661   TidyAttr_ICON,
+00662   TidyAttr_KEYTYPE,
+00663   TidyAttr_KIND,
+00664   TidyAttr_LIST,
+00665   TidyAttr_LOOP,
+00666   TidyAttr_LOW,
+00667   TidyAttr_MANIFEST,
+00668   TidyAttr_MAX,
+00669   TidyAttr_MEDIAGROUP,
+00670   TidyAttr_MIN,
+00671   TidyAttr_NOVALIDATE,
+00672   TidyAttr_OPEN,
+00673   TidyAttr_OPTIMUM,
+00674   TidyAttr_OnABORT,
+00675   TidyAttr_OnAFTERPRINT,
+00676   TidyAttr_OnBEFOREPRINT,
+00677   TidyAttr_OnCANPLAY,
+00678   TidyAttr_OnCANPLAYTHROUGH,
+00679   TidyAttr_OnCONTEXTMENU,
+00680   TidyAttr_OnCUECHANGE,
+00681   TidyAttr_OnDRAG,
+00682   TidyAttr_OnDRAGEND,
+00683   TidyAttr_OnDRAGENTER,
+00684   TidyAttr_OnDRAGLEAVE,
+00685   TidyAttr_OnDRAGOVER,
+00686   TidyAttr_OnDRAGSTART,
+00687   TidyAttr_OnDROP,
+00688   TidyAttr_OnDURATIONCHANGE,
+00689   TidyAttr_OnEMPTIED,
+00690   TidyAttr_OnENDED,
+00691   TidyAttr_OnERROR,
+00692   TidyAttr_OnHASHCHANGE,
+00693   TidyAttr_OnINPUT,
+00694   TidyAttr_OnINVALID,
+00695   TidyAttr_OnLOADEDDATA,
+00696   TidyAttr_OnLOADEDMETADATA,
+00697   TidyAttr_OnLOADSTART,
+00698   TidyAttr_OnMESSAGE,
+00699   TidyAttr_OnMOUSEWHEEL,
+00700   TidyAttr_OnOFFLINE,
+00701   TidyAttr_OnONLINE,
+00702   TidyAttr_OnPAGEHIDE,
+00703   TidyAttr_OnPAGESHOW,
+00704   TidyAttr_OnPAUSE,
+00705   TidyAttr_OnPLAY,
+00706   TidyAttr_OnPLAYING,
+00707   TidyAttr_OnPOPSTATE,
+00708   TidyAttr_OnPROGRESS,
+00709   TidyAttr_OnRATECHANGE,
+00710   TidyAttr_OnREADYSTATECHANGE,
+00711   TidyAttr_OnREDO,
+00712   TidyAttr_OnRESIZE,
+00713   TidyAttr_OnSCROLL,
+00714   TidyAttr_OnSEEKED,
+00715   TidyAttr_OnSEEKING,
+00716   TidyAttr_OnSHOW,
+00717   TidyAttr_OnSTALLED,
+00718   TidyAttr_OnSTORAGE,
+00719   TidyAttr_OnSUSPEND,
+00720   TidyAttr_OnTIMEUPDATE,
+00721   TidyAttr_OnUNDO,
+00722   TidyAttr_OnVOLUMECHANGE,
+00723   TidyAttr_OnWAITING,
+00724   TidyAttr_PATTERN,
+00725   TidyAttr_PLACEHOLDER,
+00726   TidyAttr_POSTER,
+00727   TidyAttr_PRELOAD,
+00728   TidyAttr_PUBDATE,
+00729   TidyAttr_RADIOGROUP,
+00730   TidyAttr_REQUIRED,
+00731   TidyAttr_REVERSED,
+00732   TidyAttr_SANDBOX,
+00733   TidyAttr_SCOPED,
+00734   TidyAttr_SEAMLESS,
+00735   TidyAttr_SIZES,
+00736   TidyAttr_SPELLCHECK,
+00737   TidyAttr_SRCDOC,
+00738   TidyAttr_SRCLANG,
+00739   TidyAttr_STEP,
+00740 
+00741 
+00742   N_TIDY_ATTRIBS              /**< Must be last */
+00743 } TidyAttrId;
+00744 
+00745 #ifdef __cplusplus
+00746 }  /* extern "C" */
+00747 #endif
+00748 #endif /* __TIDYENUM_H__ */
+
+
+ + + + + diff --git a/htmldoc/doxygen.cfg b/htmldoc/doxygen.cfg index a30887c..c2692ff 100644 --- a/htmldoc/doxygen.cfg +++ b/htmldoc/doxygen.cfg @@ -1,582 +1,781 @@ -# Doxyfile 1.5.1 +# Doxyfile 1.7.5.1 # This file describes the settings to be used by the documentation system -# doxygen (www.doxygen.org) for a project +# doxygen (www.doxygen.org) for a project. # -# All text after a hash (#) is considered a comment and will be ignored +# All text after a hash (#) is considered a comment and will be ignored. # The format is: # TAG = value [value, ...] # For lists items can also be appended using: # TAG += value [value, ...] -# Values that contain spaces should be placed between quotes (" ") +# Values that contain spaces should be placed between quotes (" "). #--------------------------------------------------------------------------- # Project related configuration options #--------------------------------------------------------------------------- -# The PROJECT_NAME tag is a single word (or a sequence of words surrounded -# by quotes) that should identify the project. +# This tag specifies the encoding used for all characters in the config file +# that follow. The default is UTF-8 which is also the encoding used for all +# text before the first occurrence of this tag. Doxygen uses libiconv (or the +# iconv built into libc) for the transcoding. See +# http://www.gnu.org/software/libiconv for the list of possible encodings. + +DOXYFILE_ENCODING = UTF-8 + +# The PROJECT_NAME tag is a single word (or sequence of words) that should +# identify the project. Note that if you do not use Doxywizard you need +# to put quotes around the project name if it contains spaces. PROJECT_NAME = "HTML Tidy" -# The PROJECT_NUMBER tag can be used to enter a project or revision number. -# This could be handy for archiving the generated documentation or +# The PROJECT_NUMBER tag can be used to enter a project or revision number. +# This could be handy for archiving the generated documentation or # if some version control system is used. PROJECT_NUMBER = 0.1 -# The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute) -# base path where the generated documentation will be put. -# If a relative path is entered, it will be relative to the location +# Using the PROJECT_BRIEF tag one can provide an optional one line description +# for a project that appears at the top of each page and should give viewer +# a quick idea about the purpose of the project. Keep the description short. + +PROJECT_BRIEF = + +# With the PROJECT_LOGO tag one can specify an logo or icon that is +# included in the documentation. The maximum height of the logo should not +# exceed 55 pixels and the maximum width should not exceed 200 pixels. +# Doxygen will copy the logo to the output directory. + +PROJECT_LOGO = + +# The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute) +# base path where the generated documentation will be put. +# If a relative path is entered, it will be relative to the location # where doxygen was started. If left blank the current directory will be used. OUTPUT_DIRECTORY = htmldoc -# If the CREATE_SUBDIRS tag is set to YES, then doxygen will create -# 4096 sub-directories (in 2 levels) under the output directory of each output -# format and will distribute the generated files over these directories. -# Enabling this option can be useful when feeding doxygen a huge amount of -# source files, where putting all generated files in the same directory would +# If the CREATE_SUBDIRS tag is set to YES, then doxygen will create +# 4096 sub-directories (in 2 levels) under the output directory of each output +# format and will distribute the generated files over these directories. +# Enabling this option can be useful when feeding doxygen a huge amount of +# source files, where putting all generated files in the same directory would # otherwise cause performance problems for the file system. CREATE_SUBDIRS = NO -# The OUTPUT_LANGUAGE tag is used to specify the language in which all -# documentation generated by doxygen is written. Doxygen will use this -# information to generate all constant output in the proper language. -# The default language is English, other supported languages are: -# Afrikaans, Arabic, Brazilian, Catalan, Chinese, Chinese-Traditional, -# Croatian, Czech, Danish, Dutch, Finnish, French, German, Greek, Hungarian, -# Italian, Japanese, Japanese-en (Japanese with English messages), Korean, -# Korean-en, Lithuanian, Norwegian, Polish, Portuguese, Romanian, Russian, -# Serbian, Slovak, Slovene, Spanish, Swedish, and Ukrainian. +# The OUTPUT_LANGUAGE tag is used to specify the language in which all +# documentation generated by doxygen is written. Doxygen will use this +# information to generate all constant output in the proper language. +# The default language is English, other supported languages are: +# Afrikaans, Arabic, Brazilian, Catalan, Chinese, Chinese-Traditional, +# Croatian, Czech, Danish, Dutch, Esperanto, Farsi, Finnish, French, German, +# Greek, Hungarian, Italian, Japanese, Japanese-en (Japanese with English +# messages), Korean, Korean-en, Lithuanian, Norwegian, Macedonian, Persian, +# Polish, Portuguese, Romanian, Russian, Serbian, Serbian-Cyrillic, Slovak, +# Slovene, Spanish, Swedish, Ukrainian, and Vietnamese. OUTPUT_LANGUAGE = English -# This tag can be used to specify the encoding used in the generated output. -# The encoding is not always determined by the language that is chosen, -# but also whether or not the output is meant for Windows or non-Windows users. -# In case there is a difference, setting the USE_WINDOWS_ENCODING tag to YES -# forces the Windows encoding (this is the default for the Windows binary), -# whereas setting the tag to NO uses a Unix-style encoding (the default for -# all platforms other than Windows). - -USE_WINDOWS_ENCODING = YES - -# If the BRIEF_MEMBER_DESC tag is set to YES (the default) Doxygen will -# include brief member descriptions after the members that are listed in -# the file and class documentation (similar to JavaDoc). +# If the BRIEF_MEMBER_DESC tag is set to YES (the default) Doxygen will +# include brief member descriptions after the members that are listed in +# the file and class documentation (similar to JavaDoc). # Set to NO to disable this. BRIEF_MEMBER_DESC = YES -# If the REPEAT_BRIEF tag is set to YES (the default) Doxygen will prepend -# the brief description of a member or function before the detailed description. -# Note: if both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the +# If the REPEAT_BRIEF tag is set to YES (the default) Doxygen will prepend +# the brief description of a member or function before the detailed description. +# Note: if both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the # brief descriptions will be completely suppressed. REPEAT_BRIEF = NO -# This tag implements a quasi-intelligent brief description abbreviator -# that is used to form the text in various listings. Each string -# in this list, if found as the leading text of the brief description, will be -# stripped from the text and the result after processing the whole list, is -# used as the annotated text. Otherwise, the brief description is used as-is. -# If left blank, the following values are used ("$name" is automatically -# replaced with the name of the entity): "The $name class" "The $name widget" -# "The $name file" "is" "provides" "specifies" "contains" +# This tag implements a quasi-intelligent brief description abbreviator +# that is used to form the text in various listings. Each string +# in this list, if found as the leading text of the brief description, will be +# stripped from the text and the result after processing the whole list, is +# used as the annotated text. Otherwise, the brief description is used as-is. +# If left blank, the following values are used ("$name" is automatically +# replaced with the name of the entity): "The $name class" "The $name widget" +# "The $name file" "is" "provides" "specifies" "contains" # "represents" "a" "an" "the" -ABBREVIATE_BRIEF = +ABBREVIATE_BRIEF = -# If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then -# Doxygen will generate a detailed section even if there is only a brief +# If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then +# Doxygen will generate a detailed section even if there is only a brief # description. ALWAYS_DETAILED_SEC = NO -# If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all -# inherited members of a class in the documentation of that class as if those -# members were ordinary class members. Constructors, destructors and assignment +# If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all +# inherited members of a class in the documentation of that class as if those +# members were ordinary class members. Constructors, destructors and assignment # operators of the base classes will not be shown. INLINE_INHERITED_MEMB = NO -# If the FULL_PATH_NAMES tag is set to YES then Doxygen will prepend the full -# path before files name in the file list and in the header files. If set +# If the FULL_PATH_NAMES tag is set to YES then Doxygen will prepend the full +# path before files name in the file list and in the header files. If set # to NO the shortest path that makes the file name unique will be used. FULL_PATH_NAMES = NO -# If the FULL_PATH_NAMES tag is set to YES then the STRIP_FROM_PATH tag -# can be used to strip a user-defined part of the path. Stripping is -# only done if one of the specified strings matches the left-hand part of -# the path. The tag can be used to show relative paths in the file list. -# If left blank the directory from which doxygen is run is used as the +# If the FULL_PATH_NAMES tag is set to YES then the STRIP_FROM_PATH tag +# can be used to strip a user-defined part of the path. Stripping is +# only done if one of the specified strings matches the left-hand part of +# the path. The tag can be used to show relative paths in the file list. +# If left blank the directory from which doxygen is run is used as the # path to strip. -STRIP_FROM_PATH = +STRIP_FROM_PATH = -# The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of -# the path mentioned in the documentation of a class, which tells -# the reader which header file to include in order to use a class. -# If left blank only the name of the header file containing the class -# definition is used. Otherwise one should specify the include paths that +# The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of +# the path mentioned in the documentation of a class, which tells +# the reader which header file to include in order to use a class. +# If left blank only the name of the header file containing the class +# definition is used. Otherwise one should specify the include paths that # are normally passed to the compiler using the -I flag. -STRIP_FROM_INC_PATH = +STRIP_FROM_INC_PATH = -# If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter -# (but less readable) file names. This can be useful is your file systems +# If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter +# (but less readable) file names. This can be useful if your file system # doesn't support long names like on DOS, Mac, or CD-ROM. SHORT_NAMES = NO -# If the JAVADOC_AUTOBRIEF tag is set to YES then Doxygen -# will interpret the first line (until the first dot) of a JavaDoc-style -# comment as the brief description. If set to NO, the JavaDoc -# comments will behave just like the Qt-style comments (thus requiring an -# explicit @brief command for a brief description. +# If the JAVADOC_AUTOBRIEF tag is set to YES then Doxygen +# will interpret the first line (until the first dot) of a JavaDoc-style +# comment as the brief description. If set to NO, the JavaDoc +# comments will behave just like regular Qt-style comments +# (thus requiring an explicit @brief command for a brief description.) JAVADOC_AUTOBRIEF = NO -# The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make Doxygen -# treat a multi-line C++ special comment block (i.e. a block of //! or /// -# comments) as a brief description. This used to be the default behaviour. -# The new default is to treat a multi-line C++ comment block as a detailed +# If the QT_AUTOBRIEF tag is set to YES then Doxygen will +# interpret the first line (until the first dot) of a Qt-style +# comment as the brief description. If set to NO, the comments +# will behave just like regular Qt-style comments (thus requiring +# an explicit \brief command for a brief description.) + +QT_AUTOBRIEF = NO + +# The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make Doxygen +# treat a multi-line C++ special comment block (i.e. a block of //! or /// +# comments) as a brief description. This used to be the default behaviour. +# The new default is to treat a multi-line C++ comment block as a detailed # description. Set this tag to YES if you prefer the old behaviour instead. MULTILINE_CPP_IS_BRIEF = NO -# If the DETAILS_AT_TOP tag is set to YES then Doxygen -# will output the detailed description near the top, like JavaDoc. -# If set to NO, the detailed description appears after the member -# documentation. - -DETAILS_AT_TOP = NO - -# If the INHERIT_DOCS tag is set to YES (the default) then an undocumented -# member inherits the documentation from any documented member that it +# If the INHERIT_DOCS tag is set to YES (the default) then an undocumented +# member inherits the documentation from any documented member that it # re-implements. INHERIT_DOCS = YES -# If the SEPARATE_MEMBER_PAGES tag is set to YES, then doxygen will produce -# a new page for each member. If set to NO, the documentation of a member will +# If the SEPARATE_MEMBER_PAGES tag is set to YES, then doxygen will produce +# a new page for each member. If set to NO, the documentation of a member will # be part of the file/class/namespace that contains it. SEPARATE_MEMBER_PAGES = NO -# The TAB_SIZE tag can be used to set the number of spaces in a tab. +# The TAB_SIZE tag can be used to set the number of spaces in a tab. # Doxygen uses this value to replace tabs by spaces in code fragments. TAB_SIZE = 8 -# This tag can be used to specify a number of aliases that acts -# as commands in the documentation. An alias has the form "name=value". -# For example adding "sideeffect=\par Side Effects:\n" will allow you to -# put the command \sideeffect (or @sideeffect) in the documentation, which -# will result in a user-defined paragraph with heading "Side Effects:". +# This tag can be used to specify a number of aliases that acts +# as commands in the documentation. An alias has the form "name=value". +# For example adding "sideeffect=\par Side Effects:\n" will allow you to +# put the command \sideeffect (or @sideeffect) in the documentation, which +# will result in a user-defined paragraph with heading "Side Effects:". # You can put \n's in the value part of an alias to insert newlines. -ALIASES = +ALIASES = -# Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C -# sources only. Doxygen will then generate output that is more tailored for C. -# For instance, some of the names that are used will be different. The list +# Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C +# sources only. Doxygen will then generate output that is more tailored for C. +# For instance, some of the names that are used will be different. The list # of all members will be omitted, etc. OPTIMIZE_OUTPUT_FOR_C = YES -# Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java -# sources only. Doxygen will then generate output that is more tailored for Java. -# For instance, namespaces will be presented as packages, qualified scopes -# will look different, etc. +# Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java +# sources only. Doxygen will then generate output that is more tailored for +# Java. For instance, namespaces will be presented as packages, qualified +# scopes will look different, etc. OPTIMIZE_OUTPUT_JAVA = NO -# If you use STL classes (i.e. std::string, std::vector, etc.) but do not want to -# include (a tag file for) the STL sources as input, then you should -# set this tag to YES in order to let doxygen match functions declarations and -# definitions whose arguments contain STL classes (e.g. func(std::string); v.s. -# func(std::string) {}). This also make the inheritance and collaboration +# Set the OPTIMIZE_FOR_FORTRAN tag to YES if your project consists of Fortran +# sources only. Doxygen will then generate output that is more tailored for +# Fortran. + +OPTIMIZE_FOR_FORTRAN = NO + +# Set the OPTIMIZE_OUTPUT_VHDL tag to YES if your project consists of VHDL +# sources. Doxygen will then generate output that is tailored for +# VHDL. + +OPTIMIZE_OUTPUT_VHDL = NO + +# Doxygen selects the parser to use depending on the extension of the files it +# parses. With this tag you can assign which parser to use for a given extension. +# Doxygen has a built-in mapping, but you can override or extend it using this +# tag. The format is ext=language, where ext is a file extension, and language +# is one of the parsers supported by doxygen: IDL, Java, Javascript, CSharp, C, +# C++, D, PHP, Objective-C, Python, Fortran, VHDL, C, C++. For instance to make +# doxygen treat .inc files as Fortran files (default is PHP), and .f files as C +# (default is Fortran), use: inc=Fortran f=C. Note that for custom extensions +# you also need to set FILE_PATTERNS otherwise the files are not read by doxygen. + +EXTENSION_MAPPING = + +# If you use STL classes (i.e. std::string, std::vector, etc.) but do not want +# to include (a tag file for) the STL sources as input, then you should +# set this tag to YES in order to let doxygen match functions declarations and +# definitions whose arguments contain STL classes (e.g. func(std::string); v.s. +# func(std::string) {}). This also makes the inheritance and collaboration # diagrams that involve STL classes more complete and accurate. BUILTIN_STL_SUPPORT = NO -# If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC -# tag is set to YES, then doxygen will reuse the documentation of the first -# member in the group (if any) for the other members of the group. By default +# If you use Microsoft's C++/CLI language, you should set this option to YES to +# enable parsing support. + +CPP_CLI_SUPPORT = NO + +# Set the SIP_SUPPORT tag to YES if your project consists of sip sources only. +# Doxygen will parse them like normal C++ but will assume all classes use public +# instead of private inheritance when no explicit protection keyword is present. + +SIP_SUPPORT = NO + +# For Microsoft's IDL there are propget and propput attributes to indicate getter +# and setter methods for a property. Setting this option to YES (the default) +# will make doxygen replace the get and set methods by a property in the +# documentation. This will only work if the methods are indeed getting or +# setting a simple type. If this is not the case, or you want to show the +# methods anyway, you should set this option to NO. + +IDL_PROPERTY_SUPPORT = YES + +# If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC +# tag is set to YES, then doxygen will reuse the documentation of the first +# member in the group (if any) for the other members of the group. By default # all members of a group must be documented explicitly. DISTRIBUTE_GROUP_DOC = NO -# Set the SUBGROUPING tag to YES (the default) to allow class member groups of -# the same type (for instance a group of public functions) to be put as a -# subgroup of that type (e.g. under the Public Functions section). Set it to -# NO to prevent subgrouping. Alternatively, this can be done per class using +# Set the SUBGROUPING tag to YES (the default) to allow class member groups of +# the same type (for instance a group of public functions) to be put as a +# subgroup of that type (e.g. under the Public Functions section). Set it to +# NO to prevent subgrouping. Alternatively, this can be done per class using # the \nosubgrouping command. SUBGROUPING = YES +# When the INLINE_GROUPED_CLASSES tag is set to YES, classes, structs and +# unions are shown inside the group in which they are included (e.g. using +# @ingroup) instead of on a separate page (for HTML and Man pages) or +# section (for LaTeX and RTF). + +INLINE_GROUPED_CLASSES = NO + +# When the INLINE_SIMPLE_STRUCTS tag is set to YES, structs, classes, and +# unions with only public data fields will be shown inline in the documentation +# of the scope in which they are defined (i.e. file, namespace, or group +# documentation), provided this scope is documented. If set to NO (the default), +# structs, classes, and unions are shown on a separate page (for HTML and Man +# pages) or section (for LaTeX and RTF). + +INLINE_SIMPLE_STRUCTS = NO + +# When TYPEDEF_HIDES_STRUCT is enabled, a typedef of a struct, union, or enum +# is documented as struct, union, or enum with the name of the typedef. So +# typedef struct TypeS {} TypeT, will appear in the documentation as a struct +# with name TypeT. When disabled the typedef will appear as a member of a file, +# namespace, or class. And the struct will be named TypeS. This can typically +# be useful for C code in case the coding convention dictates that all compound +# types are typedef'ed and only the typedef is referenced, never the tag name. + +TYPEDEF_HIDES_STRUCT = NO + +# The SYMBOL_CACHE_SIZE determines the size of the internal cache use to +# determine which symbols to keep in memory and which to flush to disk. +# When the cache is full, less often used symbols will be written to disk. +# For small to medium size projects (<1000 input files) the default value is +# probably good enough. For larger projects a too small cache size can cause +# doxygen to be busy swapping symbols to and from disk most of the time +# causing a significant performance penalty. +# If the system has enough physical memory increasing the cache will improve the +# performance by keeping more symbols in memory. Note that the value works on +# a logarithmic scale so increasing the size by one will roughly double the +# memory usage. The cache size is given by this formula: +# 2^(16+SYMBOL_CACHE_SIZE). The valid range is 0..9, the default is 0, +# corresponding to a cache size of 2^16 = 65536 symbols + +SYMBOL_CACHE_SIZE = 0 + #--------------------------------------------------------------------------- # Build related configuration options #--------------------------------------------------------------------------- -# If the EXTRACT_ALL tag is set to YES doxygen will assume all entities in -# documentation are documented, even if no documentation was available. -# Private class members and static file members will be hidden unless +# If the EXTRACT_ALL tag is set to YES doxygen will assume all entities in +# documentation are documented, even if no documentation was available. +# Private class members and static file members will be hidden unless # the EXTRACT_PRIVATE and EXTRACT_STATIC tags are set to YES EXTRACT_ALL = NO -# If the EXTRACT_PRIVATE tag is set to YES all private members of a class +# If the EXTRACT_PRIVATE tag is set to YES all private members of a class # will be included in the documentation. EXTRACT_PRIVATE = NO -# If the EXTRACT_STATIC tag is set to YES all static members of a file +# If the EXTRACT_STATIC tag is set to YES all static members of a file # will be included in the documentation. EXTRACT_STATIC = NO -# If the EXTRACT_LOCAL_CLASSES tag is set to YES classes (and structs) -# defined locally in source files will be included in the documentation. +# If the EXTRACT_LOCAL_CLASSES tag is set to YES classes (and structs) +# defined locally in source files will be included in the documentation. # If set to NO only classes defined in header files are included. EXTRACT_LOCAL_CLASSES = YES -# This flag is only useful for Objective-C code. When set to YES local -# methods, which are defined in the implementation section but not in -# the interface are included in the documentation. +# This flag is only useful for Objective-C code. When set to YES local +# methods, which are defined in the implementation section but not in +# the interface are included in the documentation. # If set to NO (the default) only methods in the interface are included. EXTRACT_LOCAL_METHODS = NO -# If the HIDE_UNDOC_MEMBERS tag is set to YES, Doxygen will hide all -# undocumented members of documented classes, files or namespaces. -# If set to NO (the default) these members will be included in the -# various overviews, but no documentation section is generated. +# If this flag is set to YES, the members of anonymous namespaces will be +# extracted and appear in the documentation as a namespace called +# 'anonymous_namespace{file}', where file will be replaced with the base +# name of the file that contains the anonymous namespace. By default +# anonymous namespaces are hidden. + +EXTRACT_ANON_NSPACES = NO + +# If the HIDE_UNDOC_MEMBERS tag is set to YES, Doxygen will hide all +# undocumented members of documented classes, files or namespaces. +# If set to NO (the default) these members will be included in the +# various overviews, but no documentation section is generated. # This option has no effect if EXTRACT_ALL is enabled. HIDE_UNDOC_MEMBERS = NO -# If the HIDE_UNDOC_CLASSES tag is set to YES, Doxygen will hide all -# undocumented classes that are normally visible in the class hierarchy. -# If set to NO (the default) these classes will be included in the various +# If the HIDE_UNDOC_CLASSES tag is set to YES, Doxygen will hide all +# undocumented classes that are normally visible in the class hierarchy. +# If set to NO (the default) these classes will be included in the various # overviews. This option has no effect if EXTRACT_ALL is enabled. HIDE_UNDOC_CLASSES = NO -# If the HIDE_FRIEND_COMPOUNDS tag is set to YES, Doxygen will hide all -# friend (class|struct|union) declarations. -# If set to NO (the default) these declarations will be included in the +# If the HIDE_FRIEND_COMPOUNDS tag is set to YES, Doxygen will hide all +# friend (class|struct|union) declarations. +# If set to NO (the default) these declarations will be included in the # documentation. HIDE_FRIEND_COMPOUNDS = NO -# If the HIDE_IN_BODY_DOCS tag is set to YES, Doxygen will hide any -# documentation blocks found inside the body of a function. -# If set to NO (the default) these blocks will be appended to the +# If the HIDE_IN_BODY_DOCS tag is set to YES, Doxygen will hide any +# documentation blocks found inside the body of a function. +# If set to NO (the default) these blocks will be appended to the # function's detailed documentation block. HIDE_IN_BODY_DOCS = NO -# The INTERNAL_DOCS tag determines if documentation -# that is typed after a \internal command is included. If the tag is set -# to NO (the default) then the documentation will be excluded. +# The INTERNAL_DOCS tag determines if documentation +# that is typed after a \internal command is included. If the tag is set +# to NO (the default) then the documentation will be excluded. # Set it to YES to include the internal documentation. INTERNAL_DOCS = NO -# If the CASE_SENSE_NAMES tag is set to NO then Doxygen will only generate -# file names in lower-case letters. If set to YES upper-case letters are also -# allowed. This is useful if you have classes or files whose names only differ -# in case and if your file system supports case sensitive file names. Windows +# If the CASE_SENSE_NAMES tag is set to NO then Doxygen will only generate +# file names in lower-case letters. If set to YES upper-case letters are also +# allowed. This is useful if you have classes or files whose names only differ +# in case and if your file system supports case sensitive file names. Windows # and Mac users are advised to set this option to NO. CASE_SENSE_NAMES = YES -# If the HIDE_SCOPE_NAMES tag is set to NO (the default) then Doxygen -# will show members with their full class and namespace scopes in the +# If the HIDE_SCOPE_NAMES tag is set to NO (the default) then Doxygen +# will show members with their full class and namespace scopes in the # documentation. If set to YES the scope will be hidden. HIDE_SCOPE_NAMES = NO -# If the SHOW_INCLUDE_FILES tag is set to YES (the default) then Doxygen -# will put a list of the files that are included by a file in the documentation +# If the SHOW_INCLUDE_FILES tag is set to YES (the default) then Doxygen +# will put a list of the files that are included by a file in the documentation # of that file. SHOW_INCLUDE_FILES = YES -# If the INLINE_INFO tag is set to YES (the default) then a tag [inline] +# If the FORCE_LOCAL_INCLUDES tag is set to YES then Doxygen +# will list include files with double quotes in the documentation +# rather than with sharp brackets. + +FORCE_LOCAL_INCLUDES = NO + +# If the INLINE_INFO tag is set to YES (the default) then a tag [inline] # is inserted in the documentation for inline members. INLINE_INFO = YES -# If the SORT_MEMBER_DOCS tag is set to YES (the default) then doxygen -# will sort the (detailed) documentation of file and class members -# alphabetically by member name. If set to NO the members will appear in +# If the SORT_MEMBER_DOCS tag is set to YES (the default) then doxygen +# will sort the (detailed) documentation of file and class members +# alphabetically by member name. If set to NO the members will appear in # declaration order. SORT_MEMBER_DOCS = NO -# If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the -# brief documentation of file, namespace and class members alphabetically -# by member name. If set to NO (the default) the members will appear in +# If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the +# brief documentation of file, namespace and class members alphabetically +# by member name. If set to NO (the default) the members will appear in # declaration order. SORT_BRIEF_DOCS = NO -# If the SORT_BY_SCOPE_NAME tag is set to YES, the class list will be -# sorted by fully-qualified names, including namespaces. If set to -# NO (the default), the class list will be sorted only by class name, -# not including the namespace part. +# If the SORT_MEMBERS_CTORS_1ST tag is set to YES then doxygen +# will sort the (brief and detailed) documentation of class members so that +# constructors and destructors are listed first. If set to NO (the default) +# the constructors will appear in the respective orders defined by +# SORT_MEMBER_DOCS and SORT_BRIEF_DOCS. +# This tag will be ignored for brief docs if SORT_BRIEF_DOCS is set to NO +# and ignored for detailed docs if SORT_MEMBER_DOCS is set to NO. + +SORT_MEMBERS_CTORS_1ST = NO + +# If the SORT_GROUP_NAMES tag is set to YES then doxygen will sort the +# hierarchy of group names into alphabetical order. If set to NO (the default) +# the group names will appear in their defined order. + +SORT_GROUP_NAMES = NO + +# If the SORT_BY_SCOPE_NAME tag is set to YES, the class list will be +# sorted by fully-qualified names, including namespaces. If set to +# NO (the default), the class list will be sorted only by class name, +# not including the namespace part. # Note: This option is not very useful if HIDE_SCOPE_NAMES is set to YES. -# Note: This option applies only to the class list, not to the +# Note: This option applies only to the class list, not to the # alphabetical list. SORT_BY_SCOPE_NAME = NO -# The GENERATE_TODOLIST tag can be used to enable (YES) or -# disable (NO) the todo list. This list is created by putting \todo +# If the STRICT_PROTO_MATCHING option is enabled and doxygen fails to +# do proper type resolution of all parameters of a function it will reject a +# match between the prototype and the implementation of a member function even +# if there is only one candidate or it is obvious which candidate to choose +# by doing a simple string match. By disabling STRICT_PROTO_MATCHING doxygen +# will still accept a match between prototype and implementation in such cases. + +STRICT_PROTO_MATCHING = NO + +# The GENERATE_TODOLIST tag can be used to enable (YES) or +# disable (NO) the todo list. This list is created by putting \todo # commands in the documentation. GENERATE_TODOLIST = YES -# The GENERATE_TESTLIST tag can be used to enable (YES) or -# disable (NO) the test list. This list is created by putting \test +# The GENERATE_TESTLIST tag can be used to enable (YES) or +# disable (NO) the test list. This list is created by putting \test # commands in the documentation. GENERATE_TESTLIST = YES -# The GENERATE_BUGLIST tag can be used to enable (YES) or -# disable (NO) the bug list. This list is created by putting \bug +# The GENERATE_BUGLIST tag can be used to enable (YES) or +# disable (NO) the bug list. This list is created by putting \bug # commands in the documentation. GENERATE_BUGLIST = YES -# The GENERATE_DEPRECATEDLIST tag can be used to enable (YES) or -# disable (NO) the deprecated list. This list is created by putting +# The GENERATE_DEPRECATEDLIST tag can be used to enable (YES) or +# disable (NO) the deprecated list. This list is created by putting # \deprecated commands in the documentation. GENERATE_DEPRECATEDLIST= YES -# The ENABLED_SECTIONS tag can be used to enable conditional +# The ENABLED_SECTIONS tag can be used to enable conditional # documentation sections, marked by \if sectionname ... \endif. -ENABLED_SECTIONS = +ENABLED_SECTIONS = -# The MAX_INITIALIZER_LINES tag determines the maximum number of lines -# the initial value of a variable or define consists of for it to appear in -# the documentation. If the initializer consists of more lines than specified -# here it will be hidden. Use a value of 0 to hide initializers completely. -# The appearance of the initializer of individual variables and defines in the -# documentation can be controlled using \showinitializer or \hideinitializer +# The MAX_INITIALIZER_LINES tag determines the maximum number of lines +# the initial value of a variable or macro consists of for it to appear in +# the documentation. If the initializer consists of more lines than specified +# here it will be hidden. Use a value of 0 to hide initializers completely. +# The appearance of the initializer of individual variables and macros in the +# documentation can be controlled using \showinitializer or \hideinitializer # command in the documentation regardless of this setting. MAX_INITIALIZER_LINES = 30 -# Set the SHOW_USED_FILES tag to NO to disable the list of files generated -# at the bottom of the documentation of classes and structs. If set to YES the +# Set the SHOW_USED_FILES tag to NO to disable the list of files generated +# at the bottom of the documentation of classes and structs. If set to YES the # list will mention the files that were used to generate the documentation. SHOW_USED_FILES = YES -# If the sources in your project are distributed over multiple directories -# then setting the SHOW_DIRECTORIES tag to YES will show the directory hierarchy +# If the sources in your project are distributed over multiple directories +# then setting the SHOW_DIRECTORIES tag to YES will show the directory hierarchy # in the documentation. The default is NO. SHOW_DIRECTORIES = NO -# The FILE_VERSION_FILTER tag can be used to specify a program or script that -# doxygen should invoke to get the current version for each file (typically from the -# version control system). Doxygen will invoke the program by executing (via -# popen()) the command , where is the value of -# the FILE_VERSION_FILTER tag, and is the name of an input file -# provided by doxygen. Whatever the program writes to standard output +# Set the SHOW_FILES tag to NO to disable the generation of the Files page. +# This will remove the Files entry from the Quick Index and from the +# Folder Tree View (if specified). The default is YES. + +SHOW_FILES = YES + +# Set the SHOW_NAMESPACES tag to NO to disable the generation of the +# Namespaces page. +# This will remove the Namespaces entry from the Quick Index +# and from the Folder Tree View (if specified). The default is YES. + +SHOW_NAMESPACES = YES + +# The FILE_VERSION_FILTER tag can be used to specify a program or script that +# doxygen should invoke to get the current version for each file (typically from +# the version control system). Doxygen will invoke the program by executing (via +# popen()) the command , where is the value of +# the FILE_VERSION_FILTER tag, and is the name of an input file +# provided by doxygen. Whatever the program writes to standard output # is used as the file version. See the manual for examples. -FILE_VERSION_FILTER = +FILE_VERSION_FILTER = + +# The LAYOUT_FILE tag can be used to specify a layout file which will be parsed +# by doxygen. The layout file controls the global structure of the generated +# output files in an output format independent way. The create the layout file +# that represents doxygen's defaults, run doxygen with the -l option. +# You can optionally specify a file name after the option, if omitted +# DoxygenLayout.xml will be used as the name of the layout file. + +LAYOUT_FILE = + +# The CITE_BIB_FILES tag can be used to specify one or more bib files +# containing the references data. This must be a list of .bib files. The +# .bib extension is automatically appended if omitted. Using this command +# requires the bibtex tool to be installed. See also +# http://en.wikipedia.org/wiki/BibTeX for more info. For LaTeX the style +# of the bibliography can be controlled using LATEX_BIB_STYLE. + +CITE_BIB_FILES = #--------------------------------------------------------------------------- # configuration options related to warning and progress messages #--------------------------------------------------------------------------- -# The QUIET tag can be used to turn on/off the messages that are generated +# The QUIET tag can be used to turn on/off the messages that are generated # by doxygen. Possible values are YES and NO. If left blank NO is used. QUIET = NO -# The WARNINGS tag can be used to turn on/off the warning messages that are -# generated by doxygen. Possible values are YES and NO. If left blank +# The WARNINGS tag can be used to turn on/off the warning messages that are +# generated by doxygen. Possible values are YES and NO. If left blank # NO is used. WARNINGS = YES -# If WARN_IF_UNDOCUMENTED is set to YES, then doxygen will generate warnings -# for undocumented members. If EXTRACT_ALL is set to YES then this flag will +# If WARN_IF_UNDOCUMENTED is set to YES, then doxygen will generate warnings +# for undocumented members. If EXTRACT_ALL is set to YES then this flag will # automatically be disabled. WARN_IF_UNDOCUMENTED = NO -# If WARN_IF_DOC_ERROR is set to YES, doxygen will generate warnings for -# potential errors in the documentation, such as not documenting some -# parameters in a documented function, or documenting parameters that +# If WARN_IF_DOC_ERROR is set to YES, doxygen will generate warnings for +# potential errors in the documentation, such as not documenting some +# parameters in a documented function, or documenting parameters that # don't exist or using markup commands wrongly. WARN_IF_DOC_ERROR = YES -# This WARN_NO_PARAMDOC option can be abled to get warnings for -# functions that are documented, but have no documentation for their parameters -# or return value. If set to NO (the default) doxygen will only warn about -# wrong or incomplete parameter documentation, but not about the absence of +# The WARN_NO_PARAMDOC option can be enabled to get warnings for +# functions that are documented, but have no documentation for their parameters +# or return value. If set to NO (the default) doxygen will only warn about +# wrong or incomplete parameter documentation, but not about the absence of # documentation. WARN_NO_PARAMDOC = NO -# The WARN_FORMAT tag determines the format of the warning messages that -# doxygen can produce. The string should contain the $file, $line, and $text -# tags, which will be replaced by the file and line number from which the -# warning originated and the warning text. Optionally the format may contain -# $version, which will be replaced by the version of the file (if it could +# The WARN_FORMAT tag determines the format of the warning messages that +# doxygen can produce. The string should contain the $file, $line, and $text +# tags, which will be replaced by the file and line number from which the +# warning originated and the warning text. Optionally the format may contain +# $version, which will be replaced by the version of the file (if it could # be obtained via FILE_VERSION_FILTER) WARN_FORMAT = "$file:$line: $text" -# The WARN_LOGFILE tag can be used to specify a file to which warning -# and error messages should be written. If left blank the output is written +# The WARN_LOGFILE tag can be used to specify a file to which warning +# and error messages should be written. If left blank the output is written # to stderr. -WARN_LOGFILE = +WARN_LOGFILE = #--------------------------------------------------------------------------- # configuration options related to the input files #--------------------------------------------------------------------------- -# The INPUT tag can be used to specify the files and/or directories that contain -# documented source files. You may enter file names like "myfile.cpp" or -# directories like "/usr/src/myproject". Separate the files or directories +# The INPUT tag can be used to specify the files and/or directories that contain +# documented source files. You may enter file names like "myfile.cpp" or +# directories like "/usr/src/myproject". Separate the files or directories # with spaces. INPUT = include -# If the value of the INPUT tag contains directories, you can use the -# FILE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp -# and *.h) to filter out the source-files in the directories. If left -# blank the following patterns are tested: -# *.c *.cc *.cxx *.cpp *.c++ *.java *.ii *.ixx *.ipp *.i++ *.inl *.h *.hh *.hxx -# *.hpp *.h++ *.idl *.odl *.cs *.php *.php3 *.inc *.m *.mm *.py +# This tag can be used to specify the character encoding of the source files +# that doxygen parses. Internally doxygen uses the UTF-8 encoding, which is +# also the default input encoding. Doxygen uses libiconv (or the iconv built +# into libc) for the transcoding. See http://www.gnu.org/software/libiconv for +# the list of possible encodings. -FILE_PATTERNS = +INPUT_ENCODING = UTF-8 -# The RECURSIVE tag can be used to turn specify whether or not subdirectories -# should be searched for input files as well. Possible values are YES and NO. +# If the value of the INPUT tag contains directories, you can use the +# FILE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp +# and *.h) to filter out the source-files in the directories. If left +# blank the following patterns are tested: +# *.c *.cc *.cxx *.cpp *.c++ *.d *.java *.ii *.ixx *.ipp *.i++ *.inl *.h *.hh +# *.hxx *.hpp *.h++ *.idl *.odl *.cs *.php *.php3 *.inc *.m *.mm *.dox *.py +# *.f90 *.f *.for *.vhd *.vhdl + +FILE_PATTERNS = + +# The RECURSIVE tag can be used to turn specify whether or not subdirectories +# should be searched for input files as well. Possible values are YES and NO. # If left blank NO is used. RECURSIVE = NO -# The EXCLUDE tag can be used to specify files and/or directories that should -# excluded from the INPUT source files. This way you can easily exclude a +# The EXCLUDE tag can be used to specify files and/or directories that should +# excluded from the INPUT source files. This way you can easily exclude a # subdirectory from a directory tree whose root is specified with the INPUT tag. +# Note that relative paths are relative to directory from which doxygen is run. EXCLUDE = include\platform.h -# The EXCLUDE_SYMLINKS tag can be used select whether or not files or -# directories that are symbolic links (a Unix filesystem feature) are excluded +# The EXCLUDE_SYMLINKS tag can be used select whether or not files or +# directories that are symbolic links (a Unix file system feature) are excluded # from the input. EXCLUDE_SYMLINKS = NO -# If the value of the INPUT tag contains directories, you can use the -# EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude -# certain files from those directories. Note that the wildcards are matched -# against the file with absolute path, so to exclude all test directories +# If the value of the INPUT tag contains directories, you can use the +# EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude +# certain files from those directories. Note that the wildcards are matched +# against the file with absolute path, so to exclude all test directories # for example use the pattern */test/* -EXCLUDE_PATTERNS = +EXCLUDE_PATTERNS = -# The EXAMPLE_PATH tag can be used to specify one or more files or -# directories that contain example code fragments that are included (see +# The EXCLUDE_SYMBOLS tag can be used to specify one or more symbol names +# (namespaces, classes, functions, etc.) that should be excluded from the +# output. The symbol name can be a fully qualified name, a word, or if the +# wildcard * is used, a substring. Examples: ANamespace, AClass, +# AClass::ANamespace, ANamespace::*Test + +EXCLUDE_SYMBOLS = + +# The EXAMPLE_PATH tag can be used to specify one or more files or +# directories that contain example code fragments that are included (see # the \include command). -EXAMPLE_PATH = +EXAMPLE_PATH = -# If the value of the EXAMPLE_PATH tag contains directories, you can use the -# EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp -# and *.h) to filter out the source-files in the directories. If left +# If the value of the EXAMPLE_PATH tag contains directories, you can use the +# EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp +# and *.h) to filter out the source-files in the directories. If left # blank all files are included. -EXAMPLE_PATTERNS = +EXAMPLE_PATTERNS = -# If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be -# searched for input files to be used with the \include or \dontinclude -# commands irrespective of the value of the RECURSIVE tag. +# If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be +# searched for input files to be used with the \include or \dontinclude +# commands irrespective of the value of the RECURSIVE tag. # Possible values are YES and NO. If left blank NO is used. EXAMPLE_RECURSIVE = NO -# The IMAGE_PATH tag can be used to specify one or more files or -# directories that contain image that are included in the documentation (see +# The IMAGE_PATH tag can be used to specify one or more files or +# directories that contain image that are included in the documentation (see # the \image command). -IMAGE_PATH = +IMAGE_PATH = -# The INPUT_FILTER tag can be used to specify a program that doxygen should -# invoke to filter for each input file. Doxygen will invoke the filter program -# by executing (via popen()) the command , where -# is the value of the INPUT_FILTER tag, and is the name of an -# input file. Doxygen will then use the output that the filter program writes -# to standard output. If FILTER_PATTERNS is specified, this tag will be +# The INPUT_FILTER tag can be used to specify a program that doxygen should +# invoke to filter for each input file. Doxygen will invoke the filter program +# by executing (via popen()) the command , where +# is the value of the INPUT_FILTER tag, and is the name of an +# input file. Doxygen will then use the output that the filter program writes +# to standard output. +# If FILTER_PATTERNS is specified, this tag will be # ignored. -INPUT_FILTER = +INPUT_FILTER = -# The FILTER_PATTERNS tag can be used to specify filters on a per file pattern -# basis. Doxygen will compare the file name with each pattern and apply the -# filter if there is a match. The filters are a list of the form: -# pattern=filter (like *.cpp=my_cpp_filter). See INPUT_FILTER for further -# info on how filters are used. If FILTER_PATTERNS is empty, INPUT_FILTER -# is applied to all files. +# The FILTER_PATTERNS tag can be used to specify filters on a per file pattern +# basis. +# Doxygen will compare the file name with each pattern and apply the +# filter if there is a match. +# The filters are a list of the form: +# pattern=filter (like *.cpp=my_cpp_filter). See INPUT_FILTER for further +# info on how filters are used. If FILTER_PATTERNS is empty or if +# non of the patterns match the file name, INPUT_FILTER is applied. -FILTER_PATTERNS = +FILTER_PATTERNS = -# If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using -# INPUT_FILTER) will be used to filter the input files when producing source +# If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using +# INPUT_FILTER) will be used to filter the input files when producing source # files to browse (i.e. when SOURCE_BROWSER is set to YES). FILTER_SOURCE_FILES = NO +# The FILTER_SOURCE_PATTERNS tag can be used to specify source filters per file +# pattern. A pattern will override the setting for FILTER_PATTERN (if any) +# and it is also possible to disable source filtering for a specific pattern +# using *.ext= (so without naming a filter). This option only has effect when +# FILTER_SOURCE_FILES is enabled. + +FILTER_SOURCE_PATTERNS = + #--------------------------------------------------------------------------- # configuration options related to source browsing #--------------------------------------------------------------------------- -# If the SOURCE_BROWSER tag is set to YES then a list of source files will -# be generated. Documented entities will be cross-referenced with these sources. -# Note: To get rid of all source code in the generated output, make sure also +# If the SOURCE_BROWSER tag is set to YES then a list of source files will +# be generated. Documented entities will be cross-referenced with these sources. +# Note: To get rid of all source code in the generated output, make sure also # VERBATIM_HEADERS is set to NO. SOURCE_BROWSER = NO -# Setting the INLINE_SOURCES tag to YES will include the body +# Setting the INLINE_SOURCES tag to YES will include the body # of functions and classes directly in the documentation. INLINE_SOURCES = NO -# Setting the STRIP_CODE_COMMENTS tag to YES (the default) will instruct -# doxygen to hide any special comment blocks from generated source code +# Setting the STRIP_CODE_COMMENTS tag to YES (the default) will instruct +# doxygen to hide any special comment blocks from generated source code # fragments. Normal C and C++ comments will always remain visible. STRIP_CODE_COMMENTS = NO -# If the REFERENCED_BY_RELATION tag is set to YES (the default) -# then for each documented function all documented +# If the REFERENCED_BY_RELATION tag is set to YES +# then for each documented function all documented # functions referencing it will be listed. REFERENCED_BY_RELATION = YES -# If the REFERENCES_RELATION tag is set to YES (the default) -# then for each documented function all documented entities +# If the REFERENCES_RELATION tag is set to YES +# then for each documented function all documented entities # called/used by that function will be listed. REFERENCES_RELATION = YES @@ -584,20 +783,21 @@ REFERENCES_RELATION = YES # If the REFERENCES_LINK_SOURCE tag is set to YES (the default) # and SOURCE_BROWSER tag is set to YES, then the hyperlinks from # functions in REFERENCES_RELATION and REFERENCED_BY_RELATION lists will -# link to the source code. Otherwise they will link to the documentstion. +# link to the source code. +# Otherwise they will link to the documentation. REFERENCES_LINK_SOURCE = YES -# If the USE_HTAGS tag is set to YES then the references to source code -# will point to the HTML generated by the htags(1) tool instead of doxygen -# built-in source browser. The htags tool is part of GNU's global source -# tagging system (see http://www.gnu.org/software/global/global.html). You +# If the USE_HTAGS tag is set to YES then the references to source code +# will point to the HTML generated by the htags(1) tool instead of doxygen +# built-in source browser. The htags tool is part of GNU's global source +# tagging system (see http://www.gnu.org/software/global/global.html). You # will need version 4.8.6 or higher. USE_HTAGS = NO -# If the VERBATIM_HEADERS tag is set to YES (the default) then Doxygen -# will generate a verbatim copy of the header file for each class for +# If the VERBATIM_HEADERS tag is set to YES (the default) then Doxygen +# will generate a verbatim copy of the header file for each class for # which an include is specified. Set to NO to disable this. VERBATIM_HEADERS = YES @@ -606,279 +806,544 @@ VERBATIM_HEADERS = YES # configuration options related to the alphabetical class index #--------------------------------------------------------------------------- -# If the ALPHABETICAL_INDEX tag is set to YES, an alphabetical index -# of all compounds will be generated. Enable this if the project +# If the ALPHABETICAL_INDEX tag is set to YES, an alphabetical index +# of all compounds will be generated. Enable this if the project # contains a lot of classes, structs, unions or interfaces. ALPHABETICAL_INDEX = NO -# If the alphabetical index is enabled (see ALPHABETICAL_INDEX) then -# the COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns +# If the alphabetical index is enabled (see ALPHABETICAL_INDEX) then +# the COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns # in which this list will be split (can be a number in the range [1..20]) COLS_IN_ALPHA_INDEX = 5 -# In case all classes in a project start with a common prefix, all -# classes will be put under the same header in the alphabetical index. -# The IGNORE_PREFIX tag can be used to specify one or more prefixes that +# In case all classes in a project start with a common prefix, all +# classes will be put under the same header in the alphabetical index. +# The IGNORE_PREFIX tag can be used to specify one or more prefixes that # should be ignored while generating the index headers. -IGNORE_PREFIX = +IGNORE_PREFIX = #--------------------------------------------------------------------------- # configuration options related to the HTML output #--------------------------------------------------------------------------- -# If the GENERATE_HTML tag is set to YES (the default) Doxygen will +# If the GENERATE_HTML tag is set to YES (the default) Doxygen will # generate HTML output. GENERATE_HTML = YES -# The HTML_OUTPUT tag is used to specify where the HTML docs will be put. -# If a relative path is entered the value of OUTPUT_DIRECTORY will be +# The HTML_OUTPUT tag is used to specify where the HTML docs will be put. +# If a relative path is entered the value of OUTPUT_DIRECTORY will be # put in front of it. If left blank `html' will be used as the default path. HTML_OUTPUT = api -# The HTML_FILE_EXTENSION tag can be used to specify the file extension for -# each generated HTML page (for example: .htm,.php,.asp). If it is left blank +# The HTML_FILE_EXTENSION tag can be used to specify the file extension for +# each generated HTML page (for example: .htm,.php,.asp). If it is left blank # doxygen will generate files with .html extension. HTML_FILE_EXTENSION = .html -# The HTML_HEADER tag can be used to specify a personal HTML header for -# each generated HTML page. If it is left blank doxygen will generate a -# standard header. +# The HTML_HEADER tag can be used to specify a personal HTML header for +# each generated HTML page. If it is left blank doxygen will generate a +# standard header. Note that when using a custom header you are responsible +# for the proper inclusion of any scripts and style sheets that doxygen +# needs, which is dependent on the configuration options used. +# It is adviced to generate a default header using "doxygen -w html +# header.html footer.html stylesheet.css YourConfigFile" and then modify +# that header. Note that the header is subject to change so you typically +# have to redo this when upgrading to a newer version of doxygen or when +# changing the value of configuration settings such as GENERATE_TREEVIEW! -HTML_HEADER = +HTML_HEADER = -# The HTML_FOOTER tag can be used to specify a personal HTML footer for -# each generated HTML page. If it is left blank doxygen will generate a +# The HTML_FOOTER tag can be used to specify a personal HTML footer for +# each generated HTML page. If it is left blank doxygen will generate a # standard footer. -HTML_FOOTER = +HTML_FOOTER = -# The HTML_STYLESHEET tag can be used to specify a user-defined cascading -# style sheet that is used by each HTML page. It can be used to -# fine-tune the look of the HTML output. If the tag is left blank doxygen -# will generate a default style sheet. Note that doxygen will try to copy -# the style sheet file to the HTML output directory, so don't put your own +# The HTML_STYLESHEET tag can be used to specify a user-defined cascading +# style sheet that is used by each HTML page. It can be used to +# fine-tune the look of the HTML output. If the tag is left blank doxygen +# will generate a default style sheet. Note that doxygen will try to copy +# the style sheet file to the HTML output directory, so don't put your own # stylesheet in the HTML output directory as well, or it will be erased! -HTML_STYLESHEET = +HTML_STYLESHEET = -# If the HTML_ALIGN_MEMBERS tag is set to YES, the members of classes, -# files or namespaces will be aligned in HTML using tables. If set to +# The HTML_EXTRA_FILES tag can be used to specify one or more extra images or +# other source files which should be copied to the HTML output directory. Note +# that these files will be copied to the base HTML output directory. Use the +# $relpath$ marker in the HTML_HEADER and/or HTML_FOOTER files to load these +# files. In the HTML_STYLESHEET file, use the file name only. Also note that +# the files will be copied as-is; there are no commands or markers available. + +HTML_EXTRA_FILES = + +# The HTML_COLORSTYLE_HUE tag controls the color of the HTML output. +# Doxygen will adjust the colors in the stylesheet and background images +# according to this color. Hue is specified as an angle on a colorwheel, +# see http://en.wikipedia.org/wiki/Hue for more information. +# For instance the value 0 represents red, 60 is yellow, 120 is green, +# 180 is cyan, 240 is blue, 300 purple, and 360 is red again. +# The allowed range is 0 to 359. + +HTML_COLORSTYLE_HUE = 220 + +# The HTML_COLORSTYLE_SAT tag controls the purity (or saturation) of +# the colors in the HTML output. For a value of 0 the output will use +# grayscales only. A value of 255 will produce the most vivid colors. + +HTML_COLORSTYLE_SAT = 100 + +# The HTML_COLORSTYLE_GAMMA tag controls the gamma correction applied to +# the luminance component of the colors in the HTML output. Values below +# 100 gradually make the output lighter, whereas values above 100 make +# the output darker. The value divided by 100 is the actual gamma applied, +# so 80 represents a gamma of 0.8, The value 220 represents a gamma of 2.2, +# and 100 does not change the gamma. + +HTML_COLORSTYLE_GAMMA = 80 + +# If the HTML_TIMESTAMP tag is set to YES then the footer of each generated HTML +# page will contain the date and time when the page was generated. Setting +# this to NO can help when comparing the output of multiple runs. + +HTML_TIMESTAMP = YES + +# If the HTML_ALIGN_MEMBERS tag is set to YES, the members of classes, +# files or namespaces will be aligned in HTML using tables. If set to # NO a bullet list will be used. HTML_ALIGN_MEMBERS = YES -# If the GENERATE_HTMLHELP tag is set to YES, additional index files -# will be generated that can be used as input for tools like the -# Microsoft HTML help workshop to generate a compressed HTML help file (.chm) +# If the HTML_DYNAMIC_SECTIONS tag is set to YES then the generated HTML +# documentation will contain sections that can be hidden and shown after the +# page has loaded. For this to work a browser that supports +# JavaScript and DHTML is required (for instance Mozilla 1.0+, Firefox +# Netscape 6.0+, Internet explorer 5.0+, Konqueror, or Safari). + +HTML_DYNAMIC_SECTIONS = NO + +# If the GENERATE_DOCSET tag is set to YES, additional index files +# will be generated that can be used as input for Apple's Xcode 3 +# integrated development environment, introduced with OSX 10.5 (Leopard). +# To create a documentation set, doxygen will generate a Makefile in the +# HTML output directory. Running make will produce the docset in that +# directory and running "make install" will install the docset in +# ~/Library/Developer/Shared/Documentation/DocSets so that Xcode will find +# it at startup. +# See http://developer.apple.com/tools/creatingdocsetswithdoxygen.html +# for more information. + +GENERATE_DOCSET = NO + +# When GENERATE_DOCSET tag is set to YES, this tag determines the name of the +# feed. A documentation feed provides an umbrella under which multiple +# documentation sets from a single provider (such as a company or product suite) +# can be grouped. + +DOCSET_FEEDNAME = "Doxygen generated docs" + +# When GENERATE_DOCSET tag is set to YES, this tag specifies a string that +# should uniquely identify the documentation set bundle. This should be a +# reverse domain-name style string, e.g. com.mycompany.MyDocSet. Doxygen +# will append .docset to the name. + +DOCSET_BUNDLE_ID = org.doxygen.Project + +# When GENERATE_PUBLISHER_ID tag specifies a string that should uniquely identify +# the documentation publisher. This should be a reverse domain-name style +# string, e.g. com.mycompany.MyDocSet.documentation. + +DOCSET_PUBLISHER_ID = org.doxygen.Publisher + +# The GENERATE_PUBLISHER_NAME tag identifies the documentation publisher. + +DOCSET_PUBLISHER_NAME = Publisher + +# If the GENERATE_HTMLHELP tag is set to YES, additional index files +# will be generated that can be used as input for tools like the +# Microsoft HTML help workshop to generate a compiled HTML help file (.chm) # of the generated HTML documentation. GENERATE_HTMLHELP = NO -# If the GENERATE_HTMLHELP tag is set to YES, the CHM_FILE tag can -# be used to specify the file name of the resulting .chm file. You -# can add a path in front of the file if the result should not be +# If the GENERATE_HTMLHELP tag is set to YES, the CHM_FILE tag can +# be used to specify the file name of the resulting .chm file. You +# can add a path in front of the file if the result should not be # written to the html output directory. -CHM_FILE = +CHM_FILE = -# If the GENERATE_HTMLHELP tag is set to YES, the HHC_LOCATION tag can -# be used to specify the location (absolute path including file name) of -# the HTML help compiler (hhc.exe). If non-empty doxygen will try to run +# If the GENERATE_HTMLHELP tag is set to YES, the HHC_LOCATION tag can +# be used to specify the location (absolute path including file name) of +# the HTML help compiler (hhc.exe). If non-empty doxygen will try to run # the HTML help compiler on the generated index.hhp. -HHC_LOCATION = +HHC_LOCATION = -# If the GENERATE_HTMLHELP tag is set to YES, the GENERATE_CHI flag -# controls if a separate .chi index file is generated (YES) or that +# If the GENERATE_HTMLHELP tag is set to YES, the GENERATE_CHI flag +# controls if a separate .chi index file is generated (YES) or that # it should be included in the master .chm file (NO). GENERATE_CHI = NO -# If the GENERATE_HTMLHELP tag is set to YES, the BINARY_TOC flag -# controls whether a binary table of contents is generated (YES) or a +# If the GENERATE_HTMLHELP tag is set to YES, the CHM_INDEX_ENCODING +# is used to encode HtmlHelp index (hhk), content (hhc) and project file +# content. + +CHM_INDEX_ENCODING = + +# If the GENERATE_HTMLHELP tag is set to YES, the BINARY_TOC flag +# controls whether a binary table of contents is generated (YES) or a # normal table of contents (NO) in the .chm file. BINARY_TOC = NO -# The TOC_EXPAND flag can be set to YES to add extra items for group members +# The TOC_EXPAND flag can be set to YES to add extra items for group members # to the contents of the HTML help documentation and to the tree view. TOC_EXPAND = NO -# The DISABLE_INDEX tag can be used to turn on/off the condensed index at -# top of each HTML page. The value NO (the default) enables the index and +# If the GENERATE_QHP tag is set to YES and both QHP_NAMESPACE and +# QHP_VIRTUAL_FOLDER are set, an additional index file will be generated +# that can be used as input for Qt's qhelpgenerator to generate a +# Qt Compressed Help (.qch) of the generated HTML documentation. + +GENERATE_QHP = NO + +# If the QHG_LOCATION tag is specified, the QCH_FILE tag can +# be used to specify the file name of the resulting .qch file. +# The path specified is relative to the HTML output folder. + +QCH_FILE = + +# The QHP_NAMESPACE tag specifies the namespace to use when generating +# Qt Help Project output. For more information please see +# http://doc.trolltech.com/qthelpproject.html#namespace + +QHP_NAMESPACE = org.doxygen.Project + +# The QHP_VIRTUAL_FOLDER tag specifies the namespace to use when generating +# Qt Help Project output. For more information please see +# http://doc.trolltech.com/qthelpproject.html#virtual-folders + +QHP_VIRTUAL_FOLDER = doc + +# If QHP_CUST_FILTER_NAME is set, it specifies the name of a custom filter to +# add. For more information please see +# http://doc.trolltech.com/qthelpproject.html#custom-filters + +QHP_CUST_FILTER_NAME = + +# The QHP_CUST_FILT_ATTRS tag specifies the list of the attributes of the +# custom filter to add. For more information please see +# +# Qt Help Project / Custom Filters. + +QHP_CUST_FILTER_ATTRS = + +# The QHP_SECT_FILTER_ATTRS tag specifies the list of the attributes this +# project's +# filter section matches. +# +# Qt Help Project / Filter Attributes. + +QHP_SECT_FILTER_ATTRS = + +# If the GENERATE_QHP tag is set to YES, the QHG_LOCATION tag can +# be used to specify the location of Qt's qhelpgenerator. +# If non-empty doxygen will try to run qhelpgenerator on the generated +# .qhp file. + +QHG_LOCATION = + +# If the GENERATE_ECLIPSEHELP tag is set to YES, additional index files +# will be generated, which together with the HTML files, form an Eclipse help +# plugin. To install this plugin and make it available under the help contents +# menu in Eclipse, the contents of the directory containing the HTML and XML +# files needs to be copied into the plugins directory of eclipse. The name of +# the directory within the plugins directory should be the same as +# the ECLIPSE_DOC_ID value. After copying Eclipse needs to be restarted before +# the help appears. + +GENERATE_ECLIPSEHELP = NO + +# A unique identifier for the eclipse help plugin. When installing the plugin +# the directory name containing the HTML and XML files should also have +# this name. + +ECLIPSE_DOC_ID = org.doxygen.Project + +# The DISABLE_INDEX tag can be used to turn on/off the condensed index at +# top of each HTML page. The value NO (the default) enables the index and # the value YES disables it. DISABLE_INDEX = YES -# This tag can be used to set the number of enum values (range [1..20]) -# that doxygen will group on one line in the generated HTML documentation. +# The ENUM_VALUES_PER_LINE tag can be used to set the number of enum values +# (range [0,1..20]) that doxygen will group on one line in the generated HTML +# documentation. Note that a value of 0 will completely suppress the enum +# values from appearing in the overview section. ENUM_VALUES_PER_LINE = 1 -# If the GENERATE_TREEVIEW tag is set to YES, a side panel will be -# generated containing a tree-like index structure (just like the one that -# is generated for HTML Help). For this to work a browser that supports -# JavaScript, DHTML, CSS and frames is required (for instance Mozilla 1.0+, -# Netscape 6.0+, Internet explorer 5.0+, or Konqueror). Windows users are -# probably better off using the HTML help feature. +# The GENERATE_TREEVIEW tag is used to specify whether a tree-like index +# structure should be generated to display hierarchical information. +# If the tag value is set to YES, a side panel will be generated +# containing a tree-like index structure (just like the one that +# is generated for HTML Help). For this to work a browser that supports +# JavaScript, DHTML, CSS and frames is required (i.e. any modern browser). +# Windows users are probably better off using the HTML help feature. GENERATE_TREEVIEW = YES -# If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be -# used to set the initial width (in pixels) of the frame in which the tree +# By enabling USE_INLINE_TREES, doxygen will generate the Groups, Directories, +# and Class Hierarchy pages using a tree view instead of an ordered list. + +USE_INLINE_TREES = NO + +# If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be +# used to set the initial width (in pixels) of the frame in which the tree # is shown. TREEVIEW_WIDTH = 250 +# When the EXT_LINKS_IN_WINDOW option is set to YES doxygen will open +# links to external symbols imported via tag files in a separate window. + +EXT_LINKS_IN_WINDOW = NO + +# Use this tag to change the font size of Latex formulas included +# as images in the HTML documentation. The default is 10. Note that +# when you change the font size after a successful doxygen run you need +# to manually remove any form_*.png images from the HTML output directory +# to force them to be regenerated. + +FORMULA_FONTSIZE = 10 + +# Use the FORMULA_TRANPARENT tag to determine whether or not the images +# generated for formulas are transparent PNGs. Transparent PNGs are +# not supported properly for IE 6.0, but are supported on all modern browsers. +# Note that when changing this option you need to delete any form_*.png files +# in the HTML output before the changes have effect. + +FORMULA_TRANSPARENT = YES + +# Enable the USE_MATHJAX option to render LaTeX formulas using MathJax +# (see http://www.mathjax.org) which uses client side Javascript for the +# rendering instead of using prerendered bitmaps. Use this if you do not +# have LaTeX installed or if you want to formulas look prettier in the HTML +# output. When enabled you also need to install MathJax separately and +# configure the path to it using the MATHJAX_RELPATH option. + +USE_MATHJAX = NO + +# When MathJax is enabled you need to specify the location relative to the +# HTML output directory using the MATHJAX_RELPATH option. The destination +# directory should contain the MathJax.js script. For instance, if the mathjax +# directory is located at the same level as the HTML output directory, then +# MATHJAX_RELPATH should be ../mathjax. The default value points to the +# mathjax.org site, so you can quickly see the result without installing +# MathJax, but it is strongly recommended to install a local copy of MathJax +# before deployment. + +MATHJAX_RELPATH = http://www.mathjax.org/mathjax + +# The MATHJAX_EXTENSIONS tag can be used to specify one or MathJax extension +# names that should be enabled during MathJax rendering. + +MATHJAX_EXTENSIONS = + +# When the SEARCHENGINE tag is enabled doxygen will generate a search box +# for the HTML output. The underlying search engine uses javascript +# and DHTML and should work on any modern browser. Note that when using +# HTML help (GENERATE_HTMLHELP), Qt help (GENERATE_QHP), or docsets +# (GENERATE_DOCSET) there is already a search function so this one should +# typically be disabled. For large projects the javascript based search engine +# can be slow, then enabling SERVER_BASED_SEARCH may provide a better solution. + +SEARCHENGINE = NO + +# When the SERVER_BASED_SEARCH tag is enabled the search engine will be +# implemented using a PHP enabled web server instead of at the web client +# using Javascript. Doxygen will generate the search PHP script and index +# file to put on the web server. The advantage of the server +# based approach is that it scales better to large projects and allows +# full text search. The disadvantages are that it is more difficult to setup +# and does not have live searching capabilities. + +SERVER_BASED_SEARCH = NO + #--------------------------------------------------------------------------- # configuration options related to the LaTeX output #--------------------------------------------------------------------------- -# If the GENERATE_LATEX tag is set to YES (the default) Doxygen will +# If the GENERATE_LATEX tag is set to YES (the default) Doxygen will # generate Latex output. GENERATE_LATEX = NO -# The LATEX_OUTPUT tag is used to specify where the LaTeX docs will be put. -# If a relative path is entered the value of OUTPUT_DIRECTORY will be +# The LATEX_OUTPUT tag is used to specify where the LaTeX docs will be put. +# If a relative path is entered the value of OUTPUT_DIRECTORY will be # put in front of it. If left blank `latex' will be used as the default path. LATEX_OUTPUT = latex -# The LATEX_CMD_NAME tag can be used to specify the LaTeX command name to be +# The LATEX_CMD_NAME tag can be used to specify the LaTeX command name to be # invoked. If left blank `latex' will be used as the default command name. +# Note that when enabling USE_PDFLATEX this option is only used for +# generating bitmaps for formulas in the HTML output, but not in the +# Makefile that is written to the output directory. LATEX_CMD_NAME = latex -# The MAKEINDEX_CMD_NAME tag can be used to specify the command name to -# generate index for LaTeX. If left blank `makeindex' will be used as the +# The MAKEINDEX_CMD_NAME tag can be used to specify the command name to +# generate index for LaTeX. If left blank `makeindex' will be used as the # default command name. MAKEINDEX_CMD_NAME = makeindex -# If the COMPACT_LATEX tag is set to YES Doxygen generates more compact -# LaTeX documents. This may be useful for small projects and may help to +# If the COMPACT_LATEX tag is set to YES Doxygen generates more compact +# LaTeX documents. This may be useful for small projects and may help to # save some trees in general. COMPACT_LATEX = NO -# The PAPER_TYPE tag can be used to set the paper type that is used -# by the printer. Possible values are: a4, a4wide, letter, legal and +# The PAPER_TYPE tag can be used to set the paper type that is used +# by the printer. Possible values are: a4, letter, legal and # executive. If left blank a4wide will be used. PAPER_TYPE = a4wide -# The EXTRA_PACKAGES tag can be to specify one or more names of LaTeX +# The EXTRA_PACKAGES tag can be to specify one or more names of LaTeX # packages that should be included in the LaTeX output. -EXTRA_PACKAGES = +EXTRA_PACKAGES = -# The LATEX_HEADER tag can be used to specify a personal LaTeX header for -# the generated latex document. The header should contain everything until -# the first chapter. If it is left blank doxygen will generate a +# The LATEX_HEADER tag can be used to specify a personal LaTeX header for +# the generated latex document. The header should contain everything until +# the first chapter. If it is left blank doxygen will generate a # standard header. Notice: only use this tag if you know what you are doing! -LATEX_HEADER = +LATEX_HEADER = -# If the PDF_HYPERLINKS tag is set to YES, the LaTeX that is generated -# is prepared for conversion to pdf (using ps2pdf). The pdf file will -# contain links (just like the HTML output) instead of page references +# The LATEX_FOOTER tag can be used to specify a personal LaTeX footer for +# the generated latex document. The footer should contain everything after +# the last chapter. If it is left blank doxygen will generate a +# standard footer. Notice: only use this tag if you know what you are doing! + +LATEX_FOOTER = + +# If the PDF_HYPERLINKS tag is set to YES, the LaTeX that is generated +# is prepared for conversion to pdf (using ps2pdf). The pdf file will +# contain links (just like the HTML output) instead of page references # This makes the output suitable for online browsing using a pdf viewer. PDF_HYPERLINKS = NO -# If the USE_PDFLATEX tag is set to YES, pdflatex will be used instead of -# plain latex in the generated Makefile. Set this option to YES to get a +# If the USE_PDFLATEX tag is set to YES, pdflatex will be used instead of +# plain latex in the generated Makefile. Set this option to YES to get a # higher quality PDF documentation. USE_PDFLATEX = NO -# If the LATEX_BATCHMODE tag is set to YES, doxygen will add the \\batchmode. -# command to the generated LaTeX files. This will instruct LaTeX to keep -# running if errors occur, instead of asking the user for help. +# If the LATEX_BATCHMODE tag is set to YES, doxygen will add the \\batchmode. +# command to the generated LaTeX files. This will instruct LaTeX to keep +# running if errors occur, instead of asking the user for help. # This option is also used when generating formulas in HTML. LATEX_BATCHMODE = NO -# If LATEX_HIDE_INDICES is set to YES then doxygen will not -# include the index chapters (such as File Index, Compound Index, etc.) +# If LATEX_HIDE_INDICES is set to YES then doxygen will not +# include the index chapters (such as File Index, Compound Index, etc.) # in the output. LATEX_HIDE_INDICES = NO +# If LATEX_SOURCE_CODE is set to YES then doxygen will include +# source code with syntax highlighting in the LaTeX output. +# Note that which sources are shown also depends on other settings +# such as SOURCE_BROWSER. + +LATEX_SOURCE_CODE = NO + +# The LATEX_BIB_STYLE tag can be used to specify the style to use for the +# bibliography, e.g. plainnat, or ieeetr. The default style is "plain". See +# http://en.wikipedia.org/wiki/BibTeX for more info. + +LATEX_BIB_STYLE = plain + #--------------------------------------------------------------------------- # configuration options related to the RTF output #--------------------------------------------------------------------------- -# If the GENERATE_RTF tag is set to YES Doxygen will generate RTF output -# The RTF output is optimized for Word 97 and may not look very pretty with +# If the GENERATE_RTF tag is set to YES Doxygen will generate RTF output +# The RTF output is optimized for Word 97 and may not look very pretty with # other RTF readers or editors. GENERATE_RTF = NO -# The RTF_OUTPUT tag is used to specify where the RTF docs will be put. -# If a relative path is entered the value of OUTPUT_DIRECTORY will be +# The RTF_OUTPUT tag is used to specify where the RTF docs will be put. +# If a relative path is entered the value of OUTPUT_DIRECTORY will be # put in front of it. If left blank `rtf' will be used as the default path. RTF_OUTPUT = rtf -# If the COMPACT_RTF tag is set to YES Doxygen generates more compact -# RTF documents. This may be useful for small projects and may help to +# If the COMPACT_RTF tag is set to YES Doxygen generates more compact +# RTF documents. This may be useful for small projects and may help to # save some trees in general. COMPACT_RTF = NO -# If the RTF_HYPERLINKS tag is set to YES, the RTF that is generated -# will contain hyperlink fields. The RTF file will -# contain links (just like the HTML output) instead of page references. -# This makes the output suitable for online browsing using WORD or other -# programs which support those fields. +# If the RTF_HYPERLINKS tag is set to YES, the RTF that is generated +# will contain hyperlink fields. The RTF file will +# contain links (just like the HTML output) instead of page references. +# This makes the output suitable for online browsing using WORD or other +# programs which support those fields. # Note: wordpad (write) and others do not support links. RTF_HYPERLINKS = NO -# Load stylesheet definitions from file. Syntax is similar to doxygen's -# config file, i.e. a series of assignments. You only have to provide +# Load stylesheet definitions from file. Syntax is similar to doxygen's +# config file, i.e. a series of assignments. You only have to provide # replacements, missing definitions are set to their default value. -RTF_STYLESHEET_FILE = +RTF_STYLESHEET_FILE = -# Set optional variables used in the generation of an rtf document. +# Set optional variables used in the generation of an rtf document. # Syntax is similar to doxygen's config file. -RTF_EXTENSIONS_FILE = +RTF_EXTENSIONS_FILE = #--------------------------------------------------------------------------- # configuration options related to the man page output #--------------------------------------------------------------------------- -# If the GENERATE_MAN tag is set to YES (the default) Doxygen will +# If the GENERATE_MAN tag is set to YES (the default) Doxygen will # generate man pages GENERATE_MAN = NO -# The MAN_OUTPUT tag is used to specify where the man pages will be put. -# If a relative path is entered the value of OUTPUT_DIRECTORY will be +# The MAN_OUTPUT tag is used to specify where the man pages will be put. +# If a relative path is entered the value of OUTPUT_DIRECTORY will be # put in front of it. If left blank `man' will be used as the default path. MAN_OUTPUT = man -# The MAN_EXTENSION tag determines the extension that is added to +# The MAN_EXTENSION tag determines the extension that is added to # the generated man pages (default is the subroutine's section .3) MAN_EXTENSION = .3 -# If the MAN_LINKS tag is set to YES and Doxygen generates man output, -# then it will generate one additional man file for each entity -# documented in the real man page(s). These additional files -# only source the real man page, but without them the man command +# If the MAN_LINKS tag is set to YES and Doxygen generates man output, +# then it will generate one additional man file for each entity +# documented in the real man page(s). These additional files +# only source the real man page, but without them the man command # would be unable to find the correct page. The default is NO. MAN_LINKS = NO @@ -887,33 +1352,33 @@ MAN_LINKS = NO # configuration options related to the XML output #--------------------------------------------------------------------------- -# If the GENERATE_XML tag is set to YES Doxygen will -# generate an XML file that captures the structure of +# If the GENERATE_XML tag is set to YES Doxygen will +# generate an XML file that captures the structure of # the code including all documentation. GENERATE_XML = NO -# The XML_OUTPUT tag is used to specify where the XML pages will be put. -# If a relative path is entered the value of OUTPUT_DIRECTORY will be +# The XML_OUTPUT tag is used to specify where the XML pages will be put. +# If a relative path is entered the value of OUTPUT_DIRECTORY will be # put in front of it. If left blank `xml' will be used as the default path. XML_OUTPUT = xml -# The XML_SCHEMA tag can be used to specify an XML schema, -# which can be used by a validating XML parser to check the +# The XML_SCHEMA tag can be used to specify an XML schema, +# which can be used by a validating XML parser to check the # syntax of the XML files. -XML_SCHEMA = +XML_SCHEMA = -# The XML_DTD tag can be used to specify an XML DTD, -# which can be used by a validating XML parser to check the +# The XML_DTD tag can be used to specify an XML DTD, +# which can be used by a validating XML parser to check the # syntax of the XML files. -XML_DTD = +XML_DTD = -# If the XML_PROGRAMLISTING tag is set to YES Doxygen will -# dump the program listings (including syntax highlighting -# and cross-referencing information) to the XML output. Note that +# If the XML_PROGRAMLISTING tag is set to YES Doxygen will +# dump the program listings (including syntax highlighting +# and cross-referencing information) to the XML output. Note that # enabling this will significantly increase the size of the XML output. XML_PROGRAMLISTING = YES @@ -922,10 +1387,10 @@ XML_PROGRAMLISTING = YES # configuration options for the AutoGen Definitions output #--------------------------------------------------------------------------- -# If the GENERATE_AUTOGEN_DEF tag is set to YES Doxygen will -# generate an AutoGen Definitions (see autogen.sf.net) file -# that captures the structure of the code including all -# documentation. Note that this feature is still experimental +# If the GENERATE_AUTOGEN_DEF tag is set to YES Doxygen will +# generate an AutoGen Definitions (see autogen.sf.net) file +# that captures the structure of the code including all +# documentation. Note that this feature is still experimental # and incomplete at the moment. GENERATE_AUTOGEN_DEF = NO @@ -934,319 +1399,359 @@ GENERATE_AUTOGEN_DEF = NO # configuration options related to the Perl module output #--------------------------------------------------------------------------- -# If the GENERATE_PERLMOD tag is set to YES Doxygen will -# generate a Perl module file that captures the structure of -# the code including all documentation. Note that this -# feature is still experimental and incomplete at the +# If the GENERATE_PERLMOD tag is set to YES Doxygen will +# generate a Perl module file that captures the structure of +# the code including all documentation. Note that this +# feature is still experimental and incomplete at the # moment. GENERATE_PERLMOD = NO -# If the PERLMOD_LATEX tag is set to YES Doxygen will generate -# the necessary Makefile rules, Perl scripts and LaTeX code to be able +# If the PERLMOD_LATEX tag is set to YES Doxygen will generate +# the necessary Makefile rules, Perl scripts and LaTeX code to be able # to generate PDF and DVI output from the Perl module output. PERLMOD_LATEX = NO -# If the PERLMOD_PRETTY tag is set to YES the Perl module output will be -# nicely formatted so it can be parsed by a human reader. This is useful -# if you want to understand what is going on. On the other hand, if this -# tag is set to NO the size of the Perl module output will be much smaller +# If the PERLMOD_PRETTY tag is set to YES the Perl module output will be +# nicely formatted so it can be parsed by a human reader. +# This is useful +# if you want to understand what is going on. +# On the other hand, if this +# tag is set to NO the size of the Perl module output will be much smaller # and Perl will parse it just the same. PERLMOD_PRETTY = YES -# The names of the make variables in the generated doxyrules.make file -# are prefixed with the string contained in PERLMOD_MAKEVAR_PREFIX. -# This is useful so different doxyrules.make files included by the same +# The names of the make variables in the generated doxyrules.make file +# are prefixed with the string contained in PERLMOD_MAKEVAR_PREFIX. +# This is useful so different doxyrules.make files included by the same # Makefile don't overwrite each other's variables. -PERLMOD_MAKEVAR_PREFIX = +PERLMOD_MAKEVAR_PREFIX = #--------------------------------------------------------------------------- -# Configuration options related to the preprocessor +# Configuration options related to the preprocessor #--------------------------------------------------------------------------- -# If the ENABLE_PREPROCESSING tag is set to YES (the default) Doxygen will -# evaluate all C-preprocessor directives found in the sources and include +# If the ENABLE_PREPROCESSING tag is set to YES (the default) Doxygen will +# evaluate all C-preprocessor directives found in the sources and include # files. ENABLE_PREPROCESSING = YES -# If the MACRO_EXPANSION tag is set to YES Doxygen will expand all macro -# names in the source code. If set to NO (the default) only conditional -# compilation will be performed. Macro expansion can be done in a controlled +# If the MACRO_EXPANSION tag is set to YES Doxygen will expand all macro +# names in the source code. If set to NO (the default) only conditional +# compilation will be performed. Macro expansion can be done in a controlled # way by setting EXPAND_ONLY_PREDEF to YES. MACRO_EXPANSION = YES -# If the EXPAND_ONLY_PREDEF and MACRO_EXPANSION tags are both set to YES -# then the macro expansion is limited to the macros specified with the +# If the EXPAND_ONLY_PREDEF and MACRO_EXPANSION tags are both set to YES +# then the macro expansion is limited to the macros specified with the # PREDEFINED and EXPAND_AS_DEFINED tags. EXPAND_ONLY_PREDEF = YES -# If the SEARCH_INCLUDES tag is set to YES (the default) the includes files -# in the INCLUDE_PATH (see below) will be search if a #include is found. +# If the SEARCH_INCLUDES tag is set to YES (the default) the includes files +# pointed to by INCLUDE_PATH will be searched when a #include is found. SEARCH_INCLUDES = NO -# The INCLUDE_PATH tag can be used to specify one or more directories that -# contain include files that are not input files but should be processed by +# The INCLUDE_PATH tag can be used to specify one or more directories that +# contain include files that are not input files but should be processed by # the preprocessor. -INCLUDE_PATH = +INCLUDE_PATH = -# You can use the INCLUDE_FILE_PATTERNS tag to specify one or more wildcard -# patterns (like *.h and *.hpp) to filter out the header-files in the -# directories. If left blank, the patterns specified with FILE_PATTERNS will +# You can use the INCLUDE_FILE_PATTERNS tag to specify one or more wildcard +# patterns (like *.h and *.hpp) to filter out the header-files in the +# directories. If left blank, the patterns specified with FILE_PATTERNS will # be used. -INCLUDE_FILE_PATTERNS = +INCLUDE_FILE_PATTERNS = -# The PREDEFINED tag can be used to specify one or more macro names that -# are defined before the preprocessor is started (similar to the -D option of -# gcc). The argument of the tag is a list of macros of the form: name -# or name=definition (no spaces). If the definition and the = are -# omitted =1 is assumed. To prevent a macro definition from being -# undefined via #undef or recursively expanded use the := operator +# The PREDEFINED tag can be used to specify one or more macro names that +# are defined before the preprocessor is started (similar to the -D option of +# gcc). The argument of the tag is a list of macros of the form: name +# or name=definition (no spaces). If the definition and the = are +# omitted =1 is assumed. To prevent a macro definition from being +# undefined via #undef or recursively expanded use the := operator # instead of the = operator. PREDEFINED = TIDY_EXPORT= -# If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then -# this tag can be used to specify a list of macro names that should be expanded. -# The macro definition that is found in the sources will be used. -# Use the PREDEFINED tag if you want to use a different macro definition. +# If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then +# this tag can be used to specify a list of macro names that should be expanded. +# The macro definition that is found in the sources will be used. +# Use the PREDEFINED tag if you want to use a different macro definition that +# overrules the definition found in the source code. -EXPAND_AS_DEFINED = +EXPAND_AS_DEFINED = -# If the SKIP_FUNCTION_MACROS tag is set to YES (the default) then -# doxygen's preprocessor will remove all function-like macros that are alone -# on a line, have an all uppercase name, and do not end with a semicolon. Such -# function macros are typically used for boiler-plate code, and will confuse -# the parser if not removed. +# If the SKIP_FUNCTION_MACROS tag is set to YES (the default) then +# doxygen's preprocessor will remove all references to function-like macros +# that are alone on a line, have an all uppercase name, and do not end with a +# semicolon, because these will confuse the parser if not removed. SKIP_FUNCTION_MACROS = NO #--------------------------------------------------------------------------- -# Configuration::additions related to external references +# Configuration::additions related to external references #--------------------------------------------------------------------------- -# The TAGFILES option can be used to specify one or more tagfiles. -# Optionally an initial location of the external documentation -# can be added for each tagfile. The format of a tag file without -# this location is as follows: -# TAGFILES = file1 file2 ... -# Adding location for the tag files is done as follows: -# TAGFILES = file1=loc1 "file2 = loc2" ... -# where "loc1" and "loc2" can be relative or absolute paths or -# URLs. If a location is present for each tag, the installdox tool +# The TAGFILES option can be used to specify one or more tagfiles. +# Optionally an initial location of the external documentation +# can be added for each tagfile. The format of a tag file without +# this location is as follows: +# +# TAGFILES = file1 file2 ... +# Adding location for the tag files is done as follows: +# +# TAGFILES = file1=loc1 "file2 = loc2" ... +# where "loc1" and "loc2" can be relative or absolute paths or +# URLs. If a location is present for each tag, the installdox tool # does not have to be run to correct the links. # Note that each tag file must have a unique name # (where the name does NOT include the path) -# If a tag file is not located in the directory in which doxygen +# If a tag file is not located in the directory in which doxygen # is run, you must also specify the path to the tagfile here. -TAGFILES = +TAGFILES = -# When a file name is specified after GENERATE_TAGFILE, doxygen will create +# When a file name is specified after GENERATE_TAGFILE, doxygen will create # a tag file that is based on the input files it reads. -GENERATE_TAGFILE = +GENERATE_TAGFILE = -# If the ALLEXTERNALS tag is set to YES all external classes will be listed -# in the class index. If set to NO only the inherited external classes +# If the ALLEXTERNALS tag is set to YES all external classes will be listed +# in the class index. If set to NO only the inherited external classes # will be listed. ALLEXTERNALS = NO -# If the EXTERNAL_GROUPS tag is set to YES all external groups will be listed -# in the modules index. If set to NO, only the current project's groups will +# If the EXTERNAL_GROUPS tag is set to YES all external groups will be listed +# in the modules index. If set to NO, only the current project's groups will # be listed. EXTERNAL_GROUPS = YES -# The PERL_PATH should be the absolute path and name of the perl script +# The PERL_PATH should be the absolute path and name of the perl script # interpreter (i.e. the result of `which perl'). PERL_PATH = perl #--------------------------------------------------------------------------- -# Configuration options related to the dot tool +# Configuration options related to the dot tool #--------------------------------------------------------------------------- -# If the CLASS_DIAGRAMS tag is set to YES (the default) Doxygen will -# generate a inheritance diagram (in HTML, RTF and LaTeX) for classes with base -# or super classes. Setting the tag to NO turns the diagrams off. Note that -# this option is superseded by the HAVE_DOT option below. This is only a -# fallback. It is recommended to install and use dot, since it yields more -# powerful graphs. +# If the CLASS_DIAGRAMS tag is set to YES (the default) Doxygen will +# generate a inheritance diagram (in HTML, RTF and LaTeX) for classes with base +# or super classes. Setting the tag to NO turns the diagrams off. Note that +# this option also works with HAVE_DOT disabled, but it is recommended to +# install and use dot, since it yields more powerful graphs. CLASS_DIAGRAMS = NO -# If set to YES, the inheritance and collaboration graphs will hide -# inheritance and usage relations if the target is undocumented +# You can define message sequence charts within doxygen comments using the \msc +# command. Doxygen will then run the mscgen tool (see +# http://www.mcternan.me.uk/mscgen/) to produce the chart and insert it in the +# documentation. The MSCGEN_PATH tag allows you to specify the directory where +# the mscgen tool resides. If left empty the tool is assumed to be found in the +# default search path. + +MSCGEN_PATH = + +# If set to YES, the inheritance and collaboration graphs will hide +# inheritance and usage relations if the target is undocumented # or is not a class. HIDE_UNDOC_RELATIONS = YES -# If you set the HAVE_DOT tag to YES then doxygen will assume the dot tool is -# available from the path. This tool is part of Graphviz, a graph visualization -# toolkit from AT&T and Lucent Bell Labs. The other options in this section +# If you set the HAVE_DOT tag to YES then doxygen will assume the dot tool is +# available from the path. This tool is part of Graphviz, a graph visualization +# toolkit from AT&T and Lucent Bell Labs. The other options in this section # have no effect if this option is set to NO (the default) HAVE_DOT = NO -# If the CLASS_GRAPH and HAVE_DOT tags are set to YES then doxygen -# will generate a graph for each documented class showing the direct and -# indirect inheritance relations. Setting this tag to YES will force the +# The DOT_NUM_THREADS specifies the number of dot invocations doxygen is +# allowed to run in parallel. When set to 0 (the default) doxygen will +# base this on the number of processors available in the system. You can set it +# explicitly to a value larger than 0 to get control over the balance +# between CPU load and processing speed. + +DOT_NUM_THREADS = 0 + +# By default doxygen will use the Helvetica font for all dot files that +# doxygen generates. When you want a differently looking font you can specify +# the font name using DOT_FONTNAME. You need to make sure dot is able to find +# the font, which can be done by putting it in a standard location or by setting +# the DOTFONTPATH environment variable or by setting DOT_FONTPATH to the +# directory containing the font. + +DOT_FONTNAME = Helvetica + +# The DOT_FONTSIZE tag can be used to set the size of the font of dot graphs. +# The default size is 10pt. + +DOT_FONTSIZE = 10 + +# By default doxygen will tell dot to use the Helvetica font. +# If you specify a different font using DOT_FONTNAME you can use DOT_FONTPATH to +# set the path where dot can find it. + +DOT_FONTPATH = + +# If the CLASS_GRAPH and HAVE_DOT tags are set to YES then doxygen +# will generate a graph for each documented class showing the direct and +# indirect inheritance relations. Setting this tag to YES will force the # the CLASS_DIAGRAMS tag to NO. CLASS_GRAPH = NO -# If the COLLABORATION_GRAPH and HAVE_DOT tags are set to YES then doxygen -# will generate a graph for each documented class showing the direct and -# indirect implementation dependencies (inheritance, containment, and +# If the COLLABORATION_GRAPH and HAVE_DOT tags are set to YES then doxygen +# will generate a graph for each documented class showing the direct and +# indirect implementation dependencies (inheritance, containment, and # class references variables) of the class with other documented classes. COLLABORATION_GRAPH = NO -# If the GROUP_GRAPHS and HAVE_DOT tags are set to YES then doxygen +# If the GROUP_GRAPHS and HAVE_DOT tags are set to YES then doxygen # will generate a graph for groups, showing the direct groups dependencies GROUP_GRAPHS = YES -# If the UML_LOOK tag is set to YES doxygen will generate inheritance and -# collaboration diagrams in a style similar to the OMG's Unified Modeling +# If the UML_LOOK tag is set to YES doxygen will generate inheritance and +# collaboration diagrams in a style similar to the OMG's Unified Modeling # Language. UML_LOOK = NO -# If set to YES, the inheritance and collaboration graphs will show the +# If set to YES, the inheritance and collaboration graphs will show the # relations between templates and their instances. TEMPLATE_RELATIONS = NO -# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDE_GRAPH, and HAVE_DOT -# tags are set to YES then doxygen will generate a graph for each documented -# file showing the direct and indirect include dependencies of the file with +# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDE_GRAPH, and HAVE_DOT +# tags are set to YES then doxygen will generate a graph for each documented +# file showing the direct and indirect include dependencies of the file with # other documented files. INCLUDE_GRAPH = NO -# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDED_BY_GRAPH, and -# HAVE_DOT tags are set to YES then doxygen will generate a graph for each -# documented header file showing the documented files that directly or +# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDED_BY_GRAPH, and +# HAVE_DOT tags are set to YES then doxygen will generate a graph for each +# documented header file showing the documented files that directly or # indirectly include this file. INCLUDED_BY_GRAPH = YES -# If the CALL_GRAPH and HAVE_DOT tags are set to YES then doxygen will -# generate a call dependency graph for every global function or class method. -# Note that enabling this option will significantly increase the time of a run. -# So in most cases it will be better to enable call graphs for selected -# functions only using the \callgraph command. +# If the CALL_GRAPH and HAVE_DOT options are set to YES then +# doxygen will generate a call dependency graph for every global function +# or class method. Note that enabling this option will significantly increase +# the time of a run. So in most cases it will be better to enable call graphs +# for selected functions only using the \callgraph command. CALL_GRAPH = NO -# If the CALLER_GRAPH and HAVE_DOT tags are set to YES then doxygen will -# generate a caller dependency graph for every global function or class method. -# Note that enabling this option will significantly increase the time of a run. -# So in most cases it will be better to enable caller graphs for selected -# functions only using the \callergraph command. +# If the CALLER_GRAPH and HAVE_DOT tags are set to YES then +# doxygen will generate a caller dependency graph for every global function +# or class method. Note that enabling this option will significantly increase +# the time of a run. So in most cases it will be better to enable caller +# graphs for selected functions only using the \callergraph command. CALLER_GRAPH = NO -# If the GRAPHICAL_HIERARCHY and HAVE_DOT tags are set to YES then doxygen -# will graphical hierarchy of all classes instead of a textual one. +# If the GRAPHICAL_HIERARCHY and HAVE_DOT tags are set to YES then doxygen +# will generate a graphical hierarchy of all classes instead of a textual one. GRAPHICAL_HIERARCHY = YES -# If the DIRECTORY_GRAPH, SHOW_DIRECTORIES and HAVE_DOT tags are set to YES -# then doxygen will show the dependencies a directory has on other directories +# If the DIRECTORY_GRAPH, SHOW_DIRECTORIES and HAVE_DOT tags are set to YES +# then doxygen will show the dependencies a directory has on other directories # in a graphical way. The dependency relations are determined by the #include # relations between the files in the directories. DIRECTORY_GRAPH = YES -# The DOT_IMAGE_FORMAT tag can be used to set the image format of the images -# generated by dot. Possible values are png, jpg, or gif -# If left blank png will be used. +# The DOT_IMAGE_FORMAT tag can be used to set the image format of the images +# generated by dot. Possible values are svg, png, jpg, or gif. +# If left blank png will be used. If you choose svg you need to set +# HTML_FILE_EXTENSION to xhtml in order to make the SVG files +# visible in IE 9+ (other browsers do not have this requirement). DOT_IMAGE_FORMAT = png -# The tag DOT_PATH can be used to specify the path where the dot tool can be +# If DOT_IMAGE_FORMAT is set to svg, then this option can be set to YES to +# enable generation of interactive SVG images that allow zooming and panning. +# Note that this requires a modern browser other than Internet Explorer. +# Tested and working are Firefox, Chrome, Safari, and Opera. For IE 9+ you +# need to set HTML_FILE_EXTENSION to xhtml in order to make the SVG files +# visible. Older versions of IE do not have SVG support. + +INTERACTIVE_SVG = NO + +# The tag DOT_PATH can be used to specify the path where the dot tool can be # found. If left blank, it is assumed the dot tool can be found in the path. -DOT_PATH = +DOT_PATH = -# The DOTFILE_DIRS tag can be used to specify one or more directories that -# contain dot files that are included in the documentation (see the +# The DOTFILE_DIRS tag can be used to specify one or more directories that +# contain dot files that are included in the documentation (see the # \dotfile command). -DOTFILE_DIRS = +DOTFILE_DIRS = -# The MAX_DOT_GRAPH_WIDTH tag can be used to set the maximum allowed width -# (in pixels) of the graphs generated by dot. If a graph becomes larger than -# this value, doxygen will try to truncate the graph, so that it fits within -# the specified constraint. Beware that most browsers cannot cope with very -# large images. +# The MSCFILE_DIRS tag can be used to specify one or more directories that +# contain msc files that are included in the documentation (see the +# \mscfile command). -MAX_DOT_GRAPH_WIDTH = 1024 +MSCFILE_DIRS = -# The MAX_DOT_GRAPH_HEIGHT tag can be used to set the maximum allows height -# (in pixels) of the graphs generated by dot. If a graph becomes larger than -# this value, doxygen will try to truncate the graph, so that it fits within -# the specified constraint. Beware that most browsers cannot cope with very -# large images. +# The DOT_GRAPH_MAX_NODES tag can be used to set the maximum number of +# nodes that will be shown in the graph. If the number of nodes in a graph +# becomes larger than this value, doxygen will truncate the graph, which is +# visualized by representing a node as a red box. Note that doxygen if the +# number of direct children of the root node in a graph is already larger than +# DOT_GRAPH_MAX_NODES then the graph will not be shown at all. Also note +# that the size of a graph can be further restricted by MAX_DOT_GRAPH_DEPTH. -MAX_DOT_GRAPH_HEIGHT = 1024 +DOT_GRAPH_MAX_NODES = 50 -# The MAX_DOT_GRAPH_DEPTH tag can be used to set the maximum depth of the -# graphs generated by dot. A depth value of 3 means that only nodes reachable -# from the root by following a path via at most 3 edges will be shown. Nodes -# that lay further from the root node will be omitted. Note that setting this -# option to 1 or 2 may greatly reduce the computation time needed for large -# code bases. Also note that a graph may be further truncated if the graph's -# image dimensions are not sufficient to fit the graph (see MAX_DOT_GRAPH_WIDTH -# and MAX_DOT_GRAPH_HEIGHT). If 0 is used for the depth value (the default), -# the graph is not depth-constrained. +# The MAX_DOT_GRAPH_DEPTH tag can be used to set the maximum depth of the +# graphs generated by dot. A depth value of 3 means that only nodes reachable +# from the root by following a path via at most 3 edges will be shown. Nodes +# that lay further from the root node will be omitted. Note that setting this +# option to 1 or 2 may greatly reduce the computation time needed for large +# code bases. Also note that the size of a graph can be further restricted by +# DOT_GRAPH_MAX_NODES. Using a depth of 0 means no depth restriction. MAX_DOT_GRAPH_DEPTH = 0 -# Set the DOT_TRANSPARENT tag to YES to generate images with a transparent -# background. This is disabled by default, which results in a white background. -# Warning: Depending on the platform used, enabling this option may lead to -# badly anti-aliased labels on the edges of a graph (i.e. they become hard to -# read). +# Set the DOT_TRANSPARENT tag to YES to generate images with a transparent +# background. This is disabled by default, because dot on Windows does not +# seem to support this out of the box. Warning: Depending on the platform used, +# enabling this option may lead to badly anti-aliased labels on the edges of +# a graph (i.e. they become hard to read). DOT_TRANSPARENT = NO -# Set the DOT_MULTI_TARGETS tag to YES allow dot to generate multiple output -# files in one run (i.e. multiple -o and -T options on the command line). This -# makes dot run faster, but since only newer versions of dot (>1.8.10) +# Set the DOT_MULTI_TARGETS tag to YES allow dot to generate multiple output +# files in one run (i.e. multiple -o and -T options on the command line). This +# makes dot run faster, but since only newer versions of dot (>1.8.10) # support this, this feature is disabled by default. DOT_MULTI_TARGETS = NO -# If the GENERATE_LEGEND tag is set to YES (the default) Doxygen will -# generate a legend page explaining the meaning of the various boxes and +# If the GENERATE_LEGEND tag is set to YES (the default) Doxygen will +# generate a legend page explaining the meaning of the various boxes and # arrows in the dot generated graphs. GENERATE_LEGEND = YES -# If the DOT_CLEANUP tag is set to YES (the default) Doxygen will -# remove the intermediate dot files that are used to generate +# If the DOT_CLEANUP tag is set to YES (the default) Doxygen will +# remove the intermediate dot files that are used to generate # the various graphs. DOT_CLEANUP = YES - -#--------------------------------------------------------------------------- -# Configuration::additions related to the search engine -#--------------------------------------------------------------------------- - -# The SEARCHENGINE tag specifies whether or not a search engine should be -# used. If set to NO the values of all tags below this one will be ignored. - -SEARCHENGINE = NO diff --git a/htmldoc/quickref.html b/quickref.html similarity index 99% rename from htmldoc/quickref.html rename to quickref.html index 6d7671a..6aa40aa 100644 --- a/htmldoc/quickref.html +++ b/quickref.html @@ -10,7 +10,7 @@

HTML Tidy Configuration Options

Generated automatically with HTML Tidy released - on https://github.com/w3c/tidy-html5/tree/82bada2. + on https://github.com/w3c/tidy-html5/tree/1c4d43a.

HTML, XHTML, XML diff --git a/src/version.h b/src/version.h index 43a970a..7761732 100644 --- a/src/version.h +++ b/src/version.h @@ -1 +1 @@ -static const char TY_(release_date)[] = "https://github.com/w3c/tidy-html5/tree/82bada2"; \ No newline at end of file +static const char TY_(release_date)[] = "https://github.com/w3c/tidy-html5/tree/1c4d43a"; \ No newline at end of file