diff options
author | Mnikolenko Productengine <mnikolenko@productengine.com> | 2017-08-04 18:44:38 +0300 |
---|---|---|
committer | Mnikolenko Productengine <mnikolenko@productengine.com> | 2017-08-04 18:44:38 +0300 |
commit | ea152d0d0b795e062142ef824717639468c39af4 (patch) | |
tree | 68bcc4b8bf4f06628eb9d5f2060b2c5bda1f3f76 /indra/newview/llinventoryfilter.h | |
parent | 8c369771b560dc8e6e5a2a8bc466170e484964c5 (diff) |
SL-717 Additional search options for inventory window
Diffstat (limited to 'indra/newview/llinventoryfilter.h')
-rw-r--r-- | indra/newview/llinventoryfilter.h | 28 |
1 files changed, 27 insertions, 1 deletions
diff --git a/indra/newview/llinventoryfilter.h b/indra/newview/llinventoryfilter.h index eee36b7e40..01754ed023 100644 --- a/indra/newview/llinventoryfilter.h +++ b/indra/newview/llinventoryfilter.h @@ -57,7 +57,8 @@ public: FILTERTYPE_MARKETPLACE_INACTIVE = 0x1 << 7, // pass if folder is a marketplace inactive folder FILTERTYPE_MARKETPLACE_UNASSOCIATED = 0x1 << 8, // pass if folder is a marketplace non associated (no market ID) folder FILTERTYPE_MARKETPLACE_LISTING_FOLDER = 0x1 << 9, // pass iff folder is a listing folder - FILTERTYPE_NO_MARKETPLACE_ITEMS = 0x1 << 10 // pass iff folder is not under the marketplace + FILTERTYPE_NO_MARKETPLACE_ITEMS = 0x1 << 10, // pass iff folder is not under the marketplace + FILTERTYPE_WORN = 0x1 << 11, // pass if item is worn }; enum EFilterDateDirection @@ -82,6 +83,21 @@ public: SO_FOLDERS_BY_WEIGHT = 0x1 << 3, // Force folder sort by weight, usually, amount of some elements in their descendents }; + enum ESearchType + { + SEARCHTYPE_NAME, + SEARCHTYPE_DESCRIPTION, + SEARCHTYPE_CREATOR, + SEARCHTYPE_UUID + }; + + enum EFilterCreatorType + { + FILTERCREATOR_ALL, + FILTERCREATOR_SELF, + FILTERCREATOR_OTHERS + }; + struct FilterOps { struct DateRange : public LLInitParam::Block<DateRange> @@ -176,12 +192,17 @@ public: void setFilterUUID(const LLUUID &object_id); void setFilterWearableTypes(U64 types); void setFilterEmptySystemFolders(); + void setFilterWorn(); void setFilterMarketplaceActiveFolders(); void setFilterMarketplaceInactiveFolders(); void setFilterMarketplaceUnassociatedFolders(); void setFilterMarketplaceListingFolders(bool select_only_listing_folders); void setFilterNoMarketplaceFolder(); void updateFilterTypes(U64 types, U64& current_types); + void setSearchType(ESearchType type); + ESearchType getSearchType() { return mSearchType; } + void setFilterCreator(EFilterCreatorType type); + EFilterCreatorType getFilterCreator() { return mFilterCreatorType; } void setFilterSubString(const std::string& string); const std::string& getFilterSubString(BOOL trim = FALSE) const; @@ -277,6 +298,7 @@ private: bool checkAgainstPermissions(const class LLFolderViewModelItemInventory* listener) const; bool checkAgainstPermissions(const LLInventoryItem* item) const; bool checkAgainstFilterLinks(const class LLFolderViewModelItemInventory* listener) const; + bool checkAgainstCreator(const class LLFolderViewModelItemInventory* listener) const; bool checkAgainstClipboard(const LLUUID& object_id) const; FilterOps mFilterOps; @@ -285,6 +307,7 @@ private: std::string mFilterSubString; std::string mFilterSubStringOrig; + std::string mUsername; const std::string mName; S32 mCurrentGeneration; @@ -299,6 +322,9 @@ private: std::string mFilterText; std::string mEmptyLookupMessage; + + ESearchType mSearchType; + EFilterCreatorType mFilterCreatorType; }; #endif |