[comp.mail.elm] Clearing the screen in elm

ramsey@malathion (Ed Ramsey) (08/07/90)

I was wondering if there were any specific reason elm doesn't
repaint/redraw the screen after having been suspended and
returned to.  Elm displays a message to the effect that "you may
want to redraw the screen", but doesn't provide any way to do
that.  Along the same lines, dialup users who experience line
noise don't have any simple way to request a redraw.

Is a screen redraw option something that can be added?

-Ed

-- 

Ed Ramsey  NPIRS User Services Manager Ramsey@npirs.purdue.edu
     "You gave your life to become the person you are right now.
        Was it worth it?"    Richard Bach, *One*

syd@DSI.COM (Syd Weinstein) (08/07/90)

ramsey@malathion (Ed Ramsey) writes:
>I was wondering if there were any specific reason elm doesn't
>repaint/redraw the screen after having been suspended and
>returned to.  Elm displays a message to the effect that "you may
>want to redraw the screen", but doesn't provide any way to do
>that.  Along the same lines, dialup users who experience line
>noise don't have any simple way to request a redraw.
One more for the frequently asked questions....

Due to Elm's mini curses internal stuff, it doesn't know whats
on the screen, so it cannot redraw it.  It can repaint the menu,
or the list of messages, but that might not be what is on the screen.

We had planned to go to a real curses a while back, but couldn't
really get a portable set of curses routines working, so we punted it.
(too many bugs in too many manf. curses packages).

>Is a screen redraw option something that can be added?
not easily.

-- 
=====================================================================
Sydney S. Weinstein, CDP, CCP                   Elm Coordinator
Datacomp Systems, Inc.                          Voice: (215) 947-9900
syd@DSI.COM or dsinc!syd                        FAX:   (215) 938-0235

craig@fouriron.UUCP (Craig S. Cochran) (08/08/90)

In article <244@malathion> ramsey@malathion (Ed Ramsey) writes:
>I was wondering if there were any specific reason elm doesn't
>repaint/redraw the screen after having been suspended and
>returned to.  Elm displays a message to the effect that "you may
>want to redraw the screen", but doesn't provide any way to do
>that...

Good point.
Most curses-based applications automatically get a redraw
from curses when a SIGCONT (signal 19) is received, which is
sent by the kernel when an "fg" or "bg" is requested.  Usually
this takes no extra programming effort - it's built into curses.

My best guess is that this is a feature of the built-in curses
packaged with Elm, and that it has not been fixed since the
development group eventually plans to migrate Elm to stock
system-supplied curses, which should fix the problem (if this
is the problem).  Is this a correct assumption, developers?

>  ...  Along the same lines, dialup users who experience line
>noise don't have any simple way to request a redraw.
>Is a screen redraw option something that can be added?

It's already implemented.  Try typing "Cntl-L".  ("Cntl-L", by the
way, is a partial Unix standard for screen refresh).

-- 
Craig S. Cochran                           Valid Logic Systems
Path:  {sun,decwrl}!valid!ccochran         2820 Orchard Parkway
Voice: 408/944-8037                        San Jose, CA  95134

craig@calvin.UUCP (Craig S. Cochran) (08/10/90)

In article <1990Aug7.164242.11518@DSI.COM> syd@DSI.COM writes:
>
>Due to Elm's mini curses internal stuff, it doesn't know whats
>on the screen, so it cannot redraw it.  It can repaint the menu,
>or the list of messages, but that might not be what is on the screen.
>
>We had planned to go to a real curses a while back, but couldn't
>really get a portable set of curses routines working, so we punted it.
>(too many bugs in too many manf. curses packages).

Hmm.  It's unfortunate that this effort was scrubbed.  Using a
system-supplied curses would solve many problems, such as this
screen-clearing issue.

Might I suggest that we add a Configure option to use the system-supplied
curses and let the system administrator decide which works best?  This way,
if the system's curses are not bug-ridden, user's can get the full
functionality of curses.  If they do have problems with the
system-supplied curses, then they can Configure in Elm's mini-curses.

With this approach, there would be no additional support requirements
from the development group to work around system curses bugs.

-Craig

-- 
Craig S. Cochran                           Valid Logic Systems
Path:  {sun,decwrl}!valid!ccochran         2820 Orchard Parkway
Voice: 408/944-8037                        San Jose, CA  95134

syd@DSI.COM (Syd Weinstein) (08/10/90)

craig@calvin.UUCP (Craig S. Cochran) writes:

:In article <1990Aug7.164242.11518@DSI.COM> syd@DSI.COM writes:
:>We had planned to go to a real curses a while back, but couldn't
:>really get a portable set of curses routines working, so we punted it.
:>(too many bugs in too many manf. curses packages).

:Hmm.  It's unfortunate that this effort was scrubbed.  Using a
:system-supplied curses would solve many problems, such as this
:screen-clearing issue.

:Might I suggest that we add a Configure option to use the system-supplied
:curses and let the system administrator decide which works best?
Won't work, the going to curses was going to be a complete rewrite
of the screen stuff.  The internal stuff is really just terminfo/termcap
routines.  Its not compatible, nor is it really using curses.

Again, if it was that easy, we would have done it.  Its a shame.
-- 
=====================================================================
Sydney S. Weinstein, CDP, CCP                   Elm Coordinator
Datacomp Systems, Inc.                          Voice: (215) 947-9900
syd@DSI.COM or dsinc!syd                        FAX:   (215) 938-0235