/sys$common/syshlp/TPUHELP.HLB  —  SET(SCROLLING)
  SET(SCROLLING)

  Controls either of two scrolling characteristics, depending on the format
  used.  The first format shown in the SYNTAX section controls values for
  the scroll margins (the points at the top and bottom of a window that
  trigger vertical scrolling).  Note that setting top and bottom scroll
  margins has no effect on the cursor's horizontal movement during
  scrolling--the cursor remains in the same column during this operation.

  The second format controls whether scrolled text is repainted all at once
  (jump scrolling) or a line at a time (smooth scrolling).  Note that you
  can set TPU scrolling behavior to the jump setting or the smooth
  setting regardless of whether the terminal scrolling mode is set to the
  jump setting or the smooth setting.  For example, if you set the terminal
  to SMOOTH SCROLL and set TPU scrolling mode to the jump setting, text
  slides smoothly out of the window, but new text is not repainted until all
  currently specified scroll operations are completed.

  Syntax

     SET (SCROLLING, window, {OFF | ON}, integer1, integer2, integer3)
        or
     SET (SCROLLING, {JUMP | SMOOTH})

  Parameters

     window     The window in which scrolling limits are to be set.

     OFF        Disables scrolling.  The screen is repainted each time a
                scroll would otherwise occur.

     ON         Enables scrolling.

     integer1   The offset from the top screen line of the window,
                identifying the top limit of an area in which the cursor can
                move as it tracks the current character position.  If the
                cursor moves above this screen line, lines in the window
                scroll down so the cursor stays within the limits of the
                cursor area.

     integer2   The offset from the bottom screen line of the window,
                identifying the bottom limit of an area in which the cursor
                can move as it tracks the current character position.  If
                the cursor moves below this screen line, lines in the window
                scroll up so the cursor stays within the limits of the
                cursor area.

     integer3   An integer specifying how many lines from the top or bottom
                of the cursor area (defined by integer1 and integer2) the
                cursor should be positioned when a window is scrolled.  For
                example, if the bottom of the cursor area is 14 and integer3
                is 0, when text is scrolled up, the cursor is put on screen
                line 14.  If integer3 is 3, the cursor is put on screen line
                11.

     JUMP       A keyword indicating that TPU should not repaint scrolled
                text until all currently specified scroll operations are
                completed.  When scrolling is set to jump mode, scrolled
                text appears to jump from one point in the window to
                another.  Scrolling is faster in jump mode, but the text in
                the window may look odd during repainting.  To determine if
                the scrolling mode has been set to the jump setting, use the
                built-in GET_INFO (SCREEN, "jump_scroll").  A return value
                of 1 indicates that the jump setting is in effect.

     SMOOTH     A keyword indicating that, during scrolling, TPU should
                repaint each new line of text as it is brought into the
                window.  When scrolling is set to smooth mode, the text
                appears to slide smoothly in and out of the window.  This
                setting is the default.  To determine if the scrolling mode
                has been set to the smooth setting, use the built-in
                GET_INFO (SCREEN, "jump_scroll").  A return value of 0
                indicates that the smooth setting is in effect.

  Examples

  1.  SET (SCROLLING, main_window, ON, 0, 0, 2);

      Causes the main window to scroll as follows:  when the cursor reaches
      the top or bottom of the window, lines are moved off the screen to
      make room for new lines.  The cursor is positioned on a line that is
      offset 2 lines from the either the top or bottom, depending on the
      direction in which you are scrolling.

  2.  SET (SCROLLING, main_window, ON, 0, 0, 21);

      Does the same thing as Example 1 -- except, if the main window is 21
      lines long, the cursor is repositioned at the top or bottom of the
      window, depending on the direction in which you are scrolling.  Thus,
      each time a scrolling occurs, an entire window's worth of text
      appears.

  3.  SET (SCROLLING, JUMP);

      Causes TPU to refrain from repainting any new lines of text during
      scrolling until all currently specified scroll operations have been
      completed.

  Related topics

     GET_INFO(SCREEN)   SCROLL   SET(CROSS_WINDOW_BOUNDS)

     SET(FORWARD)   SET(REVERSE)
Close Help