Intial commit
[profile/ivi/w3m.git] / proto.h
1 /* $Id: proto.h,v 1.101 2006/04/07 13:21:12 inu Exp $ */
2 /* 
3  *   This file was automatically generated by version 1.7 of cextract.
4  *   Manual editing not recommended.
5  *
6  *   Created: Wed Feb 10 12:47:03 1999
7  */
8 extern int main(int argc, char **argv, char **envp);
9 extern void nulcmd(void);
10 extern void pushEvent(int cmd, void *data);
11 extern MySignalHandler intTrap(SIGNAL_ARG);
12 extern void pgFore(void);
13 extern void pgBack(void);
14 extern void lup1(void);
15 extern void ldown1(void);
16 extern void ctrCsrV(void);
17 extern void ctrCsrH(void);
18 extern void rdrwSc(void);
19 extern void srchfor(void);
20 extern void isrchfor(void);
21 extern void srchbak(void);
22 extern void isrchbak(void);
23 extern void srchnxt(void);
24 extern void srchprv(void);
25 extern void shiftl(void);
26 extern void shiftr(void);
27 extern void col1R(void);
28 extern void col1L(void);
29 extern void setEnv(void);
30 extern void pipeBuf(void);
31 extern void pipesh(void);
32 extern void readsh(void);
33 extern void execsh(void);
34 extern void ldfile(void);
35 extern void ldhelp(void);
36 extern void movL(void);
37 extern void movL1(void);
38 extern void movD(void);
39 extern void movD1(void);
40 extern void movU(void);
41 extern void movU1(void);
42 extern void movR(void);
43 extern void movR1(void);
44 extern void movLW(void);
45 extern void movRW(void);
46 extern void qquitfm(void);
47 extern void quitfm(void);
48 extern void selBuf(void);
49 extern void susp(void);
50 extern void goLine(void);
51 extern void goLineF(void);
52 extern void goLineL(void);
53 extern void linbeg(void);
54 extern void linend(void);
55 extern void editBf(void);
56 extern void editScr(void);
57 extern void followA(void);
58 extern void bufferA(void);
59 extern void followI(void);
60 extern void submitForm(void);
61 extern void followForm(void);
62 extern void topA(void);
63 extern void lastA(void);
64 extern void onA(void);
65
66 extern void nextA(void);
67 extern void prevA(void);
68 extern void nextVA(void);
69 extern void prevVA(void);
70 extern void nextL(void);
71 extern void nextLU(void);
72 extern void nextR(void);
73 extern void nextRD(void);
74 extern void nextD(void);
75 extern void nextU(void);
76 extern void nextBf(void);
77 extern void prevBf(void);
78 extern void backBf(void);
79 extern void deletePrevBuf(void);
80 extern void goURL(void);
81 extern void gorURL(void);
82 extern void ldBmark(void);
83 extern void adBmark(void);
84 extern void ldOpt(void);
85 extern void setOpt(void);
86 extern void pginfo(void);
87 extern void msgs(void);
88 extern void svA(void);
89 extern void svI(void);
90 extern void svBuf(void);
91 extern void svSrc(void);
92 extern void peekURL(void);
93 extern void peekIMG(void);
94 extern void curURL(void);
95 extern void vwSrc(void);
96 extern void reload(void);
97 extern void reshape(void);
98 extern void chkURL(void);
99 extern void chkURLBuffer(Buffer *buf);
100 extern void chkWORD(void);
101 #ifdef USE_NNTP
102 extern void chkNMID(void);
103 extern void chkNMIDBuffer(Buffer *buf);
104 #else
105 #define chkNMID nulcmd
106 #endif
107 extern void rFrame(void);
108 extern void extbrz(void);
109 extern void linkbrz(void);
110 extern void curlno(void);
111 extern void execCmd(void);
112 #ifdef USE_IMAGE
113 extern void dispI(void);
114 extern void stopI(void);
115 #else
116 #define dispI nulcmd
117 #define stopI nulcmd
118 #endif
119 #ifdef USE_ALARM
120 extern void setAlarm(void);
121 extern AlarmEvent *setAlarmEvent(AlarmEvent * event, int sec, short status,
122                                  int cmd, void *data);
123 #else
124 #define setAlarm nulcmd
125 #endif
126 extern void reinit(void);
127 extern void defKey(void);
128 extern void newT(void);
129 extern void closeT(void);
130 extern void nextT(void);
131 extern void prevT(void);
132 extern void tabA(void);
133 extern void tabURL(void);
134 extern void tabrURL(void);
135 extern void tabR(void);
136 extern void tabL(void);
137 extern void ldDL(void);
138 extern void linkLst(void);
139 #ifdef USE_MENU
140 extern void linkMn(void);
141 extern LinkList *link_menu(Buffer *buf);
142 extern void accessKey(void);
143 extern Anchor *accesskey_menu(Buffer *buf);
144 extern void listMn(void);
145 extern void movlistMn(void);
146 extern Anchor *list_menu(Buffer *buf);
147 #else
148 #define linkMn nulcmd
149 #define accessKey nulcmd
150 #define listMn nulcmd
151 #define movlistMn nulcmd
152 #endif
153 extern void undoPos(void);
154 extern void redoPos(void);
155
156 extern int currentLn(Buffer *buf);
157 extern void tmpClearBuffer(Buffer *buf);
158 extern char *filename_extension(char *patch, int is_url);
159 #ifdef USE_EXTERNAL_URI_LOADER
160 extern void initURIMethods();
161 extern Str searchURIMethods(ParsedURL *pu);
162 extern void chkExternalURIBuffer(Buffer *buf);
163 #endif
164 extern ParsedURL *schemeToProxy(int scheme);
165 extern void examineFile(char *path, URLFile *uf);
166 extern char *acceptableEncoding();
167 extern int dir_exist(char *path);
168 #ifdef USE_M17N
169 extern char **get_symbol(wc_ces charset, int *width);
170 extern char **set_symbol(int width);
171 extern Str convertLine(URLFile *uf, Str line, int mode, wc_ces * charset,
172                        wc_ces doc_charset);
173 #else
174 extern char **get_symbol(void);
175 extern Str convertLine0(URLFile *uf, Str line, int mode);
176 #define convertLine(uf,line,mode,charset,dcharset) convertLine0(uf,line,mode)
177 #endif
178 extern void push_symbol(Str str, char symbol, int width, int n);
179 extern Buffer *loadFile(char *path);
180 extern Buffer *loadGeneralFile(char *path, ParsedURL *current, char *referer,
181                                int flag, FormList *request);
182 extern int is_boundary(unsigned char *, unsigned char *);
183 extern int is_blank_line(char *line, int indent);
184 extern void push_render_image(Str str, int width, int limit,
185                               struct html_feed_environ *h_env);
186 extern void flushline(struct html_feed_environ *h_env, struct readbuffer *obuf,
187                       int indent, int force, int width);
188 extern void do_blankline(struct html_feed_environ *h_env,
189                          struct readbuffer *obuf, int indent, int indent_incr,
190                          int width);
191 extern void purgeline(struct html_feed_environ *h_env);
192 extern void save_fonteffect(struct html_feed_environ *h_env,
193                             struct readbuffer *obuf);
194 extern void restore_fonteffect(struct html_feed_environ *h_env,
195                                struct readbuffer *obuf);
196 #ifdef USE_IMAGE
197 extern void deleteImage(Buffer *buf);
198 extern void getAllImage(Buffer *buf);
199 extern void loadImage(Buffer *buf, int flag);
200 extern ImageCache *getImage(Image * image, ParsedURL *current, int flag);
201 extern int getImageSize(ImageCache * cache);
202 #endif
203 extern Str process_img(struct parsed_tag *tag, int width);
204 extern Str process_anchor(struct parsed_tag *tag, char *tagbuf);
205 extern Str process_input(struct parsed_tag *tag);
206 extern Str process_select(struct parsed_tag *tag);
207 extern Str process_n_select(void);
208 extern void feed_select(char *str);
209 extern void process_option(void);
210 extern Str process_textarea(struct parsed_tag *tag, int width);
211 extern Str process_n_textarea(void);
212 extern void feed_textarea(char *str);
213 extern Str process_form(struct parsed_tag *tag);
214 extern Str process_n_form(void);
215 extern int getMetaRefreshParam(char *q, Str *refresh_uri);
216 extern int HTMLtagproc1(struct parsed_tag *tag,
217                         struct html_feed_environ *h_env);
218 extern void HTMLlineproc2(Buffer *buf, TextLineList *tl);
219 extern void HTMLlineproc0(char *istr, struct html_feed_environ *h_env,
220                           int internal);
221 #define HTMLlineproc1(x,y) HTMLlineproc0(x,y,TRUE)
222 extern Buffer *loadHTMLBuffer(URLFile *f, Buffer *newBuf);
223 extern char *convert_size(clen_t size, int usefloat);
224 extern char *convert_size2(clen_t size1, clen_t size2, int usefloat);
225 extern void showProgress(clen_t * linelen, clen_t * trbyte);
226 extern void init_henv(struct html_feed_environ *, struct readbuffer *,
227                       struct environment *, int, TextLineList *, int, int);
228 extern void completeHTMLstream(struct html_feed_environ *,
229                                struct readbuffer *);
230 extern void loadHTMLstream(URLFile *f, Buffer *newBuf, FILE * src,
231                            int internal);
232 extern Buffer *loadHTMLString(Str page);
233 #ifdef USE_GOPHER
234 extern Str loadGopherDir(URLFile *uf, ParsedURL *pu, wc_ces * charset);
235 #endif                          /* USE_GOPHER */
236 extern Buffer *loadBuffer(URLFile *uf, Buffer *newBuf);
237 #ifdef USE_IMAGE
238 extern Buffer *loadImageBuffer(URLFile *uf, Buffer *newBuf);
239 #endif
240 extern void saveBuffer(Buffer *buf, FILE * f, int cont);
241 extern void saveBufferBody(Buffer *buf, FILE * f, int cont);
242 extern Buffer *getshell(char *cmd);
243 extern Buffer *getpipe(char *cmd);
244 extern Buffer *openPagerBuffer(InputStream stream, Buffer *buf);
245 extern Buffer *openGeneralPagerBuffer(InputStream stream);
246 extern Line *getNextPage(Buffer *buf, int plen);
247 extern int save2tmp(URLFile uf, char *tmpf);
248 extern int doExternal(URLFile uf, char *path, char *type, Buffer **bufp,
249                       Buffer *defaultbuf);
250 extern int _doFileCopy(char *tmpf, char *defstr, int download);
251 #define doFileCopy(tmpf, defstr) _doFileCopy(tmpf, defstr, FALSE);
252 extern int doFileMove(char *tmpf, char *defstr);
253 extern int doFileSave(URLFile uf, char *defstr);
254 extern int checkCopyFile(char *path1, char *path2);
255 extern int checkSaveFile(InputStream stream, char *path);
256 extern int checkOverWrite(char *path);
257 extern char *inputAnswer(char *prompt);
258 extern int matchattr(char *p, char *attr, int len, Str *value);
259 extern void readHeader(URLFile *uf, Buffer *newBuf, int thru, ParsedURL *pu);
260 extern char *checkHeader(Buffer *buf, char *field);
261 extern TabBuffer *newTab(void);
262 extern void calcTabPos(void);
263 extern TabBuffer *deleteTab(TabBuffer * tab);
264 extern void addDownloadList(pid_t pid, char *url, char *save, char *lock,
265                             clen_t size);
266 extern void stopDownload(void);
267 extern int checkDownloadList(void);
268 extern void download_action(struct parsed_tagarg *arg);
269 extern Buffer *newBuffer(int width);
270 extern Buffer *nullBuffer(void);
271 extern void clearBuffer(Buffer *buf);
272 extern void discardBuffer(Buffer *buf);
273 extern Buffer *namedBuffer(Buffer *first, char *name);
274 extern Buffer *deleteBuffer(Buffer *first, Buffer *delbuf);
275 extern Buffer *replaceBuffer(Buffer *first, Buffer *delbuf, Buffer *newbuf);
276 extern Buffer *nthBuffer(Buffer *firstbuf, int n);
277 extern void gotoRealLine(Buffer *buf, int n);
278 extern void gotoLine(Buffer *buf, int n);
279 extern Buffer *selectBuffer(Buffer *firstbuf, Buffer *currentbuf,
280                             char *selectchar);
281 extern void reshapeBuffer(Buffer *buf);
282 extern void copyBuffer(Buffer *a, Buffer *b);
283 extern Buffer *prevBuffer(Buffer *first, Buffer *buf);
284 extern int writeBufferCache(Buffer *buf);
285 extern int readBufferCache(Buffer *buf);
286 extern void fmTerm(void);
287 extern void fmInit(void);
288 extern void displayBuffer(Buffer *buf, int mode);
289 extern void addChar(char c, Lineprop mode);
290 #ifdef USE_M17N
291 extern void addMChar(char *c, Lineprop mode, size_t len);
292 #endif
293 extern void record_err_message(char *s);
294 extern Buffer *message_list_panel(void);
295 extern void message(char *s, int return_x, int return_y);
296 extern void disp_err_message(char *s, int redraw_current);
297 extern void disp_message_nsec(char *s, int redraw_current, int sec, int purge,
298                               int mouse);
299 extern void disp_message(char *s, int redraw_current);
300 #ifdef USE_MOUSE
301 extern void disp_message_nomouse(char *s, int redraw_current);
302 #else
303 #define disp_message_nomouse disp_message
304 #endif
305 extern void set_delayed_message(char *s);
306 extern void cursorUp0(Buffer *buf, int n);
307 extern void cursorUp(Buffer *buf, int n);
308 extern void cursorDown0(Buffer *buf, int n);
309 extern void cursorDown(Buffer *buf, int n);
310 extern void cursorUpDown(Buffer *buf, int n);
311 extern void cursorRight(Buffer *buf, int n);
312 extern void cursorLeft(Buffer *buf, int n);
313 extern void cursorHome(Buffer *buf);
314 extern void arrangeCursor(Buffer *buf);
315 extern void arrangeLine(Buffer *buf);
316 extern void cursorXY(Buffer *buf, int x, int y);
317 extern void restorePosition(Buffer *buf, Buffer *orig);
318 extern int columnSkip(Buffer *buf, int offset);
319 extern int columnPos(Line *line, int column);
320 extern int columnLen(Line *line, int column);
321 extern Line *lineSkip(Buffer *buf, Line *line, int offset, int last);
322 extern Line *currentLineSkip(Buffer *buf, Line *line, int offset, int last);
323 extern int gethtmlcmd(char **s);
324 #ifndef USE_ANSI_COLOR
325 #define checkType(a,b,c) _checkType(a,b)
326 #endif
327 extern Str checkType(Str s, Lineprop **oprop, Linecolor **ocolor);
328 extern int calcPosition(char *l, Lineprop *pr, int len, int pos, int bpos,
329                         int mode);
330 extern char *lastFileName(char *path);
331 extern char *mybasename(char *s);
332 extern char *mydirname(char *s);
333 extern int next_status(char c, int *status);
334 extern int read_token(Str buf, char **instr, int *status, int pre, int append);
335 extern Str correct_irrtag(int status);
336 #ifdef USE_MIGEMO
337 extern void init_migemo(void);
338 #endif
339 #ifdef USE_M17N
340 extern char *conv_search_string(char *str, wc_ces f_ces);
341 #else
342 #define conv_search_string(str, f_ces)  str
343 #endif
344 extern int forwardSearch(Buffer *buf, char *str);
345 extern int backwardSearch(Buffer *buf, char *str);
346 extern void pcmap(void);
347 extern void escmap(void);
348 extern void escbmap(void);
349 extern void escdmap(char c);
350 extern void multimap(void);
351 extern char *inputLineHistSearch(char *prompt, char *def_str, int flag,
352                                  Hist *hist, int (*incfunc) (int ch, Str buf,
353                                                              Lineprop *prop));
354 extern Str unescape_spaces(Str s);
355 #ifdef USE_HISTORY
356 extern Buffer *historyBuffer(Hist *hist);
357 extern void loadHistory(Hist *hist);
358 extern void saveHistory(Hist *hist, size_t size);
359 extern void ldHist(void);
360 #else                           /* not USE_HISTORY */
361 #define ldHist nulcmd
362 #endif                          /* not USE_HISTORY */
363 extern double log_like(int x);
364 extern struct table *newTable(void);
365 extern void pushdata(struct table *t, int row, int col, char *data);
366 extern int visible_length(char *str);
367 extern void align(TextLine *lbuf, int width, int mode);
368 extern void print_item(struct table *t, int row, int col, int width, Str buf);
369 extern void print_sep(struct table *t, int row, int type, int maxcol, Str buf);
370 extern void do_refill(struct table *tbl, int row, int col, int maxlimit);
371 extern void renderTable(struct table *t, int max_width,
372                         struct html_feed_environ *h_env);
373 extern struct table *begin_table(int border, int spacing, int padding,
374                                  int vspace);
375 extern void end_table(struct table *tbl);
376 extern void check_rowcol(struct table *tbl, struct table_mode *mode);
377 extern int minimum_length(char *line);
378 extern int feed_table(struct table *tbl, char *line, struct table_mode *mode,
379                       int width, int internal);
380 extern void feed_table1(struct table *tbl, Str tok, struct table_mode *mode,
381                         int width);
382 extern void pushTable(struct table *, struct table *);
383 extern struct form_list *newFormList(char *action, char *method, char *charset,
384                                      char *enctype, char *target, char *name,
385                                      struct form_list *_next);
386 extern struct form_item_list *formList_addInput(struct form_list *fl,
387                                                 struct parsed_tag *tag);
388 extern char *form2str(FormItemList *fi);
389 extern int formtype(char *typestr);
390 extern void formRecheckRadio(Anchor *a, Buffer *buf, FormItemList *form);
391 extern void formResetBuffer(Buffer *buf, AnchorList *formitem);
392 extern void formUpdateBuffer(Anchor *a, Buffer *buf, FormItemList *form);
393 extern void preFormUpdateBuffer(Buffer *buf);
394 extern Str textfieldrep(Str s, int width);
395 extern void input_textarea(FormItemList *fi);
396 extern void do_internal(char *action, char *data);
397 extern void form_write_data(FILE * f, char *boundary, char *name, char *value);
398 extern void form_write_from_file(FILE * f, char *boundary, char *name,
399                                  char *filename, char *file);
400 extern MapList *searchMapList(Buffer *buf, char *name);
401 extern void follow_map(struct parsed_tagarg *arg);
402 #if defined(MENU_MAP) || defined(USE_IMAGE)
403 extern MapArea *follow_map_menu(Buffer *buf, char *name, Anchor *a_img, int x,
404                                 int y);
405 #endif
406 #ifndef MENU_MAP
407 extern Buffer *follow_map_panel(Buffer *buf, char *name);
408 #endif
409 #ifdef USE_IMAGE
410 extern int getMapXY(Buffer *buf, Anchor *a, int *x, int *y);
411 extern MapArea *retrieveCurrentMapArea(Buffer *buf);
412 #endif
413 extern Anchor *retrieveCurrentMap(Buffer *buf);
414 extern MapArea *newMapArea(char *url, char *target, char *alt, char *shape,
415                            char *coords);
416 extern Buffer *page_info_panel(Buffer *buf);
417 extern struct frame_body *newFrame(struct parsed_tag *tag, Buffer *buf);
418 extern struct frameset *newFrameSet(struct parsed_tag *tag);
419 extern void addFrameSetElement(struct frameset *f,
420                                union frameset_element element);
421 extern void deleteFrame(struct frame_body *b);
422 extern void deleteFrameSet(struct frameset *f);
423 extern void deleteFrameSetElement(union frameset_element e);
424 extern struct frameset *copyFrameSet(struct frameset *of);
425 extern void pushFrameTree(struct frameset_queue **fqpp, struct frameset *fs,
426                           Buffer *buf);
427 extern struct frameset *popFrameTree(struct frameset_queue **fqpp);
428 extern void resetFrameElement(union frameset_element *f_element, Buffer *buf,
429                               char *referer, FormList *request);
430 extern Buffer *renderFrame(Buffer *Cbuf, int force_reload);
431 extern union frameset_element *search_frame(struct frameset *fset, char *name);
432 extern int set_tty(void);
433 extern void set_cc(int spec, int val);
434 extern void close_tty(void);
435 extern char *ttyname_tty(void);
436 extern void reset_tty(void);
437 extern MySignalHandler reset_exit(SIGNAL_ARG);
438 extern MySignalHandler error_dump(SIGNAL_ARG);
439 extern void set_int(void);
440 extern void getTCstr(void);
441 extern void setlinescols(void);
442 extern void setupscreen(void);
443 extern pid_t open_pipe_rw(FILE ** fr, FILE ** fw);
444 extern int initscr(void);
445 extern void move(int line, int column);
446 #ifdef USE_M17N
447 extern void addmch(char *p, size_t len);
448 #endif
449 extern void addch(char c);
450 extern void wrap(void);
451 extern void touch_line(void);
452 extern void standout(void);
453 extern void standend(void);
454 extern void bold(void);
455 extern void boldend(void);
456 extern void underline(void);
457 extern void underlineend(void);
458 extern void graphstart(void);
459 extern void graphend(void);
460 extern int graph_ok(void);
461 #ifdef USE_COLOR
462 extern void setfcolor(int color);
463 #ifdef USE_BG_COLOR
464 extern void setbcolor(int color);
465 #endif                          /* USE_BG_COLOR */
466 #endif                          /* USE_COLOR */
467 extern void refresh(void);
468 extern void clear(void);
469 #ifdef USE_RAW_SCROLL
470 extern void scroll(int);
471 extern void rscroll(int);
472 #endif
473 #if 0
474 extern void need_clrtoeol(void);
475 #endif
476 extern void clrtoeol(void);
477 extern void clrtoeolx(void);
478 extern void clrtobot(void);
479 extern void clrtobotx(void);
480 extern void no_clrtoeol(void);
481 extern void addstr(char *s);
482 extern void addnstr(char *s, int n);
483 extern void addnstr_sup(char *s, int n);
484 extern void crmode(void);
485 extern void nocrmode(void);
486 extern void term_echo(void);
487 extern void term_noecho(void);
488 extern void term_raw(void);
489 extern void term_cooked(void);
490 extern void term_cbreak(void);
491 extern void term_title(char *s);
492 extern void flush_tty(void);
493 extern void toggle_stand(void);
494 extern char getch(void);
495 extern void bell(void);
496 extern int sleep_till_anykey(int sec, int purge);
497 #ifdef USE_IMAGE
498 extern void touch_cursor();
499 #endif
500 extern void initMimeTypes();
501 extern void free_ssl_ctx();
502 extern ParsedURL *baseURL(Buffer *buf);
503 extern int openSocket(char *hostname, char *remoteport_name,
504                       unsigned short remoteport_num);
505 extern void parseURL(char *url, ParsedURL *p_url, ParsedURL *current);
506 extern void copyParsedURL(ParsedURL *p, ParsedURL *q);
507 extern void parseURL2(char *url, ParsedURL *pu, ParsedURL *current);
508 extern Str parsedURL2Str(ParsedURL *pu);
509 extern int getURLScheme(char **url);
510 extern void init_stream(URLFile *uf, int scheme, InputStream stream);
511 Str HTTPrequestMethod(HRequest *hr);
512 Str HTTPrequestURI(ParsedURL *pu, HRequest *hr);
513 extern URLFile openURL(char *url, ParsedURL *pu, ParsedURL *current,
514                        URLOption *option, FormList *request,
515                        TextList *extra_header, URLFile *ouf,
516                        HRequest *hr, unsigned char *status);
517 extern int mailcapMatch(struct mailcap *mcap, char *type);
518 extern struct mailcap *searchMailcap(struct mailcap *table, char *type);
519 extern void initMailcap();
520 extern char *acceptableMimeTypes();
521 extern struct mailcap *searchExtViewer(char *type);
522 extern Str unquote_mailcap(char *qstr, char *type, char *name, char *attr,
523                            int *mc_stat);
524 extern char *guessContentType(char *filename);
525 extern TextList *make_domain_list(char *domain_list);
526 extern int check_no_proxy(char *domain);
527 extern InputStream openFTPStream(ParsedURL *pu, URLFile *uf);
528 #ifdef USE_M17N
529 extern Str loadFTPDir(ParsedURL *pu, wc_ces * charset);
530 #else
531 extern Str loadFTPDir0(ParsedURL *pu);
532 #define loadFTPDir(pu,charset)  loadFTPDir0(pu)
533 #endif
534 extern void closeFTP(void);
535 extern void disconnectFTP(void);
536 #ifdef USE_NNTP
537 extern InputStream openNewsStream(ParsedURL *pu);
538 #ifdef USE_M17N
539 extern Str loadNewsgroup(ParsedURL *pu, wc_ces * charset);
540 #else
541 extern Str loadNewsgroup0(ParsedURL *pu);
542 #define loadNewsgroup(pu,charset) loadNewsgroup0(pu)
543 #endif
544 extern void closeNews(void);
545 extern void disconnectNews(void);
546 #endif
547 extern AnchorList *putAnchor(AnchorList *al, char *url, char *target,
548                              Anchor **anchor_return, char *referer,
549                              char *title, unsigned char key, int line,
550                              int pos);
551 extern Anchor *registerHref(Buffer *buf, char *url, char *target,
552                             char *referer, char *title, unsigned char key,
553                             int line, int pos);
554 extern Anchor *registerName(Buffer *buf, char *url, int line, int pos);
555 extern Anchor *registerImg(Buffer *buf, char *url, char *title, int line,
556                            int pos);
557 extern Anchor *registerForm(Buffer *buf, FormList *flist,
558                             struct parsed_tag *tag, int line, int pos);
559 extern int onAnchor(Anchor *a, int line, int pos);
560 extern Anchor *retrieveAnchor(AnchorList *al, int line, int pos);
561 extern Anchor *retrieveCurrentAnchor(Buffer *buf);
562 extern Anchor *retrieveCurrentImg(Buffer *buf);
563 extern Anchor *retrieveCurrentForm(Buffer *buf);
564 extern Anchor *searchAnchor(AnchorList *al, char *str);
565 extern Anchor *searchURLLabel(Buffer *buf, char *url);
566 extern void reAnchorWord(Buffer *buf, Line *l, int spos, int epos);
567 extern char *reAnchor(Buffer *buf, char *re);
568 #ifdef USE_NNTP
569 extern char *reAnchorNews(Buffer *buf, char *re);
570 extern char *reAnchorNewsheader(Buffer *buf);
571 #endif                          /* USE_NNTP */
572 extern void addMultirowsForm(Buffer *buf, AnchorList *al);
573 extern Anchor *closest_next_anchor(AnchorList *a, Anchor *an, int x, int y);
574 extern Anchor *closest_prev_anchor(AnchorList *a, Anchor *an, int x, int y);
575 #ifdef USE_IMAGE
576 void addMultirowsImg(Buffer *buf, AnchorList *al);
577 #endif
578 extern HmarkerList *putHmarker(HmarkerList *ml, int line, int pos, int seq);
579 extern void shiftAnchorPosition(AnchorList *a, HmarkerList *hl, int line,
580                                 int pos, int shift);
581 extern char *getAnchorText(Buffer *buf, AnchorList *al, Anchor *a);
582 extern Buffer *link_list_panel(Buffer *buf);
583
584 extern Str decodeB(char **ww);
585 extern Str decodeQ(char **ww);
586 extern Str decodeQP(char **ww);
587 extern Str decodeU(char **ww);
588 #ifdef USE_M17N
589 extern Str decodeWord(char **ow, wc_ces * charset);
590 extern Str decodeMIME(Str orgstr, wc_ces * charset);
591 #else
592 extern Str decodeWord0(char **ow);
593 extern Str decodeMIME0(Str orgstr);
594 #define decodeWord(ow,charset) decodeWord0(ow)
595 #define decodeMIME(orgstr,charset) decodeMIME0(orgstr)
596 #endif
597 extern Str encodeB(char *a);
598 extern int set_param_option(char *option);
599 extern char *get_param_option(char *name);
600 extern void init_rc(void);
601 extern Buffer *load_option_panel(void);
602 extern void panel_set_option(struct parsed_tagarg *);
603 extern void sync_with_option(void);
604 extern char *rcFile(char *base);
605 extern char *etcFile(char *base);
606 extern char *confFile(char *base);
607 extern char *auxbinFile(char *base);
608 extern char *libFile(char *base);
609 extern char *helpFile(char *base);
610 extern Str localCookie(void);
611 extern Str loadLocalDir(char *dirname);
612 extern void set_environ(char *var, char *value);
613 extern FILE *localcgi_post(char *, char *, FormList *, char *);
614 #define localcgi_get(u, q, r) localcgi_post((u), (q), NULL, (r))
615 extern FILE *openSecretFile(char *fname);
616 extern void loadPasswd(void);
617 extern void loadPreForm(void);
618 extern int find_auth_user_passwd(ParsedURL *pu, char *realm,
619                                  Str *uname, Str *pwd, int is_proxy);
620 extern void add_auth_user_passwd(ParsedURL *pu, char *realm,
621                                  Str uname, Str pwd, int is_proxy);
622 extern void invalidate_auth_user_passwd(ParsedURL *pu, char *realm,
623                                         Str uname, Str pwd, int is_proxy);
624 extern char *last_modified(Buffer *buf);
625 extern Str romanNumeral(int n);
626 extern Str romanAlphabet(int n);
627 extern void setup_child(int child, int i, int f);
628 extern void myExec(char *command);
629 extern void mySystem(char *command, int background);
630 extern Str myExtCommand(char *cmd, char *arg, int redirect);
631 extern Str myEditor(char *cmd, char *file, int line);
632 extern char *file_to_url(char *file);
633 #ifdef USE_M17N
634 extern char *url_unquote_conv(char *url, wc_ces charset);
635 #else
636 extern char *url_unquote_conv0(char *url);
637 #define url_unquote_conv(url, charset) url_unquote_conv0(url)
638 #endif
639 extern char *expandName(char *name);
640 extern Str tmpfname(int type, char *ext);
641 extern time_t mymktime(char *timestr);
642 extern void (*mySignal(int signal_number, void (*action) (int))) (int);
643 #ifdef USE_COOKIE
644 extern char *FQDN(char *host);
645 extern Str find_cookie(ParsedURL *pu);
646 extern int add_cookie(ParsedURL *pu, Str name, Str value, time_t expires,
647                       Str domain, Str path, int flag, Str comment, int version,
648                       Str port, Str commentURL);
649 extern void save_cookies(void);
650 extern void load_cookies(void);
651 extern void initCookie(void);
652 extern void cooLst(void);
653 extern Buffer *cookie_list_panel(void);
654 extern void set_cookie_flag(struct parsed_tagarg *arg);
655 extern int check_cookie_accept_domain(char *domain);
656 #else                           /* not USE_COOKIE */
657 #define cooLst nulcmd
658 #endif                          /* not USE_COOKIE */
659 #ifdef USE_M17N
660 extern void docCSet(void);
661 extern void defCSet(void);
662 extern void change_charset(struct parsed_tagarg *arg);
663 #else
664 #define docCSet nulcmd
665 #define defCSet nulcmd
666 #endif
667
668 #ifdef USE_MARK
669 extern void _mark(void);
670 extern void nextMk(void);
671 extern void prevMk(void);
672 extern void reMark(void);
673 #else                           /* not USE_MARK */
674 #define _mark  nulcmd
675 #define nextMk nulcmd
676 #define prevMk nulcmd
677 #define reMark nulcmd
678 #endif                          /* not USE_MARK */
679
680 #ifdef USE_MOUSE
681 extern void mouse(void);
682 extern void mouse_init(void);
683 extern void mouse_end(void);
684 extern void mouse_active(void);
685 extern void mouse_inactive(void);
686 extern void msToggle(void);
687 extern void movMs(void);
688 #ifdef USE_MENU
689 extern void menuMs(void);
690 #else
691 #define menuMs nulcmd
692 #endif
693 extern void tabMs(void);
694 extern void closeTMs(void);
695 #else                           /* not USE_MOUSE */
696 #define mouse nulcmd
697 #define msToggle nulcmd
698 #define movMs nulcmd
699 #define menuMs nulcmd
700 #define tabMs nulcmd
701 #define closeTMs nulcmd
702 #endif                          /* not USE_MOUSE */
703
704 #ifdef USE_IMAGE
705 extern void initImage(void);
706 extern void termImage(void);
707 extern void addImage(ImageCache * cache, int x, int y, int sx, int sy, int w,
708                      int h);
709 extern void drawImage(void);
710 extern void clearImage(void);
711 #endif
712
713 extern char *searchKeyData(void);
714
715 extern void setKeymap(char *p, int lineno, int verbose);
716 extern void initKeymap(int force);
717 extern int getFuncList(char *id);
718 extern int getKey(char *s);
719 extern char *getKeyData(int key);
720 extern char *getWord(char **str);
721 extern char *getQWord(char **str);
722 #ifdef USE_MOUSE
723 extern void initMouseAction(void);
724 #endif
725
726 #ifdef USE_MENU
727 extern void new_menu(Menu *menu, MenuItem *item);
728 extern void geom_menu(Menu *menu, int x, int y, int mselect);
729 extern void draw_all_menu(Menu *menu);
730 extern void draw_menu(Menu *menu);
731 extern void draw_menu_item(Menu *menu, int mselect);
732 extern int select_menu(Menu *menu, int mselect);
733 extern void goto_menu(Menu *menu, int mselect, int down);
734 extern void up_menu(Menu *menu, int n);
735 extern void down_menu(Menu *menu, int n);
736 extern int action_menu(Menu *menu);
737 extern void popup_menu(Menu *parent, Menu *menu);
738 extern void guess_menu_xy(Menu *menu, int width, int *x, int *y);
739 extern void new_option_menu(Menu *menu, char **label, int *variable,
740                             void (*func) ());
741
742 extern int setMenuItem(MenuItem *item, char *type, char *line);
743 extern int addMenuList(MenuList **list, char *id);
744 extern int getMenuN(MenuList *list, char *id);
745
746 extern void popupMenu(int x, int y, Menu *menu);
747 extern void mainMenu(int x, int y);
748 extern void mainMn(void);
749 extern void selMn(void);
750 extern void tabMn(void);
751 extern void optionMenu(int x, int y, char **label, int *variable, int initial,
752                        void (*func) ());
753 extern void initMenu(void);
754 #else                           /* not USE_MENU */
755 #define mainMn nulcmd
756 #define selMn selBuf
757 #define tabMn nulcmd
758 #endif                          /* not USE_MENU */
759
760 #ifdef USE_DICT
761 extern void dictword(void);
762 extern void dictwordat(void);
763 #else                           /* not USE_DICT */
764 #define dictword nulcmd
765 #define dictwordat nulcmd
766 #endif                          /* not USE_DICT */
767 #if 0
768 extern void reloadBuffer(Buffer *buf);
769 #endif
770 extern char *guess_save_name(Buffer *buf, char *file);
771
772 extern void wrapToggle(void);
773 #ifdef USE_BUFINFO
774 extern void saveBufferInfo(void);
775 #endif
776
777 extern void dispVer(void);
778
779 #ifdef USE_INCLUDED_SRAND48
780 void srand48(long);
781 long lrand48(void);
782 #endif
783
784 #include "indep.h"