-Sanity checks from snowglobe. ...

-Null terminated a string buffer.
-Mutex locks are expensive.
-Realloc is my friend.
-But leaks are not.
-Nor are unused variables.
-And buffer overruns should get lost.
-bindManual shouldnt return failure if texture's already bound.
-Pulled windlight and classic clouds apart into unique rendertypes.
-'Client or Account' savedsettings stuff is now moar bettar. (and efficient)
-Replaced LLSavedSettingsGlue with something that supports gSavedSettings, gSavedPerAccountSettings, and gCOASavedSettings

-Added 'Enable Classic Clouds' checkbox to ascet performance settings panel
-New cards added to gpu table.
-General cleaning...
-How2spell 'dimensions'?

Via Shyotl

Signed-off-by: Beeks <HgDelirium@gmail.com>
This commit is contained in:
Beeks
2010-10-01 22:51:50 -04:00
parent bbbee73eae
commit 810fff09d6
36 changed files with 345 additions and 230 deletions

View File

@@ -250,11 +250,14 @@ BOOL LLHeadRotMotion::onUpdate(F32 time, U8* joint_mask)
head_rot_local = nlerp(head_slerp_amt, mLastHeadRot, head_rot_local); head_rot_local = nlerp(head_slerp_amt, mLastHeadRot, head_rot_local);
mLastHeadRot = head_rot_local; mLastHeadRot = head_rot_local;
// Set the head rotation. if(mNeckState->getJoint() && mNeckState->getJoint()->getParent()) //Guess this has crashed? Taken from snowglobe -Shyotl
LLQuaternion torsoRotLocal = mNeckState->getJoint()->getParent()->getWorldRotation() * currentInvRootRotWorld; {
head_rot_local = head_rot_local * ~torsoRotLocal; // Set the head rotation.
mNeckState->setRotation( nlerp(NECK_LAG, LLQuaternion::DEFAULT, head_rot_local) ); LLQuaternion torsoRotLocal = mNeckState->getJoint()->getParent()->getWorldRotation() * currentInvRootRotWorld;
mHeadState->setRotation( nlerp(1.f - NECK_LAG, LLQuaternion::DEFAULT, head_rot_local)); head_rot_local = head_rot_local * ~torsoRotLocal;
mNeckState->setRotation( nlerp(NECK_LAG, LLQuaternion::DEFAULT, head_rot_local) );
mHeadState->setRotation( nlerp(1.f - NECK_LAG, LLQuaternion::DEFAULT, head_rot_local));
}
return TRUE; return TRUE;
} }

View File

@@ -48,5 +48,6 @@ std::string llformat(const char *fmt, ...)
vsnprintf(tstr, 1024, fmt, va); /* Flawfinder: ignore */ vsnprintf(tstr, 1024, fmt, va); /* Flawfinder: ignore */
#endif #endif
va_end(va); va_end(va);
tstr[1023] = '\0';
return std::string(tstr); return std::string(tstr);
} }

View File

@@ -435,17 +435,15 @@ S32 LLQueuedThread::processNextRequest()
{ {
lockData(); lockData();
req->setStatus(STATUS_COMPLETE); req->setStatus(STATUS_COMPLETE);
unlockData();
req->finishRequest(true); req->finishRequest(true);
if ((req->getFlags() & FLAG_AUTO_COMPLETE)) if ((req->getFlags() & FLAG_AUTO_COMPLETE))
{ {
lockData();
mRequestHash.erase(req); mRequestHash.erase(req);
req->deleteRequest(); req->deleteRequest();
unlockData();
} }
unlockData();
} }
else else
{ {

View File

@@ -582,10 +582,16 @@ std::string utf8str_removeCRLF(const std::string& utf8str)
} }
const char CR = 13; const char CR = 13;
S32 i = utf8str.find(CR);
if(i == std::string::npos)
return utf8str; //Save us from a reserve call.
std::string out; std::string out;
out.reserve(utf8str.length()); out.reserve(utf8str.length());
const S32 len = (S32)utf8str.length(); const S32 len = (S32)utf8str.length();
for( S32 i = 0; i < len; i++ ) if(i)
out.assign(utf8str,0,i); //Copy previous text to buffer
for( ++i; i < len; i++ )
{ {
if( utf8str[i] != CR ) if( utf8str[i] != CR )
{ {

View File

@@ -139,7 +139,8 @@ BOOL LLImageBase::sSizeOverride = FALSE;
// virtual // virtual
void LLImageBase::deleteData() void LLImageBase::deleteData()
{ {
delete[] mData; if(mData)
free(mData);//delete[] mData;
mData = NULL; mData = NULL;
mDataSize = 0; mDataSize = 0;
} }
@@ -166,14 +167,17 @@ U8* LLImageBase::allocateData(S32 size)
{ {
deleteData(); // virtual deleteData(); // virtual
mBadBufferAllocation = FALSE ; mBadBufferAllocation = FALSE ;
mData = new U8[size]; U8 *data = (U8 *)realloc(mData,sizeof(U8)*size);//new U8[size];
if (!mData) if (!data)
{ {
if(mData)
free(mData);
llwarns << "allocate image data: " << size << llendl; llwarns << "allocate image data: " << size << llendl;
size = 0 ; size = 0 ;
mWidth = mHeight = 0 ; mWidth = mHeight = 0 ;
mBadBufferAllocation = TRUE ; mBadBufferAllocation = TRUE ;
} }
mData = data;
mDataSize = size; mDataSize = size;
} }
@@ -184,21 +188,15 @@ U8* LLImageBase::allocateData(S32 size)
U8* LLImageBase::reallocateData(S32 size) U8* LLImageBase::reallocateData(S32 size)
{ {
LLMemType mt1((LLMemType::EMemType)mMemType); LLMemType mt1((LLMemType::EMemType)mMemType);
U8 *new_datap = new U8[size]; U8 *data = (U8 *)realloc(mData,sizeof(U8)*size);
if (!new_datap) if(data)
{ {
mData = data;
mDataSize = size;
}
else
llwarns << "Out of memory in LLImageBase::reallocateData" << llendl; llwarns << "Out of memory in LLImageBase::reallocateData" << llendl;
return 0; return data;
}
if (mData)
{
S32 bytes = llmin(mDataSize, size);
memcpy(new_datap, mData, bytes); /* Flawfinder: ignore */
delete[] mData;
}
mData = new_datap;
mDataSize = size;
return mData;
} }
const U8* LLImageBase::getData() const const U8* LLImageBase::getData() const
@@ -1507,6 +1505,7 @@ void LLImageFormatted::appendData(U8 *data, S32 size)
S32 newsize = cursize + size; S32 newsize = cursize + size;
reallocateData(newsize); reallocateData(newsize);
memcpy(getData() + cursize, data, size); memcpy(getData() + cursize, data, size);
delete[] data; //Fixing leak from CommentCacheReadResponder
} }
} }
} }

View File

@@ -42,17 +42,16 @@
// LLImagePNG // LLImagePNG
// --------------------------------------------------------------------------- // ---------------------------------------------------------------------------
LLImagePNG::LLImagePNG() LLImagePNG::LLImagePNG()
: LLImageFormatted(IMG_CODEC_PNG), : LLImageFormatted(IMG_CODEC_PNG)
mTmpWriteBuffer(NULL)
{ {
} }
LLImagePNG::~LLImagePNG() LLImagePNG::~LLImagePNG()
{ {
if (mTmpWriteBuffer) /*if (mTmpWriteBuffer)
{ {
delete[] mTmpWriteBuffer; delete[] mTmpWriteBuffer; -Shyotl
} }*/
} }
// Virtual // Virtual
@@ -121,14 +120,29 @@ BOOL LLImagePNG::encode(const LLImageRaw* raw_image, F32 encode_time)
// Image logical size // Image logical size
setSize(raw_image->getWidth(), raw_image->getHeight(), raw_image->getComponents()); setSize(raw_image->getWidth(), raw_image->getHeight(), raw_image->getComponents());
// Temporary buffer to hold the encoded image. Note: the final image
// size should be much smaller due to compression.
if (mTmpWriteBuffer)
{
delete[] mTmpWriteBuffer;
}
U32 bufferSize = getWidth() * getHeight() * getComponents() + 1024; U32 bufferSize = getWidth() * getHeight() * getComponents() + 1024;
U8* mTmpWriteBuffer = new U8[ bufferSize ]; //New implementation
allocateData(bufferSize); //Set to largest possible size.
if(isBufferInvalid()) //Checking
{
setLastError("LLImagePNG::encode failed allocateData");
return FALSE;
}
// Delegate actual encoding work to wrapper
LLPngWrapper pngWrapper;
if (! pngWrapper.writePng(raw_image, getData()))
{
setLastError(pngWrapper.getErrorMessage());
return FALSE;
}
// Resize internal buffer.
if(!reallocateData(pngWrapper.getFinalSize())) //Shrink. Returns NULL on failure.
{
setLastError("LLImagePNG::encode failed reallocateData");
return FALSE;
}
return TRUE;
/*U8* mTmpWriteBuffer = new U8[ bufferSize ];
// Delegate actual encoding work to wrapper // Delegate actual encoding work to wrapper
LLPngWrapper pngWrapper; LLPngWrapper pngWrapper;
@@ -146,6 +160,6 @@ BOOL LLImagePNG::encode(const LLImageRaw* raw_image, F32 encode_time)
delete[] mTmpWriteBuffer; delete[] mTmpWriteBuffer;
return TRUE; return TRUE;*/
} }

View File

@@ -49,7 +49,6 @@ public:
/*virtual*/ BOOL encode(const LLImageRaw* raw_image, F32 encode_time); /*virtual*/ BOOL encode(const LLImageRaw* raw_image, F32 encode_time);
private: private:
U8* mTmpWriteBuffer;
}; };
#endif #endif

View File

@@ -99,7 +99,6 @@ void info_callback(const char* msg, void*)
LLImageJ2COJ::LLImageJ2COJ() : LLImageJ2CImpl() LLImageJ2COJ::LLImageJ2COJ() : LLImageJ2CImpl()
{ {
mRawImagep=NULL;
} }
@@ -331,7 +330,7 @@ BOOL LLImageJ2COJ::encodeImpl(LLImageJ2C &base, const LLImageRaw &raw_image, con
OPJ_COLOR_SPACE color_space = CLRSPC_SRGB; OPJ_COLOR_SPACE color_space = CLRSPC_SRGB;
opj_image_cmptparm_t cmptparm[MAX_COMPS]; opj_image_cmptparm_t cmptparm[MAX_COMPS];
opj_image_t * image = NULL; opj_image_t * image = NULL;
S32 numcomps = raw_image.getComponents(); S32 numcomps = min(raw_image.getComponents(),MAX_COMPS); //Clamp avoid overrunning buffer -Shyotl
S32 width = raw_image.getWidth(); S32 width = raw_image.getWidth();
S32 height = raw_image.getHeight(); S32 height = raw_image.getHeight();

View File

@@ -51,9 +51,6 @@ protected:
// Divide a by b to the power of 2 and round upwards. // Divide a by b to the power of 2 and round upwards.
return (a + (1 << b) - 1) >> b; return (a + (1 << b) - 1) >> b;
} }
// Temporary variables for in-progress decodes...
LLImageRaw *mRawImagep;
}; };
#endif #endif

