Generally it has to handle many interaction events for finishing one interaction action, such as node drag and drop. It requests to monitor #startdrag, #ondrag, #enddrag three events. At the beginning of drag and drop, records the element of current mouse position. During the drag and drop, change the element position, and release relevant resources in the end. The series of actions are coordinated for finishing one event, so called "interaction". To realize the object of this interaction or function, we called it "interaction device". So the node drag and drop corresponds to Q.MoveInteraction. Canvas translation corresponds to Q.PanInteraction. Wheel zoom canvas corresponds to Q.WheelZ oomInteraction. And a group of interaction device are used together, forming an "interaction mode"
The relation among listener, interaction device, and the interaction mode is showed in the following figure: