FSO.IDE.MainWindow.ChangesView_AfterCheck C# (CSharp) Method

ChangesView_AfterCheck() private method

private ChangesView_AfterCheck ( object sender, TreeViewEventArgs e ) : void
sender object
e TreeViewEventArgs
return void
        private void ChangesView_AfterCheck(object sender, TreeViewEventArgs e)
        {
            if (OwnSelMod) return;
            var node = (ResChangeNode)e.Node;

            if (node.Resource is IffFile)
            {
                OwnSelMod = true;
                foreach (ResChangeNode n in node.Nodes) n.Checked = node.Checked;
                OwnSelMod = false;
            }
            else
            {
                var parent = node.Parent;
                bool check = true;
                foreach (ResChangeNode n in parent.Nodes)
                {
                    if (!n.Checked)
                    {
                        check = false;
                        break;
                    }
                }
                OwnSelMod = true;
                parent.Checked = check;
                OwnSelMod = false;
            }

            UpdateSelectedRes();
        }