View File

@@ -1563,49 +1563,47 @@ void LLImageGL::setNoDelete()
//---------------------------------------------------------------------------- //----------------------------------------------------------------------------
void LLImageGL::updatePickMask(S32 width, S32 height, const U8* data_in) void LLImageGL::updatePickMask(S32 width, S32 height, const U8* data_in)
{ {
if (mFormatType != GL_UNSIGNED_BYTE || delete [] mPickMask; //Always happens regardless.
mFormatPrimary != GL_RGBA)
mPickMask = NULL;
mPickMaskSize = 0;
if (!(mFormatType != GL_UNSIGNED_BYTE ||
mFormatPrimary != GL_RGBA)) //can only generate a pick mask for this sort of texture
{ {
//cannot generate a pick mask for this texture U32 pick_width = width/2;
delete [] mPickMask; U32 pick_height = height/2;
mPickMask = NULL;
mPickMaskSize = 0;
return;
}
U32 pick_width = width/2; mPickMaskSize = llmax(pick_width, (U32) 1) * llmax(pick_height, (U32) 1);
U32 pick_height = height/2;
mPickMaskSize = llmax(pick_width, (U32) 1) * llmax(pick_height, (U32) 1); mPickMaskSize = mPickMaskSize/8 + 1;
mPickMaskSize = mPickMaskSize/8 + 1; mPickMask = new U8[mPickMaskSize];
delete[] mPickMask; memset(mPickMask, 0, sizeof(U8) * mPickMaskSize);
mPickMask = new U8[mPickMaskSize];
memset(mPickMask, 0, sizeof(U8) * mPickMaskSize); U32 pick_bit = 0;
U32 pick_bit = 0; for (S32 y = 0; y < height; y += 2)
for (S32 y = 0; y < height; y += 2)
{
for (S32 x = 0; x < width; x += 2)
{ {
U8 alpha = data_in[(y*width+x)*4+3]; for (S32 x = 0; x < width; x += 2)
if (alpha > 32)
{ {
U32 pick_idx = pick_bit/8; U8 alpha = data_in[(y*width+x)*4+3];
U32 pick_offset = pick_bit%8;
if (pick_idx >= mPickMaskSize) if (alpha > 32)
{ {
llerrs << "WTF?" << llendl; U32 pick_idx = pick_bit/8;
U32 pick_offset = pick_bit%8;
if (pick_idx >= mPickMaskSize)
{
llerrs << "WTF?" << llendl;
}
mPickMask[pick_idx] |= 1 << pick_offset;
} }
mPickMask[pick_idx] |= 1 << pick_offset; ++pick_bit;
} }
++pick_bit;
} }
} }
} }

View File

@@ -293,15 +293,18 @@ bool LLTexUnit::bind(LLRenderTarget* renderTarget, bool bindDepth)
bool LLTexUnit::bindManual(eTextureType type, U32 texture, bool hasMips) bool LLTexUnit::bindManual(eTextureType type, U32 texture, bool hasMips)
{ {
if (mIndex < 0 || mCurrTexture == texture) return false; if (mIndex < 0) return false;
gGL.flush(); if(mCurrTexture != texture)
{
activate(); gGL.flush();
enable(type);
mCurrTexture = texture; activate();
glBindTexture(sGLTextureType[type], texture); enable(type);
mHasMipMaps = hasMips; mCurrTexture = texture;
glBindTexture(sGLTextureType[type], texture);
mHasMipMaps = hasMips;
}
return true; return true;
} }

View File

@@ -217,7 +217,7 @@ void LLVertexBuffer::drawRange(U32 mode, U32 start, U32 end, U32 count, U32 indi
llerrs << "Wrong vertex buffer bound." << llendl; llerrs << "Wrong vertex buffer bound." << llendl;
} }
if (mode > LLRender::NUM_MODES) if (mode >= LLRender::NUM_MODES)
{ {
llerrs << "Invalid draw mode: " << mode << llendl; llerrs << "Invalid draw mode: " << mode << llendl;
return; return;
@@ -247,7 +247,7 @@ void LLVertexBuffer::draw(U32 mode, U32 count, U32 indices_offset) const
llerrs << "Wrong vertex buffer bound." << llendl; llerrs << "Wrong vertex buffer bound." << llendl;
} }
if (mode > LLRender::NUM_MODES) if (mode >= LLRender::NUM_MODES)
{ {
llerrs << "Invalid draw mode: " << mode << llendl; llerrs << "Invalid draw mode: " << mode << llendl;
return; return;
@@ -272,7 +272,7 @@ void LLVertexBuffer::drawArrays(U32 mode, U32 first, U32 count) const
llerrs << "Wrong vertex buffer bound." << llendl; llerrs << "Wrong vertex buffer bound." << llendl;
} }
if (mode > LLRender::NUM_MODES) if (mode >= LLRender::NUM_MODES)
{ {
llerrs << "Invalid draw mode: " << mode << llendl; llerrs << "Invalid draw mode: " << mode << llendl;
return; return;

View File

@@ -517,7 +517,7 @@ void LLScriptExecuteLSL2::callNextQueuedEventHandler(U64 event_register, const L
} }
else else
{ {
llwarns << "Shit, somehow got an event that we're not registered for!" << llendl; llwarns << "Somehow got an event that we're not registered for!" << llendl;
} }
delete eventdata; delete eventdata;
} }

View File

@@ -93,6 +93,7 @@ private:
BOOL mFetchInventoryOnLogin; BOOL mFetchInventoryOnLogin;
BOOL mEnableLLWind; BOOL mEnableLLWind;
BOOL mEnableClouds; BOOL mEnableClouds;
BOOL mEnableClassicClouds;
BOOL mSpeedRez; BOOL mSpeedRez;
U32 mSpeedRezInterval; U32 mSpeedRezInterval;
//Command Line ------------------------------------------------------------------------ //Command Line ------------------------------------------------------------------------
@@ -115,7 +116,6 @@ LLPrefsAscentSysImpl::LLPrefsAscentSysImpl()
childSetCommitCallback("system_folder_check", onCommitCheckBox, this); childSetCommitCallback("system_folder_check", onCommitCheckBox, this);
childSetCommitCallback("show_look_at_check", onCommitCheckBox, this); childSetCommitCallback("show_look_at_check", onCommitCheckBox, this);
childSetCommitCallback("enable_clouds", onCommitCheckBox, this); childSetCommitCallback("enable_clouds", onCommitCheckBox, this);
mEnableClouds = gSavedSettings.getBOOL("CloudsEnabled");
refreshValues(); refreshValues();
refresh(); refresh();
} }
@@ -150,6 +150,11 @@ void LLPrefsAscentSysImpl::onCommitCheckBox(LLUICtrl* ctrl, void* user_data)
bool enabled = self->childGetValue("system_folder_check").asBoolean(); bool enabled = self->childGetValue("system_folder_check").asBoolean();
self->childSetEnabled("temp_in_system_check", enabled); self->childSetEnabled("temp_in_system_check", enabled);
} }
else if (ctrl->getName() == "enable_clouds")
{
bool enabled = self->childGetValue("enable_clouds").asBoolean();
self->childSetEnabled("enable_classic_clouds", enabled);
}
} }
void LLPrefsAscentSysImpl::refreshValues() void LLPrefsAscentSysImpl::refreshValues()
@@ -181,11 +186,8 @@ void LLPrefsAscentSysImpl::refreshValues()
//Performance ------------------------------------------------------------------------- //Performance -------------------------------------------------------------------------
mFetchInventoryOnLogin = gSavedSettings.getBOOL("FetchInventoryOnLogin"); mFetchInventoryOnLogin = gSavedSettings.getBOOL("FetchInventoryOnLogin");
mEnableLLWind = gSavedSettings.getBOOL("WindEnabled"); mEnableLLWind = gSavedSettings.getBOOL("WindEnabled");
if(mEnableClouds != gSavedSettings.getBOOL("CloudsEnabled")) mEnableClouds = gSavedSettings.getBOOL("CloudsEnabled");
{ mEnableClassicClouds = gSavedSettings.getBOOL("SkyUseClassicClouds");
mEnableClouds = gSavedSettings.getBOOL("CloudsEnabled");
LLPipeline::toggleRenderTypeControl((void*)LLPipeline::RENDER_TYPE_CLOUDS);
}
mSpeedRez = gSavedSettings.getBOOL("SpeedRez"); mSpeedRez = gSavedSettings.getBOOL("SpeedRez");
mSpeedRezInterval = gSavedSettings.getU32("SpeedRezInterval"); mSpeedRezInterval = gSavedSettings.getU32("SpeedRezInterval");
@@ -290,6 +292,7 @@ void LLPrefsAscentSysImpl::refresh()
childSetValue("fetch_inventory_on_login_check", mFetchInventoryOnLogin); childSetValue("fetch_inventory_on_login_check", mFetchInventoryOnLogin);
childSetValue("enable_wind", mEnableLLWind); childSetValue("enable_wind", mEnableLLWind);
childSetValue("enable_clouds", mEnableClouds); childSetValue("enable_clouds", mEnableClouds);
childSetValue("enable_classic_clouds", mEnableClassicClouds);
gLLWindEnabled = mEnableLLWind; gLLWindEnabled = mEnableLLWind;
childSetValue("speed_rez_check", mSpeedRez); childSetValue("speed_rez_check", mSpeedRez);
childSetEnabled("speed_rez_interval", mSpeedRez); childSetEnabled("speed_rez_interval", mSpeedRez);
@@ -329,6 +332,7 @@ void LLPrefsAscentSysImpl::cancel()
childSetValue("fetch_inventory_on_login_check", mFetchInventoryOnLogin); childSetValue("fetch_inventory_on_login_check", mFetchInventoryOnLogin);
childSetValue("enable_wind", mEnableLLWind); childSetValue("enable_wind", mEnableLLWind);
childSetValue("enable_clouds", mEnableClouds); childSetValue("enable_clouds", mEnableClouds);
childSetValue("enable_classic_clouds", mEnableClassicClouds);
childSetValue("speed_rez_check", mSpeedRez); childSetValue("speed_rez_check", mSpeedRez);
if (mSpeedRez) if (mSpeedRez)
{ {
@@ -348,11 +352,8 @@ void LLPrefsAscentSysImpl::cancel()
childSetValue("private_look_at_check", mPrivateLookAt); childSetValue("private_look_at_check", mPrivateLookAt);
childSetValue("revoke_perms_on_stand_up_check", mRevokePermsOnStandUp); childSetValue("revoke_perms_on_stand_up_check", mRevokePermsOnStandUp);
if(mEnableClouds != gSavedSettings.getBOOL("CloudsEnabled")) childSetValue("enable_clouds", mEnableClouds);
{ childSetValue("enable_classic_clouds", mEnableClassicClouds);
gSavedSettings.setBOOL("CloudsEnabled", mEnableClouds);
LLPipeline::toggleRenderTypeControl((void*)LLPipeline::RENDER_TYPE_CLOUDS);
}
gLLWindEnabled = mEnableLLWind; gLLWindEnabled = mEnableLLWind;
} }
@@ -460,6 +461,7 @@ void LLPrefsAscentSysImpl::apply()
gSavedSettings.setBOOL("FetchInventoryOnLogin", childGetValue("fetch_inventory_on_login_check")); gSavedSettings.setBOOL("FetchInventoryOnLogin", childGetValue("fetch_inventory_on_login_check"));
gSavedSettings.setBOOL("WindEnabled", childGetValue("enable_wind")); gSavedSettings.setBOOL("WindEnabled", childGetValue("enable_wind"));
gSavedSettings.setBOOL("CloudsEnabled", childGetValue("enable_clouds")); gSavedSettings.setBOOL("CloudsEnabled", childGetValue("enable_clouds"));
gSavedSettings.setBOOL("SkyUseClassicClouds", childGetValue("enable_classic_clouds"));
gSavedSettings.setBOOL("SpeedRez", childGetValue("speed_rez_check")); gSavedSettings.setBOOL("SpeedRez", childGetValue("speed_rez_check"));
gSavedSettings.setU32("SpeedRezInterval", childGetValue("speed_rez_interval").asReal()); gSavedSettings.setU32("SpeedRezInterval", childGetValue("speed_rez_interval").asReal());

