Patent ID: 11972097
Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC
Field: Computer technology (Electrical engineering)
Classification: CPC G | IPC G

Claim 10:
11. A computing system for selecting elements in an ink document, comprising:
hardware logic circuitry that includes one or more hardware processors and/or one or more configurable gate units, the hardware logic circuitry being configured to perform operations of:
generating an original data structure by parsing ink strokes in the ink document, the original data structure having nodes that describe respective elements in the ink document, an original arrangement of the nodes in the original data structure describing an organization of the elements in the ink document;
producing a modified data structure that includes a hierarchy of nodes, the hierarchy of nodes having an arrangement of nodes that differs from the original arrangement of nodes in the original data structure;
processing input signals received in response to repeated selection by a user of a particular element in the ink document; and
identifying a set of nodes in the modified data structure upon each selection of the particular element by the user, and highlighting a particular set of elements in the ink document corresponding to the set of nodes on a display device,
said producing of the modified data structure being performed by logic that includes each of:
identifying a particular parent node in the original data structure, the particular parent node having a set of child nodes arranged in an original order;
determining a type of element that the particular parent node represents, and determining a particular direction of flow of child elements associated with the type, different kinds of parent nodes being associated with different directions of flow;
identifying a correct order of elements in a set of child elements in the ink document associated with the set of child nodes, as specified by positions of the child elements and the particular direction of flow; and
determining that the original order differs from the correct order of the elements in the set of child elements, and changing an order of the child nodes compared to the original order to conform to the correct order of the elements in set of child elements, to produce a reordered set of child nodes, and including the reordered set of child nodes in the modified data structure.