* Copyright (c) 1983 Regents of the University of California.
* This code is derived from software contributed to Berkeley by
* Edward Wang at The University of California, Berkeley.
* Redistribution and use in source and binary forms are permitted provided
* that: (1) source distributions retain this entire copyright notice and
* comment, and (2) distributions including binaries display the following
* acknowledgement: ``This product includes software developed by the
* University of California, Berkeley and its contributors'' in the
* documentation or other materials provided with the distribution and in
* all advertising materials mentioning features or use of this software.
* Neither the name of the University nor the names of its contributors may
* be used to endorse or promote products derived from this software without
* specific prior written permission.
* THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED
* WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
static char sccsid
[] = "@(#)wwlabel.c 3.17 (Berkeley) 6/6/90";
* at 1 line above w and 'where' columns from it's left edge.
wwlabel(w
, f
, where
, l
, mode
)
register union ww_char
*buf
;
register union ww_char
*ns
;
if (row
< f
->ww_i
.t
|| row
>= f
->ww_i
.b
)
touched
= wwtouched
[row
];
jj
= MIN(w
->ww_i
.r
, f
->ww_i
.r
);
for (p
= unctrl(*l
++); j
< jj
&& *p
; j
++, p
++) {
/* can't label if not already framed */
if (smap
[j
] != f
->ww_index
)
ns
[j
].c_w
= (buf
[j
].c_w
= mode
| *p
)
wwtouched
[row
] = touched
;