import com.intellij.openapi.vfs.VirtualFile;
import com.intellij.openapi.vfs.VirtualFileManager;
import com.intellij.psi.PsiDirectory;
+import com.intellij.util.containers.ContainerUtil;
import com.jetbrains.edu.learning.StudyUtils;
import com.jetbrains.edu.learning.courseFormat.*;
import org.jetbrains.annotations.NonNls;
studentDocument.addDocumentListener(listener);
for (AnswerPlaceholder placeholder : taskFile.getActivePlaceholders()) {
+ Set<Integer> indexes = placeholder.getSubtaskInfos().keySet();
+ int activeSubtaskIndex = task.getActiveSubtaskIndex();
+ if (Collections.min(indexes) < activeSubtaskIndex) {
+ Integer max = Collections.max(ContainerUtil.filter(indexes, i -> i < activeSubtaskIndex));
+ String possibleAnswer = placeholder.getSubtaskInfos().get(max).getPossibleAnswer();
+ replaceAnswerPlaceholder(project, studentDocument, placeholder, placeholder.getRealLength(), possibleAnswer);
+ continue;
+ }
replaceAnswerPlaceholder(project, studentDocument, placeholder, placeholder.getRealLength(), placeholder.getTaskText());
}
studentDocument.removeDocumentListener(listener);