diff options
Diffstat (limited to 'vapi/external-libs.vapi')
-rw-r--r-- | vapi/external-libs.vapi | 259 |
1 files changed, 259 insertions, 0 deletions
diff --git a/vapi/external-libs.vapi b/vapi/external-libs.vapi new file mode 100644 index 0000000..1489216 --- /dev/null +++ b/vapi/external-libs.vapi @@ -0,0 +1,259 @@ +using X; + +[CCode (cprefix = "", lower_case_cprefix = "", cheader_filename = "X11/XKBlib.h")] +namespace Xkb { + + [CCode (cname = "XkbGetKeyboard")] + public Desc get_keyboard (X.Display dpy, uint which, uint device_spec); + + [CCode (cname = "XkbSetMap")] + public void set_map (X.Display dpy, uint which, Desc xkb); + + [CCode (cname = "XkbChangeMap")] + public bool change_map (X.Display dpy, Desc xkb, MapChanges changes); + + [CCode (cname = "XkbFreeKeyboard")] + public void free_keyboard (Desc xkb, uint which, bool free_all); + + [CCode (cname = "XkbGetState")] + public void get_state (X.Display dpy, uint device_spec, out State state); + + [CCode (cname = "XkbSelectEvents")] + public void select_events (X.Display dpy, uint device_spec, ulong bits_to_change, + ulong values_for_bits); + + [CCode (cname = "XkbLatchModifiers")] + public void latch_modifiers (X.Display dpy, uint device_spec, uint affect, + uint values); + + [CCode (cname = "XkbLockModifiers")] + public void lock_modifiers (X.Display dpy, uint device_spec, uint affect, + uint values); + + + [Compact] + [CCode (cname = "XkbAnyEvent", free_function = "")] + public struct AnyEvent { + int xkb_type; + } + + [Compact] + [CCode (cname = "XkbStateNotifyEvent", free_function = "")] + public struct StateNotifyEvent { + uint changed; + int locked_group; + uint mods; + } + + [Compact] + [CCode (cname = "XkbEvent", free_function = "")] + public struct Event { + int type; + AnyEvent any; + StateNotifyEvent state; + } + + [Compact] + [CCode (cname = "XkbStateRec", free_function = "")] + public struct State { + uchar group; + uchar locked_group; + ushort base_group; + ushort latched_group; + uchar mods; + uchar base_mods; + uchar latched_mods; + uchar locked_mods; + uchar compat_state; + uchar grab_mods; + uchar compat_grab_mods; + uchar lookup_mods; + uchar compat_lookup_mods; + ushort ptr_buttons; + } + + [Compact] + [CCode (cname = "XkbDescRec", free_function = "")] + public class Desc { + public X.Display dpy; + public ushort flags; + public ushort device_spec; + public uchar min_key_code; + public uchar max_key_code; + public Controls ctrls; + public ServerMap server; + public ClientMap map; + public Indicator indicators; + public Names names; + public CompatMap compat; + public Geometry geom; + } + + [Compact] + [CCode (cname = "XkbControlsRec", free_function = "")] + public class Controls { + } + + [Compact] + [CCode (cname = "XkbServerMapRec", free_function = "")] + public class ServerMap { + } + + [Compact] + [CCode (cname = "XkbKeyTypeRec", free_function = "")] + public struct KeyType { + } + + [CCode (cname = "XkbSymMapRec", free_function = "")] + public struct SymMap { + uchar kt_index[4]; + uchar group_info; + uchar width; + ushort offset; + } + + [CCode (cname = "XkbMapChangesRec", free_function = "")] + public struct MapChanges { + ushort changed; + char min_key_code; + char max_key_code; + uchar first_type; + uchar num_types; + char first_key_sym; + uchar num_key_syms; + char first_key_act; + uchar num_key_acts; + char first_key_behavior; + uchar num_key_behaviors; + char first_key_explicit; + uchar num_key_explicit; + char first_modmap_key; + uchar num_modmap_keys; + char first_vmodmap_key; + uchar num_vmodmap_keys; + uchar pad; + ushort vmods; + } + + [Compact] + [CCode (cname = "XkbClientMapRec", free_function = "")] + public class ClientMap { + public uchar size_types; + public uchar num_types; + public KeyType[] types; + + public ushort size_syms; + public ushort num_syms; + [CCode (array_length = false, array_null_terminated = true)] + public ulong[] syms; + [CCode (array_length = false, array_null_terminated = true)] + public SymMap[] key_sym_map; + + [CCode (array_length = false, array_null_terminated = true)] + public uchar[] modmap; + } + + [Compact] + [CCode (cname = "XkbIndicatorRec", free_function = "")] + public class Indicator { + } + + [Compact] + [CCode (cname = "XkbNamesRec", free_function = "")] + public class Names { + } + + [Compact] + [CCode (cname = "XkbCompatMapRec", free_function = "")] + public class CompatMap { + } + + [Compact] + [CCode (cname = "XkbGeometryRec", free_function = "")] + public class Geometry { + } + + [CCode (cname = "XkbUseCoreKbd")] + public int UseCoreKbd; + [CCode (cname = "XkbUseCorePtr")] + public int UseCorePtr; + [CCode (cname = "XkbDfltXIClass")] + public int DfltXIClass; + [CCode (cname = "XkbDfltXIId")] + public int DfltXIId; + [CCode (cname = "XkbAllXIClasses")] + public int AllXIClasses; + [CCode (cname = "XkbAllXIIds")] + public int AllXIIds; + [CCode (cname = "XkbXINone")] + public int XINone; + + [CCode (cname = "XkbGBN_TypesMask")] + public int GBN_TypesMask; + [CCode (cname = "XkbGBN_CompatMapMask")] + public int GBN_CompatMapMask; + [CCode (cname = "XkbGBN_ClientSymbolsMask")] + public int GBN_ClientSymbolsMask; + [CCode (cname = "XkbGBN_ServerSymbolsMask")] + public int GBN_ServerSymbolsMask; + [CCode (cname = "XkbGBN_SymbolsMask")] + public int GBN_SymbolsMask; + [CCode (cname = "XkbGBN_IndicatorMapMask")] + public int GBN_IndicatorMapMask; + [CCode (cname = "XkbGBN_KeyNamesMask")] + public int GBN_KeyNamesMask; + [CCode (cname = "XkbGBN_GeometryMask")] + public int GBN_GeometryMask; + [CCode (cname = "XkbGBN_OtherNamesMask")] + public int GBN_OtherNamesMask; + [CCode (cname = "XkbGBN_AllComponentsMask")] + public int GBN_AllComponentsMask; + + [CCode (cname = "XkbOneLevelIndex")] + public int OneLevelIndex; + + [CCode (cname = "XkbNewKeyboardNotifyMask")] + public int NewKeyboardNotifyMask; + [CCode (cname = "XkbMapNotifyMask")] + public int MapNotifyMask; + [CCode (cname = "XkbStateNotifyMask")] + public int StateNotifyMask; + [CCode (cname = "XkbControlsNotifyMask")] + public int ControlsNotifyMask; + [CCode (cname = "XkbIndicatorStateNotifyMask")] + public int IndicatorStateNotifyMask; + [CCode (cname = "XkbIndicatorMapNotifyMask")] + public int IndicatorMapNotifyMask; + [CCode (cname = "XkbNamesNotifyMask")] + public int NamesNotifyMask; + [CCode (cname = "XkbCompatMapNotifyMask")] + public int CompatMapNotifyMask; + [CCode (cname = "XkbBellNotifyMask")] + public int BellNotifyMask; + [CCode (cname = "XkbActionMessageMask")] + public int ActionMessageMask; + [CCode (cname = "XkbAccessXNotifyMask")] + public int AccessXNotifyMask; + [CCode (cname = "XkbExtensionDeviceNotifyMask")] + public int ExtensionDeviceNotifyMask; + [CCode (cname = "XkbAllEventsMask")] + public int AllEventsMask; + + [CCode (cname = "XkbStateNotify")] + public int StateNotify; + + [CCode (cname = "XkbGroupStateMask")] + public int GroupStateMask; + + [CCode (cname = "XkbModifierStateMask")] + public int ModifierStateMask; + + [CCode (cname = "XkbAllMapComponentsMask")] + public int AllMapComponentsMask; + + [CCode (cname = "XkbKeySymsMask")] + public int KeySymsMask; + + [CCode (cname = "XkbKeyTypesMask")] + public int KeyTypesMask; +} |