[Q:]

What happens when, for example, 
  Left mouse button is pressed with <Shift> at (1,1), 
  Right mouse button is pressed with <Control> at (2,2), 
  Left mouse button is released at (3,3), and 
  Right mouse button is released at (4,4)?

[A:]

Your terminal will get something like that:

ESC [ M 0000100 ! !
ESC [ M 0010001 " "
ESC [ M 0000011 # #
ESC [ M 0000011 $ $

in stdin.

The control sequences documentation is slightly hard to read which makes this unnecessarily difficult.

[Q:]

Anything about mouse wheel escape sequences?

[A:]

There are two xterm-sequences for mouse scroll with live cell coordinates (by row and column) encoded as Button 4 and 5 release events, i.e.:

  "\x1B[<65;" + xcol + ';' + yrow + 'M'          /* SCROLL UP, wheel down, '[<65' */

and

  "\x1B[<64;" + xcol + ';' + yrow + 'M'          /* SCROLL DOWN, wheel up, '[<64' */

where "xcol" and "yrow" are live "pointer" coordinates on the terminal in cells, not pixels.
