示例#1
0
        VirtualKey ReadVirtualKey(ContentReader input)
        {
            uint            vk    = input.ReadUInt32();
            uint            sc    = input.ReadUInt32();
            VirtualKeyFlags flags = (VirtualKeyFlags)input.ReadUInt32();

            VirtualKeyValue[] shiftStates = new VirtualKeyValue[((int)ShiftState.ShftSpcl + 1) * 2];
            for (int i = 0; i < shiftStates.Length; i++)
            {
                bool hasValue = input.ReadBoolean();
                if (hasValue == true)
                {
                    shiftStates[i] = ReadVirtualKeyValue(input);
                }
            }
            return(new VirtualKey(flags, vk, sc, shiftStates));
        }
示例#2
0
 internal VirtualKeyValue(uint scanCode, VirtualKeyValue value)
     : this(scanCode, value.Characters, value.IsDeadKey)
 {
 }