Vuo  2.3.2
VuoRendererInputListDrawer.hh
Go to the documentation of this file.
1 
10 #pragma once
11 
13 
18 {
19 public:
21  void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget);
22  QRectF boundingRect(void) const;
23  QRectF getOuterNodeFrameBoundingRect(void) const;
24  QPainterPath shape() const;
25  void updateGeometry();
26 
27  QRectF getExtendedDragHandleRect() const;
28  void setDragInProgress(bool inProgress);
29 
30  void extendedHoverEnterEvent(QPointF scenePos);
31  void extendedHoverMoveEvent(QPointF scenePos);
33 
34 private:
35  QPainterPath getMakeListNodePath() const;
36  QPainterPath getMakeListDragHandlePath() const;
37  QRectF getDragHandleRect() const;
38  void triggerPortCountAdjustment(int portCountDelta, QGraphicsSceneMouseEvent *event);
39 
40  void mousePressEvent(QGraphicsSceneMouseEvent *event);
41  void mouseMoveEvent(QGraphicsSceneMouseEvent *event);
42  void mouseReleaseEvent(QGraphicsSceneMouseEvent *event);
43 
44  // User interaction with drag handle
45  bool dragInProgress;
46  QPointF mousePositionAtLastPortCountAdjustment;
47  bool dragHandleIsHovered;
48 
49  QRectF cachedBoundingRect;
50  void updateCachedBoundingRect();
51 };
52