TCursorToggle(toggle) int toggle;
TCursorToggle(int toggle)
TCursorToggle(toggle)    int toggle;			/* TOGGLE or CLEAR */{	register TScreen *screen = &term->screen;	register int c, x, y;	unsigned int cellwidth, cellheight;	if (!screen->Tshow) return;	c = screen->cur.fontsize;	cellwidth = (unsigned) tekWidget->tek.Tfont[c]->max_bounds.width;	cellheight = (unsigned) (tekWidget->tek.Tfont[c]->ascent + 				 tekWidget->tek.Tfont[c]->descent);	x = (screen->cur_X * TekScale(screen)) + screen->border;	y = ((TEKHEIGHT + TEKTOPPAD - screen->cur_Y) * TekScale(screen)) +	    screen->border - tekWidget->tek.tobaseline[c];	if (toggle == TOGGLE) {	   if (screen->select || screen->always_highlight) 	       XFillRectangle(screen->display, TWindow(screen),			      screen->TcursorGC, x, y,			      cellwidth, cellheight);	   else { /* fix to use different GC! */	       XDrawRectangle(screen->display, TWindow(screen),			      screen->TcursorGC, x, y,			      cellwidth-1, cellheight-1);	   }	} else {	    /* Clear the entire rectangle, even though we may only	     * have drawn an outline.  This fits with our refresh	     * scheme of redrawing the entire window on any expose	     * event and is easier than trying to figure out exactly	     * which part of the cursor needs to be erased.	     */	    XClearArea(screen->display, TWindow(screen), x, y,		       cellwidth, cellheight, FALSE);	}}