1 /*
2  * 	Highlighted block functions
3  *	Copyright
4  *		(C) 1992 Joseph H. Allen
5  *
6  *	This file is part of JOE (Joe's Own Editor)
7  */
8 
9 extern int square; /* Column / rectangular block mode */
10 extern int lightoff; /* Automatic turn off highlighting */
11 extern P *markb, *markk; /* ^KB and ^KK positions */
12 
13 void pinsrect(P *cur, B *tmp, off_t width, int usetabs);
14 int ptabrect(P *org, off_t height, off_t right);
15 void pclrrect(P *org, off_t height, off_t right, int usetabs);
16 void pdelrect(P *org, off_t height, off_t right);
17 B *pextrect(P *org, off_t height, off_t right);
18 int markv(int r);
19 int umarkb(W *w, int k);
20 int umarkk(W *w, int k);
21 int uswap(W *w, int k);
22 int umarkl(W *w, int k);
23 int utomarkb(W *w, int k);
24 int utomarkk(W *w, int k);
25 int utomarkbk(W *w, int k);
26 int ublkdel(W *w, int k);
27 int upicokill(W *w, int k);
28 int ublkmove(W *w, int k);
29 int ublkcpy(W *w, int k);
30 int dowrite(W *w, char *s, void *object, int *notify);
31 int doinsf(W *w, char *s, void *object, int *notify);
32 void setindent(BW *bw);
33 int urindent(W *w, int k);
34 int ulindent(W *w, int k);
35 int ufilt(W *w, int k);
36 int unmark(W *w, int k);
37 int udrop(W *w, int k);
38 int utoggle_marking(W *w, int k);
39 int ubegin_marking(W *w, int k);
40 int uselect(W *w, int k);
41 int upsh(W *w, int k);
42 int upop(W *w, int k);
43 int ulower(W *w, int k);
44 int uupper(W *w, int k);
45 extern int nstack; /* No. block markers pushed on stack */
46 int blksum(BW *bw, double *,double *);
47 int blklr(BW *bw, double *,double *, double *, double *, double *, int, int);
48 char *blkget(BW *bw);
49 extern int autoswap; /* Automatically swap markb and markk if need to make a valid block */
50 extern int nowmarking; /* Now marking flag (so make block bigger) for Ctrl-arrow key block selection */
51