- Added xml for a new floater Appearance and registred it in the floaterreg
- Removed side tray dependencies
- Added static helper method: LLFloaterSidePanelContainer::getPanel
Added confirmation dialog before deleting outfit from context menu and gear menu button of My Appearance -> My Outfits
- Deleted method that shows confirmation dialog in LLPanelOutfitsInventory. Moved it to the LLOutfitsList. Now confirmation dialog called before calling LLOutfitsList::removeSelected.
- Replaced native methods of deleting outfit in gear menu and context menu with LLOutfitsList::removeSelected.
- Changed type of gear menu buttons from LLButton to LLMenuButton in all sidebar panels where gear menu button is used.
- Added setMenuPosition(), setMenu() and updateMenuOrigin() to the LLMenuButton.
- Moved actions common for displaying a context menu to LLMenuButton::toggleMenu().
- In all sidebar panels where LLButton was replaced with LLMenuButton the following steps were taken:
1. setting gearMenu and its position relative to the menuButton with LLMenuButton::setMenu()
2. setting mouse down callback for the menuButton if needed.
3. calculating the menu origin point with LLMenuButton::updateMenuOrigin() in mouse down callback
- Fixed condition for enabling the Wear button in My Outfits.
- The button was always enabled when when COF change completes, I fixed that as well.
Reviewed by Mike Antipov at https://codereview.productengine.com/secondlife/r/800/
--HG--
branch : product-engine
- Added new notification which appears when trash button in "My Outfits" is clicked. Used it in code to only delete outfits if OK is selected.
Reviewed by Vadim Savchuk at https://codereview.productengine.com/secondlife/r/695/
--HG--
branch : product-engine
- Added check to LLPanelOutfitsInventory::updateListCommands() which takes place on selection change and depending on hasItemSelected() sets tooltip for "Wear" button.
Reviewed by Neal Orman at https://codereview.productengine.com/secondlife/r/665/
--HG--
branch : product-engine
Note: MY OUTFITS and WEARING controls size/positions were corrected to be similar to Places and Inventory.
Reviewed by Mike Antipov and Neal Orman at https://codereview.productengine.com/secondlife/r/650/
--HG--
branch : product-engine
- Added wearSelectedItems() method to LLOutfitsList which wears all items selected in outfit lists (if possible- adds, else replaces).
It is called when clicking wear if there is selection of individual items(LLOutfitsList::hasItemSelected() returns true). Otherwise
whole outfit is worn.
Reviewed by Neal Orman at https://codereview.productengine.com/secondlife/r/638
--HG--
branch : product-engine
- Added common interface for My Outfits and Wearing tabs.
- Changed LLPanelOutfitsInventory to use common interface for My Outfits and Wearing tabs.
- Removed dependency on outfits side panel from inventory bridge context menus.
- Removed unused LLShowCreatedOutfit class from llagentwearables.cpp.
- Restored opening newly created outfit in My Outfits tab.
- Fixed worn items indication for Wearing tab items.
Revieved by Neal Orman at https://codereview.productengine.com/secondlife/r/604/.
--HG--
branch : product-engine
* Empty string is replaced with "Changing outfits" while changing COF;
* Fixed title to show "No Outfit" after an outfit from the Inventory is worn;
* Fixed bug with visible indicator after an empty folder is DnD from the Inventory "Clothing"
* Updated context and Gear "Wear..." menu items to take into account "isCOFChangeInProgress" state in on_enable callbacks
Reviewed by Neal Orman at https://codereview.productengine.com/secondlife/r/625/
--HG--
branch : product-engine
- Added bool mItemSelected variable and getter for it to determine if the selection inside outfit exists, and used it when determining whether to enable "Trash" button in My Outfits.
Reviewed by Vadim Savchuk and Neal Orman at https://codereview.productengine.com/secondlife/r/600/
--HG--
branch : product-engine
Work on "Take Off - Remove from Current Outfit" and "Wear - Add to Current Outfit" menu options:
- The menu items of the outfit context menu and the My Outfits gear menu are now disabled
when inappropriate instead of being hidden.
- The menu items get enabled/disabled depending on whether you can wear (take off) anything from the selected outfit.
(was: depending on whether you're wearing the outfit)
- Changed the way the options work: they now only operate on clothes and attachments.
"Add to COF" now only adds those body parts that are missing in COF;
"Remove from COF" doesn't touch body parts at all.
Without this change both "Add" and "Remove" options would be available simultaneously, because
any valid outfit contains body parts. I think that would be confusing.
And you don't expect you body parts to be replaced when doing "Add to COF'. (that's addition, not replacement)
Reviewed by Mike Antipov at https://codereview.productengine.com/secondlife/r/585/
--HG--
branch : product-engine
Implementation details:
* Added flag to LLAgentWearables to determining that outfit is changing. Synchronizing it with mLoadingStartedSignal and mLoadedSignal signals.
* Check this flag when there is no outfit set to show empty title when outfit is being changed.
* Also updated condition to disable "Wear" button when outfit is being changed.
Additional improvements:
* Removed reference to parent LLSidepanelAppearance from the LLPanelOutfitsInventory.
* Now LLSidepanelAppearance is subscribed to mLoadingStartedSignal and mLoadedSignal to update its loading indicator.
Known Issue:
* When new outfit is being worn its name is shown in title for a short moment (loading indicator is shown at this time). Then it is changed with an empty title and is shown when outfit is already worn.
If necessary it should be investigated and fixed in scope of another issue.
Reviewed by Vadim Savchuk at https://codereview.productengine.com/secondlife/r/593/
--HG--
branch : product-engine
Details:
* Added signal "Wearable Loading Started" in AgentWearables (in parallel with "Wearables Loaded")
* Now it is raised from the LLAppearanceMgr::wearInventoryCategory.
Reviewed by Vadim Savchuk and Neal Orman at https://codereview.productengine.com/secondlife/r/583/
--HG--
branch : product-engine
Also fixed some issues in accordion caused by removing My Outfits content via Inventory:
- updated accordion's help text to not shown nothing if there are no any tabs and filter substring is empty.
- added check of necessity to show help text when accordion "arrange"
Reviewed by Vadim Savchuk at https://codereview.productengine.com/secondlife/r/568/
--HG--
branch : product-engine
* Made the "Wear" and "Take Off" items mutually exclusive (i.e. only one of them is now shown).
* Hide all context-dependant items ("Wear", "Take off", "Rename", "Delete") when no outfit selected.
Reviewed by Mike Antipov at https://codereview.productengine.com/secondlife/r/566/
--HG--
branch : product-engine
The "Create new clothes / body parts" menu items are always enabled because they have no on_enable callback set.
Reviewed by Mike Antipov at https://codereview.productengine.com/secondlife/r/548/
--HG--
branch : product-engine
- Now it's enabled when the "Delete Outfit" context menu item is enabled.
- It actually deletes the selected outfits.
Known out-of-scope issues:
- The trash button is sometimes enabled when the WEARING tab is active.
- The check whether an outfit can be removed is probably wrong.
There is a separate ticket (EXT-7716) for that.
Reviewed by Mike Antipov at https://codereview.productengine.com/secondlife/r/550/
--HG--
branch : product-engine
1 Added functionality for locking outfit in LLAppearanceMgr. Outfit should be locked when outfit related operation is started(now it is used for updateBaseOutfit) and unlocked when operation completed or timeout is exceeded.
2 Added outfit saved and outfit lock changed signals to LLOutfitObserver.
3 Updated LLPanelOutfitsInventory and LLPanelOutfitEdit with functionality of controlling 'save outfit' controls state('save outfit' controls should be enabled only if outfit isn't locked and outfit is dirty).
4 Renamed action label of method LLPanelOutfitsInventory::isActionEnabled "make_outfit" to "save_outfit".
--HG--
branch : product-engine
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
* LLOutfitsList is not Inventory Observer anymore
* Content is fetched in onOpen now
* Added call of the LLOutfitsList::onOpen when "My Outfits" tab is switched on in My Appearance panel
Reviewed by Brad Payne at https://codereview.productengine.com/secondlife/r/456/
--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