summaryrefslogtreecommitdiff
path: root/indra/newview/llappearancemgr.h
diff options
context:
space:
mode:
authorIgor Borovkov <iborovkov@productengine.com>2010-04-21 12:43:03 +0300
committerIgor Borovkov <iborovkov@productengine.com>2010-04-21 12:43:03 +0300
commitccd0418ddf75dabe7101d2faa16c39213e344925 (patch)
tree7529cb64778610b7fe23ff80364181667341bcfe /indra/newview/llappearancemgr.h
parent5acf8a5f13e064fcfb5d8fbd42e631a18244a674 (diff)
completed EXT-6719 Utilize the "description" field of outfit wearable links to store order information
- COF items get checked for correct ordering when COF is loaded (LLAppearanceMgr::updateAppearanceFromCOF..., LLAppearanceMgr::updateClothingOrderingInfo() ), and also when COF is saved to a new outfit, base outfit. - wearables are arranged in LLAgentWearables in a proper order * updateClothingOrderingInfo() [struggling with naming] does integrity checking and updates "invalid" items (items with wrong, gapped descriptions) * moved LLAgentWearables::makeNewOutfitLinks(...) and LLShowCreatedOutfit to a more natural place (llappearancemgr.cpp), because they use LLAppearanceMgr's methods a lot * changed link_inventory_item(...), added the "new_description" parameter Reviewed by Neal Orman at https://codereview.productengine.com/secondlife/r/268/ --HG-- branch : product-engine
Diffstat (limited to 'indra/newview/llappearancemgr.h')
-rw-r--r--indra/newview/llappearancemgr.h11
1 files changed, 11 insertions, 0 deletions
diff --git a/indra/newview/llappearancemgr.h b/indra/newview/llappearancemgr.h
index 7e35919892..efb5274c5b 100644
--- a/indra/newview/llappearancemgr.h
+++ b/indra/newview/llappearancemgr.h
@@ -138,12 +138,23 @@ public:
//Remove clothing or detach an object from the agent (a bodypart cannot be removed)
void removeItemFromAvatar(const LLUUID& item_id);
+
+ LLUUID makeNewOutfitLinks(const std::string& new_folder_name);
+
protected:
LLAppearanceMgr();
~LLAppearanceMgr();
private:
+ typedef std::vector<LLInventoryModel::item_array_t> wearables_by_type_t;
+
+ //Divvy items into arrays by wearable type
+ static void divvyWearablesByType(const LLInventoryModel::item_array_t& items, wearables_by_type_t& items_by_type);
+
+ //Check ordering information on wearables stored in links' descriptions and update if it is invalid
+ void updateClothingOrderingInfo();
+
void filterWearableItems(LLInventoryModel::item_array_t& items, S32 max_per_type);
void getDescendentsOfAssetType(const LLUUID& category,