/// <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; }
/// <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); } }
/// <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; } }/**/ }