diff options
Diffstat (limited to 'include/X11/XKBlib.h')
-rw-r--r-- | include/X11/XKBlib.h | 269 |
1 files changed, 30 insertions, 239 deletions
diff --git a/include/X11/XKBlib.h b/include/X11/XKBlib.h index abeb92b..ac79475 100644 --- a/include/X11/XKBlib.h +++ b/include/X11/XKBlib.h @@ -24,7 +24,7 @@ OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. ********************************************************/ -/* $XFree86: xc/lib/X11/XKBlib.h,v 3.3 2001/08/01 00:44:38 tsi Exp $ */ +/* $XFree86: xc/lib/X11/XKBlib.h,v 3.6 2003/11/17 22:20:10 dawes Exp $ */ #ifndef _XKBLIB_H_ #define _XKBLIB_H_ @@ -295,86 +295,67 @@ typedef struct _XkbKbdDpyState XkbKbdDpyStateRec,*XkbKbdDpyStatePtr; _XFUNCPROTOBEGIN extern Bool XkbIgnoreExtension( -#if NeedFunctionPrototypes Bool /* ignore */ -#endif ); extern Display *XkbOpenDisplay( -#if NeedFunctionPrototypes char * /* name */, int * /* ev_rtrn */, int * /* err_rtrn */, int * /* major_rtrn */, int * /* minor_rtrn */, int * /* reason */ -#endif ); extern Bool XkbQueryExtension( -#if NeedFunctionPrototypes Display * /* dpy */, int * /* opcodeReturn */, int * /* eventBaseReturn */, int * /* errorBaseReturn */, int * /* majorRtrn */, int * /* minorRtrn */ -#endif ); extern Bool XkbUseExtension( -#if NeedFunctionPrototypes Display * /* dpy */, int * /* major_rtrn */, int * /* minor_rtrn */ -#endif ); extern Bool XkbLibraryVersion( -#if NeedFunctionPrototypes int * /* libMajorRtrn */, int * /* libMinorRtrn */ -#endif ); extern unsigned int XkbSetXlibControls( -#if NeedFunctionPrototypes Display* /* dpy */, unsigned int /* affect */, unsigned int /* values */ -#endif ); extern unsigned int XkbGetXlibControls( -#if NeedFunctionPrototypes Display* /* dpy */ -#endif ); +extern unsigned int XkbXlibControlsImplemented(void); + typedef Atom (*XkbInternAtomFunc)( -#if NeedFunctionPrototypes Display * /* dpy */, _Xconst char * /* name */, Bool /* only_if_exists */ -#endif ); typedef char * (*XkbGetAtomNameFunc)( -#if NeedFunctionPrototypes Display * /* dpy */, Atom /* atom */ -#endif ); extern void XkbSetAtomFuncs( -#if NeedFunctionPrototypes XkbInternAtomFunc /* getAtom */, XkbGetAtomNameFunc /* getName */ -#endif ); extern KeySym XkbKeycodeToKeysym( -#if NeedFunctionPrototypes Display * /* dpy */, #if NeedWidePrototypes unsigned int /* kc */, @@ -383,87 +364,69 @@ extern KeySym XkbKeycodeToKeysym( #endif int /* group */, int /* level */ -#endif ); extern unsigned int XkbKeysymToModifiers( -#if NeedFunctionPrototypes Display * /* dpy */, KeySym /* ks */ -#endif ); extern Bool XkbLookupKeySym( -#if NeedFunctionPrototypes Display * /* dpy */, KeyCode /* keycode */, unsigned int /* modifiers */, unsigned int * /* modifiers_return */, KeySym * /* keysym_return */ -#endif ); extern int XkbLookupKeyBinding( -#if NeedFunctionPrototypes Display * /* dpy */, KeySym /* sym_rtrn */, unsigned int /* mods */, char * /* buffer */, int /* nbytes */, int * /* extra_rtrn */ -#endif ); extern Bool XkbTranslateKeyCode( -#if NeedFunctionPrototypes XkbDescPtr /* xkb */, KeyCode /* keycode */, unsigned int /* modifiers */, unsigned int * /* modifiers_return */, KeySym * /* keysym_return */ -#endif ); extern int XkbTranslateKeySym( -#if NeedFunctionPrototypes Display * /* dpy */, register KeySym * /* sym_return */, unsigned int /* modifiers */, char * /* buffer */, int /* nbytes */, int * /* extra_rtrn */ -#endif ); extern Bool XkbSetAutoRepeatRate( -#if NeedFunctionPrototypes Display * /* dpy */, unsigned int /* deviceSpec */, unsigned int /* delay */, unsigned int /* interval */ -#endif ); extern Bool XkbGetAutoRepeatRate( -#if NeedFunctionPrototypes Display * /* dpy */, unsigned int /* deviceSpec */, unsigned int * /* delayRtrn */, unsigned int * /* intervalRtrn */ -#endif ); extern Bool XkbChangeEnabledControls( -#if NeedFunctionPrototypes Display * /* dpy */, unsigned int /* deviceSpec */, unsigned int /* affect */, unsigned int /* values */ -#endif ); extern Bool XkbDeviceBell( -#if NeedFunctionPrototypes Display * /* dpy */, Window /* win */, int /* deviceSpec */, @@ -471,21 +434,17 @@ extern Bool XkbDeviceBell( int /* bellID */, int /* percent */, Atom /* name */ -#endif ); extern Bool XkbForceDeviceBell( -#if NeedFunctionPrototypes Display * /* dpy */, int /* deviceSpec */, int /* bellClass */, int /* bellID */, int /* percent */ -#endif ); extern Bool XkbDeviceBellEvent( -#if NeedFunctionPrototypes Display * /* dpy */, Window /* win */, int /* deviceSpec */, @@ -493,101 +452,78 @@ extern Bool XkbDeviceBellEvent( int /* bellID */, int /* percent */, Atom /* name */ -#endif ); extern Bool XkbBell( -#if NeedFunctionPrototypes Display * /* dpy */, Window /* win */, int /* percent */, Atom /* name */ -#endif ); extern Bool XkbForceBell( -#if NeedFunctionPrototypes Display * /* dpy */, int /* percent */ -#endif ); extern Bool XkbBellEvent( -#if NeedFunctionPrototypes Display * /* dpy */, Window /* win */, int /* percent */, Atom /* name */ -#endif ); extern Bool XkbSelectEvents( -#if NeedFunctionPrototypes Display * /* dpy */, unsigned int /* deviceID */, unsigned int /* affect */, unsigned int /* values */ -#endif ); extern Bool XkbSelectEventDetails( -#if NeedFunctionPrototypes Display * /* dpy */, unsigned int /* deviceID */, unsigned int /* eventType */, unsigned long /* affect */, unsigned long /* details */ -#endif ); extern void XkbNoteMapChanges( -#if NeedFunctionPrototypes XkbMapChangesPtr /* old */, XkbMapNotifyEvent * /* new */, unsigned int /* wanted */ -#endif ); extern void XkbNoteNameChanges( -#if NeedFunctionPrototypes XkbNameChangesPtr /* old */, XkbNamesNotifyEvent * /* new */, unsigned int /* wanted */ -#endif ); extern Status XkbGetIndicatorState( -#if NeedFunctionPrototypes Display * /* dpy */, unsigned int /* deviceSpec */, unsigned int * /* pStateRtrn */ -#endif ); extern Status XkbGetDeviceIndicatorState( -#if NeedFunctionPrototypes Display * /* dpy */, unsigned int /* deviceSpec */, unsigned int /* ledClass */, unsigned int /* ledID */, unsigned int * /* pStateRtrn */ -#endif ); extern Status XkbGetIndicatorMap( -#if NeedFunctionPrototypes Display * /* dpy */, unsigned long /* which */, XkbDescPtr /* desc */ -#endif ); extern Bool XkbSetIndicatorMap( -#if NeedFunctionPrototypes Display * /* dpy */, unsigned long /* which */, XkbDescPtr /* desc */ -#endif ); #define XkbNoteIndicatorMapChanges(o,n,w) \ @@ -600,18 +536,15 @@ extern Bool XkbSetIndicatorMap( (XkbSetIndicatorMap((d),(c)->map_changes,x)) extern Bool XkbGetNamedIndicator( -#if NeedFunctionPrototypes Display * /* dpy */, Atom /* name */, int * /* pNdxRtrn */, Bool * /* pStateRtrn */, XkbIndicatorMapPtr /* pMapRtrn */, Bool * /* pRealRtrn */ -#endif ); extern Bool XkbGetNamedDeviceIndicator( -#if NeedFunctionPrototypes Display * /* dpy */, unsigned int /* deviceSpec */, unsigned int /* ledClass */, @@ -621,22 +554,18 @@ extern Bool XkbGetNamedDeviceIndicator( Bool * /* pStateRtrn */, XkbIndicatorMapPtr /* pMapRtrn */, Bool * /* pRealRtrn */ -#endif ); extern Bool XkbSetNamedIndicator( -#if NeedFunctionPrototypes Display * /* dpy */, Atom /* name */, Bool /* changeState */, Bool /* state */, Bool /* createNewMap */, XkbIndicatorMapPtr /* pMap */ -#endif ); extern Bool XkbSetNamedDeviceIndicator( -#if NeedFunctionPrototypes Display * /* dpy */, unsigned int /* deviceSpec */, unsigned int /* ledClass */, @@ -646,696 +575,548 @@ extern Bool XkbSetNamedDeviceIndicator( Bool /* state */, Bool /* createNewMap */, XkbIndicatorMapPtr /* pMap */ -#endif ); extern Bool XkbLockModifiers( -#if NeedFunctionPrototypes Display * /* dpy */, unsigned int /* deviceSpec */, unsigned int /* affect */, unsigned int /* values */ -#endif ); extern Bool XkbLatchModifiers( -#if NeedFunctionPrototypes Display * /* dpy */, unsigned int /* deviceSpec */, unsigned int /* affect */, unsigned int /* values */ -#endif ); extern Bool XkbLockGroup( -#if NeedFunctionPrototypes Display * /* dpy */, unsigned int /* deviceSpec */, unsigned int /* group */ -#endif ); extern Bool XkbLatchGroup( -#if NeedFunctionPrototypes Display * /* dpy */, unsigned int /* deviceSpec */, unsigned int /* group */ -#endif ); extern Bool XkbSetServerInternalMods( -#if NeedFunctionPrototypes Display * /* dpy */, unsigned int /* deviceSpec */, unsigned int /* affectReal */, unsigned int /* realValues */, unsigned int /* affectVirtual */, unsigned int /* virtualValues */ -#endif ); extern Bool XkbSetIgnoreLockMods( -#if NeedFunctionPrototypes Display * /* dpy */, unsigned int /* deviceSpec */, unsigned int /* affectReal */, unsigned int /* realValues */, unsigned int /* affectVirtual */, unsigned int /* virtualValues */ -#endif ); extern Bool XkbVirtualModsToReal( -#if NeedFunctionPrototypes XkbDescPtr /* xkb */, unsigned int /* virtual_mask */, unsigned int * /* mask_rtrn */ -#endif ); extern Bool XkbComputeEffectiveMap( -#if NeedFunctionPrototypes XkbDescPtr /* xkb */, XkbKeyTypePtr /* type */, unsigned char * /* map_rtrn */ -#endif ); extern Status XkbInitCanonicalKeyTypes( -#if NeedFunctionPrototypes XkbDescPtr /* xkb */, unsigned int /* which */, int /* keypadVMod */ -#endif ); extern XkbDescPtr XkbAllocKeyboard( -#if NeedFunctionPrototypes void -#endif ); extern void XkbFreeKeyboard( -#if NeedFunctionPrototypes XkbDescPtr /* xkb */, unsigned int /* which */, Bool /* freeDesc */ -#endif ); extern Status XkbAllocClientMap( -#if NeedFunctionPrototypes XkbDescPtr /* xkb */, unsigned int /* which */, unsigned int /* nTypes */ -#endif ); extern Status XkbAllocServerMap( -#if NeedFunctionPrototypes XkbDescPtr /* xkb */, unsigned int /* which */, unsigned int /* nActions */ -#endif ); extern void XkbFreeClientMap( -#if NeedFunctionPrototypes XkbDescPtr /* xkb */, unsigned int /* what */, Bool /* freeMap */ -#endif ); extern void XkbFreeServerMap( -#if NeedFunctionPrototypes XkbDescPtr /* xkb */, unsigned int /* what */, Bool /* freeMap */ -#endif ); extern XkbKeyTypePtr XkbAddKeyType( -#if NeedFunctionPrototypes XkbDescPtr /* xkb */, Atom /* name */, int /* map_count */, Bool /* want_preserve */, int /* num_lvls */ -#endif ); extern Status XkbAllocIndicatorMaps( -#if NeedFunctionPrototypes XkbDescPtr /* xkb */ -#endif ); extern void XkbFreeIndicatorMaps( -#if NeedFunctionPrototypes XkbDescPtr /* xkb */ -#endif ); extern XkbDescPtr XkbGetMap( -#if NeedFunctionPrototypes Display * /* dpy */, unsigned int /* which */, unsigned int /* deviceSpec */ -#endif ); extern Status XkbGetUpdatedMap( -#if NeedFunctionPrototypes Display * /* dpy */, unsigned int /* which */, XkbDescPtr /* desc */ -#endif ); extern Status XkbGetMapChanges( -#if NeedFunctionPrototypes Display * /* dpy */, XkbDescPtr /* xkb */, XkbMapChangesPtr /* changes */ -#endif ); extern Status XkbRefreshKeyboardMapping( -#if NeedFunctionPrototypes XkbMapNotifyEvent * /* event */ -#endif ); extern Status XkbGetKeyTypes( -#if NeedFunctionPrototypes Display * /* dpy */, unsigned int /* first */, unsigned int /* num */, XkbDescPtr /* xkb */ -#endif ); extern Status XkbGetKeySyms( -#if NeedFunctionPrototypes Display * /* dpy */, unsigned int /* first */, unsigned int /* num */, XkbDescPtr /* xkb */ -#endif ); extern Status XkbGetKeyActions( -#if NeedFunctionPrototypes Display * /* dpy */, unsigned int /* first */, unsigned int /* num */, XkbDescPtr /* xkb */ -#endif ); extern Status XkbGetKeyBehaviors( -#if NeedFunctionPrototypes Display * /* dpy */, unsigned int /* firstKey */, unsigned int /* nKeys */, XkbDescPtr /* desc */ -#endif ); extern Status XkbGetVirtualMods( -#if NeedFunctionPrototypes Display * /* dpy */, unsigned int /* which */, XkbDescPtr /* desc */ -#endif ); extern Status XkbGetKeyExplicitComponents( -#if NeedFunctionPrototypes Display * /* dpy */, unsigned int /* firstKey */, unsigned int /* nKeys */, XkbDescPtr /* desc */ -#endif ); extern Status XkbGetKeyModifierMap( -#if NeedFunctionPrototypes Display * /* dpy */, unsigned int /* firstKey */, unsigned int /* nKeys */, XkbDescPtr /* desc */ -#endif +); + +extern Status XkbGetKeyVirtualModMap( + Display * /* dpy */, + unsigned int /* first */, + unsigned int /* num */, + XkbDescPtr /* xkb */ ); extern Status XkbAllocControls( -#if NeedFunctionPrototypes XkbDescPtr /* xkb */, unsigned int /* which*/ -#endif ); extern void XkbFreeControls( -#if NeedFunctionPrototypes XkbDescPtr /* xkb */, unsigned int /* which */, Bool /* freeMap */ -#endif ); extern Status XkbGetControls( -#if NeedFunctionPrototypes Display * /* dpy */, unsigned long /* which */, XkbDescPtr /* desc */ -#endif ); extern Bool XkbSetControls( -#if NeedFunctionPrototypes Display * /* dpy */, unsigned long /* which */, XkbDescPtr /* desc */ -#endif ); extern void XkbNoteControlsChanges( -#if NeedFunctionPrototypes XkbControlsChangesPtr /* old */, XkbControlsNotifyEvent * /* new */, unsigned int /* wanted */ -#endif ); #define XkbGetControlsChanges(d,x,c) XkbGetControls(d,(c)->changed_ctrls,x) #define XkbChangeControls(d,x,c) XkbSetControls(d,(c)->changed_ctrls,x) extern Status XkbAllocCompatMap( -#if NeedFunctionPrototypes XkbDescPtr /* xkb */, unsigned int /* which */, unsigned int /* nInterpret */ -#endif ); extern void XkbFreeCompatMap( -#if NeedFunctionPrototypes XkbDescPtr /* xkb */, unsigned int /* which */, Bool /* freeMap */ -#endif ); extern Status XkbGetCompatMap( -#if NeedFunctionPrototypes Display * /* dpy */, unsigned int /* which */, XkbDescPtr /* xkb */ -#endif ); extern Bool XkbSetCompatMap( -#if NeedFunctionPrototypes Display * /* dpy */, unsigned int /* which */, XkbDescPtr /* xkb */, Bool /* updateActions */ -#endif ); extern XkbSymInterpretPtr XkbAddSymInterpret( -#if NeedFunctionPrototypes XkbDescPtr /* xkb */, XkbSymInterpretPtr /* si */, Bool /* updateMap */, XkbChangesPtr /* changes */ -#endif ); extern Status XkbAllocNames( -#if NeedFunctionPrototypes XkbDescPtr /* xkb */, unsigned int /* which */, int /* nTotalRG */, int /* nTotalAliases */ -#endif ); extern Status XkbGetNames( -#if NeedFunctionPrototypes Display * /* dpy */, unsigned int /* which */, XkbDescPtr /* desc */ -#endif ); extern Bool XkbSetNames( -#if NeedFunctionPrototypes Display * /* dpy */, unsigned int /* which */, unsigned int /* firstType */, unsigned int /* nTypes */, XkbDescPtr /* desc */ -#endif ); extern Bool XkbChangeNames( -#if NeedFunctionPrototypes Display * /* dpy */, XkbDescPtr /* xkb */, XkbNameChangesPtr /* changes */ -#endif ); extern void XkbFreeNames( -#if NeedFunctionPrototypes XkbDescPtr /* xkb */, unsigned int /* which */, Bool /* freeMap */ -#endif ); extern Status XkbGetState( -#if NeedFunctionPrototypes Display * /* dpy */, unsigned int /* deviceSpec */, XkbStatePtr /* rtrnState */ -#endif ); extern Bool XkbSetMap( -#if NeedFunctionPrototypes Display * /* dpy */, unsigned int /* which */, XkbDescPtr /* desc */ -#endif ); extern Bool XkbChangeMap( -#if NeedFunctionPrototypes Display* /* dpy */, XkbDescPtr /* desc */, XkbMapChangesPtr /* changes */ -#endif ); extern Bool XkbSetDetectableAutoRepeat( -#if NeedFunctionPrototypes Display * /* dpy */, Bool /* detectable */, Bool * /* supported */ -#endif ); extern Bool XkbGetDetectableAutoRepeat( -#if NeedFunctionPrototypes Display * /* dpy */, Bool * /* supported */ -#endif ); extern Bool XkbSetAutoResetControls( -#if NeedFunctionPrototypes Display * /* dpy */, unsigned int /* changes */, unsigned int * /* auto_ctrls */, unsigned int * /* auto_values */ -#endif ); extern Bool XkbGetAutoResetControls( -#if NeedFunctionPrototypes Display * /* dpy */, unsigned int * /* auto_ctrls */, unsigned int * /* auto_ctrl_values */ -#endif ); extern Bool XkbSetPerClientControls( -#if NeedFunctionPrototypes Display * /* dpy */, unsigned int /* change */, unsigned int * /* values */ -#endif ); extern Bool XkbGetPerClientControls( -#if NeedFunctionPrototypes Display * /* dpy */, unsigned int * /* ctrls */ -#endif ); extern Status XkbCopyKeyType( -#if NeedFunctionPrototypes XkbKeyTypePtr /* from */, XkbKeyTypePtr /* into */ -#endif ); extern Status XkbCopyKeyTypes( -#if NeedFunctionPrototypes XkbKeyTypePtr /* from */, XkbKeyTypePtr /* into */, int /* num_types */ -#endif ); extern Status XkbResizeKeyType( -#if NeedFunctionPrototypes XkbDescPtr /* xkb */, int /* type_ndx */, int /* map_count */, Bool /* want_preserve */, int /* new_num_lvls */ -#endif ); extern KeySym *XkbResizeKeySyms( -#if NeedFunctionPrototypes XkbDescPtr /* desc */, int /* forKey */, int /* symsNeeded */ -#endif ); extern XkbAction *XkbResizeKeyActions( -#if NeedFunctionPrototypes XkbDescPtr /* desc */, int /* forKey */, int /* actsNeeded */ -#endif ); extern Status XkbChangeTypesOfKey( -#if NeedFunctionPrototypes XkbDescPtr /* xkb */, int /* key */, int /* num_groups */, unsigned int /* groups */, int * /* newTypes */, XkbMapChangesPtr /* pChanges */ -#endif +); + +extern Status XkbChangeKeycodeRange( + XkbDescPtr /* xkb */, + int /* minKC */, + int /* maxKC */, + XkbChangesPtr /* changes */ ); /***====================================================================***/ extern XkbComponentListPtr XkbListComponents( -#if NeedFunctionPrototypes Display * /* dpy */, unsigned int /* deviceSpec */, XkbComponentNamesPtr /* ptrns */, int * /* max_inout */ -#endif ); extern void XkbFreeComponentList( -#if NeedFunctionPrototypes XkbComponentListPtr /* list */ -#endif ); extern XkbDescPtr XkbGetKeyboard( -#if NeedFunctionPrototypes Display * /* dpy */, unsigned int /* which */, unsigned int /* deviceSpec */ -#endif ); extern XkbDescPtr XkbGetKeyboardByName( -#if NeedFunctionPrototypes Display * /* dpy */, unsigned int /* deviceSpec */, XkbComponentNamesPtr /* names */, unsigned int /* want */, unsigned int /* need */, Bool /* load */ -#endif ); /***====================================================================***/ extern int XkbKeyTypesForCoreSymbols( /* returns # of groups */ -#if NeedFunctionPrototypes XkbDescPtr /* xkb */, /* keyboard device */ int /* map_width */, /* width of core KeySym array */ KeySym * /* core_syms */, /* always mapWidth symbols */ unsigned int /* protected */, /* explicit key types */ int * /* types_inout */, /* always four type indices */ KeySym * /* xkb_syms_rtrn */ /* must have enough space */ -#endif ); extern Bool XkbApplyCompatMapToKey( /* False only on error */ -#if NeedFunctionPrototypes XkbDescPtr /* xkb */, /* keymap to be edited */ KeyCode /* key */, /* key to be updated */ XkbChangesPtr /* changes */ /* resulting changes to map */ -#endif ); extern Bool XkbUpdateMapFromCore( /* False only on error */ -#if NeedFunctionPrototypes XkbDescPtr /* xkb */, /* XKB keyboard to be edited */ KeyCode /* first_key */, /* first changed key */ int /* num_keys */, /* number of changed keys */ int /* map_width */, /* width of core keymap */ KeySym * /* core_keysyms */, /* symbols from core keymap */ XkbChangesPtr /* changes */ /* resulting changes */ -#endif ); /***====================================================================***/ extern XkbDeviceLedInfoPtr XkbAddDeviceLedInfo( -#if NeedFunctionPrototypes XkbDeviceInfoPtr /* devi */, unsigned int /* ledClass */, unsigned int /* ledId */ -#endif ); extern Status XkbResizeDeviceButtonActions( -#if NeedFunctionPrototypes XkbDeviceInfoPtr /* devi */, unsigned int /* newTotal */ -#endif ); extern XkbDeviceInfoPtr XkbAllocDeviceInfo( -#if NeedFunctionPrototypes unsigned int /* deviceSpec */, unsigned int /* nButtons */, unsigned int /* szLeds */ -#endif ); extern void XkbFreeDeviceInfo( -#if NeedFunctionPrototypes XkbDeviceInfoPtr /* devi */, unsigned int /* which */, Bool /* freeDevI */ -#endif ); extern void XkbNoteDeviceChanges( -#if NeedFunctionPrototypes XkbDeviceChangesPtr /* old */, XkbExtensionDeviceNotifyEvent * /* new */, unsigned int /* wanted */ -#endif ); extern XkbDeviceInfoPtr XkbGetDeviceInfo( -#if NeedFunctionPrototypes Display * /* dpy */, unsigned int /* which */, unsigned int /* deviceSpec */, unsigned int /* ledClass */, unsigned int /* ledID */ -#endif ); extern Status XkbGetDeviceInfoChanges( -#if NeedFunctionPrototypes Display * /* dpy */, XkbDeviceInfoPtr /* devi */, XkbDeviceChangesPtr /* changes */ -#endif ); extern Status XkbGetDeviceButtonActions( -#if NeedFunctionPrototypes Display * /* dpy */, XkbDeviceInfoPtr /* devi */, Bool /* all */, unsigned int /* first */, unsigned int /* nBtns */ -#endif ); extern Status XkbGetDeviceLedInfo( -#if NeedFunctionPrototypes Display * /* dpy */, XkbDeviceInfoPtr /* devi */, unsigned int /* ledClass (class, XIDflt, XIAll) */, unsigned int /* ledId (id, XIDflt, XIAll) */, unsigned int /* which (XkbXI_Indicator{Names,Map}Mask */ -#endif ); extern Bool XkbSetDeviceInfo( -#if NeedFunctionPrototypes Display * /* dpy */, unsigned int /* which */, XkbDeviceInfoPtr /* devi */ -#endif ); extern Bool XkbChangeDeviceInfo( -#if NeedFunctionPrototypes Display* /* dpy */, XkbDeviceInfoPtr /* desc */, XkbDeviceChangesPtr /* changes */ -#endif ); extern Bool XkbSetDeviceLedInfo( -#if NeedFunctionPrototypes Display * /* dpy */, XkbDeviceInfoPtr /* devi */, unsigned int /* ledClass */, unsigned int /* ledID */, unsigned int /* which */ -#endif ); extern Bool XkbSetDeviceButtonActions( -#if NeedFunctionPrototypes Display * /* dpy */, XkbDeviceInfoPtr /* devi */, unsigned int /* first */, unsigned int /* nBtns */ -#endif ); /***====================================================================***/ extern char XkbToControl( -#if NeedFunctionPrototypes char /* c */ -#endif ); /***====================================================================***/ extern Bool XkbSetDebuggingFlags( -#if NeedFunctionPrototypes Display * /* dpy */, unsigned int /* mask */, unsigned int /* flags */, @@ -1344,15 +1125,25 @@ extern Bool XkbSetDebuggingFlags( unsigned int /* ctrls */, unsigned int * /* rtrn_flags */, unsigned int * /* rtrn_ctrls */ -#endif ); extern Bool XkbApplyVirtualModChanges( -#if NeedFunctionPrototypes XkbDescPtr /* xkb */, unsigned int /* changed */, XkbChangesPtr /* changes */ -#endif +); + +extern Bool XkbUpdateActionVirtualMods( + XkbDescPtr /* xkb */, + XkbAction * /* act */, + unsigned int /* changed */ +); + +extern void XkbUpdateKeyTypeVirtualMods( + XkbDescPtr /* xkb */, + XkbKeyTypePtr /* type */, + unsigned int /* changed */, + XkbChangesPtr /* changes */ ); _XFUNCPROTOEND |