- Modified LLWearableItemTypeNameComparator so that it can be more reusable and adjustable
- Set LLWearableItemTypeNameComparator for WearableItemsList ('List view' of 'Add More' panel) due to sort clothings by name
- Modified and applied patch form https://codereview.productengine.com/secondlife/r/620/diff/2/#index_header. This patch was discarded because specification was changed
Restored diff after bad merge at 13817
Reviewed by Vadim Savchuk at https://codereview.productengine.com/secondlife/r/765/
--HG--
branch : product-engine
- Added selected item type (in flat list view) as criterion when determining filter type in 'Add More' panel
- Fixed LLAccordionCtrl::getSelectedTab() method. When 'selection_enabled = false' for LLAccordionCtrlTab, LLAccordionCtrl::getSelectedTab() returned NULL, even if some accordion tab was selected. Now it's OK. Method returns currently selected LLAccordionCtrlTab.
Recovered from bad merge in 13811
Reviewed by Richard Nelson at https://codereview.productengine.com/secondlife/r/790/
--HG--
branch : product-engine
- Replaced pointers passed to 'Add More' gear menu with LLHandle.
- Removed storing 'Add More' panel sort order from settings because the order is changed each time the panel opens.
- Replaced creating items comparator in LLPanelOutfitEdit::postBuild() with a static comparator in llwearableitemslist.cpp.
Reviewed by Vadim Savchuk at https://codereview.productengine.com/secondlife/r/826/.
--HG--
branch : product-engine
Reason:
When you click on a clothing link in COF, LLAppearanceMgr::wearItemOnAvatar() removes
all COF links of the clicked wearable type -- thus invalidating all previously
obtained LLViewerInventoryItems for those links -- and then passes such an
invalid item (item_to_wear) to addCOFItemLink() which of course crashes.
Fix:
1. Handle this case in wearItemOnAvatar(): don't try wearing COF items.
2. Disable the Wear button in the inventory SP when a COF item is selected.
3. Fixed get_can_item_be_worn() to return FALSE for items which are in COF or have links in COF.
Reviewed by Nyx at https://codereview.productengine.com/secondlife/r/811/
--HG--
branch : product-engine
- Added selected item type (in flat list view) as criterion when determining filter type in 'Add More' panel
- Fixed LLAccordionCtrl::getSelectedTab() method. When 'selection_enabled = false' for LLAccordionCtrlTab, LLAccordionCtrl::getSelectedTab() returned NULL, even if some accordion tab was selected. Now it's OK. Method returns currently selected LLAccordionCtrlTab.
Reviewed by Mike Antipov, Neal Orman and Richard Nelson at https://codereview.productengine.com/secondlife/r/790/
--HG--
branch : product-engine
Details:
1 Updated condition is item can be worn considering situation when item is copied in COF but is not worn.
2 Avoided code duplication in method LLOutfitsList::canWearSelected()
reviewed by Vadim Savchuk and Neal Orman at https://codereview.productengine.com/secondlife/r/785/
--HG--
branch : product-engine
Added missed (during bad merge 14077:5b5cc4a8642d) code to the llpanloutfitedit(.h/.cpp):
recover LLPanelOutfitEdit::updateWearablesPanelVerbButtons() and LLPanelOutfitEdit::saveListSelection() methods
Reviewed by Vadim Savchuk at https://codereview.productengine.com/secondlife/r/817/
--HG--
branch : product-engine
Now accordion on panels 'Edit Outfit', 'Editing Shape', 'Editing Hair', 'Editing Eyes', 'Editing Skin', 'Group Profile' and 'Place Profile' are reset when the panels are closed and then opened again.
Reviewed by Vadim Savchuk at https://codereview.productengine.com/secondlife/r/782/
--HG--
branch : product-engine
- Modified LLWearableItemTypeNameComparator so that it can be more reusable and adjustable
- Set LLWearableItemTypeNameComparator for WearableItemsList ('List view' of 'Add More' panel) due to sort clothings by name
- Modified and applied patch form https://codereview.productengine.com/secondlife/r/620/diff/2/#index_header. This patch was discarded because specification was changed
Reviewed by Mike Antipov and Vadim Savchuk at https://codereview.productengine.com/secondlife/r/765/
--HG--
branch : product-engine
Implemented the following behavior: \"if multiple selection is made in the Add More panel then default marketplace home URL can be used\".
Reviewed by Vadim Savchuk at https://codereview.productengine.com/secondlife/r/769/
--HG--
branch : product-engine
- Set proper callback for 'Replace' clothing
- Renamed onReplaceBodyPartMenuItemClicked to onReplaceMenuItemClicked because now this callback is used not only for Body Parts but for clothing also
- Added argument 'const LLUUID& item_id' for 'static void replaceWearable()' to be able to call onReplaceMenuItemClicked with LLUUID argument
Reviewed by Neal Orman at https://codereview.productengine.com/secondlife/r/750/
--HG--
branch : product-engine
added updating Plus button (Wear Item button) on COF changes (only when Edit Outfit panel is trully visible)
Reviewed by Vadim Savchuk at https://codereview.productengine.com/secondlife/r/742/
--HG--
branch : product-engine
- Fixed old market place URL to the new one in the settings.xml.
- Implemented the following feature: \"When Add More panel in focus selection inside it should supersede selection in accordions\". To achieve this:
-- LLPanelOutfitEdit::getCOFWearablesSelectionType() function was implemented.
-- LLPanelOutfitEdit::getAddMorePanelSelectionType() function was implemented.
-- LLPanelOutfitEdit::getWearableTypeByItemUUID(const LLUUID& item_uuid) function was implemented.
-- LLPanelOutfitEdit::onShopButtonClicked() was rewritten to use those functions.
- Fixed the problem with shop button and gender: now shop button for male leads to male links.
Reviewed by Vadim Savchuk and Neal Orman at https://codereview.productengine.com/secondlife/r/725/
--HG--
branch : product-engine
Every single delete/create operation in the COF causes LLCOFWearables to be updated - on each update its contained LLFlatListView is repopulated. That means massive creation of LLPanel's instances (LLUICtrlFactory::buildPanel(...)). Half of the panel creation time is spent in the EXPAT xml library on parsing the .xml files of the panel item.
I've forbidden updates of LLCOFWearables when Panel Outfit Edit is not in the visible chain. Panel Outfit Edit is now updated only when it is visible
Also LLCOFWearables refures to refresh its content if COF category version hasn't been changed since the last refresh.
Reviewed by Neal Orman at https://codereview.productengine.com/secondlife/r/715
--HG--
branch : product-engine
Made LLPanelOutfitEdit::onPlusBtnClicked() iterate over all selected items and wear each one. Also made it create one LLUpdateAppearanceOnDestroy and pass it to all calls to wearItemOnAvatar.
Add optional callback argument (as LLPointer) to wearItemOnAvatar, addCOFItemLink, LLDeferredCOFLinkObserver
Reviewed by Nyx at http://codereview.lindenlab.com/2482033
- added resetting lists selection on tabs state changes
- added committing on tab selection change
- added filtering wearables by at first by a selected tab and then by an expended tab
Reviewed by Vadim Savchuk at https://codereview.productengine.com/secondlife/r/696
--HG--
branch : product-engine