Jump to content

MouSetScaleFact (OS/2 1.x): Difference between revisions

From EDM2
Ak120 (talk | contribs)
Ak120 (talk | contribs)
mNo edit summary
 
(One intermediate revision by one other user not shown)
Line 5: Line 5:


==Parameters==
==Parameters==
;ScaleStruct (PSCALEFACT) - input : Address of the control block structure that contains the current row and column coordinate scaling factors. The scaling factors must be greater than or equal to 1 and less than or equal to (32K - 1).
;ScaleStruct (P[[SCALEFACT]]) - input : Address of the control block structure that contains the current row and column coordinate scaling factors.
:rowscale (USHORT) : Row scaling factor.
:colscale (USHORT) : Column scaling factor.
;DeviceHandle (HMOU) - input : Handle of the mouse device from a previous MouOpen.
;DeviceHandle (HMOU) - input : Handle of the mouse device from a previous MouOpen.


==Return Code==
==Return Code==
rc (USHORT) - return
;rc (USHORT) - return:Return code descriptions are:
Return code descriptions are:
*0 NO_ERROR
* 0         NO_ERROR  
*385 ERROR_MOUSE_NO_DEVICE
* 385       ERROR_MOUSE_NO_DEVICE  
*387 ERROR_MOUSE_INV_PARMS
* 387       ERROR_MOUSE_INV_PARMS  
*466 ERROR_MOU_DETACHED
* 466       ERROR_MOU_DETACHED  
*501 ERROR_MOUSE_NO_CONSOLE
* 501       ERROR_MOUSE_NO_CONSOLE  
*505 ERROR_MOU_EXTENDED_SG
* 505       ERROR_MOU_EXTENDED_SG


==Remarks==
==Remarks==
MouSetScaleFact sets the mickey-to-pixel ratio for mouse motion. The row scale and column scale ratios specify a number of mickeys for each 8 pixels. The default value for the row scale is 16 mickeys for each 8 pixels. The default value for the column scale is 8 mickeys to 8 pixels.
MouSetScaleFact sets the mickey-to-pixel ratio for mouse motion. The row scale and column scale ratios specify a number of mickeys for each 8 pixels. The default value for the row scale is 16 mickeys for each 8 pixels. The default value for the column scale is 8 mickeys to 8 pixels.


The number of pixels moved does not have to correspond 1-to-1 with the number of mickeys the mouse moves. The scaling factor defines a sensitivity for the mouse that is a ratio of the number of mickeys required to move the cursor 8 pixels on the screen. The sensitivity determines at what rate the cursor moves on the screen.  
The number of pixels moved does not have to correspond 1-to-1 with the number of mickeys the mouse moves. The scaling factor defines a sensitivity for the mouse that is a ratio of the number of mickeys required to move the cursor 8 pixels on the screen. The sensitivity determines at what rate the cursor moves on the screen.


==Example Code==
==Bindings==
===C Binding===
===C===
<PRE>
<PRE>
typedef struct _SCALEFACT {   /* mousc */
typedef struct _SCALEFACT { /* mousc */
   USHORT rowScale;           /* row scaling factor */
   USHORT rowScale;         /* row scaling factor */
   USHORT colScale;           /* column coordinate scaling factor */
   USHORT colScale;         /* column coordinate scaling factor */
} SCALEFACT;
} SCALEFACT;


Line 37: Line 34:
USHORT  rc = MouSetScaleFact(ScaleStruct, DeviceHandle);
USHORT  rc = MouSetScaleFact(ScaleStruct, DeviceHandle);


PSCALEFACT       ScaleStruct;  /* 2-word structure */
PSCALEFACT ScaleStruct;  /* 2-word structure */
HMOU             DeviceHandle;  /* Mouse device handle */
HMOU       DeviceHandle;  /* Mouse device handle */


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


===MASM Binding===
===MASM===
<PRE>
<PRE>
SCALEFACT struc
SCALEFACT struc
Line 59: Line 56:
Returns WORD
Returns WORD
</PRE>
</PRE>
==Related Functions==
*


[[Category:Mou]]
[[Category:Mou]]

Latest revision as of 22:10, 11 December 2019

This call assigns to the current mouse device driver a new pair of 1-word scaling factors.

Syntax

MouSetScaleFact (ScaleStruct, DeviceHandle)

Parameters

ScaleStruct (PSCALEFACT) - input
Address of the control block structure that contains the current row and column coordinate scaling factors.
DeviceHandle (HMOU) - input
Handle of the mouse device from a previous MouOpen.

Return Code

rc (USHORT) - return
Return code descriptions are:
  • 0 NO_ERROR
  • 385 ERROR_MOUSE_NO_DEVICE
  • 387 ERROR_MOUSE_INV_PARMS
  • 466 ERROR_MOU_DETACHED
  • 501 ERROR_MOUSE_NO_CONSOLE
  • 505 ERROR_MOU_EXTENDED_SG

Remarks

MouSetScaleFact sets the mickey-to-pixel ratio for mouse motion. The row scale and column scale ratios specify a number of mickeys for each 8 pixels. The default value for the row scale is 16 mickeys for each 8 pixels. The default value for the column scale is 8 mickeys to 8 pixels.

The number of pixels moved does not have to correspond 1-to-1 with the number of mickeys the mouse moves. The scaling factor defines a sensitivity for the mouse that is a ratio of the number of mickeys required to move the cursor 8 pixels on the screen. The sensitivity determines at what rate the cursor moves on the screen.

Bindings

C

typedef struct _SCALEFACT { /* mousc */
  USHORT rowScale;          /* row scaling factor */
  USHORT colScale;          /* column coordinate scaling factor */
} SCALEFACT;

#define INCL_MOU

USHORT  rc = MouSetScaleFact(ScaleStruct, DeviceHandle);

PSCALEFACT ScaleStruct;   /* 2-word structure */
HMOU       DeviceHandle;  /* Mouse device handle */

USHORT     rc;            /* return code */

MASM

SCALEFACT struc
  mousc_rowScale  dw  ? ;row scaling factor
  mousc_colScale  dw  ? ;column coordinate scaling factor
SCALEFACT ends

EXTRN  MouSetScaleFact:FAR
INCL_MOU            EQU 1

PUSH@  OTHER   ScaleStruct   ;2-word structure
PUSH   WORD    DeviceHandle  ;Mouse device handle
CALL   MouSetScaleFact

Returns WORD