Search in sources :

Example 86 with Editor

use of com.intellij.openapi.editor.Editor in project intellij-community by JetBrains.

the class MavenDomTestCase method assertHighlighted.

protected void assertHighlighted(VirtualFile file, HighlightInfo... expected) throws IOException {
    Editor editor = getEditor(file);
    HighlightUsagesHandler.invoke(myProject, editor, getTestPsiFile(file));
    RangeHighlighter[] highlighters = editor.getMarkupModel().getAllHighlighters();
    List<HighlightInfo> actual = new ArrayList<>();
    for (RangeHighlighter each : highlighters) {
        if (!each.isValid())
            continue;
        int offset = each.getStartOffset();
        PsiElement element = getTestPsiFile(file).findElementAt(offset);
        element = PsiTreeUtil.getParentOfType(element, XmlTag.class);
        String text = editor.getDocument().getText().substring(offset, each.getEndOffset());
        actual.add(new HighlightInfo(element, text));
    }
    assertUnorderedElementsAreEqual(actual, expected);
}
Also used : RangeHighlighter(com.intellij.openapi.editor.markup.RangeHighlighter) ArrayList(java.util.ArrayList) Editor(com.intellij.openapi.editor.Editor) PsiElement(com.intellij.psi.PsiElement) XmlTag(com.intellij.psi.xml.XmlTag)

Example 87 with Editor

use of com.intellij.openapi.editor.Editor in project intellij-community by JetBrains.

the class MavenModuleCompletionAndResolutionTest method assertCreateModuleFixResult.

private void assertCreateModuleFixResult(String relativePath, String expectedText) {
    VirtualFile pom = myProjectRoot.findFileByRelativePath(relativePath);
    assertNotNull(pom);
    Document doc = FileDocumentManager.getInstance().getDocument(pom);
    Editor selectedEditor = FileEditorManager.getInstance(myProject).getSelectedTextEditor();
    assertEquals(doc, selectedEditor.getDocument());
    assertEquals(expectedText, doc.getText());
}
Also used : VirtualFile(com.intellij.openapi.vfs.VirtualFile) Document(com.intellij.openapi.editor.Document) Editor(com.intellij.openapi.editor.Editor)

Example 88 with Editor

use of com.intellij.openapi.editor.Editor in project intellij-community by JetBrains.

the class CCEditTaskTextAction method setSelected.

@Override
public void setSelected(AnActionEvent e, boolean state) {
    Project project = e.getProject();
    if (project == null) {
        return;
    }
    StudyToolWindow window = StudyUtils.getStudyToolWindow(project);
    if (window == null) {
        return;
    }
    Editor editor = FileEditorManager.getInstance(project).getSelectedTextEditor();
    if (editor == null) {
        return;
    }
    VirtualFile virtualFile = FileDocumentManager.getInstance().getFile(editor.getDocument());
    if (virtualFile == null) {
        StudyTaskManager.getInstance(project).setTurnEditingMode(true);
        return;
    }
    Task task = StudyUtils.getTaskForFile(project, virtualFile);
    if (task == null) {
        StudyTaskManager.getInstance(project).setTurnEditingMode(true);
        return;
    }
    VirtualFile taskDir = task.getTaskDir(project);
    if (taskDir == null) {
        StudyTaskManager.getInstance(project).setTurnEditingMode(true);
        return;
    }
    VirtualFile taskTextFile = StudyUtils.findTaskDescriptionVirtualFile(project, taskDir);
    if (taskTextFile == null) {
        LOG.info("Failed to find task.html");
        StudyTaskManager.getInstance(project).setTurnEditingMode(true);
        return;
    }
    Document document = FileDocumentManager.getInstance().getDocument(taskTextFile);
    if (!state) {
        if (document != null) {
            FileDocumentManager.getInstance().saveDocument(document);
        }
        window.leaveEditingMode(project);
        return;
    }
    window.enterEditingMode(taskTextFile, project);
}
Also used : VirtualFile(com.intellij.openapi.vfs.VirtualFile) Project(com.intellij.openapi.project.Project) Task(com.jetbrains.edu.learning.courseFormat.Task) StudyToolWindow(com.jetbrains.edu.learning.ui.StudyToolWindow) Editor(com.intellij.openapi.editor.Editor) Document(com.intellij.openapi.editor.Document)

Example 89 with Editor

use of com.intellij.openapi.editor.Editor in project intellij-community by JetBrains.

the class CCNewSubtaskAction method actionPerformed.

@Override
public void actionPerformed(AnActionEvent e) {
    DataContext dataContext = e.getDataContext();
    VirtualFile virtualFile = CommonDataKeys.VIRTUAL_FILE.getData(dataContext);
    Editor editor = CommonDataKeys.EDITOR.getData(dataContext);
    Project project = CommonDataKeys.PROJECT.getData(dataContext);
    if (virtualFile == null || project == null || editor == null) {
        return;
    }
    Task task = StudyUtils.getTaskForFile(project, virtualFile);
    if (task == null) {
        return;
    }
    addSubtask(task, project);
}
Also used : VirtualFile(com.intellij.openapi.vfs.VirtualFile) Project(com.intellij.openapi.project.Project) DataContext(com.intellij.openapi.actionSystem.DataContext) Task(com.jetbrains.edu.learning.courseFormat.Task) Editor(com.intellij.openapi.editor.Editor)

Example 90 with Editor

use of com.intellij.openapi.editor.Editor in project intellij-community by JetBrains.

the class CCAddAnswerPlaceholder method canAddPlaceholder.

private static boolean canAddPlaceholder(@NotNull CCState state) {
    Editor editor = state.getEditor();
    SelectionModel selectionModel = editor.getSelectionModel();
    TaskFile taskFile = state.getTaskFile();
    if (selectionModel.hasSelection()) {
        int start = selectionModel.getSelectionStart();
        int end = selectionModel.getSelectionEnd();
        return !arePlaceholdersIntersect(taskFile, start, end);
    }
    int offset = editor.getCaretModel().getOffset();
    return StudyUtils.getAnswerPlaceholder(offset, taskFile.getAnswerPlaceholders()) == null;
}
Also used : TaskFile(com.jetbrains.edu.learning.courseFormat.TaskFile) SelectionModel(com.intellij.openapi.editor.SelectionModel) Editor(com.intellij.openapi.editor.Editor)

Aggregations

Editor (com.intellij.openapi.editor.Editor)748 Project (com.intellij.openapi.project.Project)281 PsiFile (com.intellij.psi.PsiFile)171 VirtualFile (com.intellij.openapi.vfs.VirtualFile)122 NotNull (org.jetbrains.annotations.NotNull)110 Document (com.intellij.openapi.editor.Document)108 PsiElement (com.intellij.psi.PsiElement)107 Nullable (org.jetbrains.annotations.Nullable)103 TextRange (com.intellij.openapi.util.TextRange)77 FileEditor (com.intellij.openapi.fileEditor.FileEditor)67 TextEditor (com.intellij.openapi.fileEditor.TextEditor)48 ArrayList (java.util.ArrayList)39 IncorrectOperationException (com.intellij.util.IncorrectOperationException)36 List (java.util.List)36 EditorEx (com.intellij.openapi.editor.ex.EditorEx)35 OpenFileDescriptor (com.intellij.openapi.fileEditor.OpenFileDescriptor)29 DataContext (com.intellij.openapi.actionSystem.DataContext)27 ApplicationManager (com.intellij.openapi.application.ApplicationManager)25 FileEditorManager (com.intellij.openapi.fileEditor.FileEditorManager)25 TextAttributes (com.intellij.openapi.editor.markup.TextAttributes)22