diff options
author | McCabe Maxsted | 2010-10-09 03:27:47 -0700 |
---|---|---|
committer | McCabe Maxsted | 2010-10-09 03:27:47 -0700 |
commit | 1866bc2af39189c17b636970d4df7edc983c1830 (patch) | |
tree | e60963a49832280cf3d2d9b5a8b589853469caee /linden/indra/newview/llviewerwindow.cpp | |
parent | Use all those cores for compile (diff) | |
download | meta-impy-1866bc2af39189c17b636970d4df7edc983c1830.zip meta-impy-1866bc2af39189c17b636970d4df7edc983c1830.tar.gz meta-impy-1866bc2af39189c17b636970d4df7edc983c1830.tar.bz2 meta-impy-1866bc2af39189c17b636970d4df7edc983c1830.tar.xz |
Applied RLVa-1.1.2-Imprudence.patch by Kitty Barnett
Diffstat (limited to 'linden/indra/newview/llviewerwindow.cpp')
-rw-r--r-- | linden/indra/newview/llviewerwindow.cpp | 36 |
1 files changed, 32 insertions, 4 deletions
diff --git a/linden/indra/newview/llviewerwindow.cpp b/linden/indra/newview/llviewerwindow.cpp index 3a68f0f..401e62d 100644 --- a/linden/indra/newview/llviewerwindow.cpp +++ b/linden/indra/newview/llviewerwindow.cpp | |||
@@ -187,6 +187,10 @@ | |||
187 | #include "llfloatertest.h" // HACK! | 187 | #include "llfloatertest.h" // HACK! |
188 | #include "llfloaternotificationsconsole.h" | 188 | #include "llfloaternotificationsconsole.h" |
189 | 189 | ||
190 | // [RLVa:KB] | ||
191 | #include "rlvhandler.h" | ||
192 | // [/RLVa:KB] | ||
193 | |||
190 | #if LL_WINDOWS | 194 | #if LL_WINDOWS |
191 | #include <tchar.h> // For Unicode conversion methods | 195 | #include <tchar.h> // For Unicode conversion methods |
192 | #endif | 196 | #endif |
@@ -3473,17 +3477,41 @@ LLViewerObject* LLViewerWindow::cursorIntersect(S32 mouse_x, S32 mouse_y, F32 de | |||
3473 | } | 3477 | } |
3474 | 3478 | ||
3475 | else // check ALL objects | 3479 | else // check ALL objects |
3476 | { | 3480 | { |
3477 | found = gPipeline.lineSegmentIntersectInHUD(mouse_hud_start, mouse_hud_end, pick_transparent, | 3481 | found = gPipeline.lineSegmentIntersectInHUD(mouse_hud_start, mouse_hud_end, pick_transparent, |
3478 | face_hit, intersection, uv, normal, binormal); | 3482 | face_hit, intersection, uv, normal, binormal); |
3479 | 3483 | ||
3480 | if (!found) // if not found in HUD, look in world: | 3484 | // [RLVa:KB] - Checked: 2009-12-28 (RLVa-1.1.0k) | Modified: RLVa-1.1.0k |
3485 | if ( (rlv_handler_t::isEnabled()) && (LLToolCamera::getInstance()->hasMouseCapture()) && (gKeyboard->currentMask(TRUE) & MASK_ALT) ) | ||
3486 | { | ||
3487 | found = NULL; | ||
3488 | } | ||
3489 | // [/RLVa:KB] | ||
3481 | 3490 | ||
3482 | { | 3491 | if (!found) // if not found in HUD, look in world: |
3492 | { | ||
3483 | found = gPipeline.lineSegmentIntersectInWorld(mouse_world_start, mouse_world_end, pick_transparent, | 3493 | found = gPipeline.lineSegmentIntersectInWorld(mouse_world_start, mouse_world_end, pick_transparent, |
3484 | face_hit, intersection, uv, normal, binormal); | 3494 | face_hit, intersection, uv, normal, binormal); |
3485 | } | ||
3486 | 3495 | ||
3496 | // [RLVa:KB] - Checked: 2010-01-02 (RLVa-1.1.0l) | Added: RLVa-1.1.0l | ||
3497 | #ifdef RLV_EXTENSION_CMD_INTERACT | ||
3498 | if ( (rlv_handler_t::isEnabled()) && (found) && (gRlvHandler.hasBehaviour(RLV_BHVR_INTERACT)) ) | ||
3499 | { | ||
3500 | // Allow picking if: | ||
3501 | // - the drag-and-drop tool is active (allows inventory offers) | ||
3502 | // - the camera tool is active | ||
3503 | // - the pie tool is active *and* we picked our own avie (allows "mouse steering" and the self pie menu) | ||
3504 | LLTool* pCurTool = LLToolMgr::getInstance()->getCurrentTool(); | ||
3505 | if ( (LLToolDragAndDrop::getInstance() != pCurTool) && | ||
3506 | (!LLToolCamera::getInstance()->hasMouseCapture()) && | ||
3507 | ((LLToolPie::getInstance() != pCurTool) || (gAgent.getID() != found->getID())) ) | ||
3508 | { | ||
3509 | found = NULL; | ||
3510 | } | ||
3511 | } | ||
3512 | #endif // RLV_EXTENSION_CMD_INTERACT | ||
3513 | // [/RLVa:KB] | ||
3514 | } | ||
3487 | } | 3515 | } |
3488 | 3516 | ||
3489 | return found; | 3517 | return found; |