diff options
Diffstat (limited to 'indra/newview/llfloaterlagmeter.cpp')
-rw-r--r-- | indra/newview/llfloaterlagmeter.cpp | 80 |
1 files changed, 42 insertions, 38 deletions
diff --git a/indra/newview/llfloaterlagmeter.cpp b/indra/newview/llfloaterlagmeter.cpp index 3753dcaaa8..a92273521f 100644 --- a/indra/newview/llfloaterlagmeter.cpp +++ b/indra/newview/llfloaterlagmeter.cpp @@ -2,31 +2,25 @@ * @file llfloaterlagmeter.cpp * @brief The "Lag-o-Meter" floater used to tell users what is causing lag. * - * $LicenseInfo:firstyear=2007&license=viewergpl$ - * - * Copyright (c) 2007-2009, Linden Research, Inc. - * + * $LicenseInfo:firstyear=2007&license=viewerlgpl$ * Second Life Viewer Source Code - * The source code in this file ("Source Code") is provided by Linden Lab - * to you under the terms of the GNU General Public License, version 2.0 - * ("GPL"), unless you have obtained a separate licensing agreement - * ("Other License"), formally executed by you and Linden Lab. Terms of - * the GPL can be found in doc/GPL-license.txt in this distribution, or - * online at http://secondlifegrid.net/programs/open_source/licensing/gplv2 + * Copyright (C) 2010, Linden Research, Inc. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; + * version 2.1 of the License only. * - * There are special exceptions to the terms and conditions of the GPL as - * it is applied to this Source Code. View the full text of the exception - * in the file doc/FLOSS-exception.txt in this software distribution, or - * online at - * http://secondlifegrid.net/programs/open_source/licensing/flossexception + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. * - * By copying, modifying or distributing this software, you acknowledge - * that you have read and understood your obligations described above, - * and agree to abide by those obligations. + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA * - * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO - * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, - * COMPLETENESS OR PERFORMANCE. + * Linden Research, Inc., 945 Battery Street, San Francisco, CA 94111 USA * $/LicenseInfo$ */ @@ -64,7 +58,7 @@ BOOL LLFloaterLagMeter::postBuild() setIsChrome(TRUE); // were we shrunk last time? - if (gSavedSettings.getBOOL("LagMeterShrunk")) + if (isShrunk()) { onClickShrink(); } @@ -122,6 +116,7 @@ BOOL LLFloaterLagMeter::postBuild() mStringArgs["[SERVER_FRAME_RATE_WARNING]"] = getString("server_frame_rate_warning_fps"); // childSetAction("minimize", onClickShrink, this); + updateControls(isShrunk()); // if expanded append colon to the labels (EXT-4079) return TRUE; } @@ -130,7 +125,7 @@ LLFloaterLagMeter::~LLFloaterLagMeter() // save shrunk status for next time // gSavedSettings.setBOOL("LagMeterShrunk", mShrunk); // expand so we save the large window rectangle - if (gSavedSettings.getBOOL("LagMeterShrunk")) + if (isShrunk()) { onClickShrink(); } @@ -205,7 +200,7 @@ void LLFloaterLagMeter::determineNetwork() // *FIXME: We can't blame a large ping time on anything in // particular if the frame rate is low, because a low frame - // rate is a sure recipe for crappy ping times right now until + // rate is a sure recipe for bad ping times right now until // the network handlers are de-synched from the rendering. F32 client_frame_time_ms = 1000.0f * LLViewerStats::getInstance()->mFPSStat.getMeanDuration(); @@ -312,17 +307,15 @@ void LLFloaterLagMeter::determineServer() } } - -void LLFloaterLagMeter::onClickShrink() // toggle "LagMeterShrunk" +void LLFloaterLagMeter::updateControls(bool shrink) { // LLFloaterLagMeter * self = (LLFloaterLagMeter*)data; LLButton * button = getChild<LLButton>("minimize"); S32 delta_width = mMaxWidth -mMinWidth; LLRect r = getRect(); - bool shrunk = gSavedSettings.getBOOL("LagMeterShrunk"); - if(shrunk) + if(!shrink) { setTitle(getString("max_title_msg", mStringArgs) ); // make left edge appear to expand @@ -330,9 +323,9 @@ void LLFloaterLagMeter::onClickShrink() // toggle "LagMeterShrunk" setRect(r); reshape(mMaxWidth, getRect().getHeight()); - childSetText("client", getString("client_text_msg", mStringArgs) + ":"); - childSetText("network", getString("network_text_msg",mStringArgs) + ":"); - childSetText("server", getString("server_text_msg", mStringArgs) + ":"); + getChild<LLUICtrl>("client")->setValue(getString("client_text_msg", mStringArgs) + ":"); + getChild<LLUICtrl>("network")->setValue(getString("network_text_msg",mStringArgs) + ":"); + getChild<LLUICtrl>("server")->setValue(getString("server_text_msg", mStringArgs) + ":"); // usually "<<" button->setLabel( getString("smaller_label", mStringArgs) ); @@ -345,9 +338,9 @@ void LLFloaterLagMeter::onClickShrink() // toggle "LagMeterShrunk" setRect(r); reshape(mMinWidth, getRect().getHeight()); - childSetText("client", getString("client_text_msg", mStringArgs) ); - childSetText("network",getString("network_text_msg",mStringArgs) ); - childSetText("server", getString("server_text_msg", mStringArgs) ); + getChild<LLUICtrl>("client")->setValue(getString("client_text_msg", mStringArgs) ); + getChild<LLUICtrl>("network")->setValue(getString("network_text_msg",mStringArgs) ); + getChild<LLUICtrl>("server")->setValue(getString("server_text_msg", mStringArgs) ); // usually ">>" button->setLabel( getString("bigger_label", mStringArgs) ); @@ -357,16 +350,27 @@ void LLFloaterLagMeter::onClickShrink() // toggle "LagMeterShrunk" // self->mClientText->setVisible(self->mShrunk); // self->mClientCause->setVisible(self->mShrunk); -// self->childSetVisible("client_help", self->mShrunk); +// self->getChildView("client_help")->setVisible( self->mShrunk); // self->mNetworkText->setVisible(self->mShrunk); // self->mNetworkCause->setVisible(self->mShrunk); -// self->childSetVisible("network_help", self->mShrunk); +// self->getChildView("network_help")->setVisible( self->mShrunk); // self->mServerText->setVisible(self->mShrunk); // self->mServerCause->setVisible(self->mShrunk); -// self->childSetVisible("server_help", self->mShrunk); +// self->getChildView("server_help")->setVisible( self->mShrunk); // self->mShrunk = !self->mShrunk; - gSavedSettings.setBOOL("LagMeterShrunk", !gSavedSettings.getBOOL("LagMeterShrunk")); +} + +BOOL LLFloaterLagMeter::isShrunk() +{ + return gSavedSettings.getBOOL("LagMeterShrunk"); +} + +void LLFloaterLagMeter::onClickShrink() // toggle "LagMeterShrunk" +{ + bool shrunk = isShrunk(); + updateControls(!shrunk); + gSavedSettings.setBOOL("LagMeterShrunk", !shrunk); } |