Allow filtering reflection probes in area search too

master
Darl 2025-05-13 10:33:27 -05:00
parent a17e9a5b5a
commit 096f6854cc
3 changed files with 34 additions and 0 deletions

View File

@ -167,6 +167,7 @@ FSAreaSearch::FSAreaSearch(const LLSD& key) :
mBeacons(false),
mExcludeAttachment(true),
mExcludeTemporary(true),
mExcludeReflectionProbe(false),
mExcludePhysics(true),
mExcludeChildPrims(true),
mExcludeNeighborRegions(true),
@ -546,6 +547,11 @@ bool FSAreaSearch::isSearchableObject(LLViewerObject* objectp, LLViewerRegion* o
return false;
}
if (mExcludeReflectionProbe && objectp->mReflectionProbe.notNull())
{
return false;
}
return true;
}
@ -2223,6 +2229,10 @@ bool FSPanelAreaSearchFilter::postBuild()
mCheckboxExcludetemporary->set(true);
mCheckboxExcludetemporary->setCommitCallback(boost::bind(&FSPanelAreaSearchFilter::onCommitCheckbox, this));
mCheckboxExcludeReflectionProbes = getChild<LLCheckBoxCtrl>("exclude_reflection_probes");
mCheckboxExcludeReflectionProbes->set(false);
mCheckboxExcludeReflectionProbes->setCommitCallback(boost::bind(&FSPanelAreaSearchFilter::onCommitCheckbox, this));
mCheckboxExcludeChildPrim = getChild<LLCheckBoxCtrl>("exclude_childprim");
mCheckboxExcludeChildPrim->set(true);
mCheckboxExcludeChildPrim->setCommitCallback(boost::bind(&FSPanelAreaSearchFilter::onCommitCheckbox, this));
@ -2301,6 +2311,19 @@ void FSPanelAreaSearchFilter::onCommitCheckbox()
}
mFSAreaSearch->setFilterTemporary(mCheckboxTemporary->get());
if (mCheckboxExcludeReflectionProbes->get())
{
mFSAreaSearch->setFilterReflectionProbe(false);
mCheckboxReflectionProbe->set(false);
mCheckboxReflectionProbe->setEnabled(false);
mFSAreaSearch->setExcludeReflectionProbe(true);
}
else
{
mCheckboxReflectionProbe->setEnabled(true);
mFSAreaSearch->setExcludeReflectionProbe(false);
}
if (mCheckboxExcludeAttachment->get())
{
mFSAreaSearch->setFilterAttachment(false);

View File

@ -148,6 +148,7 @@ public:
void setExcludeAttachment(bool b) { mExcludeAttachment = b; }
void setExcludetemporary(bool b) { mExcludeTemporary = b; }
void setExcludeReflectionProbe(bool b) { mExcludeReflectionProbe = b; }
void setExcludePhysics(bool b) { mExcludePhysics = b; }
void setExcludeChildPrims(bool b) { mExcludeChildPrims = b; }
void setExcludeNeighborRegions(bool b) { mExcludeNeighborRegions = b; }
@ -231,6 +232,7 @@ private:
bool mExcludeAttachment;
bool mExcludeTemporary;
bool mExcludeReflectionProbe;
bool mExcludePhysics;
bool mExcludeChildPrims;
bool mExcludeNeighborRegions;
@ -396,6 +398,7 @@ private:
LLCheckBoxCtrl* mCheckboxExcludeAttachment;
LLCheckBoxCtrl* mCheckboxExcludePhysics;
LLCheckBoxCtrl* mCheckboxExcludetemporary;
LLCheckBoxCtrl* mCheckboxExcludeReflectionProbes;
LLCheckBoxCtrl* mCheckboxExcludeChildPrim;
LLCheckBoxCtrl* mCheckboxExcludeNeighborRegions;
LLCheckBoxCtrl* mCheckboxPermCopy;

View File

@ -579,6 +579,14 @@
name="exclude_temporary"
label="Temporary"
width="80"/>
<check_box
follows="top|left"
top_pad="10"
layout="topleft"
left="10"
name="exclude_reflection_probes"
label="Reflection Probes"
width="80"/>
<check_box
follows="top|left"
top_pad="10"