示例#1
0
 protected override void ReorderElements(ISceneNodeCollection <SceneNode> childCollection, SceneElementCollection selectedChildren)
 {
     if (childCollection.Count == selectedChildren.Count)
     {
         return;
     }
     for (int index = 0; index < selectedChildren.Count; ++index)
     {
         SceneElement sceneElement = selectedChildren[index];
         int          num          = childCollection.IndexOf((SceneNode)sceneElement);
         if (num > 0 && !selectedChildren.Contains(childCollection[num - 1] as SceneElement))
         {
             sceneElement.Remove();
             childCollection.Insert(num - 1, (SceneNode)sceneElement);
         }
     }
 }
示例#2
0
        protected override void ReorderElements(ISceneNodeCollection <SceneNode> childCollection, SceneElementCollection selectedChildren)
        {
            if (childCollection.Count == selectedChildren.Count)
            {
                return;
            }
            int num1 = childCollection.Count - 1;

            for (int index = selectedChildren.Count - 1; index >= 0; --index)
            {
                SceneElement sceneElement = selectedChildren[index];
                int          num2         = childCollection.IndexOf((SceneNode)sceneElement);
                if (num2 < num1 && !selectedChildren.Contains(childCollection[num2 + 1] as SceneElement))
                {
                    sceneElement.Remove();
                    childCollection.Insert(num2 + 1, (SceneNode)sceneElement);
                }
            }
        }