summaryrefslogtreecommitdiff
path: root/indra/newview/llmoveview.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'indra/newview/llmoveview.cpp')
-rw-r--r--indra/newview/llmoveview.cpp56
1 files changed, 31 insertions, 25 deletions
diff --git a/indra/newview/llmoveview.cpp b/indra/newview/llmoveview.cpp
index 97e2b5b86e..0f22a50093 100644
--- a/indra/newview/llmoveview.cpp
+++ b/indra/newview/llmoveview.cpp
@@ -41,7 +41,8 @@
// Viewer includes
#include "llagent.h"
-#include "llvoavatarself.h" // to check gAgent.getAvatarObject()->isSitting()
+#include "llagentcamera.h"
+#include "llvoavatarself.h" // to check gAgentAvatarp->isSitting()
#include "llbottomtray.h"
#include "llbutton.h"
#include "llfloaterreg.h"
@@ -77,7 +78,6 @@ LLFloaterMove::LLFloaterMove(const LLSD& key)
mTurnRightButton(NULL),
mMoveUpButton(NULL),
mMoveDownButton(NULL),
- mStopFlyingButton(NULL),
mModeActionsPanel(NULL),
mCurrentMode(MM_WALK)
{
@@ -87,6 +87,7 @@ LLFloaterMove::LLFloaterMove(const LLSD& key)
BOOL LLFloaterMove::postBuild()
{
setIsChrome(TRUE);
+ setTitleVisible(TRUE); // restore title visibility after chrome applying
LLDockableFloater::postBuild();
@@ -112,8 +113,6 @@ BOOL LLFloaterMove::postBuild()
mMoveDownButton->setHeldDownCallback(boost::bind(&LLFloaterMove::moveDown, this));
- mStopFlyingButton = getChild<LLButton>("stop_fly_btn");
-
mModeActionsPanel = getChild<LLPanel>("panel_modes");
LLButton* btn;
@@ -126,11 +125,6 @@ BOOL LLFloaterMove::postBuild()
btn = getChild<LLButton>("mode_fly_btn");
btn->setCommitCallback(boost::bind(&LLFloaterMove::onFlyButtonClick, this));
- btn = getChild<LLButton>("stop_fly_btn");
- btn->setCommitCallback(boost::bind(&LLFloaterMove::onStopFlyingButtonClick, this));
-
-
-
showFlyControls(false);
initModeTooltips();
@@ -304,10 +298,6 @@ void LLFloaterMove::onFlyButtonClick()
{
setMovementMode(MM_FLY);
}
-void LLFloaterMove::onStopFlyingButtonClick()
-{
- setMovementMode(gAgent.getAlwaysRun() ? MM_RUN : MM_WALK);
-}
void LLFloaterMove::setMovementMode(const EMovementMode mode)
{
@@ -342,7 +332,7 @@ void LLFloaterMove::setMovementMode(const EMovementMode mode)
updateButtonsWithMovementMode(mode);
bool bHideModeButtons = MM_FLY == mode
- || (gAgent.getAvatarObject() && gAgent.getAvatarObject()->isSitting());
+ || (isAgentAvatarValid() && gAgentAvatarp->isSitting());
showModeButtons(!bHideModeButtons);
@@ -353,16 +343,13 @@ void LLFloaterMove::updateButtonsWithMovementMode(const EMovementMode newMode)
showFlyControls(MM_FLY == newMode);
setModeTooltip(newMode);
setModeButtonToggleState(newMode);
+ setModeTitle(newMode);
}
void LLFloaterMove::showFlyControls(bool bShow)
{
mMoveUpButton->setVisible(bShow);
mMoveDownButton->setVisible(bShow);
-
- // *TODO: mantipov: mStopFlyingButton from the FloaterMove is not used now.
- // It was not completly removed until functionality is reviewed by LL
- mStopFlyingButton->setVisible(FALSE);
}
void LLFloaterMove::initModeTooltips()
@@ -401,9 +388,9 @@ void LLFloaterMove::initMovementMode()
}
setMovementMode(initMovementMode);
- if (gAgent.getAvatarObject())
+ if (isAgentAvatarValid())
{
- setEnabled(!gAgent.getAvatarObject()->isSitting());
+ setEnabled(!gAgentAvatarp->isSitting());
}
}
@@ -420,11 +407,30 @@ void LLFloaterMove::setModeTooltip(const EMovementMode mode)
}
}
+void LLFloaterMove::setModeTitle(const EMovementMode mode)
+{
+ std::string title;
+ switch(mode)
+ {
+ case MM_WALK:
+ title = getString("walk_title");
+ break;
+ case MM_RUN:
+ title = getString("run_title");
+ break;
+ case MM_FLY:
+ title = getString("fly_title");
+ break;
+ default:
+ // title should be provided for all modes
+ llassert(false);
+ break;
+ }
+ setTitle(title);
+}
+
/**
* Updates position of the floater to be center aligned with Move button.
- *
- * Because Tip floater created as dependent floater this method
- * must be called before "showQuickTips()" to get Tip floater be positioned at the right side of the floater
*/
void LLFloaterMove::updatePosition()
{
@@ -485,7 +491,7 @@ void LLFloaterMove::onOpen(const LLSD& key)
showModeButtons(FALSE);
}
- if (gAgent.getAvatarObject() && gAgent.getAvatarObject()->isSitting())
+ if (isAgentAvatarValid() && gAgentAvatarp->isSitting())
{
setSittingMode(TRUE);
showModeButtons(FALSE);
@@ -588,7 +594,7 @@ BOOL LLPanelStandStopFlying::postBuild()
void LLPanelStandStopFlying::setVisible(BOOL visible)
{
//we dont need to show the panel if these buttons are not activated
- if (gAgent.getCameraMode() == CAMERA_MODE_MOUSELOOK) visible = false;
+ if (gAgentCamera.getCameraMode() == CAMERA_MODE_MOUSELOOK) visible = false;
if (visible)
{