当前位置: 首页>>代码示例>>Java>>正文


Java FileEditorManager.isFileOpen方法代码示例

本文整理汇总了Java中com.intellij.openapi.fileEditor.FileEditorManager.isFileOpen方法的典型用法代码示例。如果您正苦于以下问题:Java FileEditorManager.isFileOpen方法的具体用法?Java FileEditorManager.isFileOpen怎么用?Java FileEditorManager.isFileOpen使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在com.intellij.openapi.fileEditor.FileEditorManager的用法示例。


在下文中一共展示了FileEditorManager.isFileOpen方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: updateOpenedTestFiles

import com.intellij.openapi.fileEditor.FileEditorManager; //导入方法依赖的package包/类
private static void updateOpenedTestFiles(@NotNull Project project,
                                          @NotNull VirtualFile taskDir,
                                          int fromTaskNumber,
                                          int toSubtaskNumber) {
  String fromSubtaskTestName = getTestFileName(project, fromTaskNumber);
  String toSubtaskTestName = getTestFileName(project, toSubtaskNumber);
  if (fromSubtaskTestName == null || toSubtaskTestName == null) {
    return;
  }
  VirtualFile fromTest = taskDir.findChild(fromSubtaskTestName);
  VirtualFile toTest = taskDir.findChild(toSubtaskTestName);
  if (fromTest == null || toTest == null) {
    return;
  }
  FileEditorManager editorManager = FileEditorManager.getInstance(project);
  if (editorManager.isFileOpen(fromTest)) {
    VirtualFile[] selectedFiles = editorManager.getSelectedFiles();
    boolean isSelected = ArrayUtil.contains(fromTest, selectedFiles);
    editorManager.closeFile(fromTest);
    editorManager.openFile(toTest, isSelected);
    if (!isSelected) {
      for (VirtualFile file : selectedFiles) {
        editorManager.openFile(file, true);
      }
    }
  }
}
 
开发者ID:medvector,项目名称:educational-plugin,代码行数:28,代码来源:StudySubtaskUtils.java

示例2: actionPerformed

import com.intellij.openapi.fileEditor.FileEditorManager; //导入方法依赖的package包/类
@Override
public void actionPerformed(AnActionEvent e) {
  final DataContext context = e.getDataContext();
  final VirtualFile file = CommonDataKeys.VIRTUAL_FILE.getData(context);
  final Project project = e.getProject();
  if (file == null || project == null) {
    return;
  }
  final TaskFile taskFile = StudyUtils.getTaskFile(project, file);
  if (taskFile == null) {
    return;
  }
  Editor editor = CommonDataKeys.EDITOR.getData(context);
  if (editor == null) {
    FileEditorManager instance = FileEditorManager.getInstance(project);
    if (!instance.isFileOpen(file)) {
      return;
    }
    FileEditor fileEditor = instance.getSelectedEditor(file);
    if (!(fileEditor instanceof TextEditor)) {
      return;
    }
    editor = ((TextEditor)fileEditor).getEditor();
  }
  List<AnswerPlaceholder> placeholders = new ArrayList<>(taskFile.getAnswerPlaceholders());
  final ClearPlaceholders action = new ClearPlaceholders(taskFile, placeholders, editor);
  EduUtils.runUndoableAction(project, ACTION_NAME, action, UndoConfirmationPolicy.REQUEST_CONFIRMATION);
}
 
开发者ID:medvector,项目名称:educational-plugin,代码行数:29,代码来源:CCDeleteAllAnswerPlaceholdersAction.java

示例3: activatePsiElementIfOpen

import com.intellij.openapi.fileEditor.FileEditorManager; //导入方法依赖的package包/类
private static boolean activatePsiElementIfOpen(@NotNull PsiElement elt, boolean searchForOpen, boolean requestFocus) {
  if (!elt.isValid()) return false;
  elt = elt.getNavigationElement();
  final PsiFile file = elt.getContainingFile();
  if (file == null || !file.isValid()) return false;

  VirtualFile vFile = file.getVirtualFile();
  if (vFile == null) return false;

  if (!EditorHistoryManager.getInstance(elt.getProject()).hasBeenOpen(vFile)) return false;

  final FileEditorManager fem = FileEditorManager.getInstance(elt.getProject());
  if (!fem.isFileOpen(vFile)) {
    fem.openFile(vFile, requestFocus, searchForOpen);
  }

  final TextRange range = elt.getTextRange();
  if (range == null) return false;

  final FileEditor[] editors = fem.getEditors(vFile);
  for (FileEditor editor : editors) {
    if (editor instanceof TextEditor) {
      final Editor text = ((TextEditor)editor).getEditor();
      final int offset = text.getCaretModel().getOffset();

      if (range.containsOffset(offset)) {
        // select the file
        fem.openFile(vFile, requestFocus, searchForOpen);
        return true;
      }
    }
  }

  return false;
}
 
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:36,代码来源:NavigationUtil.java

