1 /* 2 * $LynxId: LYCharUtils.h,v 1.28 2012/02/10 18:36:39 tom Exp $ 3 */ 4 #ifndef LYCHARUTILS_H 5 #define LYCHARUTILS_H 6 7 #ifndef HTUTILS_H 8 #include <HTUtils.h> 9 #endif /* HTUTILS_H */ 10 11 #ifndef HTSTREAM_H 12 #include <HTStream.h> 13 #endif /* HTSTREAM_H */ 14 15 #ifdef __cplusplus 16 extern "C" { 17 #endif 18 #define CHECK_ID(code) LYCheckForID(me, present, value, (int)code) 19 typedef enum { 20 st_HTML = 0, /* attributes and content found in HTML, probably meant for display */ 21 st_URL, /* URLs, fragments, NAME and ID */ 22 st_other 23 } CharUtil_st; 24 25 extern char **LYUCFullyTranslateString(char **str, 26 int cs_from, 27 int cs_to, 28 int do_ent, 29 int use_lynx_specials, 30 int plain_space, 31 int hidden, 32 int Back, 33 CharUtil_st stype); 34 extern BOOL LYUCTranslateHTMLString(char **str, 35 int cs_from, 36 int cs_to, 37 int use_lynx_specials, 38 int plain_space, 39 int hidden, 40 CharUtil_st stype); 41 extern BOOL LYUCTranslateBackFormData(char **str, 42 int cs_from, 43 int cs_to, 44 int plain_space); 45 extern void LYEntify(char **str, 46 int isTITLE); 47 extern const char *LYEntifyTitle(char **target, const char *source); 48 extern const char *LYEntifyValue(char **target, const char *source); 49 extern void LYTrimHead(char *str); 50 extern void LYTrimTail(char *str); 51 extern char *LYFindEndOfComment(char *str); 52 extern void LYFillLocalFileURL(char **href, 53 const char *base); 54 extern void LYAddMETAcharsetToFD(FILE *fd, 55 int disp_chndl); 56 extern void LYAddMETAcharsetToStream(HTStream *target, 57 int disp_chndl); 58 extern void LYformTitle(char **dst, 59 const char *src); 60 extern char *LYParseTagParam(char *from, 61 const char *name); 62 extern void LYParseRefreshURL(char *content, 63 char **p_seconds, 64 char **p_address); 65 66 #ifdef Lynx_HTML_Handler 67 extern int OL_CONTINUE; /* flag for whether CONTINUE is set */ 68 extern int OL_VOID; /* flag for whether a count is set */ 69 extern void LYZero_OL_Counter(HTStructured * me); 70 extern char *LYUppercaseA_OL_String(int seqnum); 71 extern char *LYLowercaseA_OL_String(int seqnum); 72 extern char *LYUppercaseI_OL_String(int seqnum); 73 extern char *LYLowercaseI_OL_String(int seqnum); 74 extern void LYGetChartransInfo(HTStructured * me); 75 extern void LYHandleMETA(HTStructured * me, const BOOL *present, 76 STRING2PTR value, 77 char **include); 78 extern void LYHandlePlike(HTStructured * me, const BOOL *present, 79 STRING2PTR value, 80 char **include, 81 int align_idx, 82 int start); 83 extern void LYHandleSELECT(HTStructured * me, const BOOL *present, 84 STRING2PTR value, 85 char **include, 86 int start); 87 extern int LYLegitimizeHREF(HTStructured * me, char **href, 88 int force_slash, 89 int strip_dots); 90 extern void LYCheckForContentBase(HTStructured * me); 91 extern void LYCheckForID(HTStructured * me, const BOOL *present, 92 STRING2PTR value, 93 int attribute); 94 extern void LYHandleID(HTStructured * me, const char *id); 95 extern BOOLEAN LYoverride_default_alignment(HTStructured * me); 96 extern void LYEnsureDoubleSpace(HTStructured * me); 97 extern void LYEnsureSingleSpace(HTStructured * me); 98 extern void LYResetParagraphAlignment(HTStructured * me); 99 extern BOOLEAN LYCheckForCSI(HTParentAnchor *anchor, 100 char **url); 101 102 #endif /* Lynx_HTML_Handler */ 103 104 #define LYUCTranslateBackHeaderText LYUCTranslateBackFormData 105 106 #ifdef __cplusplus 107 } 108 #endif 109 #endif /* LYCHARUTILS_H */ 110