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