View File

@@ -45,7 +45,6 @@
#include "v4color.h" #include "v4color.h"
#include "lluictrlfactory.h" #include "lluictrlfactory.h"
#include "llcombobox.h" #include "llcombobox.h"
#include "llsavedsettingsglue.h"
#include "llwind.h" #include "llwind.h"
#include "llviewernetwork.h" #include "llviewernetwork.h"
#include "pipeline.h" #include "pipeline.h"
@@ -124,8 +123,8 @@ void LLPrefsAscentVanImpl::onCommitColor(LLUICtrl* ctrl, void* user_data)
{ {
llinfos << "Recreating color message for tag update." << llendl; llinfos << "Recreating color message for tag update." << llendl;
LLSavedSettingsGlue::setCOAString("AscentCustomTagLabel", self->childGetValue("custom_tag_label_box")); gCOASavedSettings->setString("AscentCustomTagLabel", self->childGetValue("custom_tag_label_box"));
LLSavedSettingsGlue::setCOAColor4("AscentCustomTagColor", self->childGetValue("custom_tag_color_swatch")); gCOASavedSettings->setColor4("AscentCustomTagColor", self->childGetValue("custom_tag_color_swatch"));
gAgent.sendAgentSetAppearance(); gAgent.sendAgentSetAppearance();
gAgent.resetClientTag(); gAgent.resetClientTag();
} }
@@ -182,7 +181,7 @@ void LLPrefsAscentVanImpl::onCommitCheckBox(LLUICtrl* ctrl, void* user_data)
} }
BOOL showCustomOptions; BOOL showCustomOptions;
showCustomOptions = LLSavedSettingsGlue::getCOABOOL("AscentUseCustomTag"); showCustomOptions = gCOASavedSettings->getBOOL("AscentUseCustomTag");
self->childSetValue("customize_own_tag_check", showCustomOptions); self->childSetValue("customize_own_tag_check", showCustomOptions);
self->childSetEnabled("custom_tag_label_text", showCustomOptions); self->childSetEnabled("custom_tag_label_text", showCustomOptions);
self->childSetEnabled("custom_tag_label_box", showCustomOptions); self->childSetEnabled("custom_tag_label_box", showCustomOptions);
@@ -205,25 +204,21 @@ void LLPrefsAscentVanImpl::refreshValues()
mShowSelfClientTagColor = gSavedSettings.getBOOL("AscentShowSelfTagColor"); mShowSelfClientTagColor = gSavedSettings.getBOOL("AscentShowSelfTagColor");
mCustomTagOn = gSavedSettings.getBOOL("AscentUseCustomTag"); mCustomTagOn = gSavedSettings.getBOOL("AscentUseCustomTag");
mSelectedClient = LLSavedSettingsGlue::getCOAU32("AscentReportClientIndex"); mSelectedClient = gCOASavedSettings->getU32("AscentReportClientIndex");
mEffectColor = LLSavedSettingsGlue::getCOAColor4("EffectColor"); mEffectColor = gCOASavedSettings->getColor4("EffectColor");
BOOL use_custom = LLSavedSettingsGlue::getCOABOOL("AscentUseCustomTag");
childSetEnabled("custom_tag_label_text", mCustomTagOn);
childSetEnabled("custom_tag_label_box", mCustomTagOn);
childSetEnabled("custom_tag_color_text", mCustomTagOn);
childSetEnabled("custom_tag_color_swatch", mCustomTagOn);
childSetEnabled("custom_tag_label_text", use_custom); mCustomTagLabel = gCOASavedSettings->getString("AscentCustomTagLabel");
childSetEnabled("custom_tag_label_box", use_custom); mCustomTagColor = gCOASavedSettings->getColor4("AscentCustomTagColor");
childSetEnabled("custom_tag_color_text", use_custom); mFriendColor = gCOASavedSettings->getColor4("AscentFriendColor");
childSetEnabled("custom_tag_color_swatch", use_custom); mLindenColor = gCOASavedSettings->getColor4("AscentLindenColor");
mMutedColor = gCOASavedSettings->getColor4("AscentMutedColor");
mCustomTagLabel = LLSavedSettingsGlue::getCOAString("AscentCustomTagLabel"); mEMColor = gCOASavedSettings->getColor4("AscentEstateOwnerColor");
mCustomTagColor = LLSavedSettingsGlue::getCOAColor4("AscentCustomTagColor"); mCustomColor = gCOASavedSettings->getColor4("MoyMiniMapCustomColor");
mFriendColor = LLSavedSettingsGlue::getCOAColor4("AscentFriendColor");
mLindenColor = LLSavedSettingsGlue::getCOAColor4("AscentLindenColor");
mMutedColor = LLSavedSettingsGlue::getCOAColor4("AscentMutedColor");
mEMColor = LLSavedSettingsGlue::getCOAColor4("AscentEstateOwnerColor");
mCustomColor = LLSavedSettingsGlue::getCOAColor4("MoyMiniMapCustomColor");
} }
void LLPrefsAscentVanImpl::refresh() void LLPrefsAscentVanImpl::refresh()
@@ -251,23 +246,23 @@ void LLPrefsAscentVanImpl::refresh()
getChild<LLColorSwatchCtrl>("muted_color_swatch")->set(mMutedColor); getChild<LLColorSwatchCtrl>("muted_color_swatch")->set(mMutedColor);
getChild<LLColorSwatchCtrl>("em_color_swatch")->set(mEMColor); getChild<LLColorSwatchCtrl>("em_color_swatch")->set(mEMColor);
getChild<LLColorSwatchCtrl>("custom_color_swatch")->set(mCustomColor); getChild<LLColorSwatchCtrl>("custom_color_swatch")->set(mCustomColor);
LLSavedSettingsGlue::setCOAColor4("EffectColor", LLColor4::white); gCOASavedSettings->setColor4("EffectColor", LLColor4::white);
LLSavedSettingsGlue::setCOAColor4("EffectColor", mEffectColor); gCOASavedSettings->setColor4("EffectColor", mEffectColor);
LLSavedSettingsGlue::setCOAColor4("AscentFriendColor", LLColor4::white); gCOASavedSettings->setColor4("AscentFriendColor", LLColor4::white);
LLSavedSettingsGlue::setCOAColor4("AscentFriendColor", mFriendColor); gCOASavedSettings->setColor4("AscentFriendColor", mFriendColor);
LLSavedSettingsGlue::setCOAColor4("AscentLindenColor", LLColor4::white); gCOASavedSettings->setColor4("AscentLindenColor", LLColor4::white);
LLSavedSettingsGlue::setCOAColor4("AscentLindenColor", mLindenColor); gCOASavedSettings->setColor4("AscentLindenColor", mLindenColor);
LLSavedSettingsGlue::setCOAColor4("AscentMutedColor", LLColor4::white); gCOASavedSettings->setColor4("AscentMutedColor", LLColor4::white);
LLSavedSettingsGlue::setCOAColor4("AscentMutedColor", mMutedColor); gCOASavedSettings->setColor4("AscentMutedColor", mMutedColor);
LLSavedSettingsGlue::setCOAColor4("AscentEstateOwnerColor", LLColor4::white); gCOASavedSettings->setColor4("AscentEstateOwnerColor", LLColor4::white);
LLSavedSettingsGlue::setCOAColor4("AscentEstateOwnerColor", mEMColor); gCOASavedSettings->setColor4("AscentEstateOwnerColor", mEMColor);
LLSavedSettingsGlue::setCOAColor4("MoyMiniMapCustomColor", LLColor4::white); gCOASavedSettings->setColor4("MoyMiniMapCustomColor", LLColor4::white);
LLSavedSettingsGlue::setCOAColor4("MoyMiniMapCustomColor", mCustomColor); gCOASavedSettings->setColor4("MoyMiniMapCustomColor", mCustomColor);
gAgent.resetClientTag(); gAgent.resetClientTag();
} }
@@ -279,18 +274,18 @@ void LLPrefsAscentVanImpl::cancel()
childSetValue("tp_sound_check", mPlayTPSound); childSetValue("tp_sound_check", mPlayTPSound);
childSetValue("disable_logout_screen_check", mShowLogScreens); childSetValue("disable_logout_screen_check", mShowLogScreens);
LLSavedSettingsGlue::setCOAColor4("EffectColor", LLColor4::white); gCOASavedSettings->setColor4("EffectColor", LLColor4::white);
LLSavedSettingsGlue::setCOAColor4("EffectColor", mEffectColor); gCOASavedSettings->setColor4("EffectColor", mEffectColor);
LLSavedSettingsGlue::setCOAColor4("AscentFriendColor", LLColor4::yellow); gCOASavedSettings->setColor4("AscentFriendColor", LLColor4::yellow);
LLSavedSettingsGlue::setCOAColor4("AscentFriendColor", mFriendColor); gCOASavedSettings->setColor4("AscentFriendColor", mFriendColor);
LLSavedSettingsGlue::setCOAColor4("AscentLindenColor", LLColor4::yellow); gCOASavedSettings->setColor4("AscentLindenColor", LLColor4::yellow);
LLSavedSettingsGlue::setCOAColor4("AscentLindenColor", mLindenColor); gCOASavedSettings->setColor4("AscentLindenColor", mLindenColor);
LLSavedSettingsGlue::setCOAColor4("AscentMutedColor", LLColor4::yellow); gCOASavedSettings->setColor4("AscentMutedColor", LLColor4::yellow);
LLSavedSettingsGlue::setCOAColor4("AscentMutedColor", mMutedColor); gCOASavedSettings->setColor4("AscentMutedColor", mMutedColor);
LLSavedSettingsGlue::setCOAColor4("AscentEstateOwnerColor", LLColor4::yellow); gCOASavedSettings->setColor4("AscentEstateOwnerColor", LLColor4::yellow);
LLSavedSettingsGlue::setCOAColor4("AscentEstateOwnerColor", mEMColor); gCOASavedSettings->setColor4("AscentEstateOwnerColor", mEMColor);
LLSavedSettingsGlue::setCOAColor4("MoyMiniMapCustomColor", LLColor4::yellow); gCOASavedSettings->setColor4("MoyMiniMapCustomColor", LLColor4::yellow);
LLSavedSettingsGlue::setCOAColor4("MoyMiniMapCustomColor", mCustomColor); gCOASavedSettings->setColor4("MoyMiniMapCustomColor", mCustomColor);
} }
void LLPrefsAscentVanImpl::apply() void LLPrefsAscentVanImpl::apply()
@@ -311,8 +306,8 @@ void LLPrefsAscentVanImpl::apply()
if (client_index != mSelectedClient) if (client_index != mSelectedClient)
{ {
client_uuid = combo->getSelectedValue().asString(); client_uuid = combo->getSelectedValue().asString();
LLSavedSettingsGlue::setCOAString("AscentReportClientUUID", client_uuid); gCOASavedSettings->setString("AscentReportClientUUID", client_uuid);
LLSavedSettingsGlue::setCOAU32("AscentReportClientIndex", client_index); gCOASavedSettings->setU32("AscentReportClientIndex", client_index);
LLVOAvatar* avatar = gAgent.getAvatarObject(); LLVOAvatar* avatar = gAgent.getAvatarObject();
if (!avatar) return; if (!avatar) return;
@@ -324,15 +319,15 @@ void LLPrefsAscentVanImpl::apply()
gSavedSettings.setBOOL("AscentShowSelfTag", childGetValue("show_self_tag_check")); gSavedSettings.setBOOL("AscentShowSelfTag", childGetValue("show_self_tag_check"));
gSavedSettings.setBOOL("AscentShowSelfTagColor", childGetValue("show_self_tag_color_check")); gSavedSettings.setBOOL("AscentShowSelfTagColor", childGetValue("show_self_tag_color_check"));
LLSavedSettingsGlue::setCOAColor4("EffectColor", childGetValue("effect_color_swatch")); gCOASavedSettings->setColor4("EffectColor", childGetValue("effect_color_swatch"));
LLSavedSettingsGlue::setCOAColor4("AscentFriendColor", childGetValue("friend_color_swatch")); gCOASavedSettings->setColor4("AscentFriendColor", childGetValue("friend_color_swatch"));
LLSavedSettingsGlue::setCOAColor4("AscentLindenColor", childGetValue("linden_color_swatch")); gCOASavedSettings->setColor4("AscentLindenColor", childGetValue("linden_color_swatch"));
LLSavedSettingsGlue::setCOAColor4("AscentMutedColor", childGetValue("muted_color_swatch")); gCOASavedSettings->setColor4("AscentMutedColor", childGetValue("muted_color_swatch"));
LLSavedSettingsGlue::setCOAColor4("AscentEstateOwnerColor", childGetValue("em_color_swatch")); gCOASavedSettings->setColor4("AscentEstateOwnerColor", childGetValue("em_color_swatch"));
LLSavedSettingsGlue::setCOAColor4("MoyMiniMapCustomColor", childGetValue("custom_color_swatch")); gCOASavedSettings->setColor4("MoyMiniMapCustomColor", childGetValue("custom_color_swatch"));
LLSavedSettingsGlue::setCOABOOL("AscentUseCustomTag", childGetValue("customize_own_tag_check")); gCOASavedSettings->setBOOL("AscentUseCustomTag", childGetValue("customize_own_tag_check"));
LLSavedSettingsGlue::setCOAString("AscentCustomTagLabel", childGetValue("custom_tag_label_box")); gCOASavedSettings->setString("AscentCustomTagLabel", childGetValue("custom_tag_label_box"));
LLSavedSettingsGlue::setCOAColor4("AscentCustomTagColor", childGetValue("custom_tag_color_swatch")); gCOASavedSettings->setColor4("AscentCustomTagColor", childGetValue("custom_tag_color_swatch"));
refreshValues(); refreshValues();
} }

