diff options
Diffstat (limited to 'indra/newview/lltoolgrab.h')
-rw-r--r-- | indra/newview/lltoolgrab.h | 19 |
1 files changed, 10 insertions, 9 deletions
diff --git a/indra/newview/lltoolgrab.h b/indra/newview/lltoolgrab.h index d744c495a5..696ce0742a 100644 --- a/indra/newview/lltoolgrab.h +++ b/indra/newview/lltoolgrab.h @@ -37,10 +37,12 @@ #include "llquaternion.h" #include "llmemory.h" #include "lluuid.h" +#include "llviewerwindow.h" // for LLPickInfo class LLView; class LLTextBox; class LLViewerObject; +class LLPickInfo; class LLToolGrab : public LLTool, public LLSingleton<LLToolGrab> { @@ -69,15 +71,15 @@ public: LLVector3 getGrabOffset(S32 x, S32 y); // HACK // Capture the mouse and start grabbing. - BOOL handleObjectHit(LLViewerObject *objectp, S32 x, S32 y, MASK mask); + BOOL handleObjectHit(const LLPickInfo& info); // Certain grabs should not highlight the "Build" toolbar button BOOL getHideBuildHighlight() { return mHideBuildHighlight; } - static void pickCallback(S32 x, S32 y, MASK mask); + static void pickCallback(const LLPickInfo& pick_info); private: LLVector3d getGrabPointGlobal(); - void startGrab(S32 x, S32 y); + void startGrab(); void stopGrab(); void startSpin(); @@ -85,6 +87,7 @@ private: void handleHoverSpin(S32 x, S32 y, MASK mask); void handleHoverActive(S32 x, S32 y, MASK mask); + void handleHoverNonPhysical(S32 x, S32 y, MASK mask); void handleHoverInactive(S32 x, S32 y, MASK mask); void handleHoverFailed(S32 x, S32 y, MASK mask); @@ -96,29 +99,26 @@ private: BOOL mVerticalDragging; BOOL mHitLand; - LLUUID mHitObjectID; // if hit something, its ID - LLPointer<LLViewerObject> mGrabObject; // the object currently being grabbed LLTimer mGrabTimer; // send simulator time between hover movements LLVector3 mGrabOffsetFromCenterInitial; // meters from CG of object - LLVector3 mGrabOffset; // how far cursor currently is from grab start point, meters LLVector3d mGrabHiddenOffsetFromCamera; // in cursor hidden drag, how far is grab offset from camera LLVector3d mDragStartPointGlobal; // projected into world LLVector3d mDragStartFromCamera; // drag start relative to camera + LLPickInfo mGrabPick; + S32 mLastMouseX; S32 mLastMouseY; - S32 mMouseDownX; - S32 mMouseDownY; - MASK mMouseMask; S32 mAccumDeltaX; // since cursor hidden, how far have you moved? S32 mAccumDeltaY; BOOL mHasMoved; // has mouse moved off center at all? BOOL mOutsideSlop; // has mouse moved outside center 5 pixels? BOOL mDeselectedThisClick; + BOOL mSpinGrabbing; LLQuaternion mSpinRotation; @@ -131,3 +131,4 @@ extern LLTool* gGrabTransientTool; #endif // LL_TOOLGRAB_H + |