EventData is just a variable (or a function returning a variable, which to you won't make any difference)
Whenever there's an event occuring, some event values are filled. These are EventSource(), EventID(), EventData(), EventX(), EventY() and prolly one or some others, but these few are the most relevant. Sofar you've been working only with ID and Source, but several gadgets also use other variables. So, there's nothing scary about it. If you press a key on the keyboard, then apart from getting a key-related EventID(), the actual key is in EventData(). When you click with your mouse on a canvas, then EventX() and EventY() contain the x and y coord in the canvas where you clicked on.
Your indenting was not exactly the same as mine. See what I wrote about the Select indenting in the functions.
Whenever there's an event occuring, some event values are filled. These are EventSource(), EventID(), EventData(), EventX(), EventY() and prolly one or some others, but these few are the most relevant. Sofar you've been working only with ID and Source, but several gadgets also use other variables. So, there's nothing scary about it. If you press a key on the keyboard, then apart from getting a key-related EventID(), the actual key is in EventData(). When you click with your mouse on a canvas, then EventX() and EventY() contain the x and y coord in the canvas where you clicked on.
Your indenting was not exactly the same as mine. See what I wrote about the Select indenting in the functions.