aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/linden/indra/newview/llviewermenu.cpp
diff options
context:
space:
mode:
authorJacek Antonelli2010-04-29 17:03:40 -0500
committerJacek Antonelli2010-04-29 17:03:40 -0500
commitfebaa3eb273768073f9d89129540987b2cb8688f (patch)
tree78ed997ec97a24fecb57bbedd3ac1a2efda847dc /linden/indra/newview/llviewermenu.cpp
parentHide the buy currency button in non-Second Life grids (diff)
parentfix: Bug #163 new clothing is created in Lost&Found after logging back in. (diff)
downloadmeta-impy-febaa3eb273768073f9d89129540987b2cb8688f.zip
meta-impy-febaa3eb273768073f9d89129540987b2cb8688f.tar.gz
meta-impy-febaa3eb273768073f9d89129540987b2cb8688f.tar.bz2
meta-impy-febaa3eb273768073f9d89129540987b2cb8688f.tar.xz
Merge remote branch 'armin/logoutbugsNEW' into next
Diffstat (limited to 'linden/indra/newview/llviewermenu.cpp')
-rw-r--r--linden/indra/newview/llviewermenu.cpp40
1 files changed, 33 insertions, 7 deletions
diff --git a/linden/indra/newview/llviewermenu.cpp b/linden/indra/newview/llviewermenu.cpp
index 770384a..a0d3574 100644
--- a/linden/indra/newview/llviewermenu.cpp
+++ b/linden/indra/newview/llviewermenu.cpp
@@ -1,4 +1,3 @@
1
2/** 1/**
3 * @file llviewermenu.cpp 2 * @file llviewermenu.cpp
4 * @brief Builds menus out of items. 3 * @brief Builds menus out of items.
@@ -589,11 +588,6 @@ void set_underclothes_menu_options()
589 588
590void init_menus() 589void init_menus()
591{ 590{
592 if (gMenuHolder)
593 {
594 cleanup_menus();
595 }
596
597 S32 top = gViewerWindow->getRootView()->getRect().getHeight(); 591 S32 top = gViewerWindow->getRootView()->getRect().getHeight();
598 S32 width = gViewerWindow->getRootView()->getRect().getWidth(); 592 S32 width = gViewerWindow->getRootView()->getRect().getWidth();
599 593
@@ -1554,9 +1548,39 @@ static std::vector<LLPointer<view_listener_t> > sMenus;
1554//----------------------------------------------------------------------------- 1548//-----------------------------------------------------------------------------
1555void cleanup_menus() 1549void cleanup_menus()
1556{ 1550{
1551 LL_DEBUGS("AFK") << "cleanup_menus start" << LL_ENDL;
1552 sMenus.clear();
1553
1557 delete gMenuParcelObserver; 1554 delete gMenuParcelObserver;
1558 gMenuParcelObserver = NULL; 1555 gMenuParcelObserver = NULL;
1559 1556
1557
1558 delete gAttachPieMenu;
1559 gAttachPieMenu = NULL;
1560
1561 delete gDetachPieMenu;
1562 gDetachPieMenu = NULL;
1563
1564 delete gAttachScreenPieMenu;
1565 gAttachScreenPieMenu = NULL;
1566
1567 delete gDetachScreenPieMenu;
1568 gDetachScreenPieMenu = NULL;
1569
1570 for (int i = 0 ; i < 8 ; i++)
1571 {
1572 if (gAttachBodyPartPieMenus[i])
1573 {
1574 delete gAttachBodyPartPieMenus[i];
1575 gAttachBodyPartPieMenus[i] = NULL;
1576 }
1577 if (gAttachBodyPartPieMenus[i])
1578 {
1579 delete gDetachBodyPartPieMenus[i];
1580 gDetachBodyPartPieMenus[i] = NULL;
1581 }
1582 }
1583
1560 delete gPieSelf; 1584 delete gPieSelf;
1561 gPieSelf = NULL; 1585 gPieSelf = NULL;
1562 1586
@@ -1584,7 +1608,6 @@ void cleanup_menus()
1584 delete gMenuHolder; 1608 delete gMenuHolder;
1585 gMenuHolder = NULL; 1609 gMenuHolder = NULL;
1586 1610
1587 sMenus.clear();
1588} 1611}
1589 1612
1590//----------------------------------------------------------------------------- 1613//-----------------------------------------------------------------------------
@@ -2767,6 +2790,7 @@ class LLAvatarEnableFreezeEject : public view_listener_t
2767 2790
2768 if (new_value) 2791 if (new_value)
2769 { 2792 {
2793 LL_DEBUGS("isOwnedSelf")<< " viewermenu" << LL_ENDL;
2770 new_value = region->isOwnedSelf(pos); 2794 new_value = region->isOwnedSelf(pos);
2771 if (!new_value || region->isOwnedGroup(pos)) 2795 if (!new_value || region->isOwnedGroup(pos))
2772 { 2796 {
@@ -6527,7 +6551,9 @@ class LLAttachmentEnableDrop : public view_listener_t
6527 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata) 6551 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
6528 { 6552 {
6529 if (gDisconnected) 6553 if (gDisconnected)
6554 {
6530 return true; 6555 return true;
6556 }
6531 BOOL can_build = gAgent.isGodlike() || (LLViewerParcelMgr::getInstance()->agentCanBuild()); 6557 BOOL can_build = gAgent.isGodlike() || (LLViewerParcelMgr::getInstance()->agentCanBuild());
6532 6558
6533 //Add an inventory observer to only allow dropping the newly attached item 6559 //Add an inventory observer to only allow dropping the newly attached item