void LLSidepanelInventory::updateVerbs() { mInfoBtn->setEnabled(FALSE); mShareBtn->setEnabled(FALSE); mWearBtn->setVisible(FALSE); mWearBtn->setEnabled(FALSE); mPlayBtn->setVisible(FALSE); mPlayBtn->setEnabled(FALSE); mTeleportBtn->setVisible(FALSE); mTeleportBtn->setEnabled(FALSE); mShopBtn->setVisible(TRUE); mShareBtn->setEnabled(canShare()); const LLInventoryItem *item = getSelectedItem(); if (!item) return; bool is_single_selection = getSelectedCount() == 1; mInfoBtn->setEnabled(is_single_selection); switch(item->getInventoryType()) { case LLInventoryType::IT_WEARABLE: case LLInventoryType::IT_OBJECT: case LLInventoryType::IT_ATTACHMENT: mWearBtn->setVisible(TRUE); mWearBtn->setEnabled(get_can_item_be_worn(item->getLinkedUUID())); mShopBtn->setVisible(FALSE); break; case LLInventoryType::IT_SOUND: case LLInventoryType::IT_GESTURE: case LLInventoryType::IT_ANIMATION: mPlayBtn->setVisible(TRUE); mPlayBtn->setEnabled(TRUE); mShopBtn->setVisible(FALSE); break; case LLInventoryType::IT_LANDMARK: mTeleportBtn->setVisible(TRUE); mTeleportBtn->setEnabled(TRUE); mShopBtn->setVisible(FALSE); break; default: break; } }
bool LLSidepanelInventory::canWearSelected() { std::set<LLUUID> selected_uuids = LLAvatarActions::getInventorySelectedUUIDs(); if (selected_uuids.empty()) return false; for (std::set<LLUUID>::const_iterator it = selected_uuids.begin(); it != selected_uuids.end(); ++it) { if (!get_can_item_be_worn(*it)) return false; } return true; }
bool LLOutfitsList::canWearSelected() { uuid_vec_t selected_items; getSelectedItemsUUIDs(selected_items); for (uuid_vec_t::const_iterator it = selected_items.begin(); it != selected_items.end(); ++it) { const LLUUID& id = *it; // Check whether the item is worn. if (!get_can_item_be_worn(id)) { return false; } } // All selected items can be worn. return true; }