diff options
author | Nat Goodspeed <nat@lindenlab.com> | 2024-05-15 12:18:31 -0400 |
---|---|---|
committer | Nat Goodspeed <nat@lindenlab.com> | 2024-05-15 12:18:31 -0400 |
commit | 7ccf02515ad3f9e3bf795d651fe4b3c0d773f353 (patch) | |
tree | c4adc897c07f652e617e91fbf41c12b823acc808 /indra/newview/lltoolgrab.h | |
parent | 1abf5f18d6afc7ae9e1b1562b92e5c1ce33b722f (diff) | |
parent | e7eced3c87310b15ac20cc3cd470d67686104a14 (diff) |
Merge commit 'e7eced3' into lua-timers for whitespace fixes.
Diffstat (limited to 'indra/newview/lltoolgrab.h')
-rw-r--r-- | indra/newview/lltoolgrab.h | 154 |
1 files changed, 77 insertions, 77 deletions
diff --git a/indra/newview/lltoolgrab.h b/indra/newview/lltoolgrab.h index ce0de0f946..65a1f3cbdb 100644 --- a/indra/newview/lltoolgrab.h +++ b/indra/newview/lltoolgrab.h @@ -1,25 +1,25 @@ -/** +/** * @file lltoolgrab.h * @brief LLToolGrab class header file * * $LicenseInfo:firstyear=2001&license=viewerlgpl$ * Second Life Viewer Source Code * Copyright (C) 2010, Linden Research, Inc. - * + * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; * version 2.1 of the License only. - * + * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. - * + * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * + * * Linden Research, Inc., 945 Battery Street, San Francisco, CA 94111 USA * $/LicenseInfo$ */ @@ -55,101 +55,101 @@ const MASK DEFAULT_GRAB_MASK = MASK_CONTROL; class LLToolGrabBase : public LLTool { public: - LLToolGrabBase(LLToolComposite* composite=NULL); - ~LLToolGrabBase(); - - /*virtual*/ BOOL handleHover(S32 x, S32 y, MASK mask); - /*virtual*/ BOOL handleMouseDown(S32 x, S32 y, MASK mask); - /*virtual*/ BOOL handleMouseUp(S32 x, S32 y, MASK mask); - /*virtual*/ BOOL handleDoubleClick(S32 x, S32 y, MASK mask); - /*virtual*/ void render(); // 3D elements - /*virtual*/ void draw(); // 2D elements - - virtual void handleSelect(); - virtual void handleDeselect(); - - virtual LLViewerObject* getEditingObject(); - virtual LLVector3d getEditingPointGlobal(); - virtual BOOL isEditing(); - virtual void stopEditing(); - - virtual void onMouseCaptureLost(); - - BOOL hasGrabOffset() { return TRUE; } // HACK - LLVector3 getGrabOffset(S32 x, S32 y); // HACK - - // Capture the mouse and start grabbing. - BOOL handleObjectHit(const LLPickInfo& info); - - // Certain grabs should not highlight the "Build" toolbar button - BOOL getHideBuildHighlight() { return mHideBuildHighlight; } - - void setClickedInMouselook(BOOL is_clickedInMouselook) {mClickedInMouselook = is_clickedInMouselook;} - - static void pickCallback(const LLPickInfo& pick_info); + LLToolGrabBase(LLToolComposite* composite=NULL); + ~LLToolGrabBase(); + + /*virtual*/ BOOL handleHover(S32 x, S32 y, MASK mask); + /*virtual*/ BOOL handleMouseDown(S32 x, S32 y, MASK mask); + /*virtual*/ BOOL handleMouseUp(S32 x, S32 y, MASK mask); + /*virtual*/ BOOL handleDoubleClick(S32 x, S32 y, MASK mask); + /*virtual*/ void render(); // 3D elements + /*virtual*/ void draw(); // 2D elements + + virtual void handleSelect(); + virtual void handleDeselect(); + + virtual LLViewerObject* getEditingObject(); + virtual LLVector3d getEditingPointGlobal(); + virtual BOOL isEditing(); + virtual void stopEditing(); + + virtual void onMouseCaptureLost(); + + BOOL hasGrabOffset() { return TRUE; } // HACK + LLVector3 getGrabOffset(S32 x, S32 y); // HACK + + // Capture the mouse and start grabbing. + BOOL handleObjectHit(const LLPickInfo& info); + + // Certain grabs should not highlight the "Build" toolbar button + BOOL getHideBuildHighlight() { return mHideBuildHighlight; } + + void setClickedInMouselook(BOOL is_clickedInMouselook) {mClickedInMouselook = is_clickedInMouselook;} + + static void pickCallback(const LLPickInfo& pick_info); private: - LLVector3d getGrabPointGlobal(); - void startGrab(); - void stopGrab(); + LLVector3d getGrabPointGlobal(); + void startGrab(); + void stopGrab(); - void startSpin(); - void stopSpin(); + void startSpin(); + void stopSpin(); - 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); + 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); private: - enum EGrabMode { GRAB_INACTIVE, GRAB_ACTIVE_CENTER, GRAB_NONPHYSICAL, GRAB_LOCKED, GRAB_NOOBJECT }; + enum EGrabMode { GRAB_INACTIVE, GRAB_ACTIVE_CENTER, GRAB_NONPHYSICAL, GRAB_LOCKED, GRAB_NOOBJECT }; - EGrabMode mMode; + EGrabMode mMode; - BOOL mVerticalDragging; + BOOL mVerticalDragging; - BOOL mHitLand; + BOOL mHitLand; - LLTimer mGrabTimer; // send simulator time between hover movements + LLTimer mGrabTimer; // send simulator time between hover movements - LLVector3 mGrabOffsetFromCenterInitial; // meters from CG of object - LLVector3d mGrabHiddenOffsetFromCamera; // in cursor hidden drag, how far is grab offset from camera + LLVector3 mGrabOffsetFromCenterInitial; // meters from CG of object + 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 + LLVector3d mDragStartPointGlobal; // projected into world + LLVector3d mDragStartFromCamera; // drag start relative to camera - LLPickInfo mGrabPick; + LLPickInfo mGrabPick; - S32 mLastMouseX; - S32 mLastMouseY; - 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 mValidSelection; + S32 mLastMouseX; + S32 mLastMouseY; + 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 mValidSelection; - S32 mLastFace; - LLVector2 mLastUVCoords; - LLVector2 mLastSTCoords; - LLVector3 mLastIntersection; - LLVector3 mLastNormal; - LLVector3 mLastBinormal; - LLVector3 mLastGrabPos; + S32 mLastFace; + LLVector2 mLastUVCoords; + LLVector2 mLastSTCoords; + LLVector3 mLastIntersection; + LLVector3 mLastNormal; + LLVector3 mLastBinormal; + LLVector3 mLastGrabPos; - BOOL mSpinGrabbing; - LLQuaternion mSpinRotation; + BOOL mSpinGrabbing; + LLQuaternion mSpinRotation; - BOOL mHideBuildHighlight; + BOOL mHideBuildHighlight; - BOOL mClickedInMouselook; + BOOL mClickedInMouselook; }; /// This is the LLSingleton instance of LLToolGrab. class LLToolGrab : public LLToolGrabBase, public LLSingleton<LLToolGrab> { - LLSINGLETON_EMPTY_CTOR(LLToolGrab); + LLSINGLETON_EMPTY_CTOR(LLToolGrab); }; extern BOOL gGrabBtnVertical; |