From d9dc4c0bca4ba755197934d275ecaf7df37baa75 Mon Sep 17 00:00:00 2001 From: Cinders Date: Wed, 21 Aug 2013 15:34:31 -0600 Subject: [PATCH] Add an enable check for the Move Lock menu item and toolbar button Rename *Phantom function names to *MoveLock for clarity Remove Move Lock preference from the floater as it's exposed elsewhere --- indra/newview/app_settings/commands.xml | 5 +++-- indra/newview/llviewermenu.cpp | 22 ++++++++++++++----- .../xui/de/panel_preferences_firestorm.xml | 1 - .../skins/default/xui/en/menu_viewer.xml | 6 +++-- .../xui/en/panel_preferences_firestorm.xml | 11 ---------- .../xui/pl/panel_preferences_firestorm.xml | 1 - 6 files changed, 24 insertions(+), 22 deletions(-) diff --git a/indra/newview/app_settings/commands.xml b/indra/newview/app_settings/commands.xml index 3f4647b2eb..914de68d82 100755 --- a/indra/newview/app_settings/commands.xml +++ b/indra/newview/app_settings/commands.xml @@ -491,7 +491,8 @@ icon="move_lock" label_ref="Command_Move_Lock_Label" tooltip_ref="Command_Move_Lock_Tooltip" - execute_function="Self.togglePhantom" - is_running_function="Self.getPhantom" + execute_function="Self.ToggleMoveLock" + is_running_function="Self.GetMoveLock" + is_enabled_function="Self.EnableMoveLock" /> diff --git a/indra/newview/llviewermenu.cpp b/indra/newview/llviewermenu.cpp index a758f933cc..37f35b63a7 100755 --- a/indra/newview/llviewermenu.cpp +++ b/indra/newview/llviewermenu.cpp @@ -4117,8 +4117,8 @@ class FSSelfCheckForceSit : public view_listener_t } }; -// Phantom mode -KC -class FSSelfTogglePhantom : public view_listener_t +// Phantom mode -KC & +class FSSelfToggleMoveLock : public view_listener_t { bool handleEvent(const LLSD& userdata) { @@ -4138,7 +4138,7 @@ class FSSelfTogglePhantom : public view_listener_t }; -class FSSelfCheckPhantom : public view_listener_t +class FSSelfCheckMoveLock : public view_listener_t { bool handleEvent(const LLSD& userdata) { @@ -4157,6 +4157,17 @@ class FSSelfCheckPhantom : public view_listener_t } }; +bool enable_move_lock() +{ +#ifdef OPENSIM + // Phantom mode always works on opensim, at least right now. + if (LLGridManager::getInstance()->isInOpenSim()) + return true; +#endif // OPENSIM + return (gSavedSettings.getBOOL("UseLSLBridge") && FSLSLBridge::instance().isBridgeValid()); +} +// + // [SJ - Adding IgnorePrejump in Menu ] class FSSelfToggleIgnorePreJump : public view_listener_t { @@ -10424,8 +10435,9 @@ void initialize_menus() view_listener_t::addMenu(new FSSelfForceSit(), "Self.ForceSit"); //KC enable.add("Self.EnableForceSit", boost::bind(&enable_forcesit_self)); //KC view_listener_t::addMenu(new FSSelfCheckForceSit(), "Self.getForceSit"); //KC - view_listener_t::addMenu(new FSSelfTogglePhantom(), "Self.togglePhantom"); //KC - view_listener_t::addMenu(new FSSelfCheckPhantom(), "Self.getPhantom"); //KC + view_listener_t::addMenu(new FSSelfToggleMoveLock(), "Self.ToggleMoveLock"); //KC + view_listener_t::addMenu(new FSSelfCheckMoveLock(), "Self.GetMoveLock"); //KC + enable.add("Self.EnableMoveLock", boost::bind(&enable_move_lock)); // view_listener_t::addMenu(new FSSelfToggleIgnorePreJump(), "Self.toggleIgnorePreJump"); //SJ view_listener_t::addMenu(new FSSelfCheckIgnorePreJump(), "Self.getIgnorePreJump"); //SJ view_listener_t::addMenu(new LLSelfRemoveAllAttachments(), "Self.RemoveAllAttachments"); diff --git a/indra/newview/skins/default/xui/de/panel_preferences_firestorm.xml b/indra/newview/skins/default/xui/de/panel_preferences_firestorm.xml index f3ec40b24d..5d2b609276 100644 --- a/indra/newview/skins/default/xui/de/panel_preferences_firestorm.xml +++ b/indra/newview/skins/default/xui/de/panel_preferences_firestorm.xml @@ -27,7 +27,6 @@ - diff --git a/indra/newview/skins/default/xui/en/menu_viewer.xml b/indra/newview/skins/default/xui/en/menu_viewer.xml index 298dda223d..8ed2b10c50 100755 --- a/indra/newview/skins/default/xui/en/menu_viewer.xml +++ b/indra/newview/skins/default/xui/en/menu_viewer.xml @@ -178,9 +178,11 @@ shortcut="control|alt|P" name="Move Lock"> + function="Self.GetMoveLock" /> + function="Self.ToggleMoveLock" /> + - diff --git a/indra/newview/skins/default/xui/pl/panel_preferences_firestorm.xml b/indra/newview/skins/default/xui/pl/panel_preferences_firestorm.xml index 4e25612d2b..777128fb47 100644 --- a/indra/newview/skins/default/xui/pl/panel_preferences_firestorm.xml +++ b/indra/newview/skins/default/xui/pl/panel_preferences_firestorm.xml @@ -22,7 +22,6 @@ -