18 #ifndef _GAZEBO_GUI_GRABBER_HANDLE_HH_
19 #define _GAZEBO_GUI_GRABBER_HANDLE_HH_
24 #include <ignition/math/Vector2.hh>
40 class GrabberHandlePrivate;
47 public:
GrabberHandle(QGraphicsItem *_parent = 0,
int index = 0);
54 public:
int Index()
const;
58 public:
int MouseState()
const;
62 public: ignition::math::Vector2d CenterPoint()
const;
66 public:
double MouseDownX()
const;
70 public:
double MouseDownY()
const;
73 public:
double Width()
const;
77 public:
double Height()
const;
85 public:
void SetMouseState(
int _state);
89 public:
void SetMouseDownX(
double _x);
93 public:
void SetMouseDownY(
double _y);
97 public:
void SetWidth(
double _width);
101 public:
void SetHeight(
double _height);
109 public:
void SetBorderColor(
const common::Color &_borderColor);
113 public:
virtual QRectF boundingRect()
const;
117 public: std::vector<GrabberHandle *> LinkedGrabbers()
const;
131 private:
virtual void paint(QPainter *_painter,
132 const QStyleOptionGraphicsItem *_option, QWidget *_widget);
136 protected:
void hoverEnterEvent(QGraphicsSceneHoverEvent *_event);
140 protected:
void hoverLeaveEvent(QGraphicsSceneHoverEvent *_event);
144 protected:
void mouseMoveEvent(QGraphicsSceneMouseEvent *_event);
148 protected:
void mousePressEvent(QGraphicsSceneMouseEvent *_event);
152 protected:
void mouseReleaseEvent(QGraphicsSceneMouseEvent *_event);
156 protected:
void mousePressEvent(QGraphicsSceneDragDropEvent *_event);
160 protected:
void mouseMoveEvent(QGraphicsSceneDragDropEvent *_event);
164 private: std::unique_ptr<GrabberHandlePrivate> dataPtr;
#define GZ_GUI_VISIBLE
Definition: system.hh:284
Defines a color.
Definition: Color.hh:36
Definition: GrabberHandle.hh:42