remove usages of redundant CCProjectService
authorliana.bakradze <liana.bakradze@jetbrains.com>
Thu, 7 Apr 2016 14:41:07 +0000 (17:41 +0300)
committerliana.bakradze <liana.bakradze@jetbrains.com>
Thu, 7 Apr 2016 14:41:07 +0000 (17:41 +0300)
python/educational-core/course-creator/src/com/jetbrains/edu/coursecreator/actions/CCAddAsTaskFile.java
python/educational-core/course-creator/src/com/jetbrains/edu/coursecreator/actions/CCCreateCourseArchive.java
python/educational-core/course-creator/src/com/jetbrains/edu/coursecreator/actions/CCCreateTaskFile.java
python/educational-core/course-creator/src/com/jetbrains/edu/coursecreator/actions/CCEditTaskTextAction.java
python/educational-core/course-creator/src/com/jetbrains/edu/coursecreator/actions/CCPushCourse.java
python/educational-core/course-creator/src/com/jetbrains/edu/coursecreator/actions/CCPushLesson.java
python/educational-core/course-creator/src/com/jetbrains/edu/coursecreator/actions/CCShowPreview.java
python/educational-core/course-creator/src/com/jetbrains/edu/coursecreator/ui/CreateCourseArchiveDialog.java
python/educational-core/course-creator/src/com/jetbrains/edu/coursecreator/ui/CreateCourseArchivePanel.java

index 867cc77440b6418f26c779965862097b65258301..fa5423922e37443eb1b9328ccb9874138286fe20 100644 (file)
@@ -7,8 +7,8 @@ import com.intellij.openapi.actionSystem.CommonDataKeys;
 import com.intellij.openapi.actionSystem.Presentation;
 import com.intellij.openapi.project.Project;
 import com.intellij.openapi.vfs.VirtualFile;
+import com.jetbrains.edu.learning.StudyUtils;
 import com.jetbrains.edu.learning.courseFormat.Task;
