en:docs:fapi:viosetcurtype

Differences

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

Link to this comparison view

en:docs:fapi:viosetcurtype [2018/09/01 12:02] (current)
prokushev created
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}}
 +
  

en/docs/fapi/viosetcurtype.txt · Last modified: 2018/09/01 12:02 by prokushev