///
/// A "mouse" event
///

#ifndef __EVENT_MOUSE_H__
#define __EVENT_MOUSE_H__

#include "Event.h"

#define MOUSE_EVENT "mouse"

enum MouseActionList {
  LEFT_BUTTON_CLICK,
  LEFT_BUTTON_DOUBLECLICK,
  RIGHT_BUTTON_CLICK,
  RIGHT_BUTTON_DOUBLECLICK,
  UNDEFINED
};

class EventMouse : public Event {

 private:
  enum MouseActionList mouse_action;
  int mouse_x, mouse_y;

 public:
  EventMouse();
  void setMouseAction(enum MouseActionList new_mouse_action);
  enum MouseActionList getMouseEvent();
  void setMouseX(int new_x);
  void setMouseY(int new_y);
  int getMouseX();
  int getMouseY();
};

#endif // __EVENT_MOUSE_H__
