From ecc059d38ff87c03088415ac1f7714b9d87057cd Mon Sep 17 00:00:00 2001 From: Ekaterina Tuzova Date: Sun, 15 Feb 2015 20:42:41 +0300 Subject: [PATCH] do not listed to files if project is already closed + don't forget to add lesson to the course --- .../com/jetbrains/edu/learning/StudyProjectComponent.java | 2 ++ .../src/com/jetbrains/edu/courseFormat/Course.java | 7 ++++++- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/python/educational/interactive-learning/src/com/jetbrains/edu/learning/StudyProjectComponent.java b/python/educational/interactive-learning/src/com/jetbrains/edu/learning/StudyProjectComponent.java index 7b6844a938c7..0327f3d3663f 100644 --- a/python/educational/interactive-learning/src/com/jetbrains/edu/learning/StudyProjectComponent.java +++ b/python/educational/interactive-learning/src/com/jetbrains/edu/learning/StudyProjectComponent.java @@ -233,6 +233,7 @@ public class StudyProjectComponent implements ProjectComponent { } } } + myListener = null; } @Override @@ -285,6 +286,7 @@ public class StudyProjectComponent implements ProjectComponent { private class FileCreatedByUserListener extends VirtualFileAdapter { @Override public void fileCreated(@NotNull VirtualFileEvent event) { + if (myProject.isDisposed()) return; final VirtualFile createdFile = event.getFile(); final VirtualFile taskDir = createdFile.getParent(); final Course course = StudyTaskManager.getInstance(myProject).getCourse(); diff --git a/python/educational/src/com/jetbrains/edu/courseFormat/Course.java b/python/educational/src/com/jetbrains/edu/courseFormat/Course.java index 9bf78703364c..9d0223457cec 100644 --- a/python/educational/src/com/jetbrains/edu/courseFormat/Course.java +++ b/python/educational/src/com/jetbrains/edu/courseFormat/Course.java @@ -4,6 +4,7 @@ import com.intellij.lang.Language; import org.jetbrains.annotations.NotNull; import java.util.ArrayList; +import java.util.Collections; import java.util.List; public class Course { @@ -17,7 +18,11 @@ public class Course { private String myLanguage; public List getLessons() { - return lessons; + return Collections.unmodifiableList(lessons); + } + + public void addLesson(@NotNull final Lesson lesson) { + lessons.add(lesson); } public String getAuthor() {