private void addFolderToolStripMenuItem_Click(object sender, EventArgs e)
{
ChannelFolder channelFolder = new ChannelFolder(Properties.Resources.NewChannelFolder);
TreeNode treeNode = MakeTreeNodeFromChannel(channelFolder);
treeNode.Expand();
if (this.treeViewChannel.SelectedNode == null || this.treeViewChannel.SelectedNode.Parent == null)
{
ChannelFolder parentChannelFolder = (ChannelFolder)this.treeViewChannel.Tag;
parentChannelFolder.Add(channelFolder);
this.treeViewChannel.Nodes.Add(treeNode);
}
else if (this.treeViewChannel.SelectedNode.Tag is ChannelFolder)
{
ChannelFolder parentChannelFolder = (ChannelFolder)this.treeViewChannel.SelectedNode.Tag;
parentChannelFolder.Add(channelFolder);
this.treeViewChannel.SelectedNode.Nodes.Add(treeNode);
this.treeViewChannel.SelectedNode.Expand();
}
else
{
ChannelFolder parentChannelFolder = (ChannelFolder)this.treeViewChannel.SelectedNode.Parent.Tag;
TreeNode parentTreeNode = this.treeViewChannel.SelectedNode.Parent;
int indexChannel = parentChannelFolder.ChannelList.IndexOf(this.treeViewChannel.SelectedNode.Tag as Channel);
int indexTreeNode = parentTreeNode.Nodes.IndexOf(this.treeViewChannel.SelectedNode);
channelFolder.Parent = parentChannelFolder;
parentChannelFolder.ChannelList.Insert(indexChannel, channelFolder);
this.treeViewChannel.SelectedNode.Parent.Nodes.Insert(indexTreeNode, treeNode);
}
}