[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: LYNX-DEV scrollok and lynx_force_repaint
From: |
Klaus Weide |
Subject: |
Re: LYNX-DEV scrollok and lynx_force_repaint |
Date: |
Wed, 5 Nov 1997 20:47:47 -0600 (CST) |
On Wed, 5 Nov 1997, Foteos Macrides wrote:
> You want:
>
> #if defined(FANCY_CURSES) || defined(USE_SLANG)
> if (!enable_scrollback)
> #if defined(VMS) && !defined(USE_SLANG)
> if (form->num_value == OrigNumValue)
> c = DO_NOTHING;
> else
> #endif /* VMS && !USE_SLANG*/
> c = 23;
> else
> #endif /* FANCY_CURSES || USE_SLANG */
> c = 12; /* CTRL-L for repaint */
> break;
>
>
> Only VMS curses can literally DO_NOTHING when the selection
> isn't changed, but neither slang nor Unix curses need the 12 unless
> enable_scrollback is set. With 23, slang and VMS curses will use
> their smart repaint, but Unix curses is still stuck with a brain
> dead repaint (i.e., that's noticeable, even with a T1 line :).
If I understand right, the "brain dead repaint" comes from using clear()
here:
if (refresh_screen) {
clear();
HText_pageDisplay(Newline, prev_target);
There is no clear() in the section a bit above that
if (curdoc.line != Newline) {
refresh_screen = FALSE;
HText_pageDisplay(Newline, prev_target);
So it seems "clear" that HText_pageDisplay() can work fine without
first getting the screen clear()ed (it does clrtoel() for each line).
UNIX curses is doing what it is told, from the man page:
The erase() and werase() routines copy blanks to every posi-
tion in the window.
The clear() and wclear() routines are like erase() and
werase(), but they also call clearok() , so that the screen
is cleared completely on that window and repainted from scratch.
The clear() used with slang was changed in May to not behave like that
any more. It seems, from your description, that the VMS curses never
did. They both seem to act like curses erase(), not like clear().
So is there a good reason not to change that one clear() in mainloop
to an erase()? Is erase available in all curses libs?
Klaus
;
; To UNSUBSCRIBE: Send a mail message to address@hidden
; with "unsubscribe lynx-dev" (without the
; quotation marks) on a line by itself.
;
- LYNX-DEV scrollok and lynx_force_repaint, John E. Davis, 1997/11/04
- Re: LYNX-DEV scrollok and lynx_force_repaint, John E. Davis, 1997/11/05
- Re: LYNX-DEV scrollok and lynx_force_repaint, John E. Davis, 1997/11/05
- Re: LYNX-DEV scrollok and lynx_force_repaint, John E. Davis, 1997/11/05
- Re: LYNX-DEV scrollok and lynx_force_repaint, Foteos Macrides, 1997/11/05
- Re: LYNX-DEV scrollok and lynx_force_repaint,
Klaus Weide <=
- Re: LYNX-DEV scrollok and lynx_force_repaint, Nelson Henry Eric, 1997/11/05
- Re: LYNX-DEV scrollok and lynx_force_repaint, Nelson Henry Eric, 1997/11/06
- Re: LYNX-DEV scrollok and lynx_force_repaint, John E. Davis, 1997/11/06
- Re: LYNX-DEV scrollok and lynx_force_repaint, Nelson Henry Eric, 1997/11/06