summaryrefslogtreecommitdiff
path: root/indra
diff options
context:
space:
mode:
Diffstat (limited to 'indra')
-rw-r--r--indra/llinventory/llinventorytype.cpp6
-rw-r--r--indra/llinventory/llinventorytype.h2
-rw-r--r--indra/newview/llsidepaneliteminfo.cpp21
3 files changed, 28 insertions, 1 deletions
diff --git a/indra/llinventory/llinventorytype.cpp b/indra/llinventory/llinventorytype.cpp
index 2b6b53556d..458adc9edd 100644
--- a/indra/llinventory/llinventorytype.cpp
+++ b/indra/llinventory/llinventorytype.cpp
@@ -209,6 +209,12 @@ bool LLInventoryType::cannotRestrictPermissions(LLInventoryType::EType type)
}
}
+// Should show permissions that apply only to objects rezed in world.
+bool LLInventoryType::showInWorldPermissions(LLInventoryType::EType type)
+{
+ return (type != IT_SETTINGS);
+}
+
bool inventory_and_asset_types_match(LLInventoryType::EType inventory_type,
LLAssetType::EType asset_type)
{
diff --git a/indra/llinventory/llinventorytype.h b/indra/llinventory/llinventorytype.h
index 86486373b5..8f2267307b 100644
--- a/indra/llinventory/llinventorytype.h
+++ b/indra/llinventory/llinventorytype.h
@@ -134,6 +134,8 @@ public:
// true if this type cannot have restricted permissions.
static bool cannotRestrictPermissions(EType type);
+ static bool showInWorldPermissions(EType type);
+
private:
// don't instantiate or derive one of these objects
LLInventoryType( void );
diff --git a/indra/newview/llsidepaneliteminfo.cpp b/indra/newview/llsidepaneliteminfo.cpp
index 3ec8e1e911..e6ea5c3784 100644
--- a/indra/newview/llsidepaneliteminfo.cpp
+++ b/indra/newview/llsidepaneliteminfo.cpp
@@ -631,7 +631,7 @@ void LLSidepanelItemInfo::refreshFromItem(LLViewerInventoryItem* item)
LLUICtrl* edit_cost = getChild<LLUICtrl>("Edit Cost");
// Check for ability to change values.
- if (is_obj_modify && can_agent_sell
+ if (is_obj_modify && can_agent_sell
&& gAgent.allowOperation(PERM_TRANSFER, perm, GP_OBJECT_MANIPULATE))
{
getChildView("CheckPurchase")->setEnabled(is_complete);
@@ -657,6 +657,25 @@ void LLSidepanelItemInfo::refreshFromItem(LLViewerInventoryItem* item)
edit_cost->setEnabled(FALSE);
}
+ // Hide any properties that are not relevant to settings
+ if (is_settings)
+ {
+ getChild<LLUICtrl>("GroupLabel")->setEnabled(false);
+ getChild<LLUICtrl>("GroupLabel")->setVisible(false);
+ getChild<LLUICtrl>("CheckShareWithGroup")->setEnabled(false);
+ getChild<LLUICtrl>("CheckShareWithGroup")->setVisible(false);
+ getChild<LLUICtrl>("AnyoneLabel")->setEnabled(false);
+ getChild<LLUICtrl>("AnyoneLabel")->setVisible(false);
+ getChild<LLUICtrl>("CheckEveryoneCopy")->setEnabled(false);
+ getChild<LLUICtrl>("CheckEveryoneCopy")->setVisible(false);
+ getChild<LLUICtrl>("CheckPurchase")->setEnabled(false);
+ getChild<LLUICtrl>("CheckPurchase")->setVisible(false);
+ getChild<LLUICtrl>("ComboBoxSaleType")->setEnabled(false);
+ getChild<LLUICtrl>("ComboBoxSaleType")->setVisible(false);
+ getChild<LLUICtrl>("Edit Cost")->setEnabled(false);
+ getChild<LLUICtrl>("Edit Cost")->setVisible(false);
+ }
+
// Set values.
getChild<LLUICtrl>("CheckPurchase")->setValue(is_for_sale);
getChild<LLUICtrl>("CheckNextOwnerModify")->setValue(LLSD(BOOL(next_owner_mask & PERM_MODIFY)));