www.pudn.com > TidyWin32-src.zip > TidyItf.h


#ifndef TIDY_C_CPP_INTERFACE_H 
#define TIDY_C_CPP_INTERFACE_H 
 
// Shared 
#ifdef  __cplusplus 
extern "C" { 
#endif 
	typedef void (tidy_out_CallbackT)(FILE *fp, const char* msg); 
	void Set_tidy_out_Callback(tidy_out_CallbackT* cb); 
 
	typedef void (outc_CallbackT)(unsigned int c, FILE *fp); 
	void Set_outc_Callback(outc_CallbackT* cb); 
 
	typedef enum { newInlineTag, newBlockTag, newEmptyTag, newPreTag } 
		newTagT; 
	typedef void (defNewTag_CallbackT)(newTagT tagType, const char* newTag); 
	void Set_defNewTag_Callback(defNewTag_CallbackT* cb); 
 
	int tidy_main(int argc, char **argv, const char* outFile); 
#ifdef  __cplusplus 
} 
#endif 
 
// C++ only 
#ifdef  __cplusplus 
namespace tidy { 
extern "C" { 
 
	#define RAW         0 
	#define ASCII       1 
	#define LATIN1      2 
	#define UTF8        3 
	#define ISO2022     4 
	#define MACROMAN    5 
 
	typedef unsigned int uint; 
	typedef unsigned long ulong; 
	typedef unsigned char byte; 
 
	typedef enum 
	{ 
	   no, 
	   yes 
	} Bool; 
 
	typedef enum 
	{ 
		doctype_omit, 
		doctype_auto, 
		doctype_strict, 
		doctype_loose, 
		doctype_user 
	} DocTypeMode; 
 
	extern unsigned int totalerrors; 
	extern unsigned int totalwarnings; 
	extern unsigned int optionerrors; 
 
	extern uint spaces;           // default indentation  
	extern uint wraplen;          // default wrap margin  
	extern int CharEncoding; 
	extern int tabsize; 
 
	extern DocTypeMode doctype_mode; // see doctype property  
	extern char *alt_text;		// default text for alt attribute  
	extern char *slide_style;	// style sheet for slides  
	extern char *doctype_str;	// user specified doctype  
	extern char *errfile;		// file name to write errors to 
 
	extern Bool writeback;        // if true then output tidied markup  
	extern Bool OnlyErrors;       // if true normal output is suppressed  
	extern Bool ShowWarnings ;    // however errors are always shown  
	extern Bool Quiet;            // no 'Parsing X', guessed DTD or summary  
	extern Bool IndentContent;    // indent content of appropriate tags  
	extern Bool SmartIndent;      // does text/block level content effect indentation  
	extern Bool HideEndTags;      // suppress optional end tags  
	extern Bool XmlTags;          // treat input as XML  
	extern Bool XmlOut;           // create output as XML  
	extern Bool xHTML;            // output extensible HTML  
	extern Bool XmlPi ;           // add  for XML docs  
	extern Bool RawOut;           // avoid mapping values > 127 to entities  
	extern Bool UpperCaseTags;    // output tags in upper not lower case  
	extern Bool UpperCaseAttrs;   // output attributes in upper not lower case  
	extern Bool MakeClean;        // replace presentational clutter by style rules  
	extern Bool LogicalEmphasis;  // replace i by em and b by strong  
	extern Bool DropFontTags;     // discard presentation tags  
	extern Bool DropEmptyParas ;  // discard empty p elements  
	extern Bool FixComments ;     // fix comments with adjacent hyphens  
	extern Bool BreakBeforeBR;    // o/p newline before 
or not? extern Bool BurstSlides; // create slides on each h2 element extern Bool NumEntities; // use numeric entities extern Bool QuoteMarks; // output " marks as " extern Bool QuoteNbsp ; // output non-breaking space as entity extern Bool QuoteAmpersand ; // output naked ampersand as & extern Bool WrapAttVals; // wrap within attribute values extern Bool WrapScriptlets; // wrap within JavaScript string literals extern Bool WrapSection ; // wrap within section tags extern Bool WrapAsp ; // wrap within ASP pseudo elements extern Bool WrapJste ; // wrap within JSTE pseudo elements extern Bool WrapPhp ; // wrap within PHP pseudo elements extern Bool FixBackslash ; // fix URLs by replacing \ with / extern Bool IndentAttributes; // newline+indent before each attribute extern Bool XmlPIs; // if set to yes PIs must end with ?> extern Bool XmlSpace; // if set to yes adds xml:space attr as needed extern Bool EncloseBodyText; // if yes text at body is wrapped in

's extern Bool EncloseBlockText; // if yes text in blocks is wrapped in

's extern Bool KeepFileTimes ; // if yes last modied time is preserved extern Bool Word2000; // draconian cleaning for Word2000 extern Bool TidyMark ; // add meta element indicating tidied doc extern Bool Emacs; // if true format error output for GNU Emacs extern Bool LiteralAttribs; // if true attributes may use newlines extern char *wstrdup(char *str); extern void MemFree(void *mem); extern void InitTidy(void); extern void DeInitTidy(void); extern void ParseConfigFile(char *file); extern void AdjustConfig(void); extern void DefineEmptyTag(char *name); extern void DefineInlineTag(char *name); extern void DefineBlockTag(char *name); extern void DefinePreTag(char *name); } } #endif #endif //TIDY_C_CPP_INTERFACE_H