/// <summary> /// i will remove the CaseQueue and unSubscribe 【OnLoopChangeEvent】 /// </summary> /// <param name="yourCsaeQueue">your CsaeQueue that will rwmove</param> private void DelCsaeQueue(MyCsaeQueue yourCsaeQueue) { if (myCsaeQueueList.Count > 1) { ReportQueueAction(yourCsaeQueue.NowCaseNode, MyConfiguration.CaseShowJumpGotoNode); ReportQueueAction(myCsaeQueueList[myCsaeQueueList.Count - 2].NowCaseNode, MyConfiguration.CaseShowJumpGotoNode + MyConfiguration.CaseShowGotoNodeStart); } yourCsaeQueue.OnLoopChangeEvent -= OnLoopChangeEvent; myCsaeQueueList.Remove(yourCsaeQueue); }
//// <summary> /// i will add new CsaeQueue and Subscribe 【OnLoopChangeEvent】(and will trigger【OnQueueChangeEvent】) /// </summary> /// <param name="yourCsaeQueue">your CsaeQueue that will add</param> /// <param name="yourProjectId">Project Id to OnQueueChangeEvent</param> /// <param name="yourCaseId">Case Id to OnQueueChangeEvent</param> private void AddCsaeQueue(MyCsaeQueue yourCsaeQueue, int yourProjectId, int yourCaseId) { ReportQueueAction(myCsaeQueueList[myCsaeQueueList.Count - 1].NowCaseNode, string.Format(MyConfiguration.CaseShowJumpGotoNode + "GoTo Project:{0} Case:{1}", yourProjectId, yourCaseId)); AddCsaeQueue(yourCsaeQueue); ReportQueueAction(myCsaeQueueList[myCsaeQueueList.Count - 1].NowCaseNode, MyConfiguration.CaseShowGotoNodeStart); }
/// <summary> /// i will add new CsaeQueue and Subscribe 【OnLoopChangeEvent】 /// </summary> /// <param name="yourCsaeQueue">your CsaeQueue that will add</param> private void AddCsaeQueue(MyCsaeQueue yourCsaeQueue) { myCsaeQueueList.Add(yourCsaeQueue); yourCsaeQueue.OnLoopChangeEvent += OnLoopChangeEvent; }