- <bitcase>
- <enumref ref="GBNDetail">ClientSymbols</enumref>
- <field name="clientDeviceID" type="CARD8" />
- <pad bytes="2" />
- <field name="clientMinKeyCode" type="KEYCODE" />
- <field name="clientMaxKeyCode" type="KEYCODE" />
- <field name="present" type="CARD16" enum="MapPart" />
- <field name="firstType" type="CARD8" />
- <field name="nTypes" type="CARD8" />
- <field name="totalTypes" type="CARD8" />
- <field name="firstKeySym" type="KEYCODE" />
- <field name="totalSyms" type="CARD16" />
- <field name="nKeySyms" type="CARD8" />
- <field name="firstKeyAction" type="KEYCODE" />
- <field name="totalActions" type="CARD16" />
- <field name="nKeyActions" type="CARD8" />
- <field name="firstKeyBehavior" type="KEYCODE" />
- <field name="nKeyBehaviors" type="CARD8" />
- <field name="totalKeyBehaviors" type="CARD8" />
- <field name="firstKeyExplicit" type="KEYCODE" />
- <field name="nKeyExplicit" type="CARD8" />
- <field name="totalKeyExplicit" type="CARD8" />
- <field name="firstModMapKey" type="KEYCODE" />
- <field name="nModMapKeys" type="CARD8" />
- <field name="totalModMapKeys" type="CARD8" />
- <field name="firstVModMapKey" type="KEYCODE" />
- <field name="nVModMapKeys" type="CARD8" />
- <field name="totalVModMapKeys" type="CARD8" />
- <pad bytes="1" />
- <field name="virtualMods" type="CARD16" mask="VMod" />
- <switch name="map">
- <fieldref>present</fieldref>
- <bitcase>
- <enumref ref="MapPart">KeyTypes</enumref>
- <list name="types_rtrn" type="KeyType">
- <fieldref>nTypes</fieldref>
- </list>
- </bitcase>
- <bitcase>
- <enumref ref="MapPart">KeySyms</enumref>
- <list name="syms_rtrn" type="KeySymMap">
- <fieldref>nKeySyms</fieldref>
- </list>
- </bitcase>
- <bitcase>
- <enumref ref="MapPart">KeyActions</enumref>
- <list name="acts_rtrn_count" type="CARD8">
- <fieldref>nKeyActions</fieldref>
- </list>
- <list name="acts_rtrn_acts" type="Action">
- <fieldref>totalActions</fieldref>
- </list>
- </bitcase>
- <bitcase>
- <enumref ref="MapPart">KeyBehaviors</enumref>
- <list name="behaviors_rtrn" type="SetBehavior">
- <fieldref>totalKeyBehaviors</fieldref>
- </list>
- </bitcase>
- <bitcase>
- <enumref ref="MapPart">VirtualMods</enumref>
- <list name="vmods_rtrn" type="CARD8" mask="ModMask">
- <fieldref>nVModMapKeys</fieldref>
- </list>
- </bitcase>
- <bitcase>
- <enumref ref="MapPart">ExplicitComponents</enumref>
- <list name="explicit_rtrn" type="SetExplicit">
- <fieldref>totalKeyExplicit</fieldref>
- </list>
- </bitcase>
- <bitcase>
- <enumref ref="MapPart">ModifierMap</enumref>
- <list name="modmap_rtrn" type="KeyModMap">
- <fieldref>totalModMapKeys</fieldref>
- </list>
- </bitcase>
- <bitcase>
- <enumref ref="MapPart">VirtualModMap</enumref>
- <list name="vmodmap_rtrn" type="KeyVModMap">
- <fieldref>totalVModMapKeys</fieldref>
- </list>
- </bitcase>
- </switch>
- </bitcase>
- <bitcase>
- <enumref ref="GBNDetail">ServerSymbols</enumref>
- <field name="serverDeviceID" type="CARD8" />
- <pad bytes="2" />
- <field name="serverMinKeyCode" type="KEYCODE" />
- <field name="serverMaxKeyCode" type="KEYCODE" />
- <field name="present" type="CARD16" enum="MapPart" />
- <field name="firstType" type="CARD8" />
- <field name="nTypes" type="CARD8" />
- <field name="totalTypes" type="CARD8" />
- <field name="firstKeySym" type="KEYCODE" />
- <field name="totalSyms" type="CARD16" />
- <field name="nKeySyms" type="CARD8" />
- <field name="firstKeyAction" type="KEYCODE" />
- <field name="totalActions" type="CARD16" />
- <field name="nKeyActions" type="CARD8" />
- <field name="firstKeyBehavior" type="KEYCODE" />
- <field name="nKeyBehaviors" type="CARD8" />
- <field name="totalKeyBehaviors" type="CARD8" />
- <field name="firstKeyExplicit" type="KEYCODE" />
- <field name="nKeyExplicit" type="CARD8" />
- <field name="totalKeyExplicit" type="CARD8" />
- <field name="firstModMapKey" type="KEYCODE" />
- <field name="nModMapKeys" type="CARD8" />
- <field name="totalModMapKeys" type="CARD8" />
- <field name="firstVModMapKey" type="KEYCODE" />
- <field name="nVModMapKeys" type="CARD8" />
- <field name="totalVModMapKeys" type="CARD8" />
- <pad bytes="1" />
- <field name="virtualMods" type="CARD16" mask="VMod" />
- <switch name="map">
- <fieldref>present</fieldref>
- <bitcase>
- <enumref ref="MapPart">KeyTypes</enumref>
- <list name="types_rtrn" type="KeyType">
- <fieldref>nTypes</fieldref>
- </list>
- </bitcase>
- <bitcase>
- <enumref ref="MapPart">KeySyms</enumref>
- <list name="syms_rtrn" type="KeySymMap">
- <fieldref>nKeySyms</fieldref>
- </list>
- </bitcase>
- <bitcase>
- <enumref ref="MapPart">KeyActions</enumref>
- <list name="acts_rtrn_count" type="CARD8">
- <fieldref>nKeyActions</fieldref>
- </list>
- <list name="acts_rtrn_acts" type="Action">
- <fieldref>totalActions</fieldref>
- </list>
- </bitcase>
- <bitcase>
- <enumref ref="MapPart">KeyBehaviors</enumref>
- <list name="behaviors_rtrn" type="SetBehavior">
- <fieldref>totalKeyBehaviors</fieldref>
- </list>
- </bitcase>
- <bitcase>
- <enumref ref="MapPart">VirtualMods</enumref>
- <list name="vmods_rtrn" type="CARD8" mask="ModMask">
- <fieldref>nVModMapKeys</fieldref>
- </list>
- </bitcase>
- <bitcase>
- <enumref ref="MapPart">ExplicitComponents</enumref>
- <list name="explicit_rtrn" type="SetExplicit">
- <fieldref>totalKeyExplicit</fieldref>
- </list>
- </bitcase>
- <bitcase>
- <enumref ref="MapPart">ModifierMap</enumref>
- <list name="modmap_rtrn" type="KeyModMap">
- <fieldref>totalModMapKeys</fieldref>
- </list>
- </bitcase>
- <bitcase>
- <enumref ref="MapPart">VirtualModMap</enumref>
- <list name="vmodmap_rtrn" type="KeyVModMap">
- <fieldref>totalVModMapKeys</fieldref>
- </list>
- </bitcase>
- </switch>
- </bitcase>
- <bitcase>