public LessonStage CreateLessonStage() { LessonStage lessonStage = new LessonStage(m_ShapeActionFactory); m_LessonStages.Add(lessonStage); lessonStage.SetNum(m_LessonStages.Count - 1); lessonStage.BecameDirty += OnBecameDirty; return(lessonStage); }
public void Remove(LessonStage lessonStage) { lessonStage.ClearActions(); m_LessonStages.Remove(lessonStage); lessonStage.BecameDirty -= OnBecameDirty; for (var i = 0; i < m_LessonStages.Count; i++) { m_LessonStages[i].SetNum(i); } }
public void SwapStages(LessonStage lessonStage, bool up) { int stageIndex = m_LessonStages.IndexOf(lessonStage); int swapStageIndex = stageIndex + (up ? -1 : 1); if (swapStageIndex < 0 || swapStageIndex >= m_LessonStages.Count) { return; } LessonStage tmp = m_LessonStages[stageIndex]; m_LessonStages[stageIndex] = m_LessonStages[swapStageIndex]; m_LessonStages[swapStageIndex] = tmp; for (var i = 0; i < m_LessonStages.Count; i++) { m_LessonStages[i].SetNum(i); } }