summaryrefslogtreecommitdiff
path: root/Library/Artifacts/5c/5ccc85bba477783ccdf6a4a6204cb461
blob: 7c9112125d68d1b298712629087c1e5451b42925 (plain)
ofshex dumpascii
0000 00 00 0f ad 00 01 59 90 00 00 00 15 00 00 10 00 00 00 00 00 32 30 31 39 2e 33 2e 36 66 31 00 fe ......Y.............2019.3.6f1..
0020 ff ff ff 01 02 00 00 00 0b 04 00 00 00 ff ff 66 9a 86 21 eb 14 35 98 39 dd 34 1d 51 0e c1 f3 42 ...............f..!..5.9.4.Q...B
0040 00 00 00 ed 00 00 00 02 00 00 00 00 00 00 00 37 00 00 80 ff ff ff ff 00 00 00 00 00 80 00 00 00 ...............7................
0060 00 00 00 00 00 00 00 01 00 01 00 a6 03 00 80 b2 01 00 80 04 00 00 00 01 00 00 00 01 00 00 00 00 ................................
0080 00 00 00 00 00 00 00 01 00 01 00 0d 00 00 00 45 04 00 80 0c 00 00 00 02 00 00 00 01 00 00 00 00 ...............E................
00a0 00 00 00 00 00 00 00 01 00 02 00 de 00 00 80 23 00 00 00 04 00 00 00 03 00 00 00 01 00 80 00 00 ...............#................
00c0 00 00 00 00 00 00 00 01 00 02 00 2e 03 00 80 2c 00 00 00 08 00 00 00 04 00 00 00 01 00 80 00 00 ...............,................
00e0 00 00 00 00 00 00 00 01 00 01 00 35 00 00 00 61 04 00 80 0c 00 00 00 05 00 00 00 01 00 00 00 00 ...........5...a................
0100 00 00 00 00 00 00 00 01 00 02 00 de 00 00 80 23 00 00 00 04 00 00 00 06 00 00 00 01 00 80 00 00 ...............#................
0120 00 00 00 00 00 00 00 01 00 02 00 2e 03 00 80 2c 00 00 00 08 00 00 00 07 00 00 00 01 00 80 00 00 ...............,................
0140 00 00 00 00 00 00 00 01 00 01 00 86 02 00 80 72 04 00 80 0c 00 00 00 08 00 00 00 01 00 00 00 00 ...............r................
0160 00 00 00 00 00 00 00 01 00 02 00 de 00 00 80 23 00 00 00 04 00 00 00 09 00 00 00 01 00 80 00 00 ...............#................
0180 00 00 00 00 00 00 00 01 00 02 00 2e 03 00 80 2c 00 00 00 08 00 00 00 0a 00 00 00 01 00 80 00 00 ...............,................
01a0 00 00 00 00 00 00 00 01 00 01 00 48 03 00 80 ab 01 00 80 ff ff ff ff 0b 00 00 00 01 80 08 00 00 ...........H....................
01c0 00 00 00 00 00 00 00 01 00 02 01 31 00 00 80 31 00 00 80 ff ff ff ff 0c 00 00 00 01 40 08 00 00 ...........1...1............@...
01e0 00 00 00 00 00 00 00 01 00 03 00 de 00 00 80 1b 03 00 80 04 00 00 00 0d 00 00 00 01 00 08 00 00 ................................
0200 00 00 00 00 00 00 00 01 00 03 00 51 00 00 80 6a 00 00 80 01 00 00 00 0e 00 00 00 01 00 08 00 00 ...........Q...j................
0220 00 00 00 00 00 00 00 01 00 01 00 f1 00 00 80 4a 00 00 00 ff ff ff ff 0f 00 00 00 00 c0 00 00 00 ...............J................
0240 00 00 00 00 00 00 00 01 00 02 01 31 00 00 80 31 00 00 80 ff ff ff ff 10 00 00 00 00 80 00 00 00 ...........1...1................
0260 00 00 00 00 00 00 00 01 00 03 00 de 00 00 80 1b 03 00 80 04 00 00 00 11 00 00 00 00 00 00 00 00 ................................
0280 00 00 00 00 00 00 00 01 00 03 00 1f 02 00 80 6a 00 00 80 ff ff ff ff 12 00 00 00 00 80 00 00 00 ...............j................
02a0 00 00 00 00 00 00 00 01 00 04 00 5c 00 00 00 9b 00 00 80 ff ff ff ff 13 00 00 00 00 80 00 00 00 ...........\....................
02c0 00 00 00 00 00 00 00 01 00 05 00 48 03 00 80 72 00 00 00 ff ff ff ff 14 00 00 00 00 80 00 00 00 ...........H...r................
02e0 00 00 00 00 00 00 00 01 00 06 01 31 00 00 80 31 00 00 80 ff ff ff ff 15 00 00 00 01 40 00 00 00 ...........1...1............@...
0300 00 00 00 00 00 00 00 01 00 07 00 de 00 00 80 1b 03 00 80 04 00 00 00 16 00 00 00 01 00 00 00 00 ................................
0320 00 00 00 00 00 00 00 01 00 07 00 51 00 00 80 6a 00 00 80 01 00 00 00 17 00 00 00 01 00 00 00 00 ...........Q...j................
0340 00 00 00 00 00 00 00 01 00 05 00 48 03 00 80 77 00 00 00 ff ff ff ff 18 00 00 00 00 80 00 00 00 ...........H...w................
0360 00 00 00 00 00 00 00 01 00 06 01 31 00 00 80 31 00 00 80 ff ff ff ff 19 00 00 00 01 40 00 00 00 ...........1...1............@...
0380 00 00 00 00 00 00 00 01 00 07 00 de 00 00 80 1b 03 00 80 04 00 00 00 1a 00 00 00 01 00 00 00 00 ................................
03a0 00 00 00 00 00 00 00 01 00 07 00 51 00 00 80 6a 00 00 80 01 00 00 00 1b 00 00 00 01 00 00 00 00 ...........Q...j................
03c0 00 00 00 00 00 00 00 01 00 05 00 48 03 00 80 80 00 00 00 ff ff ff ff 1c 00 00 00 00 80 00 00 00 ...........H....................
03e0 00 00 00 00 00 00 00 01 00 06 01 31 00 00 80 31 00 00 80 ff ff ff ff 1d 00 00 00 01 40 00 00 00 ...........1...1............@...
0400 00 00 00 00 00 00 00 01 00 07 00 de 00 00 80 1b 03 00 80 04 00 00 00 1e 00 00 00 01 00 00 00 00 ................................
0420 00 00 00 00 00 00 00 01 00 07 00 51 00 00 80 6a 00 00 80 01 00 00 00 1f 00 00 00 01 00 00 00 00 ...........Q...j................
0440 00 00 00 00 00 00 00 01 00 04 00 79 02 00 80 0a 03 00 80 0c 00 00 00 20 00 00 00 00 00 00 00 00 ...........y....................
0460 00 00 00 00 00 00 00 01 00 05 00 de 00 00 80 23 00 00 00 04 00 00 00 21 00 00 00 01 00 80 00 00 ...............#.......!........
0480 00 00 00 00 00 00 00 01 00 05 00 2e 03 00 80 2c 00 00 00 08 00 00 00 22 00 00 00 01 00 80 00 00 ...............,......."........
04a0 00 00 00 00 00 00 00 01 00 01 00 11 03 00 80 85 00 00 00 ff ff ff ff 23 00 00 00 01 40 08 00 00 .......................#....@...
04c0 00 00 00 00 00 00 00 01 00 02 01 31 00 00 80 31 00 00 80 ff ff ff ff 24 00 00 00 01 00 08 00 00 ...........1...1.......$........
04e0 00 00 00 00 00 00 00 01 00 03 00 de 00 00 80 1b 03 00 80 04 00 00 00 25 00 00 00 01 00 08 00 00 .......................%........
0500 00 00 00 00 00 00 00 01 00 03 00 2e 03 00 80 6a 00 00 80 08 00 00 00 26 00 00 00 01 00 08 00 00 ...............j.......&........
0520 00 00 00 00 00 00 00 01 00 01 00 d5 03 00 80 93 00 00 00 ff ff ff ff 27 00 00 00 00 80 00 00 00 .......................'........
0540 00 00 00 00 00 00 00 01 00 02 01 31 00 00 80 31 00 00 80 ff ff ff ff 28 00 00 00 00 c0 00 00 00 ...........1...1.......(........
0560 00 00 00 00 00 00 00 01 00 03 00 de 00 00 80 1b 03 00 80 04 00 00 00 29 00 00 00 00 00 00 00 00 .......................)........
0580 00 00 00 00 00 00 00 01 00 03 00 1f 02 00 80 6a 00 00 80 ff ff ff ff 2a 00 00 00 00 80 00 00 00 ...............j.......*........
05a0 00 00 00 00 00 00 00 01 00 04 00 48 03 00 80 9b 00 00 80 ff ff ff ff 2b 00 00 00 00 80 00 00 00 ...........H...........+........
05c0 00 00 00 00 00 00 00 01 00 05 01 31 00 00 80 31 00 00 80 ff ff ff ff 2c 00 00 00 01 40 00 00 00 ...........1...1.......,....@...
05e0 00 00 00 00 00 00 00 01 00 06 00 de 00 00 80 1b 03 00 80 04 00 00 00 2d 00 00 00 01 00 00 00 00 .......................-........
0600 00 00 00 00 00 00 00 01 00 06 00 51 00 00 80 6a 00 00 80 01 00 00 00 2e 00 00 00 01 00 00 00 00 ...........Q...j................
0620 00 00 00 00 00 00 00 01 00 04 00 79 02 00 80 0a 03 00 80 0c 00 00 00 2f 00 00 00 00 00 00 00 00 ...........y.........../........
0640 00 00 00 00 00 00 00 01 00 05 00 de 00 00 80 23 00 00 00 04 00 00 00 30 00 00 00 01 00 80 00 00 ...............#.......0........
0660 00 00 00 00 00 00 00 01 00 05 00 2e 03 00 80 2c 00 00 00 08 00 00 00 31 00 00 00 01 00 80 00 00 ...............,.......1........
0680 00 00 00 00 00 00 00 01 00 01 00 20 03 00 80 a7 00 00 00 02 00 00 00 32 00 00 00 00 40 00 00 00 .......................2....@...
06a0 00 00 00 00 00 00 00 01 00 01 00 be 02 00 80 b6 00 00 00 0c 00 00 00 33 00 00 00 00 40 00 00 00 .......................3....@...
06c0 00 00 00 00 00 00 00 01 00 02 00 de 00 00 80 23 00 00 00 04 00 00 00 34 00 00 00 01 00 80 00 00 ...............#.......4........
06e0 00 00 00 00 00 00 00 01 00 02 00 2e 03 00 80 2c 00 00 00 08 00 00 00 35 00 00 00 01 00 80 00 00 ...............,.......5........
0700 00 00 00 00 00 00 00 01 00 01 00 48 03 00 80 bb 00 00 00 ff ff ff ff 36 00 00 00 01 80 00 00 00 ...........H...........6........
0720 00 00 00 00 00 00 00 01 00 02 01 31 00 00 80 31 00 00 80 ff ff ff ff 37 00 00 00 01 40 00 00 00 ...........1...1.......7....@...
0740 00 00 00 00 00 00 00 01 00 03 00 de 00 00 80 1b 03 00 80 04 00 00 00 38 00 00 00 01 00 00 00 00 .......................8........
0760 00 00 00 00 00 00 00 01 00 03 00 51 00 00 80 6a 00 00 80 01 00 00 00 39 00 00 00 01 00 00 00 00 ...........Q...j.......9........
0780 00 00 00 00 00 00 00 01 00 01 00 48 03 00 80 c6 00 00 00 ff ff ff ff 3a 00 00 00 01 80 00 00 00 ...........H...........:........
07a0 00 00 00 00 00 00 00 01 00 02 01 31 00 00 80 31 00 00 80 ff ff ff ff 3b 00 00 00 01 40 00 00 00 ...........1...1.......;....@...
07c0 00 00 00 00 00 00 00 01 00 03 00 de 00 00 80 1b 03 00 80 04 00 00 00 3c 00 00 00 01 00 00 00 00 .......................<........
07e0 00 00 00 00 00 00 00 01 00 03 00 51 00 00 80 6a 00 00 80 01 00 00 00 3d 00 00 00 01 00 00 00 00 ...........Q...j.......=........
0800 00 00 00 00 00 00 00 01 00 01 00 48 03 00 80 d8 00 00 00 ff ff ff ff 3e 00 00 00 01 80 00 00 00 ...........H...........>........
0820 00 00 00 00 00 00 00 01 00 02 01 31 00 00 80 31 00 00 80 ff ff ff ff 3f 00 00 00 01 40 00 00 00 ...........1...1.......?....@...
0840 00 00 00 00 00 00 00 01 00 03 00 de 00 00 80 1b 03 00 80 04 00 00 00 40 00 00 00 01 00 00 00 00 .......................@........
0860 00 00 00 00 00 00 00 01 00 03 00 51 00 00 80 6a 00 00 80 01 00 00 00 41 00 00 00 01 00 00 00 00 ...........Q...j.......A........
0880 00 00 00 00 00 00 00 4d 6f 6e 6f 49 6d 70 6f 72 74 65 72 00 50 50 74 72 3c 45 64 69 74 6f 72 45 .......MonoImporter.PPtr<EditorE
08a0 78 74 65 6e 73 69 6f 6e 3e 00 6d 5f 46 69 6c 65 49 44 00 6d 5f 50 61 74 68 49 44 00 50 50 74 72 xtension>.m_FileID.m_PathID.PPtr
08c0 3c 50 72 65 66 61 62 49 6e 73 74 61 6e 63 65 3e 00 6d 5f 45 78 74 65 72 6e 61 6c 4f 62 6a 65 63 <PrefabInstance>.m_ExternalObjec
08e0 74 73 00 53 6f 75 72 63 65 41 73 73 65 74 49 64 65 6e 74 69 66 69 65 72 00 74 79 70 65 00 61 73 ts.SourceAssetIdentifier.type.as
0900 73 65 6d 62 6c 79 00 6e 61 6d 65 00 6d 5f 55 73 65 64 46 69 6c 65 49 44 73 00 6d 5f 44 65 66 61 sembly.name.m_UsedFileIDs.m_Defa
0920 75 6c 74 52 65 66 65 72 65 6e 63 65 73 00 65 78 65 63 75 74 69 6f 6e 4f 72 64 65 72 00 69 63 6f ultReferences.executionOrder.ico
0940 6e 00 6d 5f 55 73 65 72 44 61 74 61 00 6d 5f 41 73 73 65 74 42 75 6e 64 6c 65 4e 61 6d 65 00 6d n.m_UserData.m_AssetBundleName.m
0960 5f 41 73 73 65 74 42 75 6e 64 6c 65 56 61 72 69 61 6e 74 00 00 00 00 00 73 00 00 00 00 ff ff a3 _AssetBundleVariant.....s.......
0980 47 f1 d7 dc 8f 5a 35 36 a0 3a 21 40 69 c1 4a 2a 00 00 00 81 00 00 00 05 00 00 00 15 01 00 80 37 G....Z56.:!@i.J*...............7
09a0 00 00 80 ff ff ff ff 00 00 00 00 00 80 00 00 00 00 00 00 00 00 00 00 01 00 01 00 a6 03 00 80 b2 ................................
09c0 01 00 80 04 00 00 00 01 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 01 00 00 00 00 00 45 ...............................E
09e0 04 00 80 0c 00 00 00 02 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 02 00 de 00 00 80 16 ................................
0a00 00 00 00 04 00 00 00 03 00 00 00 01 00 80 00 00 00 00 00 00 00 00 00 01 00 02 00 2e 03 00 80 1f ................................
0a20 00 00 00 08 00 00 00 04 00 00 00 01 00 80 00 00 00 00 00 00 00 00 00 01 00 01 00 28 00 00 00 61 ...........................(...a
0a40 04 00 80 0c 00 00 00 05 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 02 00 de 00 00 80 16 ................................
0a60 00 00 00 04 00 00 00 06 00 00 00 01 00 80 00 00 00 00 00 00 00 00 00 01 00 02 00 2e 03 00 80 1f ................................
0a80 00 00 00 08 00 00 00 07 00 00 00 01 00 80 00 00 00 00 00 00 00 00 00 01 00 01 00 86 02 00 80 72 ...............................r
0aa0 04 00 80 0c 00 00 00 08 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 02 00 de 00 00 80 16 ................................
0ac0 00 00 00 04 00 00 00 09 00 00 00 01 00 80 00 00 00 00 00 00 00 00 00 01 00 02 00 2e 03 00 80 1f ................................
0ae0 00 00 00 08 00 00 00 0a 00 00 00 01 00 80 00 00 00 00 00 00 00 00 00 01 00 01 00 48 03 00 80 ab ...........................H....
0b00 01 00 80 ff ff ff ff 0b 00 00 00 01 80 08 00 00 00 00 00 00 00 00 00 01 00 02 01 31 00 00 80 31 ...........................1...1
0b20 00 00 80 ff ff ff ff 0c 00 00 00 01 40 08 00 00 00 00 00 00 00 00 00 01 00 03 00 de 00 00 80 1b ............@...................
0b40 03 00 80 04 00 00 00 0d 00 00 00 01 00 08 00 00 00 00 00 00 00 00 00 01 00 03 00 51 00 00 80 6a ...........................Q...j
0b60 00 00 80 01 00 00 00 0e 00 00 00 01 00 08 00 00 00 00 00 00 00 00 00 01 00 01 00 48 03 00 80 ea ...........................H....
0b80 01 00 80 ff ff ff ff 0f 00 00 00 01 80 00 00 00 00 00 00 00 00 00 00 01 00 02 01 31 00 00 80 31 ...........................1...1
0ba0 00 00 80 ff ff ff ff 10 00 00 00 01 40 00 00 00 00 00 00 00 00 00 00 01 00 03 00 de 00 00 80 1b ............@...................
0bc0 03 00 80 04 00 00 00 11 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 03 00 51 00 00 80 6a ...........................Q...j
0be0 00 00 80 01 00 00 00 12 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 01 00 f1 00 00 80 3d ...............................=
0c00 00 00 00 ff ff ff ff 13 00 00 00 01 80 00 00 00 00 00 00 00 00 00 00 01 00 02 01 31 00 00 80 31 ...........................1...1
0c20 00 00 80 ff ff ff ff 14 00 00 00 01 80 00 00 00 00 00 00 00 00 00 00 01 00 03 00 de 00 00 80 1b ................................
0c40 03 00 80 04 00 00 00 15 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 03 00 1f 02 00 80 6a ...............................j
0c60 00 00 80 ff ff ff ff 16 00 00 00 01 80 00 00 00 00 00 00 00 00 00 00 01 00 04 00 48 03 00 80 9b ...........................H....
0c80 00 00 80 ff ff ff ff 17 00 00 00 01 80 00 00 00 00 00 00 00 00 00 00 01 00 05 01 31 00 00 80 31 ...........................1...1
0ca0 00 00 80 ff ff ff ff 18 00 00 00 01 40 00 00 00 00 00 00 00 00 00 00 01 00 06 00 de 00 00 80 1b ............@...................
0cc0 03 00 80 04 00 00 00 19 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 06 00 51 00 00 80 6a ...........................Q...j
0ce0 00 00 80 01 00 00 00 1a 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 04 00 79 02 00 80 0a ...........................y....
0d00 03 00 80 0c 00 00 00 1b 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 05 00 de 00 00 80 16 ................................
0d20 00 00 00 04 00 00 00 1c 00 00 00 01 00 80 00 00 00 00 00 00 00 00 00 01 00 05 00 2e 03 00 80 1f ................................
0d40 00 00 00 08 00 00 00 1d 00 00 00 01 00 80 00 00 00 00 00 00 00 00 00 01 00 01 00 79 02 00 80 51 ...........................y...Q
0d60 00 00 00 0c 00 00 00 1e 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 02 00 de 00 00 80 16 ................................
0d80 00 00 00 04 00 00 00 1f 00 00 00 01 00 80 00 00 00 00 00 00 00 00 00 01 00 02 00 2e 03 00 80 1f ................................
0da0 00 00 00 08 00 00 00 20 00 00 00 01 00 80 00 00 00 00 00 00 00 00 00 01 00 01 00 de 00 00 80 58 ...............................X
0dc0 00 00 00 04 00 00 00 21 00 00 00 10 00 00 00 00 00 00 00 00 00 00 00 01 00 01 00 48 03 00 80 69 .......!...................H...i
0de0 00 00 00 ff ff ff ff 22 00 00 00 10 80 00 00 00 00 00 00 00 00 00 00 01 00 02 01 31 00 00 80 31 ......."...................1...1
0e00 00 00 80 ff ff ff ff 23 00 00 00 11 40 00 00 00 00 00 00 00 00 00 00 01 00 03 00 de 00 00 80 1b .......#....@...................
0e20 03 00 80 04 00 00 00 24 00 00 00 11 00 00 00 00 00 00 00 00 00 00 00 01 00 03 00 51 00 00 80 6a .......$...................Q...j
0e40 00 00 80 01 00 00 00 25 00 00 00 11 00 00 00 00 00 00 00 00 00 00 00 01 00 01 00 48 03 00 80 75 .......%...................H...u
0e60 00 00 00 ff ff ff ff 26 00 00 00 10 80 00 00 00 00 00 00 00 00 00 00 01 00 02 01 31 00 00 80 31 .......&...................1...1
0e80 00 00 80 ff ff ff ff 27 00 00 00 11 40 00 00 00 00 00 00 00 00 00 00 01 00 03 00 de 00 00 80 1b .......'....@...................
0ea0 03 00 80 04 00 00 00 28 00 00 00 11 00 00 00 00 00 00 00 00 00 00 00 01 00 03 00 51 00 00 80 6a .......(...................Q...j
0ec0 00 00 80 01 00 00 00 29 00 00 00 11 00 00 00 00 00 00 00 00 00 00 00 50 50 74 72 3c 45 64 69 74 .......)...............PPtr<Edit
0ee0 6f 72 45 78 74 65 6e 73 69 6f 6e 3e 00 6d 5f 46 69 6c 65 49 44 00 6d 5f 50 61 74 68 49 44 00 50 orExtension>.m_FileID.m_PathID.P
0f00 50 74 72 3c 50 72 65 66 61 62 49 6e 73 74 61 6e 63 65 3e 00 6d 5f 44 65 66 61 75 6c 74 52 65 66 Ptr<PrefabInstance>.m_DefaultRef
0f20 65 72 65 6e 63 65 73 00 6d 5f 49 63 6f 6e 00 6d 5f 45 78 65 63 75 74 69 6f 6e 4f 72 64 65 72 00 erences.m_Icon.m_ExecutionOrder.
0f40 6d 5f 43 6c 61 73 73 4e 61 6d 65 00 6d 5f 4e 61 6d 65 73 70 61 63 65 00 00 00 00 00 02 00 00 00 m_ClassName.m_Namespace.........
0f60 03 00 00 00 00 00 00 00 00 00 00 00 14 02 00 00 00 00 00 00 e0 79 af 00 00 00 00 00 18 02 00 00 .....................y..........
0f80 78 47 01 00 01 00 00 00 00 00 00 00 02 00 00 00 00 ac f9 f5 9a f5 af 4b f1 9b 6a 51 ba 17 d4 0b xG.....................K..jQ....
0fa0 81 03 00 00 00 00 00 03 82 cd 70 b5 8a 5c 48 9d cb d7 e1 20 55 0e 83 03 00 00 00 00 00 00 00 00 ..........p..\H.....U...........
0fc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0fe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1020 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 e0 79 af 00 00 00 00 00 0c 00 00 00 .....................y..........
1040 0e 00 00 00 6d 5f 41 63 74 69 6f 6e 73 41 73 73 65 74 00 00 01 00 00 00 cc 99 2d d3 41 01 e4 f2 ....m_ActionsAsset........-.A...
1060 0d 00 00 00 6d 5f 50 6f 69 6e 74 41 63 74 69 6f 6e 00 00 00 01 00 00 00 a2 ed c0 5d d1 07 a1 0e ....m_PointAction..........]....
1080 0c 00 00 00 6d 5f 4d 6f 76 65 41 63 74 69 6f 6e 01 00 00 00 ae 55 1f 2f f2 30 7f 33 0e 00 00 00 ....m_MoveAction.....U./.0.3....
10a0 6d 5f 53 75 62 6d 69 74 41 63 74 69 6f 6e 00 00 01 00 00 00 27 45 54 e0 5f 0e a8 1c 0e 00 00 00 m_SubmitAction......'ET._.......
10c0 6d 5f 43 61 6e 63 65 6c 41 63 74 69 6f 6e 00 00 01 00 00 00 a9 0d 8d 96 81 91 b1 e4 11 00 00 00 m_CancelAction..................
10e0 6d 5f 4c 65 66 74 43 6c 69 63 6b 41 63 74 69 6f 6e 00 00 00 01 00 00 00 3d 99 41 de 96 b4 cf 6f m_LeftClickAction.......=.A....o
1100 13 00 00 00 6d 5f 4d 69 64 64 6c 65 43 6c 69 63 6b 41 63 74 69 6f 6e 00 01 00 00 00 84 61 93 3d ....m_MiddleClickAction......a.=
1120 da 99 82 2d 12 00 00 00 6d 5f 52 69 67 68 74 43 6c 69 63 6b 41 63 74 69 6f 6e 00 00 01 00 00 00 ...-....m_RightClickAction......
1140 3c 3c 52 f8 56 61 40 35 13 00 00 00 6d 5f 53 63 72 6f 6c 6c 57 68 65 65 6c 41 63 74 69 6f 6e 00 <<R.Va@5....m_ScrollWheelAction.
1160 01 00 00 00 64 f2 a0 c7 e8 c7 7b 3e 1d 00 00 00 6d 5f 54 72 61 63 6b 65 64 44 65 76 69 63 65 50 ....d.....{>....m_TrackedDeviceP
1180 6f 73 69 74 69 6f 6e 41 63 74 69 6f 6e 00 00 00 01 00 00 00 ca fd e3 7d 07 08 fc 41 20 00 00 00 ositionAction..........}...A....
11a0 6d 5f 54 72 61 63 6b 65 64 44 65 76 69 63 65 4f 72 69 65 6e 74 61 74 69 6f 6e 41 63 74 69 6f 6e m_TrackedDeviceOrientationAction
11c0 01 00 00 00 f0 74 8b 0b ae 76 3b 0e 1b 00 00 00 6d 5f 54 72 61 63 6b 65 64 44 65 76 69 63 65 53 .....t...v;.....m_TrackedDeviceS
11e0 65 6c 65 63 74 41 63 74 69 6f 6e 00 01 00 00 00 48 ea 84 d4 fe b8 83 23 00 00 00 00 02 00 00 00 electAction.....H......#........
1200 80 b9 2a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ..*.............................
1220 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1240 18 00 00 00 49 6e 70 75 74 53 79 73 74 65 6d 55 49 49 6e 70 75 74 4d 6f 64 75 6c 65 28 45 01 00 ....InputSystemUIInputModule(E..
1260 23 69 66 20 50 41 43 4b 41 47 45 5f 44 4f 43 53 5f 47 45 4e 45 52 41 54 49 4f 4e 20 7c 7c 20 55 #if.PACKAGE_DOCS_GENERATION.||.U
1280 4e 49 54 59 5f 49 4e 50 55 54 5f 53 59 53 54 45 4d 5f 45 4e 41 42 4c 45 5f 55 49 0d 0a 75 73 69 NITY_INPUT_SYSTEM_ENABLE_UI..usi
12a0 6e 67 20 53 79 73 74 65 6d 3b 0d 0a 75 73 69 6e 67 20 55 6e 69 74 79 45 6e 67 69 6e 65 2e 45 76 ng.System;..using.UnityEngine.Ev
12c0 65 6e 74 53 79 73 74 65 6d 73 3b 0d 0a 75 73 69 6e 67 20 55 6e 69 74 79 45 6e 67 69 6e 65 2e 49 entSystems;..using.UnityEngine.I
12e0 6e 70 75 74 53 79 73 74 65 6d 2e 43 6f 6e 74 72 6f 6c 73 3b 0d 0a 75 73 69 6e 67 20 55 6e 69 74 nputSystem.Controls;..using.Unit
1300 79 45 6e 67 69 6e 65 2e 49 6e 70 75 74 53 79 73 74 65 6d 2e 4c 6f 77 4c 65 76 65 6c 3b 0d 0a 75 yEngine.InputSystem.LowLevel;..u
1320 73 69 6e 67 20 55 6e 69 74 79 45 6e 67 69 6e 65 2e 49 6e 70 75 74 53 79 73 74 65 6d 2e 55 74 69 sing.UnityEngine.InputSystem.Uti
1340 6c 69 74 69 65 73 3b 0d 0a 75 73 69 6e 67 20 55 6e 69 74 79 45 6e 67 69 6e 65 2e 53 65 72 69 61 lities;..using.UnityEngine.Seria
1360 6c 69 7a 61 74 69 6f 6e 3b 0d 0a 0d 0a 2f 2f 2f 2f 46 49 58 4d 45 3a 20 54 68 65 20 55 49 20 69 lization;....////FIXME:.The.UI.i
1380 73 20 63 75 72 72 65 6e 74 6c 79 20 6e 6f 74 20 72 65 61 63 74 69 6e 67 20 74 6f 20 70 6f 69 6e s.currently.not.reacting.to.poin
13a0 74 65 72 73 20 75 6e 74 69 6c 20 74 68 65 79 20 61 72 65 20 6d 6f 76 65 64 20 61 66 74 65 72 20 ters.until.they.are.moved.after.
13c0 74 68 65 20 55 49 20 6d 6f 64 75 6c 65 20 68 61 73 20 62 65 65 6e 20 65 6e 61 62 6c 65 64 2e 20 the.UI.module.has.been.enabled..
13e0 57 68 61 74 20 6e 65 65 64 73 20 74 6f 0d 0a 2f 2f 2f 2f 20 20 20 20 20 20 20 68 61 70 70 65 6e What.needs.to..////.......happen
1400 20 69 73 20 74 68 61 74 20 70 6f 69 6e 74 2c 20 74 72 61 63 6b 65 64 44 65 76 69 63 65 50 6f 73 .is.that.point,.trackedDevicePos
1420 69 74 69 6f 6e 2c 20 61 6e 64 20 74 72 61 63 6b 65 64 44 65 76 69 63 65 4f 72 69 65 6e 74 61 74 ition,.and.trackedDeviceOrientat
1440 69 6f 6e 20 68 61 76 65 20 69 6e 69 74 69 61 6c 20 73 74 61 74 65 20 63 68 65 63 6b 73 2e 20 48 ion.have.initial.state.checks..H
1460 6f 77 65 76 65 72 2c 20 66 6f 72 20 74 6f 75 63 68 2c 0d 0a 2f 2f 2f 2f 20 20 20 20 20 20 20 77 owever,.for.touch,..////.......w
1480 65 20 64 6f 20 2a 6e 6f 74 2a 20 77 61 6e 74 20 74 6f 20 72 65 61 63 74 20 74 6f 20 74 68 65 20 e.do.*not*.want.to.react.to.the.
14a0 69 6e 69 74 69 61 6c 20 76 61 6c 75 65 20 61 73 20 74 68 65 6e 20 77 65 20 61 6c 73 6f 20 67 65 initial.value.as.then.we.also.ge
14c0 74 20 70 72 65 73 73 65 73 20 28 75 6e 6c 69 6b 65 20 77 69 74 68 20 6f 74 68 65 72 20 70 6f 69 t.presses.(unlike.with.other.poi
14e0 6e 74 65 72 73 29 2e 20 41 72 67 68 2e 0d 0a 0d 0a 2f 2f 2f 2f 52 45 56 49 45 57 3a 20 49 20 74 nters)..Argh.....////REVIEW:.I.t
1500 68 69 6e 6b 20 74 68 69 73 20 77 6f 75 6c 64 20 62 65 20 6d 75 63 68 20 62 65 74 74 65 72 20 73 hink.this.would.be.much.better.s
1520 65 72 76 65 64 20 62 79 20 68 61 76 69 6e 67 20 61 20 63 6f 6d 70 6f 73 69 74 65 20 74 79 70 65 erved.by.having.a.composite.type
1540 20 69 6e 70 75 74 20 66 6f 72 20 65 61 63 68 20 6f 66 20 74 68 65 20 74 68 72 65 65 20 62 61 73 .input.for.each.of.the.three.bas
1560 69 63 20 74 79 70 65 73 20 6f 66 20 69 6e 70 75 74 20 28 70 6f 69 6e 74 65 72 2c 20 6e 61 76 69 ic.types.of.input.(pointer,.navi
1580 67 61 74 69 6f 6e 2c 20 74 72 61 63 6b 65 64 29 0d 0a 2f 2f 2f 2f 20 20 20 20 20 20 20 20 49 2e gation,.tracked)..////........I.
15a0 65 2e 20 74 68 65 72 65 27 64 20 62 65 20 61 20 50 6f 69 6e 74 65 72 49 6e 70 75 74 2c 20 61 20 e..there'd.be.a.PointerInput,.a.
15c0 4e 61 76 69 67 61 74 69 6f 6e 49 6e 70 75 74 2c 20 61 6e 64 20 61 20 54 72 61 63 6b 65 64 49 6e NavigationInput,.and.a.TrackedIn
15e0 70 75 74 20 63 6f 6d 70 6f 73 69 74 65 2e 20 54 68 69 73 20 77 6f 75 6c 64 20 73 6f 6c 76 65 20 put.composite..This.would.solve.
1600 73 65 76 65 72 61 6c 20 70 72 6f 62 6c 65 6d 73 20 69 6e 20 6f 6e 65 20 67 6f 20 61 6e 64 20 6d several.problems.in.one.go.and.m
1620 61 6b 65 0d 0a 2f 2f 2f 2f 20 20 20 20 20 20 20 20 69 74 20 6d 75 63 68 20 6d 6f 72 65 20 6f 62 ake..////........it.much.more.ob
1640 76 69 6f 75 73 20 77 68 69 63 68 20 69 6e 70 75 74 73 20 67 6f 20 74 6f 67 65 74 68 65 72 2e 0d vious.which.inputs.go.together..
1660 0a 0d 0a 2f 2f 2f 2f 52 45 56 49 45 57 3a 20 54 68 65 20 63 75 72 72 65 6e 74 20 69 6e 70 75 74 ...////REVIEW:.The.current.input
1680 20 6d 6f 64 65 6c 20 68 61 73 20 74 6f 6f 20 6d 75 63 68 20 63 6f 6d 70 6c 65 78 69 74 79 20 66 .model.has.too.much.complexity.f
16a0 6f 72 20 70 6f 69 6e 74 65 72 20 69 6e 70 75 74 3b 20 66 69 6e 64 20 61 20 77 61 79 20 74 6f 20 or.pointer.input;.find.a.way.to.
16c0 73 69 6d 70 6c 69 66 79 20 74 68 69 73 2e 0d 0a 0d 0a 2f 2f 2f 2f 52 45 56 49 45 57 3a 20 68 6f simplify.this.....////REVIEW:.ho
16e0 77 20 64 6f 65 73 20 74 68 69 73 2f 75 47 55 49 20 73 75 70 70 6f 72 74 20 64 72 61 67 2d 73 63 w.does.this/uGUI.support.drag-sc
1700 72 6f 6c 6c 73 20 6f 6e 20 74 6f 75 63 68 3f 20 5b 47 45 53 54 55 52 45 53 5d 0d 0a 0d 0a 2f 2f rolls.on.touch?.[GESTURES]....//
1720 2f 2f 52 45 56 49 45 57 3a 20 68 6f 77 20 64 6f 65 73 20 74 68 69 73 2f 75 47 55 49 20 73 75 70 //REVIEW:.how.does.this/uGUI.sup
1740 70 6f 72 74 20 74 77 6f 2d 66 69 6e 67 65 72 20 72 69 67 68 74 2d 63 6c 69 63 6b 73 20 77 69 74 port.two-finger.right-clicks.wit
1760 68 20 74 6f 75 63 68 3f 20 5b 47 45 53 54 55 52 45 53 5d 0d 0a 0d 0a 2f 2f 2f 2f 54 4f 44 4f 3a h.touch?.[GESTURES]....////TODO:
1780 20 61 64 64 20 61 62 69 6c 69 74 79 20 74 6f 20 71 75 65 72 79 20 77 68 69 63 68 20 64 65 76 69 .add.ability.to.query.which.devi
17a0 63 65 20 77 61 73 20 6c 61 73 74 20 75 73 65 64 20 77 69 74 68 20 61 6e 79 20 6f 66 20 74 68 65 ce.was.last.used.with.any.of.the
17c0 20 61 63 74 69 6f 6e 73 0d 0a 0d 0a 6e 61 6d 65 73 70 61 63 65 20 55 6e 69 74 79 45 6e 67 69 6e .actions....namespace.UnityEngin
17e0 65 2e 49 6e 70 75 74 53 79 73 74 65 6d 2e 55 49 0d 0a 7b 0d 0a 20 20 20 20 2f 2f 2f 20 3c 73 75 e.InputSystem.UI..{......///.<su
1800 6d 6d 61 72 79 3e 0d 0a 20 20 20 20 2f 2f 2f 20 49 6e 70 75 74 20 6d 6f 64 75 6c 65 20 74 68 61 mmary>......///.Input.module.tha
1820 74 20 74 61 6b 65 73 20 69 74 73 20 69 6e 70 75 74 20 66 72 6f 6d 20 3c 73 65 65 20 63 72 65 66 t.takes.its.input.from.<see.cref
1840 3d 22 49 6e 70 75 74 41 63 74 69 6f 6e 22 3e 69 6e 70 75 74 20 61 63 74 69 6f 6e 73 3c 2f 73 65 ="InputAction">input.actions</se
1860 65 3e 2e 0d 0a 20 20 20 20 2f 2f 2f 20 3c 2f 73 75 6d 6d 61 72 79 3e 0d 0a 20 20 20 20 2f 2f 2f e>.......///.</summary>......///
1880 20 3c 72 65 6d 61 72 6b 73 3e 0d 0a 20 20 20 20 2f 2f 2f 20 54 68 69 73 20 55 49 20 69 6e 70 75 .<remarks>......///.This.UI.inpu
18a0 74 20 6d 6f 64 75 6c 65 20 68 61 73 20 74 68 65 20 61 64 76 61 6e 74 61 67 65 20 6f 76 65 72 20 t.module.has.the.advantage.over.
18c0 6f 74 68 65 72 20 73 75 63 68 20 6d 6f 64 75 6c 65 73 20 74 68 61 74 20 69 74 20 64 6f 65 73 6e other.such.modules.that.it.doesn
18e0 27 74 20 68 61 76 65 20 74 6f 20 6b 6e 6f 77 0d 0a 20 20 20 20 2f 2f 2f 20 77 68 61 74 20 64 65 't.have.to.know......///.what.de
1900 76 69 63 65 73 20 61 6e 64 20 74 79 70 65 73 20 6f 66 20 64 65 76 69 63 65 73 20 69 6e 70 75 74 vices.and.types.of.devices.input
1920 20 69 73 20 63 6f 6d 69 6e 67 20 66 72 6f 6d 2e 20 49 6e 73 74 65 61 64 2c 20 74 68 65 20 61 63 .is.coming.from..Instead,.the.ac
1940 74 69 6f 6e 73 20 68 69 64 65 20 74 68 65 20 61 63 74 75 61 6c 0d 0a 20 20 20 20 2f 2f 2f 20 73 tions.hide.the.actual......///.s
1960 6f 75 72 63 65 73 20 6f 66 20 69 6e 70 75 74 20 66 72 6f 6d 20 74 68 65 20 6d 6f 64 75 6c 65 2e ources.of.input.from.the.module.
1980 0d 0a 20 20 20 20 2f 2f 2f 20 3c 2f 72 65 6d 61 72 6b 73 3e 0d 0a 20 20 20 20 70 75 62 6c 69 63 ......///.</remarks>......public
19a0 20 63 6c 61 73 73 20 49 6e 70 75 74 53 79 73 74 65 6d 55 49 49 6e 70 75 74 4d 6f 64 75 6c 65 20 .class.InputSystemUIInputModule.
19c0 3a 20 42 61 73 65 49 6e 70 75 74 4d 6f 64 75 6c 65 0d 0a 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 :.BaseInputModule......{........
19e0 20 20 2f 2f 2f 20 3c 73 75 6d 6d 61 72 79 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 57 68 65 ..///.<summary>..........///.Whe
1a00 74 68 65 72 20 74 6f 20 63 6c 65 61 72 20 74 68 65 20 63 75 72 72 65 6e 74 20 73 65 6c 65 63 74 ther.to.clear.the.current.select
1a20 69 6f 6e 20 77 68 65 6e 20 61 20 63 6c 69 63 6b 20 68 61 70 70 65 6e 73 20 74 68 61 74 20 64 6f ion.when.a.click.happens.that.do
1a40 65 73 20 6e 6f 74 20 68 69 74 20 61 6e 79 20 3c 63 3e 47 61 6d 65 4f 62 6a 65 63 74 3c 2f 63 3e es.not.hit.any.<c>GameObject</c>
1a60 2e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 2f 73 75 6d 6d 61 72 79 3e 0d 0a 20 20 20 20 20 ...........///.</summary>.......
1a80 20 20 20 2f 2f 2f 20 3c 76 61 6c 75 65 3e 49 66 20 74 72 75 65 20 28 64 65 66 61 75 6c 74 29 2c ...///.<value>If.true.(default),
1aa0 20 63 6c 69 63 6b 69 6e 67 20 6f 75 74 73 69 64 65 20 6f 66 20 61 6e 79 20 47 61 6d 65 4f 62 6a .clicking.outside.of.any.GameObj
1ac0 65 63 74 20 77 69 6c 6c 20 72 65 73 65 74 20 74 68 65 20 63 75 72 72 65 6e 74 20 73 65 6c 65 63 ect.will.reset.the.current.selec
1ae0 74 69 6f 6e 2e 3c 2f 76 61 6c 75 65 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 72 65 6d 61 tion.</value>..........///.<rema
1b00 72 6b 73 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 42 79 20 74 6f 67 67 6c 69 6e 67 20 74 68 rks>..........///.By.toggling.th
1b20 69 73 20 62 65 68 61 76 69 6f 72 20 6f 66 66 2c 20 62 61 63 6b 67 72 6f 75 6e 64 20 63 6c 69 63 is.behavior.off,.background.clic
1b40 6b 73 20 77 69 6c 6c 20 6b 65 65 70 20 74 68 65 20 63 75 72 72 65 6e 74 20 73 65 6c 65 63 74 69 ks.will.keep.the.current.selecti
1b60 6f 6e 2e 20 49 2e 65 2e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 63 3e 45 76 65 6e 74 53 79 on..I.e...........///.<c>EventSy
1b80 73 74 65 6d 2e 63 75 72 72 65 6e 74 53 65 6c 65 63 74 65 64 47 61 6d 65 4f 62 6a 65 63 74 3c 2f stem.currentSelectedGameObject</
1ba0 63 3e 20 77 69 6c 6c 20 6e 6f 74 20 62 65 20 63 68 61 6e 67 65 64 2e 0d 0a 20 20 20 20 20 20 20 c>.will.not.be.changed..........
1bc0 20 2f 2f 2f 20 3c 2f 72 65 6d 61 72 6b 73 3e 0d 0a 20 20 20 20 20 20 20 20 70 75 62 6c 69 63 20 .///.</remarks>..........public.
1be0 62 6f 6f 6c 20 64 65 73 65 6c 65 63 74 4f 6e 42 61 63 6b 67 72 6f 75 6e 64 43 6c 69 63 6b 0d 0a bool.deselectOnBackgroundClick..
1c00 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 67 65 74 20 3d 3e 20 6d 5f ........{..............get.=>.m_
1c20 44 65 73 65 6c 65 63 74 4f 6e 42 61 63 6b 67 72 6f 75 6e 64 43 6c 69 63 6b 3b 0d 0a 20 20 20 20 DeselectOnBackgroundClick;......
1c40 20 20 20 20 20 20 20 20 73 65 74 20 3d 3e 20 6d 5f 44 65 73 65 6c 65 63 74 4f 6e 42 61 63 6b 67 ........set.=>.m_DeselectOnBackg
1c60 72 6f 75 6e 64 43 6c 69 63 6b 20 3d 20 76 61 6c 75 65 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a roundClick.=.value;..........}..
1c80 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 73 75 6d 6d 61 72 79 3e 0d 0a 20 20 20 20 20 20 20 ..........///.<summary>.........
1ca0 20 2f 2f 2f 20 48 6f 77 20 74 6f 20 64 65 61 6c 20 77 69 74 68 20 74 68 65 20 70 72 65 73 65 6e .///.How.to.deal.with.the.presen
1cc0 63 65 20 6f 66 20 70 6f 69 6e 74 65 72 2d 74 79 70 65 20 69 6e 70 75 74 20 66 72 6f 6d 20 6d 75 ce.of.pointer-type.input.from.mu
1ce0 6c 74 69 70 6c 65 20 64 65 76 69 63 65 73 2e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 2f 73 ltiple.devices...........///.</s
1d00 75 6d 6d 61 72 79 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 76 61 6c 75 65 3e 57 68 20 3c ummary>..........///.<value>Wh.<
1d20 2f 76 61 6c 75 65 3e 0d 0a 20 20 20 20 20 20 20 20 70 75 62 6c 69 63 20 55 49 50 6f 69 6e 74 65 /value>..........public.UIPointe
1d40 72 42 65 68 61 76 69 6f 72 20 70 6f 69 6e 74 65 72 42 65 68 61 76 69 6f 72 0d 0a 20 20 20 20 20 rBehavior.pointerBehavior.......
1d60 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 67 65 74 20 3d 3e 20 6d 5f 50 6f 69 6e 74 ...{..............get.=>.m_Point
1d80 65 72 42 65 68 61 76 69 6f 72 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 65 74 20 3d 3e 20 erBehavior;..............set.=>.
1da0 6d 5f 50 6f 69 6e 74 65 72 42 65 68 61 76 69 6f 72 20 3d 20 76 61 6c 75 65 3b 0d 0a 20 20 20 20 m_PointerBehavior.=.value;......
1dc0 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 73 75 6d 6d 61 72 79 3e 0d 0a ....}............///.<summary>..
1de0 20 20 20 20 20 20 20 20 2f 2f 2f 20 43 61 6c 6c 65 64 20 62 79 20 3c 63 3e 45 76 65 6e 74 53 79 ........///.Called.by.<c>EventSy
1e00 73 74 65 6d 3c 2f 63 3e 20 77 68 65 6e 20 74 68 65 20 69 6e 70 75 74 20 6d 6f 64 75 6c 65 20 69 stem</c>.when.the.input.module.i
1e20 73 20 6d 61 64 65 20 63 75 72 72 65 6e 74 2e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 2f 73 s.made.current...........///.</s
1e40 75 6d 6d 61 72 79 3e 0d 0a 20 20 20 20 20 20 20 20 70 75 62 6c 69 63 20 6f 76 65 72 72 69 64 65 ummary>..........public.override
1e60 20 76 6f 69 64 20 41 63 74 69 76 61 74 65 4d 6f 64 75 6c 65 28 29 0d 0a 20 20 20 20 20 20 20 20 .void.ActivateModule()..........
1e80 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 62 61 73 65 2e 41 63 74 69 76 61 74 65 4d 6f 64 75 {..............base.ActivateModu
1ea0 6c 65 28 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 53 65 6c 65 63 74 20 66 le();................//.Select.f
1ec0 69 72 73 74 53 65 6c 65 63 74 65 64 47 61 6d 65 4f 62 6a 65 63 74 20 69 66 20 6e 6f 74 68 69 6e irstSelectedGameObject.if.nothin
1ee0 67 20 69 73 20 73 65 6c 65 63 74 65 64 20 41 54 4d 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 g.is.selected.ATM...............
1f00 76 61 72 20 74 6f 53 65 6c 65 63 74 20 3d 20 65 76 65 6e 74 53 79 73 74 65 6d 2e 63 75 72 72 65 var.toSelect.=.eventSystem.curre
1f20 6e 74 53 65 6c 65 63 74 65 64 47 61 6d 65 4f 62 6a 65 63 74 3b 0d 0a 20 20 20 20 20 20 20 20 20 ntSelectedGameObject;...........
1f40 20 20 20 69 66 20 28 74 6f 53 65 6c 65 63 74 20 3d 3d 20 6e 75 6c 6c 29 0d 0a 20 20 20 20 20 20 ...if.(toSelect.==.null)........
1f60 20 20 20 20 20 20 20 20 20 20 74 6f 53 65 6c 65 63 74 20 3d 20 65 76 65 6e 74 53 79 73 74 65 6d ..........toSelect.=.eventSystem
1f80 2e 66 69 72 73 74 53 65 6c 65 63 74 65 64 47 61 6d 65 4f 62 6a 65 63 74 3b 0d 0a 20 20 20 20 20 .firstSelectedGameObject;.......
1fa0 20 20 20 20 20 20 20 65 76 65 6e 74 53 79 73 74 65 6d 2e 53 65 74 53 65 6c 65 63 74 65 64 47 61 .......eventSystem.SetSelectedGa
1fc0 6d 65 4f 62 6a 65 63 74 28 74 6f 53 65 6c 65 63 74 2c 20 47 65 74 42 61 73 65 45 76 65 6e 74 44 meObject(toSelect,.GetBaseEventD
1fe0 61 74 61 28 29 29 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 2f 2f ata());..........}............//
2000 2f 20 3c 73 75 6d 6d 61 72 79 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 43 68 65 63 6b 20 77 /.<summary>..........///.Check.w
2020 68 65 74 68 65 72 20 74 68 65 20 67 69 76 65 6e 20 70 6f 69 6e 74 65 72 20 6f 72 20 74 6f 75 63 hether.the.given.pointer.or.touc
2040 68 20 69 73 20 63 75 72 72 65 6e 74 6c 79 20 68 6f 76 65 72 69 6e 67 20 6f 76 65 72 20 61 20 3c h.is.currently.hovering.over.a.<
2060 63 3e 47 61 6d 65 4f 62 6a 65 63 74 3c 2f 63 3e 2e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c c>GameObject</c>...........///.<
2080 2f 73 75 6d 6d 61 72 79 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 70 61 72 61 6d 20 6e 61 /summary>..........///.<param.na
20a0 6d 65 3d 22 70 6f 69 6e 74 65 72 4f 72 54 6f 75 63 68 49 64 22 3e 49 44 20 6f 66 20 74 68 65 20 me="pointerOrTouchId">ID.of.the.
20c0 70 6f 69 6e 74 65 72 20 6f 72 20 74 6f 75 63 68 2e 20 4d 65 61 6e 69 6e 67 20 74 68 69 73 20 73 pointer.or.touch..Meaning.this.s
20e0 68 6f 75 6c 64 20 63 6f 72 72 65 73 70 6f 6e 64 20 74 6f 20 65 69 74 68 65 72 0d 0a 20 20 20 20 hould.correspond.to.either......
2100 20 20 20 20 2f 2f 2f 20 3c 63 3e 50 6f 69 6e 74 65 72 45 76 65 6e 74 44 61 74 61 2e 70 6f 69 6e ....///.<c>PointerEventData.poin
2120 74 65 72 49 64 3c 2f 63 3e 20 6f 72 20 3c 73 65 65 20 63 72 65 66 3d 22 45 78 74 65 6e 64 65 64 terId</c>.or.<see.cref="Extended
2140 50 6f 69 6e 74 65 72 45 76 65 6e 74 44 61 74 61 2e 74 6f 75 63 68 49 64 22 2f 3e 2e 20 54 68 65 PointerEventData.touchId"/>..The
2160 20 70 6f 69 6e 74 65 72 20 49 44 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 67 65 6e 65 72 61 6c .pointer.ID..........///.general
2180 6c 79 20 63 6f 72 72 65 73 70 6f 6e 64 73 20 74 6f 20 74 68 65 20 3c 73 65 65 20 63 72 65 66 3d ly.corresponds.to.the.<see.cref=
21a0 22 49 6e 70 75 74 44 65 76 69 63 65 2e 64 65 76 69 63 65 49 64 22 2f 3e 20 6f 66 20 74 68 65 20 "InputDevice.deviceId"/>.of.the.
21c0 70 6f 69 6e 74 65 72 20 64 65 76 69 63 65 2e 20 41 6e 20 65 78 63 65 70 74 69 6f 6e 0d 0a 20 20 pointer.device..An.exception....
21e0 20 20 20 20 20 20 2f 2f 2f 20 74 6f 20 74 68 69 73 20 61 72 65 20 74 6f 75 63 68 65 73 20 61 73 ......///.to.this.are.touches.as
2200 20 61 20 3c 73 65 65 20 63 72 65 66 3d 22 54 6f 75 63 68 73 63 72 65 65 6e 22 2f 3e 20 6d 61 79 .a.<see.cref="Touchscreen"/>.may
2220 20 68 61 76 65 20 6d 75 6c 74 69 70 6c 65 20 70 6f 69 6e 74 65 72 73 20 28 6f 6e 65 20 66 6f 72 .have.multiple.pointers.(one.for
2240 20 65 61 63 68 20 61 63 74 69 76 65 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 66 69 6e 67 65 72 .each.active..........///.finger
2260 29 2e 20 46 6f 72 20 74 6f 75 63 68 2c 20 79 6f 75 20 63 61 6e 20 75 73 65 20 74 68 65 20 3c 73 )..For.touch,.you.can.use.the.<s
2280 65 65 20 63 72 65 66 3d 22 54 6f 75 63 68 43 6f 6e 74 72 6f 6c 2e 74 6f 75 63 68 49 64 22 2f 3e ee.cref="TouchControl.touchId"/>
22a0 20 6f 66 20 74 68 65 20 74 6f 75 63 68 2e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 0d 0a 20 20 20 .of.the.touch...........///.....
22c0 20 20 20 20 20 2f 2f 2f 20 54 6f 20 63 68 65 63 6b 20 77 68 65 74 68 65 72 20 61 6e 79 20 70 6f .....///.To.check.whether.any.po
22e0 69 6e 74 65 72 20 69 73 20 6f 76 65 72 20 61 20 3c 63 3e 47 61 6d 65 4f 62 6a 65 63 74 3c 2f 63 inter.is.over.a.<c>GameObject</c
2300 3e 2c 20 73 69 6d 70 6c 79 20 70 61 73 73 20 61 20 6e 65 67 61 74 69 76 65 20 76 61 6c 75 65 20 >,.simply.pass.a.negative.value.
2320 73 75 63 68 20 61 73 20 2d 31 2e 3c 2f 70 61 72 61 6d 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f such.as.-1.</param>..........///
2340 20 3c 72 65 74 75 72 6e 73 3e 54 72 75 65 20 69 66 20 74 68 65 20 67 69 76 65 6e 20 70 6f 69 6e .<returns>True.if.the.given.poin
2360 74 65 72 20 69 73 20 63 75 72 72 65 6e 74 6c 79 20 68 6f 76 65 72 69 6e 67 20 6f 76 65 72 20 61 ter.is.currently.hovering.over.a
2380 20 3c 63 3e 47 61 6d 65 4f 62 6a 65 63 74 3c 2f 63 3e 2e 3c 2f 72 65 74 75 72 6e 73 3e 0d 0a 20 .<c>GameObject</c>.</returns>...
23a0 20 20 20 20 20 20 20 2f 2f 2f 20 3c 72 65 6d 61 72 6b 73 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f .......///.<remarks>..........//
23c0 2f 20 54 68 65 20 72 65 73 75 6c 74 20 69 73 20 74 72 75 65 20 69 66 20 74 68 65 20 67 69 76 65 /.The.result.is.true.if.the.give
23e0 6e 20 70 6f 69 6e 74 65 72 20 68 61 73 20 63 61 75 73 65 64 20 61 6e 20 3c 63 3e 49 50 6f 69 6e n.pointer.has.caused.an.<c>IPoin
2400 74 65 72 45 6e 74 65 72 3c 2f 63 3e 20 65 76 65 6e 74 20 74 6f 20 62 65 20 73 65 6e 74 20 74 6f terEnter</c>.event.to.be.sent.to
2420 20 61 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 63 3e 47 61 6d 65 4f 62 6a 65 63 74 3c 2f 63 .a..........///.<c>GameObject</c
2440 3e 2e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 54 68 69 >...........///..........///.Thi
2460 73 20 6d 65 74 68 6f 64 20 63 61 6e 20 62 65 20 69 6e 76 6f 6b 65 64 20 76 69 61 20 3c 63 3e 45 s.method.can.be.invoked.via.<c>E
2480 76 65 6e 74 53 79 73 74 65 6d 2e 63 75 72 72 65 6e 74 2e 49 73 50 6f 69 6e 74 65 72 4f 76 65 72 ventSystem.current.IsPointerOver
24a0 47 61 6d 65 4f 62 6a 65 63 74 3c 2f 63 3e 2e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 0d 0a 20 20 GameObject</c>...........///....
24c0 20 20 20 20 20 20 2f 2f 2f 20 3c 65 78 61 6d 70 6c 65 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f ......///.<example>..........///
24e0 20 3c 63 6f 64 65 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 2f 2f 20 49 6e 20 67 65 6e 65 72 .<code>..........///.//.In.gener
2500 61 6c 2c 20 74 68 65 20 70 6f 69 6e 74 65 72 20 49 44 20 63 6f 72 72 65 73 70 6f 6e 64 73 20 74 al,.the.pointer.ID.corresponds.t
2520 6f 20 74 68 65 20 64 65 76 69 63 65 20 49 44 3a 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 45 76 o.the.device.ID:..........///.Ev
2540 65 6e 74 53 79 73 74 65 6d 2e 63 75 72 72 65 6e 74 2e 49 73 50 6f 69 6e 74 65 72 4f 76 65 72 47 entSystem.current.IsPointerOverG
2560 61 6d 65 4f 62 6a 65 63 74 28 58 52 43 6f 6e 74 72 6f 6c 6c 65 72 2e 6c 65 66 74 48 61 6e 64 2e ameObject(XRController.leftHand.
2580 64 65 76 69 63 65 49 64 29 3b 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 45 76 65 6e 74 53 79 73 deviceId);..........///.EventSys
25a0 74 65 6d 2e 63 75 72 72 65 6e 74 2e 49 73 50 6f 69 6e 74 65 72 4f 76 65 72 47 61 6d 65 4f 62 6a tem.current.IsPointerOverGameObj
25c0 65 63 74 28 4d 6f 75 73 65 2e 63 75 72 72 65 6e 74 2e 64 65 76 69 63 65 49 64 29 3b 0d 0a 20 20 ect(Mouse.current.deviceId);....
25e0 20 20 20 20 20 20 2f 2f 2f 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 2f 2f 20 46 6f 72 20 74 6f ......///..........///.//.For.to
2600 75 63 68 20 69 6e 70 75 74 2c 20 70 61 73 73 20 74 68 65 20 49 44 20 6f 66 20 61 20 74 6f 75 63 uch.input,.pass.the.ID.of.a.touc
2620 68 3a 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 45 76 65 6e 74 53 79 73 74 65 6d 2e 63 75 72 72 h:..........///.EventSystem.curr
2640 65 6e 74 2e 49 73 50 6f 69 6e 74 65 72 4f 76 65 72 47 61 6d 65 4f 62 6a 65 63 74 28 54 6f 75 63 ent.IsPointerOverGameObject(Touc
2660 68 73 63 72 65 65 6e 2e 70 72 69 6d 61 72 79 54 6f 75 63 68 2e 74 6f 75 63 68 49 64 2e 52 65 61 hscreen.primaryTouch.touchId.Rea
2680 64 56 61 6c 75 65 28 29 29 3b 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 0d 0a 20 20 20 20 20 20 20 dValue());..........///.........
26a0 20 2f 2f 2f 20 2f 2f 20 42 75 74 20 63 61 6e 20 61 6c 73 6f 20 70 61 73 73 20 74 68 65 20 49 44 .///.//.But.can.also.pass.the.ID
26c0 20 6f 66 20 74 68 65 20 65 6e 74 69 72 65 20 54 6f 75 63 68 73 63 72 65 65 6e 20 69 6e 20 77 68 .of.the.entire.Touchscreen.in.wh
26e0 69 63 68 20 63 61 73 65 20 74 68 65 20 72 65 73 75 6c 74 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f ich.case.the.result..........///
2700 20 2f 2f 20 69 73 20 74 72 75 65 20 69 66 20 61 6e 79 20 74 6f 75 63 68 20 69 73 20 6f 76 65 72 .//.is.true.if.any.touch.is.over
2720 20 61 20 47 61 6d 65 4f 62 6a 65 63 74 3a 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 45 76 65 6e .a.GameObject:..........///.Even
2740 74 53 79 73 74 65 6d 2e 63 75 72 72 65 6e 74 2e 49 73 50 6f 69 6e 74 65 72 4f 76 65 72 47 61 6d tSystem.current.IsPointerOverGam
2760 65 4f 62 6a 65 63 74 28 54 6f 75 63 68 73 63 72 65 65 6e 2e 63 75 72 72 65 6e 74 2e 64 65 76 69 eObject(Touchscreen.current.devi
2780 63 65 49 64 29 3b 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f ceId);..........///..........///
27a0 20 2f 2f 20 46 69 6e 61 6c 6c 79 2c 20 61 6e 79 20 6e 65 67 61 74 69 76 65 20 76 61 6c 75 65 20 .//.Finally,.any.negative.value.
27c0 77 69 6c 6c 20 62 65 20 69 6e 74 65 72 70 72 65 74 65 64 20 61 73 20 22 61 6e 79 20 70 6f 69 6e will.be.interpreted.as."any.poin
27e0 74 65 72 22 20 61 6e 64 20 77 69 6c 6c 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 2f 2f 20 72 65 ter".and.will..........///.//.re
2800 74 75 72 6e 20 74 72 75 65 20 69 66 20 61 6e 79 20 6f 6e 65 20 70 6f 69 6e 74 65 72 20 69 73 20 turn.true.if.any.one.pointer.is.
2820 63 75 72 72 65 6e 74 6c 79 20 6f 76 65 72 20 61 20 47 61 6d 65 4f 62 6a 65 63 74 3a 0d 0a 20 20 currently.over.a.GameObject:....
2840 20 20 20 20 20 20 2f 2f 2f 20 45 76 65 6e 74 53 79 73 74 65 6d 2e 63 75 72 72 65 6e 74 2e 49 73 ......///.EventSystem.current.Is
2860 50 6f 69 6e 74 65 72 4f 76 65 72 47 61 6d 65 4f 62 6a 65 63 74 28 2d 31 29 3b 0d 0a 20 20 20 20 PointerOverGameObject(-1);......
2880 20 20 20 20 2f 2f 2f 20 45 76 65 6e 74 53 79 73 74 65 6d 2e 63 75 72 72 65 6e 74 2e 49 73 50 6f ....///.EventSystem.current.IsPo
28a0 69 6e 74 65 72 4f 76 65 72 47 61 6d 65 4f 62 6a 65 63 74 28 29 3b 20 2f 2f 20 45 71 75 69 76 61 interOverGameObject();.//.Equiva
28c0 6c 65 6e 74 2e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 2f 63 6f 64 65 3e 0d 0a 20 20 20 20 lent...........///.</code>......
28e0 20 20 20 20 2f 2f 2f 20 3c 2f 65 78 61 6d 70 6c 65 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 ....///.</example>..........///.
2900 3c 2f 72 65 6d 61 72 6b 73 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 73 65 65 61 6c 73 6f </remarks>..........///.<seealso
2920 20 63 72 65 66 3d 22 45 78 74 65 6e 64 65 64 50 6f 69 6e 74 65 72 45 76 65 6e 74 44 61 74 61 2e .cref="ExtendedPointerEventData.
2940 74 6f 75 63 68 49 64 22 2f 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 73 65 65 61 6c 73 6f touchId"/>..........///.<seealso
2960 20 63 72 65 66 3d 22 49 6e 70 75 74 44 65 76 69 63 65 2e 64 65 76 69 63 65 49 64 22 2f 3e 0d 0a .cref="InputDevice.deviceId"/>..
2980 20 20 20 20 20 20 20 20 70 75 62 6c 69 63 20 6f 76 65 72 72 69 64 65 20 62 6f 6f 6c 20 49 73 50 ........public.override.bool.IsP
29a0 6f 69 6e 74 65 72 4f 76 65 72 47 61 6d 65 4f 62 6a 65 63 74 28 69 6e 74 20 70 6f 69 6e 74 65 72 ointerOverGameObject(int.pointer
29c0 4f 72 54 6f 75 63 68 49 64 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 OrTouchId)..........{...........
29e0 20 20 20 76 61 72 20 73 74 61 74 65 49 6e 64 65 78 20 3d 20 2d 31 3b 0d 0a 0d 0a 20 20 20 20 20 ...var.stateIndex.=.-1;.........
2a00 20 20 20 20 20 20 20 69 66 20 28 70 6f 69 6e 74 65 72 4f 72 54 6f 75 63 68 49 64 20 3c 20 30 29 .......if.(pointerOrTouchId.<.0)
2a20 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..............{.................
2a40 20 69 66 20 28 6d 5f 43 75 72 72 65 6e 74 50 6f 69 6e 74 65 72 49 64 20 21 3d 20 2d 31 29 0d 0a .if.(m_CurrentPointerId.!=.-1)..
2a60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 ................{...............
2a80 20 20 20 20 20 20 20 73 74 61 74 65 49 6e 64 65 78 20 3d 20 6d 5f 43 75 72 72 65 6e 74 50 6f 69 .......stateIndex.=.m_CurrentPoi
2aa0 6e 74 65 72 49 6e 64 65 78 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 nterIndex;..................}...
2ac0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 6c 73 65 0d 0a 20 20 20 20 20 20 20 20 20 20 20 ...............else.............
2ae0 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 4e .....{......................//.N
2b00 6f 20 63 75 72 72 65 6e 74 20 70 6f 69 6e 74 65 72 2e 20 43 61 6e 20 68 61 70 70 65 6e 2c 20 66 o.current.pointer..Can.happen,.f
2b20 6f 72 20 65 78 61 6d 70 6c 65 2c 20 77 68 65 6e 20 61 20 74 6f 75 63 68 20 6a 75 73 74 20 65 6e or.example,.when.a.touch.just.en
2b40 64 65 64 20 61 6e 64 20 69 74 73 20 70 6f 69 6e 74 65 72 20 72 65 63 6f 72 64 0d 0a 20 20 20 20 ded.and.its.pointer.record......
2b60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 77 61 73 20 72 65 6d 6f 76 65 64 20 61 ................//.was.removed.a
2b80 73 20 61 20 72 65 73 75 6c 74 2e 20 49 66 20 77 65 20 73 74 69 6c 6c 20 68 61 76 65 20 73 6f 6d s.a.result..If.we.still.have.som
2ba0 65 20 61 63 74 69 76 65 20 70 6f 69 6e 74 65 72 2c 20 75 73 65 20 69 74 2e 0d 0a 20 20 20 20 20 e.active.pointer,.use.it........
2bc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 6d 5f 50 6f 69 6e 74 65 72 53 74 61 74 ...............if.(m_PointerStat
2be0 65 73 2e 6c 65 6e 67 74 68 20 3e 20 30 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 es.length.>.0)..................
2c00 20 20 20 20 20 20 20 20 73 74 61 74 65 49 6e 64 65 78 20 3d 20 30 3b 0d 0a 20 20 20 20 20 20 20 ........stateIndex.=.0;.........
2c20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 .........}..............}.......
2c40 20 20 20 20 20 20 20 65 6c 73 65 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 .......else..............{......
2c60 20 20 20 20 20 20 20 20 20 20 20 20 73 74 61 74 65 49 6e 64 65 78 20 3d 20 47 65 74 50 6f 69 6e ............stateIndex.=.GetPoin
2c80 74 65 72 53 74 61 74 65 49 6e 64 65 78 46 6f 72 28 70 6f 69 6e 74 65 72 4f 72 54 6f 75 63 68 49 terStateIndexFor(pointerOrTouchI
2ca0 64 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 73 74 61 74 65 d);....................if.(state
2cc0 49 6e 64 65 78 20 3d 3d 20 2d 31 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d Index.==.-1)..................{.
2ce0 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 20 28 76 61 72 20 69 20 .....................for.(var.i.
2d00 3d 20 30 3b 20 69 20 3c 20 6d 5f 50 6f 69 6e 74 65 72 53 74 61 74 65 73 2e 6c 65 6e 67 74 68 3b =.0;.i.<.m_PointerStates.length;
2d20 20 2b 2b 69 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 .++i)......................{....
2d40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 65 76 65 6e 74 44 ......................var.eventD
2d60 61 74 61 20 3d 20 6d 5f 50 6f 69 6e 74 65 72 53 74 61 74 65 73 5b 69 5d 2e 65 76 65 6e 74 44 61 ata.=.m_PointerStates[i].eventDa
2d80 74 61 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 ta;..........................if.
2da0 28 65 76 65 6e 74 44 61 74 61 2e 74 6f 75 63 68 49 64 20 3d 3d 20 70 6f 69 6e 74 65 72 4f 72 54 (eventData.touchId.==.pointerOrT
2dc0 6f 75 63 68 49 64 20 7c 7c 20 28 65 76 65 6e 74 44 61 74 61 2e 74 6f 75 63 68 49 64 20 21 3d 20 ouchId.||.(eventData.touchId.!=.
2de0 30 20 26 26 20 65 76 65 6e 74 44 61 74 61 2e 64 65 76 69 63 65 2e 64 65 76 69 63 65 49 64 20 3d 0.&&.eventData.device.deviceId.=
2e00 3d 20 70 6f 69 6e 74 65 72 4f 72 54 6f 75 63 68 49 64 29 29 0d 0a 20 20 20 20 20 20 20 20 20 20 =.pointerOrTouchId))............
2e20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 65 76 65 6e 74 44 61 ..................return.eventDa
2e40 74 61 2e 70 6f 69 6e 74 65 72 45 6e 74 65 72 20 21 3d 20 6e 75 6c 6c 3b 0d 0a 20 20 20 20 20 20 ta.pointerEnter.!=.null;........
2e60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..............}.................
2e80 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 .}..............}..............i
2ea0 66 20 28 73 74 61 74 65 49 6e 64 65 78 20 3d 3d 20 2d 31 29 0d 0a 20 20 20 20 20 20 20 20 20 20 f.(stateIndex.==.-1)............
2ec0 20 20 20 20 20 20 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 ......return.false;.............
2ee0 20 20 20 72 65 74 75 72 6e 20 6d 5f 50 6f 69 6e 74 65 72 53 74 61 74 65 73 5b 73 74 61 74 65 49 ...return.m_PointerStates[stateI
2f00 6e 64 65 78 5d 2e 65 76 65 6e 74 44 61 74 61 2e 70 6f 69 6e 74 65 72 45 6e 74 65 72 20 21 3d 20 ndex].eventData.pointerEnter.!=.
2f20 6e 75 6c 6c 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 70 72 69 76 null;..........}............priv
2f40 61 74 65 20 52 61 79 63 61 73 74 52 65 73 75 6c 74 20 50 65 72 66 6f 72 6d 52 61 79 63 61 73 74 ate.RaycastResult.PerformRaycast
2f60 28 45 78 74 65 6e 64 65 64 50 6f 69 6e 74 65 72 45 76 65 6e 74 44 61 74 61 20 65 76 65 6e 74 44 (ExtendedPointerEventData.eventD
2f80 61 74 61 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 ata)..........{..............if.
2fa0 28 65 76 65 6e 74 44 61 74 61 20 3d 3d 20 6e 75 6c 6c 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 (eventData.==.null).............
2fc0 20 20 20 20 20 74 68 72 6f 77 20 6e 65 77 20 41 72 67 75 6d 65 6e 74 4e 75 6c 6c 45 78 63 65 70 .....throw.new.ArgumentNullExcep
2fe0 74 69 6f 6e 28 6e 61 6d 65 6f 66 28 65 76 65 6e 74 44 61 74 61 29 29 3b 0d 0a 0d 0a 20 20 20 20 tion(nameof(eventData));........
3000 20 20 20 20 20 20 20 20 2f 2f 20 49 66 20 69 74 27 73 20 61 6e 20 65 76 65 6e 74 20 66 72 6f 6d ........//.If.it's.an.event.from
3020 20 61 20 74 72 61 63 6b 65 64 20 64 65 76 69 63 65 2c 20 73 65 65 20 69 66 20 77 65 20 68 61 76 .a.tracked.device,.see.if.we.hav
3040 65 20 61 20 54 72 61 63 6b 65 64 44 65 76 69 63 65 52 61 79 63 61 73 74 65 72 20 61 6e 64 20 67 e.a.TrackedDeviceRaycaster.and.g
3060 69 76 65 20 69 74 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 74 68 65 20 66 69 72 73 74 ive.it..............//.the.first
3080 20 73 68 6f 74 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 65 76 65 6e 74 44 61 74 .shot...............if.(eventDat
30a0 61 2e 70 6f 69 6e 74 65 72 54 79 70 65 20 3d 3d 20 55 49 50 6f 69 6e 74 65 72 54 79 70 65 2e 54 a.pointerType.==.UIPointerType.T
30c0 72 61 63 6b 65 64 20 26 26 20 54 72 61 63 6b 65 64 44 65 76 69 63 65 52 61 79 63 61 73 74 65 72 racked.&&.TrackedDeviceRaycaster
30e0 2e 73 5f 49 6e 73 74 61 6e 63 65 73 2e 6c 65 6e 67 74 68 20 3e 20 30 29 0d 0a 20 20 20 20 20 20 .s_Instances.length.>.0)........
3100 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 20 28 76 61 ......{..................for.(va
3120 72 20 69 20 3d 20 30 3b 20 69 20 3c 20 54 72 61 63 6b 65 64 44 65 76 69 63 65 52 61 79 63 61 73 r.i.=.0;.i.<.TrackedDeviceRaycas
3140 74 65 72 2e 73 5f 49 6e 73 74 61 6e 63 65 73 2e 6c 65 6e 67 74 68 3b 20 2b 2b 69 29 0d 0a 20 20 ter.s_Instances.length;.++i)....
3160 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..............{.................
3180 20 20 20 20 20 76 61 72 20 74 72 61 63 6b 65 64 44 65 76 69 63 65 52 61 79 63 61 73 74 65 72 20 .....var.trackedDeviceRaycaster.
31a0 3d 20 54 72 61 63 6b 65 64 44 65 76 69 63 65 52 61 79 63 61 73 74 65 72 2e 73 5f 49 6e 73 74 61 =.TrackedDeviceRaycaster.s_Insta
31c0 6e 63 65 73 5b 69 5d 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f nces[i];......................m_
31e0 52 61 79 63 61 73 74 52 65 73 75 6c 74 43 61 63 68 65 2e 43 6c 65 61 72 28 29 3b 0d 0a 20 20 20 RaycastResultCache.Clear();.....
3200 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 74 72 61 63 6b 65 64 44 65 76 69 63 65 52 61 .................trackedDeviceRa
3220 79 63 61 73 74 65 72 2e 50 65 72 66 6f 72 6d 52 61 79 63 61 73 74 28 65 76 65 6e 74 44 61 74 61 ycaster.PerformRaycast(eventData
3240 2c 20 6d 5f 52 61 79 63 61 73 74 52 65 73 75 6c 74 43 61 63 68 65 29 3b 0d 0a 20 20 20 20 20 20 ,.m_RaycastResultCache);........
3260 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 6d 5f 52 61 79 63 61 73 74 52 65 73 75 6c ..............if.(m_RaycastResul
3280 74 43 61 63 68 65 2e 43 6f 75 6e 74 20 3e 20 30 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 tCache.Count.>.0)...............
32a0 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .......{........................
32c0 20 20 76 61 72 20 72 61 79 63 61 73 74 52 65 73 75 6c 74 20 3d 20 6d 5f 52 61 79 63 61 73 74 52 ..var.raycastResult.=.m_RaycastR
32e0 65 73 75 6c 74 43 61 63 68 65 5b 30 5d 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 esultCache[0];..................
3300 20 20 20 20 20 20 20 20 6d 5f 52 61 79 63 61 73 74 52 65 73 75 6c 74 43 61 63 68 65 2e 43 6c 65 ........m_RaycastResultCache.Cle
3320 61 72 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 ar();..........................r
3340 65 74 75 72 6e 20 72 61 79 63 61 73 74 52 65 73 75 6c 74 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 eturn.raycastResult;............
3360 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a ..........}..................}..
3380 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 64 65 66 61 75 6c 74 3b 0d ................return.default;.
33a0 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f .............}................//
33c0 20 4f 74 68 65 72 77 69 73 65 20 70 61 73 73 20 69 74 20 61 6c 6f 6e 67 20 74 6f 20 74 68 65 20 .Otherwise.pass.it.along.to.the.
33e0 6e 6f 72 6d 61 6c 20 72 61 79 63 61 73 74 69 6e 67 20 6c 6f 67 69 63 2e 0d 0a 20 20 20 20 20 20 normal.raycasting.logic.........
3400 20 20 20 20 20 20 65 76 65 6e 74 53 79 73 74 65 6d 2e 52 61 79 63 61 73 74 41 6c 6c 28 65 76 65 ......eventSystem.RaycastAll(eve
3420 6e 74 44 61 74 61 2c 20 6d 5f 52 61 79 63 61 73 74 52 65 73 75 6c 74 43 61 63 68 65 29 3b 0d 0a ntData,.m_RaycastResultCache);..
3440 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 72 65 73 75 6c 74 20 3d 20 46 69 6e 64 46 69 72 ............var.result.=.FindFir
3460 73 74 52 61 79 63 61 73 74 28 6d 5f 52 61 79 63 61 73 74 52 65 73 75 6c 74 43 61 63 68 65 29 3b stRaycast(m_RaycastResultCache);
3480 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 52 61 79 63 61 73 74 52 65 73 75 6c 74 43 61 63 ..............m_RaycastResultCac
34a0 68 65 2e 43 6c 65 61 72 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 he.Clear();..............return.
34c0 72 65 73 75 6c 74 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 2f 2f result;..........}............//
34e0 20 4d 6f 75 73 65 2c 20 70 65 6e 2c 20 74 6f 75 63 68 2c 20 61 6e 64 20 74 72 61 63 6b 65 64 20 .Mouse,.pen,.touch,.and.tracked.
3500 64 65 76 69 63 65 20 70 6f 69 6e 74 65 72 20 69 6e 70 75 74 20 61 6c 6c 20 67 6f 20 74 68 72 6f device.pointer.input.all.go.thro
3520 75 67 68 20 68 65 72 65 2e 0d 0a 20 20 20 20 20 20 20 20 70 72 69 76 61 74 65 20 76 6f 69 64 20 ugh.here...........private.void.
3540 50 72 6f 63 65 73 73 50 6f 69 6e 74 65 72 28 72 65 66 20 50 6f 69 6e 74 65 72 4d 6f 64 65 6c 20 ProcessPointer(ref.PointerModel.
3560 73 74 61 74 65 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 state)..........{..............i
3580 66 20 28 21 73 74 61 74 65 2e 63 68 61 6e 67 65 64 54 68 69 73 46 72 61 6d 65 29 0d 0a 20 20 20 f.(!state.changedThisFrame).....
35a0 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 .............return;............
35c0 20 20 20 20 76 61 72 20 65 76 65 6e 74 44 61 74 61 20 3d 20 73 74 61 74 65 2e 65 76 65 6e 74 44 ....var.eventData.=.state.eventD
35e0 61 74 61 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 53 79 6e 63 20 70 6f 73 69 ata;................//.Sync.posi
3600 74 69 6f 6e 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 70 6f 69 6e 74 65 72 54 79 tion...............var.pointerTy
3620 70 65 20 3d 20 65 76 65 6e 74 44 61 74 61 2e 70 6f 69 6e 74 65 72 54 79 70 65 3b 0d 0a 20 20 20 pe.=.eventData.pointerType;.....
3640 20 20 20 20 20 20 20 20 20 69 66 20 28 70 6f 69 6e 74 65 72 54 79 70 65 20 3d 3d 20 55 49 50 6f .........if.(pointerType.==.UIPo
3660 69 6e 74 65 72 54 79 70 65 2e 4d 6f 75 73 65 4f 72 50 65 6e 20 26 26 20 43 75 72 73 6f 72 2e 6c interType.MouseOrPen.&&.Cursor.l
3680 6f 63 6b 53 74 61 74 65 20 3d 3d 20 43 75 72 73 6f 72 4c 6f 63 6b 4d 6f 64 65 2e 4c 6f 63 6b 65 ockState.==.CursorLockMode.Locke
36a0 64 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 d)..............{...............
36c0 20 20 20 65 76 65 6e 74 44 61 74 61 2e 70 6f 73 69 74 69 6f 6e 20 3d 20 6e 65 77 20 56 65 63 74 ...eventData.position.=.new.Vect
36e0 6f 72 32 28 2d 31 2c 20 2d 31 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f or2(-1,.-1);..................//
3700 2f 2f 52 45 56 49 45 57 3a 20 54 68 69 73 20 69 73 20 63 6f 6e 73 69 73 74 65 6e 74 20 77 69 74 //REVIEW:.This.is.consistent.wit
3720 68 20 53 74 61 6e 64 61 6c 6f 6e 65 49 6e 70 75 74 4d 6f 64 75 6c 65 20 62 75 74 20 68 61 76 69 h.StandaloneInputModule.but.havi
3740 6e 67 20 6e 6f 20 64 65 6c 74 61 73 20 69 6e 20 6c 6f 63 6b 65 64 20 6d 6f 64 65 20 73 65 65 6d ng.no.deltas.in.locked.mode.seem
3760 73 20 77 72 6f 6e 67 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 76 65 6e 74 44 61 s.wrong..................eventDa
3780 74 61 2e 64 65 6c 74 61 20 3d 20 64 65 66 61 75 6c 74 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 ta.delta.=.default;.............
37a0 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 65 6c 73 65 20 69 66 20 28 70 6f 69 6e 74 65 72 .}..............else.if.(pointer
37c0 54 79 70 65 20 3d 3d 20 55 49 50 6f 69 6e 74 65 72 54 79 70 65 2e 54 72 61 63 6b 65 64 29 0d 0a Type.==.UIPointerType.Tracked)..
37e0 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 ............{..................e
3800 76 65 6e 74 44 61 74 61 2e 74 72 61 63 6b 65 64 44 65 76 69 63 65 4f 72 69 65 6e 74 61 74 69 6f ventData.trackedDeviceOrientatio
3820 6e 20 3d 20 73 74 61 74 65 2e 77 6f 72 6c 64 4f 72 69 65 6e 74 61 74 69 6f 6e 3b 0d 0a 20 20 20 n.=.state.worldOrientation;.....
3840 20 20 20 20 20 20 20 20 20 20 20 20 20 65 76 65 6e 74 44 61 74 61 2e 74 72 61 63 6b 65 64 44 65 .............eventData.trackedDe
3860 76 69 63 65 50 6f 73 69 74 69 6f 6e 20 3d 20 73 74 61 74 65 2e 77 6f 72 6c 64 50 6f 73 69 74 69 vicePosition.=.state.worldPositi
3880 6f 6e 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 on;..............}..............
38a0 65 6c 73 65 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 else..............{.............
38c0 20 20 20 20 20 65 76 65 6e 74 44 61 74 61 2e 64 65 6c 74 61 20 3d 20 73 74 61 74 65 2e 73 63 72 .....eventData.delta.=.state.scr
38e0 65 65 6e 50 6f 73 69 74 69 6f 6e 20 2d 20 65 76 65 6e 74 44 61 74 61 2e 70 6f 73 69 74 69 6f 6e eenPosition.-.eventData.position
3900 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 76 65 6e 74 44 61 74 61 2e 70 6f 73 ;..................eventData.pos
3920 69 74 69 6f 6e 20 3d 20 73 74 61 74 65 2e 73 63 72 65 65 6e 50 6f 73 69 74 69 6f 6e 3b 0d 0a 20 ition.=.state.screenPosition;...
3940 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 43 ...........}................//.C
3960 6c 65 61 72 20 74 68 65 20 27 75 73 65 64 27 20 66 6c 61 67 2e 0d 0a 20 20 20 20 20 20 20 20 20 lear.the.'used'.flag............
3980 20 20 20 65 76 65 6e 74 44 61 74 61 2e 52 65 73 65 74 28 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 ...eventData.Reset();...........
39a0 20 20 20 20 20 2f 2f 20 52 61 79 63 61 73 74 20 66 72 6f 6d 20 63 75 72 72 65 6e 74 20 70 6f 73 .....//.Raycast.from.current.pos
39c0 69 74 69 6f 6e 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 65 76 65 6e 74 44 61 74 61 2e 70 6f ition...............eventData.po
39e0 69 6e 74 65 72 43 75 72 72 65 6e 74 52 61 79 63 61 73 74 20 3d 20 50 65 72 66 6f 72 6d 52 61 79 interCurrentRaycast.=.PerformRay
3a00 63 61 73 74 28 65 76 65 6e 74 44 61 74 61 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 cast(eventData);................
3a20 2f 2f 20 53 79 6e 63 20 70 6f 73 69 74 69 6f 6e 20 66 6f 72 20 74 72 61 63 6b 69 6e 67 20 64 65 //.Sync.position.for.tracking.de
3a40 76 69 63 65 73 2e 20 46 6f 72 20 74 68 6f 73 65 2c 20 77 65 20 63 61 6e 20 6f 6e 6c 79 20 64 6f vices..For.those,.we.can.only.do
3a60 20 74 68 69 73 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 61 66 74 65 72 20 74 68 65 20 .this..............//.after.the.
3a80 72 61 79 63 61 73 74 20 61 73 20 74 68 65 20 73 63 72 65 65 6e 2d 73 70 61 63 65 20 70 6f 73 69 raycast.as.the.screen-space.posi
3aa0 74 69 6f 6e 20 69 73 20 61 20 62 79 70 72 6f 64 75 63 74 20 6f 66 20 74 68 65 20 72 61 79 63 61 tion.is.a.byproduct.of.the.rayca
3ac0 73 74 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 70 6f 69 6e 74 65 72 54 79 70 65 st...............if.(pointerType
3ae0 20 3d 3d 20 55 49 50 6f 69 6e 74 65 72 54 79 70 65 2e 54 72 61 63 6b 65 64 20 26 26 20 65 76 65 .==.UIPointerType.Tracked.&&.eve
3b00 6e 74 44 61 74 61 2e 70 6f 69 6e 74 65 72 43 75 72 72 65 6e 74 52 61 79 63 61 73 74 2e 69 73 56 ntData.pointerCurrentRaycast.isV
3b20 61 6c 69 64 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 alid)..............{............
3b40 20 20 20 20 20 20 76 61 72 20 73 63 72 65 65 6e 50 6f 73 20 3d 20 65 76 65 6e 74 44 61 74 61 2e ......var.screenPos.=.eventData.
3b60 70 6f 69 6e 74 65 72 43 75 72 72 65 6e 74 52 61 79 63 61 73 74 2e 73 63 72 65 65 6e 50 6f 73 69 pointerCurrentRaycast.screenPosi
3b80 74 69 6f 6e 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 76 65 6e 74 44 61 74 61 tion;..................eventData
3ba0 2e 64 65 6c 74 61 20 3d 20 73 63 72 65 65 6e 50 6f 73 20 2d 20 65 76 65 6e 74 44 61 74 61 2e 70 .delta.=.screenPos.-.eventData.p
3bc0 6f 73 69 74 69 6f 6e 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 76 65 6e 74 44 osition;..................eventD
3be0 61 74 61 2e 70 6f 73 69 74 69 6f 6e 20 3d 20 65 76 65 6e 74 44 61 74 61 2e 70 6f 69 6e 74 65 72 ata.position.=.eventData.pointer
3c00 43 75 72 72 65 6e 74 52 61 79 63 61 73 74 2e 73 63 72 65 65 6e 50 6f 73 69 74 69 6f 6e 3b 0d 0a CurrentRaycast.screenPosition;..
3c20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 2f ............}................///
3c40 2f 52 45 56 49 45 57 3a 20 66 6f 72 20 74 6f 75 63 68 2c 20 77 65 20 6f 6e 6c 79 20 6e 65 65 64 /REVIEW:.for.touch,.we.only.need
3c60 20 74 68 65 20 6c 65 66 74 20 62 75 74 74 6f 6e 3b 20 73 68 6f 75 6c 64 20 77 65 20 73 6b 69 70 .the.left.button;.should.we.skip
3c80 20 72 69 67 68 74 20 61 6e 64 20 6d 69 64 64 6c 65 20 62 75 74 74 6f 6e 20 70 72 6f 63 65 73 73 .right.and.middle.button.process
3ca0 69 6e 67 3f 20 74 68 65 6e 20 77 65 20 61 6c 73 6f 20 64 6f 6e 27 74 20 6e 65 65 64 20 74 6f 20 ing?.then.we.also.don't.need.to.
3cc0 63 6f 70 79 20 74 6f 2f 66 72 6f 6d 20 74 68 65 20 65 76 65 6e 74 0d 0a 0d 0a 20 20 20 20 20 20 copy.to/from.the.event..........
3ce0 20 20 20 20 20 20 2f 2f 20 4c 65 66 74 20 6d 6f 75 73 65 20 62 75 74 74 6f 6e 2e 20 4d 6f 76 65 ......//.Left.mouse.button..Move
3d00 6d 65 6e 74 20 61 6e 64 20 73 63 72 6f 6c 6c 69 6e 67 20 69 73 20 70 72 6f 63 65 73 73 65 64 20 ment.and.scrolling.is.processed.
3d20 77 69 74 68 20 65 76 65 6e 74 20 73 65 74 20 6c 65 66 74 20 62 75 74 74 6f 6e 2e 0d 0a 20 20 20 with.event.set.left.button......
3d40 20 20 20 20 20 20 20 20 20 65 76 65 6e 74 44 61 74 61 2e 62 75 74 74 6f 6e 20 3d 20 50 6f 69 6e .........eventData.button.=.Poin
3d60 74 65 72 45 76 65 6e 74 44 61 74 61 2e 49 6e 70 75 74 42 75 74 74 6f 6e 2e 4c 65 66 74 3b 0d 0a terEventData.InputButton.Left;..
3d80 20 20 20 20 20 20 20 20 20 20 20 20 73 74 61 74 65 2e 6c 65 66 74 42 75 74 74 6f 6e 2e 43 6f 70 ............state.leftButton.Cop
3da0 79 50 72 65 73 73 53 74 61 74 65 54 6f 28 65 76 65 6e 74 44 61 74 61 29 3b 0d 0a 0d 0a 20 20 20 yPressStateTo(eventData);.......
3dc0 20 20 20 20 20 20 20 20 20 50 72 6f 63 65 73 73 50 6f 69 6e 74 65 72 4d 6f 76 65 6d 65 6e 74 28 .........ProcessPointerMovement(
3de0 72 65 66 20 73 74 61 74 65 2c 20 65 76 65 6e 74 44 61 74 61 29 3b 0d 0a 20 20 20 20 20 20 20 20 ref.state,.eventData);..........
3e00 20 20 20 20 50 72 6f 63 65 73 73 50 6f 69 6e 74 65 72 42 75 74 74 6f 6e 28 72 65 66 20 73 74 61 ....ProcessPointerButton(ref.sta
3e20 74 65 2e 6c 65 66 74 42 75 74 74 6f 6e 2c 20 65 76 65 6e 74 44 61 74 61 29 3b 0d 0a 20 20 20 20 te.leftButton,.eventData);......
3e40 20 20 20 20 20 20 20 20 50 72 6f 63 65 73 73 50 6f 69 6e 74 65 72 42 75 74 74 6f 6e 44 72 61 67 ........ProcessPointerButtonDrag
3e60 28 72 65 66 20 73 74 61 74 65 2e 6c 65 66 74 42 75 74 74 6f 6e 2c 20 65 76 65 6e 74 44 61 74 61 (ref.state.leftButton,.eventData
3e80 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 50 72 6f 63 65 73 73 50 6f 69 6e 74 65 72 53 63 );..............ProcessPointerSc
3ea0 72 6f 6c 6c 28 72 65 66 20 73 74 61 74 65 2c 20 65 76 65 6e 74 44 61 74 61 29 3b 0d 0a 0d 0a 20 roll(ref.state,.eventData);.....
3ec0 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 52 69 67 68 74 20 6d 6f 75 73 65 20 62 75 74 74 6f 6e ...........//.Right.mouse.button
3ee0 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 65 76 65 6e 74 44 61 74 61 2e 62 75 74 74 6f 6e 20 ...............eventData.button.
3f00 3d 20 50 6f 69 6e 74 65 72 45 76 65 6e 74 44 61 74 61 2e 49 6e 70 75 74 42 75 74 74 6f 6e 2e 52 =.PointerEventData.InputButton.R
3f20 69 67 68 74 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 74 61 74 65 2e 72 69 67 68 74 42 75 ight;..............state.rightBu
3f40 74 74 6f 6e 2e 43 6f 70 79 50 72 65 73 73 53 74 61 74 65 54 6f 28 65 76 65 6e 74 44 61 74 61 29 tton.CopyPressStateTo(eventData)
3f60 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 50 72 6f 63 65 73 73 50 6f 69 6e 74 65 72 42 ;................ProcessPointerB
3f80 75 74 74 6f 6e 28 72 65 66 20 73 74 61 74 65 2e 72 69 67 68 74 42 75 74 74 6f 6e 2c 20 65 76 65 utton(ref.state.rightButton,.eve
3fa0 6e 74 44 61 74 61 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 50 72 6f 63 65 73 73 50 6f 69 ntData);..............ProcessPoi
3fc0 6e 74 65 72 42 75 74 74 6f 6e 44 72 61 67 28 72 65 66 20 73 74 61 74 65 2e 72 69 67 68 74 42 75 nterButtonDrag(ref.state.rightBu
3fe0 74 74 6f 6e 2c 20 65 76 65 6e 74 44 61 74 61 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 tton,.eventData);...............
4000 20 2f 2f 20 4d 69 64 64 6c 65 20 6d 6f 75 73 65 20 62 75 74 74 6f 6e 2e 0d 0a 20 20 20 20 20 20 .//.Middle.mouse.button.........
4020 20 20 20 20 20 20 65 76 65 6e 74 44 61 74 61 2e 62 75 74 74 6f 6e 20 3d 20 50 6f 69 6e 74 65 72 ......eventData.button.=.Pointer
4040 45 76 65 6e 74 44 61 74 61 2e 49 6e 70 75 74 42 75 74 74 6f 6e 2e 4d 69 64 64 6c 65 3b 0d 0a 20 EventData.InputButton.Middle;...
4060 20 20 20 20 20 20 20 20 20 20 20 73 74 61 74 65 2e 6d 69 64 64 6c 65 42 75 74 74 6f 6e 2e 43 6f ...........state.middleButton.Co
4080 70 79 50 72 65 73 73 53 74 61 74 65 54 6f 28 65 76 65 6e 74 44 61 74 61 29 3b 0d 0a 0d 0a 20 20 pyPressStateTo(eventData);......
40a0 20 20 20 20 20 20 20 20 20 20 50 72 6f 63 65 73 73 50 6f 69 6e 74 65 72 42 75 74 74 6f 6e 28 72 ..........ProcessPointerButton(r
40c0 65 66 20 73 74 61 74 65 2e 6d 69 64 64 6c 65 42 75 74 74 6f 6e 2c 20 65 76 65 6e 74 44 61 74 61 ef.state.middleButton,.eventData
40e0 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 50 72 6f 63 65 73 73 50 6f 69 6e 74 65 72 42 75 );..............ProcessPointerBu
4100 74 74 6f 6e 44 72 61 67 28 72 65 66 20 73 74 61 74 65 2e 6d 69 64 64 6c 65 42 75 74 74 6f 6e 2c ttonDrag(ref.state.middleButton,
4120 20 65 76 65 6e 74 44 61 74 61 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 74 61 74 .eventData);................stat
4140 65 2e 4f 6e 46 72 61 6d 65 46 69 6e 69 73 68 65 64 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d e.OnFrameFinished();..........}.
4160 0a 0d 0a 20 20 20 20 20 20 20 20 2f 2f 20 69 66 20 77 65 20 61 72 65 20 75 73 69 6e 67 20 61 20 ...........//.if.we.are.using.a.
4180 4d 75 6c 74 69 70 6c 61 79 65 72 45 76 65 6e 74 53 79 73 74 65 6d 2c 20 69 67 6e 6f 72 65 20 61 MultiplayerEventSystem,.ignore.a
41a0 6e 79 20 74 72 61 6e 73 66 6f 72 6d 73 0d 0a 20 20 20 20 20 20 20 20 2f 2f 20 6e 6f 74 20 75 6e ny.transforms..........//.not.un
41c0 64 65 72 20 74 68 65 20 63 75 72 72 65 6e 74 20 4d 75 6c 74 69 70 6c 61 79 65 72 45 76 65 6e 74 der.the.current.MultiplayerEvent
41e0 53 79 73 74 65 6d 27 73 20 72 6f 6f 74 2e 0d 0a 20 20 20 20 20 20 20 20 70 72 69 76 61 74 65 20 System's.root...........private.
4200 62 6f 6f 6c 20 50 6f 69 6e 74 65 72 53 68 6f 75 6c 64 49 67 6e 6f 72 65 54 72 61 6e 73 66 6f 72 bool.PointerShouldIgnoreTransfor
4220 6d 28 54 72 61 6e 73 66 6f 72 6d 20 74 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 m(Transform.t)..........{.......
4240 20 20 20 20 20 20 20 69 66 20 28 65 76 65 6e 74 53 79 73 74 65 6d 20 69 73 20 4d 75 6c 74 69 70 .......if.(eventSystem.is.Multip
4260 6c 61 79 65 72 45 76 65 6e 74 53 79 73 74 65 6d 20 6d 75 6c 74 69 70 6c 61 79 65 72 45 76 65 6e layerEventSystem.multiplayerEven
4280 74 53 79 73 74 65 6d 20 26 26 20 6d 75 6c 74 69 70 6c 61 79 65 72 45 76 65 6e 74 53 79 73 74 65 tSystem.&&.multiplayerEventSyste
42a0 6d 2e 70 6c 61 79 65 72 52 6f 6f 74 20 21 3d 20 6e 75 6c 6c 29 0d 0a 20 20 20 20 20 20 20 20 20 m.playerRoot.!=.null)...........
42c0 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 21 74 2e 49 73 43 ...{..................if.(!t.IsC
42e0 68 69 6c 64 4f 66 28 6d 75 6c 74 69 70 6c 61 79 65 72 45 76 65 6e 74 53 79 73 74 65 6d 2e 70 6c hildOf(multiplayerEventSystem.pl
4300 61 79 65 72 52 6f 6f 74 2e 74 72 61 6e 73 66 6f 72 6d 29 29 0d 0a 20 20 20 20 20 20 20 20 20 20 ayerRoot.transform))............
4320 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 74 72 75 65 3b 0d 0a 20 20 20 20 20 20 20 20 ..........return.true;..........
4340 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 66 61 6c 73 65 3b ....}..............return.false;
4360 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 70 72 69 76 61 74 65 20 76 ..........}............private.v
4380 6f 69 64 20 50 72 6f 63 65 73 73 50 6f 69 6e 74 65 72 4d 6f 76 65 6d 65 6e 74 28 72 65 66 20 50 oid.ProcessPointerMovement(ref.P
43a0 6f 69 6e 74 65 72 4d 6f 64 65 6c 20 70 6f 69 6e 74 65 72 2c 20 45 78 74 65 6e 64 65 64 50 6f 69 ointerModel.pointer,.ExtendedPoi
43c0 6e 74 65 72 45 76 65 6e 74 44 61 74 61 20 65 76 65 6e 74 44 61 74 61 29 0d 0a 20 20 20 20 20 20 nterEventData.eventData)........
43e0 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 63 75 72 72 65 6e 74 50 6f 69 6e ..{..............var.currentPoin
4400 74 65 72 54 61 72 67 65 74 20 3d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 terTarget.=..................//.
4420 49 66 20 74 68 65 20 70 6f 69 6e 74 65 72 20 69 73 20 61 20 74 6f 75 63 68 20 74 68 61 74 20 77 If.the.pointer.is.a.touch.that.w
4440 61 73 20 72 65 6c 65 61 73 65 64 20 74 68 69 73 20 66 72 61 6d 65 2c 20 77 65 20 67 65 6e 65 72 as.released.this.frame,.we.gener
4460 61 74 65 20 70 6f 69 6e 74 65 72 2d 65 78 69 74 20 65 76 65 6e 74 73 0d 0a 20 20 20 20 20 20 20 ate.pointer-exit.events.........
4480 20 20 20 20 20 20 20 20 20 2f 2f 20 61 6e 64 20 74 68 65 6e 20 6c 61 74 65 72 20 72 65 6d 6f 76 .........//.and.then.later.remov
44a0 65 20 74 68 65 20 70 6f 69 6e 74 65 72 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 e.the.pointer...................
44c0 28 65 76 65 6e 74 44 61 74 61 2e 70 6f 69 6e 74 65 72 54 79 70 65 20 3d 3d 20 55 49 50 6f 69 6e (eventData.pointerType.==.UIPoin
44e0 74 65 72 54 79 70 65 2e 54 6f 75 63 68 20 26 26 20 70 6f 69 6e 74 65 72 2e 6c 65 66 74 42 75 74 terType.Touch.&&.pointer.leftBut
4500 74 6f 6e 2e 77 61 73 52 65 6c 65 61 73 65 64 54 68 69 73 46 72 61 6d 65 29 20 7c 7c 0d 0a 20 20 ton.wasReleasedThisFrame).||....
4520 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 65 76 65 6e 74 44 61 74 61 2e 70 6f 69 6e 74 65 72 ..............(eventData.pointer
4540 54 79 70 65 20 3d 3d 20 55 49 50 6f 69 6e 74 65 72 54 79 70 65 2e 4d 6f 75 73 65 4f 72 50 65 6e Type.==.UIPointerType.MouseOrPen
4560 20 26 26 20 43 75 72 73 6f 72 2e 6c 6f 63 6b 53 74 61 74 65 20 3d 3d 20 43 75 72 73 6f 72 4c 6f .&&.Cursor.lockState.==.CursorLo
4580 63 6b 4d 6f 64 65 2e 4c 6f 63 6b 65 64 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ckMode.Locked)..................
45a0 3f 20 6e 75 6c 6c 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3a 20 65 76 65 6e 74 44 ?.null..................:.eventD
45c0 61 74 61 2e 70 6f 69 6e 74 65 72 43 75 72 72 65 6e 74 52 61 79 63 61 73 74 2e 67 61 6d 65 4f 62 ata.pointerCurrentRaycast.gameOb
45e0 6a 65 63 74 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 50 72 6f 63 65 73 73 50 6f 69 6e ject;................ProcessPoin
4600 74 65 72 4d 6f 76 65 6d 65 6e 74 28 65 76 65 6e 74 44 61 74 61 2c 20 63 75 72 72 65 6e 74 50 6f terMovement(eventData,.currentPo
4620 69 6e 74 65 72 54 61 72 67 65 74 29 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 interTarget);..........}........
4640 20 20 20 20 70 72 69 76 61 74 65 20 76 6f 69 64 20 50 72 6f 63 65 73 73 50 6f 69 6e 74 65 72 4d ....private.void.ProcessPointerM
4660 6f 76 65 6d 65 6e 74 28 45 78 74 65 6e 64 65 64 50 6f 69 6e 74 65 72 45 76 65 6e 74 44 61 74 61 ovement(ExtendedPointerEventData
4680 20 65 76 65 6e 74 44 61 74 61 2c 20 47 61 6d 65 4f 62 6a 65 63 74 20 63 75 72 72 65 6e 74 50 6f .eventData,.GameObject.currentPo
46a0 69 6e 74 65 72 54 61 72 67 65 74 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 interTarget)..........{.........
46c0 20 20 20 20 20 2f 2f 20 49 66 20 77 65 20 68 61 76 65 20 6e 6f 20 74 61 72 67 65 74 20 6f 72 20 .....//.If.we.have.no.target.or.
46e0 70 6f 69 6e 74 65 72 45 6e 74 65 72 20 68 61 73 20 62 65 65 6e 20 64 65 6c 65 74 65 64 2c 0d 0a pointerEnter.has.been.deleted,..
4700 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 77 65 20 6a 75 73 74 20 73 65 6e 64 20 65 78 69 74 ............//.we.just.send.exit
4720 20 65 76 65 6e 74 73 20 74 6f 20 61 6e 79 74 68 69 6e 67 20 77 65 20 61 72 65 20 74 72 61 63 6b .events.to.anything.we.are.track
4740 69 6e 67 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 61 6e 64 20 74 68 65 6e 20 65 78 69 ing..............//.and.then.exi
4760 74 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 63 75 72 72 65 6e 74 50 6f 69 6e 74 t...............if.(currentPoint
4780 65 72 54 61 72 67 65 74 20 3d 3d 20 6e 75 6c 6c 20 7c 7c 20 65 76 65 6e 74 44 61 74 61 2e 70 6f erTarget.==.null.||.eventData.po
47a0 69 6e 74 65 72 45 6e 74 65 72 20 3d 3d 20 6e 75 6c 6c 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 interEnter.==.null).............
47c0 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 20 28 76 61 72 20 69 20 3d .{..................for.(var.i.=
47e0 20 30 3b 20 69 20 3c 20 65 76 65 6e 74 44 61 74 61 2e 68 6f 76 65 72 65 64 2e 43 6f 75 6e 74 3b .0;.i.<.eventData.hovered.Count;
4800 20 2b 2b 69 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 45 78 65 63 75 .++i)......................Execu
4820 74 65 45 76 65 6e 74 73 2e 45 78 65 63 75 74 65 28 65 76 65 6e 74 44 61 74 61 2e 68 6f 76 65 72 teEvents.Execute(eventData.hover
4840 65 64 5b 69 5d 2c 20 65 76 65 6e 74 44 61 74 61 2c 20 45 78 65 63 75 74 65 45 76 65 6e 74 73 2e ed[i],.eventData,.ExecuteEvents.
4860 70 6f 69 6e 74 65 72 45 78 69 74 48 61 6e 64 6c 65 72 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 pointerExitHandler);............
4880 20 20 20 20 20 20 20 20 65 76 65 6e 74 44 61 74 61 2e 68 6f 76 65 72 65 64 2e 43 6c 65 61 72 28 ........eventData.hovered.Clear(
48a0 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 63 75 72 72 65 6e );....................if.(curren
48c0 74 50 6f 69 6e 74 65 72 54 61 72 67 65 74 20 3d 3d 20 6e 75 6c 6c 29 0d 0a 20 20 20 20 20 20 20 tPointerTarget.==.null).........
48e0 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .........{......................
4900 65 76 65 6e 74 44 61 74 61 2e 70 6f 69 6e 74 65 72 45 6e 74 65 72 20 3d 20 6e 75 6c 6c 3b 0d 0a eventData.pointerEnter.=.null;..
4920 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 3b 0d 0a 20 20 20 ....................return;.....
4940 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 0d .............}..............}...
4960 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 65 76 65 6e 74 44 61 74 61 2e 70 6f 69 6e 74 .............if.(eventData.point
4980 65 72 45 6e 74 65 72 20 3d 3d 20 63 75 72 72 65 6e 74 50 6f 69 6e 74 65 72 54 61 72 67 65 74 20 erEnter.==.currentPointerTarget.
49a0 26 26 20 63 75 72 72 65 6e 74 50 6f 69 6e 74 65 72 54 61 72 67 65 74 29 0d 0a 20 20 20 20 20 20 &&.currentPointerTarget)........
49c0 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 ..........return;...............
49e0 20 76 61 72 20 63 6f 6d 6d 6f 6e 52 6f 6f 74 20 3d 20 46 69 6e 64 43 6f 6d 6d 6f 6e 52 6f 6f 74 .var.commonRoot.=.FindCommonRoot
4a00 28 65 76 65 6e 74 44 61 74 61 2e 70 6f 69 6e 74 65 72 45 6e 74 65 72 2c 20 63 75 72 72 65 6e 74 (eventData.pointerEnter,.current
4a20 50 6f 69 6e 74 65 72 54 61 72 67 65 74 29 3f 2e 74 72 61 6e 73 66 6f 72 6d 3b 0d 0a 0d 0a 20 20 PointerTarget)?.transform;......
4a40 20 20 20 20 20 20 20 20 20 20 2f 2f 20 57 65 20 77 61 6c 6b 20 75 70 20 74 68 65 20 74 72 65 65 ..........//.We.walk.up.the.tree
4a60 20 75 6e 74 69 6c 20 61 20 63 6f 6d 6d 6f 6e 20 72 6f 6f 74 20 61 6e 64 20 74 68 65 20 6c 61 73 .until.a.common.root.and.the.las
4a80 74 20 65 6e 74 65 72 65 64 20 61 6e 64 20 63 75 72 72 65 6e 74 20 65 6e 74 65 72 65 64 20 6f 62 t.entered.and.current.entered.ob
4aa0 6a 65 63 74 20 69 73 20 66 6f 75 6e 64 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 54 ject.is.found...............//.T
4ac0 68 65 6e 20 73 65 6e 64 20 65 78 69 74 20 61 6e 64 20 65 6e 74 65 72 20 65 76 65 6e 74 73 20 75 hen.send.exit.and.enter.events.u
4ae0 70 20 74 6f 2c 20 62 75 74 20 6e 6f 74 20 69 6e 63 6c 75 64 69 6e 67 2c 20 74 68 65 20 63 6f 6d p.to,.but.not.including,.the.com
4b00 6d 6f 6e 20 72 6f 6f 74 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 65 76 65 6e 74 mon.root...............if.(event
4b20 44 61 74 61 2e 70 6f 69 6e 74 65 72 45 6e 74 65 72 20 21 3d 20 6e 75 6c 6c 29 0d 0a 20 20 20 20 Data.pointerEnter.!=.null)......
4b40 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 20 28 ........{..................for.(
4b60 76 61 72 20 63 75 72 72 65 6e 74 20 3d 20 65 76 65 6e 74 44 61 74 61 2e 70 6f 69 6e 74 65 72 45 var.current.=.eventData.pointerE
4b80 6e 74 65 72 2e 74 72 61 6e 73 66 6f 72 6d 3b 20 63 75 72 72 65 6e 74 20 21 3d 20 6e 75 6c 6c 20 nter.transform;.current.!=.null.
4ba0 26 26 20 63 75 72 72 65 6e 74 20 21 3d 20 63 6f 6d 6d 6f 6e 52 6f 6f 74 3b 20 63 75 72 72 65 6e &&.current.!=.commonRoot;.curren
4bc0 74 20 3d 20 63 75 72 72 65 6e 74 2e 70 61 72 65 6e 74 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 t.=.current.parent).............
4be0 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 45 78 65 63 .....{......................Exec
4c00 75 74 65 45 76 65 6e 74 73 2e 45 78 65 63 75 74 65 28 63 75 72 72 65 6e 74 2e 67 61 6d 65 4f 62 uteEvents.Execute(current.gameOb
4c20 6a 65 63 74 2c 20 65 76 65 6e 74 44 61 74 61 2c 20 45 78 65 63 75 74 65 45 76 65 6e 74 73 2e 70 ject,.eventData,.ExecuteEvents.p
4c40 6f 69 6e 74 65 72 45 78 69 74 48 61 6e 64 6c 65 72 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 ointerExitHandler);.............
4c60 20 20 20 20 20 20 20 20 20 65 76 65 6e 74 44 61 74 61 2e 68 6f 76 65 72 65 64 2e 52 65 6d 6f 76 .........eventData.hovered.Remov
4c80 65 28 63 75 72 72 65 6e 74 2e 67 61 6d 65 4f 62 6a 65 63 74 29 3b 0d 0a 20 20 20 20 20 20 20 20 e(current.gameObject);..........
4ca0 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 ........}..............}........
4cc0 20 20 20 20 20 20 20 20 65 76 65 6e 74 44 61 74 61 2e 70 6f 69 6e 74 65 72 45 6e 74 65 72 20 3d ........eventData.pointerEnter.=
4ce0 20 63 75 72 72 65 6e 74 50 6f 69 6e 74 65 72 54 61 72 67 65 74 3b 0d 0a 20 20 20 20 20 20 20 20 .currentPointerTarget;..........
4d00 20 20 20 20 69 66 20 28 63 75 72 72 65 6e 74 50 6f 69 6e 74 65 72 54 61 72 67 65 74 20 21 3d 20 ....if.(currentPointerTarget.!=.
4d20 6e 75 6c 6c 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 null)..............{............
4d40 20 20 20 20 20 20 66 6f 72 20 28 76 61 72 20 63 75 72 72 65 6e 74 20 3d 20 63 75 72 72 65 6e 74 ......for.(var.current.=.current
4d60 50 6f 69 6e 74 65 72 54 61 72 67 65 74 2e 74 72 61 6e 73 66 6f 72 6d 3b 0d 0a 20 20 20 20 20 20 PointerTarget.transform;........
4d80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 75 72 72 65 6e 74 20 21 3d 20 6e 75 6c 6c 20 26 ...............current.!=.null.&
4da0 26 20 63 75 72 72 65 6e 74 20 21 3d 20 63 6f 6d 6d 6f 6e 52 6f 6f 74 20 26 26 20 21 50 6f 69 6e &.current.!=.commonRoot.&&.!Poin
4dc0 74 65 72 53 68 6f 75 6c 64 49 67 6e 6f 72 65 54 72 61 6e 73 66 6f 72 6d 28 63 75 72 72 65 6e 74 terShouldIgnoreTransform(current
4de0 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 75 72 72 65 6e 74 );.......................current
4e00 20 3d 20 63 75 72 72 65 6e 74 2e 70 61 72 65 6e 74 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 .=.current.parent)..............
4e20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 45 78 65 63 75 ....{......................Execu
4e40 74 65 45 76 65 6e 74 73 2e 45 78 65 63 75 74 65 28 63 75 72 72 65 6e 74 2e 67 61 6d 65 4f 62 6a teEvents.Execute(current.gameObj
4e60 65 63 74 2c 20 65 76 65 6e 74 44 61 74 61 2c 20 45 78 65 63 75 74 65 45 76 65 6e 74 73 2e 70 6f ect,.eventData,.ExecuteEvents.po
4e80 69 6e 74 65 72 45 6e 74 65 72 48 61 6e 64 6c 65 72 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 interEnterHandler);.............
4ea0 20 20 20 20 20 20 20 20 20 65 76 65 6e 74 44 61 74 61 2e 68 6f 76 65 72 65 64 2e 41 64 64 28 63 .........eventData.hovered.Add(c
4ec0 75 72 72 65 6e 74 2e 67 61 6d 65 4f 62 6a 65 63 74 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 urrent.gameObject);.............
4ee0 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 7d .....}..............}..........}
4f00 0d 0a 0d 0a 20 20 20 20 20 20 20 20 70 72 69 76 61 74 65 20 76 6f 69 64 20 50 72 6f 63 65 73 73 ............private.void.Process
4f20 50 6f 69 6e 74 65 72 42 75 74 74 6f 6e 28 72 65 66 20 50 6f 69 6e 74 65 72 4d 6f 64 65 6c 2e 42 PointerButton(ref.PointerModel.B
4f40 75 74 74 6f 6e 53 74 61 74 65 20 62 75 74 74 6f 6e 2c 20 50 6f 69 6e 74 65 72 45 76 65 6e 74 44 uttonState.button,.PointerEventD
4f60 61 74 61 20 65 76 65 6e 74 44 61 74 61 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 ata.eventData)..........{.......
4f80 20 20 20 20 20 20 20 76 61 72 20 63 75 72 72 65 6e 74 4f 76 65 72 47 6f 20 3d 20 65 76 65 6e 74 .......var.currentOverGo.=.event
4fa0 44 61 74 61 2e 70 6f 69 6e 74 65 72 43 75 72 72 65 6e 74 52 61 79 63 61 73 74 2e 67 61 6d 65 4f Data.pointerCurrentRaycast.gameO
4fc0 62 6a 65 63 74 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 63 75 72 72 65 6e bject;................if.(curren
4fe0 74 4f 76 65 72 47 6f 20 21 3d 20 6e 75 6c 6c 20 26 26 20 50 6f 69 6e 74 65 72 53 68 6f 75 6c 64 tOverGo.!=.null.&&.PointerShould
5000 49 67 6e 6f 72 65 54 72 61 6e 73 66 6f 72 6d 28 63 75 72 72 65 6e 74 4f 76 65 72 47 6f 2e 74 72 IgnoreTransform(currentOverGo.tr
5020 61 6e 73 66 6f 72 6d 29 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 ansform))..................retur
5040 6e 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 42 75 74 74 6f 6e 20 70 72 65 73 n;................//.Button.pres
5060 73 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 62 75 74 74 6f 6e 2e 77 61 73 50 72 s...............if.(button.wasPr
5080 65 73 73 65 64 54 68 69 73 46 72 61 6d 65 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a essedThisFrame)..............{..
50a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 76 65 6e 74 44 61 74 61 2e 64 65 6c 74 61 20 ................eventData.delta.
50c0 3d 20 56 65 63 74 6f 72 32 2e 7a 65 72 6f 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 =.Vector2.zero;.................
50e0 20 65 76 65 6e 74 44 61 74 61 2e 64 72 61 67 67 69 6e 67 20 3d 20 66 61 6c 73 65 3b 0d 0a 20 20 .eventData.dragging.=.false;....
5100 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 76 65 6e 74 44 61 74 61 2e 70 72 65 73 73 50 6f 73 ..............eventData.pressPos
5120 69 74 69 6f 6e 20 3d 20 65 76 65 6e 74 44 61 74 61 2e 70 6f 73 69 74 69 6f 6e 3b 0d 0a 20 20 20 ition.=.eventData.position;.....
5140 20 20 20 20 20 20 20 20 20 20 20 20 20 65 76 65 6e 74 44 61 74 61 2e 70 6f 69 6e 74 65 72 50 72 .............eventData.pointerPr
5160 65 73 73 52 61 79 63 61 73 74 20 3d 20 65 76 65 6e 74 44 61 74 61 2e 70 6f 69 6e 74 65 72 43 75 essRaycast.=.eventData.pointerCu
5180 72 72 65 6e 74 52 61 79 63 61 73 74 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 rrentRaycast;..................e
51a0 76 65 6e 74 44 61 74 61 2e 65 6c 69 67 69 62 6c 65 46 6f 72 43 6c 69 63 6b 20 3d 20 74 72 75 65 ventData.eligibleForClick.=.true
51c0 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 73 65 6c 65 63 74 48 ;....................var.selectH
51e0 61 6e 64 6c 65 72 20 3d 20 45 78 65 63 75 74 65 45 76 65 6e 74 73 2e 47 65 74 45 76 65 6e 74 48 andler.=.ExecuteEvents.GetEventH
5200 61 6e 64 6c 65 72 3c 49 53 65 6c 65 63 74 48 61 6e 64 6c 65 72 3e 28 63 75 72 72 65 6e 74 4f 76 andler<ISelectHandler>(currentOv
5220 65 72 47 6f 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 49 66 20 erGo);....................//.If.
5240 77 65 20 68 61 76 65 20 63 6c 69 63 6b 65 64 20 73 6f 6d 65 74 68 69 6e 67 20 6e 65 77 2c 20 64 we.have.clicked.something.new,.d
5260 65 73 65 6c 65 63 74 20 74 68 65 20 6f 6c 64 20 74 68 69 6e 67 20 61 6e 64 20 6c 65 61 76 65 20 eselect.the.old.thing.and.leave.
5280 27 73 65 6c 65 63 74 69 6f 6e 20 68 61 6e 64 6c 69 6e 67 27 20 75 70 0d 0a 20 20 20 20 20 20 20 'selection.handling'.up.........
52a0 20 20 20 20 20 20 20 20 20 2f 2f 20 74 6f 20 74 68 65 20 70 72 65 73 73 20 65 76 65 6e 74 20 28 .........//.to.the.press.event.(
52c0 65 78 63 65 70 74 20 69 66 20 74 68 65 72 65 27 73 20 6e 6f 6e 65 20 61 6e 64 20 77 65 27 72 65 except.if.there's.none.and.we're
52e0 20 74 6f 6c 64 20 74 6f 20 6e 6f 74 20 64 65 73 65 6c 65 63 74 20 69 6e 20 74 68 61 74 20 63 61 .told.to.not.deselect.in.that.ca
5300 73 65 29 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 73 65 6c 65 63 74 se)...................if.(select
5320 48 61 6e 64 6c 65 72 20 21 3d 20 65 76 65 6e 74 53 79 73 74 65 6d 2e 63 75 72 72 65 6e 74 53 65 Handler.!=.eventSystem.currentSe
5340 6c 65 63 74 65 64 47 61 6d 65 4f 62 6a 65 63 74 20 26 26 20 28 73 65 6c 65 63 74 48 61 6e 64 6c lectedGameObject.&&.(selectHandl
5360 65 72 20 21 3d 20 6e 75 6c 6c 20 7c 7c 20 6d 5f 44 65 73 65 6c 65 63 74 4f 6e 42 61 63 6b 67 72 er.!=.null.||.m_DeselectOnBackgr
5380 6f 75 6e 64 43 6c 69 63 6b 29 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 oundClick)).....................
53a0 20 65 76 65 6e 74 53 79 73 74 65 6d 2e 53 65 74 53 65 6c 65 63 74 65 64 47 61 6d 65 4f 62 6a 65 .eventSystem.SetSelectedGameObje
53c0 63 74 28 6e 75 6c 6c 2c 20 65 76 65 6e 74 44 61 74 61 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 ct(null,.eventData);............
53e0 20 20 20 20 20 20 20 20 2f 2f 20 49 6e 76 6f 6b 65 20 4f 6e 50 6f 69 6e 74 65 72 44 6f 77 6e 2c ........//.Invoke.OnPointerDown,
5400 20 69 66 20 70 72 65 73 65 6e 74 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 .if.present...................va
5420 72 20 6e 65 77 50 72 65 73 73 65 64 20 3d 20 45 78 65 63 75 74 65 45 76 65 6e 74 73 2e 45 78 65 r.newPressed.=.ExecuteEvents.Exe
5440 63 75 74 65 48 69 65 72 61 72 63 68 79 28 63 75 72 72 65 6e 74 4f 76 65 72 47 6f 2c 20 65 76 65 cuteHierarchy(currentOverGo,.eve
5460 6e 74 44 61 74 61 2c 20 45 78 65 63 75 74 65 45 76 65 6e 74 73 2e 70 6f 69 6e 74 65 72 44 6f 77 ntData,.ExecuteEvents.pointerDow
5480 6e 48 61 6e 64 6c 65 72 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f nHandler);....................//
54a0 20 44 65 74 65 63 74 20 63 6c 69 63 6b 73 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .Detect.clicks..................
54c0 20 2f 2f 20 4e 4f 54 45 3a 20 53 74 61 6e 64 61 6c 6f 6e 65 49 6e 70 75 74 4d 6f 64 75 6c 65 20 .//.NOTE:.StandaloneInputModule.
54e0 64 6f 65 73 20 74 68 69 73 20 2a 61 66 74 65 72 2a 20 74 68 65 20 63 6c 69 63 6b 20 68 61 6e 64 does.this.*after*.the.click.hand
5500 6c 65 72 20 68 61 73 20 62 65 65 6e 20 69 6e 76 6f 6b 65 64 20 2d 2d 20 77 68 69 63 68 20 64 6f ler.has.been.invoked.--.which.do
5520 65 73 6e 27 74 20 73 65 65 6d 20 74 6f 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f esn't.seem.to................../
5540 2f 20 20 20 20 20 20 20 6d 61 6b 65 20 73 65 6e 73 65 2e 20 57 65 20 64 6f 20 69 74 20 2a 62 65 /.......make.sense..We.do.it.*be
5560 66 6f 72 65 2a 20 49 50 6f 69 6e 74 65 72 43 6c 69 63 6b 48 61 6e 64 6c 65 72 2e 0d 0a 20 20 20 fore*.IPointerClickHandler......
5580 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 74 69 6d 65 20 3d 20 49 6e 70 75 74 52 75 6e .............var.time.=.InputRun
55a0 74 69 6d 65 2e 73 5f 49 6e 73 74 61 6e 63 65 2e 75 6e 73 63 61 6c 65 64 47 61 6d 65 54 69 6d 65 time.s_Instance.unscaledGameTime
55c0 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20 66 6c 6f 61 74 20 63 ;..................const.float.c
55e0 6c 69 63 6b 53 70 65 65 64 20 3d 20 30 2e 33 66 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 lickSpeed.=.0.3f;...............
5600 20 20 20 69 66 20 28 6e 65 77 50 72 65 73 73 65 64 20 3d 3d 20 65 76 65 6e 74 44 61 74 61 2e 6c ...if.(newPressed.==.eventData.l
5620 61 73 74 50 72 65 73 73 20 26 26 20 28 74 69 6d 65 20 2d 20 65 76 65 6e 74 44 61 74 61 2e 63 6c astPress.&&.(time.-.eventData.cl
5640 69 63 6b 54 69 6d 65 29 20 3c 20 63 6c 69 63 6b 53 70 65 65 64 29 0d 0a 20 20 20 20 20 20 20 20 ickTime).<.clickSpeed)..........
5660 20 20 20 20 20 20 20 20 20 20 20 20 2b 2b 65 76 65 6e 74 44 61 74 61 2e 63 6c 69 63 6b 43 6f 75 ............++eventData.clickCou
5680 6e 74 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 6c 73 65 0d 0a 20 20 20 20 20 nt;..................else.......
56a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 76 65 6e 74 44 61 74 61 2e 63 6c 69 63 6b 43 6f ...............eventData.clickCo
56c0 75 6e 74 20 3d 20 31 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 76 65 6e unt.=.1;....................even
56e0 74 44 61 74 61 2e 63 6c 69 63 6b 54 69 6d 65 20 3d 20 74 69 6d 65 3b 0d 0a 0d 0a 20 20 20 20 20 tData.clickTime.=.time;.........
5700 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 57 65 20 64 69 64 6e 27 74 20 66 69 6e 64 20 61 20 70 ...........//.We.didn't.find.a.p
5720 72 65 73 73 20 68 61 6e 64 6c 65 72 2c 20 73 6f 20 77 65 20 74 75 72 6e 20 69 74 20 69 6e 74 6f ress.handler,.so.we.turn.it.into
5740 20 61 20 63 6c 69 63 6b 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 6e .a.click...................if.(n
5760 65 77 50 72 65 73 73 65 64 20 3d 3d 20 6e 75 6c 6c 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 ewPressed.==.null)..............
5780 20 20 20 20 20 20 20 20 6e 65 77 50 72 65 73 73 65 64 20 3d 20 45 78 65 63 75 74 65 45 76 65 6e ........newPressed.=.ExecuteEven
57a0 74 73 2e 47 65 74 45 76 65 6e 74 48 61 6e 64 6c 65 72 3c 49 50 6f 69 6e 74 65 72 43 6c 69 63 6b ts.GetEventHandler<IPointerClick
57c0 48 61 6e 64 6c 65 72 3e 28 63 75 72 72 65 6e 74 4f 76 65 72 47 6f 29 3b 0d 0a 0d 0a 20 20 20 20 Handler>(currentOverGo);........
57e0 20 20 20 20 20 20 20 20 20 20 20 20 65 76 65 6e 74 44 61 74 61 2e 70 6f 69 6e 74 65 72 50 72 65 ............eventData.pointerPre
5800 73 73 20 3d 20 6e 65 77 50 72 65 73 73 65 64 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ss.=.newPressed;................
5820 20 20 65 76 65 6e 74 44 61 74 61 2e 72 61 77 50 6f 69 6e 74 65 72 50 72 65 73 73 20 3d 20 63 75 ..eventData.rawPointerPress.=.cu
5840 72 72 65 6e 74 4f 76 65 72 47 6f 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 rrentOverGo;....................
5860 2f 2f 20 53 61 76 65 20 74 68 65 20 64 72 61 67 20 68 61 6e 64 6c 65 72 20 66 6f 72 20 64 72 61 //.Save.the.drag.handler.for.dra
5880 67 20 65 76 65 6e 74 73 20 64 75 72 69 6e 67 20 74 68 69 73 20 6d 6f 75 73 65 20 64 6f 77 6e 2e g.events.during.this.mouse.down.
58a0 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 76 65 6e 74 44 61 74 61 2e 70 6f 69 6e ..................eventData.poin
58c0 74 65 72 44 72 61 67 20 3d 20 45 78 65 63 75 74 65 45 76 65 6e 74 73 2e 47 65 74 45 76 65 6e 74 terDrag.=.ExecuteEvents.GetEvent
58e0 48 61 6e 64 6c 65 72 3c 49 44 72 61 67 48 61 6e 64 6c 65 72 3e 28 63 75 72 72 65 6e 74 4f 76 65 Handler<IDragHandler>(currentOve
5900 72 47 6f 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 65 76 65 rGo);....................if.(eve
5920 6e 74 44 61 74 61 2e 70 6f 69 6e 74 65 72 44 72 61 67 20 21 3d 20 6e 75 6c 6c 29 0d 0a 20 20 20 ntData.pointerDrag.!=.null).....
5940 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 45 78 65 63 75 74 65 45 76 65 6e 74 73 2e 45 .................ExecuteEvents.E
5960 78 65 63 75 74 65 28 65 76 65 6e 74 44 61 74 61 2e 70 6f 69 6e 74 65 72 44 72 61 67 2c 20 65 76 xecute(eventData.pointerDrag,.ev
5980 65 6e 74 44 61 74 61 2c 20 45 78 65 63 75 74 65 45 76 65 6e 74 73 2e 69 6e 69 74 69 61 6c 69 7a entData,.ExecuteEvents.initializ
59a0 65 50 6f 74 65 6e 74 69 61 6c 44 72 61 67 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d ePotentialDrag);..............}.
59c0 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 42 75 74 74 6f 6e 20 72 65 6c 65 61 73 65 ...............//.Button.release
59e0 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 62 75 74 74 6f 6e 2e 77 61 73 52 65 6c ...............if.(button.wasRel
5a00 65 61 73 65 64 54 68 69 73 46 72 61 6d 65 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a easedThisFrame)..............{..
5a20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 45 78 65 63 75 74 65 45 76 65 6e 74 73 2e 45 78 ................ExecuteEvents.Ex
5a40 65 63 75 74 65 28 65 76 65 6e 74 44 61 74 61 2e 70 6f 69 6e 74 65 72 50 72 65 73 73 2c 20 65 76 ecute(eventData.pointerPress,.ev
5a60 65 6e 74 44 61 74 61 2c 20 45 78 65 63 75 74 65 45 76 65 6e 74 73 2e 70 6f 69 6e 74 65 72 55 70 entData,.ExecuteEvents.pointerUp
5a80 48 61 6e 64 6c 65 72 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 Handler);....................var
5aa0 20 70 6f 69 6e 74 65 72 55 70 48 61 6e 64 6c 65 72 20 3d 20 45 78 65 63 75 74 65 45 76 65 6e 74 .pointerUpHandler.=.ExecuteEvent
5ac0 73 2e 47 65 74 45 76 65 6e 74 48 61 6e 64 6c 65 72 3c 49 50 6f 69 6e 74 65 72 43 6c 69 63 6b 48 s.GetEventHandler<IPointerClickH
5ae0 61 6e 64 6c 65 72 3e 28 63 75 72 72 65 6e 74 4f 76 65 72 47 6f 29 3b 0d 0a 0d 0a 20 20 20 20 20 andler>(currentOverGo);.........
5b00 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 65 76 65 6e 74 44 61 74 61 2e 70 6f 69 6e 74 65 72 ...........if.(eventData.pointer
5b20 50 72 65 73 73 20 3d 3d 20 70 6f 69 6e 74 65 72 55 70 48 61 6e 64 6c 65 72 20 26 26 20 65 76 65 Press.==.pointerUpHandler.&&.eve
5b40 6e 74 44 61 74 61 2e 65 6c 69 67 69 62 6c 65 46 6f 72 43 6c 69 63 6b 29 0d 0a 20 20 20 20 20 20 ntData.eligibleForClick)........
5b60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 45 78 65 63 75 74 65 45 76 65 6e 74 73 2e 45 78 65 63 ..............ExecuteEvents.Exec
5b80 75 74 65 28 65 76 65 6e 74 44 61 74 61 2e 70 6f 69 6e 74 65 72 50 72 65 73 73 2c 20 65 76 65 6e ute(eventData.pointerPress,.even
5ba0 74 44 61 74 61 2c 20 45 78 65 63 75 74 65 45 76 65 6e 74 73 2e 70 6f 69 6e 74 65 72 43 6c 69 63 tData,.ExecuteEvents.pointerClic
5bc0 6b 48 61 6e 64 6c 65 72 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 6c 73 65 kHandler);..................else
5be0 20 69 66 20 28 65 76 65 6e 74 44 61 74 61 2e 64 72 61 67 67 69 6e 67 20 26 26 20 65 76 65 6e 74 .if.(eventData.dragging.&&.event
5c00 44 61 74 61 2e 70 6f 69 6e 74 65 72 44 72 61 67 20 21 3d 20 6e 75 6c 6c 29 0d 0a 20 20 20 20 20 Data.pointerDrag.!=.null).......
5c20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 45 78 65 63 75 74 65 45 76 65 6e 74 73 2e 45 78 65 ...............ExecuteEvents.Exe
5c40 63 75 74 65 48 69 65 72 61 72 63 68 79 28 63 75 72 72 65 6e 74 4f 76 65 72 47 6f 2c 20 65 76 65 cuteHierarchy(currentOverGo,.eve
5c60 6e 74 44 61 74 61 2c 20 45 78 65 63 75 74 65 45 76 65 6e 74 73 2e 64 72 6f 70 48 61 6e 64 6c 65 ntData,.ExecuteEvents.dropHandle
5c80 72 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 76 65 6e 74 44 61 74 61 r);....................eventData
5ca0 2e 65 6c 69 67 69 62 6c 65 46 6f 72 43 6c 69 63 6b 20 3d 20 66 61 6c 73 65 3b 0d 0a 20 20 20 20 .eligibleForClick.=.false;......
5cc0 20 20 20 20 20 20 20 20 20 20 20 20 65 76 65 6e 74 44 61 74 61 2e 70 6f 69 6e 74 65 72 50 72 65 ............eventData.pointerPre
5ce0 73 73 20 3d 20 6e 75 6c 6c 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 76 65 6e ss.=.null;..................even
5d00 74 44 61 74 61 2e 72 61 77 50 6f 69 6e 74 65 72 50 72 65 73 73 20 3d 20 6e 75 6c 6c 3b 0d 0a 0d tData.rawPointerPress.=.null;...
5d20 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 65 76 65 6e 74 44 61 74 61 2e 64 .................if.(eventData.d
5d40 72 61 67 67 69 6e 67 20 26 26 20 65 76 65 6e 74 44 61 74 61 2e 70 6f 69 6e 74 65 72 44 72 61 67 ragging.&&.eventData.pointerDrag
5d60 20 21 3d 20 6e 75 6c 6c 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 45 .!=.null)......................E
5d80 78 65 63 75 74 65 45 76 65 6e 74 73 2e 45 78 65 63 75 74 65 28 65 76 65 6e 74 44 61 74 61 2e 70 xecuteEvents.Execute(eventData.p
5da0 6f 69 6e 74 65 72 44 72 61 67 2c 20 65 76 65 6e 74 44 61 74 61 2c 20 45 78 65 63 75 74 65 45 76 ointerDrag,.eventData,.ExecuteEv
5dc0 65 6e 74 73 2e 65 6e 64 44 72 61 67 48 61 6e 64 6c 65 72 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 ents.endDragHandler);...........
5de0 20 20 20 20 20 20 20 20 20 65 76 65 6e 74 44 61 74 61 2e 64 72 61 67 67 69 6e 67 20 3d 20 66 61 .........eventData.dragging.=.fa
5e00 6c 73 65 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 76 65 6e 74 44 61 74 61 2e lse;..................eventData.
5e20 70 6f 69 6e 74 65 72 44 72 61 67 20 3d 20 6e 75 6c 6c 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 pointerDrag.=.null;.............
5e40 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 62 75 74 74 6f 6e 2e 43 6f 70 79 50 72 65 .}................button.CopyPre
5e60 73 73 53 74 61 74 65 46 72 6f 6d 28 65 76 65 6e 74 44 61 74 61 29 3b 0d 0a 20 20 20 20 20 20 20 ssStateFrom(eventData);.........
5e80 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 70 72 69 76 61 74 65 20 76 6f 69 64 20 50 72 6f 63 65 .}............private.void.Proce
5ea0 73 73 50 6f 69 6e 74 65 72 42 75 74 74 6f 6e 44 72 61 67 28 72 65 66 20 50 6f 69 6e 74 65 72 4d ssPointerButtonDrag(ref.PointerM
5ec0 6f 64 65 6c 2e 42 75 74 74 6f 6e 53 74 61 74 65 20 62 75 74 74 6f 6e 2c 20 45 78 74 65 6e 64 65 odel.ButtonState.button,.Extende
5ee0 64 50 6f 69 6e 74 65 72 45 76 65 6e 74 44 61 74 61 20 65 76 65 6e 74 44 61 74 61 29 0d 0a 20 20 dPointerEventData.eventData)....
5f00 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 21 65 76 65 6e 74 44 ......{..............if.(!eventD
5f20 61 74 61 2e 49 73 50 6f 69 6e 74 65 72 4d 6f 76 69 6e 67 28 29 20 7c 7c 0d 0a 20 20 20 20 20 20 ata.IsPointerMoving().||........
5f40 20 20 20 20 20 20 20 20 20 20 28 65 76 65 6e 74 44 61 74 61 2e 70 6f 69 6e 74 65 72 54 79 70 65 ..........(eventData.pointerType
5f60 20 3d 3d 20 55 49 50 6f 69 6e 74 65 72 54 79 70 65 2e 4d 6f 75 73 65 4f 72 50 65 6e 20 26 26 20 .==.UIPointerType.MouseOrPen.&&.
5f80 43 75 72 73 6f 72 2e 6c 6f 63 6b 53 74 61 74 65 20 3d 3d 20 43 75 72 73 6f 72 4c 6f 63 6b 4d 6f Cursor.lockState.==.CursorLockMo
5fa0 64 65 2e 4c 6f 63 6b 65 64 29 20 7c 7c 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 de.Locked).||..................e
5fc0 76 65 6e 74 44 61 74 61 2e 70 6f 69 6e 74 65 72 44 72 61 67 20 3d 3d 20 6e 75 6c 6c 29 0d 0a 20 ventData.pointerDrag.==.null)...
5fe0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 3b 0d 0a 0d 0a 20 20 20 20 20 20 ...............return;..........
6000 20 20 20 20 20 20 69 66 20 28 21 65 76 65 6e 74 44 61 74 61 2e 64 72 61 67 67 69 6e 67 29 0d 0a ......if.(!eventData.dragging)..
6020 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 ............{..................i
6040 66 20 28 21 65 76 65 6e 74 44 61 74 61 2e 75 73 65 44 72 61 67 54 68 72 65 73 68 6f 6c 64 20 7c f.(!eventData.useDragThreshold.|
6060 7c 20 28 65 76 65 6e 74 44 61 74 61 2e 70 72 65 73 73 50 6f 73 69 74 69 6f 6e 20 2d 20 65 76 65 |.(eventData.pressPosition.-.eve
6080 6e 74 44 61 74 61 2e 70 6f 73 69 74 69 6f 6e 29 2e 73 71 72 4d 61 67 6e 69 74 75 64 65 20 3e 3d ntData.position).sqrMagnitude.>=
60a0 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 64 6f 75 62 6c 65 29 65 76 ......................(double)ev
60c0 65 6e 74 53 79 73 74 65 6d 2e 70 69 78 65 6c 44 72 61 67 54 68 72 65 73 68 6f 6c 64 20 2a 20 65 entSystem.pixelDragThreshold.*.e
60e0 76 65 6e 74 53 79 73 74 65 6d 2e 70 69 78 65 6c 44 72 61 67 54 68 72 65 73 68 6f 6c 64 20 2a 20 ventSystem.pixelDragThreshold.*.
6100 28 65 76 65 6e 74 44 61 74 61 2e 70 6f 69 6e 74 65 72 54 79 70 65 20 3d 3d 20 55 49 50 6f 69 6e (eventData.pointerType.==.UIPoin
6120 74 65 72 54 79 70 65 2e 54 72 61 63 6b 65 64 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 terType.Tracked.................
6140 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
6160 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
6180 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3f 20 6d 5f 54 72 61 63 6b 65 64 44 65 76 69 63 ................?.m_TrackedDevic
61a0 65 44 72 61 67 54 68 72 65 73 68 6f 6c 64 4d 75 6c 74 69 70 6c 69 65 72 0d 0a 20 20 20 20 20 20 eDragThresholdMultiplier........
61c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
61e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
6200 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3a 20 31 29 29 0d 0a .........................:.1))..
6220 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 ................{...............
6240 20 20 20 20 20 20 20 45 78 65 63 75 74 65 45 76 65 6e 74 73 2e 45 78 65 63 75 74 65 28 65 76 65 .......ExecuteEvents.Execute(eve
6260 6e 74 44 61 74 61 2e 70 6f 69 6e 74 65 72 44 72 61 67 2c 20 65 76 65 6e 74 44 61 74 61 2c 20 45 ntData.pointerDrag,.eventData,.E
6280 78 65 63 75 74 65 45 76 65 6e 74 73 2e 62 65 67 69 6e 44 72 61 67 48 61 6e 64 6c 65 72 29 3b 0d xecuteEvents.beginDragHandler);.
62a0 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 76 65 6e 74 44 61 74 61 2e 64 .....................eventData.d
62c0 72 61 67 67 69 6e 67 20 3d 20 74 72 75 65 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ragging.=.true;.................
62e0 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 .}..............}...............
6300 20 69 66 20 28 65 76 65 6e 74 44 61 74 61 2e 64 72 61 67 67 69 6e 67 29 0d 0a 20 20 20 20 20 20 .if.(eventData.dragging)........
6320 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 49 66 20 77 ......{..................//.If.w
6340 65 20 6d 6f 76 65 64 20 66 72 6f 6d 20 6f 75 72 20 69 6e 69 74 69 61 6c 20 70 72 65 73 73 20 6f e.moved.from.our.initial.press.o
6360 62 6a 65 63 74 2c 20 70 72 6f 63 65 73 73 20 61 6e 20 75 70 20 66 6f 72 20 74 68 61 74 20 6f 62 bject,.process.an.up.for.that.ob
6380 6a 65 63 74 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 65 76 65 6e 74 ject...................if.(event
63a0 44 61 74 61 2e 70 6f 69 6e 74 65 72 50 72 65 73 73 20 21 3d 20 65 76 65 6e 74 44 61 74 61 2e 70 Data.pointerPress.!=.eventData.p
63c0 6f 69 6e 74 65 72 44 72 61 67 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a ointerDrag)..................{..
63e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 45 78 65 63 75 74 65 45 76 65 6e 74 ....................ExecuteEvent
6400 73 2e 45 78 65 63 75 74 65 28 65 76 65 6e 74 44 61 74 61 2e 70 6f 69 6e 74 65 72 50 72 65 73 73 s.Execute(eventData.pointerPress
6420 2c 20 65 76 65 6e 74 44 61 74 61 2c 20 45 78 65 63 75 74 65 45 76 65 6e 74 73 2e 70 6f 69 6e 74 ,.eventData,.ExecuteEvents.point
6440 65 72 55 70 48 61 6e 64 6c 65 72 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 erUpHandler);...................
6460 20 20 20 20 20 65 76 65 6e 74 44 61 74 61 2e 65 6c 69 67 69 62 6c 65 46 6f 72 43 6c 69 63 6b 20 .....eventData.eligibleForClick.
6480 3d 20 66 61 6c 73 65 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 76 =.false;......................ev
64a0 65 6e 74 44 61 74 61 2e 70 6f 69 6e 74 65 72 50 72 65 73 73 20 3d 20 6e 75 6c 6c 3b 0d 0a 20 20 entData.pointerPress.=.null;....
64c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 76 65 6e 74 44 61 74 61 2e 72 61 77 50 ..................eventData.rawP
64e0 6f 69 6e 74 65 72 50 72 65 73 73 20 3d 20 6e 75 6c 6c 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 ointerPress.=.null;.............
6500 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 45 78 65 63 75 74 65 45 .....}..................ExecuteE
6520 76 65 6e 74 73 2e 45 78 65 63 75 74 65 28 65 76 65 6e 74 44 61 74 61 2e 70 6f 69 6e 74 65 72 44 vents.Execute(eventData.pointerD
6540 72 61 67 2c 20 65 76 65 6e 74 44 61 74 61 2c 20 45 78 65 63 75 74 65 45 76 65 6e 74 73 2e 64 72 rag,.eventData,.ExecuteEvents.dr
6560 61 67 48 61 6e 64 6c 65 72 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 62 75 74 agHandler);..................but
6580 74 6f 6e 2e 43 6f 70 79 50 72 65 73 73 53 74 61 74 65 46 72 6f 6d 28 65 76 65 6e 74 44 61 74 61 ton.CopyPressStateFrom(eventData
65a0 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a );..............}..........}....
65c0 20 20 20 20 20 20 20 20 70 72 69 76 61 74 65 20 73 74 61 74 69 63 20 76 6f 69 64 20 50 72 6f 63 ........private.static.void.Proc
65e0 65 73 73 50 6f 69 6e 74 65 72 53 63 72 6f 6c 6c 28 72 65 66 20 50 6f 69 6e 74 65 72 4d 6f 64 65 essPointerScroll(ref.PointerMode
6600 6c 20 70 6f 69 6e 74 65 72 2c 20 50 6f 69 6e 74 65 72 45 76 65 6e 74 44 61 74 61 20 65 76 65 6e l.pointer,.PointerEventData.even
6620 74 44 61 74 61 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 tData)..........{..............v
6640 61 72 20 73 63 72 6f 6c 6c 44 65 6c 74 61 20 3d 20 70 6f 69 6e 74 65 72 2e 73 63 72 6f 6c 6c 44 ar.scrollDelta.=.pointer.scrollD
6660 65 6c 74 61 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 21 4d 61 74 68 66 2e 41 70 elta;..............if.(!Mathf.Ap
6680 70 72 6f 78 69 6d 61 74 65 6c 79 28 73 63 72 6f 6c 6c 44 65 6c 74 61 2e 73 71 72 4d 61 67 6e 69 proximately(scrollDelta.sqrMagni
66a0 74 75 64 65 2c 20 30 2e 30 66 29 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 tude,.0.0f))..............{.....
66c0 20 20 20 20 20 20 20 20 20 20 20 20 20 65 76 65 6e 74 44 61 74 61 2e 73 63 72 6f 6c 6c 44 65 6c .............eventData.scrollDel
66e0 74 61 20 3d 20 73 63 72 6f 6c 6c 44 65 6c 74 61 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 ta.=.scrollDelta;...............
6700 20 20 20 76 61 72 20 73 63 72 6f 6c 6c 48 61 6e 64 6c 65 72 20 3d 20 45 78 65 63 75 74 65 45 76 ...var.scrollHandler.=.ExecuteEv
6720 65 6e 74 73 2e 47 65 74 45 76 65 6e 74 48 61 6e 64 6c 65 72 3c 49 53 63 72 6f 6c 6c 48 61 6e 64 ents.GetEventHandler<IScrollHand
6740 6c 65 72 3e 28 65 76 65 6e 74 44 61 74 61 2e 70 6f 69 6e 74 65 72 45 6e 74 65 72 29 3b 0d 0a 20 ler>(eventData.pointerEnter);...
6760 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 45 78 65 63 75 74 65 45 76 65 6e 74 73 2e 45 78 65 ...............ExecuteEvents.Exe
6780 63 75 74 65 48 69 65 72 61 72 63 68 79 28 73 63 72 6f 6c 6c 48 61 6e 64 6c 65 72 2c 20 65 76 65 cuteHierarchy(scrollHandler,.eve
67a0 6e 74 44 61 74 61 2c 20 45 78 65 63 75 74 65 45 76 65 6e 74 73 2e 73 63 72 6f 6c 6c 48 61 6e 64 ntData,.ExecuteEvents.scrollHand
67c0 6c 65 72 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 7d 0d ler);..............}..........}.
67e0 0a 0d 0a 20 20 20 20 20 20 20 20 69 6e 74 65 72 6e 61 6c 20 76 6f 69 64 20 50 72 6f 63 65 73 73 ...........internal.void.Process
6800 4e 61 76 69 67 61 74 69 6f 6e 28 72 65 66 20 4e 61 76 69 67 61 74 69 6f 6e 4d 6f 64 65 6c 20 6e Navigation(ref.NavigationModel.n
6820 61 76 69 67 61 74 69 6f 6e 53 74 61 74 65 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 avigationState)..........{......
6840 20 20 20 20 20 20 20 20 76 61 72 20 75 73 65 64 53 65 6c 65 63 74 69 6f 6e 43 68 61 6e 67 65 20 ........var.usedSelectionChange.
6860 3d 20 66 61 6c 73 65 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 65 76 65 6e 74 53 =.false;..............if.(eventS
6880 79 73 74 65 6d 2e 63 75 72 72 65 6e 74 53 65 6c 65 63 74 65 64 47 61 6d 65 4f 62 6a 65 63 74 20 ystem.currentSelectedGameObject.
68a0 21 3d 20 6e 75 6c 6c 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 !=.null)..............{.........
68c0 20 20 20 20 20 20 20 20 20 76 61 72 20 64 61 74 61 20 3d 20 47 65 74 42 61 73 65 45 76 65 6e 74 .........var.data.=.GetBaseEvent
68e0 44 61 74 61 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 45 78 65 63 75 74 65 Data();..................Execute
6900 45 76 65 6e 74 73 2e 45 78 65 63 75 74 65 28 65 76 65 6e 74 53 79 73 74 65 6d 2e 63 75 72 72 65 Events.Execute(eventSystem.curre
6920 6e 74 53 65 6c 65 63 74 65 64 47 61 6d 65 4f 62 6a 65 63 74 2c 20 64 61 74 61 2c 20 45 78 65 63 ntSelectedGameObject,.data,.Exec
6940 75 74 65 45 76 65 6e 74 73 2e 75 70 64 61 74 65 53 65 6c 65 63 74 65 64 48 61 6e 64 6c 65 72 29 uteEvents.updateSelectedHandler)
6960 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 75 73 65 64 53 65 6c 65 63 74 69 6f 6e ;..................usedSelection
6980 43 68 61 6e 67 65 20 3d 20 64 61 74 61 2e 75 73 65 64 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 Change.=.data.used;.............
69a0 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 44 6f 6e 27 74 20 73 65 6e 64 20 .}................//.Don't.send.
69c0 6d 6f 76 65 20 65 76 65 6e 74 73 20 69 66 20 64 69 73 61 62 6c 65 64 20 69 6e 20 74 68 65 20 45 move.events.if.disabled.in.the.E
69e0 76 65 6e 74 53 79 73 74 65 6d 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 21 65 76 ventSystem...............if.(!ev
6a00 65 6e 74 53 79 73 74 65 6d 2e 73 65 6e 64 4e 61 76 69 67 61 74 69 6f 6e 45 76 65 6e 74 73 29 0d entSystem.sendNavigationEvents).
6a20 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 3b 0d 0a 0d 0a 20 20 20 20 .................return;........
6a40 20 20 20 20 20 20 20 20 2f 2f 20 50 72 6f 63 65 73 73 20 6d 6f 76 65 2e 0d 0a 20 20 20 20 20 20 ........//.Process.move.........
6a60 20 20 20 20 20 20 76 61 72 20 6d 6f 76 65 6d 65 6e 74 20 3d 20 6e 61 76 69 67 61 74 69 6f 6e 53 ......var.movement.=.navigationS
6a80 74 61 74 65 2e 6d 6f 76 65 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 21 75 73 65 tate.move;..............if.(!use
6aa0 64 53 65 6c 65 63 74 69 6f 6e 43 68 61 6e 67 65 20 26 26 20 28 21 4d 61 74 68 66 2e 41 70 70 72 dSelectionChange.&&.(!Mathf.Appr
6ac0 6f 78 69 6d 61 74 65 6c 79 28 6d 6f 76 65 6d 65 6e 74 2e 78 2c 20 30 66 29 20 7c 7c 20 21 4d 61 oximately(movement.x,.0f).||.!Ma
6ae0 74 68 66 2e 41 70 70 72 6f 78 69 6d 61 74 65 6c 79 28 6d 6f 76 65 6d 65 6e 74 2e 79 2c 20 30 66 thf.Approximately(movement.y,.0f
6b00 29 29 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 )))..............{..............
6b20 20 20 20 20 76 61 72 20 74 69 6d 65 20 3d 20 49 6e 70 75 74 52 75 6e 74 69 6d 65 2e 73 5f 49 6e ....var.time.=.InputRuntime.s_In
6b40 73 74 61 6e 63 65 2e 75 6e 73 63 61 6c 65 64 47 61 6d 65 54 69 6d 65 3b 0d 0a 20 20 20 20 20 20 stance.unscaledGameTime;........
6b60 20 20 20 20 20 20 20 20 20 20 76 61 72 20 6d 6f 76 65 56 65 63 74 6f 72 20 3d 20 6e 61 76 69 67 ..........var.moveVector.=.navig
6b80 61 74 69 6f 6e 53 74 61 74 65 2e 6d 6f 76 65 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 ationState.move;................
6ba0 20 20 20 20 76 61 72 20 6d 6f 76 65 44 69 72 65 63 74 69 6f 6e 20 3d 20 4d 6f 76 65 44 69 72 65 ....var.moveDirection.=.MoveDire
6bc0 63 74 69 6f 6e 2e 4e 6f 6e 65 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 ction.None;..................if.
6be0 28 6d 6f 76 65 56 65 63 74 6f 72 2e 73 71 72 4d 61 67 6e 69 74 75 64 65 20 3e 20 30 29 0d 0a 20 (moveVector.sqrMagnitude.>.0)...
6c00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ...............{................
6c20 20 20 20 20 20 20 69 66 20 28 4d 61 74 68 66 2e 41 62 73 28 6d 6f 76 65 56 65 63 74 6f 72 2e 78 ......if.(Mathf.Abs(moveVector.x
6c40 29 20 3e 20 4d 61 74 68 66 2e 41 62 73 28 6d 6f 76 65 56 65 63 74 6f 72 2e 79 29 29 0d 0a 20 20 ).>.Mathf.Abs(moveVector.y))....
6c60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 6f 76 65 44 69 72 65 63 74 ......................moveDirect
6c80 69 6f 6e 20 3d 20 6d 6f 76 65 56 65 63 74 6f 72 2e 78 20 3e 20 30 20 3f 20 4d 6f 76 65 44 69 72 ion.=.moveVector.x.>.0.?.MoveDir
6ca0 65 63 74 69 6f 6e 2e 52 69 67 68 74 20 3a 20 4d 6f 76 65 44 69 72 65 63 74 69 6f 6e 2e 4c 65 66 ection.Right.:.MoveDirection.Lef
6cc0 74 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 6c 73 65 0d 0a 20 20 t;......................else....
6ce0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 6f 76 65 44 69 72 65 63 74 ......................moveDirect
6d00 69 6f 6e 20 3d 20 6d 6f 76 65 56 65 63 74 6f 72 2e 79 20 3e 20 30 20 3f 20 4d 6f 76 65 44 69 72 ion.=.moveVector.y.>.0.?.MoveDir
6d20 65 63 74 69 6f 6e 2e 55 70 20 3a 20 4d 6f 76 65 44 69 72 65 63 74 69 6f 6e 2e 44 6f 77 6e 3b 0d ection.Up.:.MoveDirection.Down;.
6d40 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 .................}..............
6d60 20 20 20 20 20 20 2f 2f 2f 2f 52 45 56 49 45 57 3a 20 69 73 20 72 65 73 65 74 74 69 6e 67 20 6d ......////REVIEW:.is.resetting.m
6d80 6f 76 65 20 72 65 70 65 61 74 73 20 77 68 65 6e 20 64 69 72 65 63 74 69 6f 6e 20 63 68 61 6e 67 ove.repeats.when.direction.chang
6da0 65 73 20 72 65 61 6c 6c 79 20 75 73 65 66 75 6c 20 62 65 68 61 76 69 6f 72 3f 0d 0a 20 20 20 20 es.really.useful.behavior?......
6dc0 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 6d 6f 76 65 44 69 72 65 63 74 69 6f 6e 20 21 3d ............if.(moveDirection.!=
6de0 20 6d 5f 4e 61 76 69 67 61 74 69 6f 6e 53 74 61 74 65 2e 6c 61 73 74 4d 6f 76 65 44 69 72 65 63 .m_NavigationState.lastMoveDirec
6e00 74 69 6f 6e 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 4e 61 76 tion)......................m_Nav
6e20 69 67 61 74 69 6f 6e 53 74 61 74 65 2e 63 6f 6e 73 65 63 75 74 69 76 65 4d 6f 76 65 43 6f 75 6e igationState.consecutiveMoveCoun
6e40 74 20 3d 20 30 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 6d 6f t.=.0;....................if.(mo
6e60 76 65 44 69 72 65 63 74 69 6f 6e 20 21 3d 20 4d 6f 76 65 44 69 72 65 63 74 69 6f 6e 2e 4e 6f 6e veDirection.!=.MoveDirection.Non
6e80 65 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 e)..................{...........
6ea0 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 61 6c 6c 6f 77 20 3d 20 74 72 75 65 3b 0d 0a 20 20 ...........var.allow.=.true;....
6ec0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 6d 5f 4e 61 76 69 67 61 74 69 ..................if.(m_Navigati
6ee0 6f 6e 53 74 61 74 65 2e 63 6f 6e 73 65 63 75 74 69 76 65 4d 6f 76 65 43 6f 75 6e 74 20 21 3d 20 onState.consecutiveMoveCount.!=.
6f00 30 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 0)......................{.......
6f20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 6d 5f 4e 61 76 69 67 61 74 ...................if.(m_Navigat
6f40 69 6f 6e 53 74 61 74 65 2e 63 6f 6e 73 65 63 75 74 69 76 65 4d 6f 76 65 43 6f 75 6e 74 20 3e 20 ionState.consecutiveMoveCount.>.
6f60 31 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 1)..............................
6f80 61 6c 6c 6f 77 20 3d 20 74 69 6d 65 20 3e 20 6d 5f 4e 61 76 69 67 61 74 69 6f 6e 53 74 61 74 65 allow.=.time.>.m_NavigationState
6fa0 2e 6c 61 73 74 4d 6f 76 65 54 69 6d 65 20 2b 20 6d 6f 76 65 52 65 70 65 61 74 52 61 74 65 3b 0d .lastMoveTime.+.moveRepeatRate;.
6fc0 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 6c 73 65 0d 0a 20 .........................else...
6fe0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 61 6c 6c 6f 77 ...........................allow
7000 20 3d 20 74 69 6d 65 20 3e 20 6d 5f 4e 61 76 69 67 61 74 69 6f 6e 53 74 61 74 65 2e 6c 61 73 74 .=.time.>.m_NavigationState.last
7020 4d 6f 76 65 54 69 6d 65 20 2b 20 6d 6f 76 65 52 65 70 65 61 74 44 65 6c 61 79 3b 0d 0a 20 20 20 MoveTime.+.moveRepeatDelay;.....
7040 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 .................}..............
7060 20 20 20 20 20 20 20 20 20 20 69 66 20 28 61 6c 6c 6f 77 29 0d 0a 20 20 20 20 20 20 20 20 20 20 ..........if.(allow)............
7080 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..........{.....................
70a0 20 20 20 20 20 76 61 72 20 65 76 65 6e 74 44 61 74 61 20 3d 20 6d 5f 4e 61 76 69 67 61 74 69 6f .....var.eventData.=.m_Navigatio
70c0 6e 53 74 61 74 65 2e 65 76 65 6e 74 44 61 74 61 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 nState.eventData;...............
70e0 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 65 76 65 6e 74 44 61 74 61 20 3d 3d 20 6e 75 6c 6c ...........if.(eventData.==.null
7100 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 )..........................{....
7120 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 76 65 6e 74 44 ..........................eventD
7140 61 74 61 20 3d 20 6e 65 77 20 41 78 69 73 45 76 65 6e 74 44 61 74 61 28 65 76 65 6e 74 53 79 73 ata.=.new.AxisEventData(eventSys
7160 74 65 6d 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 tem);...........................
7180 20 20 20 6d 5f 4e 61 76 69 67 61 74 69 6f 6e 53 74 61 74 65 2e 65 76 65 6e 74 44 61 74 61 20 3d ...m_NavigationState.eventData.=
71a0 20 65 76 65 6e 74 44 61 74 61 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .eventData;.....................
71c0 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .....}..........................
71e0 65 76 65 6e 74 44 61 74 61 2e 52 65 73 65 74 28 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 eventData.Reset();..............
7200 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 76 65 6e 74 44 61 74 61 2e 6d 6f 76 65 56 65 63 74 ..............eventData.moveVect
7220 6f 72 20 3d 20 6d 6f 76 65 56 65 63 74 6f 72 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 or.=.moveVector;................
7240 20 20 20 20 20 20 20 20 20 20 65 76 65 6e 74 44 61 74 61 2e 6d 6f 76 65 44 69 72 20 3d 20 6d 6f ..........eventData.moveDir.=.mo
7260 76 65 44 69 72 65 63 74 69 6f 6e 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 veDirection;....................
7280 20 20 20 20 20 20 20 20 45 78 65 63 75 74 65 45 76 65 6e 74 73 2e 45 78 65 63 75 74 65 28 65 76 ........ExecuteEvents.Execute(ev
72a0 65 6e 74 53 79 73 74 65 6d 2e 63 75 72 72 65 6e 74 53 65 6c 65 63 74 65 64 47 61 6d 65 4f 62 6a entSystem.currentSelectedGameObj
72c0 65 63 74 2c 20 65 76 65 6e 74 44 61 74 61 2c 20 45 78 65 63 75 74 65 45 76 65 6e 74 73 2e 6d 6f ect,.eventData,.ExecuteEvents.mo
72e0 76 65 48 61 6e 64 6c 65 72 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 veHandler);.....................
7300 20 20 20 20 20 75 73 65 64 53 65 6c 65 63 74 69 6f 6e 43 68 61 6e 67 65 20 3d 20 65 76 65 6e 74 .....usedSelectionChange.=.event
7320 44 61 74 61 2e 75 73 65 64 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 Data.used;......................
7340 20 20 20 20 20 20 6d 5f 4e 61 76 69 67 61 74 69 6f 6e 53 74 61 74 65 2e 63 6f 6e 73 65 63 75 74 ......m_NavigationState.consecut
7360 69 76 65 4d 6f 76 65 43 6f 75 6e 74 20 3d 20 6d 5f 4e 61 76 69 67 61 74 69 6f 6e 53 74 61 74 65 iveMoveCount.=.m_NavigationState
7380 2e 63 6f 6e 73 65 63 75 74 69 76 65 4d 6f 76 65 43 6f 75 6e 74 20 2b 20 31 3b 0d 0a 20 20 20 20 .consecutiveMoveCount.+.1;......
73a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 4e 61 76 69 67 61 74 69 6f 6e ....................m_Navigation
73c0 53 74 61 74 65 2e 6c 61 73 74 4d 6f 76 65 54 69 6d 65 20 3d 20 74 69 6d 65 3b 0d 0a 20 20 20 20 State.lastMoveTime.=.time;......
73e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 4e 61 76 69 67 61 74 69 6f 6e ....................m_Navigation
7400 53 74 61 74 65 2e 6c 61 73 74 4d 6f 76 65 44 69 72 65 63 74 69 6f 6e 20 3d 20 6d 6f 76 65 44 69 State.lastMoveDirection.=.moveDi
7420 72 65 63 74 69 6f 6e 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d rection;......................}.
7440 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 .................}..............
7460 20 20 20 20 65 6c 73 65 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f ....else......................m_
7480 4e 61 76 69 67 61 74 69 6f 6e 53 74 61 74 65 2e 63 6f 6e 73 65 63 75 74 69 76 65 4d 6f 76 65 43 NavigationState.consecutiveMoveC
74a0 6f 75 6e 74 20 3d 20 30 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 ount.=.0;..............}........
74c0 20 20 20 20 20 20 65 6c 73 65 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 ......else..............{.......
74e0 20 20 20 20 20 20 20 20 20 20 20 6d 5f 4e 61 76 69 67 61 74 69 6f 6e 53 74 61 74 65 2e 63 6f 6e ...........m_NavigationState.con
7500 73 65 63 75 74 69 76 65 4d 6f 76 65 43 6f 75 6e 74 20 3d 20 30 3b 0d 0a 20 20 20 20 20 20 20 20 secutiveMoveCount.=.0;..........
7520 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 50 72 6f 63 65 73 73 20 ....}................//.Process.
7540 73 75 62 6d 69 74 20 61 6e 64 20 63 61 6e 63 65 6c 20 65 76 65 6e 74 73 2e 0d 0a 20 20 20 20 20 submit.and.cancel.events........
7560 20 20 20 20 20 20 20 69 66 20 28 21 75 73 65 64 53 65 6c 65 63 74 69 6f 6e 43 68 61 6e 67 65 20 .......if.(!usedSelectionChange.
7580 26 26 20 65 76 65 6e 74 53 79 73 74 65 6d 2e 63 75 72 72 65 6e 74 53 65 6c 65 63 74 65 64 47 61 &&.eventSystem.currentSelectedGa
75a0 6d 65 4f 62 6a 65 63 74 20 21 3d 20 6e 75 6c 6c 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b meObject.!=.null)..............{
75c0 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 64 61 74 61 20 3d 20 47 65 74 ..................var.data.=.Get
75e0 42 61 73 65 45 76 65 6e 74 44 61 74 61 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 BaseEventData();................
7600 20 20 69 66 20 28 6d 5f 4e 61 76 69 67 61 74 69 6f 6e 53 74 61 74 65 2e 63 61 6e 63 65 6c 42 75 ..if.(m_NavigationState.cancelBu
7620 74 74 6f 6e 2e 77 61 73 50 72 65 73 73 65 64 54 68 69 73 46 72 61 6d 65 29 0d 0a 20 20 20 20 20 tton.wasPressedThisFrame).......
7640 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 45 78 65 63 75 74 65 45 76 65 6e 74 73 2e 45 78 65 ...............ExecuteEvents.Exe
7660 63 75 74 65 28 65 76 65 6e 74 53 79 73 74 65 6d 2e 63 75 72 72 65 6e 74 53 65 6c 65 63 74 65 64 cute(eventSystem.currentSelected
7680 47 61 6d 65 4f 62 6a 65 63 74 2c 20 64 61 74 61 2c 20 45 78 65 63 75 74 65 45 76 65 6e 74 73 2e GameObject,.data,.ExecuteEvents.
76a0 63 61 6e 63 65 6c 48 61 6e 64 6c 65 72 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 cancelHandler);.................
76c0 20 69 66 20 28 21 64 61 74 61 2e 75 73 65 64 20 26 26 20 6d 5f 4e 61 76 69 67 61 74 69 6f 6e 53 .if.(!data.used.&&.m_NavigationS
76e0 74 61 74 65 2e 73 75 62 6d 69 74 42 75 74 74 6f 6e 2e 77 61 73 50 72 65 73 73 65 64 54 68 69 73 tate.submitButton.wasPressedThis
7700 46 72 61 6d 65 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 45 78 65 63 Frame)......................Exec
7720 75 74 65 45 76 65 6e 74 73 2e 45 78 65 63 75 74 65 28 65 76 65 6e 74 53 79 73 74 65 6d 2e 63 75 uteEvents.Execute(eventSystem.cu
7740 72 72 65 6e 74 53 65 6c 65 63 74 65 64 47 61 6d 65 4f 62 6a 65 63 74 2c 20 64 61 74 61 2c 20 45 rrentSelectedGameObject,.data,.E
7760 78 65 63 75 74 65 45 76 65 6e 74 73 2e 73 75 62 6d 69 74 48 61 6e 64 6c 65 72 29 3b 0d 0a 20 20 xecuteEvents.submitHandler);....
7780 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 4e 61 76 ..........}................m_Nav
77a0 69 67 61 74 69 6f 6e 53 74 61 74 65 2e 4f 6e 46 72 61 6d 65 46 69 6e 69 73 68 65 64 28 29 3b 0d igationState.OnFrameFinished();.
77c0 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 5b 46 6f 72 6d 65 72 6c 79 53 .........}............[FormerlyS
77e0 65 72 69 61 6c 69 7a 65 64 41 73 28 22 6d 5f 52 65 70 65 61 74 44 65 6c 61 79 22 29 5d 0d 0a 20 erializedAs("m_RepeatDelay")]...
7800 20 20 20 20 20 20 20 5b 54 6f 6f 6c 74 69 70 28 22 54 68 65 20 49 6e 69 74 69 61 6c 20 64 65 6c .......[Tooltip("The.Initial.del
7820 61 79 20 28 69 6e 20 73 65 63 6f 6e 64 73 29 20 62 65 74 77 65 65 6e 20 61 6e 20 69 6e 69 74 69 ay.(in.seconds).between.an.initi
7840 61 6c 20 6d 6f 76 65 20 61 63 74 69 6f 6e 20 61 6e 64 20 61 20 72 65 70 65 61 74 65 64 20 6d 6f al.move.action.and.a.repeated.mo
7860 76 65 20 61 63 74 69 6f 6e 2e 22 29 5d 0d 0a 20 20 20 20 20 20 20 20 5b 53 65 72 69 61 6c 69 7a ve.action.")]..........[Serializ
7880 65 46 69 65 6c 64 5d 0d 0a 20 20 20 20 20 20 20 20 70 72 69 76 61 74 65 20 66 6c 6f 61 74 20 6d eField]..........private.float.m
78a0 5f 4d 6f 76 65 52 65 70 65 61 74 44 65 6c 61 79 20 3d 20 30 2e 35 66 3b 0d 0a 0d 0a 20 20 20 20 _MoveRepeatDelay.=.0.5f;........
78c0 20 20 20 20 5b 46 6f 72 6d 65 72 6c 79 53 65 72 69 61 6c 69 7a 65 64 41 73 28 22 6d 5f 52 65 70 ....[FormerlySerializedAs("m_Rep
78e0 65 61 74 52 61 74 65 22 29 5d 0d 0a 20 20 20 20 20 20 20 20 5b 54 6f 6f 6c 74 69 70 28 22 54 68 eatRate")]..........[Tooltip("Th
7900 65 20 73 70 65 65 64 20 28 69 6e 20 73 65 63 6f 6e 64 73 29 20 74 68 61 74 20 74 68 65 20 6d 6f e.speed.(in.seconds).that.the.mo
7920 76 65 20 61 63 74 69 6f 6e 20 72 65 70 65 61 74 73 20 69 74 73 65 6c 66 20 6f 6e 63 65 20 72 65 ve.action.repeats.itself.once.re
7940 70 65 61 74 69 6e 67 20 28 6d 61 78 20 31 20 70 65 72 20 66 72 61 6d 65 29 2e 22 29 5d 0d 0a 20 peating.(max.1.per.frame).")]...
7960 20 20 20 20 20 20 20 5b 53 65 72 69 61 6c 69 7a 65 46 69 65 6c 64 5d 0d 0a 20 20 20 20 20 20 20 .......[SerializeField].........
7980 20 70 72 69 76 61 74 65 20 66 6c 6f 61 74 20 6d 5f 4d 6f 76 65 52 65 70 65 61 74 52 61 74 65 20 .private.float.m_MoveRepeatRate.
79a0 3d 20 30 2e 31 66 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 5b 54 6f 6f 6c 74 69 70 28 22 53 63 61 =.0.1f;............[Tooltip("Sca
79c0 6c 65 73 20 74 68 65 20 45 76 65 6e 74 73 79 73 74 65 6d 2e 44 72 61 67 54 68 72 65 73 68 6f 6c les.the.Eventsystem.DragThreshol
79e0 64 2c 20 66 6f 72 20 74 72 61 63 6b 65 64 20 64 65 76 69 63 65 73 2c 20 74 6f 20 6d 61 6b 65 20 d,.for.tracked.devices,.to.make.
7a00 73 65 6c 65 63 74 69 6f 6e 20 65 61 73 69 65 72 2e 22 29 5d 0d 0a 20 20 20 20 20 20 20 20 2f 2f selection.easier.")]..........//
7a20 20 48 69 64 65 20 74 68 69 73 20 77 68 69 6c 65 20 77 65 20 73 74 69 6c 6c 20 68 61 76 65 20 74 .Hide.this.while.we.still.have.t
7a40 6f 20 66 69 67 75 72 65 20 6f 75 74 20 77 68 61 74 20 74 6f 20 64 6f 20 77 69 74 68 20 74 68 69 o.figure.out.what.to.do.with.thi
7a60 73 2e 0d 0a 20 20 20 20 20 20 20 20 70 72 69 76 61 74 65 20 66 6c 6f 61 74 20 6d 5f 54 72 61 63 s...........private.float.m_Trac
7a80 6b 65 64 44 65 76 69 63 65 44 72 61 67 54 68 72 65 73 68 6f 6c 64 4d 75 6c 74 69 70 6c 69 65 72 kedDeviceDragThresholdMultiplier
7aa0 20 3d 20 32 2e 30 66 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 73 75 6d 6d 61 72 79 .=.2.0f;............///.<summary
7ac0 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 44 65 6c 61 79 20 69 6e 20 73 65 63 6f 6e 64 73 20 >..........///.Delay.in.seconds.
7ae0 62 65 74 77 65 65 6e 20 61 6e 20 69 6e 69 74 69 61 6c 20 6d 6f 76 65 20 61 63 74 69 6f 6e 20 61 between.an.initial.move.action.a
7b00 6e 64 20 61 20 72 65 70 65 61 74 65 64 20 6d 6f 76 65 20 61 63 74 69 6f 6e 20 77 68 69 6c 65 20 nd.a.repeated.move.action.while.
7b20 3c 73 65 65 20 63 72 65 66 3d 22 6d 6f 76 65 22 2f 3e 20 69 73 20 61 63 74 75 61 74 65 64 2e 0d <see.cref="move"/>.is.actuated..
7b40 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 2f 73 75 6d 6d 61 72 79 3e 0d 0a 20 20 20 20 20 20 20 .........///.</summary>.........
7b60 20 2f 2f 2f 20 3c 72 65 6d 61 72 6b 73 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 57 68 69 6c .///.<remarks>..........///.Whil
7b80 65 20 3c 73 65 65 20 63 72 65 66 3d 22 6d 6f 76 65 22 2f 3e 20 69 73 20 62 65 69 6e 67 20 68 65 e.<see.cref="move"/>.is.being.he
7ba0 6c 64 20 64 6f 77 6e 2c 20 74 68 65 20 69 6e 70 75 74 20 6d 6f 64 75 6c 65 20 77 69 6c 6c 20 66 ld.down,.the.input.module.will.f
7bc0 69 72 73 74 20 77 61 69 74 20 66 6f 72 20 3c 73 65 65 20 63 72 65 66 3d 22 6d 6f 76 65 52 65 70 irst.wait.for.<see.cref="moveRep
7be0 65 61 74 44 65 6c 61 79 22 2f 3e 20 73 65 63 6f 6e 64 73 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f eatDelay"/>.seconds..........///
7c00 20 61 66 74 65 72 20 74 68 65 20 66 69 72 73 74 20 61 63 74 75 61 74 69 6f 6e 20 6f 66 20 3c 73 .after.the.first.actuation.of.<s
7c20 65 65 20 63 72 65 66 3d 22 6d 6f 76 65 22 2f 3e 20 61 6e 64 20 74 68 65 6e 20 74 72 69 67 67 65 ee.cref="move"/>.and.then.trigge
7c40 72 20 61 20 6d 6f 76 65 20 65 76 65 6e 74 20 65 76 65 72 79 20 3c 73 65 65 20 63 72 65 66 3d 22 r.a.move.event.every.<see.cref="
7c60 6d 6f 76 65 52 65 70 65 61 74 52 61 74 65 22 2f 3e 20 73 65 63 6f 6e 64 73 2e 0d 0a 20 20 20 20 moveRepeatRate"/>.seconds.......
7c80 20 20 20 20 2f 2f 2f 20 3c 2f 72 65 6d 61 72 6b 73 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 ....///.</remarks>..........///.
7ca0 3c 73 65 65 61 6c 73 6f 20 63 72 65 66 3d 22 6d 6f 76 65 52 65 70 65 61 74 52 61 74 65 22 2f 3e <seealso.cref="moveRepeatRate"/>
7cc0 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 73 65 65 61 6c 73 6f 20 63 72 65 66 3d 22 41 78 69 ..........///.<seealso.cref="Axi
7ce0 73 45 76 65 6e 74 44 61 74 61 22 2f 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 73 65 65 20 sEventData"/>..........///.<see.
7d00 63 72 65 66 3d 22 6d 6f 76 65 22 2f 3e 0d 0a 20 20 20 20 20 20 20 20 70 75 62 6c 69 63 20 66 6c cref="move"/>..........public.fl
7d20 6f 61 74 20 6d 6f 76 65 52 65 70 65 61 74 44 65 6c 61 79 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a oat.moveRepeatDelay..........{..
7d40 20 20 20 20 20 20 20 20 20 20 20 20 67 65 74 20 3d 3e 20 6d 5f 4d 6f 76 65 52 65 70 65 61 74 44 ............get.=>.m_MoveRepeatD
7d60 65 6c 61 79 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 65 74 20 3d 3e 20 6d 5f 4d 6f 76 65 elay;..............set.=>.m_Move
7d80 52 65 70 65 61 74 44 65 6c 61 79 20 3d 20 76 61 6c 75 65 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d RepeatDelay.=.value;..........}.
7da0 0a 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 73 75 6d 6d 61 72 79 3e 0d 0a 20 20 20 20 20 20 ...........///.<summary>........
7dc0 20 20 2f 2f 2f 20 44 65 6c 61 79 20 69 6e 20 73 65 63 6f 6e 64 73 20 62 65 74 77 65 65 6e 20 72 ..///.Delay.in.seconds.between.r
7de0 65 70 65 61 74 65 64 20 6d 6f 76 65 20 61 63 74 69 6f 6e 73 20 77 68 69 6c 65 20 3c 73 65 65 20 epeated.move.actions.while.<see.
7e00 63 72 65 66 3d 22 6d 6f 76 65 22 2f 3e 20 69 73 20 61 63 74 75 61 74 65 64 2e 0d 0a 20 20 20 20 cref="move"/>.is.actuated.......
7e20 20 20 20 20 2f 2f 2f 20 3c 2f 73 75 6d 6d 61 72 79 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 ....///.</summary>..........///.
7e40 3c 72 65 6d 61 72 6b 73 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 57 68 69 6c 65 20 3c 73 65 <remarks>..........///.While.<se
7e60 65 20 63 72 65 66 3d 22 6d 6f 76 65 22 2f 3e 20 69 73 20 62 65 69 6e 67 20 68 65 6c 64 20 64 6f e.cref="move"/>.is.being.held.do
7e80 77 6e 2c 20 74 68 65 20 69 6e 70 75 74 20 6d 6f 64 75 6c 65 20 77 69 6c 6c 20 66 69 72 73 74 20 wn,.the.input.module.will.first.
7ea0 77 61 69 74 20 66 6f 72 20 3c 73 65 65 20 63 72 65 66 3d 22 6d 6f 76 65 52 65 70 65 61 74 44 65 wait.for.<see.cref="moveRepeatDe
7ec0 6c 61 79 22 2f 3e 20 73 65 63 6f 6e 64 73 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 61 66 74 65 lay"/>.seconds..........///.afte
7ee0 72 20 74 68 65 20 66 69 72 73 74 20 61 63 74 75 61 74 69 6f 6e 20 6f 66 20 3c 73 65 65 20 63 72 r.the.first.actuation.of.<see.cr
7f00 65 66 3d 22 6d 6f 76 65 22 2f 3e 20 61 6e 64 20 74 68 65 6e 20 74 72 69 67 67 65 72 20 61 20 6d ef="move"/>.and.then.trigger.a.m
7f20 6f 76 65 20 65 76 65 6e 74 20 65 76 65 72 79 20 3c 73 65 65 20 63 72 65 66 3d 22 6d 6f 76 65 52 ove.event.every.<see.cref="moveR
7f40 65 70 65 61 74 52 61 74 65 22 2f 3e 20 73 65 63 6f 6e 64 73 2e 0d 0a 20 20 20 20 20 20 20 20 2f epeatRate"/>.seconds.........../
7f60 2f 2f 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 4e 6f 74 65 20 74 68 61 74 20 61 20 6d 61 78 69 //..........///.Note.that.a.maxi
7f80 6d 75 6d 20 6f 66 20 6f 6e 65 20 3c 73 65 65 20 63 72 65 66 3d 22 41 78 69 73 45 76 65 6e 74 44 mum.of.one.<see.cref="AxisEventD
7fa0 61 74 61 22 2f 3e 20 77 69 6c 6c 20 62 65 20 73 65 6e 74 20 70 65 72 20 66 72 61 6d 65 2e 20 54 ata"/>.will.be.sent.per.frame..T
7fc0 68 69 73 20 6d 65 61 6e 73 20 74 68 61 74 20 65 76 65 6e 20 69 66 20 6d 75 6c 74 69 70 6c 65 20 his.means.that.even.if.multiple.
7fe0 74 69 6d 65 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 69 6e 63 72 65 6d 65 6e 74 73 20 6f 66 20 time..........///.increments.of.
8000 74 68 65 20 72 65 70 65 61 74 20 64 65 6c 61 79 20 68 61 76 65 20 70 61 73 73 65 64 20 73 69 6e the.repeat.delay.have.passed.sin
8020 63 65 20 74 68 65 20 6c 61 73 74 20 75 70 64 61 74 65 2c 20 6f 6e 6c 79 20 6f 6e 65 20 6d 6f 76 ce.the.last.update,.only.one.mov
8040 65 20 72 65 70 65 61 74 20 65 76 65 6e 74 20 77 69 6c 6c 20 62 65 20 67 65 6e 65 72 61 74 65 64 e.repeat.event.will.be.generated
8060 2e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 2f 72 65 6d 61 72 6b 73 3e 0d 0a 20 20 20 20 20 ...........///.</remarks>.......
8080 20 20 20 2f 2f 2f 20 3c 73 65 65 61 6c 73 6f 20 63 72 65 66 3d 22 6d 6f 76 65 52 65 70 65 61 74 ...///.<seealso.cref="moveRepeat
80a0 44 65 6c 61 79 22 2f 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 73 65 65 61 6c 73 6f 20 63 Delay"/>..........///.<seealso.c
80c0 72 65 66 3d 22 41 78 69 73 45 76 65 6e 74 44 61 74 61 22 2f 3e 0d 0a 20 20 20 20 20 20 20 20 2f ref="AxisEventData"/>........../
80e0 2f 2f 20 3c 73 65 65 20 63 72 65 66 3d 22 6d 6f 76 65 22 2f 3e 0d 0a 20 20 20 20 20 20 20 20 70 //.<see.cref="move"/>..........p
8100 75 62 6c 69 63 20 66 6c 6f 61 74 20 6d 6f 76 65 52 65 70 65 61 74 52 61 74 65 0d 0a 20 20 20 20 ublic.float.moveRepeatRate......
8120 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 67 65 74 20 3d 3e 20 6d 5f 4d 6f 76 65 ....{..............get.=>.m_Move
8140 52 65 70 65 61 74 52 61 74 65 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 65 74 20 3d 3e 20 RepeatRate;..............set.=>.
8160 6d 5f 4d 6f 76 65 52 65 70 65 61 74 52 61 74 65 20 3d 20 76 61 6c 75 65 3b 0d 0a 20 20 20 20 20 m_MoveRepeatRate.=.value;.......
8180 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 5b 4f 62 73 6f 6c 65 74 65 28 22 27 72 65 70 65 ...}............[Obsolete("'repe
81a0 61 74 52 61 74 65 27 20 68 61 73 20 62 65 65 6e 20 6f 62 73 6f 6c 65 74 65 64 3b 20 75 73 65 20 atRate'.has.been.obsoleted;.use.
81c0 27 6d 6f 76 65 52 65 70 65 61 74 52 61 74 65 27 20 69 6e 73 74 65 61 64 2e 20 28 55 6e 69 74 79 'moveRepeatRate'.instead..(Unity
81e0 55 70 67 72 61 64 61 62 6c 65 29 20 2d 3e 20 6d 6f 76 65 52 65 70 65 61 74 52 61 74 65 22 2c 20 Upgradable).->.moveRepeatRate",.
8200 66 61 6c 73 65 29 5d 0d 0a 20 20 20 20 20 20 20 20 70 75 62 6c 69 63 20 66 6c 6f 61 74 20 72 65 false)]..........public.float.re
8220 70 65 61 74 52 61 74 65 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 peatRate..........{.............
8240 20 67 65 74 20 3d 3e 20 6d 6f 76 65 52 65 70 65 61 74 52 61 74 65 3b 0d 0a 20 20 20 20 20 20 20 .get.=>.moveRepeatRate;.........
8260 20 20 20 20 20 73 65 74 20 3d 3e 20 6d 6f 76 65 52 65 70 65 61 74 52 61 74 65 20 3d 20 76 61 6c .....set.=>.moveRepeatRate.=.val
8280 75 65 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 5b 4f 62 73 6f 6c ue;..........}............[Obsol
82a0 65 74 65 28 22 27 72 65 70 65 61 74 44 65 6c 61 79 27 20 68 61 73 20 62 65 65 6e 20 6f 62 73 6f ete("'repeatDelay'.has.been.obso
82c0 6c 65 74 65 64 3b 20 75 73 65 20 27 6d 6f 76 65 52 65 70 65 61 74 44 65 6c 61 79 27 20 69 6e 73 leted;.use.'moveRepeatDelay'.ins
82e0 74 65 61 64 2e 20 28 55 6e 69 74 79 55 70 67 72 61 64 61 62 6c 65 29 20 2d 3e 20 6d 6f 76 65 52 tead..(UnityUpgradable).->.moveR
8300 65 70 65 61 74 44 65 6c 61 79 22 2c 20 66 61 6c 73 65 29 5d 0d 0a 20 20 20 20 20 20 20 20 70 75 epeatDelay",.false)]..........pu
8320 62 6c 69 63 20 66 6c 6f 61 74 20 72 65 70 65 61 74 44 65 6c 61 79 0d 0a 20 20 20 20 20 20 20 20 blic.float.repeatDelay..........
8340 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 67 65 74 20 3d 3e 20 6d 6f 76 65 52 65 70 65 61 74 {..............get.=>.moveRepeat
8360 44 65 6c 61 79 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 65 74 20 3d 3e 20 6d 6f 76 65 52 Delay;..............set.=>.moveR
8380 65 70 65 61 74 44 65 6c 61 79 20 3d 20 76 61 6c 75 65 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a epeatDelay.=.value;..........}..
83a0 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 73 75 6d 6d 61 72 79 3e 0d 0a 20 20 20 20 20 20 20 ..........///.<summary>.........
83c0 20 2f 2f 2f 20 53 63 61 6c 65 73 20 74 68 65 20 64 72 61 67 20 74 68 72 65 73 68 6f 6c 64 20 6f .///.Scales.the.drag.threshold.o
83e0 66 20 3c 63 3e 45 76 65 6e 74 53 79 73 74 65 6d 3c 2f 63 3e 20 66 6f 72 20 74 72 61 63 6b 65 64 f.<c>EventSystem</c>.for.tracked
8400 20 64 65 76 69 63 65 73 20 74 6f 20 6d 61 6b 65 20 73 65 6c 65 63 74 69 6f 6e 20 65 61 73 69 65 .devices.to.make.selection.easie
8420 72 2e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 2f 73 75 6d 6d 61 72 79 3e 0d 0a 20 20 20 20 r...........///.</summary>......
8440 20 20 20 20 70 75 62 6c 69 63 20 66 6c 6f 61 74 20 74 72 61 63 6b 65 64 44 65 76 69 63 65 44 72 ....public.float.trackedDeviceDr
8460 61 67 54 68 72 65 73 68 6f 6c 64 4d 75 6c 74 69 70 6c 69 65 72 0d 0a 20 20 20 20 20 20 20 20 7b agThresholdMultiplier..........{
8480 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 67 65 74 20 3d 3e 20 6d 5f 54 72 61 63 6b 65 64 44 65 ..............get.=>.m_TrackedDe
84a0 76 69 63 65 44 72 61 67 54 68 72 65 73 68 6f 6c 64 4d 75 6c 74 69 70 6c 69 65 72 3b 0d 0a 20 20 viceDragThresholdMultiplier;....
84c0 20 20 20 20 20 20 20 20 20 20 73 65 74 20 3d 3e 20 6d 5f 54 72 61 63 6b 65 64 44 65 76 69 63 65 ..........set.=>.m_TrackedDevice
84e0 44 72 61 67 54 68 72 65 73 68 6f 6c 64 4d 75 6c 74 69 70 6c 69 65 72 20 3d 20 76 61 6c 75 65 3b DragThresholdMultiplier.=.value;
8500 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 70 72 69 76 61 74 65 20 76 ..........}............private.v
8520 6f 69 64 20 53 77 61 70 41 63 74 69 6f 6e 28 72 65 66 20 49 6e 70 75 74 41 63 74 69 6f 6e 52 65 oid.SwapAction(ref.InputActionRe
8540 66 65 72 65 6e 63 65 20 70 72 6f 70 65 72 74 79 2c 20 49 6e 70 75 74 41 63 74 69 6f 6e 52 65 66 ference.property,.InputActionRef
8560 65 72 65 6e 63 65 20 6e 65 77 56 61 6c 75 65 2c 20 62 6f 6f 6c 20 61 63 74 69 6f 6e 73 48 6f 6f erence.newValue,.bool.actionsHoo
8580 6b 65 64 2c 20 41 63 74 69 6f 6e 3c 49 6e 70 75 74 41 63 74 69 6f 6e 2e 43 61 6c 6c 62 61 63 6b ked,.Action<InputAction.Callback
85a0 43 6f 6e 74 65 78 74 3e 20 61 63 74 69 6f 6e 43 61 6c 6c 62 61 63 6b 29 0d 0a 20 20 20 20 20 20 Context>.actionCallback)........
85c0 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 70 72 6f 70 65 72 74 79 20 3d 3d ..{..............if.(property.==
85e0 20 6e 65 77 56 61 6c 75 65 20 7c 7c 20 28 70 72 6f 70 65 72 74 79 20 21 3d 20 6e 75 6c 6c 20 26 .newValue.||.(property.!=.null.&
8600 26 20 6e 65 77 56 61 6c 75 65 20 21 3d 20 6e 75 6c 6c 20 26 26 20 70 72 6f 70 65 72 74 79 2e 61 &.newValue.!=.null.&&.property.a
8620 63 74 69 6f 6e 20 3d 3d 20 6e 65 77 56 61 6c 75 65 2e 61 63 74 69 6f 6e 29 29 0d 0a 20 20 20 20 ction.==.newValue.action))......
8640 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 ............return;.............
8660 20 20 20 69 66 20 28 70 72 6f 70 65 72 74 79 20 21 3d 20 6e 75 6c 6c 20 26 26 20 61 63 74 69 6f ...if.(property.!=.null.&&.actio
8680 6e 73 48 6f 6f 6b 65 64 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 nsHooked)..............{........
86a0 20 20 20 20 20 20 20 20 20 20 70 72 6f 70 65 72 74 79 2e 61 63 74 69 6f 6e 2e 70 65 72 66 6f 72 ..........property.action.perfor
86c0 6d 65 64 20 2d 3d 20 61 63 74 69 6f 6e 43 61 6c 6c 62 61 63 6b 3b 0d 0a 20 20 20 20 20 20 20 20 med.-=.actionCallback;..........
86e0 20 20 20 20 20 20 20 20 70 72 6f 70 65 72 74 79 2e 61 63 74 69 6f 6e 2e 63 61 6e 63 65 6c 65 64 ........property.action.canceled
8700 20 2d 3d 20 61 63 74 69 6f 6e 43 61 6c 6c 62 61 63 6b 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 .-=.actionCallback;.............
8720 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 70 72 6f 70 65 72 74 79 20 3d 20 6e 65 77 .}................property.=.new
8740 56 61 6c 75 65 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 23 69 66 20 44 45 42 55 47 0d Value;................#if.DEBUG.
8760 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 6e 65 77 56 61 6c 75 65 20 21 3d 20 6e 75 6c .............if.(newValue.!=.nul
8780 6c 20 26 26 20 6e 65 77 56 61 6c 75 65 2e 61 63 74 69 6f 6e 20 21 3d 20 6e 75 6c 6c 20 26 26 20 l.&&.newValue.action.!=.null.&&.
87a0 6e 65 77 56 61 6c 75 65 2e 61 63 74 69 6f 6e 2e 74 79 70 65 20 21 3d 20 49 6e 70 75 74 41 63 74 newValue.action.type.!=.InputAct
87c0 69 6f 6e 54 79 70 65 2e 50 61 73 73 54 68 72 6f 75 67 68 29 0d 0a 20 20 20 20 20 20 20 20 20 20 ionType.PassThrough)............
87e0 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 44 65 62 75 67 2e 4c 6f 67 57 61 ..{..................Debug.LogWa
8800 72 6e 69 6e 67 28 22 41 63 74 69 6f 6e 73 20 75 73 65 64 20 77 69 74 68 20 74 68 65 20 55 49 20 rning("Actions.used.with.the.UI.
8820 69 6e 70 75 74 20 6d 6f 64 75 6c 65 20 73 68 6f 75 6c 64 20 67 65 6e 65 72 61 6c 6c 79 20 62 65 input.module.should.generally.be
8840 20 73 65 74 20 74 6f 20 50 61 73 73 2d 54 68 72 6f 75 67 68 20 74 79 70 65 20 73 6f 20 74 68 61 .set.to.Pass-Through.type.so.tha
8860 74 20 74 68 65 20 6d 6f 64 75 6c 65 20 63 61 6e 20 70 72 6f 70 65 72 6c 79 20 64 69 73 74 69 6e t.the.module.can.properly.distin
8880 67 75 69 73 68 20 62 65 74 77 65 65 6e 20 22 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 guish.between.".................
88a0 20 20 20 20 20 2b 20 24 22 69 6e 70 75 74 20 66 72 6f 6d 20 6d 75 6c 74 69 70 6c 65 20 64 65 76 .....+.$"input.from.multiple.dev
88c0 69 63 65 73 20 28 61 63 74 69 6f 6e 20 7b 6e 65 77 56 61 6c 75 65 2e 61 63 74 69 6f 6e 7d 20 69 ices.(action.{newValue.action}.i
88e0 73 20 73 65 74 20 74 6f 20 7b 6e 65 77 56 61 6c 75 65 2e 61 63 74 69 6f 6e 2e 74 79 70 65 7d 29 s.set.to.{newValue.action.type})
8900 22 2c 20 74 68 69 73 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 ",.this);..............}........
8920 20 20 20 20 20 20 23 65 6e 64 69 66 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 ......#endif................if.(
8940 6e 65 77 56 61 6c 75 65 20 21 3d 20 6e 75 6c 6c 20 26 26 20 61 63 74 69 6f 6e 73 48 6f 6f 6b 65 newValue.!=.null.&&.actionsHooke
8960 64 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 d)..............{...............
8980 20 20 20 70 72 6f 70 65 72 74 79 2e 61 63 74 69 6f 6e 2e 70 65 72 66 6f 72 6d 65 64 20 2b 3d 20 ...property.action.performed.+=.
89a0 61 63 74 69 6f 6e 43 61 6c 6c 62 61 63 6b 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 actionCallback;.................
89c0 20 70 72 6f 70 65 72 74 79 2e 61 63 74 69 6f 6e 2e 63 61 6e 63 65 6c 65 64 20 2b 3d 20 61 63 74 .property.action.canceled.+=.act
89e0 69 6f 6e 43 61 6c 6c 62 61 63 6b 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 ionCallback;..............}.....
8a00 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 73 75 6d 6d 61 72 79 3e 0d .....}............///.<summary>.
8a20 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 41 6e 20 3c 73 65 65 20 63 72 65 66 3d 22 49 6e 70 75 74 .........///.An.<see.cref="Input
8a40 41 63 74 69 6f 6e 22 2f 3e 20 64 65 6c 69 76 65 72 69 6e 67 20 61 20 3c 73 65 65 20 63 72 65 66 Action"/>.delivering.a.<see.cref
8a60 3d 22 56 65 63 74 6f 72 32 22 2f 3e 20 32 44 20 73 63 72 65 65 6e 20 70 6f 73 69 74 69 6f 6e 0d ="Vector2"/>.2D.screen.position.
8a80 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 75 73 65 64 20 61 73 20 61 20 63 75 72 73 6f 72 20 66 6f .........///.used.as.a.cursor.fo
8aa0 72 20 70 6f 69 6e 74 69 6e 67 20 61 74 20 55 49 20 65 6c 65 6d 65 6e 74 73 2e 0d 0a 20 20 20 20 r.pointing.at.UI.elements.......
8ac0 20 20 20 20 2f 2f 2f 20 3c 2f 73 75 6d 6d 61 72 79 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 ....///.</summary>..........///.
8ae0 3c 72 65 6d 61 72 6b 73 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 54 68 65 20 76 61 6c 75 65 <remarks>..........///.The.value
8b00 73 20 72 65 61 64 20 66 72 6f 6d 20 74 68 69 73 20 61 63 74 69 6f 6e 20 64 65 74 65 72 6d 69 6e s.read.from.this.action.determin
8b20 65 20 3c 73 65 65 20 63 72 65 66 3d 22 50 6f 69 6e 74 65 72 45 76 65 6e 74 44 61 74 61 2e 70 6f e.<see.cref="PointerEventData.po
8b40 73 69 74 69 6f 6e 22 2f 3e 20 61 6e 64 20 3c 73 65 65 20 63 72 65 66 3d 22 50 6f 69 6e 74 65 72 sition"/>.and.<see.cref="Pointer
8b60 45 76 65 6e 74 44 61 74 61 2e 64 65 6c 74 61 22 2f 3e 2e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f EventData.delta"/>...........///
8b80 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 54 6f 67 65 74 68 65 72 20 77 69 74 68 20 3c 73 65 65 ..........///.Together.with.<see
8ba0 20 63 72 65 66 3d 22 6c 65 66 74 43 6c 69 63 6b 22 2f 3e 2c 20 3c 73 65 65 20 63 72 65 66 3d 22 .cref="leftClick"/>,.<see.cref="
8bc0 72 69 67 68 74 43 6c 69 63 6b 22 2f 3e 2c 20 3c 73 65 65 20 63 72 65 66 3d 22 6d 69 64 64 6c 65 rightClick"/>,.<see.cref="middle
8be0 43 6c 69 63 6b 22 2f 3e 2c 20 61 6e 64 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 73 65 65 20 Click"/>,.and..........///.<see.
8c00 63 72 65 66 3d 22 73 63 72 6f 6c 6c 57 68 65 65 6c 22 2f 3e 2c 20 74 68 69 73 20 66 6f 72 6d 73 cref="scrollWheel"/>,.this.forms
8c20 20 74 68 65 20 62 61 73 69 73 20 66 6f 72 20 70 6f 69 6e 74 65 72 2d 74 79 70 65 20 55 49 20 69 .the.basis.for.pointer-type.UI.i
8c40 6e 70 75 74 2e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 nput...........///..........///.
8c60 3c 65 78 61 6d 70 6c 65 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 63 6f 64 65 3e 0d 0a 20 <example>..........///.<code>...
8c80 20 20 20 20 20 20 20 2f 2f 2f 20 76 61 72 20 61 73 73 65 74 20 3d 20 53 63 72 69 70 74 61 62 6c .......///.var.asset.=.Scriptabl
8ca0 65 4f 62 6a 65 63 74 2e 43 72 65 61 74 65 26 6c 74 3b 49 6e 70 75 74 41 63 74 69 6f 6e 41 73 73 eObject.Create&lt;InputActionAss
8cc0 65 74 26 67 74 3b 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 76 61 72 20 6d 61 70 20 3d et&gt;();..........///.var.map.=
8ce0 20 61 73 73 65 74 2e 41 64 64 41 63 74 69 6f 6e 4d 61 70 28 22 55 49 22 29 3b 0d 0a 20 20 20 20 .asset.AddActionMap("UI");......
8d00 20 20 20 20 2f 2f 2f 20 76 61 72 20 70 6f 69 6e 74 41 63 74 69 6f 6e 20 3d 20 6d 61 70 2e 41 64 ....///.var.pointAction.=.map.Ad
8d20 64 41 63 74 69 6f 6e 28 22 50 6f 69 6e 74 22 29 3b 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 0d 0a dAction("Point");..........///..
8d40 20 20 20 20 20 20 20 20 2f 2f 2f 20 70 6f 69 6e 74 41 63 74 69 6f 6e 2e 41 64 64 42 69 6e 64 69 ........///.pointAction.AddBindi
8d60 6e 67 28 22 26 6c 74 3b 4d 6f 75 73 65 26 67 74 3b 2f 70 6f 73 69 74 69 6f 6e 22 29 3b 0d 0a 20 ng("&lt;Mouse&gt;/position");...
8d80 20 20 20 20 20 20 20 2f 2f 2f 20 70 6f 69 6e 74 41 63 74 69 6f 6e 2e 41 64 64 42 69 6e 64 69 6e .......///.pointAction.AddBindin
8da0 67 28 22 26 6c 74 3b 54 6f 75 63 68 73 63 72 65 65 6e 26 67 74 3b 2f 74 6f 75 63 68 2a 2f 70 6f g("&lt;Touchscreen&gt;/touch*/po
8dc0 73 69 74 69 6f 6e 22 29 3b 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 0d 0a 20 20 20 20 20 20 20 20 sition");..........///..........
8de0 2f 2f 2f 20 28 28 49 6e 70 75 74 53 79 73 74 65 6d 55 49 49 6e 70 75 74 4d 6f 64 75 6c 65 29 45 ///.((InputSystemUIInputModule)E
8e00 76 65 6e 74 53 79 73 74 65 6d 2e 63 75 72 72 65 6e 74 2e 63 75 72 72 65 6e 74 49 6e 70 75 74 4d ventSystem.current.currentInputM
8e20 6f 64 75 6c 65 29 2e 70 6f 69 6e 74 20 3d 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 20 20 20 20 odule).point.=..........///.....
8e40 49 6e 70 75 74 41 63 74 69 6f 6e 52 65 66 65 72 65 6e 63 65 2e 43 72 65 61 74 65 28 70 6f 69 6e InputActionReference.Create(poin
8e60 74 41 63 74 69 6f 6e 29 3b 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 2f 63 6f 64 65 3e 0d 0a tAction);..........///.</code>..
8e80 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 2f 65 78 61 6d 70 6c 65 3e 0d 0a 20 20 20 20 20 20 20 20 ........///.</example>..........
8ea0 2f 2f 2f 20 3c 2f 72 65 6d 61 72 6b 73 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 73 65 65 ///.</remarks>..........///.<see
8ec0 61 6c 73 6f 20 63 72 65 66 3d 22 6c 65 66 74 43 6c 69 63 6b 22 2f 3e 0d 0a 20 20 20 20 20 20 20 also.cref="leftClick"/>.........
8ee0 20 2f 2f 2f 20 3c 73 65 65 61 6c 73 6f 20 63 72 65 66 3d 22 72 69 67 68 74 43 6c 69 63 6b 22 2f .///.<seealso.cref="rightClick"/
8f00 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 73 65 65 61 6c 73 6f 20 63 72 65 66 3d 22 6d 69 >..........///.<seealso.cref="mi
8f20 64 64 6c 65 43 6c 69 63 6b 22 2f 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 73 65 65 61 6c ddleClick"/>..........///.<seeal
8f40 73 6f 20 63 72 65 66 3d 22 73 63 72 6f 6c 6c 57 68 65 65 6c 22 2f 3e 0d 0a 20 20 20 20 20 20 20 so.cref="scrollWheel"/>.........
8f60 20 70 75 62 6c 69 63 20 49 6e 70 75 74 41 63 74 69 6f 6e 52 65 66 65 72 65 6e 63 65 20 70 6f 69 .public.InputActionReference.poi
8f80 6e 74 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 67 65 74 20 3d nt..........{..............get.=
8fa0 3e 20 6d 5f 50 6f 69 6e 74 41 63 74 69 6f 6e 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 65 >.m_PointAction;..............se
8fc0 74 20 3d 3e 20 53 77 61 70 41 63 74 69 6f 6e 28 72 65 66 20 6d 5f 50 6f 69 6e 74 41 63 74 69 6f t.=>.SwapAction(ref.m_PointActio
8fe0 6e 2c 20 76 61 6c 75 65 2c 20 6d 5f 41 63 74 69 6f 6e 73 48 6f 6f 6b 65 64 2c 20 6d 5f 4f 6e 50 n,.value,.m_ActionsHooked,.m_OnP
9000 6f 69 6e 74 44 65 6c 65 67 61 74 65 29 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 ointDelegate);..........}.......
9020 20 20 20 20 20 2f 2f 2f 20 3c 73 75 6d 6d 61 72 79 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 .....///.<summary>..........///.
9040 41 6e 20 3c 73 65 65 20 63 72 65 66 3d 22 49 6e 70 75 74 41 63 74 69 6f 6e 22 2f 3e 20 64 65 6c An.<see.cref="InputAction"/>.del
9060 69 76 65 72 69 6e 67 20 61 20 3c 63 3e 56 65 63 74 6f 72 32 3c 2f 63 3e 20 73 63 72 6f 6c 6c 20 ivering.a.<c>Vector2</c>.scroll.
9080 77 68 65 65 6c 20 76 61 6c 75 65 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 75 73 65 64 20 66 6f wheel.value..........///.used.fo
90a0 72 20 73 65 6e 64 69 6e 67 20 3c 73 65 65 20 63 72 65 66 3d 22 50 6f 69 6e 74 65 72 45 76 65 6e r.sending.<see.cref="PointerEven
90c0 74 44 61 74 61 22 2f 3e 20 65 76 65 6e 74 73 2e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 2f tData"/>.events...........///.</
90e0 73 75 6d 6d 61 72 79 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 72 65 6d 61 72 6b 73 3e 0d summary>..........///.<remarks>.
9100 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 54 68 65 20 76 61 6c 75 65 73 20 72 65 61 64 20 66 72 6f .........///.The.values.read.fro
9120 6d 20 74 68 69 73 20 61 63 74 69 6f 6e 20 64 65 74 65 72 6d 69 6e 65 20 3c 73 65 65 20 63 72 65 m.this.action.determine.<see.cre
9140 66 3d 22 50 6f 69 6e 74 65 72 45 76 65 6e 74 44 61 74 61 2e 73 63 72 6f 6c 6c 44 65 6c 74 61 22 f="PointerEventData.scrollDelta"
9160 2f 3e 2e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 54 6f />...........///..........///.To
9180 67 65 74 68 65 72 20 77 69 74 68 20 3c 73 65 65 20 63 72 65 66 3d 22 6c 65 66 74 43 6c 69 63 6b gether.with.<see.cref="leftClick
91a0 22 2f 3e 2c 20 3c 73 65 65 20 63 72 65 66 3d 22 72 69 67 68 74 43 6c 69 63 6b 22 2f 3e 2c 20 3c "/>,.<see.cref="rightClick"/>,.<
91c0 73 65 65 20 63 72 65 66 3d 22 6d 69 64 64 6c 65 43 6c 69 63 6b 22 2f 3e 2c 20 61 6e 64 0d 0a 20 see.cref="middleClick"/>,.and...
91e0 20 20 20 20 20 20 20 2f 2f 2f 20 3c 73 65 65 20 63 72 65 66 3d 22 70 6f 69 6e 74 22 2f 3e 2c 20 .......///.<see.cref="point"/>,.
9200 74 68 69 73 20 66 6f 72 6d 73 20 74 68 65 20 62 61 73 69 73 20 66 6f 72 20 70 6f 69 6e 74 65 72 this.forms.the.basis.for.pointer
9220 2d 74 79 70 65 20 55 49 20 69 6e 70 75 74 2e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 0d 0a 20 20 -type.UI.input...........///....
9240 20 20 20 20 20 20 2f 2f 2f 20 4e 6f 74 65 20 74 68 61 74 20 74 68 65 20 61 63 74 69 6f 6e 20 69 ......///.Note.that.the.action.i
9260 73 20 6f 70 74 69 6f 6e 61 6c 2e 20 41 20 70 6f 69 6e 74 65 72 20 69 73 20 66 75 6c 6c 79 20 66 s.optional..A.pointer.is.fully.f
9280 75 6e 63 74 69 6f 6e 61 6c 20 77 69 74 68 20 6a 75 73 74 20 3c 73 65 65 20 63 72 65 66 3d 22 70 unctional.with.just.<see.cref="p
92a0 6f 69 6e 74 22 2f 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 61 6e 64 20 3c 73 65 65 20 63 72 oint"/>..........///.and.<see.cr
92c0 65 66 3d 22 6c 65 66 74 43 6c 69 63 6b 22 2f 3e 20 61 6c 6f 6e 65 2e 0d 0a 20 20 20 20 20 20 20 ef="leftClick"/>.alone..........
92e0 20 2f 2f 2f 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 65 78 61 6d 70 6c 65 3e 0d 0a 20 20 20 .///..........///.<example>.....
9300 20 20 20 20 20 2f 2f 2f 20 3c 63 6f 64 65 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 76 61 72 .....///.<code>..........///.var
9320 20 61 73 73 65 74 20 3d 20 53 63 72 69 70 74 61 62 6c 65 4f 62 6a 65 63 74 2e 43 72 65 61 74 65 .asset.=.ScriptableObject.Create
9340 26 6c 74 3b 49 6e 70 75 74 41 63 74 69 6f 6e 41 73 73 65 74 26 67 74 3b 28 29 3b 0d 0a 20 20 20 &lt;InputActionAsset&gt;();.....
9360 20 20 20 20 20 2f 2f 2f 20 76 61 72 20 6d 61 70 20 3d 20 61 73 73 65 74 2e 41 64 64 41 63 74 69 .....///.var.map.=.asset.AddActi
9380 6f 6e 4d 61 70 28 22 55 49 22 29 3b 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 76 61 72 20 70 6f onMap("UI");..........///.var.po
93a0 69 6e 74 41 63 74 69 6f 6e 20 3d 20 6d 61 70 2e 41 64 64 41 63 74 69 6f 6e 28 22 73 63 72 6f 6c intAction.=.map.AddAction("scrol
93c0 6c 22 29 3b 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 76 61 72 20 73 63 72 6f 6c 6c 41 63 74 69 l");..........///.var.scrollActi
93e0 6f 6e 20 3d 20 6d 61 70 2e 41 64 64 41 63 74 69 6f 6e 28 22 73 63 72 6f 6c 6c 22 29 3b 0d 0a 20 on.=.map.AddAction("scroll");...
9400 20 20 20 20 20 20 20 2f 2f 2f 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 70 6f 69 6e 74 41 63 74 .......///..........///.pointAct
9420 69 6f 6e 2e 41 64 64 42 69 6e 64 69 6e 67 28 22 26 6c 74 3b 4d 6f 75 73 65 26 67 74 3b 2f 70 6f ion.AddBinding("&lt;Mouse&gt;/po
9440 73 69 74 69 6f 6e 22 29 3b 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 70 6f 69 6e 74 41 63 74 69 sition");..........///.pointActi
9460 6f 6e 2e 41 64 64 42 69 6e 64 69 6e 67 28 22 26 6c 74 3b 54 6f 75 63 68 73 63 72 65 65 6e 26 67 on.AddBinding("&lt;Touchscreen&g
9480 74 3b 2f 74 6f 75 63 68 2a 2f 70 6f 73 69 74 69 6f 6e 22 29 3b 0d 0a 20 20 20 20 20 20 20 20 2f t;/touch*/position");........../
94a0 2f 2f 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 73 63 72 6f 6c 6c 41 63 74 69 6f 6e 2e 41 64 64 //..........///.scrollAction.Add
94c0 42 69 6e 64 69 6e 67 28 22 26 6c 74 3b 4d 6f 75 73 65 26 67 74 3b 2f 73 63 72 6f 6c 6c 22 29 3b Binding("&lt;Mouse&gt;/scroll");
94e0 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 28 28 49 6e 70 ..........///..........///.((Inp
9500 75 74 53 79 73 74 65 6d 55 49 49 6e 70 75 74 4d 6f 64 75 6c 65 29 45 76 65 6e 74 53 79 73 74 65 utSystemUIInputModule)EventSyste
9520 6d 2e 63 75 72 72 65 6e 74 2e 63 75 72 72 65 6e 74 49 6e 70 75 74 4d 6f 64 75 6c 65 29 2e 70 6f m.current.currentInputModule).po
9540 69 6e 74 20 3d 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 20 20 20 20 49 6e 70 75 74 41 63 74 69 int.=..........///.....InputActi
9560 6f 6e 52 65 66 65 72 65 6e 63 65 2e 43 72 65 61 74 65 28 70 6f 69 6e 74 41 63 74 69 6f 6e 29 3b onReference.Create(pointAction);
9580 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 28 28 49 6e 70 75 74 53 79 73 74 65 6d 55 49 49 6e 70 ..........///.((InputSystemUIInp
95a0 75 74 4d 6f 64 75 6c 65 29 45 76 65 6e 74 53 79 73 74 65 6d 2e 63 75 72 72 65 6e 74 2e 63 75 72 utModule)EventSystem.current.cur
95c0 72 65 6e 74 49 6e 70 75 74 4d 6f 64 75 6c 65 29 2e 73 63 72 6f 6c 6c 57 68 65 65 6c 20 3d 0d 0a rentInputModule).scrollWheel.=..
95e0 20 20 20 20 20 20 20 20 2f 2f 2f 20 20 20 20 20 49 6e 70 75 74 41 63 74 69 6f 6e 52 65 66 65 72 ........///.....InputActionRefer
9600 65 6e 63 65 2e 43 72 65 61 74 65 28 73 63 72 6f 6c 6c 41 63 74 69 6f 6e 29 3b 0d 0a 20 20 20 20 ence.Create(scrollAction);......
9620 20 20 20 20 2f 2f 2f 20 3c 2f 63 6f 64 65 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 2f 65 ....///.</code>..........///.</e
9640 78 61 6d 70 6c 65 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 2f 72 65 6d 61 72 6b 73 3e 0d xample>..........///.</remarks>.
9660 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 73 65 65 61 6c 73 6f 20 63 72 65 66 3d 22 6c 65 66 74 .........///.<seealso.cref="left
9680 43 6c 69 63 6b 22 2f 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 73 65 65 61 6c 73 6f 20 63 Click"/>..........///.<seealso.c
96a0 72 65 66 3d 22 72 69 67 68 74 43 6c 69 63 6b 22 2f 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 ref="rightClick"/>..........///.
96c0 3c 73 65 65 61 6c 73 6f 20 63 72 65 66 3d 22 6d 69 64 64 6c 65 43 6c 69 63 6b 22 2f 3e 0d 0a 20 <seealso.cref="middleClick"/>...
96e0 20 20 20 20 20 20 20 2f 2f 2f 20 3c 73 65 65 61 6c 73 6f 20 63 72 65 66 3d 22 70 6f 69 6e 74 22 .......///.<seealso.cref="point"
9700 2f 3e 0d 0a 20 20 20 20 20 20 20 20 70 75 62 6c 69 63 20 49 6e 70 75 74 41 63 74 69 6f 6e 52 65 />..........public.InputActionRe
9720 66 65 72 65 6e 63 65 20 73 63 72 6f 6c 6c 57 68 65 65 6c 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a ference.scrollWheel..........{..
9740 20 20 20 20 20 20 20 20 20 20 20 20 67 65 74 20 3d 3e 20 6d 5f 53 63 72 6f 6c 6c 57 68 65 65 6c ............get.=>.m_ScrollWheel
9760 41 63 74 69 6f 6e 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 65 74 20 3d 3e 20 53 77 61 70 Action;..............set.=>.Swap
9780 41 63 74 69 6f 6e 28 72 65 66 20 6d 5f 53 63 72 6f 6c 6c 57 68 65 65 6c 41 63 74 69 6f 6e 2c 20 Action(ref.m_ScrollWheelAction,.
97a0 76 61 6c 75 65 2c 20 6d 5f 41 63 74 69 6f 6e 73 48 6f 6f 6b 65 64 2c 20 6d 5f 4f 6e 53 63 72 6f value,.m_ActionsHooked,.m_OnScro
97c0 6c 6c 57 68 65 65 6c 44 65 6c 65 67 61 74 65 29 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a llWheelDelegate);..........}....
97e0 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 73 75 6d 6d 61 72 79 3e 0d 0a 20 20 20 20 20 20 20 20 2f ........///.<summary>........../
9800 2f 2f 20 41 6e 20 3c 73 65 65 20 63 72 65 66 3d 22 49 6e 70 75 74 41 63 74 69 6f 6e 22 2f 3e 20 //.An.<see.cref="InputAction"/>.
9820 64 65 6c 69 76 65 72 69 6e 67 20 61 20 3c 63 3e 66 6c 6f 61 74 3c 2f 63 3e 20 62 75 74 74 6f 6e delivering.a.<c>float</c>.button
9840 20 76 61 6c 75 65 20 74 68 61 74 20 64 65 74 65 72 6d 69 6e 65 73 0d 0a 20 20 20 20 20 20 20 20 .value.that.determines..........
9860 2f 2f 2f 20 77 68 65 74 68 65 72 20 74 68 65 20 6c 65 66 74 20 62 75 74 74 6f 6e 20 6f 66 20 61 ///.whether.the.left.button.of.a
9880 20 70 6f 69 6e 74 65 72 20 69 73 20 70 72 65 73 73 65 64 2e 0d 0a 20 20 20 20 20 20 20 20 2f 2f .pointer.is.pressed...........//
98a0 2f 20 3c 2f 73 75 6d 6d 61 72 79 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 72 65 6d 61 72 /.</summary>..........///.<remar
98c0 6b 73 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 43 6c 69 63 6b 73 20 6f 6e 20 74 68 69 73 20 ks>..........///.Clicks.on.this.
98e0 62 75 74 74 6f 6e 20 77 69 6c 6c 20 75 73 65 20 3c 73 65 65 20 63 72 65 66 3d 22 50 6f 69 6e 74 button.will.use.<see.cref="Point
9900 65 72 45 76 65 6e 74 44 61 74 61 2e 49 6e 70 75 74 42 75 74 74 6f 6e 2e 4c 65 66 74 22 2f 3e 20 erEventData.InputButton.Left"/>.
9920 66 6f 72 20 3c 73 65 65 20 63 72 65 66 3d 22 50 6f 69 6e 74 65 72 45 76 65 6e 74 44 61 74 61 2e for.<see.cref="PointerEventData.
9940 62 75 74 74 6f 6e 22 2f 3e 2e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 0d 0a 20 20 20 20 20 20 20 button"/>...........///.........
9960 20 2f 2f 2f 20 54 6f 67 65 74 68 65 72 20 77 69 74 68 20 3c 73 65 65 20 63 72 65 66 3d 22 70 6f .///.Together.with.<see.cref="po
9980 69 6e 74 22 2f 3e 2c 20 3c 73 65 65 20 63 72 65 66 3d 22 72 69 67 68 74 43 6c 69 63 6b 22 2f 3e int"/>,.<see.cref="rightClick"/>
99a0 2c 20 3c 73 65 65 20 63 72 65 66 3d 22 6d 69 64 64 6c 65 43 6c 69 63 6b 22 2f 3e 2c 20 61 6e 64 ,.<see.cref="middleClick"/>,.and
99c0 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 73 65 65 20 63 72 65 66 3d 22 73 63 72 6f 6c 6c 57 ..........///.<see.cref="scrollW
99e0 68 65 65 6c 22 2f 3e 2c 20 74 68 69 73 20 66 6f 72 6d 73 20 74 68 65 20 62 61 73 69 73 20 66 6f heel"/>,.this.forms.the.basis.fo
9a00 72 20 70 6f 69 6e 74 65 72 2d 74 79 70 65 20 55 49 20 69 6e 70 75 74 2e 0d 0a 20 20 20 20 20 20 r.pointer-type.UI.input.........
9a20 20 20 2f 2f 2f 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 4e 6f 74 65 20 74 68 61 74 20 74 6f 67 ..///..........///.Note.that.tog
9a40 65 74 68 65 72 20 77 69 74 68 20 3c 73 65 65 20 63 72 65 66 3d 22 70 6f 69 6e 74 22 2f 3e 2c 20 ether.with.<see.cref="point"/>,.
9a60 74 68 69 73 20 61 63 74 69 6f 6e 20 69 73 20 6e 65 63 65 73 73 61 72 79 20 66 6f 72 20 61 20 70 this.action.is.necessary.for.a.p
9a80 6f 69 6e 74 65 72 20 74 6f 20 62 65 20 66 75 6e 63 74 69 6f 6e 61 6c 2e 20 54 68 65 20 6f 74 68 ointer.to.be.functional..The.oth
9aa0 65 72 20 63 6c 69 63 6b 73 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 61 6e 64 20 3c 73 65 65 20 er.clicks..........///.and.<see.
9ac0 63 72 65 66 3d 22 73 63 72 6f 6c 6c 57 68 65 65 6c 22 2f 3e 20 61 72 65 20 6f 70 74 69 6f 6e 61 cref="scrollWheel"/>.are.optiona
9ae0 6c 2c 20 68 6f 77 65 76 65 72 2e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 0d 0a 20 20 20 20 20 20 l,.however...........///........
9b00 20 20 2f 2f 2f 20 3c 65 78 61 6d 70 6c 65 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 63 6f ..///.<example>..........///.<co
9b20 64 65 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 76 61 72 20 61 73 73 65 74 20 3d 20 53 63 72 de>..........///.var.asset.=.Scr
9b40 69 70 74 61 62 6c 65 4f 62 6a 65 63 74 2e 43 72 65 61 74 65 26 6c 74 3b 49 6e 70 75 74 41 63 74 iptableObject.Create&lt;InputAct
9b60 69 6f 6e 41 73 73 65 74 26 67 74 3b 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 76 61 72 ionAsset&gt;();..........///.var
9b80 20 6d 61 70 20 3d 20 61 73 73 65 74 2e 41 64 64 41 63 74 69 6f 6e 4d 61 70 28 22 55 49 22 29 3b .map.=.asset.AddActionMap("UI");
9ba0 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 76 61 72 20 70 6f 69 6e 74 41 63 74 69 6f 6e 20 3d 20 ..........///.var.pointAction.=.
9bc0 6d 61 70 2e 41 64 64 41 63 74 69 6f 6e 28 22 73 63 72 6f 6c 6c 22 29 3b 0d 0a 20 20 20 20 20 20 map.AddAction("scroll");........
9be0 20 20 2f 2f 2f 20 76 61 72 20 63 6c 69 63 6b 41 63 74 69 6f 6e 20 3d 20 6d 61 70 2e 41 64 64 41 ..///.var.clickAction.=.map.AddA
9c00 63 74 69 6f 6e 28 22 63 6c 69 63 6b 22 29 3b 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 0d 0a 20 20 ction("click");..........///....
9c20 20 20 20 20 20 20 2f 2f 2f 20 70 6f 69 6e 74 41 63 74 69 6f 6e 2e 41 64 64 42 69 6e 64 69 6e 67 ......///.pointAction.AddBinding
9c40 28 22 26 6c 74 3b 4d 6f 75 73 65 26 67 74 3b 2f 70 6f 73 69 74 69 6f 6e 22 29 3b 0d 0a 20 20 20 ("&lt;Mouse&gt;/position");.....
9c60 20 20 20 20 20 2f 2f 2f 20 70 6f 69 6e 74 41 63 74 69 6f 6e 2e 41 64 64 42 69 6e 64 69 6e 67 28 .....///.pointAction.AddBinding(
9c80 22 26 6c 74 3b 54 6f 75 63 68 73 63 72 65 65 6e 26 67 74 3b 2f 74 6f 75 63 68 2a 2f 70 6f 73 69 "&lt;Touchscreen&gt;/touch*/posi
9ca0 74 69 6f 6e 22 29 3b 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 0d 0a 20 20 20 20 20 20 20 20 2f 2f tion");..........///..........//
9cc0 2f 20 63 6c 69 63 6b 41 63 74 69 6f 6e 2e 41 64 64 42 69 6e 64 69 6e 67 28 22 26 6c 74 3b 4d 6f /.clickAction.AddBinding("&lt;Mo
9ce0 75 73 65 26 67 74 3b 2f 6c 65 66 74 42 75 74 74 6f 6e 22 29 3b 0d 0a 20 20 20 20 20 20 20 20 2f use&gt;/leftButton");........../
9d00 2f 2f 20 63 6c 69 63 6b 41 63 74 69 6f 6e 2e 41 64 64 42 69 6e 64 69 6e 67 28 22 26 6c 74 3b 54 //.clickAction.AddBinding("&lt;T
9d20 6f 75 63 68 73 63 72 65 65 6e 26 67 74 3b 2f 74 6f 75 63 68 2a 2f 70 72 65 73 73 22 29 3b 0d 0a ouchscreen&gt;/touch*/press");..
9d40 20 20 20 20 20 20 20 20 2f 2f 2f 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 28 28 49 6e 70 75 74 ........///..........///.((Input
9d60 53 79 73 74 65 6d 55 49 49 6e 70 75 74 4d 6f 64 75 6c 65 29 45 76 65 6e 74 53 79 73 74 65 6d 2e SystemUIInputModule)EventSystem.
9d80 63 75 72 72 65 6e 74 2e 63 75 72 72 65 6e 74 49 6e 70 75 74 4d 6f 64 75 6c 65 29 2e 70 6f 69 6e current.currentInputModule).poin
9da0 74 20 3d 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 20 20 20 20 49 6e 70 75 74 41 63 74 69 6f 6e t.=..........///.....InputAction
9dc0 52 65 66 65 72 65 6e 63 65 2e 43 72 65 61 74 65 28 70 6f 69 6e 74 41 63 74 69 6f 6e 29 3b 0d 0a Reference.Create(pointAction);..
9de0 20 20 20 20 20 20 20 20 2f 2f 2f 20 28 28 49 6e 70 75 74 53 79 73 74 65 6d 55 49 49 6e 70 75 74 ........///.((InputSystemUIInput
9e00 4d 6f 64 75 6c 65 29 45 76 65 6e 74 53 79 73 74 65 6d 2e 63 75 72 72 65 6e 74 2e 63 75 72 72 65 Module)EventSystem.current.curre
9e20 6e 74 49 6e 70 75 74 4d 6f 64 75 6c 65 29 2e 6c 65 66 74 43 6c 69 63 6b 20 3d 0d 0a 20 20 20 20 ntInputModule).leftClick.=......
9e40 20 20 20 20 2f 2f 2f 20 20 20 20 20 49 6e 70 75 74 41 63 74 69 6f 6e 52 65 66 65 72 65 6e 63 65 ....///.....InputActionReference
9e60 2e 43 72 65 61 74 65 28 63 6c 69 63 6b 41 63 74 69 6f 6e 29 3b 0d 0a 20 20 20 20 20 20 20 20 2f .Create(clickAction);........../
9e80 2f 2f 20 3c 2f 63 6f 64 65 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 2f 65 78 61 6d 70 6c //.</code>..........///.</exampl
9ea0 65 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 2f 72 65 6d 61 72 6b 73 3e 0d 0a 20 20 20 20 e>..........///.</remarks>......
9ec0 20 20 20 20 2f 2f 2f 20 3c 73 65 65 61 6c 73 6f 20 63 72 65 66 3d 22 72 69 67 68 74 43 6c 69 63 ....///.<seealso.cref="rightClic
9ee0 6b 22 2f 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 73 65 65 61 6c 73 6f 20 63 72 65 66 3d k"/>..........///.<seealso.cref=
9f00 22 6d 69 64 64 6c 65 43 6c 69 63 6b 22 2f 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 73 65 "middleClick"/>..........///.<se
9f20 65 61 6c 73 6f 20 63 72 65 66 3d 22 73 63 72 6f 6c 6c 57 68 65 65 6c 22 2f 3e 0d 0a 20 20 20 20 ealso.cref="scrollWheel"/>......
9f40 20 20 20 20 2f 2f 2f 20 3c 73 65 65 61 6c 73 6f 20 63 72 65 66 3d 22 70 6f 69 6e 74 22 2f 3e 0d ....///.<seealso.cref="point"/>.
9f60 0a 20 20 20 20 20 20 20 20 70 75 62 6c 69 63 20 49 6e 70 75 74 41 63 74 69 6f 6e 52 65 66 65 72 .........public.InputActionRefer
9f80 65 6e 63 65 20 6c 65 66 74 43 6c 69 63 6b 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 ence.leftClick..........{.......
9fa0 20 20 20 20 20 20 20 67 65 74 20 3d 3e 20 6d 5f 4c 65 66 74 43 6c 69 63 6b 41 63 74 69 6f 6e 3b .......get.=>.m_LeftClickAction;
9fc0 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 65 74 20 3d 3e 20 53 77 61 70 41 63 74 69 6f 6e 28 ..............set.=>.SwapAction(
9fe0 72 65 66 20 6d 5f 4c 65 66 74 43 6c 69 63 6b 41 63 74 69 6f 6e 2c 20 76 61 6c 75 65 2c 20 6d 5f ref.m_LeftClickAction,.value,.m_
a000 41 63 74 69 6f 6e 73 48 6f 6f 6b 65 64 2c 20 6d 5f 4f 6e 4c 65 66 74 43 6c 69 63 6b 44 65 6c 65 ActionsHooked,.m_OnLeftClickDele
a020 67 61 74 65 29 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f gate);..........}............///
a040 20 3c 73 75 6d 6d 61 72 79 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 41 6e 20 3c 73 65 65 20 .<summary>..........///.An.<see.
a060 63 72 65 66 3d 22 49 6e 70 75 74 41 63 74 69 6f 6e 22 2f 3e 20 64 65 6c 69 76 65 72 69 6e 67 20 cref="InputAction"/>.delivering.
a080 61 20 3c 63 3e 66 6c 6f 61 74 3c 2f 63 3e 20 62 75 74 74 6f 6e 20 76 61 6c 75 65 20 74 68 61 74 a.<c>float</c>.button.value.that
a0a0 20 64 65 74 65 72 6d 69 6e 65 73 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 77 68 65 74 68 65 72 .determines..........///.whether
a0c0 20 74 68 65 20 6d 69 64 64 6c 65 20 62 75 74 74 6f 6e 20 6f 66 20 61 20 70 6f 69 6e 74 65 72 20 .the.middle.button.of.a.pointer.
a0e0 69 73 20 70 72 65 73 73 65 64 2e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 2f 73 75 6d 6d 61 is.pressed...........///.</summa
a100 72 79 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 72 65 6d 61 72 6b 73 3e 0d 0a 20 20 20 20 ry>..........///.<remarks>......
a120 20 20 20 20 2f 2f 2f 20 43 6c 69 63 6b 73 20 6f 6e 20 74 68 69 73 20 62 75 74 74 6f 6e 20 77 69 ....///.Clicks.on.this.button.wi
a140 6c 6c 20 75 73 65 20 3c 73 65 65 20 63 72 65 66 3d 22 50 6f 69 6e 74 65 72 45 76 65 6e 74 44 61 ll.use.<see.cref="PointerEventDa
a160 74 61 2e 49 6e 70 75 74 42 75 74 74 6f 6e 2e 4d 69 64 64 6c 65 22 2f 3e 20 66 6f 72 20 3c 73 65 ta.InputButton.Middle"/>.for.<se
a180 65 20 63 72 65 66 3d 22 50 6f 69 6e 74 65 72 45 76 65 6e 74 44 61 74 61 2e 62 75 74 74 6f 6e 22 e.cref="PointerEventData.button"
a1a0 2f 3e 2e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 54 6f />...........///..........///.To
a1c0 67 65 74 68 65 72 20 77 69 74 68 20 3c 73 65 65 20 63 72 65 66 3d 22 6c 65 66 74 43 6c 69 63 6b gether.with.<see.cref="leftClick
a1e0 22 2f 3e 2c 20 3c 73 65 65 20 63 72 65 66 3d 22 72 69 67 68 74 43 6c 69 63 6b 22 2f 3e 2c 20 3c "/>,.<see.cref="rightClick"/>,.<
a200 73 65 65 20 63 72 65 66 3d 22 73 63 72 6f 6c 6c 57 68 65 65 6c 22 2f 3e 2c 20 61 6e 64 0d 0a 20 see.cref="scrollWheel"/>,.and...
a220 20 20 20 20 20 20 20 2f 2f 2f 20 3c 73 65 65 20 63 72 65 66 3d 22 70 6f 69 6e 74 22 2f 3e 2c 20 .......///.<see.cref="point"/>,.
a240 74 68 69 73 20 66 6f 72 6d 73 20 74 68 65 20 62 61 73 69 73 20 66 6f 72 20 70 6f 69 6e 74 65 72 this.forms.the.basis.for.pointer
a260 2d 74 79 70 65 20 55 49 20 69 6e 70 75 74 2e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 0d 0a 20 20 -type.UI.input...........///....
a280 20 20 20 20 20 20 2f 2f 2f 20 4e 6f 74 65 20 74 68 61 74 20 74 68 65 20 61 63 74 69 6f 6e 20 69 ......///.Note.that.the.action.i
a2a0 73 20 6f 70 74 69 6f 6e 61 6c 2e 20 41 20 70 6f 69 6e 74 65 72 20 69 73 20 66 75 6c 6c 79 20 66 s.optional..A.pointer.is.fully.f
a2c0 75 6e 63 74 69 6f 6e 61 6c 20 77 69 74 68 20 6a 75 73 74 20 3c 73 65 65 20 63 72 65 66 3d 22 70 unctional.with.just.<see.cref="p
a2e0 6f 69 6e 74 22 2f 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 61 6e 64 20 3c 73 65 65 20 63 72 oint"/>..........///.and.<see.cr
a300 65 66 3d 22 6c 65 66 74 43 6c 69 63 6b 22 2f 3e 20 61 6c 6f 6e 65 2e 0d 0a 20 20 20 20 20 20 20 ef="leftClick"/>.alone..........
a320 20 2f 2f 2f 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 65 78 61 6d 70 6c 65 3e 0d 0a 20 20 20 .///..........///.<example>.....
a340 20 20 20 20 20 2f 2f 2f 20 3c 63 6f 64 65 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 76 61 72 .....///.<code>..........///.var
a360 20 61 73 73 65 74 20 3d 20 53 63 72 69 70 74 61 62 6c 65 4f 62 6a 65 63 74 2e 43 72 65 61 74 65 .asset.=.ScriptableObject.Create
a380 26 6c 74 3b 49 6e 70 75 74 41 63 74 69 6f 6e 41 73 73 65 74 26 67 74 3b 28 29 3b 0d 0a 20 20 20 &lt;InputActionAsset&gt;();.....
a3a0 20 20 20 20 20 2f 2f 2f 20 76 61 72 20 6d 61 70 20 3d 20 61 73 73 65 74 2e 41 64 64 41 63 74 69 .....///.var.map.=.asset.AddActi
a3c0 6f 6e 4d 61 70 28 22 55 49 22 29 3b 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 76 61 72 20 70 6f onMap("UI");..........///.var.po
a3e0 69 6e 74 41 63 74 69 6f 6e 20 3d 20 6d 61 70 2e 41 64 64 41 63 74 69 6f 6e 28 22 73 63 72 6f 6c intAction.=.map.AddAction("scrol
a400 6c 22 29 3b 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 76 61 72 20 6c 65 66 74 43 6c 69 63 6b 41 l");..........///.var.leftClickA
a420 63 74 69 6f 6e 20 3d 20 6d 61 70 2e 41 64 64 41 63 74 69 6f 6e 28 22 6c 65 66 74 43 6c 69 63 6b ction.=.map.AddAction("leftClick
a440 22 29 3b 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 76 61 72 20 6d 69 64 64 6c 65 43 6c 69 63 6b ");..........///.var.middleClick
a460 41 63 74 69 6f 6e 20 3d 20 6d 61 70 2e 41 64 64 41 63 74 69 6f 6e 28 22 6d 69 64 64 6c 65 43 6c Action.=.map.AddAction("middleCl
a480 69 63 6b 22 29 3b 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f ick");..........///..........///
a4a0 20 70 6f 69 6e 74 41 63 74 69 6f 6e 2e 41 64 64 42 69 6e 64 69 6e 67 28 22 26 6c 74 3b 4d 6f 75 .pointAction.AddBinding("&lt;Mou
a4c0 73 65 26 67 74 3b 2f 70 6f 73 69 74 69 6f 6e 22 29 3b 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 se&gt;/position");..........///.
a4e0 70 6f 69 6e 74 41 63 74 69 6f 6e 2e 41 64 64 42 69 6e 64 69 6e 67 28 22 26 6c 74 3b 54 6f 75 63 pointAction.AddBinding("&lt;Touc
a500 68 73 63 72 65 65 6e 26 67 74 3b 2f 74 6f 75 63 68 2a 2f 70 6f 73 69 74 69 6f 6e 22 29 3b 0d 0a hscreen&gt;/touch*/position");..
a520 20 20 20 20 20 20 20 20 2f 2f 2f 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 6c 65 66 74 43 6c 69 ........///..........///.leftCli
a540 63 6b 41 63 74 69 6f 6e 2e 41 64 64 42 69 6e 64 69 6e 67 28 22 26 6c 74 3b 4d 6f 75 73 65 26 67 ckAction.AddBinding("&lt;Mouse&g
a560 74 3b 2f 6c 65 66 74 42 75 74 74 6f 6e 22 29 3b 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 6c 65 t;/leftButton");..........///.le
a580 66 74 43 6c 69 63 6b 41 63 74 69 6f 6e 2e 41 64 64 42 69 6e 64 69 6e 67 28 22 26 6c 74 3b 54 6f ftClickAction.AddBinding("&lt;To
a5a0 75 63 68 73 63 72 65 65 6e 26 67 74 3b 2f 74 6f 75 63 68 2a 2f 70 72 65 73 73 22 29 3b 0d 0a 20 uchscreen&gt;/touch*/press");...
a5c0 20 20 20 20 20 20 20 2f 2f 2f 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 6d 69 64 64 6c 65 43 6c .......///..........///.middleCl
a5e0 69 63 6b 41 63 74 69 6f 6e 2e 41 64 64 42 69 6e 64 69 6e 67 28 22 26 6c 74 3b 4d 6f 75 73 65 26 ickAction.AddBinding("&lt;Mouse&
a600 67 74 3b 2f 6d 69 64 64 6c 65 42 75 74 74 6f 6e 22 29 3b 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f gt;/middleButton");..........///
a620 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 28 28 49 6e 70 75 74 53 79 73 74 65 6d 55 49 49 6e 70 ..........///.((InputSystemUIInp
a640 75 74 4d 6f 64 75 6c 65 29 45 76 65 6e 74 53 79 73 74 65 6d 2e 63 75 72 72 65 6e 74 2e 63 75 72 utModule)EventSystem.current.cur
a660 72 65 6e 74 49 6e 70 75 74 4d 6f 64 75 6c 65 29 2e 70 6f 69 6e 74 20 3d 0d 0a 20 20 20 20 20 20 rentInputModule).point.=........
a680 20 20 2f 2f 2f 20 20 20 20 20 49 6e 70 75 74 41 63 74 69 6f 6e 52 65 66 65 72 65 6e 63 65 2e 43 ..///.....InputActionReference.C
a6a0 72 65 61 74 65 28 70 6f 69 6e 74 41 63 74 69 6f 6e 29 3b 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f reate(pointAction);..........///
a6c0 20 28 28 49 6e 70 75 74 53 79 73 74 65 6d 55 49 49 6e 70 75 74 4d 6f 64 75 6c 65 29 45 76 65 6e .((InputSystemUIInputModule)Even
a6e0 74 53 79 73 74 65 6d 2e 63 75 72 72 65 6e 74 2e 63 75 72 72 65 6e 74 49 6e 70 75 74 4d 6f 64 75 tSystem.current.currentInputModu
a700 6c 65 29 2e 6c 65 66 74 43 6c 69 63 6b 20 3d 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 20 20 20 le).leftClick.=..........///....
a720 20 49 6e 70 75 74 41 63 74 69 6f 6e 52 65 66 65 72 65 6e 63 65 2e 43 72 65 61 74 65 28 6c 65 66 .InputActionReference.Create(lef
a740 74 43 6c 69 63 6b 41 63 74 69 6f 6e 29 3b 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 28 28 49 6e tClickAction);..........///.((In
a760 70 75 74 53 79 73 74 65 6d 55 49 49 6e 70 75 74 4d 6f 64 75 6c 65 29 45 76 65 6e 74 53 79 73 74 putSystemUIInputModule)EventSyst
a780 65 6d 2e 63 75 72 72 65 6e 74 2e 63 75 72 72 65 6e 74 49 6e 70 75 74 4d 6f 64 75 6c 65 29 2e 6d em.current.currentInputModule).m
a7a0 69 64 64 6c 65 43 6c 69 63 6b 20 3d 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 20 20 20 20 49 6e iddleClick.=..........///.....In
a7c0 70 75 74 41 63 74 69 6f 6e 52 65 66 65 72 65 6e 63 65 2e 43 72 65 61 74 65 28 6d 69 64 64 6c 65 putActionReference.Create(middle
a7e0 43 6c 69 63 6b 41 63 74 69 6f 6e 29 3b 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 2f 63 6f 64 ClickAction);..........///.</cod
a800 65 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 2f 65 78 61 6d 70 6c 65 3e 0d 0a 20 20 20 20 e>..........///.</example>......
a820 20 20 20 20 2f 2f 2f 20 3c 2f 72 65 6d 61 72 6b 73 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 ....///.</remarks>..........///.
a840 3c 73 65 65 61 6c 73 6f 20 63 72 65 66 3d 22 6c 65 66 74 43 6c 69 63 6b 22 2f 3e 0d 0a 20 20 20 <seealso.cref="leftClick"/>.....
a860 20 20 20 20 20 2f 2f 2f 20 3c 73 65 65 61 6c 73 6f 20 63 72 65 66 3d 22 72 69 67 68 74 43 6c 69 .....///.<seealso.cref="rightCli
a880 63 6b 22 2f 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 73 65 65 61 6c 73 6f 20 63 72 65 66 ck"/>..........///.<seealso.cref
a8a0 3d 22 73 63 72 6f 6c 6c 57 68 65 65 6c 22 2f 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 73 ="scrollWheel"/>..........///.<s
a8c0 65 65 61 6c 73 6f 20 63 72 65 66 3d 22 70 6f 69 6e 74 22 2f 3e 0d 0a 20 20 20 20 20 20 20 20 70 eealso.cref="point"/>..........p
a8e0 75 62 6c 69 63 20 49 6e 70 75 74 41 63 74 69 6f 6e 52 65 66 65 72 65 6e 63 65 20 6d 69 64 64 6c ublic.InputActionReference.middl
a900 65 43 6c 69 63 6b 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 67 eClick..........{..............g
a920 65 74 20 3d 3e 20 6d 5f 4d 69 64 64 6c 65 43 6c 69 63 6b 41 63 74 69 6f 6e 3b 0d 0a 20 20 20 20 et.=>.m_MiddleClickAction;......
a940 20 20 20 20 20 20 20 20 73 65 74 20 3d 3e 20 53 77 61 70 41 63 74 69 6f 6e 28 72 65 66 20 6d 5f ........set.=>.SwapAction(ref.m_
a960 4d 69 64 64 6c 65 43 6c 69 63 6b 41 63 74 69 6f 6e 2c 20 76 61 6c 75 65 2c 20 6d 5f 41 63 74 69 MiddleClickAction,.value,.m_Acti
a980 6f 6e 73 48 6f 6f 6b 65 64 2c 20 6d 5f 4f 6e 4d 69 64 64 6c 65 43 6c 69 63 6b 44 65 6c 65 67 61 onsHooked,.m_OnMiddleClickDelega
a9a0 74 65 29 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c te);..........}............///.<
a9c0 73 75 6d 6d 61 72 79 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 41 6e 20 3c 73 65 65 20 63 72 summary>..........///.An.<see.cr
a9e0 65 66 3d 22 49 6e 70 75 74 41 63 74 69 6f 6e 22 2f 3e 20 64 65 6c 69 76 65 72 69 6e 67 20 61 20 ef="InputAction"/>.delivering.a.
aa00 3c 63 3e 66 6c 6f 61 74 22 3c 2f 63 3e 20 62 75 74 74 6f 6e 20 76 61 6c 75 65 20 74 68 61 74 20 <c>float"</c>.button.value.that.
aa20 64 65 74 65 72 6d 69 6e 65 73 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 77 68 65 74 68 65 72 20 determines..........///.whether.
aa40 74 68 65 20 72 69 67 68 74 20 62 75 74 74 6f 6e 20 6f 66 20 61 20 70 6f 69 6e 74 65 72 20 69 73 the.right.button.of.a.pointer.is
aa60 20 70 72 65 73 73 65 64 2e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 2f 73 75 6d 6d 61 72 79 .pressed...........///.</summary
aa80 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 72 65 6d 61 72 6b 73 3e 0d 0a 20 20 20 20 20 20 >..........///.<remarks>........
aaa0 20 20 2f 2f 2f 20 43 6c 69 63 6b 73 20 6f 6e 20 74 68 69 73 20 62 75 74 74 6f 6e 20 77 69 6c 6c ..///.Clicks.on.this.button.will
aac0 20 75 73 65 20 3c 73 65 65 20 63 72 65 66 3d 22 50 6f 69 6e 74 65 72 45 76 65 6e 74 44 61 74 61 .use.<see.cref="PointerEventData
aae0 2e 49 6e 70 75 74 42 75 74 74 6f 6e 2e 52 69 67 68 74 22 2f 3e 20 66 6f 72 20 3c 73 65 65 20 63 .InputButton.Right"/>.for.<see.c
ab00 72 65 66 3d 22 50 6f 69 6e 74 65 72 45 76 65 6e 74 44 61 74 61 2e 62 75 74 74 6f 6e 22 2f 3e 2e ref="PointerEventData.button"/>.
ab20 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 54 6f 67 65 74 ..........///..........///.Toget
ab40 68 65 72 20 77 69 74 68 20 3c 73 65 65 20 63 72 65 66 3d 22 6c 65 66 74 43 6c 69 63 6b 22 2f 3e her.with.<see.cref="leftClick"/>
ab60 2c 20 3c 73 65 65 20 63 72 65 66 3d 22 6d 69 64 64 6c 65 43 6c 69 63 6b 22 2f 3e 2c 20 3c 73 65 ,.<see.cref="middleClick"/>,.<se
ab80 65 20 63 72 65 66 3d 22 73 63 72 6f 6c 6c 57 68 65 65 6c 22 2f 3e 2c 20 61 6e 64 0d 0a 20 20 20 e.cref="scrollWheel"/>,.and.....
aba0 20 20 20 20 20 2f 2f 2f 20 3c 73 65 65 20 63 72 65 66 3d 22 70 6f 69 6e 74 22 2f 3e 2c 20 74 68 .....///.<see.cref="point"/>,.th
abc0 69 73 20 66 6f 72 6d 73 20 74 68 65 20 62 61 73 69 73 20 66 6f 72 20 70 6f 69 6e 74 65 72 2d 74 is.forms.the.basis.for.pointer-t
abe0 79 70 65 20 55 49 20 69 6e 70 75 74 2e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 0d 0a 20 20 20 20 ype.UI.input...........///......
ac00 20 20 20 20 2f 2f 2f 20 4e 6f 74 65 20 74 68 61 74 20 74 68 65 20 61 63 74 69 6f 6e 20 69 73 20 ....///.Note.that.the.action.is.
ac20 6f 70 74 69 6f 6e 61 6c 2e 20 41 20 70 6f 69 6e 74 65 72 20 69 73 20 66 75 6c 6c 79 20 66 75 6e optional..A.pointer.is.fully.fun
ac40 63 74 69 6f 6e 61 6c 20 77 69 74 68 20 6a 75 73 74 20 3c 73 65 65 20 63 72 65 66 3d 22 70 6f 69 ctional.with.just.<see.cref="poi
ac60 6e 74 22 2f 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 61 6e 64 20 3c 73 65 65 20 63 72 65 66 nt"/>..........///.and.<see.cref
ac80 3d 22 6c 65 66 74 43 6c 69 63 6b 22 2f 3e 20 61 6c 6f 6e 65 2e 0d 0a 20 20 20 20 20 20 20 20 2f ="leftClick"/>.alone.........../
aca0 2f 2f 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 65 78 61 6d 70 6c 65 3e 0d 0a 20 20 20 20 20 //..........///.<example>.......
acc0 20 20 20 2f 2f 2f 20 3c 63 6f 64 65 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 76 61 72 20 61 ...///.<code>..........///.var.a
ace0 73 73 65 74 20 3d 20 53 63 72 69 70 74 61 62 6c 65 4f 62 6a 65 63 74 2e 43 72 65 61 74 65 26 6c sset.=.ScriptableObject.Create&l
ad00 74 3b 49 6e 70 75 74 41 63 74 69 6f 6e 41 73 73 65 74 26 67 74 3b 28 29 3b 0d 0a 20 20 20 20 20 t;InputActionAsset&gt;();.......
ad20 20 20 20 2f 2f 2f 20 76 61 72 20 6d 61 70 20 3d 20 61 73 73 65 74 2e 41 64 64 41 63 74 69 6f 6e ...///.var.map.=.asset.AddAction
ad40 4d 61 70 28 22 55 49 22 29 3b 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 76 61 72 20 70 6f 69 6e Map("UI");..........///.var.poin
ad60 74 41 63 74 69 6f 6e 20 3d 20 6d 61 70 2e 41 64 64 41 63 74 69 6f 6e 28 22 73 63 72 6f 6c 6c 22 tAction.=.map.AddAction("scroll"
ad80 29 3b 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 76 61 72 20 6c 65 66 74 43 6c 69 63 6b 41 63 74 );..........///.var.leftClickAct
ada0 69 6f 6e 20 3d 20 6d 61 70 2e 41 64 64 41 63 74 69 6f 6e 28 22 6c 65 66 74 43 6c 69 63 6b 22 29 ion.=.map.AddAction("leftClick")
adc0 3b 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 76 61 72 20 72 69 67 68 74 43 6c 69 63 6b 41 63 74 ;..........///.var.rightClickAct
ade0 69 6f 6e 20 3d 20 6d 61 70 2e 41 64 64 41 63 74 69 6f 6e 28 22 72 69 67 68 74 43 6c 69 63 6b 22 ion.=.map.AddAction("rightClick"
ae00 29 3b 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 70 6f 69 );..........///..........///.poi
ae20 6e 74 41 63 74 69 6f 6e 2e 41 64 64 42 69 6e 64 69 6e 67 28 22 26 6c 74 3b 4d 6f 75 73 65 26 67 ntAction.AddBinding("&lt;Mouse&g
ae40 74 3b 2f 70 6f 73 69 74 69 6f 6e 22 29 3b 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 70 6f 69 6e t;/position");..........///.poin
ae60 74 41 63 74 69 6f 6e 2e 41 64 64 42 69 6e 64 69 6e 67 28 22 26 6c 74 3b 54 6f 75 63 68 73 63 72 tAction.AddBinding("&lt;Touchscr
ae80 65 65 6e 26 67 74 3b 2f 74 6f 75 63 68 2a 2f 70 6f 73 69 74 69 6f 6e 22 29 3b 0d 0a 20 20 20 20 een&gt;/touch*/position");......
aea0 20 20 20 20 2f 2f 2f 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 6c 65 66 74 43 6c 69 63 6b 41 63 ....///..........///.leftClickAc
aec0 74 69 6f 6e 2e 41 64 64 42 69 6e 64 69 6e 67 28 22 26 6c 74 3b 4d 6f 75 73 65 26 67 74 3b 2f 6c tion.AddBinding("&lt;Mouse&gt;/l
aee0 65 66 74 42 75 74 74 6f 6e 22 29 3b 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 6c 65 66 74 43 6c eftButton");..........///.leftCl
af00 69 63 6b 41 63 74 69 6f 6e 2e 41 64 64 42 69 6e 64 69 6e 67 28 22 26 6c 74 3b 54 6f 75 63 68 73 ickAction.AddBinding("&lt;Touchs
af20 63 72 65 65 6e 26 67 74 3b 2f 74 6f 75 63 68 2a 2f 70 72 65 73 73 22 29 3b 0d 0a 20 20 20 20 20 creen&gt;/touch*/press");.......
af40 20 20 20 2f 2f 2f 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 72 69 67 68 74 43 6c 69 63 6b 41 63 ...///..........///.rightClickAc
af60 74 69 6f 6e 2e 41 64 64 42 69 6e 64 69 6e 67 28 22 26 6c 74 3b 4d 6f 75 73 65 26 67 74 3b 2f 72 tion.AddBinding("&lt;Mouse&gt;/r
af80 69 67 68 74 42 75 74 74 6f 6e 22 29 3b 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 0d 0a 20 20 20 20 ightButton");..........///......
afa0 20 20 20 20 2f 2f 2f 20 28 28 49 6e 70 75 74 53 79 73 74 65 6d 55 49 49 6e 70 75 74 4d 6f 64 75 ....///.((InputSystemUIInputModu
afc0 6c 65 29 45 76 65 6e 74 53 79 73 74 65 6d 2e 63 75 72 72 65 6e 74 2e 63 75 72 72 65 6e 74 49 6e le)EventSystem.current.currentIn
afe0 70 75 74 4d 6f 64 75 6c 65 29 2e 70 6f 69 6e 74 20 3d 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 putModule).point.=..........///.
b000 20 20 20 20 49 6e 70 75 74 41 63 74 69 6f 6e 52 65 66 65 72 65 6e 63 65 2e 43 72 65 61 74 65 28 ....InputActionReference.Create(
b020 70 6f 69 6e 74 41 63 74 69 6f 6e 29 3b 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 28 28 49 6e 70 pointAction);..........///.((Inp
b040 75 74 53 79 73 74 65 6d 55 49 49 6e 70 75 74 4d 6f 64 75 6c 65 29 45 76 65 6e 74 53 79 73 74 65 utSystemUIInputModule)EventSyste
b060 6d 2e 63 75 72 72 65 6e 74 2e 63 75 72 72 65 6e 74 49 6e 70 75 74 4d 6f 64 75 6c 65 29 2e 6c 65 m.current.currentInputModule).le
b080 66 74 43 6c 69 63 6b 20 3d 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 20 20 20 20 49 6e 70 75 74 ftClick.=..........///.....Input
b0a0 41 63 74 69 6f 6e 52 65 66 65 72 65 6e 63 65 2e 43 72 65 61 74 65 28 6c 65 66 74 43 6c 69 63 6b ActionReference.Create(leftClick
b0c0 41 63 74 69 6f 6e 29 3b 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 28 28 49 6e 70 75 74 53 79 73 Action);..........///.((InputSys
b0e0 74 65 6d 55 49 49 6e 70 75 74 4d 6f 64 75 6c 65 29 45 76 65 6e 74 53 79 73 74 65 6d 2e 63 75 72 temUIInputModule)EventSystem.cur
b100 72 65 6e 74 2e 63 75 72 72 65 6e 74 49 6e 70 75 74 4d 6f 64 75 6c 65 29 2e 72 69 67 68 74 43 6c rent.currentInputModule).rightCl
b120 69 63 6b 20 3d 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 20 20 20 20 49 6e 70 75 74 41 63 74 69 ick.=..........///.....InputActi
b140 6f 6e 52 65 66 65 72 65 6e 63 65 2e 43 72 65 61 74 65 28 72 69 67 68 74 43 6c 69 63 6b 41 63 74 onReference.Create(rightClickAct
b160 69 6f 6e 29 3b 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 2f 63 6f 64 65 3e 0d 0a 20 20 20 20 ion);..........///.</code>......
b180 20 20 20 20 2f 2f 2f 20 3c 2f 65 78 61 6d 70 6c 65 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 ....///.</example>..........///.
b1a0 3c 2f 72 65 6d 61 72 6b 73 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 73 65 65 61 6c 73 6f </remarks>..........///.<seealso
b1c0 20 63 72 65 66 3d 22 6c 65 66 74 43 6c 69 63 6b 22 2f 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f .cref="leftClick"/>..........///
b1e0 20 3c 73 65 65 61 6c 73 6f 20 63 72 65 66 3d 22 6d 69 64 64 6c 65 43 6c 69 63 6b 22 2f 3e 0d 0a .<seealso.cref="middleClick"/>..
b200 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 73 65 65 61 6c 73 6f 20 63 72 65 66 3d 22 73 63 72 6f 6c ........///.<seealso.cref="scrol
b220 6c 57 68 65 65 6c 22 2f 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 73 65 65 61 6c 73 6f 20 lWheel"/>..........///.<seealso.
b240 63 72 65 66 3d 22 70 6f 69 6e 74 22 2f 3e 0d 0a 20 20 20 20 20 20 20 20 70 75 62 6c 69 63 20 49 cref="point"/>..........public.I
b260 6e 70 75 74 41 63 74 69 6f 6e 52 65 66 65 72 65 6e 63 65 20 72 69 67 68 74 43 6c 69 63 6b 0d 0a nputActionReference.rightClick..
b280 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 67 65 74 20 3d 3e 20 6d 5f ........{..............get.=>.m_
b2a0 52 69 67 68 74 43 6c 69 63 6b 41 63 74 69 6f 6e 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 RightClickAction;..............s
b2c0 65 74 20 3d 3e 20 53 77 61 70 41 63 74 69 6f 6e 28 72 65 66 20 6d 5f 52 69 67 68 74 43 6c 69 63 et.=>.SwapAction(ref.m_RightClic
b2e0 6b 41 63 74 69 6f 6e 2c 20 76 61 6c 75 65 2c 20 6d 5f 41 63 74 69 6f 6e 73 48 6f 6f 6b 65 64 2c kAction,.value,.m_ActionsHooked,
b300 20 6d 5f 4f 6e 52 69 67 68 74 43 6c 69 63 6b 44 65 6c 65 67 61 74 65 29 3b 0d 0a 20 20 20 20 20 .m_OnRightClickDelegate);.......
b320 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 73 75 6d 6d 61 72 79 3e 0d 0a 20 ...}............///.<summary>...
b340 20 20 20 20 20 20 20 2f 2f 2f 20 41 6e 20 3c 73 65 65 20 63 72 65 66 3d 22 49 6e 70 75 74 41 63 .......///.An.<see.cref="InputAc
b360 74 69 6f 6e 22 2f 3e 20 64 65 6c 69 76 65 72 69 6e 67 20 61 20 3c 63 3e 56 65 63 74 6f 72 32 3c tion"/>.delivering.a.<c>Vector2<
b380 2f 63 3e 20 32 44 20 6d 6f 74 69 6f 6e 20 76 65 63 74 6f 72 0d 0a 20 20 20 20 20 20 20 20 2f 2f /c>.2D.motion.vector..........//
b3a0 2f 20 75 73 65 64 20 66 6f 72 20 73 65 6e 64 69 6e 67 20 3c 73 65 65 20 63 72 65 66 3d 22 41 78 /.used.for.sending.<see.cref="Ax
b3c0 69 73 45 76 65 6e 74 44 61 74 61 22 2f 3e 20 6e 61 76 69 67 61 74 69 6f 6e 20 65 76 65 6e 74 73 isEventData"/>.navigation.events
b3e0 2e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 2f 73 75 6d 6d 61 72 79 3e 0d 0a 20 20 20 20 20 ...........///.</summary>.......
b400 20 20 20 2f 2f 2f 20 3c 72 65 6d 61 72 6b 73 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 54 68 ...///.<remarks>..........///.Th
b420 65 20 65 76 65 6e 74 73 20 67 65 6e 65 72 61 74 65 64 20 66 72 6f 6d 20 74 68 69 73 20 69 6e 70 e.events.generated.from.this.inp
b440 75 74 20 77 69 6c 6c 20 62 65 20 72 65 63 65 69 76 65 64 20 62 79 20 3c 73 65 65 20 63 72 65 66 ut.will.be.received.by.<see.cref
b460 3d 22 49 4d 6f 76 65 48 61 6e 64 6c 65 72 2e 4f 6e 4d 6f 76 65 22 2f 3e 2e 0d 0a 20 20 20 20 20 ="IMoveHandler.OnMove"/>........
b480 20 20 20 2f 2f 2f 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 54 68 69 73 20 61 63 74 69 6f 6e 20 ...///..........///.This.action.
b4a0 74 6f 67 65 74 68 65 72 20 77 69 74 68 20 3c 73 65 65 20 63 72 65 66 3d 22 73 75 62 6d 69 74 22 together.with.<see.cref="submit"
b4c0 2f 3e 20 61 6e 64 20 3c 73 65 65 20 63 72 65 66 3d 22 63 61 6e 63 65 6c 22 2f 3e 20 66 6f 72 6d />.and.<see.cref="cancel"/>.form
b4e0 20 74 68 65 20 73 6f 75 72 63 65 73 20 66 6f 72 20 6e 61 76 69 67 61 74 69 6f 6e 2d 73 74 79 6c .the.sources.for.navigation-styl
b500 65 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 55 49 20 69 6e 70 75 74 2e 0d 0a 20 20 20 20 20 20 e..........///.UI.input.........
b520 20 20 2f 2f 2f 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 65 78 61 6d 70 6c 65 3e 0d 0a 20 20 ..///..........///.<example>....
b540 20 20 20 20 20 20 2f 2f 2f 20 3c 63 6f 64 65 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 76 61 ......///.<code>..........///.va
b560 72 20 61 73 73 65 74 20 3d 20 53 63 72 69 70 74 61 62 6c 65 4f 62 6a 65 63 74 2e 43 72 65 61 74 r.asset.=.ScriptableObject.Creat
b580 65 26 6c 74 3b 49 6e 70 75 74 41 63 74 69 6f 6e 41 73 73 65 74 26 67 74 3b 28 29 3b 0d 0a 20 20 e&lt;InputActionAsset&gt;();....
b5a0 20 20 20 20 20 20 2f 2f 2f 20 76 61 72 20 6d 61 70 20 3d 20 61 73 73 65 74 2e 41 64 64 41 63 74 ......///.var.map.=.asset.AddAct
b5c0 69 6f 6e 4d 61 70 28 22 55 49 22 29 3b 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 76 61 72 20 70 ionMap("UI");..........///.var.p
b5e0 6f 69 6e 74 41 63 74 69 6f 6e 20 3d 20 6d 61 70 2e 41 64 64 41 63 74 69 6f 6e 28 22 6d 6f 76 65 ointAction.=.map.AddAction("move
b600 22 29 3b 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 76 61 72 20 73 75 62 6d 69 74 41 63 74 69 6f ");..........///.var.submitActio
b620 6e 20 3d 20 6d 61 70 2e 41 64 64 41 63 74 69 6f 6e 28 22 73 75 62 6d 69 74 22 29 3b 0d 0a 20 20 n.=.map.AddAction("submit");....
b640 20 20 20 20 20 20 2f 2f 2f 20 76 61 72 20 63 61 6e 63 65 6c 41 63 74 69 6f 6e 20 3d 20 6d 61 70 ......///.var.cancelAction.=.map
b660 2e 41 64 64 41 63 74 69 6f 6e 28 22 63 61 6e 63 65 6c 22 29 3b 0d 0a 20 20 20 20 20 20 20 20 2f .AddAction("cancel");........../
b680 2f 2f 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 6d 6f 76 65 41 63 74 69 6f 6e 2e 41 64 64 42 69 //..........///.moveAction.AddBi
b6a0 6e 64 69 6e 67 28 22 26 6c 74 3b 47 61 6d 65 70 61 64 26 67 74 3b 2f 2a 73 74 69 63 6b 22 29 3b nding("&lt;Gamepad&gt;/*stick");
b6c0 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 6d 6f 76 65 41 63 74 69 6f 6e 2e 41 64 64 42 69 6e 64 ..........///.moveAction.AddBind
b6e0 69 6e 67 28 22 26 6c 74 3b 47 61 6d 65 70 61 64 26 67 74 3b 2f 64 70 61 64 22 29 3b 0d 0a 20 20 ing("&lt;Gamepad&gt;/dpad");....
b700 20 20 20 20 20 20 2f 2f 2f 20 73 75 62 6d 69 74 41 63 74 69 6f 6e 2e 41 64 64 42 69 6e 64 69 6e ......///.submitAction.AddBindin
b720 67 28 22 26 6c 74 3b 47 61 6d 65 70 61 64 26 67 74 3b 2f 62 75 74 74 6f 6e 53 6f 75 74 68 22 29 g("&lt;Gamepad&gt;/buttonSouth")
b740 3b 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 63 61 6e 63 65 6c 41 63 74 69 6f 6e 2e 41 64 64 42 ;..........///.cancelAction.AddB
b760 69 6e 64 69 6e 67 28 22 26 6c 74 3b 47 61 6d 65 70 61 64 26 67 74 3b 2f 62 75 74 74 6f 6e 45 61 inding("&lt;Gamepad&gt;/buttonEa
b780 73 74 22 29 3b 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 st");..........///..........///.
b7a0 28 28 49 6e 70 75 74 53 79 73 74 65 6d 55 49 49 6e 70 75 74 4d 6f 64 75 6c 65 29 45 76 65 6e 74 ((InputSystemUIInputModule)Event
b7c0 53 79 73 74 65 6d 2e 63 75 72 72 65 6e 74 2e 63 75 72 72 65 6e 74 49 6e 70 75 74 4d 6f 64 75 6c System.current.currentInputModul
b7e0 65 29 2e 6d 6f 76 65 20 3d 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 20 20 20 20 49 6e 70 75 74 e).move.=..........///.....Input
b800 41 63 74 69 6f 6e 52 65 66 65 72 65 6e 63 65 2e 43 72 65 61 74 65 28 6d 6f 76 65 41 63 74 69 6f ActionReference.Create(moveActio
b820 6e 29 3b 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 28 28 49 6e 70 75 74 53 79 73 74 65 6d 55 49 n);..........///.((InputSystemUI
b840 49 6e 70 75 74 4d 6f 64 75 6c 65 29 45 76 65 6e 74 53 79 73 74 65 6d 2e 63 75 72 72 65 6e 74 2e InputModule)EventSystem.current.
b860 63 75 72 72 65 6e 74 49 6e 70 75 74 4d 6f 64 75 6c 65 29 2e 73 75 62 6d 69 74 20 3d 0d 0a 20 20 currentInputModule).submit.=....
b880 20 20 20 20 20 20 2f 2f 2f 20 20 20 20 20 49 6e 70 75 74 41 63 74 69 6f 6e 52 65 66 65 72 65 6e ......///.....InputActionReferen
b8a0 63 65 2e 43 72 65 61 74 65 28 73 75 62 6d 69 74 41 63 74 69 6f 6e 29 3b 0d 0a 20 20 20 20 20 20 ce.Create(submitAction);........
b8c0 20 20 2f 2f 2f 20 28 28 49 6e 70 75 74 53 79 73 74 65 6d 55 49 49 6e 70 75 74 4d 6f 64 75 6c 65 ..///.((InputSystemUIInputModule
b8e0 29 45 76 65 6e 74 53 79 73 74 65 6d 2e 63 75 72 72 65 6e 74 2e 63 75 72 72 65 6e 74 49 6e 70 75 )EventSystem.current.currentInpu
b900 74 4d 6f 64 75 6c 65 29 2e 63 61 6e 63 65 6c 41 63 74 69 6f 6e 20 3d 0d 0a 20 20 20 20 20 20 20 tModule).cancelAction.=.........
b920 20 2f 2f 2f 20 20 20 20 20 49 6e 70 75 74 41 63 74 69 6f 6e 52 65 66 65 72 65 6e 63 65 2e 43 72 .///.....InputActionReference.Cr
b940 65 61 74 65 28 63 61 6e 63 65 6c 41 63 74 69 6f 6e 29 3b 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f eate(cancelAction);..........///
b960 20 3c 2f 63 6f 64 65 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 2f 65 78 61 6d 70 6c 65 3e .</code>..........///.</example>
b980 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 2f 72 65 6d 61 72 6b 73 3e 0d 0a 20 20 20 20 20 20 ..........///.</remarks>........
b9a0 20 20 2f 2f 2f 20 3c 73 65 65 61 6c 73 6f 20 63 72 65 66 3d 22 73 75 62 6d 69 74 22 2f 3e 0d 0a ..///.<seealso.cref="submit"/>..
b9c0 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 73 65 65 61 6c 73 6f 20 63 72 65 66 3d 22 63 61 6e 63 65 ........///.<seealso.cref="cance
b9e0 6c 22 2f 3e 0d 0a 20 20 20 20 20 20 20 20 70 75 62 6c 69 63 20 49 6e 70 75 74 41 63 74 69 6f 6e l"/>..........public.InputAction
ba00 52 65 66 65 72 65 6e 63 65 20 6d 6f 76 65 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 Reference.move..........{.......
ba20 20 20 20 20 20 20 20 67 65 74 20 3d 3e 20 6d 5f 4d 6f 76 65 41 63 74 69 6f 6e 3b 0d 0a 20 20 20 .......get.=>.m_MoveAction;.....
ba40 20 20 20 20 20 20 20 20 20 73 65 74 20 3d 3e 20 53 77 61 70 41 63 74 69 6f 6e 28 72 65 66 20 6d .........set.=>.SwapAction(ref.m
ba60 5f 4d 6f 76 65 41 63 74 69 6f 6e 2c 20 76 61 6c 75 65 2c 20 6d 5f 41 63 74 69 6f 6e 73 48 6f 6f _MoveAction,.value,.m_ActionsHoo
ba80 6b 65 64 2c 20 6d 5f 4f 6e 4d 6f 76 65 44 65 6c 65 67 61 74 65 29 3b 0d 0a 20 20 20 20 20 20 20 ked,.m_OnMoveDelegate);.........
baa0 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 73 75 6d 6d 61 72 79 3e 0d 0a 20 20 20 .}............///.<summary>.....
bac0 20 20 20 20 20 2f 2f 2f 20 41 6e 20 3c 73 65 65 20 63 72 65 66 3d 22 49 6e 70 75 74 41 63 74 69 .....///.An.<see.cref="InputActi
bae0 6f 6e 22 2f 3e 20 64 65 6c 69 76 65 72 69 6e 67 20 61 20 3c 63 3e 66 6c 6f 61 74 3c 2f 63 3e 20 on"/>.delivering.a.<c>float</c>.
bb00 62 75 74 74 6f 6e 20 76 61 6c 75 65 20 74 68 61 74 20 64 65 74 65 72 6d 69 6e 65 73 20 77 68 65 button.value.that.determines.whe
bb20 6e 20 3c 63 3e 49 53 75 62 6d 69 74 48 61 6e 64 6c 65 72 3c 2f 63 3e 0d 0a 20 20 20 20 20 20 20 n.<c>ISubmitHandler</c>.........
bb40 20 2f 2f 2f 20 69 73 20 74 72 69 67 67 65 72 65 64 2e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 .///.is.triggered...........///.
bb60 3c 2f 73 75 6d 6d 61 72 79 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 72 65 6d 61 72 6b 73 </summary>..........///.<remarks
bb80 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 54 68 65 20 65 76 65 6e 74 73 20 67 65 6e 65 72 61 >..........///.The.events.genera
bba0 74 65 64 20 66 72 6f 6d 20 74 68 69 73 20 69 6e 70 75 74 20 77 69 6c 6c 20 62 65 20 72 65 63 65 ted.from.this.input.will.be.rece
bbc0 69 76 65 64 20 62 79 20 3c 73 65 65 20 63 72 65 66 3d 22 49 53 75 62 6d 69 74 48 61 6e 64 6c 65 ived.by.<see.cref="ISubmitHandle
bbe0 72 22 2f 3e 2e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 r"/>...........///..........///.
bc00 54 68 69 73 20 61 63 74 69 6f 6e 20 74 6f 67 65 74 68 65 72 20 77 69 74 68 20 3c 73 65 65 20 63 This.action.together.with.<see.c
bc20 72 65 66 3d 22 6d 6f 76 65 22 2f 3e 20 61 6e 64 20 3c 73 65 65 20 63 72 65 66 3d 22 63 61 6e 63 ref="move"/>.and.<see.cref="canc
bc40 65 6c 22 2f 3e 20 66 6f 72 6d 20 74 68 65 20 73 6f 75 72 63 65 73 20 66 6f 72 20 6e 61 76 69 67 el"/>.form.the.sources.for.navig
bc60 61 74 69 6f 6e 2d 73 74 79 6c 65 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 55 49 20 69 6e 70 75 ation-style..........///.UI.inpu
bc80 74 2e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 65 78 t...........///..........///.<ex
bca0 61 6d 70 6c 65 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 63 6f 64 65 3e 0d 0a 20 20 20 20 ample>..........///.<code>......
bcc0 20 20 20 20 2f 2f 2f 20 76 61 72 20 61 73 73 65 74 20 3d 20 53 63 72 69 70 74 61 62 6c 65 4f 62 ....///.var.asset.=.ScriptableOb
bce0 6a 65 63 74 2e 43 72 65 61 74 65 26 6c 74 3b 49 6e 70 75 74 41 63 74 69 6f 6e 41 73 73 65 74 26 ject.Create&lt;InputActionAsset&
bd00 67 74 3b 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 76 61 72 20 6d 61 70 20 3d 20 61 73 gt;();..........///.var.map.=.as
bd20 73 65 74 2e 41 64 64 41 63 74 69 6f 6e 4d 61 70 28 22 55 49 22 29 3b 0d 0a 20 20 20 20 20 20 20 set.AddActionMap("UI");.........
bd40 20 2f 2f 2f 20 76 61 72 20 70 6f 69 6e 74 41 63 74 69 6f 6e 20 3d 20 6d 61 70 2e 41 64 64 41 63 .///.var.pointAction.=.map.AddAc
bd60 74 69 6f 6e 28 22 6d 6f 76 65 22 29 3b 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 76 61 72 20 73 tion("move");..........///.var.s
bd80 75 62 6d 69 74 41 63 74 69 6f 6e 20 3d 20 6d 61 70 2e 41 64 64 41 63 74 69 6f 6e 28 22 73 75 62 ubmitAction.=.map.AddAction("sub
bda0 6d 69 74 22 29 3b 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 76 61 72 20 63 61 6e 63 65 6c 41 63 mit");..........///.var.cancelAc
bdc0 74 69 6f 6e 20 3d 20 6d 61 70 2e 41 64 64 41 63 74 69 6f 6e 28 22 63 61 6e 63 65 6c 22 29 3b 0d tion.=.map.AddAction("cancel");.
bde0 0a 20 20 20 20 20 20 20 20 2f 2f 2f 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 6d 6f 76 65 41 63 .........///..........///.moveAc
be00 74 69 6f 6e 2e 41 64 64 42 69 6e 64 69 6e 67 28 22 26 6c 74 3b 47 61 6d 65 70 61 64 26 67 74 3b tion.AddBinding("&lt;Gamepad&gt;
be20 2f 2a 73 74 69 63 6b 22 29 3b 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 6d 6f 76 65 41 63 74 69 /*stick");..........///.moveActi
be40 6f 6e 2e 41 64 64 42 69 6e 64 69 6e 67 28 22 26 6c 74 3b 47 61 6d 65 70 61 64 26 67 74 3b 2f 64 on.AddBinding("&lt;Gamepad&gt;/d
be60 70 61 64 22 29 3b 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 73 75 62 6d 69 74 41 63 74 69 6f 6e pad");..........///.submitAction
be80 2e 41 64 64 42 69 6e 64 69 6e 67 28 22 26 6c 74 3b 47 61 6d 65 70 61 64 26 67 74 3b 2f 62 75 74 .AddBinding("&lt;Gamepad&gt;/but
bea0 74 6f 6e 53 6f 75 74 68 22 29 3b 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 63 61 6e 63 65 6c 41 tonSouth");..........///.cancelA
bec0 63 74 69 6f 6e 2e 41 64 64 42 69 6e 64 69 6e 67 28 22 26 6c 74 3b 47 61 6d 65 70 61 64 26 67 74 ction.AddBinding("&lt;Gamepad&gt
bee0 3b 2f 62 75 74 74 6f 6e 45 61 73 74 22 29 3b 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 0d 0a 20 20 ;/buttonEast");..........///....
bf00 20 20 20 20 20 20 2f 2f 2f 20 28 28 49 6e 70 75 74 53 79 73 74 65 6d 55 49 49 6e 70 75 74 4d 6f ......///.((InputSystemUIInputMo
bf20 64 75 6c 65 29 45 76 65 6e 74 53 79 73 74 65 6d 2e 63 75 72 72 65 6e 74 2e 63 75 72 72 65 6e 74 dule)EventSystem.current.current
bf40 49 6e 70 75 74 4d 6f 64 75 6c 65 29 2e 6d 6f 76 65 20 3d 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f InputModule).move.=..........///
bf60 20 20 20 20 20 49 6e 70 75 74 41 63 74 69 6f 6e 52 65 66 65 72 65 6e 63 65 2e 43 72 65 61 74 65 .....InputActionReference.Create
bf80 28 6d 6f 76 65 41 63 74 69 6f 6e 29 3b 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 28 28 49 6e 70 (moveAction);..........///.((Inp
bfa0 75 74 53 79 73 74 65 6d 55 49 49 6e 70 75 74 4d 6f 64 75 6c 65 29 45 76 65 6e 74 53 79 73 74 65 utSystemUIInputModule)EventSyste
bfc0 6d 2e 63 75 72 72 65 6e 74 2e 63 75 72 72 65 6e 74 49 6e 70 75 74 4d 6f 64 75 6c 65 29 2e 73 75 m.current.currentInputModule).su
bfe0 62 6d 69 74 20 3d 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 20 20 20 20 49 6e 70 75 74 41 63 74 bmit.=..........///.....InputAct
c000 69 6f 6e 52 65 66 65 72 65 6e 63 65 2e 43 72 65 61 74 65 28 73 75 62 6d 69 74 41 63 74 69 6f 6e ionReference.Create(submitAction
c020 29 3b 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 28 28 49 6e 70 75 74 53 79 73 74 65 6d 55 49 49 );..........///.((InputSystemUII
c040 6e 70 75 74 4d 6f 64 75 6c 65 29 45 76 65 6e 74 53 79 73 74 65 6d 2e 63 75 72 72 65 6e 74 2e 63 nputModule)EventSystem.current.c
c060 75 72 72 65 6e 74 49 6e 70 75 74 4d 6f 64 75 6c 65 29 2e 63 61 6e 63 65 6c 41 63 74 69 6f 6e 20 urrentInputModule).cancelAction.
c080 3d 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 20 20 20 20 49 6e 70 75 74 41 63 74 69 6f 6e 52 65 =..........///.....InputActionRe
c0a0 66 65 72 65 6e 63 65 2e 43 72 65 61 74 65 28 63 61 6e 63 65 6c 41 63 74 69 6f 6e 29 3b 0d 0a 20 ference.Create(cancelAction);...
c0c0 20 20 20 20 20 20 20 2f 2f 2f 20 3c 2f 63 6f 64 65 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 .......///.</code>..........///.
c0e0 3c 2f 65 78 61 6d 70 6c 65 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 2f 72 65 6d 61 72 6b </example>..........///.</remark
c100 73 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 73 65 65 61 6c 73 6f 20 63 72 65 66 3d 22 6d s>..........///.<seealso.cref="m
c120 6f 76 65 22 2f 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 73 65 65 61 6c 73 6f 20 63 72 65 ove"/>..........///.<seealso.cre
c140 66 3d 22 63 61 6e 63 65 6c 22 2f 3e 0d 0a 20 20 20 20 20 20 20 20 70 75 62 6c 69 63 20 49 6e 70 f="cancel"/>..........public.Inp
c160 75 74 41 63 74 69 6f 6e 52 65 66 65 72 65 6e 63 65 20 73 75 62 6d 69 74 0d 0a 20 20 20 20 20 20 utActionReference.submit........
c180 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 67 65 74 20 3d 3e 20 6d 5f 53 75 62 6d 69 74 ..{..............get.=>.m_Submit
c1a0 41 63 74 69 6f 6e 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 65 74 20 3d 3e 20 53 77 61 70 Action;..............set.=>.Swap
c1c0 41 63 74 69 6f 6e 28 72 65 66 20 6d 5f 53 75 62 6d 69 74 41 63 74 69 6f 6e 2c 20 76 61 6c 75 65 Action(ref.m_SubmitAction,.value
c1e0 2c 20 6d 5f 41 63 74 69 6f 6e 73 48 6f 6f 6b 65 64 2c 20 6d 5f 4f 6e 53 75 62 6d 69 74 44 65 6c ,.m_ActionsHooked,.m_OnSubmitDel
c200 65 67 61 74 65 29 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 2f 2f egate);..........}............//
c220 2f 20 3c 73 75 6d 6d 61 72 79 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 41 6e 20 3c 73 65 65 /.<summary>..........///.An.<see
c240 20 63 72 65 66 3d 22 49 6e 70 75 74 41 63 74 69 6f 6e 22 2f 3e 20 64 65 6c 69 76 65 72 69 6e 67 .cref="InputAction"/>.delivering
c260 20 61 20 3c 63 3e 66 6c 6f 61 74 3c 2f 63 3e 20 62 75 74 74 6f 6e 20 76 61 6c 75 65 20 74 68 61 .a.<c>float</c>.button.value.tha
c280 74 20 64 65 74 65 72 6d 69 6e 65 73 20 77 68 65 6e 20 3c 63 3e 49 43 61 6e 63 65 6c 48 61 6e 64 t.determines.when.<c>ICancelHand
c2a0 6c 65 72 3c 2f 63 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 69 73 20 74 72 69 67 67 65 72 65 ler</c>..........///.is.triggere
c2c0 64 2e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 2f 73 75 6d 6d 61 72 79 3e 0d 0a 20 20 20 20 d...........///.</summary>......
c2e0 20 20 20 20 2f 2f 2f 20 3c 72 65 6d 61 72 6b 73 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 54 ....///.<remarks>..........///.T
c300 68 65 20 65 76 65 6e 74 73 20 67 65 6e 65 72 61 74 65 64 20 66 72 6f 6d 20 74 68 69 73 20 69 6e he.events.generated.from.this.in
c320 70 75 74 20 77 69 6c 6c 20 62 65 20 72 65 63 65 69 76 65 64 20 62 79 20 3c 73 65 65 20 63 72 65 put.will.be.received.by.<see.cre
c340 66 3d 22 49 43 61 6e 63 65 6c 48 61 6e 64 6c 65 72 22 2f 3e 2e 0d 0a 20 20 20 20 20 20 20 20 2f f="ICancelHandler"/>.........../
c360 2f 2f 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 54 68 69 73 20 61 63 74 69 6f 6e 20 74 6f 67 65 //..........///.This.action.toge
c380 74 68 65 72 20 77 69 74 68 20 3c 73 65 65 20 63 72 65 66 3d 22 6d 6f 76 65 22 2f 3e 20 61 6e 64 ther.with.<see.cref="move"/>.and
c3a0 20 3c 73 65 65 20 63 72 65 66 3d 22 73 75 62 6d 69 74 22 2f 3e 20 66 6f 72 6d 20 74 68 65 20 73 .<see.cref="submit"/>.form.the.s
c3c0 6f 75 72 63 65 73 20 66 6f 72 20 6e 61 76 69 67 61 74 69 6f 6e 2d 73 74 79 6c 65 0d 0a 20 20 20 ources.for.navigation-style.....
c3e0 20 20 20 20 20 2f 2f 2f 20 55 49 20 69 6e 70 75 74 2e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 0d .....///.UI.input...........///.
c400 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 65 78 61 6d 70 6c 65 3e 0d 0a 20 20 20 20 20 20 20 20 .........///.<example>..........
c420 2f 2f 2f 20 3c 63 6f 64 65 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 76 61 72 20 61 73 73 65 ///.<code>..........///.var.asse
c440 74 20 3d 20 53 63 72 69 70 74 61 62 6c 65 4f 62 6a 65 63 74 2e 43 72 65 61 74 65 26 6c 74 3b 49 t.=.ScriptableObject.Create&lt;I
c460 6e 70 75 74 41 63 74 69 6f 6e 41 73 73 65 74 26 67 74 3b 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 nputActionAsset&gt;();..........
c480 2f 2f 2f 20 76 61 72 20 6d 61 70 20 3d 20 61 73 73 65 74 2e 41 64 64 41 63 74 69 6f 6e 4d 61 70 ///.var.map.=.asset.AddActionMap
c4a0 28 22 55 49 22 29 3b 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 76 61 72 20 70 6f 69 6e 74 41 63 ("UI");..........///.var.pointAc
c4c0 74 69 6f 6e 20 3d 20 6d 61 70 2e 41 64 64 41 63 74 69 6f 6e 28 22 6d 6f 76 65 22 29 3b 0d 0a 20 tion.=.map.AddAction("move");...
c4e0 20 20 20 20 20 20 20 2f 2f 2f 20 76 61 72 20 73 75 62 6d 69 74 41 63 74 69 6f 6e 20 3d 20 6d 61 .......///.var.submitAction.=.ma
c500 70 2e 41 64 64 41 63 74 69 6f 6e 28 22 73 75 62 6d 69 74 22 29 3b 0d 0a 20 20 20 20 20 20 20 20 p.AddAction("submit");..........
c520 2f 2f 2f 20 76 61 72 20 63 61 6e 63 65 6c 41 63 74 69 6f 6e 20 3d 20 6d 61 70 2e 41 64 64 41 63 ///.var.cancelAction.=.map.AddAc
c540 74 69 6f 6e 28 22 63 61 6e 63 65 6c 22 29 3b 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 0d 0a 20 20 tion("cancel");..........///....
c560 20 20 20 20 20 20 2f 2f 2f 20 6d 6f 76 65 41 63 74 69 6f 6e 2e 41 64 64 42 69 6e 64 69 6e 67 28 ......///.moveAction.AddBinding(
c580 22 26 6c 74 3b 47 61 6d 65 70 61 64 26 67 74 3b 2f 2a 73 74 69 63 6b 22 29 3b 0d 0a 20 20 20 20 "&lt;Gamepad&gt;/*stick");......
c5a0 20 20 20 20 2f 2f 2f 20 6d 6f 76 65 41 63 74 69 6f 6e 2e 41 64 64 42 69 6e 64 69 6e 67 28 22 26 ....///.moveAction.AddBinding("&
c5c0 6c 74 3b 47 61 6d 65 70 61 64 26 67 74 3b 2f 64 70 61 64 22 29 3b 0d 0a 20 20 20 20 20 20 20 20 lt;Gamepad&gt;/dpad");..........
c5e0 2f 2f 2f 20 73 75 62 6d 69 74 41 63 74 69 6f 6e 2e 41 64 64 42 69 6e 64 69 6e 67 28 22 26 6c 74 ///.submitAction.AddBinding("&lt
c600 3b 47 61 6d 65 70 61 64 26 67 74 3b 2f 62 75 74 74 6f 6e 53 6f 75 74 68 22 29 3b 0d 0a 20 20 20 ;Gamepad&gt;/buttonSouth");.....
c620 20 20 20 20 20 2f 2f 2f 20 63 61 6e 63 65 6c 41 63 74 69 6f 6e 2e 41 64 64 42 69 6e 64 69 6e 67 .....///.cancelAction.AddBinding
c640 28 22 26 6c 74 3b 47 61 6d 65 70 61 64 26 67 74 3b 2f 62 75 74 74 6f 6e 45 61 73 74 22 29 3b 0d ("&lt;Gamepad&gt;/buttonEast");.
c660 0a 20 20 20 20 20 20 20 20 2f 2f 2f 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 28 28 49 6e 70 75 .........///..........///.((Inpu
c680 74 53 79 73 74 65 6d 55 49 49 6e 70 75 74 4d 6f 64 75 6c 65 29 45 76 65 6e 74 53 79 73 74 65 6d tSystemUIInputModule)EventSystem
c6a0 2e 63 75 72 72 65 6e 74 2e 63 75 72 72 65 6e 74 49 6e 70 75 74 4d 6f 64 75 6c 65 29 2e 6d 6f 76 .current.currentInputModule).mov
c6c0 65 20 3d 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 20 20 20 20 49 6e 70 75 74 41 63 74 69 6f 6e e.=..........///.....InputAction
c6e0 52 65 66 65 72 65 6e 63 65 2e 43 72 65 61 74 65 28 6d 6f 76 65 41 63 74 69 6f 6e 29 3b 0d 0a 20 Reference.Create(moveAction);...
c700 20 20 20 20 20 20 20 2f 2f 2f 20 28 28 49 6e 70 75 74 53 79 73 74 65 6d 55 49 49 6e 70 75 74 4d .......///.((InputSystemUIInputM
c720 6f 64 75 6c 65 29 45 76 65 6e 74 53 79 73 74 65 6d 2e 63 75 72 72 65 6e 74 2e 63 75 72 72 65 6e odule)EventSystem.current.curren
c740 74 49 6e 70 75 74 4d 6f 64 75 6c 65 29 2e 73 75 62 6d 69 74 20 3d 0d 0a 20 20 20 20 20 20 20 20 tInputModule).submit.=..........
c760 2f 2f 2f 20 20 20 20 20 49 6e 70 75 74 41 63 74 69 6f 6e 52 65 66 65 72 65 6e 63 65 2e 43 72 65 ///.....InputActionReference.Cre
c780 61 74 65 28 73 75 62 6d 69 74 41 63 74 69 6f 6e 29 3b 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 ate(submitAction);..........///.
c7a0 28 28 49 6e 70 75 74 53 79 73 74 65 6d 55 49 49 6e 70 75 74 4d 6f 64 75 6c 65 29 45 76 65 6e 74 ((InputSystemUIInputModule)Event
c7c0 53 79 73 74 65 6d 2e 63 75 72 72 65 6e 74 2e 63 75 72 72 65 6e 74 49 6e 70 75 74 4d 6f 64 75 6c System.current.currentInputModul
c7e0 65 29 2e 63 61 6e 63 65 6c 41 63 74 69 6f 6e 20 3d 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 20 e).cancelAction.=..........///..
c800 20 20 20 49 6e 70 75 74 41 63 74 69 6f 6e 52 65 66 65 72 65 6e 63 65 2e 43 72 65 61 74 65 28 63 ...InputActionReference.Create(c
c820 61 6e 63 65 6c 41 63 74 69 6f 6e 29 3b 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 2f 63 6f 64 ancelAction);..........///.</cod
c840 65 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 2f 65 78 61 6d 70 6c 65 3e 0d 0a 20 20 20 20 e>..........///.</example>......
c860 20 20 20 20 2f 2f 2f 20 3c 2f 72 65 6d 61 72 6b 73 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 ....///.</remarks>..........///.
c880 3c 73 65 65 61 6c 73 6f 20 63 72 65 66 3d 22 6d 6f 76 65 22 2f 3e 0d 0a 20 20 20 20 20 20 20 20 <seealso.cref="move"/>..........
c8a0 2f 2f 2f 20 3c 73 65 65 61 6c 73 6f 20 63 72 65 66 3d 22 73 75 62 6d 69 74 22 2f 3e 0d 0a 20 20 ///.<seealso.cref="submit"/>....
c8c0 20 20 20 20 20 20 70 75 62 6c 69 63 20 49 6e 70 75 74 41 63 74 69 6f 6e 52 65 66 65 72 65 6e 63 ......public.InputActionReferenc
c8e0 65 20 63 61 6e 63 65 6c 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 e.cancel..........{.............
c900 20 67 65 74 20 3d 3e 20 6d 5f 43 61 6e 63 65 6c 41 63 74 69 6f 6e 3b 0d 0a 20 20 20 20 20 20 20 .get.=>.m_CancelAction;.........
c920 20 20 20 20 20 73 65 74 20 3d 3e 20 53 77 61 70 41 63 74 69 6f 6e 28 72 65 66 20 6d 5f 43 61 6e .....set.=>.SwapAction(ref.m_Can
c940 63 65 6c 41 63 74 69 6f 6e 2c 20 76 61 6c 75 65 2c 20 6d 5f 41 63 74 69 6f 6e 73 48 6f 6f 6b 65 celAction,.value,.m_ActionsHooke
c960 64 2c 20 6d 5f 4f 6e 43 61 6e 63 65 6c 44 65 6c 65 67 61 74 65 29 3b 0d 0a 20 20 20 20 20 20 20 d,.m_OnCancelDelegate);.........
c980 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 73 75 6d 6d 61 72 79 3e 0d 0a 20 20 20 .}............///.<summary>.....
c9a0 20 20 20 20 20 2f 2f 2f 20 41 6e 20 3c 73 65 65 20 63 72 65 66 3d 22 49 6e 70 75 74 41 63 74 69 .....///.An.<see.cref="InputActi
c9c0 6f 6e 22 2f 3e 20 64 65 6c 69 76 65 72 69 6e 67 20 61 20 3c 63 3e 51 75 61 74 65 72 6e 69 6f 6e on"/>.delivering.a.<c>Quaternion
c9e0 3c 2f 63 3e 20 76 61 6c 75 65 20 72 65 66 6c 65 63 74 69 6e 67 20 74 68 65 20 6f 72 69 65 6e 74 </c>.value.reflecting.the.orient
ca00 61 74 69 6f 6e 20 6f 66 20 3c 73 65 65 20 63 72 65 66 3d 22 54 72 61 63 6b 65 64 44 65 76 69 63 ation.of.<see.cref="TrackedDevic
ca20 65 22 2f 3e 73 2e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 49 6e 20 63 6f 6d 62 69 6e 61 74 69 e"/>s...........///.In.combinati
ca40 6f 6e 20 77 69 74 68 20 3c 73 65 65 20 63 72 65 66 3d 22 74 72 61 63 6b 65 64 44 65 76 69 63 65 on.with.<see.cref="trackedDevice
ca60 50 6f 73 69 74 69 6f 6e 22 2f 3e 2c 20 74 68 69 73 20 69 73 20 75 73 65 64 20 74 6f 20 64 65 74 Position"/>,.this.is.used.to.det
ca80 65 72 6d 69 6e 65 20 74 68 65 20 74 72 61 6e 73 66 6f 72 6d 20 6f 66 20 74 72 61 63 6b 65 64 20 ermine.the.transform.of.tracked.
caa0 64 65 76 69 63 65 73 20 66 72 6f 6d 20 77 68 69 63 68 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 devices.from.which..........///.
cac0 74 6f 20 72 61 79 63 61 73 74 20 69 6e 74 6f 20 74 68 65 20 55 49 20 73 63 65 6e 65 2e 0d 0a 20 to.raycast.into.the.UI.scene....
cae0 20 20 20 20 20 20 20 2f 2f 2f 20 3c 2f 73 75 6d 6d 61 72 79 3e 0d 0a 20 20 20 20 20 20 20 20 2f .......///.</summary>........../
cb00 2f 2f 20 3c 72 65 6d 61 72 6b 73 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 73 65 65 20 63 //.<remarks>..........///.<see.c
cb20 72 65 66 3d 22 74 72 61 63 6b 65 64 44 65 76 69 63 65 4f 72 69 65 6e 74 61 74 69 6f 6e 22 2f 3e ref="trackedDeviceOrientation"/>
cb40 20 61 6e 64 20 3c 73 65 65 20 63 72 65 66 3d 22 74 72 61 63 6b 65 64 44 65 76 69 63 65 50 6f 73 .and.<see.cref="trackedDevicePos
cb60 69 74 69 6f 6e 22 2f 3e 20 74 6f 67 65 74 68 65 72 20 72 65 70 6c 61 63 65 20 3c 73 65 65 20 63 ition"/>.together.replace.<see.c
cb80 72 65 66 3d 22 70 6f 69 6e 74 22 2f 3e 20 66 6f 72 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 55 ref="point"/>.for..........///.U
cba0 49 20 69 6e 70 75 74 20 66 72 6f 6d 20 3c 73 65 65 20 63 72 65 66 3d 22 54 72 61 63 6b 65 64 44 I.input.from.<see.cref="TrackedD
cbc0 65 76 69 63 65 22 2f 3e 2e 20 4f 74 68 65 72 20 74 68 61 6e 20 74 68 61 74 2c 20 55 49 20 69 6e evice"/>..Other.than.that,.UI.in
cbe0 70 75 74 20 66 6f 72 20 74 72 61 63 6b 65 64 20 64 65 76 69 63 65 73 20 69 73 20 6e 6f 20 64 69 put.for.tracked.devices.is.no.di
cc00 66 66 65 72 65 6e 74 20 66 72 6f 6d 20 22 6e 6f 72 6d 61 6c 22 0d 0a 20 20 20 20 20 20 20 20 2f fferent.from."normal"........../
cc20 2f 2f 20 70 6f 69 6e 74 65 72 2d 74 79 70 65 20 69 6e 70 75 74 2e 20 54 68 69 73 20 6d 65 61 6e //.pointer-type.input..This.mean
cc40 73 20 74 68 61 74 20 3c 73 65 65 20 63 72 65 66 3d 22 6c 65 66 74 43 6c 69 63 6b 22 2f 3e 2c 20 s.that.<see.cref="leftClick"/>,.
cc60 3c 73 65 65 20 63 72 65 66 3d 22 72 69 67 68 74 43 6c 69 63 6b 22 2f 3e 2c 20 3c 73 65 65 20 63 <see.cref="rightClick"/>,.<see.c
cc80 72 65 66 3d 22 6d 69 64 64 6c 65 43 6c 69 63 6b 22 2f 3e 2c 20 61 6e 64 0d 0a 20 20 20 20 20 20 ref="middleClick"/>,.and........
cca0 20 20 2f 2f 2f 20 3c 73 65 65 20 63 72 65 66 3d 22 73 63 72 6f 6c 6c 57 68 65 65 6c 22 2f 3e 20 ..///.<see.cref="scrollWheel"/>.
ccc0 63 61 6e 20 61 6c 6c 20 62 65 20 75 73 65 64 20 66 6f 72 20 74 72 61 63 6b 65 64 20 64 65 76 69 can.all.be.used.for.tracked.devi
cce0 63 65 20 69 6e 70 75 74 20 6c 69 6b 65 20 66 6f 72 20 72 65 67 75 6c 61 72 20 70 6f 69 6e 74 65 ce.input.like.for.regular.pointe
cd00 72 20 69 6e 70 75 74 2e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 0d 0a 20 20 20 20 20 20 20 20 2f r.input...........///........../
cd20 2f 2f 20 3c 65 78 61 6d 70 6c 65 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 63 6f 64 65 3e //.<example>..........///.<code>
cd40 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 76 61 72 20 61 73 73 65 74 20 3d 20 53 63 72 69 70 74 ..........///.var.asset.=.Script
cd60 61 62 6c 65 4f 62 6a 65 63 74 2e 43 72 65 61 74 65 26 6c 74 3b 49 6e 70 75 74 41 63 74 69 6f 6e ableObject.Create&lt;InputAction
cd80 41 73 73 65 74 26 67 74 3b 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 76 61 72 20 6d 61 Asset&gt;();..........///.var.ma
cda0 70 20 3d 20 61 73 73 65 74 2e 41 64 64 41 63 74 69 6f 6e 4d 61 70 28 22 55 49 22 29 3b 0d 0a 20 p.=.asset.AddActionMap("UI");...
cdc0 20 20 20 20 20 20 20 2f 2f 2f 20 76 61 72 20 70 6f 73 69 74 69 6f 6e 41 63 74 69 6f 6e 20 3d 20 .......///.var.positionAction.=.
cde0 6d 61 70 2e 41 64 64 41 63 74 69 6f 6e 28 22 70 6f 73 69 74 69 6f 6e 22 29 3b 0d 0a 20 20 20 20 map.AddAction("position");......
ce00 20 20 20 20 2f 2f 2f 20 76 61 72 20 6f 72 69 65 6e 74 61 74 69 6f 6e 41 63 74 69 6f 6e 20 3d 20 ....///.var.orientationAction.=.
ce20 6d 61 70 2e 41 64 64 41 63 74 69 6f 6e 28 22 6f 72 69 65 6e 74 61 74 69 6f 6e 22 29 3b 0d 0a 20 map.AddAction("orientation");...
ce40 20 20 20 20 20 20 20 2f 2f 2f 20 76 61 72 20 63 6c 69 63 6b 41 63 74 69 6f 6e 20 3d 20 6d 61 70 .......///.var.clickAction.=.map
ce60 2e 41 64 64 41 63 74 69 6f 6e 28 22 63 6c 69 63 6b 22 29 3b 0d 0a 20 20 20 20 20 20 20 20 2f 2f .AddAction("click");..........//
ce80 2f 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 70 6f 73 69 74 69 6f 6e 41 63 74 69 6f 6e 2e 41 64 /..........///.positionAction.Ad
cea0 64 42 69 6e 64 69 6e 67 28 22 26 6c 74 3b 54 72 61 63 6b 65 64 44 65 76 69 63 65 26 67 74 3b 2f dBinding("&lt;TrackedDevice&gt;/
cec0 64 65 76 69 63 65 50 6f 73 69 74 69 6f 6e 22 29 3b 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 6f devicePosition");..........///.o
cee0 72 69 65 6e 74 61 74 69 6f 6e 41 63 74 69 6f 6e 2e 41 64 64 42 69 6e 64 69 6e 67 28 22 26 6c 74 rientationAction.AddBinding("&lt
cf00 3b 54 72 61 63 6b 65 64 44 65 76 69 63 65 26 67 74 3b 2f 64 65 76 69 63 65 52 6f 74 61 74 69 6f ;TrackedDevice&gt;/deviceRotatio
cf20 6e 22 29 3b 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 63 6c 69 63 6b 41 63 74 69 6f 6e 2e 41 64 n");..........///.clickAction.Ad
cf40 64 42 69 6e 64 69 6e 67 28 22 26 6c 74 3b 54 72 61 63 6b 65 64 44 65 76 69 63 65 26 67 74 3b 2f dBinding("&lt;TrackedDevice&gt;/
cf60 74 72 69 67 67 65 72 22 29 3b 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 0d 0a 20 20 20 20 20 20 20 trigger");..........///.........
cf80 20 2f 2f 2f 20 28 28 49 6e 70 75 74 53 79 73 74 65 6d 55 49 49 6e 70 75 74 4d 6f 64 75 6c 65 29 .///.((InputSystemUIInputModule)
cfa0 45 76 65 6e 74 53 79 73 74 65 6d 2e 63 75 72 72 65 6e 74 2e 63 75 72 72 65 6e 74 49 6e 70 75 74 EventSystem.current.currentInput
cfc0 4d 6f 64 75 6c 65 29 2e 74 72 61 63 6b 65 64 44 65 76 69 63 65 50 6f 73 69 74 69 6f 6e 20 3d 0d Module).trackedDevicePosition.=.
cfe0 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 20 20 20 20 49 6e 70 75 74 41 63 74 69 6f 6e 52 65 66 65 .........///.....InputActionRefe
d000 72 65 6e 63 65 2e 43 72 65 61 74 65 28 70 6f 73 69 74 69 6f 6e 41 63 74 69 6f 6e 29 3b 0d 0a 20 rence.Create(positionAction);...
d020 20 20 20 20 20 20 20 2f 2f 2f 20 28 28 49 6e 70 75 74 53 79 73 74 65 6d 55 49 49 6e 70 75 74 4d .......///.((InputSystemUIInputM
d040 6f 64 75 6c 65 29 45 76 65 6e 74 53 79 73 74 65 6d 2e 63 75 72 72 65 6e 74 2e 63 75 72 72 65 6e odule)EventSystem.current.curren
d060 74 49 6e 70 75 74 4d 6f 64 75 6c 65 29 2e 74 72 61 63 6b 65 64 44 65 76 69 63 65 4f 72 69 65 6e tInputModule).trackedDeviceOrien
d080 74 61 74 69 6f 6e 20 3d 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 20 20 20 20 49 6e 70 75 74 41 tation.=..........///.....InputA
d0a0 63 74 69 6f 6e 52 65 66 65 72 65 6e 63 65 2e 43 72 65 61 74 65 28 6f 72 69 65 6e 74 61 74 69 6f ctionReference.Create(orientatio
d0c0 6e 41 63 74 69 6f 6e 29 3b 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 28 28 49 6e 70 75 74 53 79 nAction);..........///.((InputSy
d0e0 73 74 65 6d 55 49 49 6e 70 75 74 4d 6f 64 75 6c 65 29 45 76 65 6e 74 53 79 73 74 65 6d 2e 63 75 stemUIInputModule)EventSystem.cu
d100 72 72 65 6e 74 2e 63 75 72 72 65 6e 74 49 6e 70 75 74 4d 6f 64 75 6c 65 29 2e 6c 65 66 74 43 6c rrent.currentInputModule).leftCl
d120 69 63 6b 20 3d 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 20 20 20 20 49 6e 70 75 74 41 63 74 69 ick.=..........///.....InputActi
d140 6f 6e 52 65 66 65 72 65 6e 63 65 2e 43 72 65 61 74 65 28 63 6c 69 63 6b 41 63 74 69 6f 6e 29 3b onReference.Create(clickAction);
d160 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 2f 63 6f 64 65 3e 0d 0a 20 20 20 20 20 20 20 20 2f ..........///.</code>........../
d180 2f 2f 20 3c 2f 65 78 61 6d 70 6c 65 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 2f 72 65 6d //.</example>..........///.</rem
d1a0 61 72 6b 73 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 73 65 65 61 6c 73 6f 20 63 72 65 66 arks>..........///.<seealso.cref
d1c0 3d 22 74 72 61 63 6b 65 64 44 65 76 69 63 65 50 6f 73 69 74 69 6f 6e 22 2f 3e 0d 0a 20 20 20 20 ="trackedDevicePosition"/>......
d1e0 20 20 20 20 70 75 62 6c 69 63 20 49 6e 70 75 74 41 63 74 69 6f 6e 52 65 66 65 72 65 6e 63 65 20 ....public.InputActionReference.
d200 74 72 61 63 6b 65 64 44 65 76 69 63 65 4f 72 69 65 6e 74 61 74 69 6f 6e 0d 0a 20 20 20 20 20 20 trackedDeviceOrientation........
d220 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 67 65 74 20 3d 3e 20 6d 5f 54 72 61 63 6b 65 ..{..............get.=>.m_Tracke
d240 64 44 65 76 69 63 65 4f 72 69 65 6e 74 61 74 69 6f 6e 41 63 74 69 6f 6e 3b 0d 0a 20 20 20 20 20 dDeviceOrientationAction;.......
d260 20 20 20 20 20 20 20 73 65 74 20 3d 3e 20 53 77 61 70 41 63 74 69 6f 6e 28 72 65 66 20 6d 5f 54 .......set.=>.SwapAction(ref.m_T
d280 72 61 63 6b 65 64 44 65 76 69 63 65 4f 72 69 65 6e 74 61 74 69 6f 6e 41 63 74 69 6f 6e 2c 20 76 rackedDeviceOrientationAction,.v
d2a0 61 6c 75 65 2c 20 6d 5f 41 63 74 69 6f 6e 73 48 6f 6f 6b 65 64 2c 20 6d 5f 4f 6e 54 72 61 63 6b alue,.m_ActionsHooked,.m_OnTrack
d2c0 65 64 44 65 76 69 63 65 4f 72 69 65 6e 74 61 74 69 6f 6e 44 65 6c 65 67 61 74 65 29 3b 0d 0a 20 edDeviceOrientationDelegate);...
d2e0 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 73 75 6d 6d 61 72 79 .......}............///.<summary
d300 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 41 6e 20 3c 73 65 65 20 63 72 65 66 3d 22 49 6e 70 >..........///.An.<see.cref="Inp
d320 75 74 41 63 74 69 6f 6e 22 2f 3e 20 64 65 6c 69 76 65 72 69 6e 67 20 61 20 3c 63 3e 56 65 63 74 utAction"/>.delivering.a.<c>Vect
d340 6f 72 33 3c 2f 63 3e 20 76 61 6c 75 65 20 72 65 66 6c 65 63 74 69 6e 67 20 74 68 65 20 70 6f 73 or3</c>.value.reflecting.the.pos
d360 69 74 69 6f 6e 20 6f 66 20 3c 73 65 65 20 63 72 65 66 3d 22 54 72 61 63 6b 65 64 44 65 76 69 63 ition.of.<see.cref="TrackedDevic
d380 65 22 2f 3e 73 2e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 49 6e 20 63 6f 6d 62 69 6e 61 74 69 e"/>s...........///.In.combinati
d3a0 6f 6e 20 77 69 74 68 20 3c 73 65 65 20 63 72 65 66 3d 22 74 72 61 63 6b 65 64 44 65 76 69 63 65 on.with.<see.cref="trackedDevice
d3c0 4f 72 69 65 6e 74 61 74 69 6f 6e 22 2f 3e 2c 20 74 68 69 73 20 69 73 20 75 73 65 64 20 74 6f 20 Orientation"/>,.this.is.used.to.
d3e0 64 65 74 65 72 6d 69 6e 65 20 74 68 65 20 74 72 61 6e 73 66 6f 72 6d 20 6f 66 20 74 72 61 63 6b determine.the.transform.of.track
d400 65 64 20 64 65 76 69 63 65 73 20 66 72 6f 6d 20 77 68 69 63 68 0d 0a 20 20 20 20 20 20 20 20 2f ed.devices.from.which........../
d420 2f 2f 20 74 6f 20 72 61 79 63 61 73 74 20 69 6e 74 6f 20 74 68 65 20 55 49 20 73 63 65 6e 65 2e //.to.raycast.into.the.UI.scene.
d440 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 2f 73 75 6d 6d 61 72 79 3e 0d 0a 20 20 20 20 20 20 ..........///.</summary>........
d460 20 20 2f 2f 2f 20 3c 72 65 6d 61 72 6b 73 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 73 65 ..///.<remarks>..........///.<se
d480 65 20 63 72 65 66 3d 22 74 72 61 63 6b 65 64 44 65 76 69 63 65 4f 72 69 65 6e 74 61 74 69 6f 6e e.cref="trackedDeviceOrientation
d4a0 22 2f 3e 20 61 6e 64 20 3c 73 65 65 20 63 72 65 66 3d 22 74 72 61 63 6b 65 64 44 65 76 69 63 65 "/>.and.<see.cref="trackedDevice
d4c0 50 6f 73 69 74 69 6f 6e 22 2f 3e 20 74 6f 67 65 74 68 65 72 20 72 65 70 6c 61 63 65 20 3c 73 65 Position"/>.together.replace.<se
d4e0 65 20 63 72 65 66 3d 22 70 6f 69 6e 74 22 2f 3e 20 66 6f 72 0d 0a 20 20 20 20 20 20 20 20 2f 2f e.cref="point"/>.for..........//
d500 2f 20 55 49 20 69 6e 70 75 74 20 66 72 6f 6d 20 3c 73 65 65 20 63 72 65 66 3d 22 54 72 61 63 6b /.UI.input.from.<see.cref="Track
d520 65 64 44 65 76 69 63 65 22 2f 3e 2e 20 4f 74 68 65 72 20 74 68 61 6e 20 74 68 61 74 2c 20 55 49 edDevice"/>..Other.than.that,.UI
d540 20 69 6e 70 75 74 20 66 6f 72 20 74 72 61 63 6b 65 64 20 64 65 76 69 63 65 73 20 69 73 20 6e 6f .input.for.tracked.devices.is.no
d560 20 64 69 66 66 65 72 65 6e 74 20 66 72 6f 6d 20 22 6e 6f 72 6d 61 6c 22 0d 0a 20 20 20 20 20 20 .different.from."normal"........
d580 20 20 2f 2f 2f 20 70 6f 69 6e 74 65 72 2d 74 79 70 65 20 69 6e 70 75 74 2e 20 54 68 69 73 20 6d ..///.pointer-type.input..This.m
d5a0 65 61 6e 73 20 74 68 61 74 20 3c 73 65 65 20 63 72 65 66 3d 22 6c 65 66 74 43 6c 69 63 6b 22 2f eans.that.<see.cref="leftClick"/
d5c0 3e 2c 20 3c 73 65 65 20 63 72 65 66 3d 22 72 69 67 68 74 43 6c 69 63 6b 22 2f 3e 2c 20 3c 73 65 >,.<see.cref="rightClick"/>,.<se
d5e0 65 20 63 72 65 66 3d 22 6d 69 64 64 6c 65 43 6c 69 63 6b 22 2f 3e 2c 20 61 6e 64 0d 0a 20 20 20 e.cref="middleClick"/>,.and.....
d600 20 20 20 20 20 2f 2f 2f 20 3c 73 65 65 20 63 72 65 66 3d 22 73 63 72 6f 6c 6c 57 68 65 65 6c 22 .....///.<see.cref="scrollWheel"
d620 2f 3e 20 63 61 6e 20 61 6c 6c 20 62 65 20 75 73 65 64 20 66 6f 72 20 74 72 61 63 6b 65 64 20 64 />.can.all.be.used.for.tracked.d
d640 65 76 69 63 65 20 69 6e 70 75 74 20 6c 69 6b 65 20 66 6f 72 20 72 65 67 75 6c 61 72 20 70 6f 69 evice.input.like.for.regular.poi
d660 6e 74 65 72 20 69 6e 70 75 74 2e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 0d 0a 20 20 20 20 20 20 nter.input...........///........
d680 20 20 2f 2f 2f 20 3c 65 78 61 6d 70 6c 65 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 63 6f ..///.<example>..........///.<co
d6a0 64 65 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 76 61 72 20 61 73 73 65 74 20 3d 20 53 63 72 de>..........///.var.asset.=.Scr
d6c0 69 70 74 61 62 6c 65 4f 62 6a 65 63 74 2e 43 72 65 61 74 65 26 6c 74 3b 49 6e 70 75 74 41 63 74 iptableObject.Create&lt;InputAct
d6e0 69 6f 6e 41 73 73 65 74 26 67 74 3b 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 76 61 72 ionAsset&gt;();..........///.var
d700 20 6d 61 70 20 3d 20 61 73 73 65 74 2e 41 64 64 41 63 74 69 6f 6e 4d 61 70 28 22 55 49 22 29 3b .map.=.asset.AddActionMap("UI");
d720 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 76 61 72 20 70 6f 73 69 74 69 6f 6e 41 63 74 69 6f 6e ..........///.var.positionAction
d740 20 3d 20 6d 61 70 2e 41 64 64 41 63 74 69 6f 6e 28 22 70 6f 73 69 74 69 6f 6e 22 29 3b 0d 0a 20 .=.map.AddAction("position");...
d760 20 20 20 20 20 20 20 2f 2f 2f 20 76 61 72 20 6f 72 69 65 6e 74 61 74 69 6f 6e 41 63 74 69 6f 6e .......///.var.orientationAction
d780 20 3d 20 6d 61 70 2e 41 64 64 41 63 74 69 6f 6e 28 22 6f 72 69 65 6e 74 61 74 69 6f 6e 22 29 3b .=.map.AddAction("orientation");
d7a0 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 76 61 72 20 63 6c 69 63 6b 41 63 74 69 6f 6e 20 3d 20 ..........///.var.clickAction.=.
d7c0 6d 61 70 2e 41 64 64 41 63 74 69 6f 6e 28 22 63 6c 69 63 6b 22 29 3b 0d 0a 20 20 20 20 20 20 20 map.AddAction("click");.........
d7e0 20 2f 2f 2f 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 70 6f 73 69 74 69 6f 6e 41 63 74 69 6f 6e .///..........///.positionAction
d800 2e 41 64 64 42 69 6e 64 69 6e 67 28 22 26 6c 74 3b 54 72 61 63 6b 65 64 44 65 76 69 63 65 26 67 .AddBinding("&lt;TrackedDevice&g
d820 74 3b 2f 64 65 76 69 63 65 50 6f 73 69 74 69 6f 6e 22 29 3b 0d 0a 20 20 20 20 20 20 20 20 2f 2f t;/devicePosition");..........//
d840 2f 20 6f 72 69 65 6e 74 61 74 69 6f 6e 41 63 74 69 6f 6e 2e 41 64 64 42 69 6e 64 69 6e 67 28 22 /.orientationAction.AddBinding("
d860 26 6c 74 3b 54 72 61 63 6b 65 64 44 65 76 69 63 65 26 67 74 3b 2f 64 65 76 69 63 65 52 6f 74 61 &lt;TrackedDevice&gt;/deviceRota
d880 74 69 6f 6e 22 29 3b 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 63 6c 69 63 6b 41 63 74 69 6f 6e tion");..........///.clickAction
d8a0 2e 41 64 64 42 69 6e 64 69 6e 67 28 22 26 6c 74 3b 54 72 61 63 6b 65 64 44 65 76 69 63 65 26 67 .AddBinding("&lt;TrackedDevice&g
d8c0 74 3b 2f 74 72 69 67 67 65 72 22 29 3b 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 0d 0a 20 20 20 20 t;/trigger");..........///......
d8e0 20 20 20 20 2f 2f 2f 20 28 28 49 6e 70 75 74 53 79 73 74 65 6d 55 49 49 6e 70 75 74 4d 6f 64 75 ....///.((InputSystemUIInputModu
d900 6c 65 29 45 76 65 6e 74 53 79 73 74 65 6d 2e 63 75 72 72 65 6e 74 2e 63 75 72 72 65 6e 74 49 6e le)EventSystem.current.currentIn
d920 70 75 74 4d 6f 64 75 6c 65 29 2e 74 72 61 63 6b 65 64 44 65 76 69 63 65 50 6f 73 69 74 69 6f 6e putModule).trackedDevicePosition
d940 20 3d 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 20 20 20 20 49 6e 70 75 74 41 63 74 69 6f 6e 52 .=..........///.....InputActionR
d960 65 66 65 72 65 6e 63 65 2e 43 72 65 61 74 65 28 70 6f 73 69 74 69 6f 6e 41 63 74 69 6f 6e 29 3b eference.Create(positionAction);
d980 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 28 28 49 6e 70 75 74 53 79 73 74 65 6d 55 49 49 6e 70 ..........///.((InputSystemUIInp
d9a0 75 74 4d 6f 64 75 6c 65 29 45 76 65 6e 74 53 79 73 74 65 6d 2e 63 75 72 72 65 6e 74 2e 63 75 72 utModule)EventSystem.current.cur
d9c0 72 65 6e 74 49 6e 70 75 74 4d 6f 64 75 6c 65 29 2e 74 72 61 63 6b 65 64 44 65 76 69 63 65 4f 72 rentInputModule).trackedDeviceOr
d9e0 69 65 6e 74 61 74 69 6f 6e 20 3d 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 20 20 20 20 49 6e 70 ientation.=..........///.....Inp
da00 75 74 41 63 74 69 6f 6e 52 65 66 65 72 65 6e 63 65 2e 43 72 65 61 74 65 28 6f 72 69 65 6e 74 61 utActionReference.Create(orienta
da20 74 69 6f 6e 41 63 74 69 6f 6e 29 3b 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 28 28 49 6e 70 75 tionAction);..........///.((Inpu
da40 74 53 79 73 74 65 6d 55 49 49 6e 70 75 74 4d 6f 64 75 6c 65 29 45 76 65 6e 74 53 79 73 74 65 6d tSystemUIInputModule)EventSystem
da60 2e 63 75 72 72 65 6e 74 2e 63 75 72 72 65 6e 74 49 6e 70 75 74 4d 6f 64 75 6c 65 29 2e 6c 65 66 .current.currentInputModule).lef
da80 74 43 6c 69 63 6b 20 3d 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 20 20 20 20 49 6e 70 75 74 41 tClick.=..........///.....InputA
daa0 63 74 69 6f 6e 52 65 66 65 72 65 6e 63 65 2e 43 72 65 61 74 65 28 63 6c 69 63 6b 41 63 74 69 6f ctionReference.Create(clickActio
dac0 6e 29 3b 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 2f 63 6f 64 65 3e 0d 0a 20 20 20 20 20 20 n);..........///.</code>........
dae0 20 20 2f 2f 2f 20 3c 2f 65 78 61 6d 70 6c 65 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 2f ..///.</example>..........///.</
db00 72 65 6d 61 72 6b 73 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 73 65 65 61 6c 73 6f 20 63 remarks>..........///.<seealso.c
db20 72 65 66 3d 22 74 72 61 63 6b 65 64 44 65 76 69 63 65 4f 72 69 65 6e 74 61 74 69 6f 6e 22 2f 3e ref="trackedDeviceOrientation"/>
db40 0d 0a 20 20 20 20 20 20 20 20 70 75 62 6c 69 63 20 49 6e 70 75 74 41 63 74 69 6f 6e 52 65 66 65 ..........public.InputActionRefe
db60 72 65 6e 63 65 20 74 72 61 63 6b 65 64 44 65 76 69 63 65 50 6f 73 69 74 69 6f 6e 0d 0a 20 20 20 rence.trackedDevicePosition.....
db80 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 67 65 74 20 3d 3e 20 6d 5f 54 72 61 .....{..............get.=>.m_Tra
dba0 63 6b 65 64 44 65 76 69 63 65 50 6f 73 69 74 69 6f 6e 41 63 74 69 6f 6e 3b 0d 0a 20 20 20 20 20 ckedDevicePositionAction;.......
dbc0 20 20 20 20 20 20 20 73 65 74 20 3d 3e 20 53 77 61 70 41 63 74 69 6f 6e 28 72 65 66 20 6d 5f 54 .......set.=>.SwapAction(ref.m_T
dbe0 72 61 63 6b 65 64 44 65 76 69 63 65 50 6f 73 69 74 69 6f 6e 41 63 74 69 6f 6e 2c 20 76 61 6c 75 rackedDevicePositionAction,.valu
dc00 65 2c 20 6d 5f 41 63 74 69 6f 6e 73 48 6f 6f 6b 65 64 2c 20 6d 5f 4f 6e 54 72 61 63 6b 65 64 44 e,.m_ActionsHooked,.m_OnTrackedD
dc20 65 76 69 63 65 50 6f 73 69 74 69 6f 6e 44 65 6c 65 67 61 74 65 29 3b 0d 0a 20 20 20 20 20 20 20 evicePositionDelegate);.........
dc40 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 5b 4f 62 73 6f 6c 65 74 65 28 22 27 74 72 61 63 6b 65 .}............[Obsolete("'tracke
dc60 64 44 65 76 69 63 65 53 65 6c 65 63 74 27 20 68 61 73 20 62 65 65 6e 20 6f 62 73 6f 6c 65 74 65 dDeviceSelect'.has.been.obsolete
dc80 64 3b 20 75 73 65 20 27 6c 65 66 74 43 6c 69 63 6b 27 20 69 6e 73 74 65 61 64 2e 22 2c 20 74 72 d;.use.'leftClick'.instead.",.tr
dca0 75 65 29 5d 0d 0a 20 20 20 20 20 20 20 20 70 75 62 6c 69 63 20 49 6e 70 75 74 41 63 74 69 6f 6e ue)]..........public.InputAction
dcc0 52 65 66 65 72 65 6e 63 65 20 74 72 61 63 6b 65 64 44 65 76 69 63 65 53 65 6c 65 63 74 0d 0a 20 Reference.trackedDeviceSelect...
dce0 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 67 65 74 20 3d 3e 20 74 68 72 .......{..............get.=>.thr
dd00 6f 77 20 6e 65 77 20 49 6e 76 61 6c 69 64 4f 70 65 72 61 74 69 6f 6e 45 78 63 65 70 74 69 6f 6e ow.new.InvalidOperationException
dd20 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 65 74 20 3d 3e 20 74 68 72 6f 77 20 6e 65 ();..............set.=>.throw.ne
dd40 77 20 49 6e 76 61 6c 69 64 4f 70 65 72 61 74 69 6f 6e 45 78 63 65 70 74 69 6f 6e 28 29 3b 0d 0a w.InvalidOperationException();..
dd60 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 70 72 6f 74 65 63 74 65 64 20 6f ........}............protected.o
dd80 76 65 72 72 69 64 65 20 76 6f 69 64 20 41 77 61 6b 65 28 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d verride.void.Awake()..........{.
dda0 0a 20 20 20 20 20 20 20 20 20 20 20 20 62 61 73 65 2e 41 77 61 6b 65 28 29 3b 0d 0a 0d 0a 20 20 .............base.Awake();......
ddc0 20 20 20 20 20 20 20 20 20 20 6d 5f 4e 61 76 69 67 61 74 69 6f 6e 53 74 61 74 65 2e 52 65 73 65 ..........m_NavigationState.Rese
dde0 74 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 70 72 6f 74 65 t();..........}............prote
de00 63 74 65 64 20 6f 76 65 72 72 69 64 65 20 76 6f 69 64 20 4f 6e 44 65 73 74 72 6f 79 28 29 0d 0a cted.override.void.OnDestroy()..
de20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 62 61 73 65 2e 4f 6e 44 65 ........{..............base.OnDe
de40 73 74 72 6f 79 28 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 55 6e 68 6f 6f 6b 41 63 stroy();................UnhookAc
de60 74 69 6f 6e 73 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 70 tions();..........}............p
de80 72 6f 74 65 63 74 65 64 20 6f 76 65 72 72 69 64 65 20 76 6f 69 64 20 4f 6e 45 6e 61 62 6c 65 28 rotected.override.void.OnEnable(
dea0 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 62 61 73 65 2e 4f )..........{..............base.O
dec0 6e 45 6e 61 62 6c 65 28 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 6d 5f nEnable();................if.(m_
dee0 4f 6e 43 6f 6e 74 72 6f 6c 73 43 68 61 6e 67 65 64 44 65 6c 65 67 61 74 65 20 3d 3d 20 6e 75 6c OnControlsChangedDelegate.==.nul
df00 6c 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 4f 6e 43 6f 6e 74 72 6f 6c 73 l)..................m_OnControls
df20 43 68 61 6e 67 65 64 44 65 6c 65 67 61 74 65 20 3d 20 4f 6e 43 6f 6e 74 72 6f 6c 73 43 68 61 6e ChangedDelegate.=.OnControlsChan
df40 67 65 64 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 49 6e 70 75 74 41 63 74 69 6f 6e 53 74 61 ged;..............InputActionSta
df60 74 65 2e 73 5f 4f 6e 41 63 74 69 6f 6e 43 6f 6e 74 72 6f 6c 73 43 68 61 6e 67 65 64 2e 41 70 70 te.s_OnActionControlsChanged.App
df80 65 6e 64 57 69 74 68 43 61 70 61 63 69 74 79 28 6d 5f 4f 6e 43 6f 6e 74 72 6f 6c 73 43 68 61 6e endWithCapacity(m_OnControlsChan
dfa0 67 65 64 44 65 6c 65 67 61 74 65 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 48 6f 6f gedDelegate);................Hoo
dfc0 6b 41 63 74 69 6f 6e 73 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 45 6e 61 62 6c 65 41 kActions();..............EnableA
dfe0 6c 6c 41 63 74 69 6f 6e 73 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 llActions();..........}.........
e000 20 20 20 70 72 6f 74 65 63 74 65 64 20 6f 76 65 72 72 69 64 65 20 76 6f 69 64 20 4f 6e 44 69 73 ...protected.override.void.OnDis
e020 61 62 6c 65 28 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 62 able()..........{..............b
e040 61 73 65 2e 4f 6e 44 69 73 61 62 6c 65 28 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 ase.OnDisable();................
e060 76 61 72 20 69 20 3d 20 49 6e 70 75 74 41 63 74 69 6f 6e 53 74 61 74 65 2e 73 5f 4f 6e 41 63 74 var.i.=.InputActionState.s_OnAct
e080 69 6f 6e 43 6f 6e 74 72 6f 6c 73 43 68 61 6e 67 65 64 2e 49 6e 64 65 78 4f 66 52 65 66 65 72 65 ionControlsChanged.IndexOfRefere
e0a0 6e 63 65 28 6d 5f 4f 6e 43 6f 6e 74 72 6f 6c 73 43 68 61 6e 67 65 64 44 65 6c 65 67 61 74 65 29 nce(m_OnControlsChangedDelegate)
e0c0 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 69 20 21 3d 20 2d 31 29 0d 0a 20 20 20 ;..............if.(i.!=.-1).....
e0e0 20 20 20 20 20 20 20 20 20 20 20 20 20 49 6e 70 75 74 41 63 74 69 6f 6e 53 74 61 74 65 2e 73 5f .............InputActionState.s_
e100 4f 6e 41 63 74 69 6f 6e 43 6f 6e 74 72 6f 6c 73 43 68 61 6e 67 65 64 2e 52 65 6d 6f 76 65 41 74 OnActionControlsChanged.RemoveAt
e120 57 69 74 68 43 61 70 61 63 69 74 79 28 69 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 WithCapacity(i);................
e140 44 69 73 61 62 6c 65 41 6c 6c 41 63 74 69 6f 6e 73 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 DisableAllActions();............
e160 20 20 55 6e 68 6f 6f 6b 41 63 74 69 6f 6e 73 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d ..UnhookActions();..........}...
e180 0a 20 20 20 20 20 20 20 20 70 72 69 76 61 74 65 20 62 6f 6f 6c 20 49 73 41 6e 79 41 63 74 69 6f .........private.bool.IsAnyActio
e1a0 6e 45 6e 61 62 6c 65 64 28 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 nEnabled()..........{...........
e1c0 20 20 20 72 65 74 75 72 6e 20 28 6d 5f 50 6f 69 6e 74 41 63 74 69 6f 6e 3f 2e 61 63 74 69 6f 6e ...return.(m_PointAction?.action
e1e0 3f 2e 65 6e 61 62 6c 65 64 20 3f 3f 20 74 72 75 65 29 20 26 26 0d 0a 20 20 20 20 20 20 20 20 20 ?.enabled.??.true).&&...........
e200 20 20 20 20 20 20 20 28 6d 5f 4c 65 66 74 43 6c 69 63 6b 41 63 74 69 6f 6e 3f 2e 61 63 74 69 6f .......(m_LeftClickAction?.actio
e220 6e 3f 2e 65 6e 61 62 6c 65 64 20 3f 3f 20 74 72 75 65 29 20 26 26 0d 0a 20 20 20 20 20 20 20 20 n?.enabled.??.true).&&..........
e240 20 20 20 20 20 20 20 20 28 6d 5f 52 69 67 68 74 43 6c 69 63 6b 41 63 74 69 6f 6e 3f 2e 61 63 74 ........(m_RightClickAction?.act
e260 69 6f 6e 3f 2e 65 6e 61 62 6c 65 64 20 3f 3f 20 74 72 75 65 29 20 26 26 0d 0a 20 20 20 20 20 20 ion?.enabled.??.true).&&........
e280 20 20 20 20 20 20 20 20 20 20 28 6d 5f 4d 69 64 64 6c 65 43 6c 69 63 6b 41 63 74 69 6f 6e 3f 2e ..........(m_MiddleClickAction?.
e2a0 61 63 74 69 6f 6e 3f 2e 65 6e 61 62 6c 65 64 20 3f 3f 20 74 72 75 65 29 20 26 26 0d 0a 20 20 20 action?.enabled.??.true).&&.....
e2c0 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6d 5f 4d 6f 76 65 41 63 74 69 6f 6e 3f 2e 61 63 74 69 .............(m_MoveAction?.acti
e2e0 6f 6e 3f 2e 65 6e 61 62 6c 65 64 20 3f 3f 20 74 72 75 65 29 20 26 26 0d 0a 20 20 20 20 20 20 20 on?.enabled.??.true).&&.........
e300 20 20 20 20 20 20 20 20 20 28 6d 5f 53 75 62 6d 69 74 41 63 74 69 6f 6e 3f 2e 61 63 74 69 6f 6e .........(m_SubmitAction?.action
e320 3f 2e 65 6e 61 62 6c 65 64 20 3f 3f 20 74 72 75 65 29 20 26 26 0d 0a 20 20 20 20 20 20 20 20 20 ?.enabled.??.true).&&...........
e340 20 20 20 20 20 20 20 28 6d 5f 43 61 6e 63 65 6c 41 63 74 69 6f 6e 3f 2e 61 63 74 69 6f 6e 3f 2e .......(m_CancelAction?.action?.
e360 65 6e 61 62 6c 65 64 20 3f 3f 20 74 72 75 65 29 20 26 26 0d 0a 20 20 20 20 20 20 20 20 20 20 20 enabled.??.true).&&.............
e380 20 20 20 20 20 28 6d 5f 53 63 72 6f 6c 6c 57 68 65 65 6c 41 63 74 69 6f 6e 3f 2e 61 63 74 69 6f .....(m_ScrollWheelAction?.actio
e3a0 6e 3f 2e 65 6e 61 62 6c 65 64 20 3f 3f 20 74 72 75 65 29 20 26 26 0d 0a 20 20 20 20 20 20 20 20 n?.enabled.??.true).&&..........
e3c0 20 20 20 20 20 20 20 20 28 6d 5f 54 72 61 63 6b 65 64 44 65 76 69 63 65 4f 72 69 65 6e 74 61 74 ........(m_TrackedDeviceOrientat
e3e0 69 6f 6e 41 63 74 69 6f 6e 3f 2e 61 63 74 69 6f 6e 3f 2e 65 6e 61 62 6c 65 64 20 3f 3f 20 74 72 ionAction?.action?.enabled.??.tr
e400 75 65 29 20 26 26 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6d 5f 54 72 61 63 6b ue).&&..................(m_Track
e420 65 64 44 65 76 69 63 65 50 6f 73 69 74 69 6f 6e 41 63 74 69 6f 6e 3f 2e 61 63 74 69 6f 6e 3f 2e edDevicePositionAction?.action?.
e440 65 6e 61 62 6c 65 64 20 3f 3f 20 74 72 75 65 29 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a enabled.??.true);..........}....
e460 20 20 20 20 20 20 20 20 70 72 69 76 61 74 65 20 76 6f 69 64 20 45 6e 61 62 6c 65 41 6c 6c 41 63 ........private.void.EnableAllAc
e480 74 69 6f 6e 73 28 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 tions()..........{..............
e4a0 69 66 20 28 21 49 73 41 6e 79 41 63 74 69 6f 6e 45 6e 61 62 6c 65 64 28 29 29 0d 0a 20 20 20 20 if.(!IsAnyActionEnabled())......
e4c0 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 50 6f 69 ........{..................m_Poi
e4e0 6e 74 41 63 74 69 6f 6e 3f 2e 61 63 74 69 6f 6e 3f 2e 45 6e 61 62 6c 65 28 29 3b 0d 0a 20 20 20 ntAction?.action?.Enable();.....
e500 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 4c 65 66 74 43 6c 69 63 6b 41 63 74 69 6f 6e 3f 2e .............m_LeftClickAction?.
e520 61 63 74 69 6f 6e 3f 2e 45 6e 61 62 6c 65 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 action?.Enable();...............
e540 20 20 20 6d 5f 52 69 67 68 74 43 6c 69 63 6b 41 63 74 69 6f 6e 3f 2e 61 63 74 69 6f 6e 3f 2e 45 ...m_RightClickAction?.action?.E
e560 6e 61 62 6c 65 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 4d 69 64 64 nable();..................m_Midd
e580 6c 65 43 6c 69 63 6b 41 63 74 69 6f 6e 3f 2e 61 63 74 69 6f 6e 3f 2e 45 6e 61 62 6c 65 28 29 3b leClickAction?.action?.Enable();
e5a0 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 4d 6f 76 65 41 63 74 69 6f 6e 3f 2e ..................m_MoveAction?.
e5c0 61 63 74 69 6f 6e 3f 2e 45 6e 61 62 6c 65 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 action?.Enable();...............
e5e0 20 20 20 6d 5f 53 75 62 6d 69 74 41 63 74 69 6f 6e 3f 2e 61 63 74 69 6f 6e 3f 2e 45 6e 61 62 6c ...m_SubmitAction?.action?.Enabl
e600 65 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 43 61 6e 63 65 6c 41 63 e();..................m_CancelAc
e620 74 69 6f 6e 3f 2e 61 63 74 69 6f 6e 3f 2e 45 6e 61 62 6c 65 28 29 3b 0d 0a 20 20 20 20 20 20 20 tion?.action?.Enable();.........
e640 20 20 20 20 20 20 20 20 20 6d 5f 53 63 72 6f 6c 6c 57 68 65 65 6c 41 63 74 69 6f 6e 3f 2e 61 63 .........m_ScrollWheelAction?.ac
e660 74 69 6f 6e 3f 2e 45 6e 61 62 6c 65 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 tion?.Enable();.................
e680 20 6d 5f 54 72 61 63 6b 65 64 44 65 76 69 63 65 4f 72 69 65 6e 74 61 74 69 6f 6e 41 63 74 69 6f .m_TrackedDeviceOrientationActio
e6a0 6e 3f 2e 61 63 74 69 6f 6e 3f 2e 45 6e 61 62 6c 65 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 n?.action?.Enable();............
e6c0 20 20 20 20 20 20 6d 5f 54 72 61 63 6b 65 64 44 65 76 69 63 65 50 6f 73 69 74 69 6f 6e 41 63 74 ......m_TrackedDevicePositionAct
e6e0 69 6f 6e 3f 2e 61 63 74 69 6f 6e 3f 2e 45 6e 61 62 6c 65 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 ion?.action?.Enable();..........
e700 20 20 20 20 20 20 20 20 6d 5f 4f 77 6e 73 45 6e 61 62 6c 65 64 53 74 61 74 65 20 3d 20 74 72 75 ........m_OwnsEnabledState.=.tru
e720 65 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a e;..............}..........}....
e740 20 20 20 20 20 20 20 20 70 72 69 76 61 74 65 20 76 6f 69 64 20 44 69 73 61 62 6c 65 41 6c 6c 41 ........private.void.DisableAllA
e760 63 74 69 6f 6e 73 28 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 ctions()..........{.............
e780 20 69 66 20 28 6d 5f 4f 77 6e 73 45 6e 61 62 6c 65 64 53 74 61 74 65 29 0d 0a 20 20 20 20 20 20 .if.(m_OwnsEnabledState)........
e7a0 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 4f 77 6e 73 45 ......{..................m_OwnsE
e7c0 6e 61 62 6c 65 64 53 74 61 74 65 20 3d 20 66 61 6c 73 65 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 nabledState.=.false;............
e7e0 20 20 20 20 20 20 6d 5f 50 6f 69 6e 74 41 63 74 69 6f 6e 3f 2e 61 63 74 69 6f 6e 3f 2e 44 69 73 ......m_PointAction?.action?.Dis
e800 61 62 6c 65 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 4c 65 66 74 43 able();..................m_LeftC
e820 6c 69 63 6b 41 63 74 69 6f 6e 3f 2e 61 63 74 69 6f 6e 3f 2e 44 69 73 61 62 6c 65 28 29 3b 0d 0a lickAction?.action?.Disable();..
e840 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 52 69 67 68 74 43 6c 69 63 6b 41 63 74 69 ................m_RightClickActi
e860 6f 6e 3f 2e 61 63 74 69 6f 6e 3f 2e 44 69 73 61 62 6c 65 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 on?.action?.Disable();..........
e880 20 20 20 20 20 20 20 20 6d 5f 4d 69 64 64 6c 65 43 6c 69 63 6b 41 63 74 69 6f 6e 3f 2e 61 63 74 ........m_MiddleClickAction?.act
e8a0 69 6f 6e 3f 2e 44 69 73 61 62 6c 65 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ion?.Disable();.................
e8c0 20 6d 5f 4d 6f 76 65 41 63 74 69 6f 6e 3f 2e 61 63 74 69 6f 6e 3f 2e 44 69 73 61 62 6c 65 28 29 .m_MoveAction?.action?.Disable()
e8e0 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 53 75 62 6d 69 74 41 63 74 69 6f ;..................m_SubmitActio
e900 6e 3f 2e 61 63 74 69 6f 6e 3f 2e 44 69 73 61 62 6c 65 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 n?.action?.Disable();...........
e920 20 20 20 20 20 20 20 6d 5f 43 61 6e 63 65 6c 41 63 74 69 6f 6e 3f 2e 61 63 74 69 6f 6e 3f 2e 44 .......m_CancelAction?.action?.D
e940 69 73 61 62 6c 65 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 53 63 72 isable();..................m_Scr
e960 6f 6c 6c 57 68 65 65 6c 41 63 74 69 6f 6e 3f 2e 61 63 74 69 6f 6e 3f 2e 44 69 73 61 62 6c 65 28 ollWheelAction?.action?.Disable(
e980 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 54 72 61 63 6b 65 64 44 65 76 );..................m_TrackedDev
e9a0 69 63 65 4f 72 69 65 6e 74 61 74 69 6f 6e 41 63 74 69 6f 6e 3f 2e 61 63 74 69 6f 6e 3f 2e 44 69 iceOrientationAction?.action?.Di
e9c0 73 61 62 6c 65 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 54 72 61 63 sable();..................m_Trac
e9e0 6b 65 64 44 65 76 69 63 65 50 6f 73 69 74 69 6f 6e 41 63 74 69 6f 6e 3f 2e 61 63 74 69 6f 6e 3f kedDevicePositionAction?.action?
ea00 2e 44 69 73 61 62 6c 65 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 .Disable();..............}......
ea20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 70 72 69 76 61 74 65 20 69 6e 74 20 47 65 74 ....}............private.int.Get
ea40 50 6f 69 6e 74 65 72 53 74 61 74 65 49 6e 64 65 78 46 6f 72 28 69 6e 74 20 70 6f 69 6e 74 65 72 PointerStateIndexFor(int.pointer
ea60 49 64 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 Id)..........{..............if.(
ea80 70 6f 69 6e 74 65 72 49 64 20 3d 3d 20 6d 5f 43 75 72 72 65 6e 74 50 6f 69 6e 74 65 72 49 64 29 pointerId.==.m_CurrentPointerId)
eaa0 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 6d 5f 43 75 72 72 65 ..................return.m_Curre
eac0 6e 74 50 6f 69 6e 74 65 72 49 6e 64 65 78 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 66 ntPointerIndex;................f
eae0 6f 72 20 28 76 61 72 20 69 20 3d 20 30 3b 20 69 20 3c 20 6d 5f 50 6f 69 6e 74 65 72 49 64 73 2e or.(var.i.=.0;.i.<.m_PointerIds.
eb00 6c 65 6e 67 74 68 3b 20 2b 2b 69 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 length;.++i)..................if
eb20 20 28 6d 5f 50 6f 69 6e 74 65 72 49 64 73 5b 69 5d 20 3d 3d 20 70 6f 69 6e 74 65 72 49 64 29 0d .(m_PointerIds[i].==.pointerId).
eb40 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 69 3b 0d 0a .....................return.i;..
eb60 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 2d 31 3b 0d 0a 20 20 20 20 20 20 ..............return.-1;........
eb80 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 70 72 69 76 61 74 65 20 72 65 66 20 50 6f 69 6e 74 ..}............private.ref.Point
eba0 65 72 4d 6f 64 65 6c 20 47 65 74 50 6f 69 6e 74 65 72 53 74 61 74 65 46 6f 72 49 6e 64 65 78 28 erModel.GetPointerStateForIndex(
ebc0 69 6e 74 20 69 6e 64 65 78 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 int.index)..........{...........
ebe0 20 20 20 69 66 20 28 69 6e 64 65 78 20 3d 3d 20 30 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 ...if.(index.==.0)..............
ec00 20 20 20 20 72 65 74 75 72 6e 20 72 65 66 20 6d 5f 50 6f 69 6e 74 65 72 53 74 61 74 65 73 2e 66 ....return.ref.m_PointerStates.f
ec20 69 72 73 74 56 61 6c 75 65 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 72 irstValue;..............return.r
ec40 65 66 20 6d 5f 50 6f 69 6e 74 65 72 53 74 61 74 65 73 2e 61 64 64 69 74 69 6f 6e 61 6c 56 61 6c ef.m_PointerStates.additionalVal
ec60 75 65 73 5b 69 6e 64 65 78 20 2d 20 31 5d 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 ues[index.-.1];..........}......
ec80 20 20 20 20 20 20 70 72 69 76 61 74 65 20 72 65 66 20 50 6f 69 6e 74 65 72 4d 6f 64 65 6c 20 47 ......private.ref.PointerModel.G
eca0 65 74 50 6f 69 6e 74 65 72 53 74 61 74 65 46 6f 72 28 72 65 66 20 49 6e 70 75 74 41 63 74 69 6f etPointerStateFor(ref.InputActio
ecc0 6e 2e 43 61 6c 6c 62 61 63 6b 43 6f 6e 74 65 78 74 20 63 6f 6e 74 65 78 74 29 0d 0a 20 20 20 20 n.CallbackContext.context)......
ece0 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 69 6e 64 65 78 20 3d 20 47 ....{..............var.index.=.G
ed00 65 74 50 6f 69 6e 74 65 72 53 74 61 74 65 49 6e 64 65 78 46 6f 72 28 63 6f 6e 74 65 78 74 2e 63 etPointerStateIndexFor(context.c
ed20 6f 6e 74 72 6f 6c 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 72 65 66 ontrol);..............return.ref
ed40 20 47 65 74 50 6f 69 6e 74 65 72 53 74 61 74 65 46 6f 72 49 6e 64 65 78 28 69 6e 64 65 78 29 3b .GetPointerStateForIndex(index);
ed60 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 2f 2f 20 54 68 69 73 20 69 ..........}............//.This.i
ed80 73 20 74 68 65 20 6b 65 79 20 6d 65 74 68 6f 64 20 66 6f 72 20 64 65 74 65 72 6d 69 6e 69 6e 67 s.the.key.method.for.determining
eda0 20 77 68 69 63 68 20 70 6f 69 6e 74 65 72 20 61 20 70 61 72 74 69 63 75 6c 61 72 20 69 6e 70 75 .which.pointer.a.particular.inpu
edc0 74 20 69 73 20 61 73 73 6f 63 69 61 74 65 64 20 77 69 74 68 2e 0d 0a 20 20 20 20 20 20 20 20 2f t.is.associated.with.........../
ede0 2f 20 54 68 65 20 70 72 69 6e 63 69 70 61 6c 20 64 65 74 65 72 6d 69 6e 61 6e 74 20 69 73 20 74 /.The.principal.determinant.is.t
ee00 68 65 20 64 65 76 69 63 65 20 74 68 61 74 20 69 73 20 73 65 6e 64 69 6e 67 20 74 68 65 20 69 6e he.device.that.is.sending.the.in
ee20 70 75 74 20 77 68 69 63 68 2c 20 69 6e 20 67 65 6e 65 72 61 6c 2c 20 69 73 20 65 78 70 65 63 74 put.which,.in.general,.is.expect
ee40 65 64 0d 0a 20 20 20 20 20 20 20 20 2f 2f 20 74 6f 20 62 65 20 61 20 50 6f 69 6e 74 65 72 20 28 ed..........//.to.be.a.Pointer.(
ee60 4d 6f 75 73 65 2c 20 50 65 6e 2c 20 54 6f 75 63 68 73 63 72 65 65 6e 29 20 6f 72 20 54 72 61 63 Mouse,.Pen,.Touchscreen).or.Trac
ee80 6b 65 64 44 65 76 69 63 65 2e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 0d 0a 20 20 20 20 20 20 20 20 kedDevice...........//..........
eea0 2f 2f 20 4e 6f 74 65 2c 20 68 6f 77 65 76 65 72 2c 20 74 68 61 74 20 74 68 65 20 69 6e 70 75 74 //.Note,.however,.that.the.input
eec0 20 69 73 20 6e 6f 74 20 67 75 61 72 61 6e 74 65 65 64 20 74 6f 20 65 76 65 6e 20 63 6f 6d 65 20 .is.not.guaranteed.to.even.come.
eee0 66 72 6f 6d 20 61 20 70 6f 69 6e 74 65 72 2d 6c 69 6b 65 20 64 65 76 69 63 65 2e 20 4f 6e 65 20 from.a.pointer-like.device..One.
ef00 63 61 6e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 20 62 69 6e 64 20 74 68 65 20 73 70 61 63 65 20 6b can..........//.bind.the.space.k
ef20 65 79 20 74 6f 20 61 20 6c 65 66 74 20 63 6c 69 63 6b 2c 20 66 6f 72 20 65 78 61 6d 70 6c 65 2e ey.to.a.left.click,.for.example.
ef40 20 41 73 20 6c 6f 6e 67 20 61 73 20 77 65 20 68 61 76 65 20 61 6e 20 61 63 74 69 76 65 20 70 6f .As.long.as.we.have.an.active.po
ef60 69 6e 74 65 72 20 74 68 61 74 20 63 61 6e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 20 64 65 6c 69 76 inter.that.can..........//.deliv
ef80 65 72 20 70 6f 73 69 74 69 6f 6e 20 69 6e 70 75 74 2c 20 77 65 20 61 63 63 65 70 74 20 74 68 61 er.position.input,.we.accept.tha
efa0 74 20 73 65 74 75 70 20 61 6e 64 20 74 72 65 61 74 20 70 72 65 73 73 69 6e 67 20 74 68 65 20 73 t.setup.and.treat.pressing.the.s
efc0 70 61 63 65 20 6b 65 79 20 74 68 65 20 73 61 6d 65 20 61 73 20 70 72 65 73 73 69 6e 67 0d 0a 20 pace.key.the.same.as.pressing...
efe0 20 20 20 20 20 20 20 2f 2f 20 74 68 65 20 6c 65 66 74 20 62 75 74 74 6f 6e 20 69 6e 70 75 74 20 .......//.the.left.button.input.
f000 6f 6e 20 74 68 65 20 72 65 73 70 65 63 74 69 76 65 20 70 6f 69 6e 74 65 72 2e 0d 0a 20 20 20 20 on.the.respective.pointer.......
f020 20 20 20 20 2f 2f 0d 0a 20 20 20 20 20 20 20 20 2f 2f 20 51 75 69 74 65 20 61 20 6c 6f 74 20 67 ....//..........//.Quite.a.lot.g
f040 6f 69 6e 67 20 6f 6e 20 69 6e 20 74 68 69 73 20 6d 65 74 68 6f 64 20 62 75 74 20 77 65 27 72 65 oing.on.in.this.method.but.we're
f060 20 64 65 61 6c 69 6e 67 20 77 69 74 68 20 74 68 72 65 65 20 64 69 66 66 65 72 65 6e 74 20 55 49 .dealing.with.three.different.UI
f080 20 69 6e 74 65 72 61 63 74 69 6f 6e 20 70 61 72 61 64 69 67 6d 73 0d 0a 20 20 20 20 20 20 20 20 .interaction.paradigms..........
f0a0 2f 2f 20 68 65 72 65 20 77 68 69 63 68 20 77 65 20 61 6c 6c 20 73 75 70 70 6f 72 74 20 66 72 6f //.here.which.we.all.support.fro
f0c0 6d 20 61 20 73 69 6e 67 6c 65 20 69 6e 70 75 74 20 70 61 74 68 20 61 6e 64 20 61 6c 6c 6f 77 20 m.a.single.input.path.and.allow.
f0e0 73 65 61 6d 6c 65 73 73 20 73 77 69 74 63 68 69 6e 67 20 62 65 74 77 65 65 6e 2e 0d 0a 20 20 20 seamless.switching.between......
f100 20 20 20 20 20 70 72 69 76 61 74 65 20 69 6e 74 20 47 65 74 50 6f 69 6e 74 65 72 53 74 61 74 65 .....private.int.GetPointerState
f120 49 6e 64 65 78 46 6f 72 28 49 6e 70 75 74 43 6f 6e 74 72 6f 6c 20 63 6f 6e 74 72 6f 6c 29 0d 0a IndexFor(InputControl.control)..
f140 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 44 65 62 75 67 2e 41 73 73 ........{..............Debug.Ass
f160 65 72 74 28 63 6f 6e 74 72 6f 6c 20 21 3d 20 6e 75 6c 6c 2c 20 22 43 6f 6e 74 72 6f 6c 20 6d 75 ert(control.!=.null,."Control.mu
f180 73 74 20 6e 6f 74 20 62 65 20 6e 75 6c 6c 22 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 st.not.be.null");...............
f1a0 20 2f 2f 2f 2f 52 45 56 49 45 57 3a 20 41 6e 79 20 77 61 79 20 77 65 20 63 61 6e 20 63 75 74 20 .////REVIEW:.Any.way.we.can.cut.
f1c0 64 6f 77 6e 20 6f 6e 20 74 68 65 20 68 6f 70 73 20 61 6c 6c 20 6f 76 65 72 20 6d 65 6d 6f 72 79 down.on.the.hops.all.over.memory
f1e0 20 74 68 61 74 20 77 65 27 72 65 20 64 6f 69 6e 67 20 68 65 72 65 3f 0d 0a 20 20 20 20 20 20 20 .that.we're.doing.here?.........
f200 20 20 20 20 20 76 61 72 20 64 65 76 69 63 65 20 3d 20 63 6f 6e 74 72 6f 6c 2e 64 65 76 69 63 65 .....var.device.=.control.device
f220 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 2f 2f 54 4f 44 4f 3a 20 57 65 27 72 65 ;................////TODO:.We're
f240 20 72 65 70 65 61 74 65 64 6c 79 20 69 6e 73 70 65 63 74 69 6e 67 20 74 68 65 20 63 6f 6e 74 72 .repeatedly.inspecting.the.contr
f260 6f 6c 20 73 65 74 75 70 20 68 65 72 65 2e 20 44 6f 20 74 68 69 73 20 6f 6e 63 65 20 61 6e 64 20 ol.setup.here..Do.this.once.and.
f280 6f 6e 6c 79 20 72 65 64 6f 20 69 74 20 69 66 20 74 68 65 20 63 6f 6e 74 72 6f 6c 20 73 65 74 75 only.redo.it.if.the.control.setu
f2a0 70 20 63 68 61 6e 67 65 73 2e 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 2f 2f 52 45 p.changes.................////RE
f2c0 56 49 45 57 3a 20 49 74 20 73 65 65 6d 73 20 77 72 6f 6e 67 20 74 68 61 74 20 77 65 20 61 72 65 VIEW:.It.seems.wrong.that.we.are
f2e0 20 70 69 63 6b 69 6e 67 20 75 70 20 61 6e 20 69 6e 70 75 74 20 68 65 72 65 20 74 68 61 74 20 69 .picking.up.an.input.here.that.i
f300 73 20 2a 4e 4f 54 2a 20 72 65 66 6c 65 63 74 65 64 20 69 6e 20 6f 75 72 20 61 63 74 69 6f 6e 73 s.*NOT*.reflected.in.our.actions
f320 2e 20 57 65 20 6a 75 73 74 20 65 6e 64 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 2f 2f 20 ..We.just.end..............////.
f340 20 20 20 20 20 20 20 75 70 20 72 65 61 64 69 6e 67 20 61 20 74 6f 75 63 68 49 64 20 63 6f 6e 74 .......up.reading.a.touchId.cont
f360 72 6f 6c 20 69 6d 70 6c 69 63 69 74 6c 79 20 69 6e 73 74 65 61 64 20 6f 66 20 61 6c 6c 6f 77 69 rol.implicitly.instead.of.allowi
f380 6e 67 20 61 63 74 69 6f 6e 73 20 74 6f 20 64 65 6c 69 76 65 72 20 49 44 73 20 74 6f 20 75 73 2e ng.actions.to.deliver.IDs.to.us.
f3a0 20 4f 6e 20 74 68 65 20 6f 74 68 65 72 20 68 61 6e 64 2c 0d 0a 20 20 20 20 20 20 20 20 20 20 20 .On.the.other.hand,.............
f3c0 20 2f 2f 2f 2f 20 20 20 20 20 20 20 20 6d 61 6b 69 6e 67 20 74 68 61 74 20 73 65 74 75 70 20 65 .////........making.that.setup.e
f3e0 78 70 6c 69 63 69 74 20 69 6e 20 61 63 74 69 6f 6e 73 20 6d 61 79 20 62 65 20 71 75 69 74 65 20 xplicit.in.actions.may.be.quite.
f400 61 77 6b 77 61 72 64 20 61 6e 64 20 6e 6f 74 20 6e 65 61 72 6c 79 20 61 73 20 72 6f 62 75 73 74 awkward.and.not.nearly.as.robust
f420 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 44 65 74 65 72 6d 69 6e 65 20 74 68 65 20 ...............//.Determine.the.
f440 70 6f 69 6e 74 65 72 20 28 61 6e 64 20 74 6f 75 63 68 29 20 49 44 2e 20 57 65 20 64 65 66 61 75 pointer.(and.touch).ID..We.defau
f460 6c 74 20 74 68 65 20 70 6f 69 6e 74 65 72 20 49 44 20 74 6f 20 74 68 65 20 64 65 76 69 63 65 0d lt.the.pointer.ID.to.the.device.
f480 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 49 44 20 6f 66 20 74 68 65 20 49 6e 70 75 74 44 .............//.ID.of.the.InputD
f4a0 65 76 69 63 65 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 70 6f 69 6e 74 65 72 49 evice...............var.pointerI
f4c0 64 20 3d 20 64 65 76 69 63 65 2e 64 65 76 69 63 65 49 64 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 d.=.device.deviceId;............
f4e0 20 20 76 61 72 20 74 6f 75 63 68 49 64 20 3d 20 30 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 ..var.touchId.=.0;..............
f500 76 61 72 20 63 6f 6e 74 72 6f 6c 50 61 72 65 6e 74 20 3d 20 63 6f 6e 74 72 6f 6c 2e 70 61 72 65 var.controlParent.=.control.pare
f520 6e 74 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 63 6f 6e 74 72 6f 6c 50 61 72 65 nt;..............if.(controlPare
f540 6e 74 20 69 73 20 54 6f 75 63 68 43 6f 6e 74 72 6f 6c 20 74 6f 75 63 68 43 6f 6e 74 72 6f 6c 29 nt.is.TouchControl.touchControl)
f560 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 74 6f 75 63 68 49 64 20 3d 20 74 6f 75 63 ..................touchId.=.touc
f580 68 43 6f 6e 74 72 6f 6c 2e 74 6f 75 63 68 49 64 2e 52 65 61 64 56 61 6c 75 65 28 29 3b 0d 0a 20 hControl.touchId.ReadValue();...
f5a0 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 43 6f 75 6c 64 20 62 65 20 69 74 27 73 20 61 20 74 6f ...........//.Could.be.it's.a.to
f5c0 70 6c 65 76 65 6c 20 63 6f 6e 74 72 6f 6c 20 6f 6e 20 54 6f 75 63 68 73 63 72 65 65 6e 20 28 6c plevel.control.on.Touchscreen.(l
f5e0 69 6b 65 20 22 3c 54 6f 75 63 68 73 63 72 65 65 6e 3e 2f 70 6f 73 69 74 69 6f 6e 22 29 2e 20 49 ike."<Touchscreen>/position")..I
f600 6e 20 74 68 61 74 20 63 61 73 65 2c 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 72 65 61 n.that.case,..............//.rea
f620 64 20 74 68 65 20 74 6f 75 63 68 20 49 44 20 66 72 6f 6d 20 70 72 69 6d 61 72 79 54 6f 75 63 68 d.the.touch.ID.from.primaryTouch
f640 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 65 6c 73 65 20 69 66 20 28 63 6f 6e 74 72 6f 6c 50 ...............else.if.(controlP
f660 61 72 65 6e 74 20 69 73 20 54 6f 75 63 68 73 63 72 65 65 6e 20 74 6f 75 63 68 73 63 72 65 65 6e arent.is.Touchscreen.touchscreen
f680 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 74 6f 75 63 68 49 64 20 3d 20 74 6f 75 )..................touchId.=.tou
f6a0 63 68 73 63 72 65 65 6e 2e 70 72 69 6d 61 72 79 54 6f 75 63 68 2e 74 6f 75 63 68 49 64 2e 52 65 chscreen.primaryTouch.touchId.Re
f6c0 61 64 56 61 6c 75 65 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 74 6f 75 63 adValue();..............if.(touc
f6e0 68 49 64 20 21 3d 20 30 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 70 6f 69 6e 74 hId.!=.0)..................point
f700 65 72 49 64 20 3d 20 45 78 74 65 6e 64 65 64 50 6f 69 6e 74 65 72 45 76 65 6e 74 44 61 74 61 2e erId.=.ExtendedPointerEventData.
f720 4d 61 6b 65 50 6f 69 6e 74 65 72 49 64 46 6f 72 54 6f 75 63 68 28 70 6f 69 6e 74 65 72 49 64 2c MakePointerIdForTouch(pointerId,
f740 20 74 6f 75 63 68 49 64 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 45 61 72 .touchId);................//.Ear
f760 6c 79 20 6f 75 74 20 69 66 20 69 74 27 73 20 74 68 65 20 6c 61 73 74 20 75 73 65 64 20 70 6f 69 ly.out.if.it's.the.last.used.poi
f780 6e 74 65 72 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 4e 4f 54 45 3a 20 43 61 6e 27 nter...............//.NOTE:.Can'
f7a0 74 20 6a 75 73 74 20 63 6f 6d 70 61 72 65 20 62 79 20 64 65 76 69 63 65 20 68 65 72 65 20 62 65 t.just.compare.by.device.here.be
f7c0 63 61 75 73 65 20 6f 66 20 74 6f 75 63 68 73 63 72 65 65 6e 73 20 70 6f 74 65 6e 74 69 61 6c 6c cause.of.touchscreens.potentiall
f7e0 79 20 68 61 76 69 6e 67 20 6d 75 6c 74 69 70 6c 65 20 61 73 73 6f 63 69 61 74 65 64 20 70 6f 69 y.having.multiple.associated.poi
f800 6e 74 65 72 73 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 6d 5f 43 75 72 72 65 6e nters...............if.(m_Curren
f820 74 50 6f 69 6e 74 65 72 49 64 20 3d 3d 20 70 6f 69 6e 74 65 72 49 64 29 0d 0a 20 20 20 20 20 20 tPointerId.==.pointerId)........
f840 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 6d 5f 43 75 72 72 65 6e 74 50 6f 69 6e 74 65 ..........return.m_CurrentPointe
f860 72 49 6e 64 65 78 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 53 65 61 72 63 68 rIndex;................//.Search
f880 20 6d 5f 50 6f 69 6e 74 65 72 49 64 73 20 66 6f 72 20 61 6e 20 65 78 69 73 74 69 6e 67 20 65 6e .m_PointerIds.for.an.existing.en
f8a0 74 72 79 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 4e 4f 54 45 3a 20 54 68 69 73 20 try...............//.NOTE:.This.
f8c0 69 73 20 61 20 6c 69 6e 65 61 72 20 73 65 61 72 63 68 20 62 75 74 20 6d 5f 50 6f 69 6e 74 65 72 is.a.linear.search.but.m_Pointer
f8e0 49 64 73 20 69 73 20 6f 6e 6c 79 20 49 44 73 20 61 6e 64 20 74 68 65 20 6e 75 6d 62 65 72 20 6f Ids.is.only.IDs.and.the.number.o
f900 66 20 63 6f 6e 63 75 72 72 65 6e 74 20 70 6f 69 6e 74 65 72 73 0d 0a 20 20 20 20 20 20 20 20 20 f.concurrent.pointers...........
f920 20 20 20 2f 2f 20 20 20 20 20 20 20 73 68 6f 75 6c 64 20 62 65 20 76 65 72 79 20 6c 6f 77 20 61 ...//.......should.be.very.low.a
f940 74 20 61 6e 79 20 6f 6e 65 20 70 6f 69 6e 74 20 28 69 6e 20 66 61 63 74 2c 20 77 65 20 64 6f 6e t.any.one.point.(in.fact,.we.don
f960 27 74 20 67 65 6e 65 72 61 6c 6c 79 20 65 78 70 65 63 74 20 74 6f 20 68 61 76 65 20 6d 6f 72 65 't.generally.expect.to.have.more
f980 20 74 68 61 6e 20 6f 6e 65 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 20 20 20 20 20 20 .than.one..............//.......
f9a0 77 68 69 63 68 20 69 73 20 77 68 79 20 77 65 20 61 72 65 20 75 73 69 6e 67 20 49 6e 6c 69 6e 65 which.is.why.we.are.using.Inline
f9c0 64 41 72 72 61 79 73 29 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 20 28 76 61 72 20 dArrays)...............for.(var.
f9e0 69 20 3d 20 30 3b 20 69 20 3c 20 6d 5f 50 6f 69 6e 74 65 72 49 64 73 2e 6c 65 6e 67 74 68 3b 20 i.=.0;.i.<.m_PointerIds.length;.
fa00 69 2b 2b 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 i++)..............{.............
fa20 20 20 20 20 20 69 66 20 28 6d 5f 50 6f 69 6e 74 65 72 49 64 73 5b 69 5d 20 3d 3d 20 70 6f 69 6e .....if.(m_PointerIds[i].==.poin
fa40 74 65 72 49 64 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 terId)..................{.......
fa60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 45 78 69 73 74 69 6e 67 20 65 6e 74 72 79 ...............//.Existing.entry
fa80 20 66 6f 75 6e 64 2e 20 4d 61 6b 65 20 69 74 20 74 68 65 20 63 75 72 72 65 6e 74 20 70 6f 69 6e .found..Make.it.the.current.poin
faa0 74 65 72 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 43 75 72 72 ter.......................m_Curr
fac0 65 6e 74 50 6f 69 6e 74 65 72 49 64 20 3d 20 70 6f 69 6e 74 65 72 49 64 3b 0d 0a 20 20 20 20 20 entPointerId.=.pointerId;.......
fae0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 43 75 72 72 65 6e 74 50 6f 69 6e 74 65 72 49 ...............m_CurrentPointerI
fb00 6e 64 65 78 20 3d 20 69 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d ndex.=.i;......................m
fb20 5f 43 75 72 72 65 6e 74 50 6f 69 6e 74 65 72 54 79 70 65 20 3d 20 6d 5f 50 6f 69 6e 74 65 72 53 _CurrentPointerType.=.m_PointerS
fb40 74 61 74 65 73 5b 69 5d 2e 70 6f 69 6e 74 65 72 54 79 70 65 3b 0d 0a 20 20 20 20 20 20 20 20 20 tates[i].pointerType;...........
fb60 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 69 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 ...........return.i;............
fb80 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 ......}..............}..........
fba0 20 20 20 20 20 20 2f 2f 20 44 65 74 65 72 6d 69 6e 65 20 70 6f 69 6e 74 65 72 20 74 79 70 65 2e ......//.Determine.pointer.type.
fbc0 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 70 6f 69 6e 74 65 72 54 79 70 65 20 3d 20 ..............var.pointerType.=.
fbe0 55 49 50 6f 69 6e 74 65 72 54 79 70 65 2e 4e 6f 6e 65 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 UIPointerType.None;.............
fc00 20 69 66 20 28 74 6f 75 63 68 49 64 20 21 3d 20 30 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 .if.(touchId.!=.0)..............
fc20 20 20 20 20 70 6f 69 6e 74 65 72 54 79 70 65 20 3d 20 55 49 50 6f 69 6e 74 65 72 54 79 70 65 2e ....pointerType.=.UIPointerType.
fc40 54 6f 75 63 68 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 65 6c 73 65 20 69 66 20 28 48 61 76 Touch;..............else.if.(Hav
fc60 65 43 6f 6e 74 72 6f 6c 46 6f 72 44 65 76 69 63 65 28 64 65 76 69 63 65 2c 20 70 6f 69 6e 74 29 eControlForDevice(device,.point)
fc80 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 70 6f 69 6e 74 65 72 54 79 70 65 20 3d )..................pointerType.=
fca0 20 55 49 50 6f 69 6e 74 65 72 54 79 70 65 2e 4d 6f 75 73 65 4f 72 50 65 6e 3b 0d 0a 20 20 20 20 .UIPointerType.MouseOrPen;......
fcc0 20 20 20 20 20 20 20 20 65 6c 73 65 20 69 66 20 28 48 61 76 65 43 6f 6e 74 72 6f 6c 46 6f 72 44 ........else.if.(HaveControlForD
fce0 65 76 69 63 65 28 64 65 76 69 63 65 2c 20 74 72 61 63 6b 65 64 44 65 76 69 63 65 50 6f 73 69 74 evice(device,.trackedDevicePosit
fd00 69 6f 6e 29 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 70 6f 69 6e 74 65 72 54 79 ion))..................pointerTy
fd20 70 65 20 3d 20 55 49 50 6f 69 6e 74 65 72 54 79 70 65 2e 54 72 61 63 6b 65 64 3b 0d 0a 0d 0a 20 pe.=.UIPointerType.Tracked;.....
fd40 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 46 6f 72 20 53 69 6e 67 6c 65 4d 6f 75 73 65 4f 72 50 ...........//.For.SingleMouseOrP
fd60 65 6e 42 75 74 4d 75 6c 74 69 54 6f 75 63 68 41 6e 64 54 72 61 63 6b 2c 20 77 65 20 6b 65 65 70 enButMultiTouchAndTrack,.we.keep
fd80 20 61 20 73 69 6e 67 6c 65 20 70 6f 69 6e 74 65 72 20 66 6f 72 20 6d 6f 75 73 65 20 61 6e 64 20 .a.single.pointer.for.mouse.and.
fda0 70 65 6e 20 62 75 74 20 6f 6e 6c 79 20 66 6f 72 20 61 73 0d 0a 20 20 20 20 20 20 20 20 20 20 20 pen.but.only.for.as.............
fdc0 20 2f 2f 20 6c 6f 6e 67 20 61 73 20 74 68 65 72 65 20 69 73 20 6e 6f 20 74 6f 75 63 68 20 6f 72 .//.long.as.there.is.no.touch.or
fde0 20 74 72 61 63 6b 65 64 20 69 6e 70 75 74 2e 20 49 66 20 77 65 20 67 65 74 20 74 68 61 74 20 6b .tracked.input..If.we.get.that.k
fe00 69 6e 64 2c 20 77 65 20 72 65 6d 6f 76 65 20 74 68 65 20 6d 6f 75 73 65 2f 70 65 6e 20 70 6f 69 ind,.we.remove.the.mouse/pen.poi
fe20 6e 74 65 72 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 6d 5f 50 6f 69 6e 74 65 72 nter...............if.(m_Pointer
fe40 42 65 68 61 76 69 6f 72 20 3d 3d 20 55 49 50 6f 69 6e 74 65 72 42 65 68 61 76 69 6f 72 2e 53 69 Behavior.==.UIPointerBehavior.Si
fe60 6e 67 6c 65 4d 6f 75 73 65 4f 72 50 65 6e 42 75 74 4d 75 6c 74 69 54 6f 75 63 68 41 6e 64 54 72 ngleMouseOrPenButMultiTouchAndTr
fe80 61 63 6b 20 26 26 20 70 6f 69 6e 74 65 72 54 79 70 65 20 21 3d 20 55 49 50 6f 69 6e 74 65 72 54 ack.&&.pointerType.!=.UIPointerT
fea0 79 70 65 2e 4e 6f 6e 65 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 ype.None)..............{........
fec0 20 20 20 20 20 20 20 20 20 20 69 66 20 28 70 6f 69 6e 74 65 72 54 79 70 65 20 3d 3d 20 55 49 50 ..........if.(pointerType.==.UIP
fee0 6f 69 6e 74 65 72 54 79 70 65 2e 4d 6f 75 73 65 4f 72 50 65 6e 29 0d 0a 20 20 20 20 20 20 20 20 ointerType.MouseOrPen)..........
ff00 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f ........{....................../
ff20 2f 20 57 65 20 68 61 76 65 20 69 6e 70 75 74 20 6f 6e 20 61 20 6d 6f 75 73 65 20 6f 72 20 70 65 /.We.have.input.on.a.mouse.or.pe
ff40 6e 2e 20 4b 69 6c 6c 20 61 6c 6c 20 74 6f 75 63 68 20 61 6e 64 20 74 72 61 63 6b 65 64 20 70 6f n..Kill.all.touch.and.tracked.po
ff60 69 6e 74 65 72 73 20 77 65 20 6d 61 79 20 68 61 76 65 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 inters.we.may.have..............
ff80 20 20 20 20 20 20 20 20 20 66 6f 72 20 28 76 61 72 20 69 20 3d 20 30 3b 20 69 20 3c 20 6d 5f 50 .........for.(var.i.=.0;.i.<.m_P
ffa0 6f 69 6e 74 65 72 53 74 61 74 65 73 2e 6c 65 6e 67 74 68 3b 20 2b 2b 69 29 0d 0a 20 20 20 20 20 ointerStates.length;.++i).......
ffc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ...............{................
ffe0 20 20 20 20 20 20 20 20 20 20 69 66 20 28 6d 5f 50 6f 69 6e 74 65 72 53 74 61 74 65 73 5b 69 5d ..........if.(m_PointerStates[i]
10000 2e 70 6f 69 6e 74 65 72 54 79 70 65 20 21 3d 20 55 49 50 6f 69 6e 74 65 72 54 79 70 65 2e 4d 6f .pointerType.!=.UIPointerType.Mo
10020 75 73 65 4f 72 50 65 6e 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 useOrPen).......................
10040 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ...{............................
10060 20 20 53 65 6e 64 50 6f 69 6e 74 65 72 45 78 69 74 45 76 65 6e 74 73 41 6e 64 52 65 6d 6f 76 65 ..SendPointerExitEventsAndRemove
10080 50 6f 69 6e 74 65 72 28 69 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 Pointer(i);.....................
100a0 20 20 20 20 20 20 20 20 20 2d 2d 69 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .........--i;...................
100c0 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d .......}......................}.
100e0 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 .................}..............
10100 20 20 20 20 65 6c 73 65 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 ....else..................{.....
10120 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 57 65 20 68 61 76 65 20 74 6f 75 63 .................//.We.have.touc
10140 68 20 6f 72 20 74 72 61 63 6b 65 64 20 69 6e 70 75 74 2e 20 4b 69 6c 6c 20 6d 6f 75 73 65 2f 70 h.or.tracked.input..Kill.mouse/p
10160 65 6e 20 70 6f 69 6e 74 65 72 2c 20 69 66 20 77 65 20 68 61 76 65 20 69 74 2e 0d 0a 20 20 20 20 en.pointer,.if.we.have.it.......
10180 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 20 28 76 61 72 20 69 20 3d 20 30 3b 20 ................for.(var.i.=.0;.
101a0 69 20 3c 20 6d 5f 50 6f 69 6e 74 65 72 53 74 61 74 65 73 2e 6c 65 6e 67 74 68 3b 20 2b 2b 69 29 i.<.m_PointerStates.length;.++i)
101c0 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 ......................{.........
101e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 6d 5f 50 6f 69 6e 74 65 72 53 74 .................if.(m_PointerSt
10200 61 74 65 73 5b 69 5d 2e 70 6f 69 6e 74 65 72 54 79 70 65 20 3d 3d 20 55 49 50 6f 69 6e 74 65 72 ates[i].pointerType.==.UIPointer
10220 54 79 70 65 2e 4d 6f 75 73 65 4f 72 50 65 6e 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 Type.MouseOrPen)................
10240 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..........{.....................
10260 20 20 20 20 20 20 20 20 20 53 65 6e 64 50 6f 69 6e 74 65 72 45 78 69 74 45 76 65 6e 74 73 41 6e .........SendPointerExitEventsAn
10280 64 52 65 6d 6f 76 65 50 6f 69 6e 74 65 72 28 69 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 dRemovePointer(i);..............
102a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2d 2d 69 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 ................--i;............
102c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..............}.................
102e0 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 .....}..................}.......
10300 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 2f 2f 52 45 56 49 45 57 .......}..............////REVIEW
10320 3a 20 46 6f 72 20 74 6f 75 63 68 2c 20 70 72 6f 62 61 62 6c 79 20 6d 61 6b 65 73 20 73 65 6e 73 :.For.touch,.probably.makes.sens
10340 65 20 74 6f 20 66 6f 72 63 65 2d 69 67 6e 6f 72 65 20 61 6e 79 20 69 6e 70 75 74 20 6f 74 68 65 e.to.force-ignore.any.input.othe
10360 72 20 74 68 61 6e 20 66 72 6f 6d 20 70 72 69 6d 61 72 79 54 6f 75 63 68 2e 0d 0a 20 20 20 20 20 r.than.from.primaryTouch........
10380 20 20 20 20 20 20 20 2f 2f 20 49 66 20 74 68 65 20 62 65 68 61 76 69 6f 72 20 69 73 20 53 69 6e .......//.If.the.behavior.is.Sin
103a0 67 6c 65 55 6e 69 66 69 65 64 50 6f 69 6e 74 65 72 2c 20 77 65 20 6f 6e 6c 79 20 65 76 65 72 20 gleUnifiedPointer,.we.only.ever.
103c0 63 72 65 61 74 65 20 61 20 73 69 6e 67 6c 65 20 70 6f 69 6e 74 65 72 20 73 74 61 74 65 0d 0a 20 create.a.single.pointer.state...
103e0 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 61 6e 64 20 75 73 65 20 74 68 61 74 20 66 6f 72 20 61 ...........//.and.use.that.for.a
10400 6c 6c 20 70 6f 69 6e 74 65 72 20 69 6e 70 75 74 20 74 68 61 74 20 69 73 20 63 6f 6d 69 6e 67 20 ll.pointer.input.that.is.coming.
10420 69 6e 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 28 6d 5f 50 6f 69 6e 74 65 72 42 in...............if.((m_PointerB
10440 65 68 61 76 69 6f 72 20 3d 3d 20 55 49 50 6f 69 6e 74 65 72 42 65 68 61 76 69 6f 72 2e 53 69 6e ehavior.==.UIPointerBehavior.Sin
10460 67 6c 65 55 6e 69 66 69 65 64 50 6f 69 6e 74 65 72 20 26 26 20 70 6f 69 6e 74 65 72 54 79 70 65 gleUnifiedPointer.&&.pointerType
10480 20 21 3d 20 55 49 50 6f 69 6e 74 65 72 54 79 70 65 2e 4e 6f 6e 65 29 20 7c 7c 0d 0a 20 20 20 20 .!=.UIPointerType.None).||......
104a0 20 20 20 20 20 20 20 20 20 20 20 20 28 6d 5f 50 6f 69 6e 74 65 72 42 65 68 61 76 69 6f 72 20 3d ............(m_PointerBehavior.=
104c0 3d 20 55 49 50 6f 69 6e 74 65 72 42 65 68 61 76 69 6f 72 2e 53 69 6e 67 6c 65 4d 6f 75 73 65 4f =.UIPointerBehavior.SingleMouseO
104e0 72 50 65 6e 42 75 74 4d 75 6c 74 69 54 6f 75 63 68 41 6e 64 54 72 61 63 6b 20 26 26 20 70 6f 69 rPenButMultiTouchAndTrack.&&.poi
10500 6e 74 65 72 54 79 70 65 20 3d 3d 20 55 49 50 6f 69 6e 74 65 72 54 79 70 65 2e 4d 6f 75 73 65 4f nterType.==.UIPointerType.MouseO
10520 72 50 65 6e 29 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 rPen))..............{...........
10540 20 20 20 20 20 20 20 69 66 20 28 6d 5f 43 75 72 72 65 6e 74 50 6f 69 6e 74 65 72 49 6e 64 65 78 .......if.(m_CurrentPointerIndex
10560 20 3d 3d 20 2d 31 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 .==.-1)..................{......
10580 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 43 75 72 72 65 6e 74 50 6f 69 6e 74 65 72 ................m_CurrentPointer
105a0 49 6e 64 65 78 20 3d 20 41 6c 6c 6f 63 61 74 65 50 6f 69 6e 74 65 72 28 70 6f 69 6e 74 65 72 49 Index.=.AllocatePointer(pointerI
105c0 64 2c 20 74 6f 75 63 68 49 64 2c 20 70 6f 69 6e 74 65 72 54 79 70 65 2c 20 64 65 76 69 63 65 29 d,.touchId,.pointerType,.device)
105e0 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 ;..................}............
10600 20 20 20 20 20 20 65 6c 73 65 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 ......else..................{...
10620 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 55 70 64 61 74 65 20 70 6f 69 ...................//.Update.poi
10640 6e 74 65 72 20 72 65 63 6f 72 64 20 74 6f 20 72 65 66 6c 65 63 74 20 63 75 72 72 65 6e 74 20 64 nter.record.to.reflect.current.d
10660 65 76 69 63 65 2e 20 57 65 20 6b 6e 6f 77 20 74 68 65 79 27 72 65 20 64 69 66 66 65 72 65 6e 74 evice..We.know.they're.different
10680 20 62 65 63 61 75 73 65 20 77 65 20 63 68 65 63 6b 65 64 0d 0a 20 20 20 20 20 20 20 20 20 20 20 .because.we.checked.............
106a0 20 20 20 20 20 20 20 20 20 2f 2f 20 6d 5f 43 75 72 72 65 6e 74 50 6f 69 6e 74 65 72 49 64 20 65 .........//.m_CurrentPointerId.e
106c0 61 72 6c 69 65 72 20 69 6e 20 74 68 65 20 6d 65 74 68 6f 64 2e 0d 0a 20 20 20 20 20 20 20 20 20 arlier.in.the.method............
106e0 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 4e 4f 54 45 3a 20 54 68 69 73 20 70 61 74 68 20 6d 61 ...........//.NOTE:.This.path.ma
10700 79 20 72 65 70 65 61 74 65 64 6c 79 20 73 77 69 74 63 68 20 74 68 65 20 70 6f 69 6e 74 65 72 20 y.repeatedly.switch.the.pointer.
10720 74 79 70 65 20 61 6e 64 20 49 44 20 6f 6e 20 74 68 65 20 73 61 6d 65 20 73 69 6e 67 6c 65 20 65 type.and.ID.on.the.same.single.e
10740 76 65 6e 74 20 69 6e 73 74 61 6e 63 65 2e 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 vent.instance...................
10760 20 20 20 20 20 20 72 65 66 20 76 61 72 20 70 6f 69 6e 74 65 72 20 3d 20 72 65 66 20 47 65 74 50 ......ref.var.pointer.=.ref.GetP
10780 6f 69 6e 74 65 72 53 74 61 74 65 46 6f 72 49 6e 64 65 78 28 6d 5f 43 75 72 72 65 6e 74 50 6f 69 ointerStateForIndex(m_CurrentPoi
107a0 6e 74 65 72 49 6e 64 65 78 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 nterIndex);.....................
107c0 20 20 20 76 61 72 20 65 76 65 6e 74 44 61 74 61 20 3d 20 70 6f 69 6e 74 65 72 2e 65 76 65 6e 74 ...var.eventData.=.pointer.event
107e0 44 61 74 61 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 76 65 6e 74 Data;......................event
10800 44 61 74 61 2e 64 65 76 69 63 65 20 3d 20 64 65 76 69 63 65 3b 0d 0a 20 20 20 20 20 20 20 20 20 Data.device.=.device;...........
10820 20 20 20 20 20 20 20 20 20 20 20 65 76 65 6e 74 44 61 74 61 2e 70 6f 69 6e 74 65 72 54 79 70 65 ...........eventData.pointerType
10840 20 3d 20 70 6f 69 6e 74 65 72 54 79 70 65 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .=.pointerType;.................
10860 20 20 20 20 20 65 76 65 6e 74 44 61 74 61 2e 70 6f 69 6e 74 65 72 49 64 20 3d 20 70 6f 69 6e 74 .....eventData.pointerId.=.point
10880 65 72 49 64 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 76 65 6e 74 erId;......................event
108a0 44 61 74 61 2e 74 6f 75 63 68 49 64 20 3d 20 74 6f 75 63 68 49 64 3b 0d 0a 0d 0a 20 20 20 20 20 Data.touchId.=.touchId;.........
108c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 4d 61 6b 65 20 73 75 72 65 20 74 68 65 73 ...............//.Make.sure.thes
108e0 65 20 64 6f 6e 27 74 20 6c 69 6e 67 65 72 20 61 72 6f 75 6e 64 20 77 68 65 6e 20 77 65 20 73 77 e.don't.linger.around.when.we.sw
10900 69 74 63 68 20 74 6f 20 61 20 64 69 66 66 65 72 65 6e 74 20 6b 69 6e 64 20 6f 66 20 70 6f 69 6e itch.to.a.different.kind.of.poin
10920 74 65 72 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 76 65 6e 74 44 ter.......................eventD
10940 61 74 61 2e 74 72 61 63 6b 65 64 44 65 76 69 63 65 4f 72 69 65 6e 74 61 74 69 6f 6e 20 3d 20 64 ata.trackedDeviceOrientation.=.d
10960 65 66 61 75 6c 74 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 76 65 efault;......................eve
10980 6e 74 44 61 74 61 2e 74 72 61 63 6b 65 64 44 65 76 69 63 65 50 6f 73 69 74 69 6f 6e 20 3d 20 64 ntData.trackedDevicePosition.=.d
109a0 65 66 61 75 6c 74 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 efault;..................}......
109c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 43 75 72 72 65 6e 74 50 6f 69 6e 74 65 72 49 64 ..............m_CurrentPointerId
109e0 20 3d 20 70 6f 69 6e 74 65 72 49 64 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d .=.pointerId;..................m
10a00 5f 43 75 72 72 65 6e 74 50 6f 69 6e 74 65 72 54 79 70 65 20 3d 20 70 6f 69 6e 74 65 72 54 79 70 _CurrentPointerType.=.pointerTyp
10a20 65 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 6d 5f 43 e;....................return.m_C
10a40 75 72 72 65 6e 74 50 6f 69 6e 74 65 72 49 6e 64 65 78 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 urrentPointerIndex;.............
10a60 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 4e 6f 20 65 78 69 73 74 69 6e 67 .}................//.No.existing
10a80 20 72 65 63 6f 72 64 20 66 6f 72 20 74 68 65 20 64 65 76 69 63 65 2e 20 46 69 6e 64 20 6f 75 74 .record.for.the.device..Find.out
10aa0 20 69 66 20 74 68 65 20 64 65 76 69 63 65 20 68 61 73 20 74 68 65 20 61 62 69 6c 69 74 79 20 74 .if.the.device.has.the.ability.t
10ac0 6f 20 70 6f 69 6e 74 20 61 74 20 61 6c 6c 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 o.point.at.all...............//.
10ae0 49 66 20 6e 6f 74 2c 20 77 65 20 6e 65 65 64 20 74 6f 20 75 73 65 20 61 20 70 6f 69 6e 74 65 72 If.not,.we.need.to.use.a.pointer
10b00 20 73 74 61 74 65 20 66 72 6f 6d 20 61 20 64 69 66 66 65 72 65 6e 74 20 64 65 76 69 63 65 20 28 .state.from.a.different.device.(
10b20 69 66 20 70 72 65 73 65 6e 74 29 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 69 6e if.present)...............var.in
10b40 64 65 78 20 3d 20 2d 31 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 70 6f 69 6e 74 dex.=.-1;..............if.(point
10b60 65 72 54 79 70 65 20 21 3d 20 55 49 50 6f 69 6e 74 65 72 54 79 70 65 2e 4e 6f 6e 65 29 0d 0a 20 erType.!=.UIPointerType.None)...
10b80 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f ...........{..................//
10ba0 20 44 65 76 69 63 65 20 68 61 73 20 61 6e 20 61 73 73 6f 63 69 61 74 65 64 20 70 6f 73 69 74 69 .Device.has.an.associated.positi
10bc0 6f 6e 20 69 6e 70 75 74 2e 20 43 72 65 61 74 65 20 61 20 6e 65 77 20 70 6f 69 6e 74 65 72 20 72 on.input..Create.a.new.pointer.r
10be0 65 63 6f 72 64 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 6e 64 65 78 20 3d 20 ecord...................index.=.
10c00 41 6c 6c 6f 63 61 74 65 50 6f 69 6e 74 65 72 28 70 6f 69 6e 74 65 72 49 64 2c 20 74 6f 75 63 68 AllocatePointer(pointerId,.touch
10c20 49 64 2c 20 70 6f 69 6e 74 65 72 54 79 70 65 2c 20 64 65 76 69 63 65 29 3b 0d 0a 20 20 20 20 20 Id,.pointerType,.device);.......
10c40 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 65 6c 73 65 0d 0a 20 20 20 20 .......}..............else......
10c60 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 44 65 ........{..................//.De
10c80 76 69 63 65 20 68 61 73 20 6e 6f 20 61 73 73 6f 63 69 61 74 65 64 20 70 6f 73 69 74 69 6f 6e 20 vice.has.no.associated.position.
10ca0 69 6e 70 75 74 2e 20 46 69 6e 64 20 61 20 70 6f 69 6e 74 65 72 20 64 65 76 69 63 65 20 74 6f 20 input..Find.a.pointer.device.to.
10cc0 72 6f 75 74 65 20 74 68 65 20 63 68 61 6e 67 65 20 69 6e 74 6f 2e 0d 0a 20 20 20 20 20 20 20 20 route.the.change.into...........
10ce0 20 20 20 20 20 20 20 20 2f 2f 20 41 73 20 61 20 6c 61 73 74 20 72 65 73 6f 72 74 2c 20 63 72 65 ........//.As.a.last.resort,.cre
10d00 61 74 65 20 61 20 70 6f 69 6e 74 65 72 20 77 69 74 68 6f 75 74 20 61 20 70 6f 73 69 74 69 6f 6e ate.a.pointer.without.a.position
10d20 20 69 6e 70 75 74 2e 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 49 66 .input.....................//.If
10d40 20 77 65 20 68 61 76 65 20 61 20 63 75 72 72 65 6e 74 20 70 6f 69 6e 74 65 72 2c 20 72 6f 75 74 .we.have.a.current.pointer,.rout
10d60 65 20 74 68 65 20 69 6e 70 75 74 20 69 6e 74 6f 20 74 68 61 74 2e 20 54 68 65 20 6d 61 6a 6f 72 e.the.input.into.that..The.major
10d80 69 74 79 20 6f 66 20 74 69 6d 65 73 20 77 65 20 65 6e 64 0d 0a 20 20 20 20 20 20 20 20 20 20 20 ity.of.times.we.end.............
10da0 20 20 20 20 20 2f 2f 20 75 70 20 69 6e 20 74 68 69 73 20 62 72 61 6e 63 68 2c 20 74 68 69 73 20 .....//.up.in.this.branch,.this.
10dc0 73 68 6f 75 6c 64 20 73 65 74 74 6c 65 20 74 68 69 6e 67 73 2e 0d 0a 20 20 20 20 20 20 20 20 20 should.settle.things............
10de0 20 20 20 20 20 20 20 69 66 20 28 6d 5f 43 75 72 72 65 6e 74 50 6f 69 6e 74 65 72 49 64 20 21 3d .......if.(m_CurrentPointerId.!=
10e00 20 2d 31 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e .-1)......................return
10e20 20 6d 5f 43 75 72 72 65 6e 74 50 6f 69 6e 74 65 72 49 6e 64 65 78 3b 0d 0a 0d 0a 20 20 20 20 20 .m_CurrentPointerIndex;.........
10e40 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 4e 4f 54 45 3a 20 49 6e 20 6d 6f 73 74 20 63 61 73 65 ...........//.NOTE:.In.most.case
10e60 73 2c 20 77 65 20 65 6e 64 20 75 70 20 68 65 72 65 20 77 68 65 6e 20 74 68 65 72 65 20 69 73 20 s,.we.end.up.here.when.there.is.
10e80 69 6e 70 75 74 20 6f 6e 20 61 20 6e 6f 6e 2d 70 6f 69 6e 74 65 72 20 64 65 76 69 63 65 20 62 6f input.on.a.non-pointer.device.bo
10ea0 75 6e 64 20 74 6f 20 6f 6e 65 20 6f 66 20 74 68 65 20 70 6f 69 6e 74 65 72 2d 72 65 6c 61 74 65 und.to.one.of.the.pointer-relate
10ec0 64 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 20 20 20 20 20 20 61 63 74 69 d..................//.......acti
10ee0 6f 6e 73 20 62 65 66 6f 72 65 20 74 68 65 72 65 20 69 73 20 69 6e 70 75 74 20 66 72 6f 6d 20 61 ons.before.there.is.input.from.a
10f00 20 70 6f 69 6e 74 65 72 20 64 65 76 69 63 65 2e 20 49 6e 20 74 68 69 73 20 73 63 65 6e 61 72 69 .pointer.device..In.this.scenari
10f20 6f 2c 20 77 65 20 64 6f 6e 27 74 20 68 61 76 65 20 61 20 70 6f 69 6e 74 65 72 20 73 74 61 74 65 o,.we.don't.have.a.pointer.state
10f40 20 61 6c 6c 6f 63 61 74 65 64 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 20 .allocated..................//..
10f60 20 20 20 20 20 66 6f 72 20 74 68 65 20 64 65 76 69 63 65 20 79 65 74 2e 0d 0a 0d 0a 20 20 20 20 .....for.the.device.yet.........
10f80 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 49 66 20 77 65 20 68 61 76 65 20 61 6e 79 74 68 69 ............//.If.we.have.anythi
10fa0 6e 67 20 62 6f 75 6e 64 20 74 6f 20 74 68 65 20 60 70 6f 69 6e 74 60 20 61 63 74 69 6f 6e 2c 20 ng.bound.to.the.`point`.action,.
10fc0 63 72 65 61 74 65 20 61 20 70 6f 69 6e 74 65 72 20 66 6f 72 20 69 74 2e 0d 0a 20 20 20 20 20 20 create.a.pointer.for.it.........
10fe0 20 20 20 20 20 20 20 20 20 20 76 61 72 20 70 6f 69 6e 74 43 6f 6e 74 72 6f 6c 73 20 3d 20 70 6f ..........var.pointControls.=.po
11000 69 6e 74 3f 2e 61 63 74 69 6f 6e 3f 2e 63 6f 6e 74 72 6f 6c 73 3b 0d 0a 20 20 20 20 20 20 20 20 int?.action?.controls;..........
11020 20 20 20 20 20 20 20 20 76 61 72 20 70 6f 69 6e 74 65 72 44 65 76 69 63 65 20 3d 20 70 6f 69 6e ........var.pointerDevice.=.poin
11040 74 43 6f 6e 74 72 6f 6c 73 2e 48 61 73 56 61 6c 75 65 20 26 26 20 70 6f 69 6e 74 43 6f 6e 74 72 tControls.HasValue.&&.pointContr
11060 6f 6c 73 2e 56 61 6c 75 65 2e 43 6f 75 6e 74 20 3e 20 30 20 3f 20 70 6f 69 6e 74 43 6f 6e 74 72 ols.Value.Count.>.0.?.pointContr
11080 6f 6c 73 2e 56 61 6c 75 65 5b 30 5d 2e 64 65 76 69 63 65 20 3a 20 6e 75 6c 6c 3b 0d 0a 20 20 20 ols.Value[0].device.:.null;.....
110a0 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 70 6f 69 6e 74 65 72 44 65 76 69 63 65 20 21 .............if.(pointerDevice.!
110c0 3d 20 6e 75 6c 6c 20 26 26 20 21 28 70 6f 69 6e 74 65 72 44 65 76 69 63 65 20 69 73 20 54 6f 75 =.null.&&.!(pointerDevice.is.Tou
110e0 63 68 73 63 72 65 65 6e 29 29 20 2f 2f 20 54 6f 75 63 68 73 63 72 65 65 6e 20 6f 6e 6c 79 20 74 chscreen)).//.Touchscreen.only.t
11100 65 6d 70 6f 72 61 72 69 6c 79 20 61 6c 6c 6f 63 61 74 65 20 70 6f 69 6e 74 65 72 20 73 74 61 74 emporarily.allocate.pointer.stat
11120 65 73 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 es...................{..........
11140 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 43 72 65 61 74 65 20 4d 6f 75 73 65 4f 72 50 65 6e ............//.Create.MouseOrPen
11160 20 73 74 79 6c 65 20 70 6f 69 6e 74 65 72 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .style.pointer..................
11180 20 20 20 20 20 69 6e 64 65 78 20 3d 20 41 6c 6c 6f 63 61 74 65 50 6f 69 6e 74 65 72 28 70 6f 69 .....index.=.AllocatePointer(poi
111a0 6e 74 65 72 44 65 76 69 63 65 2e 64 65 76 69 63 65 49 64 2c 20 30 2c 20 55 49 50 6f 69 6e 74 65 nterDevice.deviceId,.0,.UIPointe
111c0 72 54 79 70 65 2e 4d 6f 75 73 65 4f 72 50 65 6e 2c 20 70 6f 69 6e 74 65 72 44 65 76 69 63 65 29 rType.MouseOrPen,.pointerDevice)
111e0 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 ;..................}............
11200 20 20 20 20 20 20 65 6c 73 65 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 ......else..................{...
11220 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 44 6f 20 74 68 65 20 73 61 6d ...................//.Do.the.sam
11240 65 20 62 75 74 20 6c 6f 6f 6b 20 61 74 20 74 68 65 20 60 70 6f 73 69 74 69 6f 6e 60 20 61 63 74 e.but.look.at.the.`position`.act
11260 69 6f 6e 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 70 6f ion.......................var.po
11280 73 69 74 69 6f 6e 43 6f 6e 74 72 6f 6c 73 20 3d 20 74 72 61 63 6b 65 64 44 65 76 69 63 65 50 6f sitionControls.=.trackedDevicePo
112a0 73 69 74 69 6f 6e 3f 2e 61 63 74 69 6f 6e 3f 2e 63 6f 6e 74 72 6f 6c 73 3b 0d 0a 20 20 20 20 20 sition?.action?.controls;.......
112c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 74 72 61 63 6b 65 64 44 65 76 69 63 65 ...............var.trackedDevice
112e0 20 3d 20 70 6f 73 69 74 69 6f 6e 43 6f 6e 74 72 6f 6c 73 2e 48 61 73 56 61 6c 75 65 20 26 26 20 .=.positionControls.HasValue.&&.
11300 70 6f 73 69 74 69 6f 6e 43 6f 6e 74 72 6f 6c 73 2e 56 61 6c 75 65 2e 43 6f 75 6e 74 20 3e 20 30 positionControls.Value.Count.>.0
11320 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3f 20 70 6f 73 69 ..........................?.posi
11340 74 69 6f 6e 43 6f 6e 74 72 6f 6c 73 2e 56 61 6c 75 65 5b 30 5d 2e 64 65 76 69 63 65 0d 0a 20 20 tionControls.Value[0].device....
11360 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3a 20 6e 75 6c 6c 3b 0d 0a 20 ......................:.null;...
11380 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 74 72 61 63 6b 65 64 44 65 ...................if.(trackedDe
113a0 76 69 63 65 20 21 3d 20 6e 75 6c 6c 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 vice.!=.null)...................
113c0 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f ...{..........................//
113e0 20 43 72 65 61 74 65 20 61 20 54 72 61 63 6b 65 64 20 73 74 79 6c 65 20 70 6f 69 6e 74 65 72 2e .Create.a.Tracked.style.pointer.
11400 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 6e 64 65 78 20 ..........................index.
11420 3d 20 41 6c 6c 6f 63 61 74 65 50 6f 69 6e 74 65 72 28 74 72 61 63 6b 65 64 44 65 76 69 63 65 2e =.AllocatePointer(trackedDevice.
11440 64 65 76 69 63 65 49 64 2c 20 30 2c 20 55 49 50 6f 69 6e 74 65 72 54 79 70 65 2e 54 72 61 63 6b deviceId,.0,.UIPointerType.Track
11460 65 64 2c 20 74 72 61 63 6b 65 64 44 65 76 69 63 65 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 ed,.trackedDevice);.............
11480 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .........}......................
114a0 65 6c 73 65 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 else......................{.....
114c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 57 65 20 67 6f 74 20 69 .....................//.We.got.i
114e0 6e 70 75 74 20 66 72 6f 6d 20 61 20 6e 6f 6e 2d 70 6f 69 6e 74 65 72 20 64 65 76 69 63 65 20 61 nput.from.a.non-pointer.device.a
11500 6e 64 20 61 70 70 61 72 65 6e 74 6c 79 20 74 68 65 72 65 27 73 20 6e 6f 20 70 6f 69 6e 74 65 72 nd.apparently.there's.no.pointer
11520 20 77 65 20 63 61 6e 20 72 6f 75 74 65 20 74 68 65 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 .we.can.route.the...............
11540 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 69 6e 70 75 74 20 69 6e 74 6f 2e 20 4a 75 73 74 20 63 ...........//.input.into..Just.c
11560 72 65 61 74 65 20 61 20 70 6f 69 6e 74 65 72 20 73 74 61 74 65 20 66 6f 72 20 74 68 65 20 64 65 reate.a.pointer.state.for.the.de
11580 76 69 63 65 20 61 6e 64 20 6c 65 61 76 65 20 69 74 20 61 74 20 74 68 61 74 2e 0d 0a 20 20 20 20 vice.and.leave.it.at.that.......
115a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 6e 64 65 78 20 3d 20 41 6c 6c 6f ....................index.=.Allo
115c0 63 61 74 65 50 6f 69 6e 74 65 72 28 70 6f 69 6e 74 65 72 49 64 2c 20 30 2c 20 55 49 50 6f 69 6e catePointer(pointerId,.0,.UIPoin
115e0 74 65 72 54 79 70 65 2e 4e 6f 6e 65 2c 20 64 65 76 69 63 65 29 3b 0d 0a 20 20 20 20 20 20 20 20 terType.None,.device);..........
11600 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d ............}..................}
11620 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 6d ..............}................m
11640 5f 43 75 72 72 65 6e 74 50 6f 69 6e 74 65 72 49 64 20 3d 20 70 6f 69 6e 74 65 72 49 64 3b 0d 0a _CurrentPointerId.=.pointerId;..
11660 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 43 75 72 72 65 6e 74 50 6f 69 6e 74 65 72 49 6e 64 65 ............m_CurrentPointerInde
11680 78 20 3d 20 69 6e 64 65 78 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 43 75 72 72 65 6e x.=.index;..............m_Curren
116a0 74 50 6f 69 6e 74 65 72 54 79 70 65 20 3d 20 70 6f 69 6e 74 65 72 54 79 70 65 3b 0d 0a 0d 0a 20 tPointerType.=.pointerType;.....
116c0 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 69 6e 64 65 78 3b 0d 0a 20 20 20 20 20 20 ...........return.index;........
116e0 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 70 72 69 76 61 74 65 20 69 6e 74 20 41 6c 6c 6f 63 ..}............private.int.Alloc
11700 61 74 65 50 6f 69 6e 74 65 72 28 69 6e 74 20 70 6f 69 6e 74 65 72 49 64 2c 20 69 6e 74 20 74 6f atePointer(int.pointerId,.int.to
11720 75 63 68 49 64 2c 20 55 49 50 6f 69 6e 74 65 72 54 79 70 65 20 70 6f 69 6e 74 65 72 54 79 70 65 uchId,.UIPointerType.pointerType
11740 2c 20 49 6e 70 75 74 44 65 76 69 63 65 20 64 65 76 69 63 65 29 0d 0a 20 20 20 20 20 20 20 20 7b ,.InputDevice.device)..........{
11760 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 52 65 63 6f 76 65 72 20 65 76 65 6e 74 20 69 ..............//.Recover.event.i
11780 6e 73 74 61 6e 63 65 20 66 72 6f 6d 20 70 72 65 76 69 6f 75 73 20 72 65 63 6f 72 64 2e 0d 0a 20 nstance.from.previous.record....
117a0 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 65 76 65 6e 74 44 61 74 61 20 3d 20 64 65 66 61 75 ...........var.eventData.=.defau
117c0 6c 74 28 45 78 74 65 6e 64 65 64 50 6f 69 6e 74 65 72 45 76 65 6e 74 44 61 74 61 29 3b 0d 0a 20 lt(ExtendedPointerEventData);...
117e0 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 6d 5f 50 6f 69 6e 74 65 72 53 74 61 74 65 73 2e 43 ...........if.(m_PointerStates.C
11800 61 70 61 63 69 74 79 20 3e 20 6d 5f 50 6f 69 6e 74 65 72 53 74 61 74 65 73 2e 6c 65 6e 67 74 68 apacity.>.m_PointerStates.length
11820 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 )..............{................
11840 20 20 69 66 20 28 6d 5f 50 6f 69 6e 74 65 72 53 74 61 74 65 73 2e 6c 65 6e 67 74 68 20 3d 3d 20 ..if.(m_PointerStates.length.==.
11860 30 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 76 65 6e 74 44 61 74 0)......................eventDat
11880 61 20 3d 20 6d 5f 50 6f 69 6e 74 65 72 53 74 61 74 65 73 2e 66 69 72 73 74 56 61 6c 75 65 2e 65 a.=.m_PointerStates.firstValue.e
118a0 76 65 6e 74 44 61 74 61 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 6c 73 65 0d ventData;..................else.
118c0 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 76 65 6e 74 44 61 74 61 20 3d .....................eventData.=
118e0 20 6d 5f 50 6f 69 6e 74 65 72 53 74 61 74 65 73 2e 61 64 64 69 74 69 6f 6e 61 6c 56 61 6c 75 65 .m_PointerStates.additionalValue
11900 73 5b 6d 5f 50 6f 69 6e 74 65 72 53 74 61 74 65 73 2e 6c 65 6e 67 74 68 20 2d 20 31 5d 2e 65 76 s[m_PointerStates.length.-.1].ev
11920 65 6e 74 44 61 74 61 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 entData;..............}.........
11940 20 20 20 20 20 20 20 2f 2f 20 4f 72 20 61 6c 6c 6f 63 61 74 65 20 65 76 65 6e 74 2e 0d 0a 20 20 .......//.Or.allocate.event.....
11960 20 20 20 20 20 20 20 20 20 20 69 66 20 28 65 76 65 6e 74 44 61 74 61 20 3d 3d 20 6e 75 6c 6c 29 ..........if.(eventData.==.null)
11980 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 76 65 6e 74 44 61 74 61 20 3d 20 6e 65 ..................eventData.=.ne
119a0 77 20 45 78 74 65 6e 64 65 64 50 6f 69 6e 74 65 72 45 76 65 6e 74 44 61 74 61 28 65 76 65 6e 74 w.ExtendedPointerEventData(event
119c0 53 79 73 74 65 6d 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 41 6c 6c 6f 63 System);................//.Alloc
119e0 61 74 65 20 73 74 61 74 65 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 50 6f 69 6e 74 65 ate.state...............m_Pointe
11a00 72 49 64 73 2e 41 70 70 65 6e 64 57 69 74 68 43 61 70 61 63 69 74 79 28 70 6f 69 6e 74 65 72 49 rIds.AppendWithCapacity(pointerI
11a20 64 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 6d 5f 50 6f 69 6e 74 65 d);..............return.m_Pointe
11a40 72 53 74 61 74 65 73 2e 41 70 70 65 6e 64 57 69 74 68 43 61 70 61 63 69 74 79 28 6e 65 77 20 50 rStates.AppendWithCapacity(new.P
11a60 6f 69 6e 74 65 72 4d 6f 64 65 6c 28 70 6f 69 6e 74 65 72 49 64 2c 20 74 6f 75 63 68 49 64 2c 20 ointerModel(pointerId,.touchId,.
11a80 70 6f 69 6e 74 65 72 54 79 70 65 2c 20 64 65 76 69 63 65 2c 20 65 76 65 6e 74 44 61 74 61 29 29 pointerType,.device,.eventData))
11aa0 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 70 72 69 76 61 74 65 20 ;..........}............private.
11ac0 76 6f 69 64 20 53 65 6e 64 50 6f 69 6e 74 65 72 45 78 69 74 45 76 65 6e 74 73 41 6e 64 52 65 6d void.SendPointerExitEventsAndRem
11ae0 6f 76 65 50 6f 69 6e 74 65 72 28 69 6e 74 20 69 6e 64 65 78 29 0d 0a 20 20 20 20 20 20 20 20 7b ovePointer(int.index)..........{
11b00 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 65 76 65 6e 74 44 61 74 61 20 3d 20 6d 5f ..............var.eventData.=.m_
11b20 50 6f 69 6e 74 65 72 53 74 61 74 65 73 5b 69 6e 64 65 78 5d 2e 65 76 65 6e 74 44 61 74 61 3b 0d PointerStates[index].eventData;.
11b40 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 65 76 65 6e 74 44 61 74 61 2e 70 6f 69 6e 74 .............if.(eventData.point
11b60 65 72 45 6e 74 65 72 20 21 3d 20 6e 75 6c 6c 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 erEnter.!=.null)................
11b80 20 20 50 72 6f 63 65 73 73 50 6f 69 6e 74 65 72 4d 6f 76 65 6d 65 6e 74 28 65 76 65 6e 74 44 61 ..ProcessPointerMovement(eventDa
11ba0 74 61 2c 20 6e 75 6c 6c 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 52 65 6d 6f 76 65 ta,.null);................Remove
11bc0 50 6f 69 6e 74 65 72 41 74 49 6e 64 65 78 28 69 6e 64 65 78 29 3b 0d 0a 20 20 20 20 20 20 20 20 PointerAtIndex(index);..........
11be0 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 70 72 69 76 61 74 65 20 76 6f 69 64 20 52 65 6d 6f 76 65 }............private.void.Remove
11c00 50 6f 69 6e 74 65 72 41 74 49 6e 64 65 78 28 69 6e 74 20 69 6e 64 65 78 29 0d 0a 20 20 20 20 20 PointerAtIndex(int.index).......
11c20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 44 65 62 75 67 2e 41 73 73 65 72 74 28 6d ...{..............Debug.Assert(m
11c40 5f 50 6f 69 6e 74 65 72 53 74 61 74 65 73 5b 69 6e 64 65 78 5d 2e 65 76 65 6e 74 44 61 74 61 2e _PointerStates[index].eventData.
11c60 70 6f 69 6e 74 65 72 45 6e 74 65 72 20 3d 3d 20 6e 75 6c 6c 2c 20 22 50 6f 69 6e 74 65 72 20 73 pointerEnter.==.null,."Pointer.s
11c80 68 6f 75 6c 64 20 68 61 76 65 20 65 78 69 74 65 64 20 61 6c 6c 20 6f 62 6a 65 63 74 73 20 62 65 hould.have.exited.all.objects.be
11ca0 66 6f 72 65 20 62 65 69 6e 67 20 72 65 6d 6f 76 65 64 22 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 fore.being.removed");...........
11cc0 20 20 20 20 20 2f 2f 20 52 65 74 61 69 6e 20 65 76 65 6e 74 20 64 61 74 61 20 73 6f 20 74 68 61 .....//.Retain.event.data.so.tha
11ce0 74 20 77 65 20 63 61 6e 20 72 65 75 73 65 20 74 68 65 20 65 76 65 6e 74 20 74 68 65 20 6e 65 78 t.we.can.reuse.the.event.the.nex
11d00 74 20 74 69 6d 65 20 77 65 20 61 6c 6c 6f 63 61 74 65 20 61 20 50 6f 69 6e 74 65 72 4d 6f 64 65 t.time.we.allocate.a.PointerMode
11d20 6c 20 72 65 63 6f 72 64 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 65 76 65 6e 74 l.record...............var.event
11d40 44 61 74 61 20 3d 20 6d 5f 50 6f 69 6e 74 65 72 53 74 61 74 65 73 5b 69 6e 64 65 78 5d 2e 65 76 Data.=.m_PointerStates[index].ev
11d60 65 6e 74 44 61 74 61 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 44 65 62 75 67 2e 41 73 73 65 entData;..............Debug.Asse
11d80 72 74 28 65 76 65 6e 74 44 61 74 61 20 21 3d 20 6e 75 6c 6c 2c 20 22 50 6f 69 6e 74 65 72 20 73 rt(eventData.!=.null,."Pointer.s
11da0 74 61 74 65 20 73 68 6f 75 6c 64 20 68 61 76 65 20 61 6e 20 65 76 65 6e 74 20 69 6e 73 74 61 6e tate.should.have.an.event.instan
11dc0 63 65 21 22 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 52 65 6d 6f 76 65 2e ce!");................//.Remove.
11de0 20 4e 6f 74 65 20 74 68 61 74 20 77 65 20 6d 61 79 20 63 68 61 6e 67 65 20 74 68 65 20 6f 72 64 .Note.that.we.may.change.the.ord
11e00 65 72 20 6f 66 20 70 6f 69 6e 74 65 72 73 20 68 65 72 65 2e 20 54 68 69 73 20 63 61 6e 20 73 61 er.of.pointers.here..This.can.sa
11e20 76 65 20 75 73 20 6e 65 65 64 6c 65 73 73 20 63 6f 70 79 69 6e 67 0d 0a 20 20 20 20 20 20 20 20 ve.us.needless.copying..........
11e40 20 20 20 20 2f 2f 20 61 6e 64 20 6d 5f 43 75 72 72 65 6e 74 50 6f 69 6e 74 65 72 49 6e 64 65 78 ....//.and.m_CurrentPointerIndex
11e60 20 73 68 6f 75 6c 64 20 62 65 20 74 68 65 20 6f 6e 6c 79 20 69 6e 64 65 78 20 77 65 20 67 65 74 .should.be.the.only.index.we.get
11e80 20 61 72 6f 75 6e 64 20 66 6f 72 20 6c 6f 6e 67 65 72 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 .around.for.longer..............
11ea0 20 6d 5f 50 6f 69 6e 74 65 72 49 64 73 2e 52 65 6d 6f 76 65 41 74 42 79 4d 6f 76 69 6e 67 54 61 .m_PointerIds.RemoveAtByMovingTa
11ec0 69 6c 57 69 74 68 43 61 70 61 63 69 74 79 28 69 6e 64 65 78 29 3b 0d 0a 20 20 20 20 20 20 20 20 ilWithCapacity(index);..........
11ee0 20 20 20 20 6d 5f 50 6f 69 6e 74 65 72 53 74 61 74 65 73 2e 52 65 6d 6f 76 65 41 74 42 79 4d 6f ....m_PointerStates.RemoveAtByMo
11f00 76 69 6e 67 54 61 69 6c 57 69 74 68 43 61 70 61 63 69 74 79 28 69 6e 64 65 78 29 3b 0d 0a 20 20 vingTailWithCapacity(index);....
11f20 20 20 20 20 20 20 20 20 20 20 44 65 62 75 67 2e 41 73 73 65 72 74 28 6d 5f 50 6f 69 6e 74 65 72 ..........Debug.Assert(m_Pointer
11f40 49 64 73 2e 6c 65 6e 67 74 68 20 3d 3d 20 6d 5f 50 6f 69 6e 74 65 72 53 74 61 74 65 73 2e 6c 65 Ids.length.==.m_PointerStates.le
11f60 6e 67 74 68 2c 20 22 50 6f 69 6e 74 65 72 20 49 44 20 61 72 72 61 79 20 73 68 6f 75 6c 64 20 6d ngth,."Pointer.ID.array.should.m
11f80 61 74 63 68 20 73 74 61 74 65 20 61 72 72 61 79 20 69 6e 20 6c 65 6e 67 74 68 22 29 3b 0d 0a 0d atch.state.array.in.length");...
11fa0 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 69 6e 64 65 78 20 3d 3d 20 6d 5f 43 75 72 72 .............if.(index.==.m_Curr
11fc0 65 6e 74 50 6f 69 6e 74 65 72 49 6e 64 65 78 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d entPointerIndex)..............{.
11fe0 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 43 75 72 72 65 6e 74 50 6f 69 6e 74 65 .................m_CurrentPointe
12000 72 49 64 20 3d 20 2d 31 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 43 75 72 rId.=.-1;..................m_Cur
12020 72 65 6e 74 50 6f 69 6e 74 65 72 49 6e 64 65 78 20 3d 20 2d 31 3b 0d 0a 20 20 20 20 20 20 20 20 rentPointerIndex.=.-1;..........
12040 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 50 75 74 20 65 76 65 6e ....}................//.Put.even
12060 74 20 69 6e 73 74 61 6e 63 65 20 62 61 63 6b 20 69 6e 20 70 6c 61 63 65 20 61 74 20 6f 6e 65 20 t.instance.back.in.place.at.one.
12080 70 61 73 74 20 6c 61 73 74 20 65 6e 74 72 79 20 6f 66 20 61 72 72 61 79 20 28 77 68 69 63 68 20 past.last.entry.of.array.(which.
120a0 77 65 20 6b 6e 6f 77 20 77 65 20 68 61 76 65 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 we.know.we.have..............//.
120c0 61 73 20 77 65 20 6a 75 73 74 20 65 72 61 73 65 64 20 6f 6e 65 20 65 6e 74 72 79 29 2e 20 54 68 as.we.just.erased.one.entry)..Th
120e0 69 73 20 65 6e 74 72 79 20 77 69 6c 6c 20 62 65 20 74 68 65 20 6e 65 78 74 20 6f 6e 65 20 74 68 is.entry.will.be.the.next.one.th
12100 61 74 20 77 69 6c 6c 20 62 65 20 75 73 65 64 20 77 68 65 6e 20 77 65 0d 0a 20 20 20 20 20 20 20 at.will.be.used.when.we.........
12120 20 20 20 20 20 2f 2f 20 61 6c 6c 6f 63 61 74 65 20 61 20 6e 65 77 20 65 6e 74 72 79 2e 0d 0a 0d .....//.allocate.a.new.entry....
12140 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 57 69 70 65 20 74 68 65 20 65 76 65 6e 74 2e 0d .............//.Wipe.the.event..
12160 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 4e 4f 54 45 3a 20 57 65 20 6f 6e 6c 79 20 77 69 .............//.NOTE:.We.only.wi
12180 70 65 20 70 72 6f 70 65 72 74 69 65 73 20 68 65 72 65 20 74 68 61 74 20 63 6f 6e 74 61 69 6e 20 pe.properties.here.that.contain.
121a0 72 65 66 65 72 65 6e 63 65 20 64 61 74 61 2e 20 54 68 65 20 72 65 73 74 20 77 65 20 72 65 6c 79 reference.data..The.rest.we.rely
121c0 20 6f 6e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 20 20 20 20 20 20 74 68 65 20 65 76 .on..............//.......the.ev
121e0 65 6e 74 20 68 61 6e 64 6c 69 6e 67 20 63 6f 64 65 20 74 6f 20 69 6e 69 74 69 61 6c 69 7a 65 20 ent.handling.code.to.initialize.
12200 77 68 65 6e 20 75 73 69 6e 67 20 74 68 65 20 65 76 65 6e 74 2e 0d 0a 20 20 20 20 20 20 20 20 20 when.using.the.event............
12220 20 20 20 65 76 65 6e 74 44 61 74 61 2e 68 6f 76 65 72 65 64 2e 43 6c 65 61 72 28 29 3b 0d 0a 20 ...eventData.hovered.Clear();...
12240 20 20 20 20 20 20 20 20 20 20 20 65 76 65 6e 74 44 61 74 61 2e 64 65 76 69 63 65 20 3d 20 6e 75 ...........eventData.device.=.nu
12260 6c 6c 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 65 76 65 6e 74 44 61 74 61 2e 70 6f 69 6e 74 ll;..............eventData.point
12280 65 72 43 75 72 72 65 6e 74 52 61 79 63 61 73 74 20 3d 20 64 65 66 61 75 6c 74 3b 0d 0a 20 20 20 erCurrentRaycast.=.default;.....
122a0 20 20 20 20 20 20 20 20 20 65 76 65 6e 74 44 61 74 61 2e 70 6f 69 6e 74 65 72 50 72 65 73 73 52 .........eventData.pointerPressR
122c0 61 79 63 61 73 74 20 3d 20 64 65 66 61 75 6c 74 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 65 aycast.=.default;..............e
122e0 76 65 6e 74 44 61 74 61 2e 70 6f 69 6e 74 65 72 50 72 65 73 73 20 3d 20 64 65 66 61 75 6c 74 3b ventData.pointerPress.=.default;
12300 20 2f 2f 20 54 77 69 63 65 20 74 6f 20 77 69 70 65 20 6c 61 73 74 50 72 65 73 73 2c 20 74 6f 6f .//.Twice.to.wipe.lastPress,.too
12320 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 65 76 65 6e 74 44 61 74 61 2e 70 6f 69 6e 74 65 72 ...............eventData.pointer
12340 50 72 65 73 73 20 3d 20 64 65 66 61 75 6c 74 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 65 76 Press.=.default;..............ev
12360 65 6e 74 44 61 74 61 2e 70 6f 69 6e 74 65 72 44 72 61 67 20 3d 20 64 65 66 61 75 6c 74 3b 0d 0a entData.pointerDrag.=.default;..
12380 20 20 20 20 20 20 20 20 20 20 20 20 65 76 65 6e 74 44 61 74 61 2e 70 6f 69 6e 74 65 72 45 6e 74 ............eventData.pointerEnt
123a0 65 72 20 3d 20 64 65 66 61 75 6c 74 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 65 76 65 6e 74 er.=.default;..............event
123c0 44 61 74 61 2e 72 61 77 50 6f 69 6e 74 65 72 50 72 65 73 73 20 3d 20 64 65 66 61 75 6c 74 3b 0d Data.rawPointerPress.=.default;.
123e0 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 6d 5f 50 6f 69 6e 74 65 72 53 74 61 74 ...............if.(m_PointerStat
12400 65 73 2e 6c 65 6e 67 74 68 20 3d 3d 20 30 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 es.length.==.0).................
12420 20 6d 5f 50 6f 69 6e 74 65 72 53 74 61 74 65 73 2e 66 69 72 73 74 56 61 6c 75 65 2e 65 76 65 6e .m_PointerStates.firstValue.even
12440 74 44 61 74 61 20 3d 20 65 76 65 6e 74 44 61 74 61 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 tData.=.eventData;..............
12460 65 6c 73 65 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 50 6f 69 6e 74 65 72 53 else..................m_PointerS
12480 74 61 74 65 73 2e 61 64 64 69 74 69 6f 6e 61 6c 56 61 6c 75 65 73 5b 6d 5f 50 6f 69 6e 74 65 72 tates.additionalValues[m_Pointer
124a0 53 74 61 74 65 73 2e 6c 65 6e 67 74 68 20 2d 20 31 5d 2e 65 76 65 6e 74 44 61 74 61 20 3d 20 65 States.length.-.1].eventData.=.e
124c0 76 65 6e 74 44 61 74 61 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 ventData;..........}............
124e0 2f 2f 20 52 65 6d 6f 76 65 20 61 6e 79 20 70 6f 69 6e 74 65 72 20 74 68 61 74 20 6e 6f 20 6c 6f //.Remove.any.pointer.that.no.lo
12500 6e 67 65 72 20 68 61 73 20 74 68 65 20 61 62 69 6c 69 74 79 20 74 6f 20 70 6f 69 6e 74 2e 0d 0a nger.has.the.ability.to.point...
12520 20 20 20 20 20 20 20 20 70 72 69 76 61 74 65 20 76 6f 69 64 20 50 75 72 67 65 53 74 61 6c 65 50 ........private.void.PurgeStaleP
12540 6f 69 6e 74 65 72 73 28 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 ointers()..........{............
12560 20 20 66 6f 72 20 28 76 61 72 20 69 20 3d 20 30 3b 20 69 20 3c 20 6d 5f 50 6f 69 6e 74 65 72 53 ..for.(var.i.=.0;.i.<.m_PointerS
12580 74 61 74 65 73 2e 6c 65 6e 67 74 68 3b 20 2b 2b 69 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 tates.length;.++i)..............
125a0 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 66 20 76 61 72 20 73 74 61 74 65 {..................ref.var.state
125c0 20 3d 20 72 65 66 20 47 65 74 50 6f 69 6e 74 65 72 53 74 61 74 65 46 6f 72 49 6e 64 65 78 28 69 .=.ref.GetPointerStateForIndex(i
125e0 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 64 65 76 69 63 65 20 3d );..................var.device.=
12600 20 73 74 61 74 65 2e 65 76 65 6e 74 44 61 74 61 2e 64 65 76 69 63 65 3b 0d 0a 20 20 20 20 20 20 .state.eventData.device;........
12620 20 20 20 20 20 20 20 20 20 20 69 66 20 28 21 48 61 76 65 43 6f 6e 74 72 6f 6c 46 6f 72 44 65 76 ..........if.(!HaveControlForDev
12640 69 63 65 28 64 65 76 69 63 65 2c 20 70 6f 69 6e 74 29 20 26 26 0d 0a 20 20 20 20 20 20 20 20 20 ice(device,.point).&&...........
12660 20 20 20 20 20 20 20 20 20 20 20 21 48 61 76 65 43 6f 6e 74 72 6f 6c 46 6f 72 44 65 76 69 63 65 ...........!HaveControlForDevice
12680 28 64 65 76 69 63 65 2c 20 74 72 61 63 6b 65 64 44 65 76 69 63 65 50 6f 73 69 74 69 6f 6e 29 20 (device,.trackedDevicePosition).
126a0 26 26 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 21 48 61 76 65 43 6f 6e &&......................!HaveCon
126c0 74 72 6f 6c 46 6f 72 44 65 76 69 63 65 28 64 65 76 69 63 65 2c 20 74 72 61 63 6b 65 64 44 65 76 trolForDevice(device,.trackedDev
126e0 69 63 65 4f 72 69 65 6e 74 61 74 69 6f 6e 29 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 iceOrientation))................
12700 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 53 65 6e 64 50 6f 69 ..{......................SendPoi
12720 6e 74 65 72 45 78 69 74 45 76 65 6e 74 73 41 6e 64 52 65 6d 6f 76 65 50 6f 69 6e 74 65 72 28 69 nterExitEventsAndRemovePointer(i
12740 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2d 2d 69 3b 0d 0a 20 20 );......................--i;....
12760 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a ..............}..............}..
12780 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 70 72 69 76 61 74 65 20 73 74 61 ........}............private.sta
127a0 74 69 63 20 62 6f 6f 6c 20 48 61 76 65 43 6f 6e 74 72 6f 6c 46 6f 72 44 65 76 69 63 65 28 49 6e tic.bool.HaveControlForDevice(In
127c0 70 75 74 44 65 76 69 63 65 20 64 65 76 69 63 65 2c 20 49 6e 70 75 74 41 63 74 69 6f 6e 52 65 66 putDevice.device,.InputActionRef
127e0 65 72 65 6e 63 65 20 61 63 74 69 6f 6e 52 65 66 65 72 65 6e 63 65 29 0d 0a 20 20 20 20 20 20 20 erence.actionReference).........
12800 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 61 63 74 69 6f 6e 20 3d 20 61 63 74 .{..............var.action.=.act
12820 69 6f 6e 52 65 66 65 72 65 6e 63 65 3f 2e 61 63 74 69 6f 6e 3b 0d 0a 20 20 20 20 20 20 20 20 20 ionReference?.action;...........
12840 20 20 20 69 66 20 28 61 63 74 69 6f 6e 20 3d 3d 20 6e 75 6c 6c 29 0d 0a 20 20 20 20 20 20 20 20 ...if.(action.==.null)..........
12860 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 ........return.false;...........
12880 20 20 20 20 20 76 61 72 20 63 6f 6e 74 72 6f 6c 73 20 3d 20 61 63 74 69 6f 6e 2e 63 6f 6e 74 72 .....var.controls.=.action.contr
128a0 6f 6c 73 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 20 28 76 61 72 20 69 20 3d 20 30 ols;..............for.(var.i.=.0
128c0 3b 20 69 20 3c 20 63 6f 6e 74 72 6f 6c 73 2e 43 6f 75 6e 74 3b 20 2b 2b 69 29 0d 0a 20 20 20 20 ;.i.<.controls.Count;.++i)......
128e0 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 63 6f 6e 74 72 6f 6c 73 5b 69 5d 2e 64 65 76 69 ............if.(controls[i].devi
12900 63 65 20 3d 3d 20 64 65 76 69 63 65 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ce.==.device)...................
12920 20 20 20 72 65 74 75 72 6e 20 74 72 75 65 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 ...return.true;................r
12940 65 74 75 72 6e 20 66 61 6c 73 65 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 eturn.false;..........}.........
12960 20 20 20 70 72 69 76 61 74 65 20 76 6f 69 64 20 4f 6e 50 6f 69 6e 74 28 49 6e 70 75 74 41 63 74 ...private.void.OnPoint(InputAct
12980 69 6f 6e 2e 43 61 6c 6c 62 61 63 6b 43 6f 6e 74 65 78 74 20 63 6f 6e 74 65 78 74 29 0d 0a 20 20 ion.CallbackContext.context)....
129a0 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 66 20 76 61 72 20 73 74 61 ......{..............ref.var.sta
129c0 74 65 20 3d 20 72 65 66 20 47 65 74 50 6f 69 6e 74 65 72 53 74 61 74 65 46 6f 72 28 72 65 66 20 te.=.ref.GetPointerStateFor(ref.
129e0 63 6f 6e 74 65 78 74 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 74 61 74 65 2e 73 63 72 context);..............state.scr
12a00 65 65 6e 50 6f 73 69 74 69 6f 6e 20 3d 20 63 6f 6e 74 65 78 74 2e 52 65 61 64 56 61 6c 75 65 3c eenPosition.=.context.ReadValue<
12a20 56 65 63 74 6f 72 32 3e 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 Vector2>();..........}..........
12a40 20 20 2f 2f 2f 2f 52 45 56 49 45 57 3a 20 48 6f 77 20 73 68 6f 75 6c 64 20 77 65 20 68 61 6e 64 ..////REVIEW:.How.should.we.hand
12a60 6c 65 20 63 6c 69 63 6b 43 6f 75 6e 74 20 68 65 72 65 3f 20 54 68 65 72 65 27 73 20 6f 6e 6c 79 le.clickCount.here?.There's.only
12a80 20 6f 6e 65 20 66 6f 72 20 74 68 65 20 65 6e 74 69 72 65 20 64 65 76 69 63 65 20 79 65 74 20 72 .one.for.the.entire.device.yet.r
12aa0 69 67 68 74 20 61 6e 64 20 6d 69 64 64 6c 65 20 63 6c 69 63 6b 73 0d 0a 20 20 20 20 20 20 20 20 ight.and.middle.clicks..........
12ac0 2f 2f 2f 2f 20 20 20 20 20 20 20 20 61 72 65 20 69 6e 64 65 70 65 6e 64 65 6e 74 20 6f 66 20 6c ////........are.independent.of.l
12ae0 65 66 74 20 63 6c 69 63 6b 73 2e 20 41 54 4d 20 77 65 20 69 67 6e 6f 72 65 20 6e 61 74 69 76 65 eft.clicks..ATM.we.ignore.native
12b00 20 63 6c 69 63 6b 20 63 6f 75 6e 74 73 20 61 6e 64 20 64 6f 20 63 6c 69 63 6b 20 64 65 74 65 63 .click.counts.and.do.click.detec
12b20 74 69 6f 6e 20 66 6f 72 20 61 6c 6c 20 63 6c 69 63 6b 73 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f tion.for.all.clicks..........///
12b40 2f 20 20 20 20 20 20 20 20 6f 75 72 73 65 6c 76 65 73 20 6a 75 73 74 20 6c 69 6b 65 20 53 74 61 /........ourselves.just.like.Sta
12b60 6e 64 61 6c 6f 6e 65 49 6e 70 75 74 4d 6f 64 75 6c 65 20 64 6f 65 73 2e 0d 0a 0d 0a 20 20 20 20 ndaloneInputModule.does.........
12b80 20 20 20 20 70 72 69 76 61 74 65 20 76 6f 69 64 20 4f 6e 4c 65 66 74 43 6c 69 63 6b 28 49 6e 70 ....private.void.OnLeftClick(Inp
12ba0 75 74 41 63 74 69 6f 6e 2e 43 61 6c 6c 62 61 63 6b 43 6f 6e 74 65 78 74 20 63 6f 6e 74 65 78 74 utAction.CallbackContext.context
12bc0 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 66 20 76 61 )..........{..............ref.va
12be0 72 20 73 74 61 74 65 20 3d 20 72 65 66 20 47 65 74 50 6f 69 6e 74 65 72 53 74 61 74 65 46 6f 72 r.state.=.ref.GetPointerStateFor
12c00 28 72 65 66 20 63 6f 6e 74 65 78 74 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 74 61 74 (ref.context);..............stat
12c20 65 2e 6c 65 66 74 42 75 74 74 6f 6e 2e 69 73 50 72 65 73 73 65 64 20 3d 20 63 6f 6e 74 65 78 74 e.leftButton.isPressed.=.context
12c40 2e 52 65 61 64 56 61 6c 75 65 41 73 42 75 74 74 6f 6e 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 .ReadValueAsButton();...........
12c60 20 20 20 73 74 61 74 65 2e 63 68 61 6e 67 65 64 54 68 69 73 46 72 61 6d 65 20 3d 20 74 72 75 65 ...state.changedThisFrame.=.true
12c80 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 70 72 69 76 61 74 65 20 ;..........}............private.
12ca0 76 6f 69 64 20 4f 6e 52 69 67 68 74 43 6c 69 63 6b 28 49 6e 70 75 74 41 63 74 69 6f 6e 2e 43 61 void.OnRightClick(InputAction.Ca
12cc0 6c 6c 62 61 63 6b 43 6f 6e 74 65 78 74 20 63 6f 6e 74 65 78 74 29 0d 0a 20 20 20 20 20 20 20 20 llbackContext.context)..........
12ce0 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 66 20 76 61 72 20 73 74 61 74 65 20 3d 20 72 {..............ref.var.state.=.r
12d00 65 66 20 47 65 74 50 6f 69 6e 74 65 72 53 74 61 74 65 46 6f 72 28 72 65 66 20 63 6f 6e 74 65 78 ef.GetPointerStateFor(ref.contex
12d20 74 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 74 61 74 65 2e 72 69 67 68 74 42 75 74 74 t);..............state.rightButt
12d40 6f 6e 2e 69 73 50 72 65 73 73 65 64 20 3d 20 63 6f 6e 74 65 78 74 2e 52 65 61 64 56 61 6c 75 65 on.isPressed.=.context.ReadValue
12d60 41 73 42 75 74 74 6f 6e 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 74 61 74 65 2e 63 AsButton();..............state.c
12d80 68 61 6e 67 65 64 54 68 69 73 46 72 61 6d 65 20 3d 20 74 72 75 65 3b 0d 0a 20 20 20 20 20 20 20 hangedThisFrame.=.true;.........
12da0 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 70 72 69 76 61 74 65 20 76 6f 69 64 20 4f 6e 4d 69 64 .}............private.void.OnMid
12dc0 64 6c 65 43 6c 69 63 6b 28 49 6e 70 75 74 41 63 74 69 6f 6e 2e 43 61 6c 6c 62 61 63 6b 43 6f 6e dleClick(InputAction.CallbackCon
12de0 74 65 78 74 20 63 6f 6e 74 65 78 74 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 text.context)..........{........
12e00 20 20 20 20 20 20 72 65 66 20 76 61 72 20 73 74 61 74 65 20 3d 20 72 65 66 20 47 65 74 50 6f 69 ......ref.var.state.=.ref.GetPoi
12e20 6e 74 65 72 53 74 61 74 65 46 6f 72 28 72 65 66 20 63 6f 6e 74 65 78 74 29 3b 0d 0a 20 20 20 20 nterStateFor(ref.context);......
12e40 20 20 20 20 20 20 20 20 73 74 61 74 65 2e 6d 69 64 64 6c 65 42 75 74 74 6f 6e 2e 69 73 50 72 65 ........state.middleButton.isPre
12e60 73 73 65 64 20 3d 20 63 6f 6e 74 65 78 74 2e 52 65 61 64 56 61 6c 75 65 41 73 42 75 74 74 6f 6e ssed.=.context.ReadValueAsButton
12e80 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 74 61 74 65 2e 63 68 61 6e 67 65 64 54 68 ();..............state.changedTh
12ea0 69 73 46 72 61 6d 65 20 3d 20 74 72 75 65 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 isFrame.=.true;..........}......
12ec0 20 20 20 20 20 20 69 6e 74 65 72 6e 61 6c 20 63 6f 6e 73 74 20 66 6c 6f 61 74 20 6b 50 69 78 65 ......internal.const.float.kPixe
12ee0 6c 50 65 72 4c 69 6e 65 20 3d 20 32 30 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 70 72 69 76 61 74 lPerLine.=.20;............privat
12f00 65 20 76 6f 69 64 20 4f 6e 53 63 72 6f 6c 6c 28 49 6e 70 75 74 41 63 74 69 6f 6e 2e 43 61 6c 6c e.void.OnScroll(InputAction.Call
12f20 62 61 63 6b 43 6f 6e 74 65 78 74 20 63 6f 6e 74 65 78 74 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d backContext.context)..........{.
12f40 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 66 20 76 61 72 20 73 74 61 74 65 20 3d 20 72 65 66 .............ref.var.state.=.ref
12f60 20 47 65 74 50 6f 69 6e 74 65 72 53 74 61 74 65 46 6f 72 28 72 65 66 20 63 6f 6e 74 65 78 74 29 .GetPointerStateFor(ref.context)
12f80 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 54 68 65 20 6f 6c 64 20 69 6e 70 75 74 20 ;..............//.The.old.input.
12fa0 73 79 73 74 65 6d 20 72 65 70 6f 72 74 65 64 20 73 63 72 6f 6c 6c 20 64 65 6c 74 61 73 20 69 6e system.reported.scroll.deltas.in
12fc0 20 6c 69 6e 65 73 2c 20 77 65 20 72 65 70 6f 72 74 20 70 69 78 65 6c 73 2e 0d 0a 20 20 20 20 20 .lines,.we.report.pixels........
12fe0 20 20 20 20 20 20 20 2f 2f 20 4e 65 65 64 20 74 6f 20 73 63 61 6c 65 20 61 73 20 74 68 65 20 55 .......//.Need.to.scale.as.the.U
13000 49 20 73 79 73 74 65 6d 20 65 78 70 65 63 74 73 20 6c 69 6e 65 73 2e 0d 0a 20 20 20 20 20 20 20 I.system.expects.lines..........
13020 20 20 20 20 20 73 74 61 74 65 2e 73 63 72 6f 6c 6c 44 65 6c 74 61 20 3d 20 63 6f 6e 74 65 78 74 .....state.scrollDelta.=.context
13040 2e 52 65 61 64 56 61 6c 75 65 3c 56 65 63 74 6f 72 32 3e 28 29 20 2a 20 28 31 20 2f 20 6b 50 69 .ReadValue<Vector2>().*.(1./.kPi
13060 78 65 6c 50 65 72 4c 69 6e 65 29 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 xelPerLine);..........}.........
13080 20 20 20 70 72 69 76 61 74 65 20 76 6f 69 64 20 4f 6e 4d 6f 76 65 28 49 6e 70 75 74 41 63 74 69 ...private.void.OnMove(InputActi
130a0 6f 6e 2e 43 61 6c 6c 62 61 63 6b 43 6f 6e 74 65 78 74 20 63 6f 6e 74 65 78 74 29 0d 0a 20 20 20 on.CallbackContext.context).....
130c0 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 4e 61 76 69 67 61 74 69 6f 6e .....{..............m_Navigation
130e0 53 74 61 74 65 2e 6d 6f 76 65 20 3d 20 63 6f 6e 74 65 78 74 2e 52 65 61 64 56 61 6c 75 65 3c 56 State.move.=.context.ReadValue<V
13100 65 63 74 6f 72 32 3e 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 ector2>();..........}...........
13120 20 70 72 69 76 61 74 65 20 76 6f 69 64 20 4f 6e 53 75 62 6d 69 74 28 49 6e 70 75 74 41 63 74 69 .private.void.OnSubmit(InputActi
13140 6f 6e 2e 43 61 6c 6c 62 61 63 6b 43 6f 6e 74 65 78 74 20 63 6f 6e 74 65 78 74 29 0d 0a 20 20 20 on.CallbackContext.context).....
13160 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 4e 61 76 69 67 61 74 69 6f 6e .....{..............m_Navigation
13180 53 74 61 74 65 2e 73 75 62 6d 69 74 42 75 74 74 6f 6e 2e 69 73 50 72 65 73 73 65 64 20 3d 20 63 State.submitButton.isPressed.=.c
131a0 6f 6e 74 65 78 74 2e 52 65 61 64 56 61 6c 75 65 41 73 42 75 74 74 6f 6e 28 29 3b 0d 0a 20 20 20 ontext.ReadValueAsButton();.....
131c0 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 70 72 69 76 61 74 65 20 76 6f 69 64 20 4f .....}............private.void.O
131e0 6e 43 61 6e 63 65 6c 28 49 6e 70 75 74 41 63 74 69 6f 6e 2e 43 61 6c 6c 62 61 63 6b 43 6f 6e 74 nCancel(InputAction.CallbackCont
13200 65 78 74 20 63 6f 6e 74 65 78 74 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 ext.context)..........{.........
13220 20 20 20 20 20 6d 5f 4e 61 76 69 67 61 74 69 6f 6e 53 74 61 74 65 2e 63 61 6e 63 65 6c 42 75 74 .....m_NavigationState.cancelBut
13240 74 6f 6e 2e 69 73 50 72 65 73 73 65 64 20 3d 20 63 6f 6e 74 65 78 74 2e 52 65 61 64 56 61 6c 75 ton.isPressed.=.context.ReadValu
13260 65 41 73 42 75 74 74 6f 6e 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 eAsButton();..........}.........
13280 20 20 20 70 72 69 76 61 74 65 20 76 6f 69 64 20 4f 6e 54 72 61 63 6b 65 64 44 65 76 69 63 65 4f ...private.void.OnTrackedDeviceO
132a0 72 69 65 6e 74 61 74 69 6f 6e 28 49 6e 70 75 74 41 63 74 69 6f 6e 2e 43 61 6c 6c 62 61 63 6b 43 rientation(InputAction.CallbackC
132c0 6f 6e 74 65 78 74 20 63 6f 6e 74 65 78 74 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 ontext.context)..........{......
132e0 20 20 20 20 20 20 20 20 72 65 66 20 76 61 72 20 73 74 61 74 65 20 3d 20 72 65 66 20 47 65 74 50 ........ref.var.state.=.ref.GetP
13300 6f 69 6e 74 65 72 53 74 61 74 65 46 6f 72 28 72 65 66 20 63 6f 6e 74 65 78 74 29 3b 0d 0a 20 20 ointerStateFor(ref.context);....
13320 20 20 20 20 20 20 20 20 20 20 73 74 61 74 65 2e 77 6f 72 6c 64 4f 72 69 65 6e 74 61 74 69 6f 6e ..........state.worldOrientation
13340 20 3d 20 63 6f 6e 74 65 78 74 2e 52 65 61 64 56 61 6c 75 65 3c 51 75 61 74 65 72 6e 69 6f 6e 3e .=.context.ReadValue<Quaternion>
13360 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 70 72 69 76 61 74 ();..........}............privat
13380 65 20 76 6f 69 64 20 4f 6e 54 72 61 63 6b 65 64 44 65 76 69 63 65 50 6f 73 69 74 69 6f 6e 28 49 e.void.OnTrackedDevicePosition(I
133a0 6e 70 75 74 41 63 74 69 6f 6e 2e 43 61 6c 6c 62 61 63 6b 43 6f 6e 74 65 78 74 20 63 6f 6e 74 65 nputAction.CallbackContext.conte
133c0 78 74 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 66 20 xt)..........{..............ref.
133e0 76 61 72 20 73 74 61 74 65 20 3d 20 72 65 66 20 47 65 74 50 6f 69 6e 74 65 72 53 74 61 74 65 46 var.state.=.ref.GetPointerStateF
13400 6f 72 28 72 65 66 20 63 6f 6e 74 65 78 74 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 74 or(ref.context);..............st
13420 61 74 65 2e 77 6f 72 6c 64 50 6f 73 69 74 69 6f 6e 20 3d 20 63 6f 6e 74 65 78 74 2e 52 65 61 64 ate.worldPosition.=.context.Read
13440 56 61 6c 75 65 3c 56 65 63 74 6f 72 33 3e 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a Value<Vector3>();..........}....
13460 20 20 20 20 20 20 20 20 70 72 69 76 61 74 65 20 76 6f 69 64 20 4f 6e 43 6f 6e 74 72 6f 6c 73 43 ........private.void.OnControlsC
13480 68 61 6e 67 65 64 28 6f 62 6a 65 63 74 20 6f 62 6a 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 hanged(object.obj)..........{...
134a0 20 20 20 20 20 20 20 20 20 20 20 50 75 72 67 65 53 74 61 6c 65 50 6f 69 6e 74 65 72 73 28 29 3b ...........PurgeStalePointers();
134c0 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 70 75 62 6c 69 63 20 6f 76 ..........}............public.ov
134e0 65 72 72 69 64 65 20 76 6f 69 64 20 50 72 6f 63 65 73 73 28 29 0d 0a 20 20 20 20 20 20 20 20 7b erride.void.Process()..........{
13500 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 52 65 73 65 74 20 64 65 76 69 63 65 73 20 6f ..............//.Reset.devices.o
13520 66 20 63 68 61 6e 67 65 73 20 73 69 6e 63 65 20 77 65 20 64 6f 6e 27 74 20 77 61 6e 74 20 74 6f f.changes.since.we.don't.want.to
13540 20 73 70 6f 6f 6c 20 75 70 20 63 68 61 6e 67 65 73 20 6f 6e 63 65 20 77 65 20 67 61 69 6e 20 66 .spool.up.changes.once.we.gain.f
13560 6f 63 75 73 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 21 65 76 65 6e 74 53 79 73 ocus...............if.(!eventSys
13580 74 65 6d 2e 69 73 46 6f 63 75 73 65 64 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 tem.isFocused)..............{...
135a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 4e 61 76 69 67 61 74 69 6f 6e 53 74 61 74 65 ...............m_NavigationState
135c0 2e 4f 6e 46 72 61 6d 65 46 69 6e 69 73 68 65 64 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 .OnFrameFinished();.............
135e0 20 20 20 20 20 66 6f 72 20 28 76 61 72 20 69 20 3d 20 30 3b 20 69 20 3c 20 6d 5f 50 6f 69 6e 74 .....for.(var.i.=.0;.i.<.m_Point
13600 65 72 53 74 61 74 65 73 2e 6c 65 6e 67 74 68 3b 20 2b 2b 69 29 0d 0a 20 20 20 20 20 20 20 20 20 erStates.length;.++i)...........
13620 20 20 20 20 20 20 20 20 20 20 20 6d 5f 50 6f 69 6e 74 65 72 53 74 61 74 65 73 5b 69 5d 2e 4f 6e ...........m_PointerStates[i].On
13640 46 72 61 6d 65 46 69 6e 69 73 68 65 64 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d FrameFinished();..............}.
13660 0a 20 20 20 20 20 20 20 20 20 20 20 20 65 6c 73 65 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b .............else..............{
13680 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 50 72 6f 63 65 73 73 4e 61 76 69 67 61 74 ..................ProcessNavigat
136a0 69 6f 6e 28 72 65 66 20 6d 5f 4e 61 76 69 67 61 74 69 6f 6e 53 74 61 74 65 29 3b 0d 0a 20 20 20 ion(ref.m_NavigationState);.....
136c0 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 20 28 76 61 72 20 69 20 3d 20 30 3b 20 69 20 3c .............for.(var.i.=.0;.i.<
136e0 20 6d 5f 50 6f 69 6e 74 65 72 53 74 61 74 65 73 2e 6c 65 6e 67 74 68 3b 20 69 2b 2b 29 0d 0a 20 .m_PointerStates.length;.i++)...
13700 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ...............{................
13720 20 20 20 20 20 20 72 65 66 20 76 61 72 20 73 74 61 74 65 20 3d 20 72 65 66 20 47 65 74 50 6f 69 ......ref.var.state.=.ref.GetPoi
13740 6e 74 65 72 53 74 61 74 65 46 6f 72 49 6e 64 65 78 28 69 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 nterStateForIndex(i);...........
13760 20 20 20 20 20 20 20 20 20 20 20 50 72 6f 63 65 73 73 50 6f 69 6e 74 65 72 28 72 65 66 20 73 74 ...........ProcessPointer(ref.st
13780 61 74 65 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 ate);........................//.
137a0 49 66 20 69 74 27 73 20 61 20 74 6f 75 63 68 20 61 6e 64 20 74 68 65 20 74 6f 75 63 68 20 68 61 If.it's.a.touch.and.the.touch.ha
137c0 73 20 65 6e 64 65 64 2c 20 72 65 6c 65 61 73 65 20 74 68 65 20 70 6f 69 6e 74 65 72 20 73 74 61 s.ended,.release.the.pointer.sta
137e0 74 65 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 4e 4f 54 45 te.......................//.NOTE
13800 3a 20 57 65 20 68 61 76 65 20 6e 6f 20 67 75 61 72 61 6e 74 65 65 20 74 68 61 74 20 74 68 65 20 :.We.have.no.guarantee.that.the.
13820 73 79 73 74 65 6d 20 72 65 75 73 65 73 20 74 6f 75 63 68 20 49 44 73 20 73 6f 20 74 68 65 20 74 system.reuses.touch.IDs.so.the.t
13840 6f 75 63 68 20 49 44 20 77 65 20 75 73 65 64 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ouch.ID.we.used.................
13860 20 20 20 20 20 2f 2f 20 20 20 20 20 20 20 61 73 20 61 20 70 6f 69 6e 74 65 72 20 49 44 20 6d 61 .....//.......as.a.pointer.ID.ma
13880 79 20 62 65 20 61 20 6f 6e 65 2d 6f 66 66 20 74 68 69 6e 67 2e 0d 0a 20 20 20 20 20 20 20 20 20 y.be.a.one-off.thing............
138a0 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 73 74 61 74 65 2e 70 6f 69 6e 74 65 72 54 79 70 65 ...........if.(state.pointerType
138c0 20 3d 3d 20 55 49 50 6f 69 6e 74 65 72 54 79 70 65 2e 54 6f 75 63 68 20 26 26 20 21 73 74 61 74 .==.UIPointerType.Touch.&&.!stat
138e0 65 2e 6c 65 66 74 42 75 74 74 6f 6e 2e 69 73 50 72 65 73 73 65 64 29 0d 0a 20 20 20 20 20 20 20 e.leftButton.isPressed).........
13900 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .............{..................
13920 20 20 20 20 20 20 20 20 52 65 6d 6f 76 65 50 6f 69 6e 74 65 72 41 74 49 6e 64 65 78 28 69 29 3b ........RemovePointerAtIndex(i);
13940 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2d 2d 69 3b 0d 0a ..........................--i;..
13960 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 ....................}...........
13980 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 .......}..............}.........
139a0 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 70 72 69 76 61 74 65 20 76 6f 69 64 20 48 6f 6f 6b 41 .}............private.void.HookA
139c0 63 74 69 6f 6e 73 28 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 ctions()..........{.............
139e0 20 69 66 20 28 6d 5f 41 63 74 69 6f 6e 73 48 6f 6f 6b 65 64 29 0d 0a 20 20 20 20 20 20 20 20 20 .if.(m_ActionsHooked)...........
13a00 20 20 20 20 20 20 20 72 65 74 75 72 6e 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 .......return;................if
13a20 20 28 6d 5f 4f 6e 50 6f 69 6e 74 44 65 6c 65 67 61 74 65 20 3d 3d 20 6e 75 6c 6c 29 0d 0a 20 20 .(m_OnPointDelegate.==.null)....
13a40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 4f 6e 50 6f 69 6e 74 44 65 6c 65 67 61 74 65 20 ..............m_OnPointDelegate.
13a60 3d 20 4f 6e 50 6f 69 6e 74 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 6d 5f 4f 6e =.OnPoint;..............if.(m_On
13a80 4c 65 66 74 43 6c 69 63 6b 44 65 6c 65 67 61 74 65 20 3d 3d 20 6e 75 6c 6c 29 0d 0a 20 20 20 20 LeftClickDelegate.==.null)......
13aa0 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 4f 6e 4c 65 66 74 43 6c 69 63 6b 44 65 6c 65 67 61 74 ............m_OnLeftClickDelegat
13ac0 65 20 3d 20 4f 6e 4c 65 66 74 43 6c 69 63 6b 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 e.=.OnLeftClick;..............if
13ae0 20 28 6d 5f 4f 6e 52 69 67 68 74 43 6c 69 63 6b 44 65 6c 65 67 61 74 65 20 3d 3d 20 6e 75 6c 6c .(m_OnRightClickDelegate.==.null
13b00 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 4f 6e 52 69 67 68 74 43 6c 69 63 )..................m_OnRightClic
13b20 6b 44 65 6c 65 67 61 74 65 20 3d 20 4f 6e 52 69 67 68 74 43 6c 69 63 6b 3b 0d 0a 20 20 20 20 20 kDelegate.=.OnRightClick;.......
13b40 20 20 20 20 20 20 20 69 66 20 28 6d 5f 4f 6e 4d 69 64 64 6c 65 43 6c 69 63 6b 44 65 6c 65 67 61 .......if.(m_OnMiddleClickDelega
13b60 74 65 20 3d 3d 20 6e 75 6c 6c 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 4f te.==.null)..................m_O
13b80 6e 4d 69 64 64 6c 65 43 6c 69 63 6b 44 65 6c 65 67 61 74 65 20 3d 20 4f 6e 4d 69 64 64 6c 65 43 nMiddleClickDelegate.=.OnMiddleC
13ba0 6c 69 63 6b 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 6d 5f 4f 6e 53 63 72 6f 6c lick;..............if.(m_OnScrol
13bc0 6c 57 68 65 65 6c 44 65 6c 65 67 61 74 65 20 3d 3d 20 6e 75 6c 6c 29 0d 0a 20 20 20 20 20 20 20 lWheelDelegate.==.null).........
13be0 20 20 20 20 20 20 20 20 20 6d 5f 4f 6e 53 63 72 6f 6c 6c 57 68 65 65 6c 44 65 6c 65 67 61 74 65 .........m_OnScrollWheelDelegate
13c00 20 3d 20 4f 6e 53 63 72 6f 6c 6c 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 6d 5f .=.OnScroll;..............if.(m_
13c20 4f 6e 4d 6f 76 65 44 65 6c 65 67 61 74 65 20 3d 3d 20 6e 75 6c 6c 29 0d 0a 20 20 20 20 20 20 20 OnMoveDelegate.==.null).........
13c40 20 20 20 20 20 20 20 20 20 6d 5f 4f 6e 4d 6f 76 65 44 65 6c 65 67 61 74 65 20 3d 20 4f 6e 4d 6f .........m_OnMoveDelegate.=.OnMo
13c60 76 65 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 6d 5f 4f 6e 53 75 62 6d 69 74 44 ve;..............if.(m_OnSubmitD
13c80 65 6c 65 67 61 74 65 20 3d 3d 20 6e 75 6c 6c 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 elegate.==.null)................
13ca0 20 20 6d 5f 4f 6e 53 75 62 6d 69 74 44 65 6c 65 67 61 74 65 20 3d 20 4f 6e 53 75 62 6d 69 74 3b ..m_OnSubmitDelegate.=.OnSubmit;
13cc0 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 6d 5f 4f 6e 43 61 6e 63 65 6c 44 65 6c 65 ..............if.(m_OnCancelDele
13ce0 67 61 74 65 20 3d 3d 20 6e 75 6c 6c 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d gate.==.null)..................m
13d00 5f 4f 6e 43 61 6e 63 65 6c 44 65 6c 65 67 61 74 65 20 3d 20 4f 6e 43 61 6e 63 65 6c 3b 0d 0a 20 _OnCancelDelegate.=.OnCancel;...
13d20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 6d 5f 4f 6e 54 72 61 63 6b 65 64 44 65 76 69 63 65 ...........if.(m_OnTrackedDevice
13d40 4f 72 69 65 6e 74 61 74 69 6f 6e 44 65 6c 65 67 61 74 65 20 3d 3d 20 6e 75 6c 6c 29 0d 0a 20 20 OrientationDelegate.==.null)....
13d60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 4f 6e 54 72 61 63 6b 65 64 44 65 76 69 63 65 4f ..............m_OnTrackedDeviceO
13d80 72 69 65 6e 74 61 74 69 6f 6e 44 65 6c 65 67 61 74 65 20 3d 20 4f 6e 54 72 61 63 6b 65 64 44 65 rientationDelegate.=.OnTrackedDe
13da0 76 69 63 65 4f 72 69 65 6e 74 61 74 69 6f 6e 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 viceOrientation;..............if
13dc0 20 28 6d 5f 4f 6e 54 72 61 63 6b 65 64 44 65 76 69 63 65 50 6f 73 69 74 69 6f 6e 44 65 6c 65 67 .(m_OnTrackedDevicePositionDeleg
13de0 61 74 65 20 3d 3d 20 6e 75 6c 6c 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f ate.==.null)..................m_
13e00 4f 6e 54 72 61 63 6b 65 64 44 65 76 69 63 65 50 6f 73 69 74 69 6f 6e 44 65 6c 65 67 61 74 65 20 OnTrackedDevicePositionDelegate.
13e20 3d 20 4f 6e 54 72 61 63 6b 65 64 44 65 76 69 63 65 50 6f 73 69 74 69 6f 6e 3b 0d 0a 0d 0a 20 20 =.OnTrackedDevicePosition;......
13e40 20 20 20 20 20 20 20 20 20 20 53 65 74 41 63 74 69 6f 6e 43 61 6c 6c 62 61 63 6b 73 28 74 72 75 ..........SetActionCallbacks(tru
13e60 65 29 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 70 72 69 76 61 74 e);..........}............privat
13e80 65 20 76 6f 69 64 20 55 6e 68 6f 6f 6b 41 63 74 69 6f 6e 73 28 29 0d 0a 20 20 20 20 20 20 20 20 e.void.UnhookActions()..........
13ea0 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 21 6d 5f 41 63 74 69 6f 6e 73 48 6f 6f {..............if.(!m_ActionsHoo
13ec0 6b 65 64 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 3b 0d 0a 0d ked)..................return;...
13ee0 0a 20 20 20 20 20 20 20 20 20 20 20 20 53 65 74 41 63 74 69 6f 6e 43 61 6c 6c 62 61 63 6b 73 28 .............SetActionCallbacks(
13f00 66 61 6c 73 65 29 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 70 72 false);..........}............pr
13f20 69 76 61 74 65 20 76 6f 69 64 20 53 65 74 41 63 74 69 6f 6e 43 61 6c 6c 62 61 63 6b 73 28 62 6f ivate.void.SetActionCallbacks(bo
13f40 6f 6c 20 69 6e 73 74 61 6c 6c 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 ol.install)..........{..........
13f60 20 20 20 20 6d 5f 41 63 74 69 6f 6e 73 48 6f 6f 6b 65 64 20 3d 20 69 6e 73 74 61 6c 6c 3b 0d 0a ....m_ActionsHooked.=.install;..
13f80 20 20 20 20 20 20 20 20 20 20 20 20 53 65 74 41 63 74 69 6f 6e 43 61 6c 6c 62 61 63 6b 28 6d 5f ............SetActionCallback(m_
13fa0 50 6f 69 6e 74 41 63 74 69 6f 6e 2c 20 6d 5f 4f 6e 50 6f 69 6e 74 44 65 6c 65 67 61 74 65 2c 20 PointAction,.m_OnPointDelegate,.
13fc0 69 6e 73 74 61 6c 6c 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 53 65 74 41 63 74 69 6f 6e install);..............SetAction
13fe0 43 61 6c 6c 62 61 63 6b 28 6d 5f 4d 6f 76 65 41 63 74 69 6f 6e 2c 20 6d 5f 4f 6e 4d 6f 76 65 44 Callback(m_MoveAction,.m_OnMoveD
14000 65 6c 65 67 61 74 65 2c 20 69 6e 73 74 61 6c 6c 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 elegate,.install);..............
14020 53 65 74 41 63 74 69 6f 6e 43 61 6c 6c 62 61 63 6b 28 6d 5f 4c 65 66 74 43 6c 69 63 6b 41 63 74 SetActionCallback(m_LeftClickAct
14040 69 6f 6e 2c 20 6d 5f 4f 6e 4c 65 66 74 43 6c 69 63 6b 44 65 6c 65 67 61 74 65 2c 20 69 6e 73 74 ion,.m_OnLeftClickDelegate,.inst
14060 61 6c 6c 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 53 65 74 41 63 74 69 6f 6e 43 61 6c 6c all);..............SetActionCall
14080 62 61 63 6b 28 6d 5f 52 69 67 68 74 43 6c 69 63 6b 41 63 74 69 6f 6e 2c 20 6d 5f 4f 6e 52 69 67 back(m_RightClickAction,.m_OnRig
140a0 68 74 43 6c 69 63 6b 44 65 6c 65 67 61 74 65 2c 20 69 6e 73 74 61 6c 6c 29 3b 0d 0a 20 20 20 20 htClickDelegate,.install);......
140c0 20 20 20 20 20 20 20 20 53 65 74 41 63 74 69 6f 6e 43 61 6c 6c 62 61 63 6b 28 6d 5f 4d 69 64 64 ........SetActionCallback(m_Midd
140e0 6c 65 43 6c 69 63 6b 41 63 74 69 6f 6e 2c 20 6d 5f 4f 6e 4d 69 64 64 6c 65 43 6c 69 63 6b 44 65 leClickAction,.m_OnMiddleClickDe
14100 6c 65 67 61 74 65 2c 20 69 6e 73 74 61 6c 6c 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 53 legate,.install);..............S
14120 65 74 41 63 74 69 6f 6e 43 61 6c 6c 62 61 63 6b 28 6d 5f 53 75 62 6d 69 74 41 63 74 69 6f 6e 2c etActionCallback(m_SubmitAction,
14140 20 6d 5f 4f 6e 53 75 62 6d 69 74 44 65 6c 65 67 61 74 65 2c 20 69 6e 73 74 61 6c 6c 29 3b 0d 0a .m_OnSubmitDelegate,.install);..
14160 20 20 20 20 20 20 20 20 20 20 20 20 53 65 74 41 63 74 69 6f 6e 43 61 6c 6c 62 61 63 6b 28 6d 5f ............SetActionCallback(m_
14180 43 61 6e 63 65 6c 41 63 74 69 6f 6e 2c 20 6d 5f 4f 6e 43 61 6e 63 65 6c 44 65 6c 65 67 61 74 65 CancelAction,.m_OnCancelDelegate
141a0 2c 20 69 6e 73 74 61 6c 6c 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 53 65 74 41 63 74 69 ,.install);..............SetActi
141c0 6f 6e 43 61 6c 6c 62 61 63 6b 28 6d 5f 53 63 72 6f 6c 6c 57 68 65 65 6c 41 63 74 69 6f 6e 2c 20 onCallback(m_ScrollWheelAction,.
141e0 6d 5f 4f 6e 53 63 72 6f 6c 6c 57 68 65 65 6c 44 65 6c 65 67 61 74 65 2c 20 69 6e 73 74 61 6c 6c m_OnScrollWheelDelegate,.install
14200 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 53 65 74 41 63 74 69 6f 6e 43 61 6c 6c 62 61 63 );..............SetActionCallbac
14220 6b 28 6d 5f 54 72 61 63 6b 65 64 44 65 76 69 63 65 4f 72 69 65 6e 74 61 74 69 6f 6e 41 63 74 69 k(m_TrackedDeviceOrientationActi
14240 6f 6e 2c 20 6d 5f 4f 6e 54 72 61 63 6b 65 64 44 65 76 69 63 65 4f 72 69 65 6e 74 61 74 69 6f 6e on,.m_OnTrackedDeviceOrientation
14260 44 65 6c 65 67 61 74 65 2c 20 69 6e 73 74 61 6c 6c 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 Delegate,.install);.............
14280 20 53 65 74 41 63 74 69 6f 6e 43 61 6c 6c 62 61 63 6b 28 6d 5f 54 72 61 63 6b 65 64 44 65 76 69 .SetActionCallback(m_TrackedDevi
142a0 63 65 50 6f 73 69 74 69 6f 6e 41 63 74 69 6f 6e 2c 20 6d 5f 4f 6e 54 72 61 63 6b 65 64 44 65 76 cePositionAction,.m_OnTrackedDev
142c0 69 63 65 50 6f 73 69 74 69 6f 6e 44 65 6c 65 67 61 74 65 2c 20 69 6e 73 74 61 6c 6c 29 3b 0d 0a icePositionDelegate,.install);..
142e0 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 70 72 69 76 61 74 65 20 73 74 61 ........}............private.sta
14300 74 69 63 20 76 6f 69 64 20 53 65 74 41 63 74 69 6f 6e 43 61 6c 6c 62 61 63 6b 28 49 6e 70 75 74 tic.void.SetActionCallback(Input
14320 41 63 74 69 6f 6e 52 65 66 65 72 65 6e 63 65 20 61 63 74 69 6f 6e 52 65 66 65 72 65 6e 63 65 2c ActionReference.actionReference,
14340 20 41 63 74 69 6f 6e 3c 49 6e 70 75 74 41 63 74 69 6f 6e 2e 43 61 6c 6c 62 61 63 6b 43 6f 6e 74 .Action<InputAction.CallbackCont
14360 65 78 74 3e 20 63 61 6c 6c 62 61 63 6b 2c 20 62 6f 6f 6c 20 69 6e 73 74 61 6c 6c 29 0d 0a 20 20 ext>.callback,.bool.install)....
14380 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 21 69 6e 73 74 61 6c ......{..............if.(!instal
143a0 6c 20 26 26 20 63 61 6c 6c 62 61 63 6b 20 3d 3d 20 6e 75 6c 6c 29 0d 0a 20 20 20 20 20 20 20 20 l.&&.callback.==.null)..........
143c0 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 ........return;................i
143e0 66 20 28 61 63 74 69 6f 6e 52 65 66 65 72 65 6e 63 65 20 3d 3d 20 6e 75 6c 6c 29 0d 0a 20 20 20 f.(actionReference.==.null).....
14400 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 .............return;............
14420 20 20 20 20 76 61 72 20 61 63 74 69 6f 6e 20 3d 20 61 63 74 69 6f 6e 52 65 66 65 72 65 6e 63 65 ....var.action.=.actionReference
14440 2e 61 63 74 69 6f 6e 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 61 63 74 69 6f 6e .action;..............if.(action
14460 20 3d 3d 20 6e 75 6c 6c 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 .==.null)..................retur
14480 6e 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 69 6e 73 74 61 6c 6c 29 0d 0a n;................if.(install)..
144a0 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 61 ............{..................a
144c0 63 74 69 6f 6e 2e 70 65 72 66 6f 72 6d 65 64 20 2b 3d 20 63 61 6c 6c 62 61 63 6b 3b 0d 0a 20 20 ction.performed.+=.callback;....
144e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 61 63 74 69 6f 6e 2e 63 61 6e 63 65 6c 65 64 20 2b 3d ..............action.canceled.+=
14500 20 63 61 6c 6c 62 61 63 6b 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 .callback;..............}.......
14520 20 20 20 20 20 20 20 65 6c 73 65 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 .......else..............{......
14540 20 20 20 20 20 20 20 20 20 20 20 20 61 63 74 69 6f 6e 2e 70 65 72 66 6f 72 6d 65 64 20 2d 3d 20 ............action.performed.-=.
14560 63 61 6c 6c 62 61 63 6b 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 61 63 74 69 6f callback;..................actio
14580 6e 2e 63 61 6e 63 65 6c 65 64 20 2d 3d 20 63 61 6c 6c 62 61 63 6b 3b 0d 0a 20 20 20 20 20 20 20 n.canceled.-=.callback;.........
145a0 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 70 72 69 .....}..........}............pri
145c0 76 61 74 65 20 49 6e 70 75 74 41 63 74 69 6f 6e 52 65 66 65 72 65 6e 63 65 20 55 70 64 61 74 65 vate.InputActionReference.Update
145e0 52 65 66 65 72 65 6e 63 65 46 6f 72 4e 65 77 41 73 73 65 74 28 49 6e 70 75 74 41 63 74 69 6f 6e ReferenceForNewAsset(InputAction
14600 52 65 66 65 72 65 6e 63 65 20 61 63 74 69 6f 6e 52 65 66 65 72 65 6e 63 65 29 0d 0a 20 20 20 20 Reference.actionReference)......
14620 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 6f 6c 64 41 63 74 69 6f 6e ....{..............var.oldAction
14640 20 3d 20 61 63 74 69 6f 6e 52 65 66 65 72 65 6e 63 65 3f 2e 61 63 74 69 6f 6e 3b 0d 0a 20 20 20 .=.actionReference?.action;.....
14660 20 20 20 20 20 20 20 20 20 69 66 20 28 6f 6c 64 41 63 74 69 6f 6e 20 3d 3d 20 6e 75 6c 6c 29 0d .........if.(oldAction.==.null).
14680 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 6e 75 6c 6c 3b 0d 0a 0d .................return.null;...
146a0 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 6f 6c 64 41 63 74 69 6f 6e 4d 61 70 20 3d 20 .............var.oldActionMap.=.
146c0 6f 6c 64 41 63 74 69 6f 6e 2e 61 63 74 69 6f 6e 4d 61 70 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 oldAction.actionMap;............
146e0 20 20 44 65 62 75 67 2e 41 73 73 65 72 74 28 6f 6c 64 41 63 74 69 6f 6e 4d 61 70 20 21 3d 20 6e ..Debug.Assert(oldActionMap.!=.n
14700 75 6c 6c 2c 20 22 4e 6f 74 20 65 78 70 65 63 74 65 64 20 74 6f 20 65 6e 64 20 75 70 20 77 69 74 ull,."Not.expected.to.end.up.wit
14720 68 20 61 20 73 69 6e 67 6c 65 74 6f 6e 20 61 63 74 69 6f 6e 20 68 65 72 65 22 29 3b 0d 0a 0d 0a h.a.singleton.action.here");....
14740 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 6e 65 77 41 63 74 69 6f 6e 4d 61 70 20 3d 20 6d ............var.newActionMap.=.m
14760 5f 41 63 74 69 6f 6e 73 41 73 73 65 74 2e 46 69 6e 64 41 63 74 69 6f 6e 4d 61 70 28 6f 6c 64 41 _ActionsAsset.FindActionMap(oldA
14780 63 74 69 6f 6e 4d 61 70 2e 6e 61 6d 65 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 ctionMap.name);..............if.
147a0 28 6e 65 77 41 63 74 69 6f 6e 4d 61 70 20 3d 3d 20 6e 75 6c 6c 29 0d 0a 20 20 20 20 20 20 20 20 (newActionMap.==.null)..........
147c0 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 6e 75 6c 6c 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 ........return.null;............
147e0 20 20 20 20 76 61 72 20 6e 65 77 41 63 74 69 6f 6e 20 3d 20 6e 65 77 41 63 74 69 6f 6e 4d 61 70 ....var.newAction.=.newActionMap
14800 2e 46 69 6e 64 41 63 74 69 6f 6e 28 6f 6c 64 41 63 74 69 6f 6e 2e 6e 61 6d 65 29 3b 0d 0a 20 20 .FindAction(oldAction.name);....
14820 20 20 20 20 20 20 20 20 20 20 69 66 20 28 6e 65 77 41 63 74 69 6f 6e 20 3d 3d 20 6e 75 6c 6c 29 ..........if.(newAction.==.null)
14840 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 6e 75 6c 6c 3b 0d 0a ..................return.null;..
14860 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 49 6e 70 75 74 41 63 74 69 6f 6e ..............return.InputAction
14880 52 65 66 65 72 65 6e 63 65 2e 43 72 65 61 74 65 28 6e 65 77 41 63 74 69 6f 6e 29 3b 0d 0a 20 20 Reference.Create(newAction);....
148a0 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 70 75 62 6c 69 63 20 49 6e 70 75 74 41 ......}............public.InputA
148c0 63 74 69 6f 6e 41 73 73 65 74 20 61 63 74 69 6f 6e 73 41 73 73 65 74 0d 0a 20 20 20 20 20 20 20 ctionAsset.actionsAsset.........
148e0 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 67 65 74 20 3d 3e 20 6d 5f 41 63 74 69 6f 6e 73 .{..............get.=>.m_Actions
14900 41 73 73 65 74 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 65 74 0d 0a 20 20 20 20 20 20 20 Asset;..............set.........
14920 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 76 61 6c 75 .....{..................if.(valu
14940 65 20 21 3d 20 6d 5f 41 63 74 69 6f 6e 73 41 73 73 65 74 29 0d 0a 20 20 20 20 20 20 20 20 20 20 e.!=.m_ActionsAsset)............
14960 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 ......{......................var
14980 20 77 61 73 45 6e 61 62 6c 65 64 20 3d 20 49 73 41 6e 79 41 63 74 69 6f 6e 45 6e 61 62 6c 65 64 .wasEnabled.=.IsAnyActionEnabled
149a0 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 44 69 73 61 62 6c 65 ();......................Disable
149c0 41 6c 6c 41 63 74 69 6f 6e 73 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 AllActions();...................
149e0 20 20 20 6d 5f 41 63 74 69 6f 6e 73 41 73 73 65 74 20 3d 20 76 61 6c 75 65 3b 0d 0a 0d 0a 20 20 ...m_ActionsAsset.=.value;......
14a00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 70 6f 69 6e 74 20 3d 20 55 70 64 61 74 65 ..................point.=.Update
14a20 52 65 66 65 72 65 6e 63 65 46 6f 72 4e 65 77 41 73 73 65 74 28 70 6f 69 6e 74 29 3b 0d 0a 20 20 ReferenceForNewAsset(point);....
14a40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 6f 76 65 20 3d 20 55 70 64 61 74 65 52 ..................move.=.UpdateR
14a60 65 66 65 72 65 6e 63 65 46 6f 72 4e 65 77 41 73 73 65 74 28 6d 6f 76 65 29 3b 0d 0a 20 20 20 20 eferenceForNewAsset(move);......
14a80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6c 65 66 74 43 6c 69 63 6b 20 3d 20 55 70 64 61 ................leftClick.=.Upda
14aa0 74 65 52 65 66 65 72 65 6e 63 65 46 6f 72 4e 65 77 41 73 73 65 74 28 6c 65 66 74 43 6c 69 63 6b teReferenceForNewAsset(leftClick
14ac0 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 69 67 68 74 43 6c 69 );......................rightCli
14ae0 63 6b 20 3d 20 55 70 64 61 74 65 52 65 66 65 72 65 6e 63 65 46 6f 72 4e 65 77 41 73 73 65 74 28 ck.=.UpdateReferenceForNewAsset(
14b00 72 69 67 68 74 43 6c 69 63 6b 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 rightClick);....................
14b20 20 20 6d 69 64 64 6c 65 43 6c 69 63 6b 20 3d 20 55 70 64 61 74 65 52 65 66 65 72 65 6e 63 65 46 ..middleClick.=.UpdateReferenceF
14b40 6f 72 4e 65 77 41 73 73 65 74 28 6d 69 64 64 6c 65 43 6c 69 63 6b 29 3b 0d 0a 20 20 20 20 20 20 orNewAsset(middleClick);........
14b60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 63 72 6f 6c 6c 57 68 65 65 6c 20 3d 20 55 70 64 61 ..............scrollWheel.=.Upda
14b80 74 65 52 65 66 65 72 65 6e 63 65 46 6f 72 4e 65 77 41 73 73 65 74 28 73 63 72 6f 6c 6c 57 68 65 teReferenceForNewAsset(scrollWhe
14ba0 65 6c 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 75 62 6d 69 74 el);......................submit
14bc0 20 3d 20 55 70 64 61 74 65 52 65 66 65 72 65 6e 63 65 46 6f 72 4e 65 77 41 73 73 65 74 28 73 75 .=.UpdateReferenceForNewAsset(su
14be0 62 6d 69 74 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 61 6e 63 bmit);......................canc
14c00 65 6c 20 3d 20 55 70 64 61 74 65 52 65 66 65 72 65 6e 63 65 46 6f 72 4e 65 77 41 73 73 65 74 28 el.=.UpdateReferenceForNewAsset(
14c20 63 61 6e 63 65 6c 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 cancel);......................if
14c40 20 28 77 61 73 45 6e 61 62 6c 65 64 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .(wasEnabled)...................
14c60 20 20 20 20 20 20 20 45 6e 61 62 6c 65 41 6c 6c 41 63 74 69 6f 6e 73 28 29 3b 0d 0a 20 20 20 20 .......EnableAllActions();......
14c80 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 ............}..............}....
14ca0 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 5b 53 65 72 69 61 6c 69 7a 65 46 69 65 ......}............[SerializeFie
14cc0 6c 64 2c 20 48 69 64 65 49 6e 49 6e 73 70 65 63 74 6f 72 5d 20 70 72 69 76 61 74 65 20 49 6e 70 ld,.HideInInspector].private.Inp
14ce0 75 74 41 63 74 69 6f 6e 41 73 73 65 74 20 6d 5f 41 63 74 69 6f 6e 73 41 73 73 65 74 3b 0d 0a 20 utActionAsset.m_ActionsAsset;...
14d00 20 20 20 20 20 20 20 5b 53 65 72 69 61 6c 69 7a 65 46 69 65 6c 64 2c 20 48 69 64 65 49 6e 49 6e .......[SerializeField,.HideInIn
14d20 73 70 65 63 74 6f 72 5d 20 70 72 69 76 61 74 65 20 49 6e 70 75 74 41 63 74 69 6f 6e 52 65 66 65 spector].private.InputActionRefe
14d40 72 65 6e 63 65 20 6d 5f 50 6f 69 6e 74 41 63 74 69 6f 6e 3b 0d 0a 20 20 20 20 20 20 20 20 5b 53 rence.m_PointAction;..........[S
14d60 65 72 69 61 6c 69 7a 65 46 69 65 6c 64 2c 20 48 69 64 65 49 6e 49 6e 73 70 65 63 74 6f 72 5d 20 erializeField,.HideInInspector].
14d80 70 72 69 76 61 74 65 20 49 6e 70 75 74 41 63 74 69 6f 6e 52 65 66 65 72 65 6e 63 65 20 6d 5f 4d private.InputActionReference.m_M
14da0 6f 76 65 41 63 74 69 6f 6e 3b 0d 0a 20 20 20 20 20 20 20 20 5b 53 65 72 69 61 6c 69 7a 65 46 69 oveAction;..........[SerializeFi
14dc0 65 6c 64 2c 20 48 69 64 65 49 6e 49 6e 73 70 65 63 74 6f 72 5d 20 70 72 69 76 61 74 65 20 49 6e eld,.HideInInspector].private.In
14de0 70 75 74 41 63 74 69 6f 6e 52 65 66 65 72 65 6e 63 65 20 6d 5f 53 75 62 6d 69 74 41 63 74 69 6f putActionReference.m_SubmitActio
14e00 6e 3b 0d 0a 20 20 20 20 20 20 20 20 5b 53 65 72 69 61 6c 69 7a 65 46 69 65 6c 64 2c 20 48 69 64 n;..........[SerializeField,.Hid
14e20 65 49 6e 49 6e 73 70 65 63 74 6f 72 5d 20 70 72 69 76 61 74 65 20 49 6e 70 75 74 41 63 74 69 6f eInInspector].private.InputActio
14e40 6e 52 65 66 65 72 65 6e 63 65 20 6d 5f 43 61 6e 63 65 6c 41 63 74 69 6f 6e 3b 0d 0a 20 20 20 20 nReference.m_CancelAction;......
14e60 20 20 20 20 5b 53 65 72 69 61 6c 69 7a 65 46 69 65 6c 64 2c 20 48 69 64 65 49 6e 49 6e 73 70 65 ....[SerializeField,.HideInInspe
14e80 63 74 6f 72 5d 20 70 72 69 76 61 74 65 20 49 6e 70 75 74 41 63 74 69 6f 6e 52 65 66 65 72 65 6e ctor].private.InputActionReferen
14ea0 63 65 20 6d 5f 4c 65 66 74 43 6c 69 63 6b 41 63 74 69 6f 6e 3b 0d 0a 20 20 20 20 20 20 20 20 5b ce.m_LeftClickAction;..........[
14ec0 53 65 72 69 61 6c 69 7a 65 46 69 65 6c 64 2c 20 48 69 64 65 49 6e 49 6e 73 70 65 63 74 6f 72 5d SerializeField,.HideInInspector]
14ee0 20 70 72 69 76 61 74 65 20 49 6e 70 75 74 41 63 74 69 6f 6e 52 65 66 65 72 65 6e 63 65 20 6d 5f .private.InputActionReference.m_
14f00 4d 69 64 64 6c 65 43 6c 69 63 6b 41 63 74 69 6f 6e 3b 0d 0a 20 20 20 20 20 20 20 20 5b 53 65 72 MiddleClickAction;..........[Ser
14f20 69 61 6c 69 7a 65 46 69 65 6c 64 2c 20 48 69 64 65 49 6e 49 6e 73 70 65 63 74 6f 72 5d 20 70 72 ializeField,.HideInInspector].pr
14f40 69 76 61 74 65 20 49 6e 70 75 74 41 63 74 69 6f 6e 52 65 66 65 72 65 6e 63 65 20 6d 5f 52 69 67 ivate.InputActionReference.m_Rig
14f60 68 74 43 6c 69 63 6b 41 63 74 69 6f 6e 3b 0d 0a 20 20 20 20 20 20 20 20 5b 53 65 72 69 61 6c 69 htClickAction;..........[Seriali
14f80 7a 65 46 69 65 6c 64 2c 20 48 69 64 65 49 6e 49 6e 73 70 65 63 74 6f 72 5d 20 70 72 69 76 61 74 zeField,.HideInInspector].privat
14fa0 65 20 49 6e 70 75 74 41 63 74 69 6f 6e 52 65 66 65 72 65 6e 63 65 20 6d 5f 53 63 72 6f 6c 6c 57 e.InputActionReference.m_ScrollW
14fc0 68 65 65 6c 41 63 74 69 6f 6e 3b 0d 0a 20 20 20 20 20 20 20 20 5b 53 65 72 69 61 6c 69 7a 65 46 heelAction;..........[SerializeF
14fe0 69 65 6c 64 2c 20 48 69 64 65 49 6e 49 6e 73 70 65 63 74 6f 72 5d 20 70 72 69 76 61 74 65 20 49 ield,.HideInInspector].private.I
15000 6e 70 75 74 41 63 74 69 6f 6e 52 65 66 65 72 65 6e 63 65 20 6d 5f 54 72 61 63 6b 65 64 44 65 76 nputActionReference.m_TrackedDev
15020 69 63 65 50 6f 73 69 74 69 6f 6e 41 63 74 69 6f 6e 3b 0d 0a 20 20 20 20 20 20 20 20 5b 53 65 72 icePositionAction;..........[Ser
15040 69 61 6c 69 7a 65 46 69 65 6c 64 2c 20 48 69 64 65 49 6e 49 6e 73 70 65 63 74 6f 72 5d 20 70 72 ializeField,.HideInInspector].pr
15060 69 76 61 74 65 20 49 6e 70 75 74 41 63 74 69 6f 6e 52 65 66 65 72 65 6e 63 65 20 6d 5f 54 72 61 ivate.InputActionReference.m_Tra
15080 63 6b 65 64 44 65 76 69 63 65 4f 72 69 65 6e 74 61 74 69 6f 6e 41 63 74 69 6f 6e 3b 0d 0a 0d 0a ckedDeviceOrientationAction;....
150a0 20 20 20 20 20 20 20 20 5b 53 65 72 69 61 6c 69 7a 65 46 69 65 6c 64 5d 20 70 72 69 76 61 74 65 ........[SerializeField].private
150c0 20 62 6f 6f 6c 20 6d 5f 44 65 73 65 6c 65 63 74 4f 6e 42 61 63 6b 67 72 6f 75 6e 64 43 6c 69 63 .bool.m_DeselectOnBackgroundClic
150e0 6b 20 3d 20 74 72 75 65 3b 0d 0a 20 20 20 20 20 20 20 20 5b 53 65 72 69 61 6c 69 7a 65 46 69 65 k.=.true;..........[SerializeFie
15100 6c 64 5d 20 70 72 69 76 61 74 65 20 55 49 50 6f 69 6e 74 65 72 42 65 68 61 76 69 6f 72 20 6d 5f ld].private.UIPointerBehavior.m_
15120 50 6f 69 6e 74 65 72 42 65 68 61 76 69 6f 72 20 3d 20 55 49 50 6f 69 6e 74 65 72 42 65 68 61 76 PointerBehavior.=.UIPointerBehav
15140 69 6f 72 2e 53 69 6e 67 6c 65 4d 6f 75 73 65 4f 72 50 65 6e 42 75 74 4d 75 6c 74 69 54 6f 75 63 ior.SingleMouseOrPenButMultiTouc
15160 68 41 6e 64 54 72 61 63 6b 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 70 72 69 76 61 74 65 20 62 6f hAndTrack;............private.bo
15180 6f 6c 20 6d 5f 4f 77 6e 73 45 6e 61 62 6c 65 64 53 74 61 74 65 3b 0d 0a 20 20 20 20 20 20 20 20 ol.m_OwnsEnabledState;..........
151a0 70 72 69 76 61 74 65 20 62 6f 6f 6c 20 6d 5f 41 63 74 69 6f 6e 73 48 6f 6f 6b 65 64 3b 0d 0a 0d private.bool.m_ActionsHooked;...
151c0 0a 20 20 20 20 20 20 20 20 70 72 69 76 61 74 65 20 41 63 74 69 6f 6e 3c 49 6e 70 75 74 41 63 74 .........private.Action<InputAct
151e0 69 6f 6e 2e 43 61 6c 6c 62 61 63 6b 43 6f 6e 74 65 78 74 3e 20 6d 5f 4f 6e 50 6f 69 6e 74 44 65 ion.CallbackContext>.m_OnPointDe
15200 6c 65 67 61 74 65 3b 0d 0a 20 20 20 20 20 20 20 20 70 72 69 76 61 74 65 20 41 63 74 69 6f 6e 3c legate;..........private.Action<
15220 49 6e 70 75 74 41 63 74 69 6f 6e 2e 43 61 6c 6c 62 61 63 6b 43 6f 6e 74 65 78 74 3e 20 6d 5f 4f InputAction.CallbackContext>.m_O
15240 6e 4d 6f 76 65 44 65 6c 65 67 61 74 65 3b 0d 0a 20 20 20 20 20 20 20 20 70 72 69 76 61 74 65 20 nMoveDelegate;..........private.
15260 41 63 74 69 6f 6e 3c 49 6e 70 75 74 41 63 74 69 6f 6e 2e 43 61 6c 6c 62 61 63 6b 43 6f 6e 74 65 Action<InputAction.CallbackConte
15280 78 74 3e 20 6d 5f 4f 6e 53 75 62 6d 69 74 44 65 6c 65 67 61 74 65 3b 0d 0a 20 20 20 20 20 20 20 xt>.m_OnSubmitDelegate;.........
152a0 20 70 72 69 76 61 74 65 20 41 63 74 69 6f 6e 3c 49 6e 70 75 74 41 63 74 69 6f 6e 2e 43 61 6c 6c .private.Action<InputAction.Call
152c0 62 61 63 6b 43 6f 6e 74 65 78 74 3e 20 6d 5f 4f 6e 43 61 6e 63 65 6c 44 65 6c 65 67 61 74 65 3b backContext>.m_OnCancelDelegate;
152e0 0d 0a 20 20 20 20 20 20 20 20 70 72 69 76 61 74 65 20 41 63 74 69 6f 6e 3c 49 6e 70 75 74 41 63 ..........private.Action<InputAc
15300 74 69 6f 6e 2e 43 61 6c 6c 62 61 63 6b 43 6f 6e 74 65 78 74 3e 20 6d 5f 4f 6e 4c 65 66 74 43 6c tion.CallbackContext>.m_OnLeftCl
15320 69 63 6b 44 65 6c 65 67 61 74 65 3b 0d 0a 20 20 20 20 20 20 20 20 70 72 69 76 61 74 65 20 41 63 ickDelegate;..........private.Ac
15340 74 69 6f 6e 3c 49 6e 70 75 74 41 63 74 69 6f 6e 2e 43 61 6c 6c 62 61 63 6b 43 6f 6e 74 65 78 74 tion<InputAction.CallbackContext
15360 3e 20 6d 5f 4f 6e 52 69 67 68 74 43 6c 69 63 6b 44 65 6c 65 67 61 74 65 3b 0d 0a 20 20 20 20 20 >.m_OnRightClickDelegate;.......
15380 20 20 20 70 72 69 76 61 74 65 20 41 63 74 69 6f 6e 3c 49 6e 70 75 74 41 63 74 69 6f 6e 2e 43 61 ...private.Action<InputAction.Ca
153a0 6c 6c 62 61 63 6b 43 6f 6e 74 65 78 74 3e 20 6d 5f 4f 6e 4d 69 64 64 6c 65 43 6c 69 63 6b 44 65 llbackContext>.m_OnMiddleClickDe
153c0 6c 65 67 61 74 65 3b 0d 0a 20 20 20 20 20 20 20 20 70 72 69 76 61 74 65 20 41 63 74 69 6f 6e 3c legate;..........private.Action<
153e0 49 6e 70 75 74 41 63 74 69 6f 6e 2e 43 61 6c 6c 62 61 63 6b 43 6f 6e 74 65 78 74 3e 20 6d 5f 4f InputAction.CallbackContext>.m_O
15400 6e 53 63 72 6f 6c 6c 57 68 65 65 6c 44 65 6c 65 67 61 74 65 3b 0d 0a 20 20 20 20 20 20 20 20 70 nScrollWheelDelegate;..........p
15420 72 69 76 61 74 65 20 41 63 74 69 6f 6e 3c 49 6e 70 75 74 41 63 74 69 6f 6e 2e 43 61 6c 6c 62 61 rivate.Action<InputAction.Callba
15440 63 6b 43 6f 6e 74 65 78 74 3e 20 6d 5f 4f 6e 54 72 61 63 6b 65 64 44 65 76 69 63 65 50 6f 73 69 ckContext>.m_OnTrackedDevicePosi
15460 74 69 6f 6e 44 65 6c 65 67 61 74 65 3b 0d 0a 20 20 20 20 20 20 20 20 70 72 69 76 61 74 65 20 41 tionDelegate;..........private.A
15480 63 74 69 6f 6e 3c 49 6e 70 75 74 41 63 74 69 6f 6e 2e 43 61 6c 6c 62 61 63 6b 43 6f 6e 74 65 78 ction<InputAction.CallbackContex
154a0 74 3e 20 6d 5f 4f 6e 54 72 61 63 6b 65 64 44 65 76 69 63 65 4f 72 69 65 6e 74 61 74 69 6f 6e 44 t>.m_OnTrackedDeviceOrientationD
154c0 65 6c 65 67 61 74 65 3b 0d 0a 20 20 20 20 20 20 20 20 70 72 69 76 61 74 65 20 41 63 74 69 6f 6e elegate;..........private.Action
154e0 3c 6f 62 6a 65 63 74 3e 20 6d 5f 4f 6e 43 6f 6e 74 72 6f 6c 73 43 68 61 6e 67 65 64 44 65 6c 65 <object>.m_OnControlsChangedDele
15500 67 61 74 65 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 2f 2f 20 50 6f 69 6e 74 65 72 2d 74 79 70 65 gate;............//.Pointer-type
15520 20 69 6e 70 75 74 20 28 61 6c 73 6f 20 74 72 61 63 6b 69 6e 67 2d 74 79 70 65 29 2e 0d 0a 20 20 .input.(also.tracking-type).....
15540 20 20 20 20 20 20 70 72 69 76 61 74 65 20 69 6e 74 20 6d 5f 43 75 72 72 65 6e 74 50 6f 69 6e 74 ......private.int.m_CurrentPoint
15560 65 72 49 64 20 3d 20 2d 31 3b 20 2f 2f 20 4b 65 65 70 69 6e 67 20 74 72 61 63 6b 20 6f 66 20 74 erId.=.-1;.//.Keeping.track.of.t
15580 68 65 20 63 75 72 72 65 6e 74 20 70 6f 69 6e 74 65 72 20 61 76 6f 69 64 73 20 73 65 61 72 63 68 he.current.pointer.avoids.search
155a0 65 73 20 69 6e 20 6d 6f 73 74 20 63 61 73 65 73 2e 0d 0a 20 20 20 20 20 20 20 20 70 72 69 76 61 es.in.most.cases...........priva
155c0 74 65 20 69 6e 74 20 6d 5f 43 75 72 72 65 6e 74 50 6f 69 6e 74 65 72 49 6e 64 65 78 20 3d 20 2d te.int.m_CurrentPointerIndex.=.-
155e0 31 3b 0d 0a 20 20 20 20 20 20 20 20 70 72 69 76 61 74 65 20 55 49 50 6f 69 6e 74 65 72 54 79 70 1;..........private.UIPointerTyp
15600 65 20 6d 5f 43 75 72 72 65 6e 74 50 6f 69 6e 74 65 72 54 79 70 65 20 3d 20 55 49 50 6f 69 6e 74 e.m_CurrentPointerType.=.UIPoint
15620 65 72 54 79 70 65 2e 4e 6f 6e 65 3b 0d 0a 20 20 20 20 20 20 20 20 70 72 69 76 61 74 65 20 49 6e erType.None;..........private.In
15640 6c 69 6e 65 64 41 72 72 61 79 3c 69 6e 74 3e 20 6d 5f 50 6f 69 6e 74 65 72 49 64 73 3b 20 2f 2f linedArray<int>.m_PointerIds;.//
15660 20 49 6e 64 65 78 20 69 6e 20 74 68 69 73 20 61 72 72 61 79 20 6d 61 70 73 20 74 6f 20 69 6e 64 .Index.in.this.array.maps.to.ind
15680 65 78 20 69 6e 20 6d 5f 50 6f 69 6e 74 65 72 53 74 61 74 65 73 2e 20 53 65 70 61 72 61 74 65 64 ex.in.m_PointerStates..Separated
156a0 20 6f 75 74 20 74 6f 20 6d 61 6b 65 20 73 65 61 72 63 68 69 6e 67 20 6d 6f 72 65 20 65 66 66 69 .out.to.make.searching.more.effi
156c0 63 69 65 6e 74 20 28 77 65 20 64 6f 20 61 20 6c 69 6e 65 61 72 20 73 65 61 72 63 68 29 2e 0d 0a cient.(we.do.a.linear.search)...
156e0 20 20 20 20 20 20 20 20 70 72 69 76 61 74 65 20 49 6e 6c 69 6e 65 64 41 72 72 61 79 3c 50 6f 69 ........private.InlinedArray<Poi
15700 6e 74 65 72 4d 6f 64 65 6c 3e 20 6d 5f 50 6f 69 6e 74 65 72 53 74 61 74 65 73 3b 0d 0a 0d 0a 20 nterModel>.m_PointerStates;.....
15720 20 20 20 20 20 20 20 2f 2f 20 4e 61 76 69 67 61 74 69 6f 6e 2d 74 79 70 65 20 69 6e 70 75 74 2e .......//.Navigation-type.input.
15740 0d 0a 20 20 20 20 20 20 20 20 70 72 69 76 61 74 65 20 4e 61 76 69 67 61 74 69 6f 6e 4d 6f 64 65 ..........private.NavigationMode
15760 6c 20 6d 5f 4e 61 76 69 67 61 74 69 6f 6e 53 74 61 74 65 3b 0d 0a 20 20 20 20 7d 0d 0a 7d 0d 0a l.m_NavigationState;......}..}..
15780 23 65 6e 64 69 66 0d 0a 0c 00 00 00 0e 00 00 00 6d 5f 41 63 74 69 6f 6e 73 41 73 73 65 74 00 00 #endif..........m_ActionsAsset..
157a0 01 00 00 00 cc 99 2d d3 41 01 e4 f2 0e 00 00 00 6d 5f 43 61 6e 63 65 6c 41 63 74 69 6f 6e 00 00 ......-.A.......m_CancelAction..
157c0 01 00 00 00 a9 0d 8d 96 81 91 b1 e4 11 00 00 00 6d 5f 4c 65 66 74 43 6c 69 63 6b 41 63 74 69 6f ................m_LeftClickActio
157e0 6e 00 00 00 01 00 00 00 3d 99 41 de 96 b4 cf 6f 13 00 00 00 6d 5f 4d 69 64 64 6c 65 43 6c 69 63 n.......=.A....o....m_MiddleClic
15800 6b 41 63 74 69 6f 6e 00 01 00 00 00 84 61 93 3d da 99 82 2d 0c 00 00 00 6d 5f 4d 6f 76 65 41 63 kAction......a.=...-....m_MoveAc
15820 74 69 6f 6e 01 00 00 00 ae 55 1f 2f f2 30 7f 33 0d 00 00 00 6d 5f 50 6f 69 6e 74 41 63 74 69 6f tion.....U./.0.3....m_PointActio
15840 6e 00 00 00 01 00 00 00 a2 ed c0 5d d1 07 a1 0e 12 00 00 00 6d 5f 52 69 67 68 74 43 6c 69 63 6b n..........]........m_RightClick
15860 41 63 74 69 6f 6e 00 00 01 00 00 00 3c 3c 52 f8 56 61 40 35 13 00 00 00 6d 5f 53 63 72 6f 6c 6c Action......<<R.Va@5....m_Scroll
15880 57 68 65 65 6c 41 63 74 69 6f 6e 00 01 00 00 00 64 f2 a0 c7 e8 c7 7b 3e 0e 00 00 00 6d 5f 53 75 WheelAction.....d.....{>....m_Su
158a0 62 6d 69 74 41 63 74 69 6f 6e 00 00 01 00 00 00 27 45 54 e0 5f 0e a8 1c 20 00 00 00 6d 5f 54 72 bmitAction......'ET._.......m_Tr
158c0 61 63 6b 65 64 44 65 76 69 63 65 4f 72 69 65 6e 74 61 74 69 6f 6e 41 63 74 69 6f 6e 01 00 00 00 ackedDeviceOrientationAction....
158e0 f0 74 8b 0b ae 76 3b 0e 1d 00 00 00 6d 5f 54 72 61 63 6b 65 64 44 65 76 69 63 65 50 6f 73 69 74 .t...v;.....m_TrackedDevicePosit
15900 69 6f 6e 41 63 74 69 6f 6e 00 00 00 01 00 00 00 ca fd e3 7d 07 08 fc 41 1b 00 00 00 6d 5f 54 72 ionAction..........}...A....m_Tr
15920 61 63 6b 65 64 44 65 76 69 63 65 53 65 6c 65 63 74 41 63 74 69 6f 6e 00 01 00 00 00 48 ea 84 d4 ackedDeviceSelectAction.....H...
15940 fe b8 83 23 02 00 00 00 80 b9 2a 00 00 00 00 00 00 00 00 00 18 00 00 00 49 6e 70 75 74 53 79 73 ...#......*.............InputSys
15960 74 65 6d 55 49 49 6e 70 75 74 4d 6f 64 75 6c 65 1a 00 00 00 55 6e 69 74 79 45 6e 67 69 6e 65 2e temUIInputModule....UnityEngine.
15980 49 6e 70 75 74 53 79 73 74 65 6d 2e 55 49 00 00 InputSystem.UI..