Пример #1
0
        private void RefreshNode(VIZCore3D.NET.Data.ReviewItem pReview, TreeNode pNode, List <VIZCore3D.NET.Data.ReviewItem> items)
        {
            foreach (VIZCore3D.NET.Data.ReviewItem item in items)
            {
                if (item.ParentID != pReview.ID)
                {
                    continue;
                }

                if (item.Kind == Manager.ReviewManager.ReviewKind.RK_FOLDER)
                {
                    TreeNode node = new TreeNode(item.Title, 0, 1);
                    node.Tag = item;
                    pNode.Nodes.Add(node);

                    RefreshNode(item, node, items);
                }
                else
                {
                    TreeNode node = new TreeNode(item.Title, 2, 2);
                    node.Tag = item;
                    pNode.Nodes.Add(node);

                    RefreshNode(item, node, items);
                }
            }
        }
Пример #2
0
        private void tvUserView_AfterSelect(object sender, TreeViewEventArgs e)
        {
            if (e.Node == null)
            {
                return;
            }
            if (e.Node.Tag == null)
            {
                return;
            }

            VIZCore3D.NET.Data.ReviewItem review = (VIZCore3D.NET.Data.ReviewItem)tvUserView.SelectedNode.Tag;
            if (review.Kind == Manager.ReviewManager.ReviewKind.RK_FOLDER)
            {
                return;
            }

            // Show Image
            System.Drawing.Image img = vizcore3d.Review.GetReviewImage(review.ID);
            if (img != null)
            {
                pbImage.Image = img;
                pbImage.Refresh();
            }

            if (ckView.Checked == false)
            {
                return;
            }

            // Show Snapshot
            //vizcore3d.Review.Select(review.ID, true, ckAnimation.Checked, false);
            vizcore3d.Review.UserView.Select(review.ID, ckAnimation.Checked);
        }
Пример #3
0
        private void btnAddFolder_Click(object sender, EventArgs e)
        {
            if (vizcore3d.Model.IsOpen() == false)
            {
                return;
            }

            VIZCore3D.NET.Dialogs.AddNodeDialog dlg = new Dialogs.AddNodeDialog();
            dlg.NodeName = "Node...";
            if (dlg.ShowDialog() != DialogResult.OK)
            {
                return;
            }

            string nodeName = dlg.NodeName;

            // Add Folder
            int id = vizcore3d.Review.AddFolder(GetSelectedNodeFolderId(), nodeName, Manager.ReviewManager.ReviewFolderKind.UserView);

            TreeNode node = new TreeNode(nodeName);

            if (GetSelectedNodeFolderId() == -1)
            {
                tvUserView.Nodes.Add(node);
            }
            else
            {
                tvUserView.SelectedNode.Nodes.Add(node);
                tvUserView.SelectedNode.Expand();
            }

            // Set Tag
            VIZCore3D.NET.Data.ReviewItem review = vizcore3d.Review.GetItem(id);
            node.Tag = review;
        }
Пример #4
0
        private bool IsNodeFolder()
        {
            if (tvUserView.SelectedNode == null)
            {
                return(false);
            }
            else
            {
                TreeNode node = tvUserView.SelectedNode;
                if (node == null)
                {
                    return(false);
                }
                if (node.Tag == null)
                {
                    return(false);
                }

                VIZCore3D.NET.Data.ReviewItem review = (VIZCore3D.NET.Data.ReviewItem)node.Tag;
                if (review.Kind == Manager.ReviewManager.ReviewKind.RK_FOLDER)
                {
                    return(true);
                }
                else
                {
                    return(false);
                }
            }
        }
Пример #5
0
        private int GetSelectedNodeFolderId()
        {
            if (tvUserView.SelectedNode == null)
            {
                return(-1);
            }
            else
            {
                TreeNode node = tvUserView.SelectedNode;
                if (node == null)
                {
                    return(-1);
                }
                if (node.Tag == null)
                {
                    return(-1);
                }

                VIZCore3D.NET.Data.ReviewItem review = (VIZCore3D.NET.Data.ReviewItem)node.Tag;

                if (review.Kind == Manager.ReviewManager.ReviewKind.RK_FOLDER)
                {
                    return(review.ID);
                }
                else
                {
                    return(-1);
                }
            }
        }
