Age | Commit message (Collapse) | Author |
|
- Wearable list items filter now searches sub-string in whole item title including (worn) suffix.
- Removed (worn) indication from items which don't need it in Edit Outfit. Only worn items can be edited there.
- Added null pointer checks for inventory item member of LLPanelInventoryListItemBase class and its descendants.
Reviewed by Vadim Savchuk https://codereview.productengine.com/secondlife/r/551/.
--HG--
branch : product-engine
|
|
context menu.
We can now distinguish LLWearableItemsList instances used in My Outfits
from the one used in the Add Wearable panels, and show/enable different menu items for them.
Being limited in time, I implemented this via a XUI parameter called "standalone":
the Add Wearable list is standalone, the others aren't.
Although it would be of course more flexible to have separate subclasses.
--HG--
branch : product-engine
|
|
- Added (worn) suffix to indicate worn item of LLPanelInventoryListItemBase type (all flat list items in Appearance panel).
- Used LLOutfitObserver for updating (worn) suffix when user wears an item from My Outfits list.
- Added updating only items and links to items with specific UUIDs in LLWearableItemsList.
Reviewed by Vadim Savchuk https://codereview.productengine.com/secondlife/r/551/
--HG--
branch : product-engine
|
|
Reviewed by Neal Orman at https://codereview.productengine.com/secondlife/r/514
--HG--
branch : product-engine
|
|
- Made slight changes in xml according to requirements.
- Added mForceNoLinksOnIcons bool member to LLPanelInventoryListItemBase. It is used in LLPanelWearableListItem to disable showing of link icons as
was requested in ticket.
- Created icon for divider 3 pixels high as asked by Erica in EXT-7233. To properly show and hide it made changes to LLCOFWearables::buildClothingListItem
which now not only showes separator but also reshapes panel depending on its visibility. Increased heights of body parts, dummy clothing and attachment items because
dividers are now 2 pxls higher and they always have dividers. Changed heights of buttons accordingly.
Reviewed by Neal Orman at https://codereview.productengine.com/secondlife/r/502/
--HG--
branch : product-engine
|
|
Done:
- Implemented creating new wearables via My Outfits gear menu.
- Implemented renaming/removing/editing an outfit via My Outfits context menu.
- Implemented "Attach to..." / "Attach to HUD..." context submenus.
- Now disabling (instead of hiding) irrelevant wearable context menu items.
- Added "Take Off / Detach" context menu item that's shown for clothes and attachments.
Useful if you selected a bunch of items and want to take them all off.
- Fixed taking off an outfit
(not all wearables were taken off because of a wrong inventory collector).
- Fixed crash when editing a skirt
(reference to a missing string).
- In LLWearableItemsList::ContextMenu::updateItemsVisibility renamed variables
and introduced MASK_UNKNOWN per Nyx's request.
Known issues:
- "Attach to..." context menus may be displayed partially off-screen
(there is the same bug in the inventory panel).
- The way we invoke wearable editing panel after the wearable gets created
is currently a hack.
TODO:
- Wear / take off / rename / delete an outfit via My Outfits gear menu
(currently not implemented because of missing selection support in My Outfits).
- Add "Create new..." to body part / clothing context menu in Edit Outfit.
- Add "Create new..." submenus to the Edit Outfit gear menu.
Reviewed by Nyx at https://codereview.productengine.com/secondlife/r/466/
--HG--
branch : product-engine
|
|
- Added outfit list item with double click support.
- Added wearing/detaching single item on double click.
- Added replacing current outfit with an outfit from double clicked accordion tab.
Reviewed by Neal Orman at https://codereview.productengine.com/secondlife/r/493/.
--HG--
branch : product-engine
|
|
items and by selecting 'Replace' menu item click body part context menu
Main changes:
- Added callback for a '(+) button' to the LLCOFCallbacks and bind it with LLPanelOutfitEdit::onAddWearableClicked
- Created the callback(LLPanelOutfitEdit::onReplaceBodyPartMenuItemClicked) for 'Replace' menu item of context menu
Related changes:
- Changed LLFilteredWearableListManager so that it can use different functors (subclasses of LLInventoryCollectFunctor) as a criterion for LLInventoryItemsList filtering. Before it used only LLFindNonLinksByMask filter. Moved LLFindNonLinksByMask from to the llfilteredwearablelist.cpp to the llinventoryfunctions.h
- Created getter 'LLPanelDummyClothingListItem::getWearableType()' for LLPanelDummyClothingListItem
- Made 'add wearables panel' a member of LLPanelOutfitEdit so that not to use findChild each time panel is needed
Reviewed by Igor Borovkov at http://jira.secondlife.com/browse/EXT-7472
--HG--
branch : product-engine
|
|
Reviewed by Mike Antipov and Nyx at https://codereview.productengine.com/secondlife/r/428/
--HG--
branch : product-engine
|
|
Shared code with avatar lists context menus.
Reviewed by Mike Antipov and Nyx at https://codereview.productengine.com/secondlife/r/415/
--HG--
branch : product-engine
|
|
- Moved wearable item name comparator from llcofwearables to llwearableitemslist.
- Added wearable item type comparator.
- Added item type and description getters to wearable item base class LLPanelInventoryListItemBase.
Reviewed by Mike Antipov at https://codereview.productengine.com/secondlife/r/407/
--HG--
branch : product-engine
|
|
added a deletable wearable item, predecessor of a clothing item, which is used for attachment items
Reviewed by Neal Orman and Mike Antipov at https://codereview.productengine.com/secondlife/r/377
--HG--
branch : product-engine
|
|
--HG--
branch : product-engine
|
|
oufit changes
--HG--
branch : product-engine
|
|
Name change LLWearableDictionary.h to LLWearableType.h.
|
|
Refactored LLWearableDictionary to look more like LLAssetType/LLFolderType/etc. in terms of code design. This required a lot of superficial changes across many files. Overall functionality has not changed.
|
|
"clothing" accordion tab of outfit editor
* reimplemented button bars as static panels not as list items (creating accordion - button bar - list view - adaptor/container)
* added management of items' buttons assording to inventory items' states
* assigned actions to clothing/bodyparts items' buttons
* got rid of separators as distinct items and made them as part of items
* removed ad-hoc up/down buttons
* removed "+" button from a button bar
Reviewed by Mike Antipov at https://codereview.productengine.com/secondlife/r/322
--HG--
branch : product-engine
|
|
for unworn wearable types)
Added new wearable list item - LLPanelDummyClothingListItem for not worn wearable types, it displays grayed wearable type icon, grayed
title '<clothing type> not worn' and 'add' button.
Modified base class to be more flexible.
Moved init() to protected section.
Modified COF panel to use dummy item.
Reviewed by Mike Antipov - https://codereview.productengine.com/secondlife/r/335/
--HG--
branch : product-engine
|
|
and put proper icon on it
Replaced LLPanelInventoryListItem with LLPanelInventoryListItem. This class is capable of showing widgets on left and right sides of panel.
Implemented LLPanelClothingListItem and LLPanelBodyPartListItem - makes use of new LLPanelInventoryListItem and is able to show buttons specified in tickets. Buttons are
shown on mouse_enter event and hidden on mouse_leave event. Buttons are - delete, move up, move down, lock, edit. It's item's user responsibility
to control buttons visibility.
Made LLInventoryItemsList::addNewItem virtual to allow inheritors create specific(non-default) items.
Reviewed by Mike Antipov - https://codereview.productengine.com/secondlife/r/325/
--HG--
branch : product-engine
|
|
appearance sidebar (tier 1)
llui:
- Setting container panel for accordion tab control to dynamically add tabs to accordions.
- Added method to dynamically remove accordion tabs.
- Added LLIconCtrl image setter.
newview:
- Class LLOutfitsList - a list of agents's outfits from "My Outfits" inventory category which represents each outfit by an accordion tab with a list of items inside it.
- Class LLWearableItemsList - a list of wearable items used in each accordion tab of "My Outfits" tab.
- Class LLInventoryItemsList - a base class for LLWearableItemsList that represents inventory items by panels in LLFlatListView.
- Class LLPanelInventoryItem - inventory item representation for a flat list. Item icon is set according to item type.
- Class LLInventoryCategoriesObserver - an observer used in LLOutfitsList for monitoring changes to "My Outfits" inventory category and updating outfits accordion tabs and list of items for each outfit.
Reviewed by Mike Antipov https://codereview.productengine.com/secondlife/r/285/
--HG--
branch : product-engine
|
|
"my outfits" tab in top-level appearance sidebar (tier 1)
llui:
- Setting container panel for accordion tab control to dynamically add tabs to accordions.
- Added method to dynamically remove accordion tabs.
- Added LLIconCtrl image setter.
newview:
- Class LLOutfitsList - a list of agents's outfits from "My Outfits" inventory category which represents each outfit by an accordion tab with a list of items inside it.
- Class LLWearableItemsList - a list of wearable items used in each accordion tab of "My Outfits" tab.
- Class LLInventoryItemsList - a base class for LLWearableItemsList that represents inventory items by panels in LLFlatListView.
- Class LLPanelInventoryItem - inventory item representation for a flat list. Item icon is set according to item type.
- Class LLInventoryCategoriesObserver - an observer used in LLOutfitsList for monitoring changes to "My Outfits" inventory category and updating outfits accordion tabs and list of items for each outfit.
Known issues:
- Only first outfit tab is displayed in "My Outfits" until this tab is expanded.
- Bottom bar buttons and filter field not functioning for "My Outfits" tab since LLOutfitsList still doesn't support selection, filtering and sorting.
- "My Outfits" and "Wearing" tabs of "Appearance" side panel might need a common interface to use LLOutfitsList and LLinventoryPanel as tabs in LLPanelOutfitsInventory or "Wearing" tab should be replaces with LLOutfitsList class object i.e. a flat list.
On review - https://codereview.productengine.com/secondlife/r/285/
--HG--
branch : product-engine
|