|
Packit |
f574b8 |
/*
|
|
Packit |
f574b8 |
* $LynxId: GridText.h,v 1.69 2012/02/12 23:25:38 tom Exp $
|
|
Packit |
f574b8 |
*
|
|
Packit |
f574b8 |
* Specialities of GridText as subclass of HText
|
|
Packit |
f574b8 |
*/
|
|
Packit |
f574b8 |
#ifndef LYGRIDTEXT_H
|
|
Packit |
f574b8 |
#define LYGRIDTEXT_H
|
|
Packit |
f574b8 |
|
|
Packit |
f574b8 |
#include <HText.h> /* Superclass */
|
|
Packit |
f574b8 |
|
|
Packit |
f574b8 |
#ifndef HTFORMS_H
|
|
Packit |
f574b8 |
#include <HTForms.h>
|
|
Packit |
f574b8 |
#endif /* HTFORMS_H */
|
|
Packit |
f574b8 |
|
|
Packit |
f574b8 |
#include <HTFont.h>
|
|
Packit |
f574b8 |
|
|
Packit |
f574b8 |
#include <HTCJK.h>
|
|
Packit |
f574b8 |
|
|
Packit |
f574b8 |
#ifdef __cplusplus
|
|
Packit |
f574b8 |
extern "C" {
|
|
Packit |
f574b8 |
#endif
|
|
Packit |
f574b8 |
#define TABSTOP 8
|
|
Packit |
f574b8 |
#define SPACES " " /* must be at least TABSTOP spaces long */
|
|
Packit |
f574b8 |
#define SPLAT '.'
|
|
Packit |
f574b8 |
#define NOCHOP 0
|
|
Packit |
f574b8 |
#define CHOP 1
|
|
Packit |
f574b8 |
/* just for information:
|
|
Packit |
f574b8 |
US-ASCII control characters <32 which are not defined in Unicode standard
|
|
Packit |
f574b8 |
=00 U+0000 NULL
|
|
Packit |
f574b8 |
=01 U+0001 START OF HEADING
|
|
Packit |
f574b8 |
=02 U+0002 START OF TEXT
|
|
Packit |
f574b8 |
=03 U+0003 END OF TEXT
|
|
Packit |
f574b8 |
=04 U+0004 END OF TRANSMISSION
|
|
Packit |
f574b8 |
=05 U+0005 ENQUIRY
|
|
Packit |
f574b8 |
=06 U+0006 ACKNOWLEDGE
|
|
Packit |
f574b8 |
=07 U+0007 BELL
|
|
Packit |
f574b8 |
=08 U+0008 BACKSPACE
|
|
Packit |
f574b8 |
=09 U+0009 HORIZONTAL TABULATION
|
|
Packit |
f574b8 |
=0A U+000A LINE FEED
|
|
Packit |
f574b8 |
=0B U+000B VERTICAL TABULATION
|
|
Packit |
f574b8 |
=0C U+000C FORM FEED
|
|
Packit |
f574b8 |
=0D U+000D CARRIAGE RETURN
|
|
Packit |
f574b8 |
=0E U+000E SHIFT OUT
|
|
Packit |
f574b8 |
=0F U+000F SHIFT IN
|
|
Packit |
f574b8 |
=10 U+0010 DATA LINK ESCAPE
|
|
Packit |
f574b8 |
=11 U+0011 DEVICE CONTROL ONE
|
|
Packit |
f574b8 |
=12 U+0012 DEVICE CONTROL TWO
|
|
Packit |
f574b8 |
=13 U+0013 DEVICE CONTROL THREE
|
|
Packit |
f574b8 |
=14 U+0014 DEVICE CONTROL FOUR
|
|
Packit |
f574b8 |
=15 U+0015 NEGATIVE ACKNOWLEDGE
|
|
Packit |
f574b8 |
=16 U+0016 SYNCHRONOUS IDLE
|
|
Packit |
f574b8 |
=17 U+0017 END OF TRANSMISSION BLOCK
|
|
Packit |
f574b8 |
=18 U+0018 CANCEL
|
|
Packit |
f574b8 |
=19 U+0019 END OF MEDIUM
|
|
Packit |
f574b8 |
=1A U+001A SUBSTITUTE
|
|
Packit |
f574b8 |
=1B U+001B ESCAPE
|
|
Packit |
f574b8 |
=1C U+001C FILE SEPARATOR
|
|
Packit |
f574b8 |
=1D U+001D GROUP SEPARATOR
|
|
Packit |
f574b8 |
=1E U+001E RECORD SEPARATOR
|
|
Packit |
f574b8 |
=1F U+001F UNIT SEPARATOR
|
|
Packit |
f574b8 |
=7F U+007F DELETE
|
|
Packit |
f574b8 |
*/ extern int HTCurSelectGroupType;
|
|
Packit |
f574b8 |
extern char *HTCurSelectGroupSize;
|
|
Packit |
f574b8 |
|
|
Packit |
f574b8 |
#if defined(VMS) && defined(VAXC) && !defined(__DECC)
|
|
Packit |
f574b8 |
extern int HTVirtualMemorySize;
|
|
Packit |
f574b8 |
#endif /* VMS && VAXC && !__DECC */
|
|
Packit |
f574b8 |
|
|
Packit |
f574b8 |
extern HTChildAnchor *HText_childNextNumber(int n, void **prev);
|
|
Packit |
f574b8 |
extern int HText_findAnchorNumber(void *avoid);
|
|
Packit |
f574b8 |
extern void HText_FormDescNumber(int n, const char **desc);
|
|
Packit |
f574b8 |
|
|
Packit |
f574b8 |
/* Is there any file left?
|
|
Packit |
f574b8 |
*/
|
|
Packit |
f574b8 |
extern BOOL HText_canScrollUp(HText *text);
|
|
Packit |
f574b8 |
extern BOOL HText_canScrollDown(void);
|
|
Packit |
f574b8 |
|
|
Packit |
f574b8 |
/* Move display within window
|
|
Packit |
f574b8 |
*/
|
|
Packit |
f574b8 |
extern void HText_scrollUp(HText *text); /* One page */
|
|
Packit |
f574b8 |
extern void HText_scrollDown(HText *text); /* One page */
|
|
Packit |
f574b8 |
extern void HText_scrollTop(HText *text);
|
|
Packit |
f574b8 |
extern void HText_scrollBottom(HText *text);
|
|
Packit |
f574b8 |
extern void HText_pageDisplay(int line_num, char *target);
|
|
Packit |
f574b8 |
extern BOOL HText_pageHasPrevTarget(void);
|
|
Packit |
f574b8 |
|
|
Packit |
f574b8 |
extern int HText_LinksInLines(HText *text, int line_num, int Lines);
|
|
Packit |
f574b8 |
|
|
Packit |
f574b8 |
extern int HText_getAbsLineNumber(HText *text, int anchor_number);
|
|
Packit |
f574b8 |
extern int HText_closestAnchor(HText *text, int offset);
|
|
Packit |
f574b8 |
extern int HText_locateAnchor(HText *text, int anchor_number);
|
|
Packit |
f574b8 |
extern int HText_anchorRelativeTo(HText *text, int top_lineno, int anchor_num);
|
|
Packit |
f574b8 |
|
|
Packit |
f574b8 |
extern void HText_setLastChar(HText *text, int ch);
|
|
Packit |
f574b8 |
extern char HText_getLastChar(HText *text);
|
|
Packit |
f574b8 |
|
|
Packit |
f574b8 |
extern int HText_sourceAnchors(HText *text);
|
|
Packit |
f574b8 |
extern void HText_setStale(HText *text);
|
|
Packit |
f574b8 |
extern void HText_refresh(HText *text);
|
|
Packit |
f574b8 |
extern const char *HText_getTitle(void);
|
|
Packit |
f574b8 |
extern const char *HText_getSugFname(void);
|
|
Packit |
f574b8 |
extern void HTCheckFnameForCompression(char **fname,
|
|
Packit |
f574b8 |
HTParentAnchor *anchor,
|
|
Packit |
f574b8 |
int strip_ok);
|
|
Packit |
f574b8 |
extern const char *HText_getLastModified(void);
|
|
Packit |
f574b8 |
extern const char *HText_getDate(void);
|
|
Packit |
f574b8 |
extern const char *HText_getHttpHeaders(void);
|
|
Packit |
f574b8 |
extern const char *HText_getServer(void);
|
|
Packit |
f574b8 |
extern const char *HText_getOwner(void);
|
|
Packit |
f574b8 |
extern const char *HText_getContentBase(void);
|
|
Packit |
f574b8 |
extern const char *HText_getContentLocation(void);
|
|
Packit |
f574b8 |
extern const char *HText_getMessageID(void);
|
|
Packit |
f574b8 |
extern const char *HText_getRevTitle(void);
|
|
Packit |
f574b8 |
|
|
Packit |
f574b8 |
#ifdef USE_COLOR_STYLE
|
|
Packit |
f574b8 |
extern const char *HText_getStyle(void);
|
|
Packit |
f574b8 |
#endif
|
|
Packit |
f574b8 |
extern void HText_setMainTextOwner(const char *owner);
|
|
Packit |
f574b8 |
extern void print_wwwfile_to_fd(FILE *fp, int is_email, int is_reply);
|
|
Packit |
f574b8 |
extern BOOL HText_select(HText *text);
|
|
Packit |
f574b8 |
extern BOOL HText_POSTReplyLoaded(DocInfo *doc);
|
|
Packit |
f574b8 |
extern BOOL HTFindPoundSelector(const char *selector);
|
|
Packit |
f574b8 |
extern int HTGetRelLinkNum(int num, int rel, int cur);
|
|
Packit |
f574b8 |
extern int HTGetLinkInfo(int number,
|
|
Packit |
f574b8 |
int want_go,
|
|
Packit |
f574b8 |
int *go_line,
|
|
Packit |
f574b8 |
int *linknum,
|
|
Packit |
f574b8 |
char **hightext,
|
|
Packit |
f574b8 |
char **lname);
|
|
Packit |
f574b8 |
extern BOOL HText_TAHasMoreLines(int curlink,
|
|
Packit |
f574b8 |
int direction);
|
|
Packit |
f574b8 |
extern int HTGetLinkOrFieldStart(int curlink,
|
|
Packit |
f574b8 |
int *go_line,
|
|
Packit |
f574b8 |
int *linknum,
|
|
Packit |
f574b8 |
int direction,
|
|
Packit |
f574b8 |
int ta_skip);
|
|
Packit |
f574b8 |
extern BOOL HText_getFirstTargetInLine(HText *text,
|
|
Packit |
f574b8 |
int line_num,
|
|
Packit |
f574b8 |
int utf_flag,
|
|
Packit |
f574b8 |
int *offset,
|
|
Packit |
f574b8 |
int *tLen,
|
|
Packit |
f574b8 |
char **data,
|
|
Packit |
f574b8 |
const char *target);
|
|
Packit |
f574b8 |
extern int HTisDocumentSource(void);
|
|
Packit |
f574b8 |
extern void HTuncache_current_document(void);
|
|
Packit |
f574b8 |
|
|
Packit |
f574b8 |
#ifdef USE_SOURCE_CACHE
|
|
Packit |
f574b8 |
extern BOOLEAN HTreparse_document(void);
|
|
Packit |
f574b8 |
extern BOOLEAN HTcan_reparse_document(void);
|
|
Packit |
f574b8 |
extern BOOLEAN HTdocument_settings_changed(void);
|
|
Packit |
f574b8 |
#endif
|
|
Packit |
f574b8 |
|
|
Packit |
f574b8 |
extern BOOL HTLoadedDocumentEightbit(void);
|
|
Packit |
f574b8 |
extern BOOL HText_LastLineEmpty(HText *me, int IgnoreSpaces);
|
|
Packit |
f574b8 |
extern BOOL HText_PreviousLineEmpty(HText *me, int IgnoreSpaces);
|
|
Packit |
f574b8 |
extern BOOL HText_inLineOne(HText *text);
|
|
Packit |
f574b8 |
extern BOOLEAN HTLoadedDocumentIsHEAD(void);
|
|
Packit |
f574b8 |
extern BOOLEAN HTLoadedDocumentIsSafe(void);
|
|
Packit |
f574b8 |
extern bstring *HTLoadedDocumentPost_data(void);
|
|
Packit |
f574b8 |
extern const char *HTLoadedDocumentBookmark(void);
|
|
Packit |
f574b8 |
extern const char *HTLoadedDocumentCharset(void);
|
|
Packit |
f574b8 |
extern const char *HTLoadedDocumentTitle(void);
|
|
Packit |
f574b8 |
extern const char *HTLoadedDocumentURL(void);
|
|
Packit |
f574b8 |
extern const char *HText_HiddenLinkAt(HText *text, int number);
|
|
Packit |
f574b8 |
extern int HText_HiddenLinkCount(HText *text);
|
|
Packit |
f574b8 |
extern int HText_LastLineOffset(HText *me);
|
|
Packit |
f574b8 |
extern int HText_LastLineSize(HText *me, int IgnoreSpaces);
|
|
Packit |
f574b8 |
extern int HText_PreviousLineSize(HText *me, int IgnoreSpaces);
|
|
Packit |
f574b8 |
extern int HText_getCurrentColumn(HText *text);
|
|
Packit |
f574b8 |
extern int HText_getLines(HText *text);
|
|
Packit |
f574b8 |
extern int HText_getMaximumColumn(HText *text);
|
|
Packit |
f574b8 |
extern int HText_getNumOfBytes(void);
|
|
Packit |
f574b8 |
extern int HText_getNumOfLines(void);
|
|
Packit |
f574b8 |
extern int HText_getPreferredTopLine(HText *text, int line_number);
|
|
Packit |
f574b8 |
extern int HText_getTabIDColumn(HText *text, const char *name);
|
|
Packit |
f574b8 |
extern int HText_getTopOfScreen(void);
|
|
Packit |
f574b8 |
extern int do_www_search(DocInfo *doc);
|
|
Packit |
f574b8 |
extern void HText_NegateLineOne(HText *text);
|
|
Packit |
f574b8 |
extern void HText_RemovePreviousLine(HText *text);
|
|
Packit |
f574b8 |
extern void HText_setNodeAnchorBookmark(const char *bookmark);
|
|
Packit |
f574b8 |
extern void HText_setTabID(HText *text, const char *name);
|
|
Packit |
f574b8 |
extern void *HText_pool_calloc(HText *text, unsigned size);
|
|
Packit |
f574b8 |
|
|
Packit |
f574b8 |
/* "simple table" stuff */
|
|
Packit |
f574b8 |
extern BOOLEAN HText_endStblTABLE(HText *);
|
|
Packit |
f574b8 |
extern int HText_trimCellLines(HText *text);
|
|
Packit |
f574b8 |
extern void HText_cancelStbl(HText *);
|
|
Packit |
f574b8 |
extern void HText_endStblCOLGROUP(HText *);
|
|
Packit |
f574b8 |
extern void HText_endStblTD(HText *);
|
|
Packit |
f574b8 |
extern void HText_endStblTR(HText *);
|
|
Packit |
f574b8 |
extern void HText_startStblCOL(HText *, int, int, int);
|
|
Packit |
f574b8 |
extern void HText_startStblRowGroup(HText *, int);
|
|
Packit |
f574b8 |
extern void HText_startStblTABLE(HText *, int);
|
|
Packit |
f574b8 |
extern void HText_startStblTD(HText *, int, int, int, int);
|
|
Packit |
f574b8 |
extern void HText_startStblTR(HText *, int);
|
|
Packit |
f574b8 |
|
|
Packit |
f574b8 |
/* forms stuff */
|
|
Packit |
f574b8 |
extern void HText_beginForm(char *action,
|
|
Packit |
f574b8 |
char *method,
|
|
Packit |
f574b8 |
char *enctype,
|
|
Packit |
f574b8 |
char *title,
|
|
Packit |
f574b8 |
const char *accept_cs);
|
|
Packit |
f574b8 |
extern void HText_endForm(HText *text);
|
|
Packit |
f574b8 |
extern void HText_beginSelect(char *name,
|
|
Packit |
f574b8 |
int name_cs,
|
|
Packit |
f574b8 |
int multiple,
|
|
Packit |
f574b8 |
char *len);
|
|
Packit |
f574b8 |
extern int HText_getOptionNum(HText *text);
|
|
Packit |
f574b8 |
extern char *HText_setLastOptionValue(HText *text,
|
|
Packit |
f574b8 |
char *value,
|
|
Packit |
f574b8 |
char *submit_value,
|
|
Packit |
f574b8 |
int order,
|
|
Packit |
f574b8 |
int checked,
|
|
Packit |
f574b8 |
int val_cs,
|
|
Packit |
f574b8 |
int submit_val_cs);
|
|
Packit |
f574b8 |
extern int HText_beginInput(HText *text,
|
|
Packit |
f574b8 |
int underline,
|
|
Packit |
f574b8 |
InputFieldData * I);
|
|
Packit |
f574b8 |
extern void HText_endInput(HText *text);
|
|
Packit |
f574b8 |
extern PerFormInfo *HText_PerFormInfo(int number);
|
|
Packit |
f574b8 |
extern int HText_SubmitForm(FormInfo * submit_item, DocInfo *doc,
|
|
Packit |
f574b8 |
const char *link_name,
|
|
Packit |
f574b8 |
const char *link_value);
|
|
Packit |
f574b8 |
extern void HText_DisableCurrentForm(void);
|
|
Packit |
f574b8 |
extern void HText_ResetForm(FormInfo * form);
|
|
Packit |
f574b8 |
extern void HText_activateRadioButton(FormInfo * form);
|
|
Packit |
f574b8 |
extern BOOLEAN HText_HaveUserChangedForms(HText *text);
|
|
Packit |
f574b8 |
|
|
Packit |
f574b8 |
extern HTList *search_queries; /* Previous isindex and whereis queries */
|
|
Packit |
f574b8 |
extern void HTSearchQueries_free(void);
|
|
Packit |
f574b8 |
extern void HTAddSearchQuery(char *query);
|
|
Packit |
f574b8 |
|
|
Packit |
f574b8 |
extern void user_message(const char *message,
|
|
Packit |
f574b8 |
const char *argument);
|
|
Packit |
f574b8 |
|
|
Packit |
f574b8 |
#define _user_message(msg, arg) mustshow = TRUE, user_message(msg, arg)
|
|
Packit |
f574b8 |
|
|
Packit |
f574b8 |
extern void www_user_search(int start_line,
|
|
Packit |
f574b8 |
DocInfo *doc,
|
|
Packit |
f574b8 |
char *target,
|
|
Packit |
f574b8 |
int direction);
|
|
Packit |
f574b8 |
|
|
Packit |
f574b8 |
extern void print_crawl_to_fd(FILE *fp,
|
|
Packit |
f574b8 |
char *thelink,
|
|
Packit |
f574b8 |
char *thetitle);
|
|
Packit |
f574b8 |
extern char *stub_HTAnchor_address(HTAnchor * me);
|
|
Packit |
f574b8 |
|
|
Packit |
f574b8 |
extern void HText_setToolbar(HText *text);
|
|
Packit |
f574b8 |
extern BOOL HText_hasToolbar(HText *text);
|
|
Packit |
f574b8 |
|
|
Packit |
f574b8 |
extern void HText_setNoCache(HText *text);
|
|
Packit |
f574b8 |
extern BOOL HText_hasNoCacheSet(HText *text);
|
|
Packit |
f574b8 |
|
|
Packit |
f574b8 |
extern BOOL HText_hasUTF8OutputSet(HText *text);
|
|
Packit |
f574b8 |
extern void HText_setKcode(HText *text,
|
|
Packit |
f574b8 |
const char *charset,
|
|
Packit |
f574b8 |
LYUCcharset *p_in);
|
|
Packit |
f574b8 |
|
|
Packit |
f574b8 |
extern void HText_setBreakPoint(HText *text);
|
|
Packit |
f574b8 |
|
|
Packit |
f574b8 |
extern BOOL HText_AreDifferent(HTParentAnchor *anchor,
|
|
Packit |
f574b8 |
const char *full_address);
|
|
Packit |
f574b8 |
|
|
Packit |
f574b8 |
extern int HText_EditTextArea(LinkInfo * form_link);
|
|
Packit |
f574b8 |
extern void HText_EditTextField(LinkInfo * form_link);
|
|
Packit |
f574b8 |
extern void HText_ExpandTextarea(LinkInfo * form_link, int newlines);
|
|
Packit |
f574b8 |
extern int HText_InsertFile(LinkInfo * form_link);
|
|
Packit |
f574b8 |
|
|
Packit |
f574b8 |
extern void redraw_lines_of_link(int cur);
|
|
Packit |
f574b8 |
extern void LYMoveToLink(int cur,
|
|
Packit |
f574b8 |
const char *target,
|
|
Packit |
f574b8 |
const char *hightext,
|
|
Packit |
f574b8 |
int flag,
|
|
Packit |
f574b8 |
int inU,
|
|
Packit |
f574b8 |
int utf_flag);
|
|
Packit |
f574b8 |
|
|
Packit |
f574b8 |
#ifdef USE_PRETTYSRC
|
|
Packit |
f574b8 |
extern void HTMark_asSource(void);
|
|
Packit |
f574b8 |
#endif
|
|
Packit |
f574b8 |
|
|
Packit |
f574b8 |
extern int HTMainText_Get_UCLYhndl(void);
|
|
Packit |
f574b8 |
|
|
Packit |
f574b8 |
#ifdef KANJI_CODE_OVERRIDE
|
|
Packit |
f574b8 |
extern HTkcode last_kcode;
|
|
Packit |
f574b8 |
#endif
|
|
Packit |
f574b8 |
|
|
Packit |
f574b8 |
extern HTkcode HText_getKcode(HText *text);
|
|
Packit |
f574b8 |
extern void HText_updateKcode(HText *text, HTkcode kcode);
|
|
Packit |
f574b8 |
extern HTkcode HText_getSpecifiedKcode(HText *text);
|
|
Packit |
f574b8 |
extern void HText_updateSpecifiedKcode(HText *text, HTkcode kcode);
|
|
Packit |
f574b8 |
|
|
Packit |
f574b8 |
#ifdef __cplusplus
|
|
Packit |
f574b8 |
}
|
|
Packit |
f574b8 |
#endif
|
|
Packit |
f574b8 |
#endif /* LYGRIDTEXT_H */
|