VioScrollLf

From EDM2
Jump to: navigation, search

This call scrolls the entire display buffer (or area specified within the display buffer) to the left.

Syntax

VioScrollLf (TopRow, LeftCol, BotRow, RightCol, Lines, Cell, VioHandle)

Parameters

TopRow (USHORT) - input 
Top row to be scrolled.
LeftCol (USHORT) - input 
Left column to be scrolled.
BotRow (USHORT) - input 
Bottom row to be scrolled.
RightCol (USHORT) - input 
Right column to be scrolled.
Lines (USHORT) - input 
Number of columns to be inserted at the right of the screen area being scrolled. If 0 is specified, no lines are scrolled.
Cell (PBYTE) - input 
Address of the character attribute(s) pair (2 or 4 bytes) used as a fill character on inserted columns.
VioHandle (HVIO) - input 
This must be zero unless the caller is a Presentation Manager application, in which case it must be the value returned by VioGetPs.

Return Code

rc (USHORT) - return
Return code descriptions are:
  • 0 NO_ERROR
  • 355 ERROR_VIO_MODE
  • 358 ERROR_VIO_ROW
  • 359 ERROR_VIO_COL
  • 436 ERROR_VIO_INVALID_HANDLE
  • 465 ERROR_VIO_DETACHED

Remarks

TopRow = 0 and LeftCol = 0 identifies the top left corner of the screen.

If a value greater than the maximum value is specified for TopRow, LeftCol, BotRow, RightCol, or Lines, the maximum value for that parameter is used.

If TopRow and LeftCol = 0 and if BotRow, RightCol, and Lines = 65535 (or -1 in assembler language), the entire screen is filled with the character-attribute pair defined by Cell.

Bindings

C

#define INCL_VIO

USHORT  rc = VioScrollLf(TopRow, LeftCol, BotRow, RightCol, Lines, Cell, VioHandle);

USHORT  TopRow;        /* Top row */
USHORT  LeftCol;       /* Left column */
USHORT  BotRow;        /* Bottom row */
USHORT  RightCol;      /* Right column */
USHORT  Lines;         /* Number of lines */
PBYTE   Cell;          /* Cell to be written */
HVIO    VioHandle;     /* Video Handle */

USHORT  rc;            /* return code */

MASM

EXTRN  VioScrollLf:FAR
INCL_VIO            EQU 1

PUSH   WORD    TopRow        ;Top row
PUSH   WORD    LeftCol       ;Left column
PUSH   WORD    BotRow        ;Bottom row
PUSH   WORD    RightCol      ;Right column
PUSH   WORD    Lines         ;Number of lines
PUSH@  OTHER   Cell          ;Cell to be written
PUSH   WORD    VioHandle     ;Video Handle
CALL   VioScrollLf

Returns WORD