HP 3000 Manuals

Refreshing the Terminal [ HP ALLBASE/BRW Reference Manual ] MPE/iX 5.0 Documentation


HP ALLBASE/BRW Reference Manual

Refreshing the Terminal 

The BRWSTARTREQUEST intrinsic calls BRWSTART.PUB.SYS, which switches your
terminal to block-mode.  Your application program will have to refresh
the terminal after control has been passed from BRWSTART back to your
application.  The method used to refresh your terminal varies depending
upon whether your application program uses block mode or character mode.

Character Mode 

If your application uses character mode, call VOPENTERM to turn your
terminal to block mode before using BRWSTARTREQUEST. After control is
returned to your application program, you should call VCLOSETERM to
switch your terminal back to character mode.  If your application uses
function key labels, you must redisplay the labels after leaving
BRWSTARTREQUEST.

Block Mode 

If your application uses block mode, (that is, it uses VPLUS), you might
want the screen that was displayed before the call to BRWSTARTREQUEST to
be redisplayed after returning from the intrinsic.  To do this you will
have to first clear and reset the terminal, using $REFRESH as the nfname
parameter value in a call to VGETNEXTFORM. (See the VPLUS manual for a
full description).  Then you must display the previous form using
VSHOWFORM. If you have defined your own function key labels, you will
have to display them before calling VSHOWFORM.

The following PASCAL program fragment gives an example of the process for
character mode.
_____________________________________________________________
|                                                           |
|     TYPE fmt_vp_comarea = RECORD                          |
|                                                           |
|       cstatus     : short_int;                            |
|       language    : short_int;                            |
|       comarea_len : short_int;                            |
|       filler      : ARRAY [1..50] OF short_int;           |
|        .                                                  |
|        .                                                  |
|                                                           |
|      END; {RECORD}                                        |
|                                                           |
|      VAR                                                  |
|       vp_comarea  : fmt_vp_comarea;                       |
|       terminal    ; PACKED ARRAY [1..8] OF CHAR;          |
|                                                           |
|      BEGIN                                                |
|       Terminal := 'Testterm';                             |
|                                                           |
|       WITH vp_comarea DO                                  |
|       BEGIN                                               |
|         cstatus  := 0;                                    |
|         language := 5;                                    |
|         comarea_len := 60;                                |
|       END;                                                |
|                                                           |
|       VOPENTERM (vp_comarea,terminal);                    |
|       BRWSTARTREQUEST (REQUEST_COMAREA, parm_defaults);   |
|       VCLOSETERM (vp_comarea);                            |
|                                                           |
|      { Then re-display the function key labels and screen}|
|                                                           |
|      END.                                                 |
_____________________________________________________________

            

The following PASCAL program fragment gives an example of the process for
block mode.
__________________________________________________________
|                                                        |
|      TYPE fmt_vp_comarea = RECORD                      |
|                                                        |
|       cstatus     : short_int;                         |
|       language    : short_int;                         |
|       comarea_len : short_int;                         |
|        .                                               |
|        .                                               |
|       nfname      : PACKED ARRAY [1..16] OF CHAR;      |
|        .                                               |
|                                                        |
|      END; {RECORD}                                     |
|                                                        |
|      VAR                                               |
|       vp_comarea  : fmt_vp_comarea;                    |
|                                                        |
|      BEGIN                                             |
|                                                        |
|       BRWSTARTREQUEST (REQUEST_COMAREA, parm_defaults);|
|       vp_comarea.nfname := '$REFRESH';                 |
|       VGETNEXTFORM (vp_comarea);                       |
|                                                        |
|      { Then re-display the function key labels }       |
|                                                        |
|       VSHOWFORM (vp_comarea)                           |
|                                                        |
|      END.                                              |
__________________________________________________________

            



MPE/iX 5.0 Documentation