**  We update NumOfLines_partial only when we repaint the display. **  -1 is the special value: **  This is a synchronization flag switched to 0 when HText_new() **  starts a new HTMainText object - all HText_ functions use it, **  lines counter in particular [we call it from HText_getNumOfLines()].
**  display_partial could only be enabled in HText_new() **  so a new HTMainText object available - all HText_ functions use it, **  lines counter HText_getNumOfLines() in particular.
PUBLIC void HTDisplayPartial NOARGS{#ifdef DISP_PARTIAL    if (display_partial) {	/*	**  HText_getNumOfLines() = "current" number of lines received	**  NumOfLines_partial = number of lines at the moment of last repaint.	**	**  We update NumOfLines_partial only when we repaint the display.	**  -1 is the special value:	**  This is a synchronization flag switched to 0 when HText_new()	**  starts a new HTMainText object - all HText_ functions use it,	**  lines counter in particular [we call it from HText_getNumOfLines()].	**	**  Otherwise HTMainText holds info from the previous document	**  and we may repaint it instead of the new one:	**  prev doc scrolled to the first line (=Newline_partial)	**  is not good looking :-)	  23 Aug 1998 Leonid Pauzner	**	**  So repaint the page only when necessary:	*/	if ((NumOfLines_partial != -1)		/* new HText object available  */	&& ((Newline_partial + display_lines) > NumOfLines_partial)		/* current page not complete... */	&& (partial_threshold > 0 ?		((Newline_partial + partial_threshold) < HText_getNumOfLines()) :		((Newline_partial + display_lines) < HText_getNumOfLines()))		/*		 * Originally we rendered by increments of 2 lines,		 * but that got annoying on slow network connections.		 * Then we switched to full-pages.  Now it's configurable.		 * If partial_threshold <= 0, then it's a full page		 */	) {	    NumOfLines_partial = HText_getNumOfLines();	    HText_pageDisplay(Newline_partial, "");	}    }#else /* nothing */#endif  /* DISP_PARTIAL */}