diff --git a/indra/newview/llfloaterbvhpreview.h b/indra/newview/llfloaterbvhpreview.h index 7f31054c0..deae420fb 100644 --- a/indra/newview/llfloaterbvhpreview.h +++ b/indra/newview/llfloaterbvhpreview.h @@ -42,7 +42,7 @@ class LLViewerJointMesh; class LLPreviewAnimation : public LLViewerDynamicTexture { -protected: +public: virtual ~LLPreviewAnimation(); public: diff --git a/indra/newview/llfloatercustomize.cpp b/indra/newview/llfloatercustomize.cpp index 0df0663b9..fdba40110 100644 --- a/indra/newview/llfloatercustomize.cpp +++ b/indra/newview/llfloatercustomize.cpp @@ -253,6 +253,8 @@ void LLFloaterCustomize::editWearable(LLViewerWearable* wearable, bool disable_c //static void LLFloaterCustomize::show() { + if (!gAgentWearables.areWearablesLoaded()) return; + if(!LLFloaterCustomize::instanceExists()) { const BOOL disable_camera_switch = LLWearableType::getDisableCameraSwitch(LLWearableType::WT_SHAPE); diff --git a/indra/newview/llfloaterdaycycle.cpp b/indra/newview/llfloaterdaycycle.cpp index 3cf67821f..33ae1b35f 100644 --- a/indra/newview/llfloaterdaycycle.cpp +++ b/indra/newview/llfloaterdaycycle.cpp @@ -59,6 +59,7 @@ #include "llwlparammanager.h" #include "llfloaterwindlight.h" +#include "rlvactions.h" LLFloaterDayCycle* LLFloaterDayCycle::sDayCycle = NULL; std::map LLFloaterDayCycle::sSliderToKey; @@ -277,6 +278,7 @@ bool LLFloaterDayCycle::isOpen() void LLFloaterDayCycle::show() { + if (RlvActions::hasBehaviour(RLV_BHVR_SETENV)) return; LLFloaterDayCycle* dayCycle = instance(); dayCycle->syncMenu(); syncSliderTrack(); diff --git a/indra/newview/llfloaterenvsettings.cpp b/indra/newview/llfloaterenvsettings.cpp index 57a952244..c28501932 100644 --- a/indra/newview/llfloaterenvsettings.cpp +++ b/indra/newview/llfloaterenvsettings.cpp @@ -50,6 +50,7 @@ #include "llviewerwindow.h" #include "pipeline.h" +#include "rlvactions.h" #include @@ -175,13 +176,12 @@ LLFloaterEnvSettings* LLFloaterEnvSettings::instance() if (!sEnvSettings) { sEnvSettings = new LLFloaterEnvSettings(); - sEnvSettings->open(); - sEnvSettings->setFocus(TRUE); } return sEnvSettings; } void LLFloaterEnvSettings::show() { + if (RlvActions::hasBehaviour(RLV_BHVR_SETENV)) return; LLFloaterEnvSettings* envSettings = instance(); envSettings->syncMenu(); @@ -189,7 +189,10 @@ void LLFloaterEnvSettings::show() //LLUICtrlFactory::getInstance()->buildFloater(envSettings, "floater_env_settings.xml"); //envSettings->initCallbacks(); - envSettings->open(); + if (envSettings->getVisible()) + envSettings->close(); + else + envSettings->open(); } bool LLFloaterEnvSettings::isOpen() diff --git a/indra/newview/llfloaterexploreanimations.cpp b/indra/newview/llfloaterexploreanimations.cpp index 5ffe000b6..41f1c1dfb 100644 --- a/indra/newview/llfloaterexploreanimations.cpp +++ b/indra/newview/llfloaterexploreanimations.cpp @@ -4,6 +4,7 @@ #include "llfloaterexploreanimations.h" #include "lluictrlfactory.h" #include "llscrolllistctrl.h" +#include "llagentdata.h" #include "llfloaterbvhpreview.h" #include "llvoavatar.h" #include "llviewercamera.h" @@ -14,42 +15,51 @@ #include "llselectmgr.h" // -std::map< LLUUID, std::list< LLAnimHistoryItem* > > LLFloaterExploreAnimations::animHistory; -LLFloaterExploreAnimations* LLFloaterExploreAnimations::sInstance; +std::map< LLUUID, std::list< LLAnimHistoryItem > > LLFloaterExploreAnimations::animHistory; - -LLAnimHistoryItem::LLAnimHistoryItem(LLUUID assetid) +LLAnimHistoryItem::LLAnimHistoryItem(LLUUID assetid, bool playing) +: mAssetID(assetid) +, mPlaying(playing) +, mTimeStarted(LLTimer::getElapsedSeconds()) +, mTimeStopped(playing ? 0.f : mTimeStarted) +{} +bool LLAnimHistoryItem::setPlaying(bool playing) { - mAssetID = assetid; + if (mPlaying == playing) return false; + mPlaying = playing; + playing ? mTimeStarted : mTimeStopped = LLTimer::getElapsedSeconds(); + return true; } -LLFloaterExploreAnimations::LLFloaterExploreAnimations(LLUUID avatarid) -: LLFloater() +void LLFloaterExploreAnimations::show() +{ + LLViewerObject* avatar = LLSelectMgr::getInstance()->getSelection()->getPrimaryObject(); + const LLUUID& id(avatar ? avatar->getID() : gAgentID); + if (LLFloaterExploreAnimations* f = getInstance(id)) + if (avatar) f->open(); + else f->close(); + else + (new LLFloaterExploreAnimations(id))->open(); +} + +LLFloaterExploreAnimations::LLFloaterExploreAnimations(const LLUUID avatarid) +: LLInstanceTracker(avatarid) +, mAnimPreview(256, 256) { mLastMouseX = 0; mLastMouseY = 0; - LLFloaterExploreAnimations::sInstance = this; - mAvatarID = avatarid; - mAnimPreview = new LLPreviewAnimation(256, 256); - mAnimPreview->setZoom(2.0f); + mAnimPreview.setZoom(2.0f); LLUICtrlFactory::getInstance()->buildFloater(this, "floater_explore_animations.xml"); } -void LLFloaterExploreAnimations::close(bool app_quitting) -{ - LLFloater::close(app_quitting); -} - LLFloaterExploreAnimations::~LLFloaterExploreAnimations() { - mAnimPreview = NULL; - LLFloaterExploreAnimations::sInstance = NULL; } -BOOL LLFloaterExploreAnimations::postBuild(void) +BOOL LLFloaterExploreAnimations::postBuild() { - childSetCommitCallback("anim_list", onSelectAnimation, this); + getChild("anim_list")->setCommitCallback(boost::bind(&LLFloaterExploreAnimations::onSelectAnimation, this)); LLRect r = getRect(); mPreviewRect.set(r.getWidth() - 266, r.getHeight() - 25, r.getWidth() - 10, r.getHeight() - 256); update(); @@ -59,29 +69,28 @@ BOOL LLFloaterExploreAnimations::postBuild(void) void LLFloaterExploreAnimations::update() { LLScrollListCtrl* list = getChild("anim_list"); - LLUUID selection = list->getSelectedValue().asUUID(); + LLUUID selection = list->getCurrentID(); list->clearRows(); // do this differently probably - std::list history = animHistory[mAvatarID]; - std::list::iterator iter = history.begin(); - std::list::iterator end = history.end(); - for( ; iter != end; ++iter) + std::list history = animHistory[getKey()]; + std::list::iterator end = history.end(); + for(std::list::iterator iter = history.begin(); iter != end; ++iter) { - LLAnimHistoryItem* item = (*iter); + LLAnimHistoryItem item = (*iter); LLSD element; - element["id"] = item->mAssetID; + element["id"] = item.mAssetID; LLSD& name_column = element["columns"][0]; name_column["column"] = "name"; - name_column["value"] = item->mAssetID.asString(); + name_column["value"] = item.mAssetID.asString(); LLSD& info_column = element["columns"][1]; info_column["column"] = "info"; - if(item->mPlaying) + if(item.mPlaying) info_column["value"] = "Playing"; else - info_column["value"] = llformat("%.1f min ago", (LLTimer::getElapsedSeconds() - item->mTimeStopped) / 60.f); + info_column["value"] = llformat("%.1f min ago", (LLTimer::getElapsedSeconds() - item.mTimeStopped) / 60.f); list->addElement(element, ADD_BOTTOM); } @@ -98,7 +107,7 @@ void LLFloaterExploreAnimations::draw() gGL.color3f(1.f, 1.f, 1.f); - gGL.getTexUnit(0)->bind(mAnimPreview); + gGL.getTexUnit(0)->bind(&mAnimPreview); gGL.begin( LLRender::QUADS ); { @@ -115,157 +124,82 @@ void LLFloaterExploreAnimations::draw() gGL.getTexUnit(0)->unbind(LLTexUnit::TT_TEXTURE); - //LLVOAvatar* avatarp = mAnimPreview->getDummyAvatar(); + //LLVOAvatar* avatarp = mAnimPreview.getDummyAvatar(); //if (!avatarp->areAnimationsPaused()) //{ - // mAnimPreview->requestUpdate(); + // mAnimPreview.requestUpdate(); //} } - - - - // static -void LLFloaterExploreAnimations::startAnim(LLUUID avatarid, LLUUID assetid) +void LLFloaterExploreAnimations::processAnim(LLUUID avatarid, LLUUID assetid, bool playing) { std::string asset_str = assetid.asString(); if(asset_str.find("17132261-c061") != std::string::npos) return; // dog1 else if(asset_str.find("fea558cb-8b9b") != std::string::npos) return; // dog2 else if(asset_str.find("50cb5750-0743") != std::string::npos) return; // dog3 - else if(asset_str.find("-dead-") != std::string::npos) return; // emo - LLAnimHistoryItem* item = NULL; - - std::list history = animHistory[avatarid]; - std::list::iterator iter = history.begin(); - std::list::iterator end = history.end(); - for( ; iter != end; ++iter) + std::list& history = animHistory[avatarid]; + std::list::iterator end = history.end(); + for(std::list::iterator iter = history.begin(); iter != end; ++iter) { - if((*iter)->mAssetID == assetid) - { - item = (*iter); - break; - } + LLAnimHistoryItem& item = (*iter); + if (item.mAssetID != assetid) continue; + if (item.setPlaying(playing)) + handleHistoryChange(avatarid); + return; } - if(!item) - { - item = new LLAnimHistoryItem(assetid); - item->mAvatarID = avatarid; - item->mTimeStarted = LLTimer::getElapsedSeconds(); - } - item->mPlaying = true; - history.push_back(item); - animHistory[avatarid] = history; // is this really necessary? - handleHistoryChange(); -} + // Trim it + if (history.size() > 31) + history.resize(31); -// static -void LLFloaterExploreAnimations::stopAnim(LLUUID avatarid, LLUUID assetid) -{ - std::string asset_str = assetid.asString(); - if(asset_str.find("17132261-c061") != std::string::npos) return; // dog1 - else if(asset_str.find("fea558cb-8b9b") != std::string::npos) return; // dog2 - else if(asset_str.find("50cb5750-0743") != std::string::npos) return; // dog3 - else if(asset_str.find("-dead-") != std::string::npos) return; // emo - - LLAnimHistoryItem* item = NULL; - - std::list history = animHistory[avatarid]; - std::list::iterator iter = history.begin(); - std::list::iterator end = history.end(); - for( ; iter != end; ++iter) - { - if((*iter)->mAssetID == assetid) - { - item = (*iter); - break; - } - } - if(!item) - { - item = new LLAnimHistoryItem(assetid); - item->mAvatarID = avatarid; - item->mTimeStarted = LLTimer::getElapsedSeconds(); - history.push_back(item); - } - item->mPlaying = false; - item->mTimeStopped = LLTimer::getElapsedSeconds(); - handleHistoryChange(); + history.push_back(LLAnimHistoryItem(assetid, playing)); + handleHistoryChange(avatarid); } class LLAnimHistoryItemCompare { public: - bool operator() (LLAnimHistoryItem* first, LLAnimHistoryItem* second) + bool operator() (LLAnimHistoryItem first, LLAnimHistoryItem second) { - if(first->mPlaying) + if (first.mPlaying) { - if(second->mPlaying) + if (second.mPlaying) { - return (first->mTimeStarted > second->mTimeStarted); + return (first.mTimeStarted > second.mTimeStarted); } else { return true; } } - else if(second->mPlaying) + else if (second.mPlaying) { return false; } else { - return (first->mTimeStopped > second->mTimeStopped); + return (first.mTimeStopped > second.mTimeStopped); } } }; // static -void LLFloaterExploreAnimations::handleHistoryChange() +void LLFloaterExploreAnimations::handleHistoryChange(LLUUID avatarid) { - std::map< LLUUID, std::list< LLAnimHistoryItem* > >::iterator av_iter = animHistory.begin(); - std::map< LLUUID, std::list< LLAnimHistoryItem* > >::iterator av_end = animHistory.end(); - for( ; av_iter != av_end; ++av_iter) - { - std::list history = (*av_iter).second; - - // Sort it - LLAnimHistoryItemCompare c; - history.sort(c); - - // Remove dupes - history.unique(); - - // Trim it - if(history.size() > 32) - { - history.resize(32); - } - - animHistory[(*av_iter).first] = history; - } + // Sort it + animHistory[avatarid].sort(LLAnimHistoryItemCompare()); // Update floater - if(LLFloaterExploreAnimations::sInstance) - LLFloaterExploreAnimations::sInstance->update(); + if (LLFloaterExploreAnimations* f = getInstance(avatarid)) + f->update(); } - - - - -// static -void LLFloaterExploreAnimations::onSelectAnimation(LLUICtrl* ctrl, void* user_data) +void LLFloaterExploreAnimations::onSelectAnimation() { - LLFloaterExploreAnimations* floater = (LLFloaterExploreAnimations*)user_data; - LLPreviewAnimation* preview = (LLPreviewAnimation*)floater->mAnimPreview; - LLScrollListCtrl* list = floater->getChild("anim_list"); - LLUUID selection = list->getSelectedValue().asUUID(); - - preview->getDummyAvatar()->deactivateAllMotions(); - preview->getDummyAvatar()->startMotion(selection, 0.f); - preview->setZoom(2.0f); + mAnimPreview.getDummyAvatar()->deactivateAllMotions(); + mAnimPreview.getDummyAvatar()->startMotion(getChild("anim_list")->getCurrentID(), 0.f); + mAnimPreview.setZoom(2.0f); } //----------------------------------------------------------------------------- @@ -305,35 +239,35 @@ BOOL LLFloaterExploreAnimations::handleHover(S32 x, S32 y, MASK mask) { MASK local_mask = mask & ~MASK_ALT; - if (mAnimPreview && hasMouseCapture()) + if (hasMouseCapture()) { if (local_mask == MASK_PAN) { // pan here - mAnimPreview->pan((F32)(x - mLastMouseX) * -0.005f, (F32)(y - mLastMouseY) * -0.005f); + mAnimPreview.pan((F32)(x - mLastMouseX) * -0.005f, (F32)(y - mLastMouseY) * -0.005f); } else if (local_mask == MASK_ORBIT) { F32 yaw_radians = (F32)(x - mLastMouseX) * -0.01f; F32 pitch_radians = (F32)(y - mLastMouseY) * 0.02f; - mAnimPreview->rotate(yaw_radians, pitch_radians); + mAnimPreview.rotate(yaw_radians, pitch_radians); } else { F32 yaw_radians = (F32)(x - mLastMouseX) * -0.01f; F32 zoom_amt = (F32)(y - mLastMouseY) * 0.02f; - mAnimPreview->rotate(yaw_radians, 0.f); - mAnimPreview->zoom(zoom_amt); + mAnimPreview.rotate(yaw_radians, 0.f); + mAnimPreview.zoom(zoom_amt); } - mAnimPreview->requestUpdate(); + mAnimPreview.requestUpdate(); LLUI::setMousePositionLocal(this, mLastMouseX, mLastMouseY); } - if (!mPreviewRect.pointInRect(x, y) || !mAnimPreview) + if (!mPreviewRect.pointInRect(x, y)) { return LLFloater::handleHover(x, y, mask); } @@ -358,8 +292,8 @@ BOOL LLFloaterExploreAnimations::handleHover(S32 x, S32 y, MASK mask) //----------------------------------------------------------------------------- BOOL LLFloaterExploreAnimations::handleScrollWheel(S32 x, S32 y, S32 clicks) { - mAnimPreview->zoom((F32)clicks * -0.2f); - mAnimPreview->requestUpdate(); + mAnimPreview.zoom((F32)clicks * -0.2f); + mAnimPreview.requestUpdate(); return TRUE; } diff --git a/indra/newview/llfloaterexploreanimations.h b/indra/newview/llfloaterexploreanimations.h index 383b16e6d..95d97c050 100644 --- a/indra/newview/llfloaterexploreanimations.h +++ b/indra/newview/llfloaterexploreanimations.h @@ -2,16 +2,15 @@ #ifndef LL_LLFLOATEREXPLOREANIMATIONS_H #define LL_LLFLOATEREXPLOREANIMATIONS_H -#include "llfloater.h" #include "llfloaterbvhpreview.h" -#include "llviewerwindow.h" // gViewerWindow +#include "llinstancetracker.h" class LLAnimHistoryItem { public: - LLAnimHistoryItem(LLUUID assetid); + LLAnimHistoryItem(LLUUID assetid = LLUUID(), bool playing = true); + bool setPlaying(bool playing); - LLUUID mAvatarID; LLUUID mAssetID; bool mPlaying; F64 mTimeStarted; @@ -19,25 +18,20 @@ public: }; class LLFloaterExploreAnimations -: public LLFloater +: public LLFloater, public LLInstanceTracker { public: + static void show(); LLFloaterExploreAnimations(LLUUID avatarid); - BOOL postBuild(void); - void close(bool app_quitting); + BOOL postBuild(); void update(); - LLUUID mAvatarID; - LLPointer mAnimPreview; - private: virtual ~LLFloaterExploreAnimations(); - -// static stuff! public: - static void onSelectAnimation(LLUICtrl* ctrl, void* user_data); + void onSelectAnimation(); BOOL handleMouseDown(S32 x, S32 y, MASK mask); BOOL handleMouseUp(S32 x, S32 y, MASK mask); @@ -45,16 +39,17 @@ public: BOOL handleScrollWheel(S32 x, S32 y, S32 clicks); void onMouseCaptureLost(); - static void startAnim(LLUUID avatarid, LLUUID assetid); - static void stopAnim(LLUUID avatarid, LLUUID assetid); +// static stuff! + static void processAnim(LLUUID avatarid, LLUUID assetid, bool playing); - static std::map< LLUUID, std::list< LLAnimHistoryItem* > > animHistory; - static LLFloaterExploreAnimations* sInstance; + static std::map< LLUUID, std::list< LLAnimHistoryItem > > animHistory; private: - static void handleHistoryChange(); + static void handleHistoryChange(LLUUID avatarid); protected: void draw(); + + LLPreviewAnimation mAnimPreview; LLRect mPreviewRect; S32 mLastMouseX; S32 mLastMouseY; diff --git a/indra/newview/llfloaterland.cpp b/indra/newview/llfloaterland.cpp index 7c5801680..4c063e953 100644 --- a/indra/newview/llfloaterland.cpp +++ b/indra/newview/llfloaterland.cpp @@ -882,12 +882,6 @@ void LLPanelLandGeneral::setGroup(const LLUUID& group_id) // static void LLPanelLandGeneral::onClickBuyLand(void* data) { -// [RLVa:KB] - Checked: 2009-07-04 (RLVa-1.0.0a) - if ( (rlv_handler_t::isEnabled()) && (gRlvHandler.hasBehaviour(RLV_BHVR_SHOWLOC)) ) - { - return; - } -// [/RLVa:KB] BOOL* for_group = (BOOL*)data; LLViewerParcelMgr::getInstance()->startBuyLand(*for_group); } diff --git a/indra/newview/llfloaterreporter.cpp b/indra/newview/llfloaterreporter.cpp index d41cbf17a..31cf83c4a 100644 --- a/indra/newview/llfloaterreporter.cpp +++ b/indra/newview/llfloaterreporter.cpp @@ -43,6 +43,7 @@ #include "llfontgl.h" #include "llimagej2c.h" #include "llinventory.h" +#include "llmenugl.h" #include "llnotificationsutil.h" #include "llstring.h" #include "llsys.h" @@ -462,6 +463,8 @@ void LLFloaterReporter::showFromMenu(EReportType report_type) return; } + // Prevent menu from appearing in screen shot. + LLMenuGL::sMenuContainer->hideMenus(); LLFloaterReporter* f = getInstance(); if (f) { diff --git a/indra/newview/llfloaterwater.cpp b/indra/newview/llfloaterwater.cpp index f444a7cbc..43507d0fd 100644 --- a/indra/newview/llfloaterwater.cpp +++ b/indra/newview/llfloaterwater.cpp @@ -48,6 +48,7 @@ #include "llagent.h" #include "llwaterparammanager.h" #include "llwaterparamset.h" +#include "rlvactions.h" #undef max // Fixes a Windows compiler error @@ -284,6 +285,7 @@ LLFloaterWater* LLFloaterWater::instance() } void LLFloaterWater::show() { + if (RlvActions::hasBehaviour(RLV_BHVR_SETENV)) return; if (!sWaterMenu) { LLFloaterWater* water = instance(); diff --git a/indra/newview/llpanelland.cpp b/indra/newview/llpanelland.cpp index 19d1a8d82..526ade3e9 100644 --- a/indra/newview/llpanelland.cpp +++ b/indra/newview/llpanelland.cpp @@ -52,10 +52,6 @@ #include "hippogridmanager.h" -// [RLVa:KB] -#include "rlvhandler.h" -// [/RLVa:KB] - LLPanelLandSelectObserver* LLPanelLandInfo::sObserver = NULL; LLPanelLandInfo* LLPanelLandInfo::sInstance = NULL; @@ -239,12 +235,6 @@ void LLPanelLandInfo::refresh() //static void LLPanelLandInfo::onClickClaim(void*) { -// [RLVa:KB] - Checked: 2009-07-04 (RLVa-1.0.0a) - if (gRlvHandler.hasBehaviour(RLV_BHVR_SHOWLOC)) - { - return; - } -// [/RLVa:KB] LLViewerParcelMgr::getInstance()->startBuyLand(); } diff --git a/indra/newview/llstatusbar.cpp b/indra/newview/llstatusbar.cpp index 602aa594b..d15900993 100644 --- a/indra/newview/llstatusbar.cpp +++ b/indra/newview/llstatusbar.cpp @@ -923,13 +923,6 @@ static void onClickScripts(void*) static void onClickBuyLand(void*) { -// [RLVa:KB] - Checked: 2009-07-04 (RLVa-1.0.0a) - if (RlvActions::isRlvEnabled() && RlvActions::hasBehaviour(RLV_BHVR_SHOWLOC)) - { - return; - } -// [/RLVa:KB] - LLViewerParcelMgr::getInstance()->selectParcelAt(gAgent.getPositionGlobal()); LLViewerParcelMgr::getInstance()->startBuyLand(); } diff --git a/indra/newview/lltoolbar.cpp b/indra/newview/lltoolbar.cpp index 985d27f15..5354bd0da 100644 --- a/indra/newview/lltoolbar.cpp +++ b/indra/newview/lltoolbar.cpp @@ -495,10 +495,7 @@ void LLToolBar::onClickChat(void* user_data) // static void LLToolBar::onClickAppearance(void*) { - if (gAgentWearables.areWearablesLoaded()) - { - LLFloaterCustomize::show(); - } + LLFloaterCustomize::show(); } // static diff --git a/indra/newview/llviewermenu.cpp b/indra/newview/llviewermenu.cpp index 210d91062..61c9bdc5c 100644 --- a/indra/newview/llviewermenu.cpp +++ b/indra/newview/llviewermenu.cpp @@ -42,6 +42,7 @@ #include "llfeaturemanager.h" #include "llsecondlifeurls.h" // +#include "floaterlocalassetbrowse.h" #include "llfloaterexploreanimations.h" #include "llfloaterexploresounds.h" #include "llfloaterblacklist.h" @@ -103,7 +104,9 @@ #include "llfloaterreporter.h" #include "llfloaterscriptdebug.h" #include "llfloaterscriptlimits.h" +#include "llfloatersearch.h" #include "llfloatersettingsdebug.h" +#include "llfloatersnapshot.h" #include "llfloaterenvsettings.h" #include "llfloaterstats.h" @@ -1984,23 +1987,6 @@ class LLViewCheckJoystickFlycam : public view_listener_t } }; -class LLViewCommunicate : public view_listener_t -{ - bool handleEvent(LLPointer event, const LLSD& userdata) - { - static LLCachedControl only_comm("CommunicateSpecificShortcut"); - if (!only_comm && LLFloaterChatterBox::getInstance()->getFloaterCount() == 0) - { - LLFloaterMyFriends::toggleInstance(); - } - else - { - LLFloaterChatterBox::toggleInstance(); - } - return true; - } -}; - void handle_toggle_flycam() { @@ -2128,15 +2114,6 @@ void handle_attachment_edit(const LLUUID& idItem) } // [/SL:KB] -class LLObjectInspect : public view_listener_t -{ - bool handleEvent(LLPointer event, const LLSD& userdata) - { - LLFloaterInspect::showInstance(); - return true; - } -}; - // Derenderizer. Originally by Phox. class LLObjectDerender : public view_listener_t { @@ -2883,19 +2860,6 @@ class LLObjectPFLinksetsSelected : public view_listener_t } }; -class LLAvatarAnims : public view_listener_t -{ - bool handleEvent(LLPointer event, const LLSD& userdata) - { - LLVOAvatar* avatar = find_avatar_from_object( LLSelectMgr::getInstance()->getSelection()->getPrimaryObject() ); - if(avatar) - { - new LLFloaterExploreAnimations(avatar->getID()); //temporary - } - return true; - } -}; - // bool handle_go_to() @@ -5769,15 +5733,6 @@ class LLViewEnableLastChatter : public view_listener_t } }; -class LLViewToggleRadar: public view_listener_t -{ - bool handleEvent(LLPointer event, const LLSD& userdata) - { - LLFloaterAvatarList::toggle(0); - return true; - } -}; - class LLEditEnableDeselect : public view_listener_t { bool handleEvent(LLPointer event, const LLSD& userdata) @@ -6449,32 +6404,87 @@ void handle_viewer_disable_message_log(void*) gMessageSystem->stopLogging(); } +void show_outfit_dialog() { new LLMakeOutfitDialog(false); } +bool is_visible_view(boost::function get) +{ + if (LLView* v = get()) + return v->getVisible(); + return false; +} struct MenuFloaterDict : public LLSingleton { typedef std::map, boost::function > > menu_floater_map_t; menu_floater_map_t mEntries; + + struct CommWrapper + { + static bool only_comm() + { + static const LLCachedControl only("CommunicateSpecificShortcut"); + return only || LLFloaterChatterBox::getInstance()->getFloaterCount(); + } + static bool instanceVisible(const LLSD& key) + { + return only_comm() + ? LLFloaterChatterBox::instanceVisible(key) + : LLFloaterMyFriends::instanceVisible(key); + } + static void toggleInstance(const LLSD& key) + { + if (only_comm()) + LLFloaterChatterBox::toggleInstance(key); + else + LLFloaterMyFriends::toggleInstance(key); + } + }; MenuFloaterDict() { registerFloater("about", boost::bind(&LLFloaterAbout::show,(void*)NULL)); //registerFloater("about region", boost::bind(&LLFloaterRegionInfo::showInstance,LLSD())); + registerFloater("ao", boost::bind(LLFloaterAO::show, (void*)NULL)); + registerFloater("appearance", boost::bind(LLFloaterCustomize::show)); registerFloater("buy currency", boost::bind(&LLFloaterBuyCurrency::buyCurrency)); + registerFloater("buy land", boost::bind(&LLViewerParcelMgr::startBuyLand, boost::bind(LLViewerParcelMgr::getInstance), false)); + registerFloater("complaint reporter", boost::bind(LLFloaterReporter::showFromMenu, COMPLAINT_REPORT)); + registerFloater("debug avatar", boost::bind(handle_debug_avatar_textures, (void*)NULL)); + registerFloater("debug settings", boost::bind(handle_singleton_toggle, (void*)NULL)); registerFloater("displayname", boost::bind(&LLFloaterDisplayName::show)); //registerFloater("friends", boost::bind(&LLFloaterMyFriends::toggleInstance,0), boost::bind(&LLFloaterMyFriends::instanceVisible,0)); registerFloater("gestures", boost::bind(&LLFloaterGesture::toggleVisibility), boost::bind(&LLFloaterGesture::instanceVisible)); registerFloater("grid options", boost::bind(&LLFloaterBuildOptions::show,(void*)NULL)); + //Singu TODO: Re-implement f1 help. + /*else if (floater_name == "help f1") + { + gViewerHtmlHelp.show(); + }*/ registerFloater("help tutorial",boost::bind(&LLFloaterHUD::showHUD)); - registerFloater("im", boost::bind(&LLFloaterChatterBox::toggleInstance,LLSD()), boost::bind(&LLFloaterMyFriends::instanceVisible,0)); + registerFloater("inspect", boost::bind(LLFloaterInspect::showInstance)); + registerFloater("inventory", boost::bind(LLInventoryView::toggleVisibility, (void*)NULL), boost::bind(is_visible_view, static_cast >(LLInventoryView::getActiveInventory))); //registerFloater("lag meter", boost::bind(&LLFloaterLagMeter::showInstance,LLSD())); + registerFloater("local assets", boost::bind(FloaterLocalAssetBrowser::show, (void*)0)); + registerFloater("mean events", boost::bind(LLFloaterBump::show, (void*)NULL)); + registerFloater("media ticker", boost::bind(handle_ticker_toggle, (void*)NULL), boost::bind(SHFloaterMediaTicker::instanceExists)); registerFloater("my land", boost::bind(&LLFloaterLandHoldings::show,(void*)NULL)); + registerFloater("outfit", boost::bind(show_outfit_dialog)); registerFloater("preferences", boost::bind(&LLFloaterPreference::show,(void*)NULL)); + registerFloater("radar", boost::bind(LLFloaterAvatarList::toggle, (void*)NULL), boost::bind(LLFloaterAvatarList::instanceVisible)); registerFloater("script errors",boost::bind(&LLFloaterScriptDebug::show,LLUUID::null)); //registerFloater("script info", boost::bind(&LLFloaterScriptLimits::showInstance,LLSD())); + registerFloater("search", boost::bind(LLFloaterSearch::showInstance, LLFloaterSearch::SearchQuery(), false)); + registerFloater("snapshot", boost::bind(LLFloaterSnapshot::show, (void*)NULL)); // Phoenix: Wolfspirit: Enabled Show Floater out of viewer menu registerFloater("toolbar", boost::bind(&LLToolBar::toggle,(void*)NULL), boost::bind(&LLToolBar::visible,(void*)NULL)); + registerFloater("web", boost::bind(LLFloaterWebContent::showInstance, "dict web", LLFloaterWebContent::Params())); registerFloater("world map", boost::bind(&LLFloaterWorldMap::toggle)); + registerFloater("anims_explorer", boost::bind(LLFloaterExploreAnimations::show)); registerFloater("sound_explorer", boost::bind(&LLFloaterExploreSounds::toggle), boost::bind(&LLFloaterExploreSounds::visible)); registerFloater("asset_blacklist", boost::bind(&LLFloaterBlacklist::toggle), boost::bind(&LLFloaterBlacklist::visible)); - + registerFloater("DayCycle", boost::bind(LLFloaterDayCycle::show), boost::bind(LLFloaterDayCycle::isOpen)); + registerFloater("EnvSettings", boost::bind(LLFloaterEnvSettings::show), boost::bind(LLFloaterEnvSettings::isOpen)); + registerFloater("PostProcess", boost::bind(LLFloaterPostProcess::show)); + registerFloater("RegionDebugConsole", boost::bind(handle_singleton_toggle, (void*)NULL), boost::bind(LLFloaterRegionDebugConsole::instanceExists)); + registerFloater("WaterSettings", boost::bind(LLFloaterWater::show), boost::bind(LLFloaterWater::isOpen)); + registerFloater ("im"); registerFloater ("about land"); registerFloater ("about region"); registerFloater ("active speakers"); @@ -6484,6 +6494,7 @@ struct MenuFloaterDict : public LLSingleton registerFloater ("chat history"); registerFloater ("communicate"); registerFloater ("friends",0); + registerFloater ("groups",1); registerFloater ("lag meter"); registerFloater ("media filter"); registerFloater ("mini map"); @@ -6497,6 +6508,11 @@ struct MenuFloaterDict : public LLSingleton registerFloater ("voice effect"); registerFloater ("pathfinding_characters"); registerFloater ("pathfinding_linksets"); + // [RLVa:LF] + registerFloater("rlv restrictions"); + registerFloater("rlv locks"); + registerFloater("rlv strings"); + // [/RLVa:LF] } void registerFloater(const std::string& name, boost::function show, boost::function visible = NULL) @@ -6523,56 +6539,6 @@ class LLShowFloater : public view_listener_t { it->second.first(); } - else if (floater_name == "appearance") - { - if (gAgentWearables.areWearablesLoaded()) - { - LLFloaterCustomize::show(); - } - } - else if (floater_name == "outfit") - { - new LLMakeOutfitDialog(false); - } - else if (floater_name == "inventory") - { - LLInventoryView::toggleVisibility(NULL); - } - else if (floater_name == "buy land") - { -// [RLVa:KB] - Checked: 2009-07-04 (RLVa-1.0.0a) - if (gRlvHandler.hasBehaviour(RLV_BHVR_SHOWLOC)) - { - return true; - } -// [/RLVa:KB] - if (LLViewerParcelMgr::getInstance()->selectionEmpty()) - { - LLViewerParcelMgr::getInstance()->selectParcelAt(gAgent.getPositionGlobal()); - } - LLViewerParcelMgr::getInstance()->startBuyLand(); - } - - //Singu TODO: Re-implement f1 help. - /*else if (floater_name == "help f1") - { - llinfos << "Spawning HTML help window" << llendl; - gViewerHtmlHelp.show(); - }*/ - - else if (floater_name == "complaint reporter") - { - // Prevent menu from appearing in screen shot. - gMenuHolder->hideMenus(); - LLFloaterReporter::showFromMenu(COMPLAINT_REPORT); - } - else if (floater_name == "mean events") - { - if (!gNoRender) - { - LLFloaterBump::show(NULL); - } - } else // Simple codeless floater { LLFloater* floater = LLUICtrlFactory::getInstance()->getBuiltFloater(floater_name); @@ -6597,11 +6563,6 @@ class LLFloaterVisible : public view_listener_t { new_value = it->second.second(); } - else if (floater_name == "inventory") - { - LLInventoryView* iv = LLInventoryView::getActiveInventory(); - new_value = (NULL != iv && TRUE == iv->getVisible()); - } gMenuHolder->findControl(control_name)->setValue(new_value); return true; } @@ -6715,15 +6676,6 @@ class LLShowAgentProfile : public view_listener_t } }; -class LLShowAgentGroups : public view_listener_t -{ - bool handleEvent(LLPointer event, const LLSD& userdata) - { - LLFloaterMyFriends::toggleInstance(1); - return true; - } -}; - class LLLandEdit : public view_listener_t { bool handleEvent(LLPointer event, const LLSD& userdata) @@ -9055,22 +9007,6 @@ class LLWorldEnvSettings : public view_listener_t // [/RLVa:KB] std::string tod = userdata.asString(); - - if (tod == "editor") - { - // if not there or is hidden, show it - if( !LLFloaterEnvSettings::isOpen() || - !LLFloaterEnvSettings::instance()->getVisible()) - { - LLFloaterEnvSettings::show(); - } - else - { - // otherwise, close it button acts like a toggle - LLFloaterEnvSettings::instance()->close(); - } - return true; - } if (tod == "sunrise") { @@ -9097,60 +9033,6 @@ class LLWorldEnvSettings : public view_listener_t } }; -/// Water Menu callbacks -class LLWorldWaterSettings : public view_listener_t -{ - bool handleEvent(LLPointer event, const LLSD& userdata) - { -// [RLVa:KB] - Checked: 2009-07-10 (RLVa-1.0.0g) - if (gRlvHandler.hasBehaviour(RLV_BHVR_SETENV)) - { - return true; - } -// [/RLVa:KB] - - // if not there or is hidden, show it - if( !LLFloaterWater::isOpen() || - !LLFloaterWater::instance()->getVisible()) { - LLFloaterWater::show(); - - // otherwise, close it button acts like a toggle - } - else - { - LLFloaterWater::instance()->close(); - } - return true; - } -}; - -/// Post-Process callbacks -class LLWorldPostProcess : public view_listener_t -{ - bool handleEvent(LLPointer event, const LLSD& userdata) - { - LLFloaterPostProcess::show(); - return true; - } -}; - -/// Day Cycle callbacks -class LLWorldDayCycle : public view_listener_t -{ - bool handleEvent(LLPointer event, const LLSD& userdata) - { -// [RLVa:KB] - Checked: 2009-07-10 (RLVa-1.0.0g) - if (gRlvHandler.hasBehaviour(RLV_BHVR_SETENV)) - { - return true; - } -// [/RLVa:KB] - - LLFloaterDayCycle::show(); - return true; - } -}; - class SinguCloseAllDialogs : public view_listener_t { @@ -9161,16 +9043,6 @@ class SinguCloseAllDialogs : public view_listener_t } }; -class SinguAnimationOverride : public view_listener_t -{ - bool handleEvent(LLPointer event, const LLSD& userdata) - { - LLFloaterAO::show(NULL); - - return true; - } -}; - class SinguNimble : public view_listener_t { bool handleEvent(LLPointer event, const LLSD& userdata) @@ -9191,36 +9063,6 @@ class SinguCheckNimble : public view_listener_t } }; -class SinguAssetBlacklist : public view_listener_t -{ - bool handleEvent(LLPointer event, const LLSD& userdata) - { - LLFloaterBlacklist::toggle(); - - return true; - } -}; - -class SinguStreamingAudioDisplay : public view_listener_t -{ - bool handleEvent(LLPointer event, const LLSD& userdata) - { - handle_ticker_toggle(NULL); - - return true; - } -}; - -class SinguCheckStreamingAudioDisplay : public view_listener_t -{ - bool handleEvent(LLPointer event, const LLSD& userdata) - { - gMenuHolder->findControl(userdata["control"].asString())->setValue(handle_singleton_check(NULL)); - - return true; - } -}; - class SinguEnableStreamingAudioDisplay : public view_listener_t { bool handleEvent(LLPointer event, const LLSD& userdata) @@ -9257,33 +9099,12 @@ class SinguRebake : public view_listener_t } }; -class SinguDebugConsole : public view_listener_t -{ - bool handleEvent(LLPointer event, const LLSD& userdata) - { - handle_singleton_toggle(NULL); - return true; - } -}; - -class SinguCheckDebugConsole : public view_listener_t -{ - bool handleEvent(LLPointer event, const LLSD& userdata) - { - gMenuHolder->findControl(userdata["control"].asString())->setValue(handle_singleton_check(NULL)); - return true; - } -}; - class SinguVisibleDebugConsole : public view_listener_t { bool handleEvent(LLPointer event, const LLSD& userdata) { - if (LLViewerRegion* region = gAgent.getRegion()) - { - if (LLView* item = gMenuBarView->getChildView("Region Debug Console", true, false)) - item->setVisible(!(region->getCapability("SimConsoleAsync").empty() || region->getCapability("SimConsole").empty())); - } + LLViewerRegion* region = gAgent.getRegion(); + gMenuHolder->findControl(userdata["control"].asString())->setValue(region && !(region->getCapability("SimConsoleAsync").empty() || region->getCapability("SimConsole").empty())); return true; } }; @@ -9704,7 +9525,6 @@ void initialize_menus() // View menu addMenu(new LLViewMouselook(), "View.Mouselook"); addMenu(new LLViewJoystickFlycam(), "View.JoystickFlycam"); - addMenu(new LLViewCommunicate(), "View.Communicate"); addMenu(new LLViewResetView(), "View.ResetView"); addMenu(new LLViewResetPresetAngles(), "View.ResetPresetAngles"); addMenu(new LLViewLookAtLastChatter(), "View.LookAtLastChatter"); @@ -9721,7 +9541,6 @@ void initialize_menus() addMenu(new LLViewEnableMouselook(), "View.EnableMouselook"); addMenu(new LLViewEnableJoystickFlycam(), "View.EnableJoystickFlycam"); addMenu(new LLViewEnableLastChatter(), "View.EnableLastChatter"); - addMenu(new LLViewToggleRadar(), "View.ToggleAvatarList"); addMenu(new LLViewCheckJoystickFlycam(), "View.CheckJoystickFlycam"); addMenu(new LLViewCheckShowHoverTips(), "View.CheckShowHoverTips"); @@ -9749,11 +9568,7 @@ void initialize_menus() addMenu(new LLWorldEnableBuyLand(), "World.EnableBuyLand"); addMenu(new LLWorldCheckAlwaysRun(), "World.CheckAlwaysRun"); - (new LLWorldEnvSettings())->registerListener(gMenuHolder, "World.EnvSettings"); - (new LLWorldWaterSettings())->registerListener(gMenuHolder, "World.WaterSettings"); - (new LLWorldPostProcess())->registerListener(gMenuHolder, "World.PostProcess"); - (new LLWorldDayCycle())->registerListener(gMenuHolder, "World.DayCycle"); // Tools menu @@ -9777,7 +9592,6 @@ void initialize_menus() addMenu(new LLToolsLookAtSelection(), "Tools.LookAtSelection"); addMenu(new LLToolsBuyOrTake(), "Tools.BuyOrTake"); addMenu(new LLToolsTakeCopy(), "Tools.TakeCopy"); - addMenu(new LLToolsTakeCopy(), "Tools.TakeCopy"); // addMenu(new LLToolsEnableAdminDelete(), "Tools.EnableAdminDelete"); @@ -9827,7 +9641,6 @@ void initialize_menus() addMenu(new LLAvatarEject(), "Avatar.Eject"); addMenu(new LLAvatarSendIM(), "Avatar.SendIM"); addMenu(new LLAvatarReportAbuse(), "Avatar.ReportAbuse"); - addMenu(new LLAvatarAnims(),"Avatar.Anims"); addMenu(new LLObjectEnableMute(), "Avatar.EnableMute"); addMenu(new LLAvatarEnableAddFriend(), "Avatar.EnableAddFriend"); addMenu(new LLAvatarEnableFreezeEject(), "Avatar.EnableFreezeEject"); @@ -9858,7 +9671,6 @@ void initialize_menus() addMenu(new LLObjectMute(), "Object.Mute"); addMenu(new LLObjectBuy(), "Object.Buy"); addMenu(new LLObjectEdit(), "Object.Edit"); - addMenu(new LLObjectInspect(), "Object.Inspect"); // Visual mute, originally by Phox. addMenu(new LLObjectDerender(), "Object.DERENDER"); addMenu(new LLAvatarReloadTextures(), "Avatar.ReloadTextures"); @@ -9905,7 +9717,6 @@ void initialize_menus() addMenu(new LLShowFloater(), "ShowFloater"); addMenu(new LLPromptShowURL(), "PromptShowURL"); addMenu(new LLShowAgentProfile(), "ShowAgentProfile"); - addMenu(new LLShowAgentGroups(), "ShowAgentGroups"); addMenu(new LLToggleControl(), "ToggleControl"); addMenu(new LLGoToObject(), "GoToObject"); @@ -9928,17 +9739,12 @@ void initialize_menus() // Singularity menu addMenu(new SinguCloseAllDialogs(), "CloseAllDialogs"); // ---- Fake away handled elsewhere - addMenu(new SinguAnimationOverride(), "AnimationOverride"); addMenu(new SinguNimble(), "Nimble"); addMenu(new SinguCheckNimble(), "CheckNimble"); - addMenu(new SinguStreamingAudioDisplay(), "StreamingAudioDisplay"); addMenu(new SinguEnableStreamingAudioDisplay(), "EnableStreamingAudioDisplay"); - addMenu(new SinguCheckStreamingAudioDisplay(), "CheckStreamingAudioDisplay"); addMenu(new SinguPoseStand(), "PoseStand"); addMenu(new SinguCheckPoseStand(), "CheckPoseStand"); addMenu(new SinguRebake(), "Rebake"); - addMenu(new SinguDebugConsole(), "RegionDebugConsole"); - addMenu(new SinguCheckDebugConsole(), "CheckRegionDebugConsole"); addMenu(new SinguVisibleDebugConsole(), "VisibleRegionDebugConsole"); // [RLVa:KB] - Checked: 2010-01-18 (RLVa-1.1.0m) | Added: RLVa-1.1.0m | OK diff --git a/indra/newview/llviewermenufile.cpp b/indra/newview/llviewermenufile.cpp index 5eb158997..877bfdce3 100644 --- a/indra/newview/llviewermenufile.cpp +++ b/indra/newview/llviewermenufile.cpp @@ -62,7 +62,6 @@ #include "lltrans.h" #include "llfloaterbuycurrency.h" // -#include "floaterlocalassetbrowse.h" #include "llassettype.h" #include "llinventorytype.h" // @@ -517,15 +516,6 @@ class LLFileMinimizeAllWindows : public view_listener_t return true; } }; - -class LLFileLocalAssetBrowser : public view_listener_t -{ - bool handleEvent(LLPointer, const LLSD&) - { - FloaterLocalAssetBrowser::show(0); - return true; - } -}; // class LLFileSavePreview : public view_listener_t @@ -541,15 +531,6 @@ class LLFileSavePreview : public view_listener_t } }; -class LLFileTakeSnapshot : public view_listener_t -{ - bool handleEvent(LLPointer event, const LLSD& userdata) - { - LLFloaterSnapshot::show(NULL); - return true; - } -}; - class LLFileTakeSnapshotToDisk : public view_listener_t { bool handleEvent(LLPointer event, const LLSD& userdata) @@ -979,21 +960,21 @@ void temp_upload_callback(const LLUUID& uuid, void* user_data, S32 result, LLExt { LLUUID item_id; item_id.generate(); - LLPermissions* perms = new LLPermissions(); - perms->set(LLPermissions::DEFAULT); - perms->setOwnerAndGroup(gAgentID, gAgentID, gAgentID, false); + LLPermissions perms; + perms.set(LLPermissions::DEFAULT); + perms.setOwnerAndGroup(gAgentID, gAgentID, gAgentID, false); - perms->setMaskBase(PERM_ALL); - perms->setMaskOwner(PERM_ALL); - perms->setMaskEveryone(PERM_ALL); - perms->setMaskGroup(PERM_ALL); - perms->setMaskNext(PERM_ALL); + perms.setMaskBase(PERM_ALL); + perms.setMaskOwner(PERM_ALL); + perms.setMaskEveryone(PERM_ALL); + perms.setMaskGroup(PERM_ALL); + perms.setMaskNext(PERM_ALL); LLViewerInventoryItem* item = new LLViewerInventoryItem( item_id, gInventory.findCategoryUUIDForType(LLFolderType::FT_TEXTURE), - *perms, + perms, uuid, (LLAssetType::EType)data->mAssetInfo.mType, (LLInventoryType::EType)data->mInventoryType, @@ -1368,10 +1349,8 @@ void init_menu_file() (new LLFileEnableCloseAllWindows())->registerListener(gMenuHolder, "File.EnableCloseAllWindows"); // (new LLFileMinimizeAllWindows())->registerListener(gMenuHolder, "File.MinimizeAllWindows"); - (new LLFileLocalAssetBrowser())->registerListener(gMenuHolder, "File.LocalAssetBrowser"); // (new LLFileSavePreview())->registerListener(gMenuHolder, "File.SavePreview"); - (new LLFileTakeSnapshot())->registerListener(gMenuHolder, "File.TakeSnapshot"); (new LLFileTakeSnapshotToDisk())->registerListener(gMenuHolder, "File.TakeSnapshotToDisk"); (new LLFileQuit())->registerListener(gMenuHolder, "File.Quit"); (new LLFileEnableUpload())->registerListener(gMenuHolder, "File.EnableUpload"); diff --git a/indra/newview/llviewerparcelmgr.cpp b/indra/newview/llviewerparcelmgr.cpp index 4fdca26c8..6a77426b9 100644 --- a/indra/newview/llviewerparcelmgr.cpp +++ b/indra/newview/llviewerparcelmgr.cpp @@ -69,6 +69,7 @@ #include "lloverlaybar.h" #include "roles_constants.h" #include "llweb.h" +#include "rlvactions.h" const F32 PARCEL_COLLISION_DRAW_SECS = 1.f; @@ -2226,6 +2227,12 @@ bool LLViewerParcelMgr::canAgentBuyParcel(LLParcel* parcel, bool forGroup) const void LLViewerParcelMgr::startBuyLand(BOOL is_for_group) { +// [RLVa:KB] - Checked: 2009-07-04 (RLVa-1.0.0a) + if (RlvActions::isRlvEnabled() && RlvActions::canShowLocation()) + return; +// [/RLVa:KB] + if (selectionEmpty()) selectParcelAt(gAgent.getPositionGlobal()); + LLFloaterBuyLand::buyLand(getSelectionRegion(), mCurrentParcelSelection, is_for_group == TRUE); } diff --git a/indra/newview/llvoavatar.cpp b/indra/newview/llvoavatar.cpp index 453525da9..550e56b2b 100644 --- a/indra/newview/llvoavatar.cpp +++ b/indra/newview/llvoavatar.cpp @@ -5456,7 +5456,7 @@ void LLVOAvatar::processAnimationStateChanges() processSingleAnimationStateChange(anim_it->first, FALSE); // - LLFloaterExploreAnimations::stopAnim(getID(), anim_it->first); + LLFloaterExploreAnimations::processAnim(getID(), anim_it->first, false); // mPlayingAnimations.erase(anim_it++); continue; @@ -5474,7 +5474,7 @@ void LLVOAvatar::processAnimationStateChanges() if (found_anim == mPlayingAnimations.end() || found_anim->second != anim_it->second) { // - LLFloaterExploreAnimations::startAnim(getID(), anim_it->first); + LLFloaterExploreAnimations::processAnim(getID(), anim_it->first, true); // if (processSingleAnimationStateChange(anim_it->first, TRUE)) { diff --git a/indra/newview/rlvui.cpp b/indra/newview/rlvui.cpp index da06f3110..1168a5f6a 100644 --- a/indra/newview/rlvui.cpp +++ b/indra/newview/rlvui.cpp @@ -188,13 +188,13 @@ void RlvUIEnabler::onToggleSetEnv() if (!fEnable) { // Only close the floaters if their instance exists and they're actually visible - if ( (LLFloaterEnvSettings::isOpen()) && (LLFloaterEnvSettings::instance()->getVisible()) ) + if ( (LLFloaterEnvSettings::isOpen()) ) LLFloaterEnvSettings::instance()->close(); - if ( (LLFloaterWindLight::isOpen()) && (LLFloaterWindLight::instance()->getVisible()) ) + if ( (LLFloaterWindLight::isOpen()) ) LLFloaterWindLight::instance()->close(); - if ( (LLFloaterWater::isOpen()) && (LLFloaterWater::instance()->getVisible()) ) + if ( (LLFloaterWater::isOpen()) ) LLFloaterWater::instance()->close(); - if ( (LLFloaterDayCycle::isOpen()) && (LLFloaterDayCycle::instance()->getVisible()) ) + if ( (LLFloaterDayCycle::isOpen()) ) LLFloaterDayCycle::instance()->close(); } diff --git a/indra/newview/skins/default/xui/en-us/menu_pie_attachment.xml b/indra/newview/skins/default/xui/en-us/menu_pie_attachment.xml index fa7c19687..00aa3f8ad 100644 --- a/indra/newview/skins/default/xui/en-us/menu_pie_attachment.xml +++ b/indra/newview/skins/default/xui/en-us/menu_pie_attachment.xml @@ -55,7 +55,7 @@ - + diff --git a/indra/newview/skins/default/xui/en-us/menu_pie_avatar.xml b/indra/newview/skins/default/xui/en-us/menu_pie_avatar.xml index 05621b010..cdeef8c83 100644 --- a/indra/newview/skins/default/xui/en-us/menu_pie_avatar.xml +++ b/indra/newview/skins/default/xui/en-us/menu_pie_avatar.xml @@ -56,7 +56,7 @@ - + diff --git a/indra/newview/skins/default/xui/en-us/menu_pie_object.xml b/indra/newview/skins/default/xui/en-us/menu_pie_object.xml index 3c50cfe39..9088e803d 100644 --- a/indra/newview/skins/default/xui/en-us/menu_pie_object.xml +++ b/indra/newview/skins/default/xui/en-us/menu_pie_object.xml @@ -81,7 +81,7 @@ - + diff --git a/indra/newview/skins/default/xui/en-us/menu_pie_self.xml b/indra/newview/skins/default/xui/en-us/menu_pie_self.xml index 24444019b..beaf53062 100644 --- a/indra/newview/skins/default/xui/en-us/menu_pie_self.xml +++ b/indra/newview/skins/default/xui/en-us/menu_pie_self.xml @@ -4,7 +4,7 @@ - + @@ -91,7 +91,7 @@ - + - + - + @@ -331,8 +331,8 @@ - - + + @@ -383,7 +383,7 @@ - + - + - + - + @@ -1002,7 +1002,7 @@ - + @@ -1022,8 +1022,8 @@ - - + + @@ -1031,8 +1031,8 @@ - - + +