Jump to content

VioScrollRt: Difference between revisions

From EDM2
Ak120 (talk | contribs)
Ak120 (talk | contribs)
mNo edit summary
 
(2 intermediate revisions by 2 users not shown)
Line 1: Line 1:
==Description==
This call scrolls the entire display buffer (or area specified within the display buffer) to the right.
This call scrolls the entire display buffer (or area specified within the display buffer) to the right.
==Syntax==
==Syntax==
<PRE>
  VioScrollRt (TopRow, LeftCol, BotRow, RightCol, Lines, Cell, VioHandle)
  VioScrollRt


    (TopRow, LeftCol, BotRow, RightCol, Lines, Cell, VioHandle)
</PRE>
==Parameters==
==Parameters==
; TopRow (USHORT) - input : Top row to be scrolled.  
;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 left 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.


; 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 left 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==
==Return Code==
rc (USHORT) - return
;rc (USHORT) - return:Return code descriptions are:
 
*0    NO_ERROR
Return code descriptions are:
*355 ERROR_VIO_MODE  
 
*358 ERROR_VIO_ROW  
* 0    NO_ERROR  
*359 ERROR_VIO_COL  
* 355       ERROR_VIO_MODE  
*436 ERROR_VIO_INVALID_HANDLE  
*358       ERROR_VIO_ROW  
*465 ERROR_VIO_DETACHED
*359       ERROR_VIO_COL  
*436       ERROR_VIO_INVALID_HANDLE  
*465       ERROR_VIO_DETACHED


==Remarks==
==Remarks==
Line 38: Line 27:
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 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.  
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.
==Example Code==
 
=== C Binding===
==Bindings==
===C===
<PRE>
<PRE>
#define INCL_VIO
#define INCL_VIO


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


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


USHORT           rc;            /* return code */
USHORT rc;            /* return code */
</PRE>
</PRE>


=== MASM Binding===
===MASM===
<PRE>
<PRE>
EXTRN  VioScrollRt:FAR
EXTRN  VioScrollRt:FAR
INCL_VIO            EQU 1
INCL_VIO            EQU 1


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


Returns WORD
Returns WORD
</PRE>
</PRE>
==Related Functions==
==Related Functions==
*  
* [[VioScrollLf]]
 


[[Category:The OS/2 API Project]]
[[Category:Vio]]

Latest revision as of 21:16, 1 January 2020

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

Syntax

VioScrollRt (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 left 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 = VioScrollRt(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  VioScrollRt: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   VioScrollRt

Returns WORD

Related Functions