View File

@@ -164,11 +164,15 @@ Matrox .*Matrox.* 0 0
Mesa .*Mesa.* 0 0 Mesa .*Mesa.* 0 0
NVIDIA GT 120 .*NVIDIA.*GeForce.*GT.*12.* 2 1 NVIDIA GT 120 .*NVIDIA.*GeForce.*GT.*12.* 2 1
NVIDIA GT 130 .*NVIDIA.*GeForce.*GT.*13.* 3 1 NVIDIA GT 130 .*NVIDIA.*GeForce.*GT.*13.* 3 1
NVIDIA GT 220 .*NVIDIA.*GeForce.*GT.*22.* 3 1
NVIDIA GTS 250 .*NVIDIA.*GeForce.*GTS.*25.* 3 1 NVIDIA GTS 250 .*NVIDIA.*GeForce.*GTS.*25.* 3 1
NVIDIA GTX 260 .*NVIDIA.*GeForce.*GTX.*26.* 3 1 NVIDIA GTX 260 .*NVIDIA.*GeForce.*GTX.*26.* 3 1
NVIDIA GTX 270 .*NVIDIA.*GeForce.*GTX.*27.* 3 1 NVIDIA GTX 270 .*NVIDIA.*GeForce.*GTX.*27.* 3 1
NVIDIA GTX 280 .*NVIDIA.*GeForce.*GTX.*28.* 3 1 NVIDIA GTX 280 .*NVIDIA.*GeForce.*GTX.*28.* 3 1
NVIDIA GTX 290 .*NVIDIA.*GeForce.*GTX.*29.* 3 1 NVIDIA GTX 290 .*NVIDIA.*GeForce.*GTX.*29.* 3 1
NVIDIA GTX 460 .*NVIDIA.*GeForce.*GTX.*46.* 3 1
NVIDIA GTX 470 .*NVIDIA.*GeForce.*GTX.*47.* 3 1
NVIDIA GTX 480 .*NVIDIA.*GeForce.*GTX.*48.* 3 1
NVIDIA C51 .*NVIDIA.*C51.* 0 1 NVIDIA C51 .*NVIDIA.*C51.* 0 1
NVIDIA G72 .*NVIDIA.*G72.* 1 1 NVIDIA G72 .*NVIDIA.*G72.* 1 1
NVIDIA G73 .*NVIDIA.*G73.* 1 1 NVIDIA G73 .*NVIDIA.*G73.* 1 1

View File

@@ -95,7 +95,6 @@
#include "llnotify.h" #include "llnotify.h"
#include "llprimitive.h" //For new client id method -HgB #include "llprimitive.h" //For new client id method -HgB
#include "llquantize.h" #include "llquantize.h"
#include "llsavedsettingsglue.h" //For Client-Or-Account settings
#include "llsdutil.h" #include "llsdutil.h"
#include "llselectmgr.h" #include "llselectmgr.h"
#include "llsky.h" #include "llsky.h"
@@ -475,7 +474,7 @@ void LLAgent::init()
// LLDebugVarMessageBox::show("Camera Lag", &CAMERA_FOCUS_HALF_LIFE, 0.5f, 0.01f); // LLDebugVarMessageBox::show("Camera Lag", &CAMERA_FOCUS_HALF_LIFE, 0.5f, 0.01f);
mEffectColor = LLSavedSettingsGlue::getCOAColor4("EffectColor"); mEffectColor = gCOASavedSettings->getColor4("EffectColor");
mInitialized = TRUE; mInitialized = TRUE;
} }

View File