示例4: actionPerformed

import com.intellij.openapi.fileEditor.FileEditorManager; //导入方法依赖的package包/类
@Override
public void actionPerformed(AnActionEvent e) {
  final DataContext context = e.getDataContext();
  final VirtualFile file = CommonDataKeys.VIRTUAL_FILE.getData(context);
  final Project project = e.getProject();
  if (file == null || project == null) {
    return;
  }
  final TaskFile taskFile = CCProjectService.getInstance(project).getTaskFile(file);
  if (taskFile == null) {
    return;
  }
  Editor editor = CommonDataKeys.EDITOR.getData(context);
  if (editor == null) {
    FileEditorManager instance = FileEditorManager.getInstance(project);
    if (!instance.isFileOpen(file)) {
      return;
    }
    FileEditor fileEditor = instance.getSelectedEditor(file);
    if (!(fileEditor instanceof TextEditor)) {
      return;
    }
    editor = ((TextEditor)fileEditor).getEditor();
  }
  List<AnswerPlaceholder> placeholders = new ArrayList<AnswerPlaceholder>(taskFile.getAnswerPlaceholders());
  final ClearPlaceholders action = new ClearPlaceholders(taskFile, placeholders, editor, file, project);
  new WriteCommandAction(project, ACTION_NAME) {
    protected void run(@NotNull final Result result) throws Throwable {
      action.redo();
      UndoManager.getInstance(project).undoableActionPerformed(action);
    }

    @Override
    protected UndoConfirmationPolicy getUndoConfirmationPolicy() {
      return UndoConfirmationPolicy.REQUEST_CONFIRMATION;
    }
  }.execute();
}
 
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:39,代码来源:CCDeleteAllAnswerPlaceholdersAction.java

示例5: hideCoverageData

import com.intellij.openapi.fileEditor.FileEditorManager; //导入方法依赖的package包/类
public void hideCoverageData() {
  if (myEditor == null) return;
  final FileEditorManager fileEditorManager = FileEditorManager.getInstance(myProject);
  final List<RangeHighlighter> highlighters = myEditor.getUserData(COVERAGE_HIGHLIGHTERS);
  if (highlighters != null) {
    for (final RangeHighlighter highlighter : highlighters) {
      ApplicationManager.getApplication().invokeLater(new Runnable() {
        @Override
        public void run() {
          highlighter.dispose();
        }
      });
    }
    myEditor.putUserData(COVERAGE_HIGHLIGHTERS, null);
  }
  
  final Map<FileEditor, EditorNotificationPanel> map = myFile.getCopyableUserData(NOTIFICATION_PANELS);
  if (map != null) {
    final VirtualFile vFile = myFile.getVirtualFile();
    LOG.assertTrue(vFile != null);
    boolean freeAll = !fileEditorManager.isFileOpen(vFile);
    myFile.putCopyableUserData(NOTIFICATION_PANELS, null);
    for (FileEditor fileEditor : map.keySet()) {
      if (!freeAll && !isCurrentEditor(fileEditor)) {
        continue;
      }
      fileEditorManager.removeTopComponent(fileEditor, map.get(fileEditor));
    }
  }

  final DocumentListener documentListener = myEditor.getUserData(COVERAGE_DOCUMENT_LISTENER);
  if (documentListener != null) {
    myDocument.removeDocumentListener(documentListener);
    myEditor.putUserData(COVERAGE_DOCUMENT_LISTENER, null);
  }
}
 
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:37,代码来源:SrcFileAnnotator.java


注:本文中的com.intellij.openapi.fileEditor.FileEditorManager.isFileOpen方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。