Library /sys$common/syshlp/TPUHELP.HLB  —  MOVE_VERTICAL
  MOVE_VERTICAL

  Moves the active editing position up or down in the current buffer by the
  number of rows specified.

  Syntax

     MOVE_VERTICAL (integer)

  Parameters

     integer    The number of rows the editing position moves.  Positive
                values are down (toward the bottom of the buffer).  Negative
                values are up (toward the top of the buffer).

  Comments

  By default, DECTPU keeps the cursor at the same offset on each line.
  However, since DECTPU counts a tab as one character, regardless of how
  wide the tab is, the column position of the cursor may vary greatly from
  line to line even though the offset is the same.

  To keep the cursor in approximately the same column on each line, use the
  following statement:

     SET (COLUMN_MOVE_VERTICAL, ON);

  This statement directs DECTPU to keep the cursor in the same column unless
  a tab character makes this impossible.  If a tab occupies the column
  position, DECTPU moves the cursor to the beginning of the tab.

  Example

  The following procedure moves the current character position by eight-line
  sections and puts the cursor at the start of a line:

     PROCEDURE user_move_by_lines
        IF CURRENT_DIRECTION = FORWARD
           THEN
              MOVE_VERTICAL (+8);          ! down a section
           ELSE
              MOVE_VERTICAL( -8);          ! up a section
        ENDIF;
        MOVE_HORIZONTAL (-CURRENT_OFFSET); ! go to start of line
     ENDPROCEDURE;

  Related topics

     CURSOR_VERTICAL   MOVE_HORIZONTAL   SET(COLUMN_MOVE_VERTICAL)
Close Help