Пример #6
0
        private void btnAdd_Click(object sender, EventArgs e)
        {
            if (vizcore3d.Model.IsOpen() == false)
            {
                return;
            }

            // Add
            int id = vizcore3d.Review.UserView.Add(
                string.Format("Snapshot #{0}", tvUserView.GetNodeCount(true))
                , string.Format("description #{0}", tvUserView.GetNodeCount(true))
                );

            if (id < 1)
            {
                return;
            }

            // Get Snapshot Image
            System.Drawing.Image img = vizcore3d.Review.SetReviewImage(id, 1024, 768);

            if (img == null)
            {
                return;
            }

            pbImage.Image = img;

            // Create Node
            TreeNode snapshot = new TreeNode(string.Format("Snapshot #{0}", tvUserView.GetNodeCount(true)), 2, 2);

            if (tvUserView.SelectedNode == null || GetSelectedNodeFolderId() == -1)
            {
                // Add Root
                tvUserView.Nodes.Add(snapshot);
                // Set Tag
                VIZCore3D.NET.Data.ReviewItem review = vizcore3d.Review.GetItem(id);
                snapshot.Tag = review;
            }
            else
            {
                // Add Child
                tvUserView.SelectedNode.Nodes.Add(snapshot);
                // Attach Folder
                vizcore3d.Review.MoveItem(id, GetSelectedNodeFolderId());
                // Set Tag
                VIZCore3D.NET.Data.ReviewItem review = vizcore3d.Review.GetItem(id);
                snapshot.Tag = review;

                // Expand Node
                tvUserView.SelectedNode.Expand();
            }
        }
Пример #7
0
        private void btnRename_Click(object sender, EventArgs e)
        {
            if (vizcore3d.Model.IsOpen() == false)
            {
                return;
            }
            if (IsNodeFolder() == false)
            {
                return;
            }

            // Get Tag(ReviewItem)
            VIZCore3D.NET.Data.ReviewItem review = (VIZCore3D.NET.Data.ReviewItem)tvUserView.SelectedNode.Tag;
            // Refresh
            review = vizcore3d.Review.GetItem(review.ID);

            VIZCore3D.NET.Dialogs.AddNodeDialog dlg = new Dialogs.AddNodeDialog();
            dlg.NodeName = review.Title;
            if (dlg.ShowDialog() != DialogResult.OK)
            {
                return;
            }

            // If Title is same...
            if (dlg.NodeName == review.Title)
            {
                return;
            }

            // Update Title
            if (vizcore3d.Review.UpdateText(review.ID, review.Title) == false)
            {
                MessageBox.Show("Fail to VIZCore3D.NET.Manager.ReviewManager.UpdateText", "VIZCore3D.NET.UserView", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return;
            }

            // Refresh
            review = vizcore3d.Review.GetItem(review.ID);

            // Set Tag
            tvUserView.SelectedNode.Tag = review;

            tvUserView.SelectedNode.Text = dlg.NodeName;
        }
Пример #8
0
        private void btnDelete_Click(object sender, EventArgs e)
        {
            if (tvUserView.SelectedNode == null)
            {
                return;
            }
            if (tvUserView.SelectedNode.Tag == null)
            {
                return;
            }

            // Get Tag(ReviewItem)
            VIZCore3D.NET.Data.ReviewItem review = (VIZCore3D.NET.Data.ReviewItem)tvUserView.SelectedNode.Tag;

            // Delete
            vizcore3d.Review.Delete(review.ID);

            this.tvUserView.AfterSelect -= new System.Windows.Forms.TreeViewEventHandler(this.tvUserView_AfterSelect);
            tvUserView.Nodes.Remove(tvUserView.SelectedNode);
            tvUserView.SelectedNode      = null;
            this.tvUserView.AfterSelect += new System.Windows.Forms.TreeViewEventHandler(this.tvUserView_AfterSelect);
        }