sync code with last improvements from OpenBSD
This commit is contained in:
commit
88965415ff
26235 changed files with 29195616 additions and 0 deletions
278
lib/libxkbfile/include/X11/extensions/XKBconfig.h
Normal file
278
lib/libxkbfile/include/X11/extensions/XKBconfig.h
Normal file
|
@ -0,0 +1,278 @@
|
|||
#ifndef _XKBCONFIG_H_
|
||||
#define _XKBCONFIG_H_ 1
|
||||
|
||||
/************************************************************
|
||||
Copyright (c) 1995 by Silicon Graphics Computer Systems, Inc.
|
||||
|
||||
Permission to use, copy, modify, and distribute this
|
||||
software and its documentation for any purpose and without
|
||||
fee is hereby granted, provided that the above copyright
|
||||
notice appear in all copies and that both that copyright
|
||||
notice and this permission notice appear in supporting
|
||||
documentation, and that the name of Silicon Graphics not be
|
||||
used in advertising or publicity pertaining to distribution
|
||||
of the software without specific prior written permission.
|
||||
Silicon Graphics makes no representation about the suitability
|
||||
of this software for any purpose. It is provided "as is"
|
||||
without any express or implied warranty.
|
||||
|
||||
SILICON GRAPHICS DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS
|
||||
SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
|
||||
AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL SILICON
|
||||
GRAPHICS BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL
|
||||
DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
|
||||
DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
|
||||
OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH
|
||||
THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
||||
|
||||
********************************************************/
|
||||
|
||||
|
||||
typedef struct _XkbConfigRtrn *XkbConfigRtrnPtr;
|
||||
typedef struct _XkbConfigField *XkbConfigFieldPtr;
|
||||
typedef struct _XkbConfigFields *XkbConfigFieldsPtr;
|
||||
|
||||
typedef Bool (*XkbConfigParseFunc)(
|
||||
FILE * /* file */,
|
||||
XkbConfigFieldsPtr /* fields */,
|
||||
XkbConfigFieldPtr /* field */,
|
||||
XkbDescPtr /* xkb */,
|
||||
XkbConfigRtrnPtr /* rtrn */
|
||||
);
|
||||
|
||||
#define XkbCF_Check 0
|
||||
#define XkbCF_Apply 1
|
||||
#define XkbCF_CleanUp 2
|
||||
#define XkbCF_Destroy 3
|
||||
|
||||
typedef Bool (*XkbConfigFinishFunc)(
|
||||
XkbConfigFieldsPtr /* fields */,
|
||||
XkbDescPtr /* xkb */,
|
||||
XkbConfigRtrnPtr /* rtrn */,
|
||||
int /* what */
|
||||
);
|
||||
|
||||
typedef struct _XkbConfigRtrnPriv {
|
||||
int cfg_id;
|
||||
XPointer priv;
|
||||
struct _XkbConfigRtrnPriv * next;
|
||||
} XkbConfigRtrnPrivRec,*XkbConfigRtrnPrivPtr;
|
||||
|
||||
typedef struct _XkbConfigModInfo {
|
||||
Bool replace;
|
||||
unsigned char mods;
|
||||
unsigned char mods_clear;
|
||||
unsigned short vmods;
|
||||
unsigned short vmods_clear;
|
||||
} XkbConfigModInfoRec,*XkbConfigModInfoPtr;
|
||||
|
||||
typedef struct _XkbConfigUnboundMod {
|
||||
unsigned char what;
|
||||
unsigned char mods;
|
||||
unsigned short vmods;
|
||||
short merge;
|
||||
char * name;
|
||||
} XkbConfigUnboundModRec,*XkbConfigUnboundModPtr;
|
||||
|
||||
#define XkbCF_MergeSet 0
|
||||
#define XkbCF_MergeAdd 1
|
||||
#define XkbCF_MergeRemove 2
|
||||
|
||||
#define XkbCF_InitialMods (1L<<0)
|
||||
#define XkbCF_InternalMods (1L<<1)
|
||||
#define XkbCF_IgnoreLockMods (1L<<2)
|
||||
#define XkbCF_InitialCtrls (1L<<3)
|
||||
#define XkbCF_AccessXTimeout (1L<<4)
|
||||
#define XkbCF_AccessXTimeoutCtrlsOn (1L<<5)
|
||||
#define XkbCF_AccessXTimeoutCtrlsOff (1L<<6)
|
||||
#define XkbCF_AccessXTimeoutOptsOn (1L<<7)
|
||||
#define XkbCF_AccessXTimeoutOptsOff (1L<<8)
|
||||
#define XkbCF_GroupsWrap (1L<<9)
|
||||
#define XkbCF_InitialOpts (1L<<10)
|
||||
|
||||
typedef struct _XkbConfigRtrn {
|
||||
unsigned defined;
|
||||
int error;
|
||||
int line;
|
||||
|
||||
int click_volume;
|
||||
int bell_volume;
|
||||
int bell_pitch;
|
||||
int bell_duration;
|
||||
int repeat_delay;
|
||||
int repeat_interval;
|
||||
|
||||
char * rules_file;
|
||||
char * model;
|
||||
char * layout;
|
||||
char * variant;
|
||||
char * options;
|
||||
|
||||
char * keymap;
|
||||
char * keycodes;
|
||||
char * geometry;
|
||||
char * phys_symbols;
|
||||
char * symbols;
|
||||
char * types;
|
||||
char * compat;
|
||||
|
||||
Bool replace_initial_ctrls;
|
||||
unsigned long initial_ctrls;
|
||||
unsigned long initial_ctrls_clear;
|
||||
|
||||
Bool replace_initial_opts;
|
||||
unsigned short initial_opts;
|
||||
unsigned short initial_opts_clear;
|
||||
|
||||
XkbConfigModInfoRec initial_mods;
|
||||
XkbConfigModInfoRec internal_mods;
|
||||
XkbConfigModInfoRec ignore_lock_mods;
|
||||
|
||||
short num_unbound_mods;
|
||||
short sz_unbound_mods;
|
||||
XkbConfigUnboundModPtr unbound_mods;
|
||||
|
||||
int groups_wrap;
|
||||
int slow_keys_delay;
|
||||
int debounce_delay;
|
||||
int mk_delay;
|
||||
int mk_interval;
|
||||
int mk_time_to_max;
|
||||
int mk_max_speed;
|
||||
int mk_curve;
|
||||
int ax_timeout;
|
||||
|
||||
Bool replace_axt_ctrls_on;
|
||||
Bool replace_axt_ctrls_off;
|
||||
unsigned long axt_ctrls_on;
|
||||
unsigned long axt_ctrls_off;
|
||||
unsigned long axt_ctrls_ignore;
|
||||
|
||||
Bool replace_axt_opts_off;
|
||||
Bool replace_axt_opts_on;
|
||||
unsigned short axt_opts_off;
|
||||
unsigned short axt_opts_on;
|
||||
unsigned short axt_opts_ignore;
|
||||
XkbConfigRtrnPrivPtr priv;
|
||||
} XkbConfigRtrnRec;
|
||||
|
||||
typedef struct _XkbConfigField {
|
||||
char * field;
|
||||
unsigned char field_id;
|
||||
} XkbConfigFieldRec;
|
||||
|
||||
typedef struct _XkbConfigFields {
|
||||
unsigned short cfg_id;
|
||||
unsigned short num_fields;
|
||||
XkbConfigFieldPtr fields;
|
||||
XkbConfigParseFunc parser;
|
||||
XkbConfigFinishFunc finish;
|
||||
XPointer priv;
|
||||
struct _XkbConfigFields *next;
|
||||
} XkbConfigFieldsRec;
|
||||
|
||||
#define XkbCF_EOF -1
|
||||
#define XkbCF_Unknown 0
|
||||
#define XkbCF_EOL 1
|
||||
#define XkbCF_Semi 2
|
||||
#define XkbCF_Equals 3
|
||||
#define XkbCF_PlusEquals 4
|
||||
#define XkbCF_MinusEquals 5
|
||||
#define XkbCF_Plus 6
|
||||
#define XkbCF_Minus 7
|
||||
#define XkbCF_String 10
|
||||
#define XkbCF_Ident 11
|
||||
#define XkbCF_Integer 12
|
||||
|
||||
#define XkbCF_UnterminatedString 100
|
||||
#define XkbCF_BadAlloc 101
|
||||
#define XkbCF_MissingIdent 102
|
||||
#define XkbCF_MissingEquals 103
|
||||
#define XkbCF_ExpectedEOS 104
|
||||
#define XkbCF_ExpectedBoolean 105
|
||||
#define XkbCF_ExpectedInteger 106
|
||||
#define XkbCF_ExpectedString 107
|
||||
#define XkbCF_ExpectedModifier 108
|
||||
#define XkbCF_ExpectedControl 109
|
||||
#define XkbCF_ExpectedAXOption 110
|
||||
#define XkbCF_ExpectedOperator 111
|
||||
#define XkbCF_ExpectedOORGroupBehavior 112
|
||||
|
||||
typedef union {
|
||||
int ival;
|
||||
char * str;
|
||||
} XkbCFScanResultRec,*XkbCFScanResultPtr;
|
||||
|
||||
extern XkbConfigFieldsPtr XkbCFDflts;
|
||||
|
||||
_XFUNCPROTOBEGIN
|
||||
|
||||
extern int XkbCFScan(
|
||||
FILE * /* file */,
|
||||
XkbCFScanResultPtr /* val_rtrn */,
|
||||
XkbConfigRtrnPtr /* rtrn */
|
||||
);
|
||||
|
||||
extern XkbConfigFieldsPtr XkbCFDup(
|
||||
XkbConfigFieldsPtr /* fields */
|
||||
);
|
||||
|
||||
extern XkbConfigFieldsPtr XkbCFFree(
|
||||
XkbConfigFieldsPtr /* fields */,
|
||||
Bool /* all */
|
||||
);
|
||||
|
||||
extern XkbConfigUnboundModPtr XkbCFAddModByName(
|
||||
XkbConfigRtrnPtr /* rtrn */,
|
||||
int /* what */,
|
||||
char * /* name */,
|
||||
Bool /* merge */,
|
||||
XkbConfigUnboundModPtr /* last */
|
||||
);
|
||||
|
||||
extern Bool XkbCFBindMods(
|
||||
XkbConfigRtrnPtr /* rtrn */,
|
||||
XkbDescPtr /* xkb */
|
||||
);
|
||||
|
||||
extern Bool XkbCFApplyMods(
|
||||
XkbConfigRtrnPtr /* rtrn */,
|
||||
int /* what */,
|
||||
XkbConfigModInfoPtr /* info */
|
||||
);
|
||||
|
||||
extern Bool XkbCFApplyRtrnValues(
|
||||
XkbConfigRtrnPtr /* rtrn */,
|
||||
XkbConfigFieldsPtr /* fields */,
|
||||
XkbDescPtr /* xkb */
|
||||
);
|
||||
|
||||
extern XkbConfigRtrnPrivPtr XkbCFAddPrivate(
|
||||
XkbConfigRtrnPtr /* rtrn */,
|
||||
XkbConfigFieldsPtr /* fields */,
|
||||
XPointer /* ptr */
|
||||
);
|
||||
|
||||
extern void XkbCFFreeRtrn(
|
||||
XkbConfigRtrnPtr /* rtrn */,
|
||||
XkbConfigFieldsPtr /* fields */,
|
||||
XkbDescPtr /* xkb */
|
||||
);
|
||||
|
||||
extern Bool XkbCFParse(
|
||||
FILE * /* file */,
|
||||
XkbConfigFieldsPtr /* fields */,
|
||||
XkbDescPtr /* xkb */,
|
||||
XkbConfigRtrnPtr /* rtrn */
|
||||
);
|
||||
|
||||
extern void XkbCFReportError(
|
||||
FILE * /* file */,
|
||||
char * /* name */,
|
||||
int /* error */,
|
||||
int /* line */
|
||||
);
|
||||
|
||||
_XFUNCPROTOEND
|
||||
|
||||
#endif /* _XKBCONFIG_H_ */
|
Loading…
Add table
Add a link
Reference in a new issue