@@ -192,7 +192,7 @@ void LLDrawPoolWLSky::renderStars(void) const
void LLDrawPoolWLSky::renderSkyClouds(F32 camHeightLocal) const void LLDrawPoolWLSky::renderSkyClouds(F32 camHeightLocal) const
{ {
if (gPipeline.canUseWindLightShaders() && gPipeline.hasRenderType(LLPipeline::RENDER_TYPE_CLOUDS)) if (gPipeline.canUseWindLightShaders() && gPipeline.hasRenderType(LLPipeline::RENDER_TYPE_WL_CLOUDS))
{ {
LLGLSLShader* shader = LLGLSLShader* shader =
LLPipeline::sUnderWaterRender ? LLPipeline::sUnderWaterRender ?

View File

@@ -44,8 +44,7 @@
#include "llagent.h" #include "llagent.h"
#include "llcombobox.h" #include "llcombobox.h"
#include "llnotify.h" #include "llnotify.h"
#include "llsavedsettingsglue.h"
#include "llviewerimagelist.h" #include "llviewerimagelist.h"
#include "llviewerparcelmgr.h" #include "llviewerparcelmgr.h"
#include "llviewerregion.h" #include "llviewerregion.h"
@@ -81,7 +80,7 @@ LLFloaterAuction::LLFloaterAuction() :
childSetValue("fence_check", childSetValue("fence_check",
LLSD( gSavedSettings.getBOOL("AuctionShowFence") ) ); LLSD( gSavedSettings.getBOOL("AuctionShowFence") ) );
childSetCommitCallback("fence_check", childSetCommitCallback("fence_check",
LLSavedSettingsGlue::setBOOL, (void*)"AuctionShowFence"); onCommitControlSetting(gSavedSettings), (void*)"AuctionShowFence");
childSetAction("snapshot_btn", onClickSnapshot, this); childSetAction("snapshot_btn", onClickSnapshot, this);
childSetAction("ok_btn", onClickOK, this); childSetAction("ok_btn", onClickOK, this);

View File

@@ -31,7 +31,6 @@
#include "llregionflags.h" #include "llregionflags.h"
#include "llfloaterreporter.h" #include "llfloaterreporter.h"
#include "llagent.h" #include "llagent.h"
#include "llsavedsettingsglue.h"
#include "llviewerregion.h" #include "llviewerregion.h"
#include "lltracker.h" #include "lltracker.h"
#include "llviewerstats.h" #include "llviewerstats.h"
@@ -708,22 +707,22 @@ void LLFloaterAvatarList::refreshAvatarList()
//Lindens are always more Linden than your friend, make that take precedence //Lindens are always more Linden than your friend, make that take precedence
if(LLMuteList::getInstance()->isLinden(av_name)) if(LLMuteList::getInstance()->isLinden(av_name))
{ {
element["columns"][LIST_AVATAR_NAME]["color"] = LLSavedSettingsGlue::getCOAColor4("AscentLindenColor").getValue(); element["columns"][LIST_AVATAR_NAME]["color"] = gCOASavedSettings->getColor4("AscentLindenColor").getValue();
} }
//check if they are an estate owner at their current position //check if they are an estate owner at their current position
else if(estate_owner.notNull() && av_id == estate_owner) else if(estate_owner.notNull() && av_id == estate_owner)
{ {
element["columns"][LIST_AVATAR_NAME]["color"] = LLSavedSettingsGlue::getCOAColor4("AscentEstateOwnerColor").getValue(); element["columns"][LIST_AVATAR_NAME]["color"] = gCOASavedSettings->getColor4("AscentEstateOwnerColor").getValue();
} }
//without these dots, SL would suck. //without these dots, SL would suck.
else if(is_agent_friend(av_id)) else if(is_agent_friend(av_id))
{ {
element["columns"][LIST_AVATAR_NAME]["color"] = LLSavedSettingsGlue::getCOAColor4("AscentFriendColor").getValue(); element["columns"][LIST_AVATAR_NAME]["color"] = gCOASavedSettings->getColor4("AscentFriendColor").getValue();
} }
//big fat jerkface who is probably a jerk, display them as such. //big fat jerkface who is probably a jerk, display them as such.
else if(LLMuteList::getInstance()->isMuted(av_id)) else if(LLMuteList::getInstance()->isMuted(av_id))
{ {
element["columns"][LIST_AVATAR_NAME]["color"] = LLSavedSettingsGlue::getCOAColor4("AscentMutedColor").getValue(); element["columns"][LIST_AVATAR_NAME]["color"] = gCOASavedSettings->getColor4("AscentMutedColor").getValue();
} }

View File

@@ -54,7 +54,6 @@
#include "llviewerdisplay.h" #include "llviewerdisplay.h"
#include "llviewercontrol.h" #include "llviewercontrol.h"
#include "llviewerwindow.h" #include "llviewerwindow.h"
#include "llsavedsettingsglue.h"
#include "llwaterparamset.h" #include "llwaterparamset.h"
#include "llwaterparammanager.h" #include "llwaterparammanager.h"

View File

@@ -53,7 +53,6 @@
#include "llviewerdisplay.h" #include "llviewerdisplay.h"
#include "llviewercontrol.h" #include "llviewercontrol.h"
#include "llviewerwindow.h" #include "llviewerwindow.h"
#include "llsavedsettingsglue.h"
#include "llwlparamset.h" #include "llwlparamset.h"
#include "llwlparammanager.h" #include "llwlparammanager.h"
@@ -210,7 +209,7 @@ void LLFloaterWindLight::initCallbacks(void) {
childSetCommitCallback("WLCloudScrollX", onCloudScrollXMoved, NULL); childSetCommitCallback("WLCloudScrollX", onCloudScrollXMoved, NULL);
childSetCommitCallback("WLCloudScrollY", onCloudScrollYMoved, NULL); childSetCommitCallback("WLCloudScrollY", onCloudScrollYMoved, NULL);
childSetCommitCallback("WLDistanceMult", onFloatControlMoved, &param_mgr->mDistanceMult); childSetCommitCallback("WLDistanceMult", onFloatControlMoved, &param_mgr->mDistanceMult);
childSetCommitCallback("DrawClassicClouds", LLSavedSettingsGlue::setBOOL, (void*)"SkyUseClassicClouds"); childSetCommitCallback("DrawClassicClouds", onCommitControlSetting(gSavedSettings), (void*)"SkyUseClassicClouds");
// WL Top // WL Top
childSetAction("WLDayCycleMenuButton", onOpenDayCycle, NULL); childSetAction("WLDayCycleMenuButton", onOpenDayCycle, NULL);

View File

@@ -1663,7 +1663,7 @@ void LLManipTranslate::highlightIntersection(LLVector3 normal,
glClipPlane(GL_CLIP_PLANE0, plane); glClipPlane(GL_CLIP_PLANE0, plane);
BOOL particles = gPipeline.hasRenderType(LLPipeline::RENDER_TYPE_PARTICLES); BOOL particles = gPipeline.hasRenderType(LLPipeline::RENDER_TYPE_PARTICLES);
BOOL clouds = gPipeline.hasRenderType(LLPipeline::RENDER_TYPE_CLOUDS); BOOL clouds = gPipeline.hasRenderType(LLPipeline::RENDER_TYPE_CLASSIC_CLOUDS);
if (particles) if (particles)
{ {
@@ -1671,7 +1671,7 @@ void LLManipTranslate::highlightIntersection(LLVector3 normal,
} }
if (clouds) if (clouds)
{ {
LLPipeline::toggleRenderType(LLPipeline::RENDER_TYPE_CLOUDS); LLPipeline::toggleRenderType(LLPipeline::RENDER_TYPE_CLASSIC_CLOUDS);
} }
//stencil in volumes //stencil in volumes
@@ -1695,7 +1695,7 @@ void LLManipTranslate::highlightIntersection(LLVector3 normal,
} }
if (clouds) if (clouds)
{ {
LLPipeline::toggleRenderType(LLPipeline::RENDER_TYPE_CLOUDS); LLPipeline::toggleRenderType(LLPipeline::RENDER_TYPE_CLASSIC_CLOUDS);
} }
gGL.setColorMask(true, false); gGL.setColorMask(true, false);

View File

@@ -52,7 +52,6 @@
#include "llframetimer.h" #include "llframetimer.h"
#include "lltracker.h" #include "lltracker.h"
#include "llmenugl.h" #include "llmenugl.h"
#include "llsavedsettingsglue.h"
#include "llsurface.h" #include "llsurface.h"
#include "lltextbox.h" #include "lltextbox.h"
#include "lluictrlfactory.h" #include "lluictrlfactory.h"
@@ -361,10 +360,10 @@ void LLNetMap::draw()
// LLColor4 mapcolor = gAvatarMapColor; // LLColor4 mapcolor = gAvatarMapColor;
LLColor4 standard_color = gColors.getColor( "MapAvatar" ); LLColor4 standard_color = gColors.getColor( "MapAvatar" );
LLColor4 friend_color = LLSavedSettingsGlue::getCOAColor4("AscentFriendColor"); LLColor4 friend_color = gCOASavedSettings->getColor4("AscentFriendColor");
LLColor4 em_color = LLSavedSettingsGlue::getCOAColor4("AscentEstateOwnerColor"); LLColor4 em_color = gCOASavedSettings->getColor4("AscentEstateOwnerColor");
LLColor4 linden_color = LLSavedSettingsGlue::getCOAColor4("AscentLindenColor"); LLColor4 linden_color = gCOASavedSettings->getColor4("AscentLindenColor");
LLColor4 muted_color = LLSavedSettingsGlue::getCOAColor4("AscentMutedColor"); LLColor4 muted_color = gCOASavedSettings->getColor4("AscentMutedColor");
std::vector<LLUUID> avatar_ids; std::vector<LLUUID> avatar_ids;
std::vector<LLVector3d> positions; std::vector<LLVector3d> positions;

View File

@@ -39,6 +39,7 @@
#include "llviewercontrol.h" #include "llviewercontrol.h"
/*
void LLSavedSettingsGlue::setBOOL(LLUICtrl* ctrl, void* data) void LLSavedSettingsGlue::setBOOL(LLUICtrl* ctrl, void* data)
{ {
const char* name = (const char*)data; const char* name = (const char*)data;
@@ -73,12 +74,20 @@ void LLSavedSettingsGlue::setString(LLUICtrl* ctrl, void* data)
LLSD value = ctrl->getValue(); LLSD value = ctrl->getValue();
gSavedSettings.setString(name, value.asString()); gSavedSettings.setString(name, value.asString());
} }
*/
/*
//Begin Ascent SavedSettings/PerAccountSettings handling //Begin Ascent SavedSettings/PerAccountSettings handling
//Get //Get
BOOL LLSavedSettingsGlue::getCOABOOL(std::string name) LLControlVariable *gCOASavedSettings->getControl(const std::string &name)
{
if (!gSavedSettings.getBOOL("AscentStoreSettingsPerAccount"))
return gSavedSettings.getControl(name);
else
return gSavedPerAccountSettings.getControl(name);
}
BOOL gCOASavedSettings->getBOOL(const std::string &name)
{ {
if (!gSavedSettings.getBOOL("AscentStoreSettingsPerAccount")) if (!gSavedSettings.getBOOL("AscentStoreSettingsPerAccount"))
return gSavedSettings.getBOOL(name); return gSavedSettings.getBOOL(name);
@@ -86,7 +95,7 @@ BOOL LLSavedSettingsGlue::getCOABOOL(std::string name)
return gSavedPerAccountSettings.getBOOL(name); return gSavedPerAccountSettings.getBOOL(name);
} }
S32 LLSavedSettingsGlue::getCOAS32(std::string name) S32 gCOASavedSettings->getS32(const std::string &name)
{ {
if (!gSavedSettings.getBOOL("AscentStoreSettingsPerAccount")) if (!gSavedSettings.getBOOL("AscentStoreSettingsPerAccount"))
return gSavedSettings.getS32(name); return gSavedSettings.getS32(name);
@@ -94,7 +103,7 @@ S32 LLSavedSettingsGlue::getCOAS32(std::string name)
return gSavedPerAccountSettings.getS32(name); return gSavedPerAccountSettings.getS32(name);
} }
F32 LLSavedSettingsGlue::getCOAF32(std::string name) F32 gCOASavedSettings->getF32(const std::string &name)
{ {
if (!gSavedSettings.getBOOL("AscentStoreSettingsPerAccount")) if (!gSavedSettings.getBOOL("AscentStoreSettingsPerAccount"))
return gSavedSettings.getF32(name); return gSavedSettings.getF32(name);
@@ -102,7 +111,7 @@ F32 LLSavedSettingsGlue::getCOAF32(std::string name)
return gSavedPerAccountSettings.getF32(name); return gSavedPerAccountSettings.getF32(name);
} }
U32 LLSavedSettingsGlue::getCOAU32(std::string name) U32 gCOASavedSettings->getU32(const std::string &name)
{ {
if (!gSavedSettings.getBOOL("AscentStoreSettingsPerAccount")) if (!gSavedSettings.getBOOL("AscentStoreSettingsPerAccount"))
return gSavedSettings.getU32(name); return gSavedSettings.getU32(name);
@@ -110,7 +119,7 @@ U32 LLSavedSettingsGlue::getCOAU32(std::string name)
return gSavedPerAccountSettings.getU32(name); return gSavedPerAccountSettings.getU32(name);
} }
std::string LLSavedSettingsGlue::getCOAString(std::string name) std::string gCOASavedSettings->getString(const std::string &name)
{ {
if (!gSavedSettings.getBOOL("AscentStoreSettingsPerAccount")) if (!gSavedSettings.getBOOL("AscentStoreSettingsPerAccount"))
return gSavedSettings.getString(name); return gSavedSettings.getString(name);
@@ -118,7 +127,7 @@ std::string LLSavedSettingsGlue::getCOAString(std::string name)
return gSavedPerAccountSettings.getString(name); return gSavedPerAccountSettings.getString(name);
} }
LLColor4 LLSavedSettingsGlue::getCOAColor4(std::string name) LLColor4 gCOASavedSettings->getColor4(const std::string &name)
{ {
if (!gSavedSettings.getBOOL("AscentStoreSettingsPerAccount")) if (!gSavedSettings.getBOOL("AscentStoreSettingsPerAccount"))
return gSavedSettings.getColor4(name); return gSavedSettings.getColor4(name);
@@ -128,7 +137,7 @@ LLColor4 LLSavedSettingsGlue::getCOAColor4(std::string name)
//Set //Set
void LLSavedSettingsGlue::setCOABOOL(std::string name, BOOL value) void gCOASavedSettings->setBOOL(const std::string &name, BOOL value)
{ {
if (!gSavedSettings.getBOOL("AscentStoreSettingsPerAccount")) if (!gSavedSettings.getBOOL("AscentStoreSettingsPerAccount"))
gSavedSettings.setBOOL(name, value); gSavedSettings.setBOOL(name, value);
@@ -136,7 +145,7 @@ void LLSavedSettingsGlue::setCOABOOL(std::string name, BOOL value)
gSavedPerAccountSettings.setBOOL(name, value); gSavedPerAccountSettings.setBOOL(name, value);
} }
void LLSavedSettingsGlue::setCOAS32(std::string name, S32 value) void gCOASavedSettings->setS32(const std::string &name, S32 value)
{ {
if (!gSavedSettings.getBOOL("AscentStoreSettingsPerAccount")) if (!gSavedSettings.getBOOL("AscentStoreSettingsPerAccount"))
gSavedSettings.setS32(name, value); gSavedSettings.setS32(name, value);
@@ -144,7 +153,7 @@ void LLSavedSettingsGlue::setCOAS32(std::string name, S32 value)
gSavedPerAccountSettings.setS32(name, value); gSavedPerAccountSettings.setS32(name, value);
} }
void LLSavedSettingsGlue::setCOAF32(std::string name, F32 value) void gCOASavedSettings->setF32(const std::string &name, F32 value)
{ {
if (!gSavedSettings.getBOOL("AscentStoreSettingsPerAccount")) if (!gSavedSettings.getBOOL("AscentStoreSettingsPerAccount"))
gSavedSettings.setF32(name, value); gSavedSettings.setF32(name, value);
@@ -152,7 +161,7 @@ void LLSavedSettingsGlue::setCOAF32(std::string name, F32 value)
gSavedPerAccountSettings.setF32(name, value); gSavedPerAccountSettings.setF32(name, value);
} }
void LLSavedSettingsGlue::setCOAU32(std::string name, U32 value) void gCOASavedSettings->setU32(const std::string &name, U32 value)
{ {
if (!gSavedSettings.getBOOL("AscentStoreSettingsPerAccount")) if (!gSavedSettings.getBOOL("AscentStoreSettingsPerAccount"))
gSavedSettings.setU32(name, value); gSavedSettings.setU32(name, value);
@@ -160,7 +169,7 @@ void LLSavedSettingsGlue::setCOAU32(std::string name, U32 value)
gSavedPerAccountSettings.setU32(name, value); gSavedPerAccountSettings.setU32(name, value);
} }
void LLSavedSettingsGlue::setCOAString(std::string name, std::string value) void gCOASavedSettings->setString(const std::string &name, std::string value)
{ {
if (!gSavedSettings.getBOOL("AscentStoreSettingsPerAccount")) if (!gSavedSettings.getBOOL("AscentStoreSettingsPerAccount"))
gSavedSettings.setString(name, value); gSavedSettings.setString(name, value);
@@ -168,10 +177,10 @@ void LLSavedSettingsGlue::setCOAString(std::string name, std::string value)
gSavedPerAccountSettings.setString(name, value); gSavedPerAccountSettings.setString(name, value);
} }
void LLSavedSettingsGlue::setCOAColor4(std::string name, LLColor4 value) void gCOASavedSettings->setColor4(const std::string &name, LLColor4 value)
{ {
if (!gSavedSettings.getBOOL("AscentStoreSettingsPerAccount")) if (!gSavedSettings.getBOOL("AscentStoreSettingsPerAccount"))
gSavedSettings.setColor4(name, value); gSavedSettings.setColor4(name, value);
else else
gSavedPerAccountSettings.setColor4(name, value); gSavedPerAccountSettings.setColor4(name, value);
} }*/

View File

@@ -41,7 +41,7 @@ class LLUICtrl;
// and assign the control name as a const char* to the userdata. // and assign the control name as a const char* to the userdata.
class LLSavedSettingsGlue class LLSavedSettingsGlue
{ {
public: public:/*
static void setBOOL(LLUICtrl* ctrl, void* name); static void setBOOL(LLUICtrl* ctrl, void* name);
static void setS32(LLUICtrl* ctrl, void* name); static void setS32(LLUICtrl* ctrl, void* name);
static void setF32(LLUICtrl* ctrl, void* name); static void setF32(LLUICtrl* ctrl, void* name);
@@ -49,20 +49,21 @@ public:
static void setString(LLUICtrl* ctrl, void* name); static void setString(LLUICtrl* ctrl, void* name);
//Ascent Client-Or-Account Settings Get //Ascent Client-Or-Account Settings Get
static BOOL getCOABOOL(std::string name); static LLControlVariable *gCOASavedSettings->getControl(const std::string &name);
static S32 getCOAS32(std::string name); static BOOL getCOABOOL(const std::string &name);
static F32 getCOAF32(std::string name); static S32 getCOAS32(const std::string &name);
static U32 getCOAU32(std::string name); static F32 getCOAF32(const std::string &name);
static std::string getCOAString(std::string name); static U32 getCOAU32(const std::string &name);
static LLColor4 getCOAColor4(std::string name); static std::string getCOAString(const std::string &name);
static LLColor4 getCOAColor4(const std::string &name);
//Ascent Client-Or-Account Settings Set //Ascent Client-Or-Account Settings Set
static void setCOABOOL(std::string name, BOOL value); static void setCOABOOL(const std::string &name, BOOL value);
static void setCOAS32(std::string name, S32 value); static void setCOAS32(const std::string &name, S32 value);
static void setCOAF32(std::string name, F32 value); static void setCOAF32(const std::string &name, F32 value);
static void setCOAU32(std::string name, U32 value); static void setCOAU32(const std::string &name, U32 value);
static void setCOAString(std::string name, std::string value); static void setCOAString(const std::string &name, std::string value);
static void setCOAColor4(std::string name, LLColor4 value); static void setCOAColor4(const std::string &name, LLColor4 value);*/
}; };
#endif #endif

View File

@@ -2638,16 +2638,15 @@ bool idle_startup()
/*if (gSavedSettings.getBOOL("BeaconAlwaysOn")) /*if (gSavedSettings.getBOOL("BeaconAlwaysOn"))
{ {
LLFloaterBeacons::showInstance(); DIE LLFloaterBeacons::showInstance(); DIE -HgB
}*/ }*/
if (!gSavedSettings.getBOOL("CloudsEnabled") && !gNoRender)
{
LLPipeline::toggleRenderTypeControl((void*)LLPipeline::RENDER_TYPE_CLOUDS);
}
if (!gNoRender) if (!gNoRender)
{ {
//Set up cloud rendertypes. Passed argument is unused.
handleCloudSettingsChanged(LLSD());
// Move the progress view in front of the UI // Move the progress view in front of the UI
gViewerWindow->moveProgressViewToFront(); gViewerWindow->moveProgressViewToFront();

View File

@@ -1419,7 +1419,7 @@ bool LLTextureFetch::createRequest(const std::string& url, const LLUUID& id, con
} }
else if (w*h*c > 0) else if (w*h*c > 0)
{ {
// If the requester knows the dimentions of the image, // If the requester knows the dimensions of the image,
// this will calculate how much data we need without having to parse the header // this will calculate how much data we need without having to parse the header
desired_size = LLImageJ2C::calcDataSizeJ2C(w, h, c, desired_discard); desired_size = LLImageJ2C::calcDataSizeJ2C(w, h, c, desired_discard);

View File

@@ -71,6 +71,7 @@
#include "llvowlsky.h" #include "llvowlsky.h"
#include "llrender.h" #include "llrender.h"
#include "llfloaterchat.h" #include "llfloaterchat.h"
#include "llviewerobjectlist.h"
#include "emeraldboobutils.h" #include "emeraldboobutils.h"
#ifdef TOGGLE_HACKED_GODLIKE_VIEWER #ifdef TOGGLE_HACKED_GODLIKE_VIEWER
@@ -81,6 +82,7 @@ BOOL gHackGodmode = FALSE;
std::map<std::string, LLControlGroup*> gSettings; std::map<std::string, LLControlGroup*> gSettings;
LLControlGroup gSavedSettings; // saved at end of session LLControlGroup gSavedSettings; // saved at end of session
LLControlGroup gSavedPerAccountSettings; // saved at end of session LLControlGroup gSavedPerAccountSettings; // saved at end of session
LLControlGroup *gCOASavedSettings = &gSavedSettings; //Ascent Client-Or-Account
LLControlGroup gColors; // read-only LLControlGroup gColors; // read-only
LLControlGroup gCrashSettings; // saved at end of session LLControlGroup gCrashSettings; // saved at end of session
@@ -485,7 +487,40 @@ bool handleTranslateChatPrefsChanged(const LLSD& newvalue)
return true; return true;
} }
bool handleCloudSettingsChanged(const LLSD& newvalue)
{
bool bCloudsEnabled = gSavedSettings.getBOOL("CloudsEnabled");
if((bool)LLPipeline::hasRenderTypeControl((void*)LLPipeline::RENDER_TYPE_WL_CLOUDS)!=bCloudsEnabled)
LLPipeline::toggleRenderTypeControl((void*)LLPipeline::RENDER_TYPE_WL_CLOUDS);
if( !gSavedSettings.getBOOL("SkyUseClassicClouds") ) bCloudsEnabled = false;
if((bool)LLPipeline::hasRenderTypeControl((void*)LLPipeline::RENDER_TYPE_CLASSIC_CLOUDS)!=bCloudsEnabled )
LLPipeline::toggleRenderTypeControl((void*)LLPipeline::RENDER_TYPE_CLASSIC_CLOUDS);
return true;
}
bool handleAscentCOAChange(const LLSD& newvalue)
{
gCOASavedSettings = newvalue.asBoolean() ? &gSavedPerAccountSettings : &gSavedSettings;
return true;
}
bool handleAscentSelfTag(const LLSD& newvalue)
{
if(gAgent.getAvatarObject())
gAgent.getAvatarObject()->mClientTag = "";
return true;
}
bool handleAscentGlobalTag(const LLSD& newvalue)
{
S32 object_count = gObjectList.getNumObjects();
for (S32 i = 0; i < object_count; i++)
{
LLViewerObject *objectp = gObjectList.getObject(i);
if (objectp && objectp->isAvatar())
((LLVOAvatar*)objectp)->mClientTag = "";
}
return true;
}
//////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////
void settings_setup_listeners() void settings_setup_listeners()
@@ -625,6 +660,22 @@ void settings_setup_listeners()
gSavedSettings.getControl("AudioLevelMic")->getSignal()->connect(boost::bind(&handleVoiceClientPrefsChanged, _1)); gSavedSettings.getControl("AudioLevelMic")->getSignal()->connect(boost::bind(&handleVoiceClientPrefsChanged, _1));
gSavedSettings.getControl("LipSyncEnabled")->getSignal()->connect(boost::bind(&handleVoiceClientPrefsChanged, _1)); gSavedSettings.getControl("LipSyncEnabled")->getSignal()->connect(boost::bind(&handleVoiceClientPrefsChanged, _1));
gSavedSettings.getControl("TranslateChat")->getSignal()->connect(boost::bind(&handleTranslateChatPrefsChanged, _1)); gSavedSettings.getControl("TranslateChat")->getSignal()->connect(boost::bind(&handleTranslateChatPrefsChanged, _1));
gSavedSettings.getControl("CloudsEnabled")->getSignal()->connect(boost::bind(&handleCloudSettingsChanged, _1));
gSavedSettings.getControl("SkyUseClassicClouds")->getSignal()->connect(boost::bind(&handleCloudSettingsChanged, _1));
gSavedSettings.getControl("AscentStoreSettingsPerAccount")->getSignal()->connect(boost::bind(&handleAscentCOAChange,_1));
gSavedSettings.getControl("AscentShowSelfTag")->getSignal()->connect(boost::bind(&handleAscentSelfTag,_1));
gSavedSettings.getControl("AscentShowSelfTagColor")->getSignal()->connect(boost::bind(&handleAscentSelfTag,_1));
gSavedSettings.getControl("AscentUseTag")->getSignal()->connect(boost::bind(&handleAscentSelfTag,_1));
gCOASavedSettings->getControl("AscentUseCustomTag")->getSignal()->connect(boost::bind(&handleAscentSelfTag,_1));
gCOASavedSettings->getControl("AscentCustomTagColor")->getSignal()->connect(boost::bind(&handleAscentSelfTag,_1));
gCOASavedSettings->getControl("AscentCustomTagLabel")->getSignal()->connect(boost::bind(&handleAscentSelfTag,_1));
gCOASavedSettings->getControl("AscentReportClientUUID")->getSignal()->connect(boost::bind(&handleAscentSelfTag,_1));
gSavedSettings.getControl("AscentShowFriendsTag")->getSignal()->connect(boost::bind(&handleAscentGlobalTag,_1));
gSavedSettings.getControl("AscentShowOthersTag")->getSignal()->connect(boost::bind(&handleAscentGlobalTag,_1));
gSavedSettings.getControl("AscentShowOthersTagColor")->getSignal()->connect(boost::bind(&handleAscentGlobalTag,_1));
gSavedSettings.getControl("AscentUseStatusColors")->getSignal()->connect(boost::bind(&handleAscentGlobalTag,_1));
} }
template <> eControlType get_control_type<U32>(const U32& in, LLSD& out) template <> eControlType get_control_type<U32>(const U32& in, LLSD& out)

View File

@@ -35,6 +35,7 @@
#include <map> #include <map>
#include "llcontrol.h" #include "llcontrol.h"
#include "lluictrl.h"
// Enabled this definition to compile a 'hacked' viewer that // Enabled this definition to compile a 'hacked' viewer that
// allows a hacked godmode to be toggled on and off. // allows a hacked godmode to be toggled on and off.
@@ -54,6 +55,7 @@ void create_graphics_group(LLControlGroup& group);
// saved at end of session // saved at end of session
extern LLControlGroup gSavedSettings; extern LLControlGroup gSavedSettings;
extern LLControlGroup *gCOASavedSettings;
extern LLControlGroup gSavedPerAccountSettings; extern LLControlGroup gSavedPerAccountSettings;
// Read-only // Read-only
@@ -74,6 +76,8 @@ eControlType get_control_type(const T& in, LLSD& out)
return TYPE_COUNT; return TYPE_COUNT;
} }
bool handleCloudSettingsChanged(const LLSD& newvalue);
//! Publish/Subscribe object to interact with LLControlGroups. //! Publish/Subscribe object to interact with LLControlGroups.
//! An LLCachedControl instance to connect to a LLControlVariable //! An LLCachedControl instance to connect to a LLControlVariable
@@ -171,6 +175,12 @@ template <> eControlType get_control_type<LLColor3>(const LLColor3& in, LLSD& ou
template <> eControlType get_control_type<LLColor4U>(const LLColor4U& in, LLSD& out); template <> eControlType get_control_type<LLColor4U>(const LLColor4U& in, LLSD& out);
template <> eControlType get_control_type<LLSD>(const LLSD& in, LLSD& out); template <> eControlType get_control_type<LLSD>(const LLSD& in, LLSD& out);
//A template would be a little awkward to use here.. so.. a preprocessor macro. Alas. onCommitControlSetting(gSavedSettings) etc.
inline void onCommitControlSetting_gSavedSettings(LLUICtrl* ctrl, void* name) {gSavedSettings.setValue((const char*)name,ctrl->getValue());}
inline void onCommitControlSetting_gSavedPerAccountSettings(LLUICtrl* ctrl, void* name) {gSavedPerAccountSettings.setValue((const char*)name,ctrl->getValue());}
inline void onCommitControlSetting_gCOASavedSettings(LLUICtrl* ctrl, void* name) {gCOASavedSettings->setValue((const char*)name,ctrl->getValue());}
#define onCommitControlSetting(controlgroup) onCommitControlSetting_##controlgroup
//#define TEST_CACHED_CONTROL 1 //#define TEST_CACHED_CONTROL 1
#ifdef TEST_CACHED_CONTROL #ifdef TEST_CACHED_CONTROL
void test_cached_control(); void test_cached_control();

View File

@@ -1299,10 +1299,10 @@ void init_debug_rendering_menu(LLMenuGL* menu)
&LLPipeline::toggleRenderTypeControl, NULL, &LLPipeline::toggleRenderTypeControl, NULL,
&LLPipeline::hasRenderTypeControl, &LLPipeline::hasRenderTypeControl,
(void*)LLPipeline::RENDER_TYPE_GRASS, '0', MASK_CONTROL|MASK_ALT|MASK_SHIFT)); (void*)LLPipeline::RENDER_TYPE_GRASS, '0', MASK_CONTROL|MASK_ALT|MASK_SHIFT));
sub_menu->append(new LLMenuItemCheckGL("Clouds", sub_menu->append(new LLMenuItemCheckGL("Clouds", //This clobbers skyuseclassicclouds, but.. big deal.
&LLPipeline::toggleRenderTypeControl, NULL, &LLPipeline::toggleRenderPairedTypeControl, NULL,
&LLPipeline::hasRenderTypeControl, &LLPipeline::hasRenderPairedTypeControl,
(void*)LLPipeline::RENDER_TYPE_CLOUDS, '-', MASK_CONTROL|MASK_ALT| MASK_SHIFT)); (void*)(1<<LLPipeline::RENDER_TYPE_WL_CLOUDS | 1<<LLPipeline::RENDER_TYPE_CLASSIC_CLOUDS), '-', MASK_CONTROL|MASK_ALT| MASK_SHIFT));
sub_menu->append(new LLMenuItemCheckGL("Particles", sub_menu->append(new LLMenuItemCheckGL("Particles",
&LLPipeline::toggleRenderTypeControl, NULL, &LLPipeline::toggleRenderTypeControl, NULL,
&LLPipeline::hasRenderTypeControl, &LLPipeline::hasRenderTypeControl,

View File

@@ -3470,7 +3470,7 @@ void LLVOAvatar::getClientInfo(std::string& client, LLColor4& color, BOOL useCom
std::string uuid_str = getTE(TEX_HEAD_BODYPAINT)->getID().asString(); //UUID of the head texture std::string uuid_str = getTE(TEX_HEAD_BODYPAINT)->getID().asString(); //UUID of the head texture
if (mIsSelf) if (mIsSelf)
{ {
BOOL showCustomTag = LLSavedSettingsGlue::getCOABOOL("AscentUseCustomTag"); BOOL showCustomTag = gCOASavedSettings->getBOOL("AscentUseCustomTag");
if (!gSavedSettings.getBOOL("AscentShowSelfTagColor")) if (!gSavedSettings.getBOOL("AscentShowSelfTagColor"))
{ {
color = gColors.getColor( "AvatarNameColor" ); color = gColors.getColor( "AvatarNameColor" );
@@ -3478,12 +3478,12 @@ void LLVOAvatar::getClientInfo(std::string& client, LLColor4& color, BOOL useCom
} }
else if (showCustomTag) else if (showCustomTag)
{ {
color = LLSavedSettingsGlue::getCOAColor4("AscentCustomTagColor"); color = gCOASavedSettings->getColor4("AscentCustomTagColor");
client = LLSavedSettingsGlue::getCOAString("AscentCustomTagLabel"); client = gCOASavedSettings->getString("AscentCustomTagLabel");
return; return;
} }
else if (gSavedSettings.getBOOL("AscentUseTag")) else if (gSavedSettings.getBOOL("AscentUseTag"))
uuid_str = LLSavedSettingsGlue::getCOAString("AscentReportClientUUID"); uuid_str = gCOASavedSettings->getString("AscentReportClientUUID");
} }
if(getTEImage(TEX_HEAD_BODYPAINT)->getID() == IMG_DEFAULT_AVATAR) if(getTEImage(TEX_HEAD_BODYPAINT)->getID() == IMG_DEFAULT_AVATAR)
{ {
@@ -3722,6 +3722,8 @@ void LLVOAvatar::idleUpdateNameTag(const LLVector3& root_pos_last)
llinfos << "Using Emerald-style client identifier." << llendl; llinfos << "Using Emerald-style client identifier." << llendl;
//The old client identification. Used only if the new method doesn't exist, so that it isn't automatically overwritten. -HgB //The old client identification. Used only if the new method doesn't exist, so that it isn't automatically overwritten. -HgB
getClientInfo(mClientTag,mClientColor); getClientInfo(mClientTag,mClientColor);
if(mClientTag == "")
client = "?"; //prevent console spam..
} }
} }
@@ -3750,22 +3752,22 @@ void LLVOAvatar::idleUpdateNameTag(const LLVector3& root_pos_last)
//Lindens are always more Linden than your friend, make that take precedence //Lindens are always more Linden than your friend, make that take precedence
if(LLMuteList::getInstance()->isLinden(name)) if(LLMuteList::getInstance()->isLinden(name))
{ {
mClientColor = LLSavedSettingsGlue::getCOAColor4("AscentLindenColor").getValue(); mClientColor = gCOASavedSettings->getColor4("AscentLindenColor").getValue();
}*/ }*/
//check if they are an estate owner at their current position //check if they are an estate owner at their current position
else if(estate_owner.notNull() && this->getID() == estate_owner) else if(estate_owner.notNull() && this->getID() == estate_owner)
{ {
mClientColor = LLSavedSettingsGlue::getCOAColor4("AscentEstateOwnerColor").getValue(); mClientColor = gCOASavedSettings->getColor4("AscentEstateOwnerColor").getValue();
} }
//without these dots, SL would suck. //without these dots, SL would suck.
else if (LLAvatarTracker::instance().getBuddyInfo(this->getID()) != NULL) else if (LLAvatarTracker::instance().getBuddyInfo(this->getID()) != NULL)
{ {
mClientColor = LLSavedSettingsGlue::getCOAColor4("AscentFriendColor"); mClientColor = gCOASavedSettings->getColor4("AscentFriendColor");
} }
//big fat jerkface who is probably a jerk, display them as such. //big fat jerkface who is probably a jerk, display them as such.
else if(LLMuteList::getInstance()->isMuted(this->getID())) else if(LLMuteList::getInstance()->isMuted(this->getID()))
{ {
mClientColor = LLSavedSettingsGlue::getCOAColor4("AscentMutedColor").getValue(); mClientColor = gCOASavedSettings->getColor4("AscentMutedColor").getValue();
} }
} }
} }

