diff options
author | Nat Goodspeed <nat@lindenlab.com> | 2010-06-21 12:20:24 -0400 |
---|---|---|
committer | Nat Goodspeed <nat@lindenlab.com> | 2010-06-21 12:20:24 -0400 |
commit | f17623d8c67a10c2d7547e40ac8442c703d107ed (patch) | |
tree | 2ae37385da280a758a66e920f9bdb317dcde59ee /indra/newview/lloutfitslist.h | |
parent | 4e538adca41d486125c3b887ce694c457bcab157 (diff) | |
parent | bef22c0325cbfeb3d290753a66ecf862bf4593d3 (diff) |
Automated merge with ssh://192.168.2.107/c:/linden/viewer-release/
Diffstat (limited to 'indra/newview/lloutfitslist.h')
-rw-r--r-- | indra/newview/lloutfitslist.h | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/indra/newview/lloutfitslist.h b/indra/newview/lloutfitslist.h index 5605044f41..df65f7187b 100644 --- a/indra/newview/lloutfitslist.h +++ b/indra/newview/lloutfitslist.h @@ -83,6 +83,9 @@ public: void refreshList(const LLUUID& category_id); + // highlits currently worn outfit tab text and unhighlights previously worn + void highlightBaseOutfit(); + void performAction(std::string action); void setFilterSubString(const std::string& string); @@ -91,6 +94,11 @@ public: boost::signals2::connection addSelectionChangeCallback(selection_change_callback_t cb); + /** + * Returns true if there is a selection inside currently selected outfit + */ + bool hasItemSelected(); + private: /** * Reads xml with accordion tab and Flat list from xml file. @@ -120,6 +128,18 @@ private: void setSelectedOutfitUUID(const LLUUID& category_id); /** + * Removes the outfit from selection. + */ + void deselectOutfit(const LLUUID& category_id); + + /** + * Try restoring selection for a temporary hidden tab. + * + * A tab may be hidden if it doesn't match current filter. + */ + void restoreOutfitSelection(LLAccordionCtrlTab* tab, const LLUUID& category_id); + + /** * Called upon list refresh event to update tab visibility depending on * the results of applying filter to the title and list items of the tab. */ @@ -130,6 +150,13 @@ private: */ void applyFilter(const std::string& new_filter_substring); + /** + * Applies filter to the given tab + * + * @see applyFilter() + */ + void applyFilterToTab(const LLUUID& category_id, LLAccordionCtrlTab* tab, const std::string& filter_substring); + void onAccordionTabRightClick(LLUICtrl* ctrl, S32 x, S32 y, const LLUUID& cat_id); void onWearableItemsListRightClick(LLUICtrl* ctrl, S32 x, S32 y); void onCOFChanged(); @@ -148,6 +175,8 @@ private: wearables_lists_map_t mSelectedListsMap; LLUUID mSelectedOutfitUUID; + // id of currently highlited outfit + LLUUID mHighlightedOutfitUUID; selection_change_signal_t mSelectionChangeSignal; std::string mFilterSubString; @@ -159,6 +188,10 @@ private: LLListContextMenu* mOutfitMenu; bool mIsInitialized; + /** + * True if there is a selection inside currently selected outfit + */ + bool mItemSelected; }; #endif //LL_LLOUTFITSLIST_H |