From a3a24b746530af5a3f5c0bbda7a33a9e70a54eac Mon Sep 17 00:00:00 2001 From: Aleksei Kanash Date: Fri, 15 Jun 2012 11:25:55 +0300 Subject: [PATCH] Cursor upper widgets is the same as upper board. Fixed restoring of cursors at mouse release event on board. --- src/board/UBBoardView.cpp | 2 ++ src/domain/UBGraphicsProxyWidget.cpp | 4 ++++ src/domain/UBGraphicsScene.cpp | 5 ----- 3 files changed, 6 insertions(+), 5 deletions(-) diff --git a/src/board/UBBoardView.cpp b/src/board/UBBoardView.cpp index 7d898447..8a61d756 100644 --- a/src/board/UBBoardView.cpp +++ b/src/board/UBBoardView.cpp @@ -626,6 +626,7 @@ UBBoardView::mouseReleaseEvent (QMouseEvent *event) { UBStylusTool::Enum currentTool = (UBStylusTool::Enum)UBDrawingController::drawingController ()->stylusTool (); + setToolCursor (currentTool); // first propagate device release to the scene if (scene ()) scene ()->inputDeviceRelease (); @@ -1019,6 +1020,7 @@ UBBoardView::setToolCursor (int tool) break; case UBStylusTool::Eraser: controlViewport->setCursor (UBResources::resources ()->eraserCursor); + scene()->hideEraser(); break; case UBStylusTool::Marker: controlViewport->setCursor (UBResources::resources ()->markerCursor); diff --git a/src/domain/UBGraphicsProxyWidget.cpp b/src/domain/UBGraphicsProxyWidget.cpp index 0ed4e3aa..567eafa4 100644 --- a/src/domain/UBGraphicsProxyWidget.cpp +++ b/src/domain/UBGraphicsProxyWidget.cpp @@ -47,6 +47,10 @@ UBGraphicsProxyWidget::~UBGraphicsProxyWidget() QVariant UBGraphicsProxyWidget::itemChange(GraphicsItemChange change, const QVariant &value) { + if (change == QGraphicsItem::ItemCursorHasChanged && scene()) + { + unsetCursor(); + } if ((change == QGraphicsItem::ItemSelectedHasChanged) && scene()) { diff --git a/src/domain/UBGraphicsScene.cpp b/src/domain/UBGraphicsScene.cpp index d75da6a4..20d657d7 100644 --- a/src/domain/UBGraphicsScene.cpp +++ b/src/domain/UBGraphicsScene.cpp @@ -2372,9 +2372,4 @@ void UBGraphicsScene::setToolCursor(int tool) { deselectAllItems(); } - - if (tool != (int)UBStylusTool::Eraser) - { - hideEraser(); - } }