Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- trait Event
- trait Positioned extends Event {
- private[reaction] val p: Point
- def pos: Point = p
- }
- case class ComponentEvent(c: Component) extends Event
- object MouseEvent {
- case class Click(p: Point, buttonCode: Int) extends MouseEvent(p) {
- def button = MouseButton(buttonCode)
- }
- case class Move(p: Point, lastPos: Point) extends MouseEvent(p)
- case class Drag(p: Point, lastPos: Point, lastButtonCode: Int, timeSinceClick: Long) extends MouseEvent(p) {
- def lastButton = MouseButton(lastButtonCode)
- }
- case class Scroll(p: Point, direction: Int) extends MouseEvent(p)
- }
- abstract class MouseEvent(p: Point) extends Event with Positioned
- object KeyEvent {
- case class Type(private val char: Char, private val code: Int) extends KeyEvent(char, code)
- }
- abstract class KeyEvent(char: Char, code: Int) extends Event
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement