merge changes for storm-595
commit
414e797ef2
|
|
@ -43,6 +43,7 @@
|
|||
#include "llcombobox.h"
|
||||
#include "llcommandhandler.h"
|
||||
#include "lldirpicker.h"
|
||||
#include "lleventtimer.h"
|
||||
#include "llfeaturemanager.h"
|
||||
#include "llfocusmgr.h"
|
||||
//#include "llfirstuse.h"
|
||||
|
|
@ -73,6 +74,7 @@
|
|||
#include "llviewerwindow.h"
|
||||
#include "llviewermessage.h"
|
||||
#include "llviewershadermgr.h"
|
||||
#include "llviewerthrottle.h"
|
||||
#include "llvotree.h"
|
||||
#include "llvosky.h"
|
||||
|
||||
|
|
@ -109,6 +111,7 @@
|
|||
|
||||
const F32 MAX_USER_FAR_CLIP = 512.f;
|
||||
const F32 MIN_USER_FAR_CLIP = 64.f;
|
||||
const F32 BANDWIDTH_UPDATER_TIMEOUT = 0.5f;
|
||||
|
||||
//control value for middle mouse as talk2push button
|
||||
const static std::string MIDDLE_MOUSE_CV = "MiddleMouse";
|
||||
|
|
@ -1526,10 +1529,56 @@ void LLFloaterPreference::setCacheLocation(const LLStringExplicit& location)
|
|||
cache_location_editor->setToolTip(location);
|
||||
}
|
||||
|
||||
//------------------------------Updater---------------------------------------
|
||||
|
||||
static bool handleBandwidthChanged(const LLSD& newvalue)
|
||||
{
|
||||
gViewerThrottle.setMaxBandwidth((F32) newvalue.asReal());
|
||||
return true;
|
||||
}
|
||||
|
||||
class LLPanelPreference::Updater : public LLEventTimer
|
||||
{
|
||||
|
||||
public:
|
||||
|
||||
typedef boost::function<bool(const LLSD&)> callback_t;
|
||||
|
||||
Updater(callback_t cb, F32 period)
|
||||
:LLEventTimer(period),
|
||||
mCallback(cb)
|
||||
{
|
||||
mEventTimer.stop();
|
||||
}
|
||||
|
||||
virtual ~Updater(){}
|
||||
|
||||
void update(const LLSD& new_value)
|
||||
{
|
||||
mNewValue = new_value;
|
||||
mEventTimer.start();
|
||||
}
|
||||
|
||||
protected:
|
||||
|
||||
BOOL tick()
|
||||
{
|
||||
mCallback(mNewValue);
|
||||
mEventTimer.stop();
|
||||
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
private:
|
||||
|
||||
LLSD mNewValue;
|
||||
callback_t mCallback;
|
||||
};
|
||||
//----------------------------------------------------------------------------
|
||||
static LLRegisterPanelClassWrapper<LLPanelPreference> t_places("panel_preference");
|
||||
LLPanelPreference::LLPanelPreference()
|
||||
: LLPanel()
|
||||
: LLPanel(),
|
||||
mBandWidthUpdater(NULL)
|
||||
{
|
||||
mCommitCallbackRegistrar.add("Pref.setControlFalse", boost::bind(&LLPanelPreference::setControlFalse,this, _2));
|
||||
mCommitCallbackRegistrar.add("Pref.updateMediaAutoPlayCheckbox", boost::bind(&LLPanelPreference::updateMediaAutoPlayCheckbox, this, _1));
|
||||
|
|
@ -1599,10 +1648,24 @@ BOOL LLPanelPreference::postBuild()
|
|||
}
|
||||
}
|
||||
|
||||
//////////////////////PanelSetup ///////////////////
|
||||
if (hasChild("max_bandwidth"))
|
||||
{
|
||||
mBandWidthUpdater = new LLPanelPreference::Updater(boost::bind(&handleBandwidthChanged, _1), BANDWIDTH_UPDATER_TIMEOUT);
|
||||
gSavedSettings.getControl("ThrottleBandwidthKBPS")->getSignal()->connect(boost::bind(&LLPanelPreference::Updater::update, mBandWidthUpdater, _2));
|
||||
}
|
||||
|
||||
apply();
|
||||
return true;
|
||||
}
|
||||
|
||||
LLPanelPreference::~LLPanelPreference()
|
||||
{
|
||||
if (mBandWidthUpdater)
|
||||
{
|
||||
delete mBandWidthUpdater;
|
||||
}
|
||||
}
|
||||
void LLPanelPreference::apply()
|
||||
{
|
||||
// no-op
|
||||
|
|
|
|||
|
|
@ -181,6 +181,8 @@ public:
|
|||
LLPanelPreference();
|
||||
/*virtual*/ BOOL postBuild();
|
||||
|
||||
virtual ~LLPanelPreference();
|
||||
|
||||
virtual void apply();
|
||||
virtual void cancel();
|
||||
void setControlFalse(const LLSD& user_data);
|
||||
|
|
@ -194,6 +196,7 @@ public:
|
|||
// cancel() can restore them.
|
||||
virtual void saveSettings();
|
||||
|
||||
class Updater;
|
||||
private:
|
||||
//for "Only friends and groups can call or IM me"
|
||||
static void showFriendsOnlyWarning(LLUICtrl*, const LLSD&);
|
||||
|
|
@ -205,6 +208,8 @@ private:
|
|||
|
||||
typedef std::map<std::string, LLColor4> string_color_map_t;
|
||||
string_color_map_t mSavedColors;
|
||||
|
||||
Updater* mBandWidthUpdater;
|
||||
};
|
||||
|
||||
class LLPanelPreferenceGraphics : public LLPanelPreference
|
||||
|
|
|
|||
|
|
@ -239,12 +239,6 @@ static bool handleVideoMemoryChanged(const LLSD& newvalue)
|
|||
return true;
|
||||
}
|
||||
|
||||
static bool handleBandwidthChanged(const LLSD& newvalue)
|
||||
{
|
||||
gViewerThrottle.setMaxBandwidth((F32) newvalue.asReal());
|
||||
return true;
|
||||
}
|
||||
|
||||
static bool handleChatFontSizeChanged(const LLSD& newvalue)
|
||||
{
|
||||
if(gConsole)
|
||||
|
|
@ -562,7 +556,6 @@ void settings_setup_listeners()
|
|||
gSavedSettings.getControl("RenderTerrainLODFactor")->getSignal()->connect(boost::bind(&handleTerrainLODChanged, _2));
|
||||
gSavedSettings.getControl("RenderTreeLODFactor")->getSignal()->connect(boost::bind(&handleTreeLODChanged, _2));
|
||||
gSavedSettings.getControl("RenderFlexTimeFactor")->getSignal()->connect(boost::bind(&handleFlexLODChanged, _2));
|
||||
gSavedSettings.getControl("ThrottleBandwidthKBPS")->getSignal()->connect(boost::bind(&handleBandwidthChanged, _2));
|
||||
gSavedSettings.getControl("RenderGamma")->getSignal()->connect(boost::bind(&handleGammaChanged, _2));
|
||||
gSavedSettings.getControl("RenderFogRatio")->getSignal()->connect(boost::bind(&handleFogRatioChanged, _2));
|
||||
gSavedSettings.getControl("RenderMaxPartCount")->getSignal()->connect(boost::bind(&handleMaxPartCountChanged, _2));
|
||||
|
|
|
|||
Loading…
Reference in New Issue