summaryrefslogtreecommitdiff
path: root/indra/newview/llinventorybridge.cpp
diff options
context:
space:
mode:
authorVadim Savchuk <vsavchuk@productengine.com>2010-01-11 12:57:42 +0200
committerVadim Savchuk <vsavchuk@productengine.com>2010-01-11 12:57:42 +0200
commit9393c28831c3b51d9b84950bb0bc89ca50edac23 (patch)
tree46f3aeb3d340d115c6ccd4a53993350b47691f96 /indra/newview/llinventorybridge.cpp
parent1a21ce62c225dfc8f2671691929a3b1a9bc73726 (diff)
parentdf08485cf840e21e2ec8d14664a45714e0a3ca96 (diff)
Merge from default branch.
--HG-- branch : product-engine
Diffstat (limited to 'indra/newview/llinventorybridge.cpp')
-rw-r--r--indra/newview/llinventorybridge.cpp27
1 files changed, 26 insertions, 1 deletions
diff --git a/indra/newview/llinventorybridge.cpp b/indra/newview/llinventorybridge.cpp
index d70221b22a..20d7f5214b 100644
--- a/indra/newview/llinventorybridge.cpp
+++ b/indra/newview/llinventorybridge.cpp
@@ -2074,7 +2074,12 @@ void LLFolderBridge::performAction(LLFolderView* folder, LLInventoryModel* model
{
if ("open" == action)
{
- openItem();
+ LLFolderViewFolder *f = dynamic_cast<LLFolderViewFolder *>(folder->getItemByID(mUUID));
+ if (f)
+ {
+ f->setOpen(TRUE);
+ }
+
return;
}
else if ("paste" == action)
@@ -2228,9 +2233,22 @@ LLUIImagePtr LLFolderBridge::getIcon() const
LLUIImagePtr LLFolderBridge::getIcon(LLFolderType::EType preferred_type)
{
// we only have one folder image now
+ if (preferred_type == LLFolderType::FT_OUTFIT)
+ {
+ return LLUI::getUIImage("Inv_LookFolderClosed");
+ }
return LLUI::getUIImage("Inv_FolderClosed");
}
+LLUIImagePtr LLFolderBridge::getOpenIcon() const
+{
+ if (getPreferredType() == LLFolderType::FT_OUTFIT)
+ {
+ return LLUI::getUIImage("Inv_LookFolderOpen");
+ }
+ return LLUI::getUIImage("Inv_FolderOpen");
+}
+
BOOL LLFolderBridge::renameItem(const std::string& new_name)
{
if(!isItemRenameable())
@@ -2614,6 +2632,13 @@ void LLFolderBridge::buildContextMenu(LLMenuGL& menu, U32 flags)
{
mItems.push_back(std::string("Rename"));
mItems.push_back(std::string("Delete"));
+
+ // EXT-4030: disallow deletion of currently worn outfit
+ const LLViewerInventoryItem *base_outfit_link = LLAppearanceManager::instance().getBaseOutfitLink();
+ if (base_outfit_link && (cat == base_outfit_link->getLinkedCategory()))
+ {
+ mDisabledItems.push_back(std::string("Delete"));
+ }
}
}