en:docs:fapi:viosetcurtype
no way to compare when less than two revisions

Differences

This shows you the differences between two versions of the page.


Next revision
en:docs:fapi:viosetcurtype [2018/09/01 10:02] – created prokushev
Line 1: Line 1:
 +
 +This call sets the cursor type.
 +
 +==Syntax==
 + VioSetCurType (CursorData, VioHandle)
 +
 +==Parameters==
 +;CursorData (PVIOCURSORINFO) - input : Address of the cursor characteristics structure:
 +:startline (USHORT) : Horizontal scan line in the character cell that marks the top line of the cursor. If the character cell has n scan lines, 0 is the top scan line of the character cell and (n - 1) is the bottom scan line. 
 +:endline (USHORT) : Horizontal scan line in the character cell that marks the bottom line of the cursor. Scan lines within a character cell are numbered as defined in startline. The maximum value allowed is 31. 
 +:cursorwidth (USHORT) : Width of the cursor. In text modes, cursorwidth is the number of columns. The maximum number supported by the OS/2 base video subsystem is 1. In graphics modes, cursorwidth is the number of pels.
 +::A value of 0 specifies the default width. In text modes, this is 1 column. In graphics modes, this is the number of pels equivalent to the width of one character. 
 +:cursorattrib (USHORT) : A value of -1 denotes a hidden cursor, all other values denote a normal cursor.
 +;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 
 +* 356        ERROR_VIO_WIDTH 
 +* 421        ERROR_VIO_INVALID_PARMS 
 +* 436        ERROR_VIO_INVALID_HANDLE 
 +* 465        ERROR_VIO_DETACHED
 +
 +==Remarks==
 +
 +==Example Code==
 +=== C Binding===
 +<PRE>
 +typedef struct _VIOCURSORINFO {  /* vioci */
 +  USHORT   yStart;               /*cursor start line */
 +  USHORT   cEnd;                 /* cursor end line */
 +  USHORT   cx;                   /* cursor width */
 +  USHORT   attr;                 /* -1=hidden cursor, any other=normal
 +                                       cursor */
 +} VIOCURSORINFO;
 +
 +#define INCL_VIO
 +
 +USHORT  rc = VioSetCurType(CursorData, VioHandle);
 +
 +PVIOCURSORINFO   CursorData;    /* Cursor characteristics */
 +HVIO             VioHandle;     /* Video handle */
 +
 +USHORT           rc;            /* return code */
 +</PRE>
 +
 +===MASM Binding===
 +<PRE>
 +VIOCURSORINFO struc
 +  vioci_yStart dw  ? ;cursor start line
 +  vioci_cEnd   dw  ? ;cursor end line
 +  vioci_cx     dw  ? ;cursor width
 +  vioci_attr   dw  ? ;-1=hidden cursor, any other=normal cursor
 +VIOCURSORINFO ends
 +
 +EXTRN  VioSetCurType:FAR
 +INCL_VIO            EQU 1
 +
 +PUSH@  OTHER   CursorData    ;Cursor characteristics
 +PUSH   WORD    VioHandle     ;Video handle
 +CALL   VioSetCurType
 +
 +Returns WORD
 +</PRE>
 +
 +
 +
 +
 +====== Note ======
 +
 +Text based on [[http://www.edm2.com/index.php/VioSetCurType_(FAPI)]]
 +
 +{{page>en:templates:fapi}}
 +