///-------------------------------------------------------------------------------- /// <summary>This method processes the delete StageTransition command.</summary> ///-------------------------------------------------------------------------------- public void ProcessDeleteStageTransitionCommand() { StageTransitionEventArgs message = new StageTransitionEventArgs(); message.StageTransition = StageTransition; message.ToStageID = ToStageID; message.Solution = Solution; message.WorkspaceID = WorkspaceID; Mediator.NotifyColleagues <StageTransitionEventArgs>(MediatorMessages.Command_DeleteStageTransitionRequested, message); }
///-------------------------------------------------------------------------------- /// <summary>This method sends the edit item performed message to have the /// update applied.</summary> ///-------------------------------------------------------------------------------- public void SendEditStageTransitionPerformed() { StageTransitionEventArgs message = new StageTransitionEventArgs(); message.StageTransition = StageTransition; message.ToStageID = ToStageID; message.Solution = Solution; message.WorkspaceID = WorkspaceID; Mediator.NotifyColleagues <StageTransitionEventArgs>(MediatorMessages.Command_EditStageTransitionPerformed, message); }
///-------------------------------------------------------------------------------- /// <summary>This method processes the new StageTransition command.</summary> ///-------------------------------------------------------------------------------- public void ProcessNewStageTransitionCommand() { StageTransitionEventArgs message = new StageTransitionEventArgs(); message.StageTransition = new StageTransition(); message.StageTransition.StageTransitionID = Guid.NewGuid(); message.StageTransition.ToStageID = ToStageID; message.StageTransition.ToStage = Solution.StageList.FindByID((Guid)ToStageID); message.StageTransition.Solution = Solution; message.ToStageID = ToStageID; message.Solution = Solution; message.WorkspaceID = WorkspaceID; Mediator.NotifyColleagues <StageTransitionEventArgs>(MediatorMessages.Command_EditStageTransitionRequested, message); }
///-------------------------------------------------------------------------------- /// <summary>This method applies stagetransition deletes.</summary> ///-------------------------------------------------------------------------------- public void ProcessDeleteStageTransitionPerformed(StageTransitionEventArgs data) { try { bool isItemMatch = false; if (data != null && data.StageTransition != null) { foreach (StageTransitionViewModel item in StageTransitions.ToList <StageTransitionViewModel>()) { if (item.StageTransition.StageTransitionID == data.StageTransition.StageTransitionID) { // remove item from tabs, if present WorkspaceEventArgs message = new WorkspaceEventArgs(); message.ItemID = item.StageTransition.StageTransitionID; Mediator.NotifyColleagues <WorkspaceEventArgs>(MediatorMessages.Command_CloseItemRequested, message); // delete children for (int i = item.Items.Count - 1; i >= 0; i--) { } // delete item isItemMatch = true; StageTransitions.Remove(item); Stage.ToStageTransitionList.Remove(item.StageTransition); Items.Remove(item); Stage.ResetModified(true); OnUpdated(this, null); break; } } if (isItemMatch == false) { ShowIssue(DisplayValues.Issue_DeleteItemNotFound); } } } catch (Exception ex) { ShowIssue(ex.Message + ex.StackTrace); } }
///-------------------------------------------------------------------------------- /// <summary>This method applies stagetransition updates.</summary> ///-------------------------------------------------------------------------------- public void ProcessEditStageTransitionPerformed(StageTransitionEventArgs data) { try { bool isItemMatch = false; if (data != null && data.StageTransition != null) { foreach (StageTransitionViewModel item in StageTransitions) { if (item.StageTransition.StageTransitionID == data.StageTransition.StageTransitionID) { isItemMatch = true; item.StageTransition.TransformDataFromObject(data.StageTransition, null, false); item.OnUpdated(item, null); item.ShowInTreeView(); break; } } if (isItemMatch == false) { // add new StageTransition data.StageTransition.ToStage = Stage; StageTransitionViewModel newItem = new StageTransitionViewModel(data.StageTransition, Solution); newItem.Updated += new EventHandler(Children_Updated); StageTransitions.Add(newItem); Stage.ToStageTransitionList.Add(newItem.StageTransition); Solution.StageTransitionList.Add(newItem.StageTransition); Items.Add(newItem); OnUpdated(this, null); newItem.ShowInTreeView(); } } } catch (Exception ex) { ShowIssue(ex.Message + ex.StackTrace); } }