Merged in RLVa. Viewer broken!
This commit is contained in:
@@ -69,6 +69,10 @@
|
||||
#include "pipeline.h"
|
||||
#include "llspatialpartition.h"
|
||||
|
||||
// [RLVa:KB]
|
||||
#include "rlvhandler.h"
|
||||
// [/RLVa:KB]
|
||||
|
||||
BOOL LLAgent::setLookAt(ELookAtType target_type, LLViewerObject *object, LLVector3 position)
|
||||
{
|
||||
if(gSavedSettings.getBOOL("PrivateLookAt"))
|
||||
@@ -175,6 +179,13 @@ extern BOOL gDebugSelect;
|
||||
// Returns true if you got at least one object
|
||||
void LLToolSelectRect::handleRectangleSelection(S32 x, S32 y, MASK mask)
|
||||
{
|
||||
// [RLVa:KB] - Checked: 2010-01-02 (RLVa-1.1.0l) | Modified: RLVa-1.1.0l
|
||||
if ( (rlv_handler_t::isEnabled()) && ((gRlvHandler.hasBehaviour(RLV_BHVR_EDIT)) || (gRlvHandler.hasBehaviour(RLV_BHVR_INTERACT))) )
|
||||
{
|
||||
return;
|
||||
}
|
||||
// [/RLVa:KB]
|
||||
|
||||
LLVector3 av_pos = gAgent.getPositionAgent();
|
||||
F32 select_dist_squared = gSavedSettings.getF32("MaxSelectDistance");
|
||||
select_dist_squared = select_dist_squared * select_dist_squared;
|
||||
@@ -239,6 +250,27 @@ void LLToolSelectRect::handleRectangleSelection(S32 x, S32 y, MASK mask)
|
||||
LLViewerCamera::getInstance()->setFar(new_far);
|
||||
LLViewerCamera::getInstance()->setNear(new_near);
|
||||
}
|
||||
// [RLVa:KB] - Checked: 2009-07-10 (RLVa-1.0.0g)
|
||||
if (gRlvHandler.hasBehaviour(RLV_BHVR_FARTOUCH))
|
||||
{
|
||||
// We'll allow drag selection under fartouch, but only within the fartouch range
|
||||
// (just copy/paste the code above us to make that work, thank you Lindens!)
|
||||
LLVector3 relative_av_pos = av_pos;
|
||||
relative_av_pos -= LLViewerCamera::getInstance()->getOrigin();
|
||||
|
||||
F32 new_far = relative_av_pos * LLViewerCamera::getInstance()->getAtAxis() + 1.5f;
|
||||
F32 new_near = relative_av_pos * LLViewerCamera::getInstance()->getAtAxis() - 1.5f;
|
||||
|
||||
new_near = llmax(new_near, 0.1f);
|
||||
|
||||
LLViewerCamera::getInstance()->setFar(new_far);
|
||||
LLViewerCamera::getInstance()->setNear(new_near);
|
||||
|
||||
// Usurp these two
|
||||
limit_select_distance = TRUE;
|
||||
select_dist_squared = 1.5f * 1.5f;
|
||||
}
|
||||
// [/RLVa:KB]
|
||||
LLViewerCamera::getInstance()->setPerspective(FOR_SELECTION,
|
||||
center_x-width/2, center_y-height/2, width, height,
|
||||
limit_select_distance);
|
||||
|
||||
Reference in New Issue
Block a user