/// <summary>
 /// Handles the TerrainDeleted event of the <see cref="TerrainManager"/> class.
 /// </summary>
 /// <param name="sender">The source of the event.</param>
 /// <param name="e">The <see cref="TerrainDeletedEventArgs"/> instance containing the event data.</param>
 private void TerrainDeleted(object sender, TerrainDeletedEventArgs e)
 {
     using (UndoRedoManager.Start("Deleting terrain"))
     {
         foreach (var map in Maps)
         {
             foreach (var layer in map.ConcreteLayers)
             {
                 foreach (var tile in layer.Tiles)
                 {
                     if (tile.Terrain == e.ID)
                     {
                         tile.SrcX = 0;
                         tile.SrcY = 0;
                         tile.Terrain = 0;
                         tile.Tileset = 0;
                     }
                 }
             }
             foreach (var layer in map.Layers)
             {
                 foreach (var tile in layer.Tiles)
                 {
                     if (tile.Terrain == e.ID)
                     {
                         tile.SrcX = 0;
                         tile.SrcY = 0;
                         tile.Terrain = 0;
                         tile.Tileset = 0;
                     }
                 }
             }
             map.CacheAllTiles();
         }
         UndoRedoManager.Commit();
     }
 }
        /// <summary>
        /// Handles the TerrainDeleted event of the <see cref="TerrainManager"/> object.
        /// </summary>
        /// <param name="sender">The source of the event.</param>
        /// <param name="e">The <see cref="TerrainDeletedEventArgs"/> instance containing the event data.</param>
        private void TerrainDeleted(object sender, TerrainDeletedEventArgs e)
        {
            string selectednode = null;

            if (treeProject.SelectedNode.Name == "Terrain" + e.Name)
                selectednode = terrainNode.Name;

            foreach (TreeNode node in terrainNode.Nodes)
            {
                if (node != null)
                {
                    if (node.Text == e.Name)
                        terrainNode.Nodes.Remove(node);
                }
            }

            SortNodes(selectednode);
        }