summaryrefslogtreecommitdiff
path: root/indra/newview/llinventoryfilter.h
diff options
context:
space:
mode:
authorNat Goodspeed <nat@lindenlab.com>2023-10-03 13:07:46 -0400
committerNat Goodspeed <nat@lindenlab.com>2023-10-03 13:07:46 -0400
commit38f4e4d5b4cc61701588276f729253ac1721b784 (patch)
tree56b4e824c0ca365bb4e02201df7925caea9843fe /indra/newview/llinventoryfilter.h
parent285bb44d4cc7e47be474d431d65014ad4e41892b (diff)
parent2465470817957c8378e81ec1a7e32551fbac7b26 (diff)
DRTVWR-589: Merge branch 'main' of viewer-private into DRTVWR-589
Diffstat (limited to 'indra/newview/llinventoryfilter.h')
-rw-r--r--indra/newview/llinventoryfilter.h24
1 files changed, 22 insertions, 2 deletions
diff --git a/indra/newview/llinventoryfilter.h b/indra/newview/llinventoryfilter.h
index 384de3e889..ada1d0f4b4 100644
--- a/indra/newview/llinventoryfilter.h
+++ b/indra/newview/llinventoryfilter.h
@@ -75,6 +75,13 @@ public:
FILTERLINK_ONLY_LINKS // only show links
};
+ enum EFilterThumbnail
+ {
+ FILTER_INCLUDE_THUMBNAILS,
+ FILTER_EXCLUDE_THUMBNAILS,
+ FILTER_ONLY_THUMBNAILS
+ };
+
enum ESortOrderType
{
SO_NAME = 0, // Sort inventory by name
@@ -104,7 +111,8 @@ public:
VISIBILITY_NONE = 0,
VISIBILITY_TRASH = 0x1 << 0,
VISIBILITY_LIBRARY = 0x1 << 1,
- VISIBILITY_LINKS = 0x1 << 2
+ VISIBILITY_LINKS = 0x1 << 2,
+ VISIBILITY_OUTFITS = 0x1 << 3
};
struct FilterOps
@@ -139,12 +147,14 @@ public:
Optional<EFolderShow> show_folder_state;
Optional<PermissionMask> permissions;
Optional<EFilterCreatorType> creator_type;
+ Optional<EFilterThumbnail> thumbnails;
Params()
: types("filter_types", FILTERTYPE_OBJECT),
object_types("object_types", 0xffffFFFFffffFFFFULL),
wearable_types("wearable_types", 0xffffFFFFffffFFFFULL),
settings_types("settings_types", 0xffffFFFFffffFFFFULL),
+ thumbnails("thumbnails", FILTER_INCLUDE_THUMBNAILS),
category_types("category_types", 0xffffFFFFffffFFFFULL),
links("links", FILTERLINK_INCLUDE_LINKS),
search_visibility("search_visibility", 0xFFFFFFFF),
@@ -165,6 +175,7 @@ public:
U64 mFilterObjectTypes, // For _OBJECT
mFilterWearableTypes,
mFilterSettingsTypes, // for _SETTINGS
+ mFilterThumbnails,
mFilterLinks,
mFilterCategoryTypes; // For _CATEGORY
LLUUID mFilterUUID; // for UUID
@@ -207,6 +218,7 @@ public:
U64 getFilterWearableTypes() const;
U64 getFilterSettingsTypes() const;
U64 getSearchVisibilityTypes() const;
+ U64 getFilterThumbnails() const;
bool isFilterObjectTypesWith(LLInventoryType::EType t) const;
void setFilterObjectTypes(U64 types);
@@ -221,6 +233,7 @@ public:
void setFilterMarketplaceUnassociatedFolders();
void setFilterMarketplaceListingFolders(bool select_only_listing_folders);
void setFilterNoMarketplaceFolder();
+ void setFilterThumbnails(U64 filter_thumbnails);
void updateFilterTypes(U64 types, U64& current_types);
void setSearchType(ESearchType type);
ESearchType getSearchType() { return mSearchType; }
@@ -228,6 +241,7 @@ public:
void toggleSearchVisibilityLinks();
void toggleSearchVisibilityTrash();
+ void toggleSearchVisibilityOutfits();
void toggleSearchVisibilityLibrary();
void setSearchVisibilityTypes(U32 types);
void setSearchVisibilityTypes(const Params& params);
@@ -237,6 +251,8 @@ public:
const std::string& getFilterSubStringOrig() const { return mFilterSubStringOrig; }
bool hasFilterString() const;
+ void setSingleFolderMode(bool is_single_folder) { mSingleFolderMode = is_single_folder; }
+
void setFilterPermissions(PermissionMask perms);
PermissionMask getFilterPermissions() const;
@@ -277,7 +293,7 @@ public:
void setEmptyLookupMessage(const std::string& message);
void setDefaultEmptyLookupMessage(const std::string& message);
- std::string getEmptyLookupMessage() const;
+ std::string getEmptyLookupMessage(bool is_empty_folder = false) const;
// +-------------------------------------------------------------------+
// + Status
@@ -321,6 +337,8 @@ public:
LLInventoryFilter& operator =(const LLInventoryFilter& other);
+ bool checkAgainstFilterThumbnails(const LLUUID& object_id) const;
+
private:
bool areDateLimitsSet();
bool checkAgainstFilterType(const class LLFolderViewModelItemInventory* listener) const;
@@ -359,6 +377,8 @@ private:
std::vector<std::string> mFilterTokens;
std::string mExactToken;
+
+ bool mSingleFolderMode;
};
#endif