Example #1
0
bool ChatLine::sceneEvent(QEvent *event) {
  if(event->type() == QEvent::GrabMouse) {
    // get mouse cursor pos relative to us
    ChatView *view = chatScene()->chatView();
    QPointF linePos = mapFromScene(view->mapToScene(view->mapFromGlobal(QCursor::pos())));
    setMouseGrabberItem(itemAt(linePos));
  } else if(event->type() == QEvent::UngrabMouse) {
    setMouseGrabberItem(0);
  }
  return QGraphicsItem::sceneEvent(event);
}