import com.intellij.openapi.actionSystem.AnAction;
import com.intellij.openapi.actionSystem.AnActionEvent;
+import com.intellij.openapi.actionSystem.Presentation;
import com.intellij.openapi.application.ApplicationManager;
import com.intellij.openapi.command.CommandProcessor;
import com.intellij.openapi.editor.Document;
import com.intellij.openapi.project.Project;
+import com.jetbrains.edu.learning.StudyTaskManager;
+import com.jetbrains.edu.learning.core.EduNames;
import com.jetbrains.edu.learning.courseFormat.AnswerPlaceholder;
+import com.jetbrains.edu.learning.courseFormat.Course;
import com.jetbrains.edu.learning.courseFormat.TaskFile;
import com.jetbrains.edu.learning.StudyState;
import com.jetbrains.edu.learning.StudyUtils;
StudyUtils.updateAction(e);
final Project project = e.getProject();
if (project != null) {
+
+ Course course = StudyTaskManager.getInstance(project).getCourse();
+ Presentation presentation = e.getPresentation();
+ if (course != null && !EduNames.STUDY.equals(course.getCourseMode())) {
+ presentation.setEnabled(false);
+ presentation.setVisible(true);
+ return;
+ }
StudyEditor studyEditor = StudyUtils.getSelectedStudyEditor(project);
StudyState studyState = new StudyState(studyEditor);
if (!studyState.isValid()) {
- e.getPresentation().setEnabledAndVisible(false);
+ presentation.setEnabledAndVisible(false);
return;
}
TaskFile taskFile = studyState.getTaskFile();
if (taskFile.getAnswerPlaceholders().isEmpty()) {
- e.getPresentation().setEnabledAndVisible(false);
+ presentation.setEnabledAndVisible(false);
}
}
}