-import com.jetbrains.edu.coursecreator.CCProjectService;
 
 public class CCAddAsTaskFile extends AnAction {
   @Override
@@ -21,7 +21,7 @@ public class CCAddAsTaskFile extends AnAction {
     if (file == null) {
       return;
     }
-    Task task = CCProjectService.getInstance(project).getTask(file);
+    Task task = StudyUtils.getTask(project, file);
     if (task == null) {
       return;
     }
@@ -39,7 +39,7 @@ public class CCAddAsTaskFile extends AnAction {
       return;
     }
     VirtualFile file = CommonDataKeys.VIRTUAL_FILE.getData(e.getDataContext());
-    if (file == null || file.isDirectory() || CCProjectService.getInstance(project).getTaskFile(file) != null) {
+    if (file == null || file.isDirectory() || StudyUtils.getTaskFile(project, file) != null) {
       presentation.setEnabledAndVisible(false);
     }
   }
index 486f3b247c5dc83407f98dbb46bfc8d28009453e..bbef6bc15515ac198da960d5a73799e9ec4eff1e 100644 (file)
@@ -7,6 +7,7 @@ import com.intellij.ide.projectView.ProjectView;
 import com.intellij.openapi.actionSystem.AnActionEvent;
 import com.intellij.openapi.actionSystem.CommonDataKeys;
 import com.intellij.openapi.actionSystem.LangDataKeys;
+import com.intellij.openapi.actionSystem.Presentation;
 import com.intellij.openapi.application.ApplicationManager;
 import com.intellij.openapi.diagnostic.Logger;
 import com.intellij.openapi.module.Module;
@@ -20,6 +21,7 @@ import com.intellij.openapi.vfs.VirtualFile;
 import com.intellij.openapi.vfs.VirtualFileManager;
 import com.intellij.util.containers.HashMap;
 import com.intellij.util.io.ZipUtil;
+import com.jetbrains.edu.learning.StudyTaskManager;
 import com.jetbrains.edu.learning.core.EduNames;
 import com.jetbrains.edu.learning.core.EduUtils;
 import com.jetbrains.edu.learning.courseFormat.Course;
@@ -27,7 +29,6 @@ import com.jetbrains.edu.learning.courseFormat.Lesson;
 import com.jetbrains.edu.learning.courseFormat.Task;
 import com.jetbrains.edu.learning.courseFormat.TaskFile;
 import com.jetbrains.edu.coursecreator.CCLanguageManager;
-import com.jetbrains.edu.coursecreator.CCProjectService;
 import com.jetbrains.edu.coursecreator.CCUtils;
 import com.jetbrains.edu.coursecreator.ui.CreateCourseArchiveDialog;
 import org.jetbrains.annotations.NotNull;
@@ -56,7 +57,9 @@ public class CCCreateCourseArchive extends DumbAwareAction {
 
   @Override
   public void update(@NotNull AnActionEvent e) {
-    CCProjectService.setCCActionAvailable(e);
+    Presentation presentation = e.getPresentation();
+    Project project = e.getProject();
+    presentation.setEnabledAndVisible(project != null && CCUtils.isCourseCreator(project));
   }
 
   @Override
@@ -70,8 +73,7 @@ public class CCCreateCourseArchive extends DumbAwareAction {
   }
 
   private void createCourseArchive(final Project project, Module module) {
-    final CCProjectService service = CCProjectService.getInstance(project);
-    final Course course = service.getCourse();
+    final Course course = StudyTaskManager.getInstance(project).getCourse();
     if (course == null) return;
     CreateCourseArchiveDialog dlg = new CreateCourseArchiveDialog(project, this);
     dlg.show();
@@ -195,8 +197,7 @@ public class CCCreateCourseArchive extends DumbAwareAction {
 
   @SuppressWarnings("IOResourceOpenedButNotSafelyClosed")
   private static void generateJson(@NotNull final Project project, VirtualFile parentDir) {
-    final CCProjectService service = CCProjectService.getInstance(project);
-    final Course course = service.getCourse();
+    final Course course = StudyTaskManager.getInstance(project).getCourse();
     final Gson gson = new GsonBuilder().setPrettyPrinting().excludeFieldsWithoutExposeAnnotation().create();
     final String json = gson.toJson(course);
     final File courseJson = new File(parentDir.getPath(), EduNames.COURSE_META_FILE);
index eb5598625cce8439ad37c84efc2ac464c1d0493c..88e14494ef396e6bfc47217d6ad1d05edcf2adcb 100644 (file)
@@ -19,12 +19,12 @@ import com.intellij.openapi.project.Project;
 import com.intellij.openapi.vfs.VirtualFile;
 import com.intellij.psi.PsiDirectory;
 import com.intellij.psi.PsiElement;
+import com.jetbrains.edu.learning.StudyTaskManager;
 import com.jetbrains.edu.learning.core.EduNames;
 import com.jetbrains.edu.learning.courseFormat.Course;
 import com.jetbrains.edu.learning.courseFormat.Lesson;
 import com.jetbrains.edu.learning.courseFormat.Task;
 import com.jetbrains.edu.coursecreator.CCLanguageManager;
-import com.jetbrains.edu.coursecreator.CCProjectService;
 import com.jetbrains.edu.coursecreator.CCUtils;
 import com.jetbrains.edu.coursecreator.ui.CreateTaskFileDialog;
 import org.jetbrains.annotations.NotNull;
@@ -51,8 +51,7 @@ public class CCCreateTaskFile extends DumbAwareAction {
     if (lessonDir == null) {
       return;
     }
-    final CCProjectService service = CCProjectService.getInstance(project);
-    final Course course = service.getCourse();
+    final Course course = StudyTaskManager.getInstance(project).getCourse();
     final Lesson lesson = course.getLesson(lessonDir.getName());
     final Task task = lesson.getTask(taskDir.getName());
 
@@ -105,39 +104,26 @@ public class CCCreateTaskFile extends DumbAwareAction {
 
   @Override
   public void update(@NotNull AnActionEvent event) {
-    if (!CCProjectService.setCCActionAvailable(event)) {
-      return;
-    }
     final Presentation presentation = event.getPresentation();
+    presentation.setEnabledAndVisible(false);
     final Project project = event.getData(CommonDataKeys.PROJECT);
     if (project == null) {
-      presentation.setVisible(false);
-      presentation.setEnabled(false);
       return;
     }
-
     final IdeView view = event.getData(LangDataKeys.IDE_VIEW);
     if (view == null) {
-      presentation.setVisible(false);
-      presentation.setEnabled(false);
       return;
     }
 
     final PsiDirectory[] directories = view.getDirectories();
     if (directories.length == 0) {
-      presentation.setVisible(false);
-      presentation.setEnabled(false);
       return;
     }
     final PsiDirectory directory = DirectoryChooserUtil.getOrChooseDirectory(view);
-    final CCProjectService service = CCProjectService.getInstance(project);
-    final Course course = service.getCourse();
+    final Course course = StudyTaskManager.getInstance(project).getCourse();
     if (course != null && directory != null && !directory.getName().contains(EduNames.TASK)) {
-      presentation.setVisible(false);
-      presentation.setEnabled(false);
       return;
     }
-    presentation.setVisible(true);
-    presentation.setEnabled(true);
+    presentation.setEnabledAndVisible(true);
   }
 }
index a528ba6039b60fa81bde89d092b12353a837e3c0..d86a0ae61754c265835ad1b7abcc599bb2d47906 100644 (file)
@@ -9,7 +9,7 @@ import com.intellij.openapi.fileEditor.FileDocumentManager;
 import com.intellij.openapi.project.DumbAware;
 import com.intellij.openapi.project.Project;
 import com.intellij.openapi.vfs.VirtualFile;
-import com.jetbrains.edu.coursecreator.CCProjectService;
+import com.jetbrains.edu.coursecreator.CCUtils;
 import com.jetbrains.edu.learning.StudyState;
 import com.jetbrains.edu.learning.StudyTaskManager;
 import com.jetbrains.edu.learning.StudyUtils;
@@ -74,7 +74,7 @@ public class CCEditTaskTextAction extends ToggleAction implements DumbAware {
       return;
     }
 
-    if (CCProjectService.getInstance(project).getCourse() == null) {
+    if (!CCUtils.isCourseCreator(project)) {
       e.getPresentation().setEnabledAndVisible(false);
     }
   }
index 78410c9ad3a1beca5375304fac0bf23382ed35f0..f1a1f3006bf61ac7c5280734ff62533d73651bae 100644 (file)
@@ -4,10 +4,12 @@ import com.intellij.ide.IdeView;
 import com.intellij.openapi.actionSystem.AnActionEvent;
 import com.intellij.openapi.actionSystem.CommonDataKeys;
 import com.intellij.openapi.actionSystem.LangDataKeys;
+import com.intellij.openapi.actionSystem.Presentation;
 import com.intellij.openapi.project.DumbAwareAction;
 import com.intellij.openapi.project.Project;
+import com.jetbrains.edu.coursecreator.CCUtils;
+import com.jetbrains.edu.learning.StudyTaskManager;
 import com.jetbrains.edu.learning.courseFormat.Course;
-import com.jetbrains.edu.coursecreator.CCProjectService;
 import com.jetbrains.edu.learning.stepic.EduStepicConnector;
 import org.jetbrains.annotations.NotNull;
 
@@ -18,7 +20,9 @@ public class CCPushCourse extends DumbAwareAction {
 
   @Override
   public void update(@NotNull AnActionEvent e) {
-    CCProjectService.setCCActionAvailable(e);
+    Presentation presentation = e.getPresentation();
+    Project project = e.getProject();
+    presentation.setEnabledAndVisible(project != null && CCUtils.isCourseCreator(project));
   }
 
   @Override
@@ -28,7 +32,7 @@ public class CCPushCourse extends DumbAwareAction {
     if (view == null || project == null) {
       return;
     }
-    final Course course = CCProjectService.getInstance(project).getCourse();
+    final Course course = StudyTaskManager.getInstance(project).getCourse();
     if (course == null) {
       return;
     }
index 068b82bf0b1a34605f87b287d7385bc39849788a..4e3f7ecc74142171762fe6cf94c3d9e8733f591e 100644 (file)
@@ -11,9 +11,9 @@ import com.intellij.openapi.progress.Task;
 import com.intellij.openapi.project.DumbAwareAction;
 import com.intellij.openapi.project.Project;
 import com.intellij.psi.PsiDirectory;
+import com.jetbrains.edu.learning.StudyTaskManager;
 import com.jetbrains.edu.learning.courseFormat.Course;
 import com.jetbrains.edu.learning.courseFormat.Lesson;
-import com.jetbrains.edu.coursecreator.CCProjectService;
 import com.jetbrains.edu.learning.stepic.EduStepicConnector;
 import org.jetbrains.annotations.NotNull;
 
@@ -30,7 +30,7 @@ public class CCPushLesson extends DumbAwareAction {
     if (view == null || project == null) {
       return;
     }
-    final Course course = CCProjectService.getInstance(project).getCourse();
+    final Course course = StudyTaskManager.getInstance(project).getCourse();
     if (course == null) {
       return;
     }
@@ -51,7 +51,7 @@ public class CCPushLesson extends DumbAwareAction {
     if (view == null || project == null) {
       return;
     }
-    final Course course = CCProjectService.getInstance(project).getCourse();
+    final Course course = StudyTaskManager.getInstance(project).getCourse();
     if (course == null) {
       return;
     }
index f0662db25052a8424954bf5ca55fff6e107f17fc..dd97b6f7f3377f7a266a50beb39034d13079a30e 100644 (file)
@@ -37,12 +37,13 @@ import com.intellij.openapi.vfs.VirtualFile;
 import com.intellij.psi.PsiDirectory;
 import com.intellij.psi.PsiFile;
 import com.intellij.ui.JBColor;
+import com.jetbrains.edu.learning.StudyTaskManager;
+import com.jetbrains.edu.learning.StudyUtils;
 import com.jetbrains.edu.learning.core.EduAnswerPlaceholderPainter;
 import com.jetbrains.edu.learning.core.EduUtils;
 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.coursecreator.CCProjectService;
 import com.jetbrains.edu.coursecreator.CCUtils;
 import org.jetbrains.annotations.NotNull;
 
@@ -61,24 +62,23 @@ public class CCShowPreview extends DumbAwareAction {
 
   @Override
   public void update(@NotNull AnActionEvent e) {
-    if (!CCProjectService.setCCActionAvailable(e)) {
-      return;
-    }
+    Presentation presentation = e.getPresentation();
+    presentation.setEnabledAndVisible(false);
     Project project = e.getProject();
     if (project == null) {
       return;
     }
-    Presentation presentation = e.getPresentation();
-    presentation.setEnabledAndVisible(false);
+    if (!CCUtils.isCourseCreator(project)) {
+      return;
+    }
     final PsiFile file = CommonDataKeys.PSI_FILE.getData(e.getDataContext());
-    if (file != null && CCProjectService.getInstance(project).getTaskFile(file.getVirtualFile()) != null) {
+    if (file != null && StudyUtils.getTaskFile(project, file.getVirtualFile()) != null) {
       presentation.setEnabledAndVisible(true);
     }
   }
 
   @Override
   public void actionPerformed(@NotNull AnActionEvent e) {
-    //TODO: need to rewrite this action using new GENERATED_ROOT_FOLDER
     final Project project = e.getProject();
     Module module = LangDataKeys.MODULE.getData(e.getDataContext());
     if (project == null || module == null) {
@@ -88,13 +88,12 @@ public class CCShowPreview extends DumbAwareAction {
     if (file == null) {
       return;
     }
-    final CCProjectService service = CCProjectService.getInstance(project);
-    Course course = service.getCourse();
+    Course course = StudyTaskManager.getInstance(project).getCourse();
     if (course == null) {
       return;
     }
     VirtualFile virtualFile = file.getVirtualFile();
-    TaskFile taskFile = service.getTaskFile(virtualFile);
+    TaskFile taskFile = StudyUtils.getTaskFile(project, virtualFile);
     if (taskFile == null) {
       return;
     }
index d1bc4fca34695c254e50c5307c89cb12ed4e9081..538665e54864a144ddb6075611958d0ad9111311 100644 (file)
@@ -2,8 +2,8 @@ package com.jetbrains.edu.coursecreator.ui;
 
 import com.intellij.openapi.project.Project;
 import com.intellij.openapi.ui.DialogWrapper;
+import com.jetbrains.edu.learning.StudyTaskManager;
 import com.jetbrains.edu.learning.courseFormat.Course;
-import com.jetbrains.edu.coursecreator.CCProjectService;
 import com.jetbrains.edu.coursecreator.actions.CCCreateCourseArchive;
 import org.jetbrains.annotations.NotNull;
 import org.jetbrains.annotations.Nullable;
@@ -17,7 +17,7 @@ public class CreateCourseArchiveDialog extends DialogWrapper {
 
   public CreateCourseArchiveDialog(@NotNull final  Project project, CCCreateCourseArchive action) {
     super(project);
-    Course course = CCProjectService.getInstance(project).getCourse();
+    Course course = StudyTaskManager.getInstance(project).getCourse();
     assert course != null;
     setTitle("Create Course Archive");
     myPanel = new CreateCourseArchivePanel(project, this, course.getName());
index c84a5cdf2b26011ce145f62bcc470cf350b4c5ae..1eeb2edd0b14bef2ba7a45ed125f45af3e2e72bd 100644 (file)
@@ -33,7 +33,7 @@ public class CreateCourseArchivePanel extends JPanel {
     myNameField.setText(sanitizedName.startsWith("_") ? EduNames.COURSE : sanitizedName);
     myLocationField.setText(project.getBasePath());
     FileChooserDescriptor descriptor = FileChooserDescriptorFactory.createSingleFolderDescriptor();
-    myLocationField.addBrowseFolderListener("Choose location folder", null, project, descriptor);
+    myLocationField.addBrowseFolderListener("Choose Location Folder", null, project, descriptor);
     myLocationField.addActionListener(new ActionListener() {
       @Override
       public void actionPerformed(ActionEvent e) {