XkbSAPtrDfltValue - Returns the valueXXX field of act converted to a signed int


int XkbSAPtrDfltValue (XkbAction act );


  • - act
        action from which to extract group


Actions associated with the XkbPtrDfltAction structure change the mk_dflt_btn attribute of the MouseKeys control. If the MouseKeys control is not enabled, KeyPress and KeyRelease events are treated as though the action is XkbSA_NoAction. Otherwise, this action changes the mk_dflt_btnattribute of the MouseKeys control. The typefield of the XkbPtrDfltAction structure should always be XkbSA_SetPtrDflt. The flagsfield is composed of the bitwise inclusive OR of the values shown in Table 1 (currently there is only one value defined).

c s
l l
l lw(4i).
Table 1 Pointer Default Flags
Flag Meaning
XkbSA_DfltBtnAbsolute T{
If set, the value field represents an absolute pointer button. Otherwise, the
value field represents the amount to be added to the current default button.

The affectfield specifies what changes as a result of this action. The only valid value for the affectfield is XkbSA_AffectDfltBtn. The valueXXXfield is a signed character that represents the new button value for the mk_dflt_btnattribute of the MouseKeys control. If XkbSA_DfltBtnAbsolute is set in flags, valueXXXspecifies the button to be used; otherwise, valueXXXspecifies the amount to be added to the current default button. In either case, illegal button choices are wrapped back around into range. Xkb provides macros, to convert between the integer and signed character values in XkbPtrDfltAction structures. XkbSAPtrDfltValuereturns the valueXXXfield of actconverted to a signed int.


    typedef struct _XkbPtrDfltAction {
        unsigned char    type;      /(** XkbSA_SetPtrDflt */
        unsigned char    flags;     /(** controls the pointer button number */
        unsigned char    affect;    /(** XkbSA_AffectDfltBtn */
        char             valueXXX;  /(** new default button member */
    } XkbPtrDfltAction;