Example #1
0
 private void Course_ManifestChanged(ManifestChangedEventArgs e)
 {
     // TODO: UGLY HACK, problem consists of nodes of tree ignored using event OnBeforeNodeAdded
     // cannot be solved more elegant for now  :(  [Volodya Shtenyovych]
     if (e.ChangedNode is OrganizationType && ((e.ChangeType & (ManifestChangeTypes.ChildrenAdded | ManifestChangeTypes.ChildrenRemoved | ManifestChangeTypes.ChildrenReordered)) > 0) && ((Course.State & CourseStates.Opened) > 0))
     {
         tvItems.Manifest_Changed(new ManifestChangedEventArgs(Course.Manifest, e.Nodes, e.ChangeType));
     }
 }
Example #2
0
        public void Manifest_Changed(ManifestChangedEventArgs e)
        {
            var nodes = Nodes.Find(e.ChangedNode.UID, true);

            switch (nodes.Length)
            {
            case 0:
                break;

            case 1:
                var treeNode = nodes[0];
                switch (e.ChangeType)
                {
                case ManifestChangeTypes.Changed:
                    treeNode.Text = e.ChangedNode.ToString();
                    break;

                case ManifestChangeTypes.ChildrenRemoved:
                    nodes = Nodes.Find(e.ChangedNode.UID, true);
                    if (nodes.Length == 1)
                    {
                        var pNode = nodes[0];
                        foreach (var n in e.Nodes)
                        {
                            nodes = pNode.Nodes.Find(n.UID, false);
                            if (nodes.Length == 1)
                            {
                                nodes[0].Remove();
                            }
                        }
                    }
                    break;

                default:
                    treeNode.Nodes.Clear();
                    BuildChildrens(e.ChangedNode, treeNode, 3);
                    break;
                }
                break;

            default:
                throw new FireFlyException("Two or more tree node with key '{0}' found (Node: {0})", e.ChangedNode.UID, e.ChangedNode);
            }
        }
Example #3
0
 private void Course_ManifestChanged(ManifestChangedEventArgs e)
 {
     // TODO: UGLY HACK, problem consists of nodes of tree ignored using event OnBeforeNodeAdded 
     // cannot be solved more elegant for now  :(  [Volodya Shtenyovych]
     if (e.ChangedNode is OrganizationType && ((e.ChangeType & (ManifestChangeTypes.ChildrenAdded | ManifestChangeTypes.ChildrenRemoved | ManifestChangeTypes.ChildrenReordered)) > 0) && ((Course.State & CourseStates.Opened) > 0))
     {
         tvItems.Manifest_Changed(new ManifestChangedEventArgs(Course.Manifest, e.Nodes, e.ChangeType));
     }
 }
Example #4
0
        public void Manifest_Changed(ManifestChangedEventArgs e)
        {
            var nodes = Nodes.Find(e.ChangedNode.UID, true);
            switch (nodes.Length)
            {
                case 0:
                    break;

                case 1:
                    var treeNode = nodes[0];
                    switch (e.ChangeType)
                    {
                        case ManifestChangeTypes.Changed:
                            treeNode.Text = e.ChangedNode.ToString();
                            break;

                        case ManifestChangeTypes.ChildrenRemoved:
                            nodes = Nodes.Find(e.ChangedNode.UID, true);
                            if (nodes.Length == 1)
                            {
                                var pNode = nodes[0];
                                foreach (var n in e.Nodes)
                                {
                                    nodes = pNode.Nodes.Find(n.UID, false);
                                    if (nodes.Length == 1)
                                    {
                                        nodes[0].Remove();
                                    }
                                }
                            }
                            break;

                        default:
                            treeNode.Nodes.Clear();
                            BuildChildrens(e.ChangedNode, treeNode, 3);
                            break;

                    }
                    break;

                default:
                    throw new FireFlyException("Two or more tree node with key '{0}' found (Node: {0})", e.ChangedNode.UID, e.ChangedNode);
            }
        }