diff options
Diffstat (limited to 'indra/newview/llpanelpermissions.cpp')
-rw-r--r-- | indra/newview/llpanelpermissions.cpp | 18 |
1 files changed, 9 insertions, 9 deletions
diff --git a/indra/newview/llpanelpermissions.cpp b/indra/newview/llpanelpermissions.cpp index 923f4b3115..7beba92ebb 100644 --- a/indra/newview/llpanelpermissions.cpp +++ b/indra/newview/llpanelpermissions.cpp @@ -741,17 +741,17 @@ void LLPanelPermissions::refresh() } } - if (is_for_sale) + childSetValue("checkbox for sale", is_for_sale); + + // HACK: There are some old objects in world that are set for sale, + // but are no-transfer. We need to let users turn for-sale off, but only + // if for-sale is set. + bool cannot_actually_sell = !can_transfer || (!can_copy && sale_type == LLSaleInfo::FS_COPY); + if (is_for_sale && has_change_sale_ability && cannot_actually_sell) { - childSetValue("checkbox for sale",TRUE); - childSetTentative("checkbox for sale",!can_transfer || (!can_copy && sale_type == LLSaleInfo::FS_COPY)); + childSetEnabled("checkbox for sale", true); } - else - { - childSetValue("checkbox for sale",FALSE); - childSetTentative("checkbox for sale",false); - } - + // Check search status of objects BOOL all_volume = gSelectMgr->selectionAllPCode( LL_PCODE_VOLUME ); bool include_in_search; |