diff options
author | Rider Linden <rider@lindenlab.com> | 2016-01-15 13:36:38 -0800 |
---|---|---|
committer | Rider Linden <rider@lindenlab.com> | 2016-01-15 13:36:38 -0800 |
commit | e7eaa94dfa1eba24cbf1667190a0be37b2f417e4 (patch) | |
tree | 9e9db05ef4d37698a7fa5f68149f724aa569528d /indra/newview/llfloaterexperienceprofile.cpp | |
parent | 34fe371bfdeb6fc83818c58660c038c372c0f64a (diff) | |
parent | 5a5c023e291990a463b1a91846ce82c70da8daab (diff) |
Merge VR
Diffstat (limited to 'indra/newview/llfloaterexperienceprofile.cpp')
-rw-r--r-- | indra/newview/llfloaterexperienceprofile.cpp | 31 |
1 files changed, 25 insertions, 6 deletions
diff --git a/indra/newview/llfloaterexperienceprofile.cpp b/indra/newview/llfloaterexperienceprofile.cpp index d44eb4310d..2c9a8e64b7 100644 --- a/indra/newview/llfloaterexperienceprofile.cpp +++ b/indra/newview/llfloaterexperienceprofile.cpp @@ -116,12 +116,20 @@ LLExperienceHandler gExperienceHandler; LLFloaterExperienceProfile::LLFloaterExperienceProfile(const LLSD& data) : LLFloater(data) - , mExperienceId(data.asUUID()) , mSaveCompleteAction(NOTHING) , mDirty(false) , mForceClose(false) { - + if (data.has("experience_id")) + { + mExperienceId = data["experience_id"].asUUID(); + mPostEdit = data.has("edit_experience") && data["edit_experience"].asBoolean(); + } + else + { + mExperienceId = data.asUUID(); + mPostEdit = false; + } } @@ -173,7 +181,13 @@ BOOL LLFloaterExperienceProfile::postBuild() LLEventPumps::instance().obtain("experience_permission").listen(mExperienceId.asString()+"-profile", boost::bind(&LLFloaterExperienceProfile::experiencePermission, getDerivedHandle<LLFloaterExperienceProfile>(this), _1)); - + + if (mPostEdit && mExperienceId.notNull()) + { + mPostEdit = false; + changeToEdit(); + } + return TRUE; } @@ -200,9 +214,7 @@ bool LLFloaterExperienceProfile::experiencePermission( LLHandle<LLFloaterExperie void LLFloaterExperienceProfile::onClickEdit() { - LLTabContainer* tabs = getChild<LLTabContainer>("tab_container"); - - tabs->selectTabByName("edit_panel_experience_info"); + changeToEdit(); } @@ -651,6 +663,13 @@ void LLFloaterExperienceProfile::changeToView() } } +void LLFloaterExperienceProfile::changeToEdit() +{ + LLTabContainer* tabs = getChild<LLTabContainer>("tab_container"); + + tabs->selectTabByName("edit_panel_experience_info"); +} + void LLFloaterExperienceProfile::onClickLocation() { LLViewerRegion* region = gAgent.getRegion(); |