* refactor: Expose SOG.SetRootPart for outsiders to use rather than setting RootPart and adding the part separately
* Make RootPart read only0.6.1-post-fixes
parent
014eb26426
commit
0e180b0ad3
|
@ -210,8 +210,8 @@ namespace OpenSim.Data.MSSQL
|
|||
"No shape found for prim in storage, so setting default box shape");
|
||||
prim.Shape = PrimitiveBaseShape.Default;
|
||||
}
|
||||
group.AddPart(prim);
|
||||
group.RootPart = prim;
|
||||
|
||||
group.SetRootPart(prim);
|
||||
|
||||
createdObjects.Add(group.UUID, group);
|
||||
retvals.Add(group);
|
||||
|
|
|
@ -421,8 +421,8 @@ namespace OpenSim.Data.MySQL
|
|||
"No shape found for prim in storage, so setting default box shape");
|
||||
prim.Shape = PrimitiveBaseShape.Default;
|
||||
}
|
||||
group.AddPart(prim);
|
||||
group.RootPart = prim;
|
||||
|
||||
group.SetRootPart(prim);
|
||||
createdObjects.Add(group.UUID, group);
|
||||
retvals.Add(group);
|
||||
LoadItems(prim);
|
||||
|
|
|
@ -195,8 +195,7 @@ namespace OpenSim.Data.NHibernate
|
|||
// root part
|
||||
if (p.UUID == uuid)
|
||||
{
|
||||
group.AddPart(p);
|
||||
group.RootPart = p;
|
||||
group.SetRootPart(p);
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -244,8 +243,7 @@ namespace OpenSim.Data.NHibernate
|
|||
if (p.UUID == p.ParentUUID)
|
||||
{
|
||||
SceneObjectGroup group = new SceneObjectGroup();
|
||||
group.AddPart(p);
|
||||
group.RootPart = p;
|
||||
group.SetRootPart(p);
|
||||
SOG.Add(p.ParentUUID, group);
|
||||
}
|
||||
else
|
||||
|
|
|
@ -436,8 +436,8 @@ namespace OpenSim.Data.SQLite
|
|||
"[REGION DB]: No shape found for prim in storage, so setting default box shape");
|
||||
prim.Shape = PrimitiveBaseShape.Default;
|
||||
}
|
||||
group.AddPart(prim);
|
||||
group.RootPart = prim;
|
||||
|
||||
group.SetRootPart(prim);
|
||||
createdObjects.Add(group.UUID, group);
|
||||
retvals.Add(group);
|
||||
LoadItems(prim);
|
||||
|
@ -1102,8 +1102,7 @@ namespace OpenSim.Data.SQLite
|
|||
// sop.TouchName = "";
|
||||
// sop.UUID = UUID.Random();
|
||||
// sop.Shape = PrimitiveBaseShape.Default;
|
||||
// sog.AddPart(sop);
|
||||
// sog.RootPart = sop;
|
||||
// sog.SetRootPart(sop);
|
||||
// Add breakpoint in above line. Check sop fields.
|
||||
|
||||
// TODO: this doesn't work yet because something more
|
||||
|
|
|
@ -315,8 +315,7 @@ namespace OpenSim.Data.Tests
|
|||
sop.ObjectFlags = 0;
|
||||
|
||||
SceneObjectGroup sog = new SceneObjectGroup();
|
||||
sog.AddPart(sop);
|
||||
sog.RootPart = sop;
|
||||
sog.SetRootPart(sop);
|
||||
|
||||
// Inserts group in DB
|
||||
db.StoreObject(sog,region3);
|
||||
|
@ -795,8 +794,7 @@ namespace OpenSim.Data.Tests
|
|||
sop.Shape = PrimitiveBaseShape.Default;
|
||||
|
||||
SceneObjectGroup sog = new SceneObjectGroup();
|
||||
sog.AddPart(sop);
|
||||
sog.RootPart = sop;
|
||||
sog.SetRootPart(sop);
|
||||
return sog;
|
||||
}
|
||||
|
||||
|
|
|
@ -132,7 +132,6 @@ namespace OpenSim.Region.Environment.Modules.ContentManagement
|
|||
public SceneObjectPart RootPart
|
||||
{
|
||||
get { return m_Entity.RootPart; }
|
||||
set { m_Entity.RootPart = value; }
|
||||
}
|
||||
|
||||
public Scene Scene
|
||||
|
|
|
@ -104,11 +104,7 @@ namespace OpenSim.Region.Environment.Modules.ContentManagement
|
|||
|
||||
//Initialize group and add part as root part
|
||||
x.SetScene(scene);
|
||||
y.SetParent(x);
|
||||
y.ParentID = 0;
|
||||
y.LinkNum = 0;
|
||||
x.Children.Add(y.UUID, y);
|
||||
x.RootPart = y;
|
||||
x.SetRootPart(y);
|
||||
x.RegionHandle = scene.RegionInfo.RegionHandle;
|
||||
x.SetScene(scene);
|
||||
|
||||
|
|
|
@ -184,10 +184,12 @@ namespace OpenSim.Region.Environment.Scenes
|
|||
set { m_parts = value; }
|
||||
}
|
||||
|
||||
/// <value>
|
||||
/// The root part of this scene object
|
||||
/// </value>
|
||||
public SceneObjectPart RootPart
|
||||
{
|
||||
get { return m_rootPart; }
|
||||
set { m_rootPart = value; }
|
||||
}
|
||||
|
||||
public ulong RegionHandle
|
||||
|
@ -877,7 +879,7 @@ namespace OpenSim.Region.Environment.Scenes
|
|||
/// Set a part to act as the root part for this scene object
|
||||
/// </summary>
|
||||
/// <param name="part"></param>
|
||||
private void SetRootPart(SceneObjectPart part)
|
||||
public void SetRootPart(SceneObjectPart part)
|
||||
{
|
||||
part.SetParent(this);
|
||||
part.ParentID = 0;
|
||||
|
@ -1886,7 +1888,7 @@ namespace OpenSim.Region.Environment.Scenes
|
|||
|
||||
m_scene.UnlinkSceneObject(objectGroup.UUID, true);
|
||||
objectGroup.Children.Clear();
|
||||
objectGroup.RootPart = null;
|
||||
objectGroup.m_rootPart = null;
|
||||
|
||||
// TODO Deleting the original group object may cause problems later on if they have already
|
||||
// made it into the update queue. However, sending out updates for those parts is now
|
||||
|
|
|
@ -78,10 +78,8 @@ namespace OpenSim.Region.Environment.Scenes.Tests
|
|||
SceneObjectPart part
|
||||
= new SceneObjectPart(UUID.Zero, PrimitiveBaseShape.Default, Vector3.Zero, Quaternion.Identity, Vector3.Zero);
|
||||
//part.UpdatePrimFlags(false, false, true);
|
||||
part.ObjectFlags |= (uint)PrimFlags.Phantom;
|
||||
|
||||
sceneObject.RootPart = part;
|
||||
sceneObject.AddPart(part);
|
||||
part.ObjectFlags |= (uint)PrimFlags.Phantom;
|
||||
sceneObject.SetRootPart(part);
|
||||
|
||||
scene.AddNewSceneObject(sceneObject, false);
|
||||
|
||||
|
|
Loading…
Reference in New Issue