From 93616a7b1bcc4d64631e2358f622521d44819359 Mon Sep 17 00:00:00 2001 From: neywen Date: Wed, 13 Jan 2010 09:46:34 +0000 Subject: [PATCH] added CursorPointingHand git-svn-id: svn://libnui.net/nui/trunk/nui3@5045 9db30882-7939-4ce0-a36a-45f8a15c01b5 --- include/nuiMouseCursor.h | 1 + src/Attributes/nuiAttribute.cpp | 6 ++++++ src/Text/nuiHTMLView.cpp | 7 +++++-- src/Window/Carbon/nglWindow_Carbon.cpp | 3 +++ 4 files changed, 15 insertions(+), 2 deletions(-) diff --git a/include/nuiMouseCursor.h b/include/nuiMouseCursor.h index cc27085d..99583322 100644 --- a/include/nuiMouseCursor.h +++ b/include/nuiMouseCursor.h @@ -16,6 +16,7 @@ enum nuiMouseCursor ///< See SetCursor() and GetCursor() eCursorIBeam, ///< Text entry eCursorHand, ///< Hand eCursorClosedHand,///< Closed Hand (at least on macos) + eCursorPointingHand,///< hand with a pointing finger eCursorHelp, ///< Question mark with an arrow eCursorWait, ///< Hourglass or watch (might be with an arrow) eCursorCaret, ///< Text caret diff --git a/src/Attributes/nuiAttribute.cpp b/src/Attributes/nuiAttribute.cpp index 7f115578..87f9563b 100644 --- a/src/Attributes/nuiAttribute.cpp +++ b/src/Attributes/nuiAttribute.cpp @@ -1710,6 +1710,9 @@ bool nuiAttribute::ToString(nuiMouseCursor Value, nglString& rSt case eCursorClosedHand: rString = _T("ClosedHand"); break; + case eCursorPointingHand: + rString = _T("PointingHand"); + break; case eCursorHelp: rString = _T("Help"); break; @@ -1785,6 +1788,8 @@ bool nuiAttribute::FromString(nuiMouseCursor& rValue, const nglS rValue = eCursorHand; else if (!rString.Compare(_T("ClosedHand"), false)) rValue = eCursorClosedHand; + else if (!rString.Compare(_T("PointingHand"), false)) + rValue = eCursorPointingHand; else if (!rString.Compare(_T("Help"), false)) rValue = eCursorHelp; else if (!rString.Compare(_T("Wait"), false)) @@ -1836,6 +1841,7 @@ nuiAttributeEditor* nuiAttribute::GetDefaultEditor(void* pTarget values.push_back(std::make_pair(_T("IBeam"), eCursorIBeam)); values.push_back(std::make_pair(_T("Hand"), eCursorHand)); values.push_back(std::make_pair(_T("ClosedHand"), eCursorClosedHand)); + values.push_back(std::make_pair(_T("PointingHand"), eCursorPointingHand)); values.push_back(std::make_pair(_T("Help"), eCursorHelp)); values.push_back(std::make_pair(_T("Wait"), eCursorWait)); values.push_back(std::make_pair(_T("Caret"), eCursorCaret)); diff --git a/src/Text/nuiHTMLView.cpp b/src/Text/nuiHTMLView.cpp index d22f353f..932bde29 100644 --- a/src/Text/nuiHTMLView.cpp +++ b/src/Text/nuiHTMLView.cpp @@ -808,6 +808,8 @@ bool nuiHTMLView::MouseMoved(const nglMouseInfo& rInfo) Invalidate(); std::vector items; + + mpRootBox->GetItemsAt(items, rInfo.X, rInfo.Y); if (!items.empty()) { @@ -826,13 +828,14 @@ bool nuiHTMLView::MouseMoved(const nglMouseInfo& rInfo) if (mUseToolTips) SetToolTip(url); - SetMouseCursor(eCursorArrow); + + SetMouseCursor(eCursorPointingHand); return true; } } } } - + if (mUseToolTips) SetToolTip(nglString::Empty); SetMouseCursor(eCursorCaret); diff --git a/src/Window/Carbon/nglWindow_Carbon.cpp b/src/Window/Carbon/nglWindow_Carbon.cpp index 2824d041..6b99469c 100644 --- a/src/Window/Carbon/nglWindow_Carbon.cpp +++ b/src/Window/Carbon/nglWindow_Carbon.cpp @@ -1816,6 +1816,9 @@ bool nglWindow::SetCursor(nuiMouseCursor Cursor) case eCursorClosedHand: ::SetThemeCursor(kThemeClosedHandCursor); break; + case eCursorPointingHand: + ::SetThemeCursor(kThemePointingHandCursor); + break; case eCursorWait: ::SetThemeCursor(kThemeWatchCursor); break;