Merge branch 'master' of https://github.com/siana/SingularityViewer
This commit is contained in:
@@ -76,24 +76,16 @@ endif (${CMAKE_SYSTEM_NAME} MATCHES "Linux")
|
|||||||
if (${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
|
if (${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
|
||||||
set(DARWIN 1)
|
set(DARWIN 1)
|
||||||
|
|
||||||
# NOTE: If specifying a different SDK with CMAKE_OSX_SYSROOT at configure
|
#SDK Compiler and Deployment targets for XCode
|
||||||
# time you should also specify CMAKE_OSX_DEPLOYMENT_TARGET explicitly,
|
if (${XCODE_VERSION} VERSION_LESS 4.0.0)
|
||||||
# otherwise CMAKE_OSX_SYSROOT will be overridden here. We can't just check
|
|
||||||
# for it being unset, as it gets set to the system default :(
|
|
||||||
|
|
||||||
# Default to building against the 10.5 SDK if no deployment target is
|
|
||||||
# specified.
|
|
||||||
if (NOT CMAKE_OSX_DEPLOYMENT_TARGET)
|
|
||||||
# NOTE: setting -isysroot is NOT adequate: http://lists.apple.com/archives/Xcode-users/2007/Oct/msg00696.html
|
|
||||||
# see http://public.kitware.com/Bug/view.php?id=9959 + poppy
|
|
||||||
set(CMAKE_OSX_SYSROOT /Developer/SDKs/MacOSX10.5.sdk)
|
set(CMAKE_OSX_SYSROOT /Developer/SDKs/MacOSX10.5.sdk)
|
||||||
set(CMAKE_OSX_DEPLOYMENT_TARGET 10.5)
|
set(CMAKE_XCODE_ATTIBUTE_GCC_VERSION "4.2")
|
||||||
endif (NOT CMAKE_OSX_DEPLOYMENT_TARGET)
|
else (${XCODE_VERSION} VERSION_LESS 4.0.0)
|
||||||
|
set(CMAKE_OSX_SYSROOT /Developer/SDKs/MacOSX10.6.sdk)
|
||||||
|
set(CMAKE_XCODE_ATTRIBUTE_GCC_VERSION "com.apple.compilers.llvmgcc42")
|
||||||
|
endif (${XCODE_VERSION} VERSION_LESS 4.0.0)
|
||||||
|
|
||||||
# Use GCC 4.2
|
set(CMAKE_OSX_DEPLOYMENT_TARGET 10.5)
|
||||||
if (${CMAKE_OSX_SYSROOT} MATCHES "10.5")
|
|
||||||
set(CMAKE_XCODE_ATTRIBUTE_GCC_VERSION "4.2")
|
|
||||||
endif (${CMAKE_OSX_SYSROOT} MATCHES "10.5")
|
|
||||||
|
|
||||||
# NOTE: To attempt an i386/PPC Universal build, add this on the configure line:
|
# NOTE: To attempt an i386/PPC Universal build, add this on the configure line:
|
||||||
# -DCMAKE_OSX_ARCHITECTURES:STRING='i386;ppc'
|
# -DCMAKE_OSX_ARCHITECTURES:STRING='i386;ppc'
|
||||||
|
|||||||
@@ -2547,9 +2547,8 @@ BOOL LLLineEditor::evaluateFloat()
|
|||||||
else
|
else
|
||||||
{
|
{
|
||||||
// Replace the expression with the result
|
// Replace the expression with the result
|
||||||
std::ostringstream result_str;
|
std::string result_str = llformat("%f", result);
|
||||||
result_str << result;
|
setText(result_str);
|
||||||
setText(result_str.str());
|
|
||||||
selectAll();
|
selectAll();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -157,6 +157,34 @@ F32 clamp_precision(F32 value, S32 decimal_precision)
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
F32 get_increment(F32 inc, S32 decimal_precision) //CF: finetune increments
|
||||||
|
{
|
||||||
|
if(gKeyboard->getKeyDown(KEY_ALT))
|
||||||
|
inc = inc * 10.f;
|
||||||
|
else if(gKeyboard->getKeyDown(KEY_CONTROL)) {
|
||||||
|
if (llround(inc * 1000.f) == 25) // 0.025 gets 0.05 here
|
||||||
|
inc = inc * 0.2f;
|
||||||
|
else
|
||||||
|
inc = inc * 0.1f;
|
||||||
|
}
|
||||||
|
else if(gKeyboard->getKeyDown(KEY_SHIFT)) {
|
||||||
|
if (decimal_precision == 2 && llround(inc) == 1) // for rotations, finest step is 0.05
|
||||||
|
inc = inc * 0.05f;
|
||||||
|
else
|
||||||
|
inc = inc * 0.01f;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (decimal_precision == 1 && inc < 0.1f) // clamp inc to precision
|
||||||
|
inc = 0.1f;
|
||||||
|
else if (decimal_precision == 2 && inc < 0.01f)
|
||||||
|
inc = 0.01f;
|
||||||
|
else if (decimal_precision == 3 && inc < 0.001f)
|
||||||
|
inc = 0.001f;
|
||||||
|
|
||||||
|
return inc;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
// static
|
// static
|
||||||
void LLSpinCtrl::onUpBtn( void *userdata )
|
void LLSpinCtrl::onUpBtn( void *userdata )
|
||||||
{
|
{
|
||||||
@@ -164,7 +192,7 @@ void LLSpinCtrl::onUpBtn( void *userdata )
|
|||||||
if( self->getEnabled() )
|
if( self->getEnabled() )
|
||||||
{
|
{
|
||||||
// use getValue()/setValue() to force reload from/to control
|
// use getValue()/setValue() to force reload from/to control
|
||||||
F32 val = (F32)self->getValue().asReal() + self->mIncrement;
|
F32 val = (F32)self->getValue().asReal() + get_increment(self->mIncrement, self->mPrecision);
|
||||||
val = clamp_precision(val, self->mPrecision);
|
val = clamp_precision(val, self->mPrecision);
|
||||||
val = llmin( val, self->mMaxValue );
|
val = llmin( val, self->mMaxValue );
|
||||||
|
|
||||||
@@ -191,7 +219,7 @@ void LLSpinCtrl::onDownBtn( void *userdata )
|
|||||||
|
|
||||||
if( self->getEnabled() )
|
if( self->getEnabled() )
|
||||||
{
|
{
|
||||||
F32 val = (F32)self->getValue().asReal() - self->mIncrement;
|
F32 val = (F32)self->getValue().asReal() - get_increment(self->mIncrement, self->mPrecision);
|
||||||
val = clamp_precision(val, self->mPrecision);
|
val = clamp_precision(val, self->mPrecision);
|
||||||
val = llmax( val, self->mMinValue );
|
val = llmax( val, self->mMinValue );
|
||||||
|
|
||||||
|
|||||||
@@ -79,6 +79,51 @@
|
|||||||
<integer>100</integer>
|
<integer>100</integer>
|
||||||
</map>
|
</map>
|
||||||
|
|
||||||
|
<key>zmm_deffov</key>
|
||||||
|
<map>
|
||||||
|
<key>Comment</key>
|
||||||
|
<string>Default field of viewer for right click mouse zoom.</string>
|
||||||
|
<key>Persist</key>
|
||||||
|
<integer>1</integer>
|
||||||
|
<key>Type</key>
|
||||||
|
<string>F32</string>
|
||||||
|
<key>Value</key>
|
||||||
|
<real>1.0</real>
|
||||||
|
</map>
|
||||||
|
<key>zmm_mlfov</key>
|
||||||
|
<map>
|
||||||
|
<key>Comment</key>
|
||||||
|
<string>1=Normal, Under 1 Zoom Out, Over 1 Zoom in </string>
|
||||||
|
<key>Persist</key>
|
||||||
|
<integer>1</integer>
|
||||||
|
<key>Type</key>
|
||||||
|
<string>F32</string>
|
||||||
|
<key>Value</key>
|
||||||
|
<real>1</real>
|
||||||
|
</map>
|
||||||
|
<key>zmm_isinml</key>
|
||||||
|
<map>
|
||||||
|
<key>Comment</key>
|
||||||
|
<string>mouselook</string>
|
||||||
|
<key>Persist</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
<key>Type</key>
|
||||||
|
<string>Boolean</string>
|
||||||
|
<key>Value</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
</map>
|
||||||
|
<key>zmm_rightmousedown</key>
|
||||||
|
<map>
|
||||||
|
<key>Comment</key>
|
||||||
|
<string>insert rude comment here</string>
|
||||||
|
<key>Persist</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
<key>Type</key>
|
||||||
|
<string>Boolean</string>
|
||||||
|
<key>Value</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
</map>
|
||||||
|
|
||||||
<key>AllowLargeSounds</key>
|
<key>AllowLargeSounds</key>
|
||||||
<map>
|
<map>
|
||||||
<key>Comment</key>
|
<key>Comment</key>
|
||||||
|
|||||||
@@ -60,5 +60,6 @@ void HippoLimits::setSecondLifeLimits()
|
|||||||
mMaxHeight = 4096.0f;
|
mMaxHeight = 4096.0f;
|
||||||
mMinHoleSize = 0.05f;
|
mMinHoleSize = 0.05f;
|
||||||
mMaxHollow = 0.95f;
|
mMaxHollow = 0.95f;
|
||||||
|
mMaxPrimScale = 64.0f;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -68,6 +68,7 @@
|
|||||||
#if MESH_ENABLED
|
#if MESH_ENABLED
|
||||||
#include "llmeshrepository.h"
|
#include "llmeshrepository.h"
|
||||||
#endif //MESH_ENABLED
|
#endif //MESH_ENABLED
|
||||||
|
#include "hippolimits.h"
|
||||||
|
|
||||||
|
|
||||||
const F32 MAX_MANIP_SELECT_DISTANCE_SQUARED = 11.f * 11.f;
|
const F32 MAX_MANIP_SELECT_DISTANCE_SQUARED = 11.f * 11.f;
|
||||||
@@ -98,6 +99,9 @@ const LLManip::EManipPart MANIPULATOR_IDS[NUM_MANIPULATORS] =
|
|||||||
|
|
||||||
F32 get_default_max_prim_scale(bool is_flora)
|
F32 get_default_max_prim_scale(bool is_flora)
|
||||||
{
|
{
|
||||||
|
//CF: both scales are 256, so what?, I now use gridmanagersetting
|
||||||
|
return gHippoLimits->getMaxPrimScale();
|
||||||
|
#if 0
|
||||||
// a bit of a hack, but if it's foilage, we don't want to use the
|
// a bit of a hack, but if it's foilage, we don't want to use the
|
||||||
// new larger scale which would result in giant trees and grass
|
// new larger scale which would result in giant trees and grass
|
||||||
#if MESH_ENABLED
|
#if MESH_ENABLED
|
||||||
@@ -114,6 +118,7 @@ F32 get_default_max_prim_scale(bool is_flora)
|
|||||||
#if !MESH_ENABLED
|
#if !MESH_ENABLED
|
||||||
return DEFAULT_MAX_PRIM_SCALE;
|
return DEFAULT_MAX_PRIM_SCALE;
|
||||||
#endif //!MESH_ENABLED
|
#endif //!MESH_ENABLED
|
||||||
|
#endif //0
|
||||||
}
|
}
|
||||||
|
|
||||||
// static
|
// static
|
||||||
|
|||||||
@@ -80,8 +80,6 @@
|
|||||||
#include "hippolimits.h"
|
#include "hippolimits.h"
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// [RLVa:KB]
|
// [RLVa:KB]
|
||||||
#include "rlvhandler.h"
|
#include "rlvhandler.h"
|
||||||
// [/RLVa:KB]
|
// [/RLVa:KB]
|
||||||
@@ -562,6 +560,9 @@ void LLPanelObject::getState( )
|
|||||||
mBtnCopySize->setEnabled( enable_scale );
|
mBtnCopySize->setEnabled( enable_scale );
|
||||||
mBtnPasteSize->setEnabled( enable_scale );
|
mBtnPasteSize->setEnabled( enable_scale );
|
||||||
mBtnPasteSizeClip->setEnabled( enable_scale );
|
mBtnPasteSizeClip->setEnabled( enable_scale );
|
||||||
|
mCtrlScaleX->setMaxValue(gHippoLimits->getMaxPrimScale());
|
||||||
|
mCtrlScaleY->setMaxValue(gHippoLimits->getMaxPrimScale());
|
||||||
|
mCtrlScaleZ->setMaxValue(gHippoLimits->getMaxPrimScale());
|
||||||
|
|
||||||
LLQuaternion object_rot = objectp->getRotationEdit();
|
LLQuaternion object_rot = objectp->getRotationEdit();
|
||||||
object_rot.getEulerAngles(&(mCurEulerDegrees.mV[VX]), &(mCurEulerDegrees.mV[VY]), &(mCurEulerDegrees.mV[VZ]));
|
object_rot.getEulerAngles(&(mCurEulerDegrees.mV[VX]), &(mCurEulerDegrees.mV[VY]), &(mCurEulerDegrees.mV[VZ]));
|
||||||
@@ -2118,9 +2119,9 @@ void LLPanelObject::sendScale(BOOL btn_down)
|
|||||||
|
|
||||||
LLVector3 delta = newscale - mObject->getScale();
|
LLVector3 delta = newscale - mObject->getScale();
|
||||||
//Saw this changed in some viewers to be more touchy than this, but it would likely cause more updates and higher lag for the client. -HgB
|
//Saw this changed in some viewers to be more touchy than this, but it would likely cause more updates and higher lag for the client. -HgB
|
||||||
if (delta.magVec() >= 0.0005f)
|
if (delta.magVec() >= 0.0001f) //CF: just a bit more touchy
|
||||||
{
|
{
|
||||||
// scale changed by more than 1/2 millimeter
|
// scale changed by more than 1/10 millimeter
|
||||||
|
|
||||||
// check to see if we aren't scaling the textures
|
// check to see if we aren't scaling the textures
|
||||||
// (in which case the tex coord's need to be recomputed)
|
// (in which case the tex coord's need to be recomputed)
|
||||||
@@ -2192,9 +2193,9 @@ void LLPanelObject::sendPosition(BOOL btn_down)
|
|||||||
// send only if the position is changed, that is, the delta vector is not zero
|
// send only if the position is changed, that is, the delta vector is not zero
|
||||||
LLVector3d old_pos_global = mObject->getPositionGlobal();
|
LLVector3d old_pos_global = mObject->getPositionGlobal();
|
||||||
LLVector3d delta = new_pos_global - old_pos_global;
|
LLVector3d delta = new_pos_global - old_pos_global;
|
||||||
// moved more than 1/2 millimeter
|
// moved more than 1/10 millimeter
|
||||||
//Saw this changed in some viewers to be more touchy than this, but it would likely cause more updates and higher lag for the client. -HgB
|
//Saw this changed in some viewers to be more touchy than this, but it would likely cause more updates and higher lag for the client. -HgB
|
||||||
if (delta.magVec() >= 0.0005f)
|
if (delta.magVec() >= 0.0001f) //CF: just a bit more touchy
|
||||||
{
|
{
|
||||||
if (mRootObject != mObject)
|
if (mRootObject != mObject)
|
||||||
{
|
{
|
||||||
@@ -2639,8 +2640,9 @@ void LLPanelObject::onPastePos(void* user_data)
|
|||||||
|
|
||||||
LLPanelObject* self = (LLPanelObject*) user_data;
|
LLPanelObject* self = (LLPanelObject*) user_data;
|
||||||
LLCalc* calcp = LLCalc::getInstance();
|
LLCalc* calcp = LLCalc::getInstance();
|
||||||
mClipboardPos.mV[VX] = llclamp( mClipboardPos.mV[VX], -3.5f, 256.f);
|
float region_width = LLWorld::getInstance()->getRegionWidthInMeters();
|
||||||
mClipboardPos.mV[VY] = llclamp( mClipboardPos.mV[VY], -3.5f, 256.f);
|
mClipboardPos.mV[VX] = llclamp( mClipboardPos.mV[VX], -3.5f, region_width);
|
||||||
|
mClipboardPos.mV[VY] = llclamp( mClipboardPos.mV[VY], -3.5f, region_width);
|
||||||
mClipboardPos.mV[VZ] = llclamp( mClipboardPos.mV[VZ], -3.5f, 4096.f);
|
mClipboardPos.mV[VZ] = llclamp( mClipboardPos.mV[VZ], -3.5f, 4096.f);
|
||||||
|
|
||||||
self->mCtrlPosX->set( mClipboardPos.mV[VX] );
|
self->mCtrlPosX->set( mClipboardPos.mV[VX] );
|
||||||
@@ -2659,9 +2661,9 @@ void LLPanelObject::onPasteSize(void* user_data)
|
|||||||
|
|
||||||
LLPanelObject* self = (LLPanelObject*) user_data;
|
LLPanelObject* self = (LLPanelObject*) user_data;
|
||||||
LLCalc* calcp = LLCalc::getInstance();
|
LLCalc* calcp = LLCalc::getInstance();
|
||||||
mClipboardSize.mV[VX] = llclamp(mClipboardSize.mV[VX], 0.01f, 64.f);
|
mClipboardSize.mV[VX] = llclamp(mClipboardSize.mV[VX], 0.01f, gHippoLimits->getMaxPrimScale());
|
||||||
mClipboardSize.mV[VY] = llclamp(mClipboardSize.mV[VY], 0.01f, 64.f);
|
mClipboardSize.mV[VY] = llclamp(mClipboardSize.mV[VY], 0.01f, gHippoLimits->getMaxPrimScale());
|
||||||
mClipboardSize.mV[VZ] = llclamp(mClipboardSize.mV[VZ], 0.01f, 64.f);
|
mClipboardSize.mV[VZ] = llclamp(mClipboardSize.mV[VZ], 0.01f, gHippoLimits->getMaxPrimScale());
|
||||||
|
|
||||||
self->mCtrlScaleX->set( mClipboardSize.mV[VX] );
|
self->mCtrlScaleX->set( mClipboardSize.mV[VX] );
|
||||||
self->mCtrlScaleY->set( mClipboardSize.mV[VY] );
|
self->mCtrlScaleY->set( mClipboardSize.mV[VY] );
|
||||||
@@ -2742,9 +2744,9 @@ void LLPanelObject::onPasteSizeClip(void* user_data)
|
|||||||
std::string stringVec = wstring_to_utf8str(temp_string);
|
std::string stringVec = wstring_to_utf8str(temp_string);
|
||||||
if(!getvectorfromclip(stringVec, &mClipboardSize)) return;
|
if(!getvectorfromclip(stringVec, &mClipboardSize)) return;
|
||||||
|
|
||||||
mClipboardSize.mV[VX] = llclamp(mClipboardSize.mV[VX], 0.01f, 10.f);
|
mClipboardSize.mV[VX] = llclamp(mClipboardSize.mV[VX], 0.01f, gHippoLimits->getMaxPrimScale());
|
||||||
mClipboardSize.mV[VY] = llclamp(mClipboardSize.mV[VY], 0.01f, 10.f);
|
mClipboardSize.mV[VY] = llclamp(mClipboardSize.mV[VY], 0.01f, gHippoLimits->getMaxPrimScale());
|
||||||
mClipboardSize.mV[VZ] = llclamp(mClipboardSize.mV[VZ], 0.01f, 10.f);
|
mClipboardSize.mV[VZ] = llclamp(mClipboardSize.mV[VZ], 0.01f, gHippoLimits->getMaxPrimScale());
|
||||||
|
|
||||||
self->mCtrlScaleX->set( mClipboardSize.mV[VX] );
|
self->mCtrlScaleX->set( mClipboardSize.mV[VX] );
|
||||||
self->mCtrlScaleY->set( mClipboardSize.mV[VY] );
|
self->mCtrlScaleY->set( mClipboardSize.mV[VY] );
|
||||||
|
|||||||
@@ -57,6 +57,7 @@
|
|||||||
#include "llfloatertools.h"
|
#include "llfloatertools.h"
|
||||||
#include "qtoolalign.h"
|
#include "qtoolalign.h"
|
||||||
#include "llviewercontrol.h"
|
#include "llviewercontrol.h"
|
||||||
|
#include "llviewercamera.h"
|
||||||
|
|
||||||
const S32 BUTTON_HEIGHT = 16;
|
const S32 BUTTON_HEIGHT = 16;
|
||||||
const S32 BUTTON_WIDTH_SMALL = 32;
|
const S32 BUTTON_WIDTH_SMALL = 32;
|
||||||
@@ -801,6 +802,20 @@ void LLToolCompGun::handleDeselect()
|
|||||||
|
|
||||||
BOOL LLToolCompGun::handleScrollWheel(S32 x, S32 y, S32 clicks)
|
BOOL LLToolCompGun::handleScrollWheel(S32 x, S32 y, S32 clicks)
|
||||||
{
|
{
|
||||||
|
//::MOYMOD::
|
||||||
|
if(gSavedSettings.getBOOL("zmm_isinml") == 1)
|
||||||
|
{
|
||||||
|
if(clicks > 0)
|
||||||
|
{
|
||||||
|
gSavedSettings.setF32("zmm_mlfov", gSavedSettings.getF32("zmm_mlfov") / 1.1);
|
||||||
|
}
|
||||||
|
else if(clicks < 0)
|
||||||
|
{
|
||||||
|
gSavedSettings.setF32("zmm_mlfov", gSavedSettings.getF32("zmm_mlfov") * 1.1);
|
||||||
|
}
|
||||||
|
LLViewerCamera::getInstance()->setDefaultFOV(gSavedSettings.getF32("zmm_deffov") / gSavedSettings.getF32("zmm_mlfov"));
|
||||||
|
return TRUE;
|
||||||
|
}
|
||||||
if (clicks > 0)
|
if (clicks > 0)
|
||||||
{
|
{
|
||||||
gAgentCamera.changeCameraToDefault();
|
gAgentCamera.changeCameraToDefault();
|
||||||
|
|||||||
@@ -2336,7 +2336,8 @@ void LLViewerObject::interpolateLinearMotion(const F64 & time, const F32 & dt)
|
|||||||
}
|
}
|
||||||
|
|
||||||
new_pos.mV[VZ] = llmax(min_height, new_pos.mV[VZ]);
|
new_pos.mV[VZ] = llmax(min_height, new_pos.mV[VZ]);
|
||||||
new_pos.mV[VZ] = llmin(LLWorld::getInstance()->getRegionMaxHeight(), new_pos.mV[VZ]);
|
//Removing check to allow high altitude flight games -SG
|
||||||
|
//new_pos.mV[VZ] = llmin(LLWorld::getInstance()->getRegionMaxHeight(), new_pos.mV[VZ]);
|
||||||
|
|
||||||
// Check to see if it's going off the region
|
// Check to see if it's going off the region
|
||||||
LLVector3 temp(new_pos);
|
LLVector3 temp(new_pos);
|
||||||
|
|||||||
@@ -962,6 +962,17 @@ BOOL LLViewerWindow::handleMouseUp(LLWindow *window, LLCoordGL pos, MASK mask)
|
|||||||
|
|
||||||
BOOL LLViewerWindow::handleRightMouseDown(LLWindow *window, LLCoordGL pos, MASK mask)
|
BOOL LLViewerWindow::handleRightMouseDown(LLWindow *window, LLCoordGL pos, MASK mask)
|
||||||
{
|
{
|
||||||
|
//From Phoenix
|
||||||
|
gSavedSettings.setBOOL("zmm_rightmousedown",1);
|
||||||
|
if(gAgentCamera.cameraMouselook()&&gSavedSettings.getBOOL("zmm_isinml")==0)
|
||||||
|
{
|
||||||
|
llinfos << "zmmisinml set to true" << llendl;
|
||||||
|
gSavedSettings.setBOOL("zmm_isinml",1);
|
||||||
|
F32 deffov=LLViewerCamera::getInstance()->getDefaultFOV();
|
||||||
|
gSavedSettings.setF32("zmm_deffov",deffov);
|
||||||
|
LLViewerCamera::getInstance()->setDefaultFOV(gSavedSettings.getF32("zmm_deffov")/gSavedSettings.getF32("zmm_mlfov"));
|
||||||
|
}
|
||||||
|
|
||||||
S32 x = pos.mX;
|
S32 x = pos.mX;
|
||||||
S32 y = pos.mY;
|
S32 y = pos.mY;
|
||||||
x = llround((F32)x / mDisplayScale.mV[VX]);
|
x = llround((F32)x / mDisplayScale.mV[VX]);
|
||||||
@@ -991,6 +1002,14 @@ BOOL LLViewerWindow::handleRightMouseDown(LLWindow *window, LLCoordGL pos, MASK
|
|||||||
|
|
||||||
BOOL LLViewerWindow::handleRightMouseUp(LLWindow *window, LLCoordGL pos, MASK mask)
|
BOOL LLViewerWindow::handleRightMouseUp(LLWindow *window, LLCoordGL pos, MASK mask)
|
||||||
{
|
{
|
||||||
|
gSavedSettings.setBOOL("zmm_rightmousedown",0);
|
||||||
|
if(gSavedSettings.getBOOL("zmm_isinml")==1)
|
||||||
|
{
|
||||||
|
llinfos << "zmmisinml set to false" << llendl;
|
||||||
|
gSavedSettings.setBOOL("zmm_isinml",0);
|
||||||
|
LLViewerCamera::getInstance()->setDefaultFOV(gSavedSettings.getF32("zmm_deffov"));
|
||||||
|
}
|
||||||
|
|
||||||
BOOL down = FALSE;
|
BOOL down = FALSE;
|
||||||
return handleAnyMouseClick(window,pos,mask,LLMouseHandler::CLICK_RIGHT,down);
|
return handleAnyMouseClick(window,pos,mask,LLMouseHandler::CLICK_RIGHT,down);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -620,15 +620,15 @@
|
|||||||
mouse_opaque="true" name="label position" v_pad="0" width="121">
|
mouse_opaque="true" name="label position" v_pad="0" width="121">
|
||||||
Position (meters)
|
Position (meters)
|
||||||
</text>
|
</text>
|
||||||
<spinner bottom_delta="-22" decimal_digits="3" follows="left|top" height="16"
|
<spinner bottom_delta="-22" decimal_digits="4" follows="left|top" height="16"
|
||||||
increment="0.01" initial_val="0" label="X" label_width="10" left_delta="0"
|
increment="0.01" initial_val="0" label="X" label_width="10" left_delta="0"
|
||||||
max_val="512" min_val="-256" mouse_opaque="true" name="Pos X"
|
max_val="512" min_val="-256" mouse_opaque="true" name="Pos X"
|
||||||
text_enabled_color="110, 15, 15, 255" width="87" />
|
text_enabled_color="110, 15, 15, 255" width="87" />
|
||||||
<spinner bottom_delta="-18" decimal_digits="3" follows="left|top" height="16"
|
<spinner bottom_delta="-18" decimal_digits="4" follows="left|top" height="16"
|
||||||
increment="0.01" initial_val="0" label="Y" label_width="10" left_delta="0"
|
increment="0.01" initial_val="0" label="Y" label_width="10" left_delta="0"
|
||||||
max_val="512" min_val="-256" mouse_opaque="true" name="Pos Y"
|
max_val="512" min_val="-256" mouse_opaque="true" name="Pos Y"
|
||||||
text_enabled_color="0, 100, 40, 255" width="87" />
|
text_enabled_color="0, 100, 40, 255" width="87" />
|
||||||
<spinner bottom_delta="-18" decimal_digits="3" follows="left|top" height="16"
|
<spinner bottom_delta="-18" decimal_digits="4" follows="left|top" height="16"
|
||||||
increment="0.01" initial_val="0" label="Z" label_width="10" left_delta="0"
|
increment="0.01" initial_val="0" label="Z" label_width="10" left_delta="0"
|
||||||
max_val="4096" min_val="-3.5" mouse_opaque="true" name="Pos Z"
|
max_val="4096" min_val="-3.5" mouse_opaque="true" name="Pos Z"
|
||||||
text_enabled_color="0, 67, 132, 255" width="87" />
|
text_enabled_color="0, 67, 132, 255" width="87" />
|
||||||
@@ -678,15 +678,15 @@
|
|||||||
mouse_opaque="true" name="label rotation" v_pad="0" width="121">
|
mouse_opaque="true" name="label rotation" v_pad="0" width="121">
|
||||||
Rotation (degrees)
|
Rotation (degrees)
|
||||||
</text>
|
</text>
|
||||||
<spinner bottom_delta="-22" decimal_digits="5" follows="left|top" height="16"
|
<spinner bottom_delta="-22" decimal_digits="2" follows="left|top" height="16"
|
||||||
increment="1" initial_val="0" label="X" label_width="10" left_delta="0"
|
increment="1" initial_val="0" label="X" label_width="10" left_delta="0"
|
||||||
max_val="9999" min_val="-9999" mouse_opaque="true" name="Rot X"
|
max_val="9999" min_val="-9999" mouse_opaque="true" name="Rot X"
|
||||||
text_enabled_color="1, 1, 1, 1" width="87" />
|
text_enabled_color="1, 1, 1, 1" width="87" />
|
||||||
<spinner bottom_delta="-18" decimal_digits="5" follows="left|top" height="16"
|
<spinner bottom_delta="-18" decimal_digits="2" follows="left|top" height="16"
|
||||||
increment="1" initial_val="0" label="Y" label_width="10" left_delta="0"
|
increment="1" initial_val="0" label="Y" label_width="10" left_delta="0"
|
||||||
max_val="9999" min_val="-9999" mouse_opaque="true" name="Rot Y"
|
max_val="9999" min_val="-9999" mouse_opaque="true" name="Rot Y"
|
||||||
text_enabled_color="1, 1, 1, 1" width="87" />
|
text_enabled_color="1, 1, 1, 1" width="87" />
|
||||||
<spinner bottom_delta="-18" decimal_digits="5" follows="left|top" height="16"
|
<spinner bottom_delta="-18" decimal_digits="2" follows="left|top" height="16"
|
||||||
increment="1" initial_val="0" label="Z" label_width="10" left_delta="0"
|
increment="1" initial_val="0" label="Z" label_width="10" left_delta="0"
|
||||||
max_val="9999" min_val="-9999" mouse_opaque="true" name="Rot Z"
|
max_val="9999" min_val="-9999" mouse_opaque="true" name="Rot Z"
|
||||||
text_enabled_color="1, 1, 1, 1" width="87" />
|
text_enabled_color="1, 1, 1, 1" width="87" />
|
||||||
@@ -887,11 +887,11 @@
|
|||||||
Hole Size
|
Hole Size
|
||||||
</text>
|
</text>
|
||||||
<spinner bottom_delta="-20" decimal_digits="2" follows="left|top" height="16"
|
<spinner bottom_delta="-20" decimal_digits="2" follows="left|top" height="16"
|
||||||
increment="0.025" initial_val="0" label="X" label_width="10" left="121"
|
increment="0.05" initial_val="0" label="X" label_width="10" left="121"
|
||||||
max_val="1" min_val="-1" mouse_opaque="true" name="Taper Scale X"
|
max_val="1" min_val="-1" mouse_opaque="true" name="Taper Scale X"
|
||||||
width="68" />
|
width="68" />
|
||||||
<spinner bottom_delta="0" decimal_digits="2" follows="left|top" height="16"
|
<spinner bottom_delta="0" decimal_digits="2" follows="left|top" height="16"
|
||||||
increment="0.025" initial_val="0" label="Y" label_width="10" left_delta="73"
|
increment="0.05" initial_val="0" label="Y" label_width="10" left_delta="73"
|
||||||
max_val="1" min_val="-1" mouse_opaque="true" name="Taper Scale Y"
|
max_val="1" min_val="-1" mouse_opaque="true" name="Taper Scale Y"
|
||||||
width="68" />
|
width="68" />
|
||||||
<text bg_visible="false" border_drop_shadow_visible="false" border_visible="false"
|
<text bg_visible="false" border_drop_shadow_visible="false" border_visible="false"
|
||||||
@@ -901,10 +901,10 @@
|
|||||||
Top Shear
|
Top Shear
|
||||||
</text>
|
</text>
|
||||||
<spinner bottom_delta="-20" decimal_digits="2" follows="left|top" height="16"
|
<spinner bottom_delta="-20" decimal_digits="2" follows="left|top" height="16"
|
||||||
increment="0.025" initial_val="0" label="X" label_width="10" left="121"
|
increment="0.05" initial_val="0" label="X" label_width="10" left="121"
|
||||||
max_val="0.5" min_val="-0.5" mouse_opaque="true" name="Shear X" width="68" />
|
max_val="0.5" min_val="-0.5" mouse_opaque="true" name="Shear X" width="68" />
|
||||||
<spinner bottom_delta="0" decimal_digits="2" follows="left|top" height="16"
|
<spinner bottom_delta="0" decimal_digits="2" follows="left|top" height="16"
|
||||||
increment="0.025" initial_val="0" label="Y" label_width="10" left_delta="73"
|
increment="0.05" initial_val="0" label="Y" label_width="10" left_delta="73"
|
||||||
max_val="0.5" min_val="-0.5" mouse_opaque="true" name="Shear Y" width="68" />
|
max_val="0.5" min_val="-0.5" mouse_opaque="true" name="Shear Y" width="68" />
|
||||||
<text bg_visible="false" border_drop_shadow_visible="false" border_visible="false"
|
<text bg_visible="false" border_drop_shadow_visible="false" border_visible="false"
|
||||||
bottom_delta="-14" drop_shadow_visible="true" follows="left|top"
|
bottom_delta="-14" drop_shadow_visible="true" follows="left|top"
|
||||||
@@ -1029,7 +1029,7 @@
|
|||||||
name="Flexible1D Checkbox Ctrl"
|
name="Flexible1D Checkbox Ctrl"
|
||||||
tool_tip="Allows object to flex about the Z axis. (Client-side only)"
|
tool_tip="Allows object to flex about the Z axis. (Client-side only)"
|
||||||
width="121" />
|
width="121" />
|
||||||
<spinner bottom_delta="-20" decimal_digits="5" follows="left|top" height="16"
|
<spinner bottom_delta="-20" decimal_digits="0" follows="left|top" height="16"
|
||||||
increment="1" initial_val="2" label="Softness" label_width="55" left="10"
|
increment="1" initial_val="2" label="Softness" label_width="55" left="10"
|
||||||
max_val="3" min_val="0" mouse_opaque="true" name="FlexNumSections"
|
max_val="3" min_val="0" mouse_opaque="true" name="FlexNumSections"
|
||||||
width="118" />
|
width="118" />
|
||||||
@@ -1094,7 +1094,7 @@
|
|||||||
name="light texture control"
|
name="light texture control"
|
||||||
tool_tip="Click to choose a projection image (only has effect with deferred rendering enabled)"
|
tool_tip="Click to choose a projection image (only has effect with deferred rendering enabled)"
|
||||||
width="32" />
|
width="32" />
|
||||||
<spinner bottom_delta="-4" decimal_digits="5" follows="left|top" height="16"
|
<spinner bottom_delta="-4" decimal_digits="3" follows="left|top" height="16"
|
||||||
left="10"
|
left="10"
|
||||||
increment="0.1" initial_val="0.5" label="Intensity" label_width="45"
|
increment="0.1" initial_val="0.5" label="Intensity" label_width="45"
|
||||||
max_val="1" min_val="0" mouse_opaque="true"
|
max_val="1" min_val="0" mouse_opaque="true"
|
||||||
@@ -1106,7 +1106,7 @@
|
|||||||
max_val="3" min_val="0" mouse_opaque="true"
|
max_val="3" min_val="0" mouse_opaque="true"
|
||||||
name="Light FOV"
|
name="Light FOV"
|
||||||
width="118" />
|
width="118" />
|
||||||
<spinner bottom_delta="-20" decimal_digits="5" follows="left|top" height="16"
|
<spinner bottom_delta="-20" decimal_digits="3" follows="left|top" height="16"
|
||||||
left="10"
|
left="10"
|
||||||
increment="0.1" initial_val="5" label="Radius" label_width="45"
|
increment="0.1" initial_val="5" label="Radius" label_width="45"
|
||||||
max_val="20" min_val="0" mouse_opaque="true"
|
max_val="20" min_val="0" mouse_opaque="true"
|
||||||
@@ -1118,7 +1118,7 @@
|
|||||||
max_val="20" min_val="-20" mouse_opaque="true"
|
max_val="20" min_val="-20" mouse_opaque="true"
|
||||||
name="Light Focus"
|
name="Light Focus"
|
||||||
width="118" />
|
width="118" />
|
||||||
<spinner bottom_delta="-20" decimal_digits="5" follows="left|top" height="16"
|
<spinner bottom_delta="-20" decimal_digits="3" follows="left|top" height="16"
|
||||||
left="10"
|
left="10"
|
||||||
increment="0.25" initial_val="1" label="Falloff" label_width="45"
|
increment="0.25" initial_val="1" label="Falloff" label_width="45"
|
||||||
max_val="2" min_val="0" mouse_opaque="true"
|
max_val="2" min_val="0" mouse_opaque="true"
|
||||||
@@ -1161,7 +1161,7 @@
|
|||||||
<spinner
|
<spinner
|
||||||
follows="left|top"
|
follows="left|top"
|
||||||
height="19"
|
height="19"
|
||||||
increment="1"
|
increment="0.1"
|
||||||
initial_value="1"
|
initial_value="1"
|
||||||
label="Gravity"
|
label="Gravity"
|
||||||
label_width="55"
|
label_width="55"
|
||||||
@@ -1412,10 +1412,10 @@
|
|||||||
mouse_opaque="true" name="tex offset" v_pad="0" width="160">
|
mouse_opaque="true" name="tex offset" v_pad="0" width="160">
|
||||||
Offset
|
Offset
|
||||||
</text>
|
</text>
|
||||||
<spinner bottom="-308" decimal_digits="3" follows="left|top" height="16" increment="0.05"
|
<spinner bottom="-308" decimal_digits="4" follows="left|top" height="16" increment="0.05"
|
||||||
initial_val="0" label="Horizontal (U)" label_width="90" left="20"
|
initial_val="0" label="Horizontal (U)" label_width="90" left="20"
|
||||||
max_val="1" min_val="-1" mouse_opaque="true" name="TexOffsetU" width="160" />
|
max_val="1" min_val="-1" mouse_opaque="true" name="TexOffsetU" width="160" />
|
||||||
<spinner bottom_delta="-18" decimal_digits="3" follows="left|top" height="16"
|
<spinner bottom_delta="-18" decimal_digits="4" follows="left|top" height="16"
|
||||||
increment="0.05" initial_val="0" label="Vertical (V)" label_width="90"
|
increment="0.05" initial_val="0" label="Vertical (V)" label_width="90"
|
||||||
left="20" max_val="1" min_val="-1" mouse_opaque="true" name="TexOffsetV"
|
left="20" max_val="1" min_val="-1" mouse_opaque="true" name="TexOffsetV"
|
||||||
width="160" />
|
width="160" />
|
||||||
|
|||||||
Reference in New Issue
Block a user