import com.intellij.openapi.vfs.LocalFileSystem;
import com.intellij.openapi.vfs.VirtualFile;
import com.intellij.openapi.vfs.VirtualFileManager;
-import com.jetbrains.edu.learning.StudyProjectComponent;
import com.jetbrains.edu.learning.StudyTaskManager;
+import com.jetbrains.edu.learning.StudyUtils;
import com.jetbrains.edu.learning.core.EduNames;
import com.jetbrains.edu.learning.courseFormat.Course;
import com.jetbrains.edu.learning.courseFormat.Lesson;
File coursesDir = new File(PathManager.getConfigPath(), "courses");
File courseDir = new File(coursesDir, oldCourse.getName() + "-" + myProject.getName());
oldCourse.setCourseDirectory(courseDir.getPath());
- StudyProjectComponent.getInstance(myProject).registerStudyToolWindow(oldCourse);
+ StudyUtils.registerStudyToolWindow(oldCourse, myProject);
transformFiles(oldCourse, myProject);
}
}
import com.intellij.openapi.vfs.VirtualFileEvent;
import com.intellij.openapi.vfs.VirtualFileManager;
import com.intellij.openapi.wm.ToolWindow;
-import com.intellij.openapi.wm.ToolWindowAnchor;
import com.intellij.openapi.wm.ToolWindowManager;
import com.intellij.util.containers.hash.HashMap;
import com.jetbrains.edu.learning.actions.StudyActionWithShortcut;
import com.jetbrains.edu.learning.ui.StudyToolWindowFactory;
import javafx.application.Platform;
import org.jetbrains.annotations.NotNull;
-import org.jetbrains.annotations.Nullable;
import javax.swing.*;
import javax.swing.event.HyperlinkEvent;
}
- registerStudyToolWindow(course);
+ StudyUtils.registerStudyToolWindow(course, myProject);
ApplicationManager.getApplication().invokeLater(new DumbAwareRunnable() {
@Override
public void run() {
});
}
- public void registerStudyToolWindow(@Nullable final Course course) {
- if (course != null && "PyCharm".equals(course.getCourseType())) {
- final ToolWindowManager toolWindowManager = ToolWindowManager.getInstance(myProject);
- registerToolWindows(toolWindowManager);
- final ToolWindow studyToolWindow = toolWindowManager.getToolWindow(StudyToolWindowFactory.STUDY_TOOL_WINDOW);
- if (studyToolWindow != null) {
- studyToolWindow.show(null);
- StudyUtils.initToolWindows(myProject);
- }
- }
- }
-
private void registerShortcuts() {
StudyToolWindow window = StudyUtils.getStudyToolWindow(myProject);
if (window != null) {
}
}
- private void registerToolWindows(@NotNull final ToolWindowManager toolWindowManager) {
- final ToolWindow toolWindow = toolWindowManager.getToolWindow(StudyToolWindowFactory.STUDY_TOOL_WINDOW);
- if (toolWindow == null) {
- toolWindowManager.registerToolWindow(StudyToolWindowFactory.STUDY_TOOL_WINDOW, true, ToolWindowAnchor.RIGHT, myProject, true);
- }
- }
-
private void updateCourse() {
final Course currentCourse = StudyTaskManager.getInstance(myProject).getCourse();
final CourseInfo info = CourseInfo.fromCourse(currentCourse);
import com.intellij.openapi.vfs.VirtualFile;
import com.intellij.openapi.wm.IdeFocusManager;
import com.intellij.openapi.wm.ToolWindow;
+import com.intellij.openapi.wm.ToolWindowAnchor;
import com.intellij.openapi.wm.ToolWindowManager;
import com.intellij.psi.PsiDirectory;
import com.intellij.psi.PsiElement;
int startOffset = placeholder.getOffset();
editor.getSelectionModel().setSelection(startOffset, startOffset + placeholder.getRealLength());
}
+
+ public static void registerStudyToolWindow(@Nullable final Course course, Project project) {
+ if (course != null && "PyCharm".equals(course.getCourseType())) {
+ final ToolWindowManager toolWindowManager = ToolWindowManager.getInstance(project);
+ registerToolWindows(toolWindowManager, project);
+ final ToolWindow studyToolWindow = toolWindowManager.getToolWindow(StudyToolWindowFactory.STUDY_TOOL_WINDOW);
+ if (studyToolWindow != null) {
+ studyToolWindow.show(null);
+ initToolWindows(project);
+ }
+ }
+ }
+
+ private static void registerToolWindows(@NotNull final ToolWindowManager toolWindowManager, Project project) {
+ final ToolWindow toolWindow = toolWindowManager.getToolWindow(StudyToolWindowFactory.STUDY_TOOL_WINDOW);
+ if (toolWindow == null) {
+ toolWindowManager.registerToolWindow(StudyToolWindowFactory.STUDY_TOOL_WINDOW, true, ToolWindowAnchor.RIGHT, project, true);
+ }
+ }
}
import com.intellij.psi.PsiFile;
import com.intellij.psi.PsiManager;
import com.intellij.util.containers.ContainerUtil;
-import com.jetbrains.edu.learning.StudyProjectComponent;
import com.jetbrains.edu.learning.StudySerializationUtils;
import com.jetbrains.edu.learning.StudyTaskManager;
import com.jetbrains.edu.learning.StudyUtils;
StudyGenerator.createCourse(course, baseDir, courseDirectory, project);
course.setCourseDirectory(courseDirectory.getAbsolutePath());
VirtualFileManager.getInstance().refreshWithoutFileWatcher(true);
- StudyProjectComponent.getInstance(project).registerStudyToolWindow(course);
+ StudyUtils.registerStudyToolWindow(course, project);
openFirstTask(course, project);
EduUsagesCollector.projectTypeCreated(course.isAdaptive() ? EduNames.ADAPTIVE : EduNames.STUDY);
});
import com.jetbrains.edu.coursecreator.actions.CCCreateLesson;
import com.jetbrains.edu.coursecreator.actions.CCCreateTask;
import com.jetbrains.edu.coursecreator.ui.CCNewProjectPanel;
-import com.jetbrains.edu.learning.StudyProjectComponent;
import com.jetbrains.edu.learning.StudyTaskManager;
+import com.jetbrains.edu.learning.StudyUtils;
import com.jetbrains.edu.learning.core.EduNames;
import com.jetbrains.edu.learning.courseFormat.Course;
import com.jetbrains.edu.learning.statistics.EduUsagesCollector;
course.setCourseDirectory(courseDir.getPath());
StudyTaskManager.getInstance(project).setCourse(course);
- StudyProjectComponent.getInstance(project).registerStudyToolWindow(course);
+ StudyUtils.registerStudyToolWindow(course, project);
return course;
}