Esempio n. 1
0
        private bool HandleDropOnShapeCollection(TreeNode treeNodeMoving, TreeNode targetNode, NamedObjectSave targetNos, NamedObjectSave movingNos)
        {
            bool succeeded = true;

            if (movingNos.CanBeInShapeCollection() == false)
            {
                MessageBox.Show("The Object you are moving is of type " + movingNos.SourceClassType +
                                " which cannot be contained in a ShapeCollection");
            }
            else
            {
                succeeded = true;
                TreeNode parentTreeNode = treeNodeMoving.Parent;
                if (parentTreeNode.IsNamedObjectNode())
                {
                    NamedObjectSave parentNos = parentTreeNode.Tag as NamedObjectSave;

                    parentNos.ContainedObjects.Remove(movingNos);
                }
                else
                {
                    EditorLogic.CurrentElement.NamedObjects.Remove(movingNos);
                }
                parentTreeNode.Nodes.Remove(treeNodeMoving);
                targetNode.Nodes.Add(treeNodeMoving);
                targetNos.ContainedObjects.Add(movingNos);
            }
            return(succeeded);
        }