r15167 by jghali - #9140 : placement of guidelines on the page border causes mouse cursor to remain showing the "move guide" symbol

scribus-commit scribus-commit at lists.scribus.net
Sun Jun 6 23:50:19 CEST 2010


Revision: 15167
Author: jghali
Date: 2010-06-06T21:40:17.747423Z
Commit message: #9140 : placement of guidelines on the page border causes mouse cursor to remain showing the "move guide" symbol

Changeset: 
M  /trunk/Scribus/scribus/canvasmode_normal.cpp

Diffs:
Index: scribus/canvasmode_normal.cpp
===================================================================
--- scribus/canvasmode_normal.cpp	(revision 15166)
+++ scribus/canvasmode_normal.cpp	(revision 15167)
@@ -258,7 +258,8 @@
 		return;
 	m_mouseCurrentPoint = mousePointDoc;
 	bool movingOrResizing = (m_canvas->m_viewMode.operItemMoving || m_canvas->m_viewMode.operItemResizing);
-	if ((m_doc->guidesPrefs().guidesShown) && (!m_doc->GuideLock) && (!movingOrResizing) && (m_doc->OnPage(mousePointDoc.x(), mousePointDoc.y()) != -1) )
+	bool mouseIsOnPage    = (m_doc->OnPage(mousePointDoc.x(), mousePointDoc.y()) != -1);
+	if ((m_doc->guidesPrefs().guidesShown) && (!m_doc->GuideLock) && (!movingOrResizing) && (mouseIsOnPage) )
 	{
 		// #9002: Resize points undraggable when object is aligned to a guide
 		// Allow item resize when guides are aligned to item while preserving
@@ -302,6 +303,14 @@
 			qApp->changeOverrideCursor(QCursor(Qt::ArrowCursor));
 		}
 	}
+	else if (!mouseIsOnPage)
+	{
+		QCursor* cursor = qApp->overrideCursor();
+		if (cursor && ((cursor->shape() == Qt::SplitHCursor) || (cursor->shape() == Qt::SplitVCursor)))
+		{
+			qApp->changeOverrideCursor(QCursor(Qt::ArrowCursor));
+		}
+	}
 	if ((GetItem(&currItem)) && (!shiftSelItems))
 	{
 		newX = qRound(mousePointDoc.x()); //m_view->translateToDoc(m->x(), m->y()).x());




More information about the scribus-commit mailing list