void ProfileGraphicsView::wheelEvent(QWheelEvent* event)
{
	if (!toolTip)
		return;

	// doesn't seem to work for Qt 4.8.1
	// setTransformationAnchor(QGraphicsView::AnchorUnderMouse);

	// Scale the view / do the zoom
	QPoint toolTipPos = mapFromScene(toolTip->pos());

	double scaleFactor = 1.15;
	if (event->delta() > 0 && zoomLevel < 20) {
		scale(scaleFactor, scaleFactor);
		zoomLevel++;
	} else if (event->delta() < 0 && zoomLevel > 0) {
		// Zooming out
		scale(1.0 / scaleFactor, 1.0 / scaleFactor);
		zoomLevel--;
	}

	scrollViewTo(event->pos());
	toolTip->setPos(mapToScene(toolTipPos));
	toolBarProxy->setPos(mapToScene(TOOLBAR_POS));
	if (zoomLevel != 0) {
		toolBarProxy->hide();
	} else {
		toolBarProxy->show();
	}
}
void ProfileGraphicsView::mouseMoveEvent(QMouseEvent* event)
{
    if (!toolTip)
        return;

    toolTip->refresh(&gc,  mapToScene(event->pos()));

    QPoint toolTipPos = mapFromScene(toolTip->pos());

    scrollViewTo(event->pos());

    if (zoomLevel == 0)
        QGraphicsView::mouseMoveEvent(event);
    else
        toolTip->setPos(mapToScene(toolTipPos).x(), mapToScene(toolTipPos).y());
}