/// <summary>
        /// Attach the view
        /// </summary>
        /// <param name="pView">The view to be loaded</param>
        /// <param name="pPage">The Page to be loaded</param>
        public void LoadView(RunTimeView pView, Page pPage)
        {
            #region Input Validation
            if (view == null)
            {
                throw new ArgumentNullException("view");
            }
            #endregion Input validation

            Epi.Windows.Controls.ViewNode viewNode = new Epi.Windows.Controls.ViewNode(pView.View);
            viewTree.Nodes.Clear();
            viewNode.ImageIndex         = 76;
            viewNode.SelectedImageIndex = 76;
            viewTree.Nodes.Add(viewNode);

            foreach (PageNode page in viewTree.Nodes[0].Nodes)
            {
                page.ImageIndex         = 17;
                page.SelectedImageIndex = 17;
            }

            viewTree.ExpandAll();
            this.view = pView;


            for (int i = 0; i < viewTree.Nodes[0].Nodes.Count; i++)
            {
                PageNode page = (PageNode)viewTree.Nodes[0].Nodes[i];
                if (page.Text == pPage.Name)
                {
                    viewTree.SelectedNode = viewTree.Nodes[0].Nodes[i];
                    break;
                }
            }/**/
        }
        /// <summary>
        /// Attach the view
        /// </summary>
        /// <param name="view">The view to be loaded</param>
        public void LoadView(RunTimeView view)
        {
            #region Input Validation
            if (view == null)
            {
                throw new ArgumentNullException("view");
            }
            #endregion Input validation

            Epi.Windows.Controls.ViewNode viewNode = new Epi.Windows.Controls.ViewNode(view.View);
            viewNode.ImageIndex         = 76;
            viewNode.SelectedImageIndex = 76;
            viewTree.Nodes.Add(viewNode);

            foreach (PageNode page in viewTree.Nodes[0].Nodes)
            {
                page.ImageIndex         = 17;
                page.SelectedImageIndex = 17;
            }

            viewTree.ExpandAll();
            this.view = view;
        }
Exemple #3
0
 /// <summary>
 /// Inserts a view node
 /// </summary>
 /// <param name="view">The view in which node is to be added</param>
 /// <returns>The view node</returns>
 public ViewNode InsertViewNode(View view)
 {
     ViewNode node = new ViewNode(view);
     Nodes.Add(node);
     return node;
 }
        /// <summary>
        /// Deletes a view
        /// </summary>
        /// <param name="delNode">The view node</param>
        /// <param name="msg">Message to user to confirm deletion of view</param>
        private void DeleteView(ViewNode delNode, string msg)
        {
            ProjectNode prjNode = (ProjectNode)delNode.Parent;
            int currentNodeIndex = delNode.Index;
            PresentationLogic.GuiMediator mediator = ((MakeViewMainForm)Forms.MakeViewMainForm.ActiveForm).GetMediator();

            if (prjNode.Nodes.Count != 1)
            {
                DialogResult result = MessageBox.Show(msg + ": \n\n" + delNode.Text, SharedStrings.MAKE_VIEW, MessageBoxButtons.YesNo);
                if (result == DialogResult.Yes)
                {
                    foreach (Page page in delNode.View.Pages)
                    {
                        foreach (Field field in page.Fields)
                        {
                            if (field is RelatedViewField)
                            {
                                MessageBox.Show(SharedStrings.WARNING_DELETE_PARENT_VIEW);
                                return;
                            }
                        }
                    }

                    foreach (View view in prjNode.Project.Views)
                    {
                        if (view.Id == delNode.View.Id)
                        {
                            delNode.View.IsRelatedView = view.IsRelatedView;
                        }
                    }

                    if (delNode.View.IsRelatedView)
                    {
                        DialogResult confirmDelete = MessageBox.Show(SharedStrings.WARNING_DELETE_RELATED_VIEW, SharedStrings.MAKE_VIEW, MessageBoxButtons.YesNo);
                        if (confirmDelete == DialogResult.Yes)
                        {
                            IMetadataProvider metadata = delNode.View.GetMetadata();
                            View parentView = delNode.View.ParentView = metadata.GetParentView(delNode.View.Id);

                            if (!Util.IsEmpty(parentView))
                            {
                                List<Field> relatedFields = new List<Field>();

                                foreach (RelatedViewField field in parentView.Fields.RelatedFields)
                                {
                                    if (field.ChildView != null)
                                    {
                                        if (field.ChildView.Id == delNode.View.Id)
                                        {
                                            relatedFields.Add(field);
                                        }
                                    }
                                }

                                foreach (Field field in relatedFields)
                                {
                                    mediator.Canvas.RemoveControls(field.Name);
                                    field.Delete();
                                }

                                parentView.MustRefreshFieldCollection = true;
                            }
                        }
                        else
                        {
                            return;
                        }
                    }

                    foreach (Page page in delNode.View.Pages)
                    {
                        delNode.View.DeletePage(page);
                    }

                    prjNode.Project.Metadata.DeleteView(delNode.View.Name);
                    prjNode.Project.Views.Remove(delNode.View.Name);
                    projectTree.Nodes.Remove(delNode);

                    Reset();
                    LoadProject(mediator.Project);
                }
            }
            else
            {
                MsgBox.ShowInformation(SharedStrings.WARNING_CANNOT_DELETE_PRIMARY_VIEW);
            }
        }
Exemple #5
0
        /// <summary>
        /// Attach the view
        /// </summary>
        /// <param name="pView">The view to be loaded</param>
        /// <param name="pPage">The Page to be loaded</param>
        public void LoadView(RunTimeView pView, Page pPage)
        {
            #region Input Validation
            if (view == null)
            {
                throw new ArgumentNullException("view");
            }
            #endregion Input validation

            Epi.Windows.Controls.ViewNode viewNode = new Epi.Windows.Controls.ViewNode(pView.View);
            viewTree.Nodes.Clear();
            viewNode.ImageIndex = 76;
            viewNode.SelectedImageIndex = 76;
            viewTree.Nodes.Add(viewNode);

            foreach (PageNode page in viewTree.Nodes[0].Nodes)
            {
                page.ImageIndex = 17;
                page.SelectedImageIndex = 17;
            }

            viewTree.ExpandAll();
            this.view = pView;

            for (int i = 0; i < viewTree.Nodes[0].Nodes.Count; i++)
            {
                PageNode page = (PageNode) viewTree.Nodes[0].Nodes[i];
                if (page.Text == pPage.Name)
                {
                    viewTree.SelectedNode = viewTree.Nodes[0].Nodes[i];
                    break;
                }
            }/**/
        }
Exemple #6
0
        /// <summary>
        /// Attach the view
        /// </summary>
        /// <param name="view">The view to be loaded</param>
        public void LoadView(RunTimeView view)
        {
            #region Input Validation
            if (view == null)
            {
                throw new ArgumentNullException("view");
            }
            #endregion Input validation

            Epi.Windows.Controls.ViewNode viewNode = new Epi.Windows.Controls.ViewNode(view.View);
            viewNode.ImageIndex = 76;
            viewNode.SelectedImageIndex = 76;
            viewTree.Nodes.Add(viewNode);

            foreach (PageNode page in viewTree.Nodes[0].Nodes)
            {
                page.ImageIndex = 17;
                page.SelectedImageIndex = 17;
            }

            viewTree.ExpandAll();
            this.view = view;
        }