Age | Commit message (Collapse) | Author |
|
Resolved conflicts in llpaneloutfitedit.cpp
--HG--
branch : product-engine
|
|
eidt)
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
|
|
--HG--
branch : product-engine
|
|
Removed code from LLPanelOutfitEdit::onOpen and move it to LLPanelOutfitEdit::onVisibilityChange (as suggested by Nyx Linden at http://jira.secondlife.com/browse/EXT-7984).
Reviewed by Vadim Savchuk at https://codereview.productengine.com/secondlife/r/694/
--HG--
branch : product-engine
|
|
folder/list view modes
- Created callback called 'SaveSelecton' (which preserves selection while switching between folder/list view modes) for folder/list view modes buttons in LLPanelOutfitEdit.
- Added 'scrollToShowFirstSelectedItem' method in the LLFlatListView which scrools and shows the first selected item in case multiselection.
- It's possible to set selection for flat list view items before list is build. The result is that any items will be selected. To get rid of it:
1. Overrided LLFlatListView::selectItemByValue method in LLInventoryItemsList so that if list is not created yet, items ids are saved to the vector.
2. Added 'LLInventoryItemsList::updateSelection()' method which selects items with ids from that vector when list is created.
- A little refactoring: moved funcionality of updating WearablesPanel's verb buttons to the separate method called LLPanelOutfitEdit::updateWearablesPanelVerbButtons() to made code more readable and self-explanatory
Reviewed by Vadim Savchuk and Neal Orman at https://codereview.productengine.com/secondlife/r/579/
--HG--
branch : product-engine
|
|
- Added new gear menu when 'Add Wearable' panel is open in 'Edit Outfit'.
- Added wearable items list comparator to sort by wearable creation date.
- Added storing sorting type in viewer settings.
Reviewed by Neal Orman at https://codereview.productengine.com/secondlife/r/661/.
--HG--
branch : product-engine
|
|
multi-selection).
Reviewed by Neal Orman and Mike Antipov at https://codereview.productengine.com/secondlife/r/640/
--HG--
branch : product-engine
|
|
"Add more" panel (Edit Outfit)
Reviewed by Mike Antipov at https://codereview.productengine.com/secondlife/r/626/
--HG--
branch : product-engine
|
|
Reviewed by Neal Orman at https://codereview.productengine.com/secondlife/r/617
--HG--
branch : product-engine
|
|
in "My Outfits" & "Edit Outfit" Panels.
EXT-7929 FIXED Updated functionality of attaching object: loading indicator gets hidden when attaching is completed.
- Fixed crash when accessing singleton on application exit.
- Updated functionality of attaching object: loading indicator was not hidden.
* Reason: link to attachment was created without next appearance updating.
* Fix: passed "true" into LLAppearanceMgr::addCOFItemLink to call LLAppearanceMgr::updateAppearanceFromCOF when attachments is completed. (Like for clothing).
Reviewed by Vadim Savchuk at https://codereview.productengine.com/secondlife/r/611/
--HG--
branch : product-engine
|
|
description
- Added method LLAccordionCtrl::getExpandedTab() which search for the first expanded accordion tab. This method is a bit of hacking, but I discussed it with Vadim Savchuk.
- LLAccordionCtrlTab::isExpanded() is made 'const'. This is necessary to call it from getExpandedTab() which is also 'const'.
- Added all provided Marketplace URLs (taken from EXT-7257) to the settings.xml. So URLs can be configured without recompilation.
- Added method LLCOFWearables::getSelectedItems() which can be used to get ALL selected items (not only one).
- Class LLShopURLDispatcher is implemented in the llpaneloutfitedit.cpp.
- Added callback LLPanelOutfitEdit::onShopButtonClicked() which calls LLShopURLDispatcher to send user to the correct URL.
- Added shop button (shop_btn) widget in panel_outfit_edit.xml. It has invalid icon for now. After review I'm going to reassign the ticket to someone who will provide correct icons.
Reviewed by Vadim Savchuk and Mike Antipov at https://codereview.productengine.com/secondlife/r/569/
--HG--
branch : product-engine
|
|
- added a separate filter combobox for the list view containing lots of items, all types of wearables, separated clothing and bodyparts items
- comboboxes are linked to the appropriate view, only one is shown
- got rid of excluding links in the folder view
- minor refactoring
Reviewed by Mike Antipov at https://codereview.productengine.com/secondlife/r/573/
--HG--
branch : product-engine
|
|
according to the current user's selection
- added filtering add wearables panel (list and folder views) according to the current user's selection (rules for showing a particular view and setting a particular filtering are specified in the table at https://jira.secondlife.com/browse/EXT-7577)
- minor refactoring
Reviewed by Neal Orman at https://codereview.productengine.com/secondlife/r/534/
--HG--
branch : product-engine
|
|
panel status.
1 published LLCOFObserver as LLOutfitObserver(moved from llpaneloutfitedit.cpp to lloutfitobserver.h)
2 decoupled outfit edit panel and observer by replacing pointer to panel with signals and made observer as singleton
3 moved call of LLAppearanceMgr::getInstance()->updateIsDirty() from outfit edit panel to observer(discussed with IB)
4 modified updating of combo button state on outfit panel using LLOutfitObserver
5 modified refresh of outfit name and status on outfit change event using LLOutfitObserver
6 removed unnecessary LLWatchForOutfitRenameObserver that caused excessive updates of outfit panel status name
--HG--
branch : product-engine
|
|
- Hooked up Wear / Take off / Rename / Delete items in the My Outfits gear menu.
- Added "Create new..." to body part / clothing context menu in Edit Outfit.
- Added "Create new..." submenus to the Edit Outfit gear menu.
- Disabling the "Take Off" menu item of the clothing context menu in the Edit Outfit panel when it's irrelevant.
Reviewed by Nyx at https://codereview.productengine.com/secondlife/r/494/
--HG--
branch : product-engine
|
|
- relocated Add button (required substantial layout_stacks repositioning)
- got rid of switch/shop buttons
- reverted addition of adaptors for (accordion tabs/list view) inline button bars
* failed to get rid of an empty space above bottom bars when "add wearables panel" is invisible
(due to bug in the layout stack, when border is still drawn below layout panel which is only one visible)
https://jira.secondlife.com/secure/attachment/39854/empty+space+.jpg
Reviewed by Mike Antipov at https://codereview.productengine.com/secondlife/r/481/
--HG--
branch : product-engine
|
|
- Removed extra gear button bar from "Edit Outfit" panel.
- Added one more dummy icon to "Add Wearable" panel button bar to chose the right dummy depending on the "Add Wearable" panel visibility.
Reviewed by Vadim Savchuk https://codereview.productengine.com/secondlife/r/473/
--HG--
branch : product-engine
|
|
spec.
* moved logic related to combo button from LLPanelOutfitEdit to LLSaveOutfitComboBtn class;
* used LLSaveOutfitComboBtn class in LLPanelOutfitsInventory;
reviewed by Neal Orman at https://codereview.productengine.com/secondlife/r/459/
--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
|
|
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
|
|
replacing/wearing outfit externally (my inventory)
Reviewed by Neal Orman and Mike Antipov
--HG--
branch : product-engine
|
|
menu and made it open the shape editing panel.
Again, as in EXT-7241, I tried to improve the way the appearance panels (outfits / edit outfit / edit wearables) are switched, this time aiming to eliminate redundant time-consuming operations (fetches/updated/etc).
I'm not particularly satisfied with the resulting code but it seems to work. A better solution might be to wrap the panels with LLSideTrayPanelContainer.
Additional minor changes:
- Fixed unsafe pointer cast in LLSidepanelAppearance::editWearable().
- Removed redundant onEditOutfitButtonClicked() and onEditWearBackClicked() methods from LLSidepanelAppearance.
Reviewed by Nyx at https://codereview.productengine.com/secondlife/r/395/
--HG--
branch : product-engine
|
|
in Outfit Editor)
- HandleDragAndDrop() method was overridden in the LLPanelOutfitEdit class to handle drag and drop operations of the Clothing, Body Parts and Attachments.
- In panel_outfit_edit.xml parameter allow_multi_select was set to true to allow multiple selections.
- Added class LLCOFDragAndDropObserver to implement the drag and drop.
- Class LLInventoryMoveFromWorldObserver renamed to LLInventoryAddItemByAssetObserver.
Drag and drop reimplemented using functionality of the LLInventoryAddItemByAssetObserver.
Reviewed by Neal Orman and Mike Antipov at https://codereview.productengine.com/secondlife/r/373/
--HG--
branch : product-engine
|
|
- Insert filter editor and inventory panels into layout_stack
- restored filter functionality for a list view
- added proper switching between flat list view and folder list view
- made a little optimization: got rid of redundant findChild calls because of childSetVisible(..., childGetValue(...));
Reviewed by Mike Antipov at https://codereview.productengine.com/secondlife/r/362/
--HG--
branch : product-engine
|
|
oufit changes
--HG--
branch : product-engine
|
|
wearables order changes)
- added observing changes in the COF (based on version changes of the COF category, COF's version is also updated when order of COF items is changed)
- got rid of outfit fetcher, cause the only used outfit is COF which is always in a fetched state
- minor cleanup
Reviewed by Mike Antipov and Neal Orman at https://codereview.productengine.com/secondlife/r/356/
--HG--
branch : product-engine
|
|
By the way, removed "Add to outfit" and "Remove from outfit" buttons from the Edit Outfit panels.
--HG--
branch : product-engine
|
|
"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
|
|
"clothing" accordion tab of outfit editor
Initial implementation (no sorting, no grayed items from Base outfit)
Reviewed by Mike Antipov at https://codereview.productengine.com/secondlife/r/322
--HG--
branch : product-engine
|
|
--HG--
branch : product-engine
|
|
- added functionality to change order of wearables
- added ad-hoc up and down buttons on a button bar ("up" means closer to the body) - https://jira.secondlife.com/secure/attachment/38464/screenshot-1.jpg
- added displaying wearables as sorted by order on the Edit Outfit panel (top list)
Reviewed by Neal Orman at https://codereview.productengine.com/secondlife/r/280/
--HG--
branch : product-engine
|
|
inventory for "add wearables" panel of outfit editor
1. Modified LLInventoryItemsList - implemented delayed item construction. Items are added during draw, not more than 50 items will be added in single draw. This lets us reduce system overload during multiple panel construction.
2. Implemented LLFilteredWearableListManager to populate inventory flat list with data. This class filters entire inventory according to specified filter and populates specified inventory list with data.
3. Created LLCommonUtil::computeDifference() to avoid code copy-pasting(will use it in all appropriate places in next review request)
Reviewed by Mike Antipov - https://codereview.productengine.com/secondlife/r/301/
--HG--
branch : product-engine
|
|
Clothes/Body, Objects, All) on Add to Outfit subpanel
Reviewed by Neal Orman at https://codereview.productengine.com/secondlife/r/221/
--HG--
branch : product-engine
|
|
avatar (from COF)
Trash button removes from avatar a selected item only of "clothing" and "object" types
Reviewed by Neal Orman at https://codereview.productengine.com/secondlife/r/209/
--HG--
branch : product-engine
|
|
Current Outfit (Edit Outfit panel)
Added temporary PLUS button on the button bar under the top list of Edit Outfit panel
Reviewed by Neal Orman at https://codereview.productengine.com/secondlife/r/203/
--HG--
branch : product-engine
|
|
Implemented "Save", "Save as new" functionality. If the base outfit doesn't exist "Save as new" functionality is employed
Reviewed by Neal Orman at https://codereview.productengine.com/secondlife/r/179
--HG--
branch : product-engine
|
|
the Current Outfit system folder
reviewed at https://codereview.productengine.com/secondlife/r/159/
--HG--
branch : product-engine
|
|
Outfit: Clean up XUI to allow all elements to fit properly in the panel
Reviewed by Neal Orman at https://codereview.productengine.com/secondlife/r/143/
--HG--
branch : product-engine
|
|
renamed panel_look_info.xml to panel_outfit_edit.xml
renamed llpanellookinfo.cpp/llpanellookinfo.h to llpaneloutfitedit.cpp/llpaneloutfitedit.h
renamed LLPanelLookInfo to LLPanelOutfitEdit
Reviewed at https://codereview.productengine.com/secondlife/r/130/
--HG--
branch : product-engine
|