This could as well be an abstract class. All instances of SDLMouseButtonEvent
is either a SDLMouseButtonUpEvent or a SDLMouseButtonDownEvent.
sdl2 $ SDLMouseButtonEvent :: SELF
Type of this instance, automatically specialized in every classcore :: Pointer :: address_is_null
Is the address behind this Object at NULL?core :: Object :: class_factory
Implementation used byget_class to create the specific class.
			sdl2 :: SDLEvent :: defaultinit
sdl2 :: SDLMouseEvent :: defaultinit
core :: Pointer :: defaultinit
core :: Object :: defaultinit
core :: Object :: is_same_instance
Return true ifself and other are the same instance (i.e. same identity).
			core :: Object :: is_same_serialized
Isself the same as other in a serialization context?
			core :: Object :: is_same_type
Return true ifself and other have the same dynamic type.
			core :: Object :: output_class_name
Display class name on stdout (debug only).
# Mouse button event
#
# This could as well be an abstract class. All instances of `SDLMouseButtonEvent`
# is either a `SDLMouseButtonUpEvent` or a `SDLMouseButtonDownEvent`.
extern class SDLMouseButtonEvent
	super SDLMouseEvent
	# Index of the button
	#
	# ~~~raw
	# 1 -> left button
	# 2 -> center button
	# 3 -> right button
	# ~~~
	fun button: Int `{ return self->button.button; `}
	# Is the button currently pressed down?
	fun pressed: Bool `{ return self->button.state == SDL_PRESSED; `}
	# Number of clicks (1 or 2)
	fun clicks: Int `{ return self->button.clicks; `}
	redef fun x `{ return self->button.x; `}
	redef fun y `{ return self->button.y; `}
end
					lib/sdl2/events.nit:197,1--222,3