int
XkbcAllocCompatMap(XkbcDescPtr xkb, unsigned which, unsigned nSI)
{
- XkbCompatMapPtr compat;
- XkbSymInterpretRec *prev_interpret;
+ XkbcCompatMapPtr compat;
+ XkbcSymInterpretRec *prev_interpret;
if (!xkb)
return BadMatch;
prev_interpret = compat->sym_interpret;
compat->sym_interpret = _XkbTypedRealloc(compat->sym_interpret,
- nSI, XkbSymInterpretRec);
+ nSI, XkbcSymInterpretRec);
if (!compat->sym_interpret) {
_XkbFree(prev_interpret);
compat->size_si = compat->num_si = 0;
if (compat->num_si != 0)
_XkbClearElems(compat->sym_interpret, compat->num_si,
- compat->size_si - 1, XkbSymInterpretRec);
+ compat->size_si - 1, XkbcSymInterpretRec);
return Success;
}
- compat = _XkbTypedCalloc(1, XkbCompatMapRec);
+ compat = _XkbTypedCalloc(1, XkbcCompatMapRec);
if (!compat)
return BadAlloc;
if (nSI > 0) {
- compat->sym_interpret = _XkbTypedCalloc(nSI, XkbSymInterpretRec);
+ compat->sym_interpret = _XkbTypedCalloc(nSI, XkbcSymInterpretRec);
if (!compat->sym_interpret) {
_XkbFree(compat);
return BadAlloc;
void
XkbcFreeCompatMap(XkbcDescPtr xkb, unsigned which, Bool freeMap)
{
- XkbCompatMapPtr compat;
+ XkbcCompatMapPtr compat;
if (!xkb || !xkb->compat)
return;
static Bool
HandleNoAction(XkbcDescPtr xkb,
- XkbAnyAction * action,
+ XkbcAnyAction * action,
unsigned field, ExprDef * array_ndx, ExprDef * value)
{
return ReportIllegal(action->type, field);
static Bool
HandleSetLatchMods(XkbcDescPtr xkb,
- XkbAnyAction * action,
+ XkbcAnyAction * action,
unsigned field, ExprDef * array_ndx, ExprDef * value)
{
XkbcModAction *act;
static Bool
HandleLockMods(XkbcDescPtr xkb,
- XkbAnyAction * action,
+ XkbcAnyAction * action,
unsigned field, ExprDef * array_ndx, ExprDef * value)
{
XkbcModAction *act;
static Bool
HandleSetLatchGroup(XkbcDescPtr xkb,
- XkbAnyAction * action,
+ XkbcAnyAction * action,
unsigned field, ExprDef * array_ndx, ExprDef * value)
{
XkbGroupAction *act;
static Bool
HandleLockGroup(XkbcDescPtr xkb,
- XkbAnyAction * action,
+ XkbcAnyAction * action,
unsigned field, ExprDef * array_ndx, ExprDef * value)
{
XkbGroupAction *act;
static Bool
HandleMovePtr(XkbcDescPtr xkb,
- XkbAnyAction * action,
+ XkbcAnyAction * action,
unsigned field, ExprDef * array_ndx, ExprDef * value)
{
ExprResult rtrn;
static Bool
HandlePtrBtn(XkbcDescPtr xkb,
- XkbAnyAction * action,
+ XkbcAnyAction * action,
unsigned field, ExprDef * array_ndx, ExprDef * value)
{
ExprResult rtrn;
static Bool
HandleSetPtrDflt(XkbcDescPtr xkb,
- XkbAnyAction * action,
+ XkbcAnyAction * action,
unsigned field, ExprDef * array_ndx, ExprDef * value)
{
ExprResult rtrn;
static Bool
HandleISOLock(XkbcDescPtr xkb,
- XkbAnyAction * action,
+ XkbcAnyAction * action,
unsigned field, ExprDef * array_ndx, ExprDef * value)
{
ExprResult rtrn;
static Bool
HandleSwitchScreen(XkbcDescPtr xkb,
- XkbAnyAction * action,
+ XkbcAnyAction * action,
unsigned field, ExprDef * array_ndx, ExprDef * value)
{
ExprResult rtrn;
static Bool
HandleSetLockControls(XkbcDescPtr xkb,
- XkbAnyAction * action,
+ XkbcAnyAction * action,
unsigned field, ExprDef * array_ndx, ExprDef * value)
{
ExprResult rtrn;
static Bool
HandleActionMessage(XkbcDescPtr xkb,
- XkbAnyAction * action,
+ XkbcAnyAction * action,
unsigned field, ExprDef * array_ndx, ExprDef * value)
{
ExprResult rtrn;
static Bool
HandleRedirectKey(XkbcDescPtr xkb,
- XkbAnyAction * action,
+ XkbcAnyAction * action,
unsigned field, ExprDef * array_ndx, ExprDef * value)
{
ExprResult rtrn;
static Bool
HandleDeviceBtn(XkbcDescPtr xkb,
- XkbAnyAction * action,
+ XkbcAnyAction * action,
unsigned field, ExprDef * array_ndx, ExprDef * value)
{
ExprResult rtrn;
static Bool
HandleDeviceValuator(XkbcDescPtr xkb,
- XkbAnyAction * action,
+ XkbcAnyAction * action,
unsigned field, ExprDef * array_ndx, ExprDef * value)
{
#if 0
static Bool
HandlePrivate(XkbcDescPtr xkb,
- XkbAnyAction * action,
+ XkbcAnyAction * action,
unsigned field, ExprDef * array_ndx, ExprDef * value)
{
ExprResult rtrn;
ACTION("Extra %d bytes ignored\n", len - 6);
return False;
}
- strncpy((char *) action->data, rtrn.str, 7);
+ strncpy((char *) action->pad, rtrn.str, XkbcAnyActionDataSize);
}
free(rtrn.str);
return True;
return False;
}
ndx = rtrn.uval;
- if (ndx > 6)
+ if (ndx >= XkbcAnyActionDataSize)
{
- ERROR("The data for a private action is 7 bytes long\n");
+ ERROR("The data for a private action is 18 bytes long\n");
ACTION("Attempt to use data[%d] ignored\n", ndx);
return False;
}
ACTION("Illegal datum %d ignored\n", rtrn.ival);
return False;
}
- action->data[ndx] = rtrn.uval;
+ action->pad[ndx] = rtrn.uval;
return True;
}
}
}
typedef Bool(*actionHandler) (XkbcDescPtr /* xkb */ ,
- XkbAnyAction * /* action */ ,
+ XkbcAnyAction * /* action */ ,
unsigned /* field */ ,
ExprDef * /* array_ndx */ ,
ExprDef * /* value */
int
HandleActionDef(ExprDef * def,
XkbcDescPtr xkb,
- XkbAnyAction * action, unsigned mergeMode, ActionInfo * info)
+ XkbcAnyAction * action, unsigned mergeMode, ActionInfo * info)
{
ExprDef *arg;
register char *str;
exprOpText(def->op));
return False;
}
- str = XkbcAtomGetString(def->value.action.name);
+ str = XkbcAtomText(def->value.action.name);
if (!str)
{
WSGO("Missing name in action definition!!\n");
typedef struct _SymInterpInfo
{
CommonInfo defs;
- XkbSymInterpretRec interp;
+ XkbcSymInterpretRec interp;
} SymInterpInfo;
#define _SI_VirtualMod (1<<0)
info->dflt.interp.act.type = XkbSA_NoAction;
for (i = 0; i < XkbcAnyActionDataSize; i++)
{
- info->dflt.interp.act.data[i] = 0;
+ info->dflt.interp.act.pad[i] = 0;
}
ClearIndicatorMapInfo(&info->ledDflt);
info->ledDflt.defs.fileID = info->fileID;
info->dflt.interp.act.type = XkbSA_NoAction;
for (i = 0; i < XkbcAnyActionDataSize; i++)
{
- info->dflt.interp.act.data[i] = 0;
+ info->dflt.interp.act.pad[i] = 0;
}
ClearIndicatorMapInfo(&info->ledDflt);
info->nInterps = 0;
static void
CopyInterps(CompatInfo * info,
- XkbCompatMapPtr compat, Bool needSymbol, unsigned pred)
+ XkbcCompatMapPtr compat, Bool needSymbol, unsigned pred)
{
SymInterpInfo *si;
scanFile, info.name);
}
}
- size = info.nInterps * sizeof(XkbSymInterpretRec);
+ size = info.nInterps * sizeof(XkbcSymInterpretRec);
if (size > 0)
{
CopyInterps(&info, xkb->compat, True, XkbSI_Exactly);