diff options
| author | Brad Payne (Vir Linden) <vir@lindenlab.com> | 2012-05-02 13:00:59 -0400 |
|---|---|---|
| committer | Brad Payne (Vir Linden) <vir@lindenlab.com> | 2012-05-02 13:00:59 -0400 |
| commit | 678864e4ed497de7d17e02fa79b93be54379a5b8 (patch) | |
| tree | f946f0f5ffc116d2ba9c9ada237eb70594966ee6 /indra/newview/lltoolmgr.cpp | |
| parent | 78fec489b53434a8ac8f9c0a8e72fd883067ce42 (diff) | |
| parent | d6569db3520f7e0ce2d93febb6f4e26b48c08a3d (diff) | |
merge viewer-release to drano
Diffstat (limited to 'indra/newview/lltoolmgr.cpp')
| -rw-r--r-- | indra/newview/lltoolmgr.cpp | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/indra/newview/lltoolmgr.cpp b/indra/newview/lltoolmgr.cpp index 6bc7c6de11..ac01316462 100644 --- a/indra/newview/lltoolmgr.cpp +++ b/indra/newview/lltoolmgr.cpp @@ -81,7 +81,7 @@ LLToolMgr::LLToolMgr() // Not a panel, register these callbacks globally. LLUICtrl::EnableCallbackRegistry::currentRegistrar().add("Build.Active", boost::bind(&LLToolMgr::inEdit, this)); LLUICtrl::EnableCallbackRegistry::currentRegistrar().add("Build.Enabled", boost::bind(&LLToolMgr::canEdit, this)); - LLUICtrl::CommitCallbackRegistry::currentRegistrar().add("Build.Toggle", boost::bind(&LLToolMgr::toggleBuildMode, this)); + LLUICtrl::CommitCallbackRegistry::currentRegistrar().add("Build.Toggle", boost::bind(&LLToolMgr::toggleBuildMode, this, _2)); gToolNull = new LLTool(LLStringUtil::null); // Does nothing setCurrentTool(gToolNull); @@ -245,8 +245,15 @@ bool LLToolMgr::canEdit() return LLViewerParcelMgr::getInstance()->allowAgentBuild(); } -void LLToolMgr::toggleBuildMode() +void LLToolMgr::toggleBuildMode(const LLSD& sdname) { + const std::string& param = sdname.asString(); + + if (param == "build" && !canEdit()) + { + return; + } + LLFloaterReg::toggleInstanceOrBringToFront("build"); bool build_visible = LLFloaterReg::instanceVisible("build"); |
