From bf7e7b2c57d9b1d7d00f76bbae41093eaf267921 Mon Sep 17 00:00:00 2001 From: Charles Krinke Date: Wed, 16 Apr 2008 03:55:21 +0000 Subject: Thank you very much, Kmeisthax for: This patch makes the "Show in Search" checkbox on the viewer work. Additionally, I also discovered that show-in-search objects use the JointWheel flag, so this patch currently uses that flag. LibSL needs to add a flag to enum LLObject.ObjectFlags, "IncludeSearch = 32768" so we aren't using a legacy flag. Additionally this patch also contains a small fix to BaseHTTPServer that lets the response content-type to be something other than text/html. For some reason this didn't get submitted with the DataSnapshot merge. --- OpenSim/Region/ClientStack/ClientView.cs | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) (limited to 'OpenSim/Region/ClientStack') diff --git a/OpenSim/Region/ClientStack/ClientView.cs b/OpenSim/Region/ClientStack/ClientView.cs index f065bae..dba5b38 100644 --- a/OpenSim/Region/ClientStack/ClientView.cs +++ b/OpenSim/Region/ClientStack/ClientView.cs @@ -163,6 +163,7 @@ namespace OpenSim.Region.ClientStack private ObjectDuplicateOnRay handlerObjectDuplicateOnRay = null; private ObjectSelect handlerObjectSelect = null; private ObjectDeselect handlerObjectDeselect = null; + private ObjectIncludeInSearch handlerObjectIncludeInSearch = null; private UpdatePrimFlags handlerUpdatePrimFlags = null; //OnUpdatePrimFlags; private UpdatePrimTexture handlerUpdatePrimTexture = null; private UpdateVector handlerGrabObject = null; //OnGrabObject; @@ -699,6 +700,7 @@ namespace OpenSim.Region.ClientStack public event ObjectDeselect OnObjectDeselect; public event GenericCall7 OnObjectDescription; public event GenericCall7 OnObjectName; + public event ObjectIncludeInSearch OnObjectIncludeInSearch; public event RequestObjectPropertiesFamily OnRequestObjectPropertiesFamily; public event UpdatePrimFlags OnUpdatePrimFlags; public event UpdatePrimTexture OnUpdatePrimTexture; @@ -3791,6 +3793,22 @@ namespace OpenSim.Region.ClientStack } break; + case PacketType.ObjectIncludeInSearch: + //This lets us set objects to appear in search (stuff like DataSnapshot, etc) + ObjectIncludeInSearchPacket packInSearch = (ObjectIncludeInSearchPacket)Pack; + handlerObjectIncludeInSearch = null; + + foreach (ObjectIncludeInSearchPacket.ObjectDataBlock objData in packInSearch.ObjectData) { + bool inSearch = objData.IncludeInSearch; + uint localID = objData.ObjectLocalID; + + handlerObjectIncludeInSearch = OnObjectIncludeInSearch; + + if (handlerObjectIncludeInSearch != null) { + handlerObjectIncludeInSearch(this, inSearch, localID); + } + } + break; #endregion -- cgit v1.1