in intellij-plugin/educational-core/src/com/jetbrains/edu/learning/actions/CheckAction.kt [98:123]
override fun update(e: AnActionEvent) {
if (CheckPanel.ACTION_PLACE == e.place) {
//action is being added only in valid context, no project in event in this case, so just enable it
return
}
updateAction(e)
val project = e.project ?: return
val taskFile = project.selectedTaskFile
if (taskFile != null) {
templatePresentation.text = taskFile.task.getUICheckLabel()
}
if (e.presentation.isEnabled) {
e.presentation.isEnabled = !CheckActionState.getInstance(project).isLocked
return
}
if (!isCourseCreator(project)) {
return
}
val virtualFile = CommonDataKeys.VIRTUAL_FILE.getData(e.dataContext)
if (virtualFile == null || FileEditorManager.getInstance(project).selectedTextEditor == null) {
return
}
if (virtualFile.isTestsFile(project)) {
e.presentation.isEnabledAndVisible = true
}
}