View File

@@ -80,7 +80,7 @@ BOOL LLVOClouds::isActive() const
BOOL LLVOClouds::idleUpdate(LLAgent &agent, LLWorld &world, const F64 &time) BOOL LLVOClouds::idleUpdate(LLAgent &agent, LLWorld &world, const F64 &time)
{ {
if (!(gPipeline.hasRenderType(LLPipeline::RENDER_TYPE_CLOUDS))) if (!(gPipeline.hasRenderType(LLPipeline::RENDER_TYPE_CLASSIC_CLOUDS)))
{ {
return TRUE; return TRUE;
} }
@@ -110,7 +110,7 @@ LLDrawable* LLVOClouds::createDrawable(LLPipeline *pipeline)
{ {
pipeline->allocDrawable(this); pipeline->allocDrawable(this);
mDrawable->setLit(FALSE); mDrawable->setLit(FALSE);
mDrawable->setRenderType(LLPipeline::RENDER_TYPE_CLOUDS); mDrawable->setRenderType(LLPipeline::RENDER_TYPE_CLASSIC_CLOUDS);
return mDrawable; return mDrawable;
} }
@@ -118,7 +118,7 @@ LLDrawable* LLVOClouds::createDrawable(LLPipeline *pipeline)
BOOL LLVOClouds::updateGeometry(LLDrawable *drawable) BOOL LLVOClouds::updateGeometry(LLDrawable *drawable)
{ {
LLFastTimer ftm(LLFastTimer::FTM_UPDATE_CLOUDS); LLFastTimer ftm(LLFastTimer::FTM_UPDATE_CLOUDS);
if (!(gPipeline.hasRenderType(LLPipeline::RENDER_TYPE_CLOUDS))) if (!(gPipeline.hasRenderType(LLPipeline::RENDER_TYPE_CLASSIC_CLOUDS)))
{ {
return TRUE; return TRUE;
} }
@@ -286,7 +286,7 @@ void LLVOClouds::updateDrawable(BOOL force_damped)
LLCloudPartition::LLCloudPartition() LLCloudPartition::LLCloudPartition()
{ {
mDrawableType = LLPipeline::RENDER_TYPE_CLOUDS; mDrawableType = LLPipeline::RENDER_TYPE_CLASSIC_CLOUDS;
mPartitionType = LLViewerRegion::PARTITION_CLOUD; mPartitionType = LLViewerRegion::PARTITION_CLOUD;
} }

View File

@@ -4471,6 +4471,25 @@ BOOL LLPipeline::toggleRenderTypeControlNegated(void* data)
return !gPipeline.hasRenderType(type); return !gPipeline.hasRenderType(type);
} }
//static
BOOL LLPipeline::hasRenderPairedTypeControl(void* data)
{
U32 typeflags = (U32)(intptr_t)data;
return (gPipeline.mRenderTypeMask & typeflags);
}
//static
void LLPipeline::toggleRenderPairedTypeControl(void *data)
{
U32 typeflags = (U32)(intptr_t)data;
if(typeflags & RENDER_TYPE_WATER)
typeflags |= RENDER_TYPE_VOIDWATER;
if( gPipeline.mRenderTypeMask & typeflags)
gPipeline.mRenderTypeMask &= ~typeflags;
else
gPipeline.mRenderTypeMask |= typeflags;
}
//static //static
void LLPipeline::toggleRenderDebug(void* data) void LLPipeline::toggleRenderDebug(void* data)
{ {
@@ -5752,7 +5771,8 @@ void LLPipeline::renderDeferredLighting()
U32 render_mask = mRenderTypeMask; U32 render_mask = mRenderTypeMask;
mRenderTypeMask = mRenderTypeMask & mRenderTypeMask = mRenderTypeMask &
((1 << LLPipeline::RENDER_TYPE_SKY) | ((1 << LLPipeline::RENDER_TYPE_SKY) |
(1 << LLPipeline::RENDER_TYPE_CLOUDS) | (1 << LLPipeline::RENDER_TYPE_WL_CLOUDS) |
(1 << LLPipeline::RENDER_TYPE_CLASSIC_CLOUDS) |
(1 << LLPipeline::RENDER_TYPE_WL_SKY) | (1 << LLPipeline::RENDER_TYPE_WL_SKY) |
(1 << LLPipeline::RENDER_TYPE_ALPHA) | (1 << LLPipeline::RENDER_TYPE_ALPHA) |
(1 << LLPipeline::RENDER_TYPE_AVATAR) | (1 << LLPipeline::RENDER_TYPE_AVATAR) |
@@ -5909,7 +5929,8 @@ void LLPipeline::generateWaterReflection(LLCamera& camera_in)
updateCull(camera, result); updateCull(camera, result);
stateSort(camera, result); stateSort(camera, result);
mRenderTypeMask = tmp & ((1 << LLPipeline::RENDER_TYPE_SKY) | mRenderTypeMask = tmp & ((1 << LLPipeline::RENDER_TYPE_SKY) |
(1 << LLPipeline::RENDER_TYPE_CLOUDS) | (1 << LLPipeline::RENDER_TYPE_WL_CLOUDS) |
(1 << LLPipeline::RENDER_TYPE_CLASSIC_CLOUDS) |
(1 << LLPipeline::RENDER_TYPE_WL_SKY)); (1 << LLPipeline::RENDER_TYPE_WL_SKY));
renderGeom(camera, TRUE); renderGeom(camera, TRUE);
mRenderTypeMask = tmp; mRenderTypeMask = tmp;
@@ -5921,7 +5942,8 @@ void LLPipeline::generateWaterReflection(LLCamera& camera_in)
(1<<LLPipeline::RENDER_TYPE_VOIDWATER) | (1<<LLPipeline::RENDER_TYPE_VOIDWATER) |
(1<<LLPipeline::RENDER_TYPE_GROUND) | (1<<LLPipeline::RENDER_TYPE_GROUND) |
(1<<LLPipeline::RENDER_TYPE_SKY) | (1<<LLPipeline::RENDER_TYPE_SKY) |
(1<<LLPipeline::RENDER_TYPE_CLOUDS)); (1<<LLPipeline::RENDER_TYPE_WL_CLOUDS) |
(1<<LLPipeline::RENDER_TYPE_CLASSIC_CLOUDS));
if (gSavedSettings.getBOOL("RenderWaterReflections")) if (gSavedSettings.getBOOL("RenderWaterReflections"))
{ //mask out selected geometry based on reflection detail { //mask out selected geometry based on reflection detail
@@ -5974,7 +5996,8 @@ void LLPipeline::generateWaterReflection(LLCamera& camera_in)
{ {
mRenderTypeMask &= ~((1<<LLPipeline::RENDER_TYPE_GROUND) | mRenderTypeMask &= ~((1<<LLPipeline::RENDER_TYPE_GROUND) |
(1<<LLPipeline::RENDER_TYPE_SKY) | (1<<LLPipeline::RENDER_TYPE_SKY) |
(1<<LLPipeline::RENDER_TYPE_CLOUDS) | (1<<LLPipeline::RENDER_TYPE_WL_CLOUDS) |
(1<<LLPipeline::RENDER_TYPE_CLASSIC_CLOUDS) |
(1<<LLPipeline::RENDER_TYPE_WL_SKY)); (1<<LLPipeline::RENDER_TYPE_WL_SKY));
} }
LLViewerCamera::updateFrustumPlanes(camera); LLViewerCamera::updateFrustumPlanes(camera);

View File

@@ -256,6 +256,8 @@ public:
static void toggleRenderDebugFeature(void* data); static void toggleRenderDebugFeature(void* data);
static void toggleRenderTypeControl(void* data); static void toggleRenderTypeControl(void* data);
static BOOL toggleRenderTypeControlNegated(void* data); static BOOL toggleRenderTypeControlNegated(void* data);
static BOOL hasRenderPairedTypeControl(void* data);
static void toggleRenderPairedTypeControl(void* data);
static BOOL toggleRenderDebugControl(void* data); static BOOL toggleRenderDebugControl(void* data);
static BOOL toggleRenderDebugFeatureControl(void* data); static BOOL toggleRenderDebugFeatureControl(void* data);
@@ -323,7 +325,8 @@ public:
RENDER_TYPE_HUD = LLDrawPool::NUM_POOL_TYPES, RENDER_TYPE_HUD = LLDrawPool::NUM_POOL_TYPES,
RENDER_TYPE_VOLUME, RENDER_TYPE_VOLUME,
RENDER_TYPE_PARTICLES, RENDER_TYPE_PARTICLES,
RENDER_TYPE_CLOUDS, RENDER_TYPE_WL_CLOUDS,
RENDER_TYPE_CLASSIC_CLOUDS,
RENDER_TYPE_HUD_PARTICLES RENDER_TYPE_HUD_PARTICLES
}; };

View File

@@ -311,7 +311,12 @@ Use #f for user's first name, #l for last name,
label="Enable Clouds" left="10" label="Enable Clouds" left="10"
mouse_opaque="true" name="enable_clouds" radio_style="false" mouse_opaque="true" name="enable_clouds" radio_style="false"
width="400" /> width="400" />
<check_box bottom_delta="-20" control_name="SpeedRez" enabled="true" <check_box bottom_delta="-20" left_delta="10" control_name="SkyUseClassicClouds" enabled="true"
follows="left|top" font="SansSerifSmall" height="16" initial_value="true"
label="Enable Classic Clouds" left="10"
mouse_opaque="true" name="enable_classic_clouds" radio_style="false"
width="400" />
<check_box bottom_delta="-20" left_delta="-10" control_name="SpeedRez" enabled="true"
follows="left|top" font="SansSerifSmall" height="16" initial_value="false" follows="left|top" font="SansSerifSmall" height="16" initial_value="false"
label="Enable speed-rezzing via draw distance stepping" left="10" label="Enable speed-rezzing via draw distance stepping" left="10"
mouse_opaque="true" name="speed_rez_check" radio_style="false" mouse_opaque="true" name="speed_rez_check" radio_style="false"