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


Java FindModel.setReplaceState方法代码示例

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


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

示例1: execute

import com.intellij.find.FindModel; //导入方法依赖的package包/类
@Override
protected void execute(@NotNull final Project project) {
  FindManager findManager = FindManager.getInstance(project);
  UsageViewManager usageViewManager = UsageViewManager.getInstance(project);

  FindModel findModel = (FindModel)findManager.getFindInProjectModel().clone();
  findModel.setStringToFind(myTextToFind);
  findModel.setReplaceState(false);
  findModel.setOpenInNewTabVisible(true);
  findModel.setOpenInNewTabEnabled(true);
  findModel.setOpenInNewTab(true);
  findModel.setFileFilter(SdkConstants.FN_BUILD_GRADLE);

  findManager.getFindInProjectModel().copyFrom(findModel);
  final FindModel findModelCopy = (FindModel)findModel.clone();

  UsageViewPresentation presentation = FindInProjectUtil.setupViewPresentation(findModel.isOpenInNewTabEnabled(), findModelCopy);
  boolean showPanelIfOnlyOneUsage = !FindSettings.getInstance().isSkipResultsWithOneUsage();
  final FindUsagesProcessPresentation processPresentation =
    FindInProjectUtil.setupProcessPresentation(project, showPanelIfOnlyOneUsage, presentation);
  UsageTarget usageTarget = new FindInProjectUtil.StringUsageTarget(project, findModel);
  usageViewManager.searchAndShowUsages(new UsageTarget[]{usageTarget}, new Factory<UsageSearcher>() {
    @Override
    public UsageSearcher create() {
      return new UsageSearcher() {
        @Override
        public void generate(@NotNull final Processor<Usage> processor) {
          AdapterProcessor<UsageInfo, Usage> consumer =
            new AdapterProcessor<UsageInfo, Usage>(processor, UsageInfo2UsageAdapter.CONVERTER);
          //noinspection ConstantConditions
          FindInProjectUtil.findUsages(findModelCopy, project, consumer, processPresentation);
        }
      };
    }
  }, processPresentation, presentation, null);
}
 
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:37,代码来源:SearchInBuildFilesHyperlink.java

示例2: createFindModel

import com.intellij.find.FindModel; //导入方法依赖的package包/类
private static FindModel createFindModel(FindManager findManager, String selectedString, String replaceWith) {
  FindModel findModel = (FindModel)findManager.getFindInProjectModel().clone();

  findModel.setStringToFind(selectedString);
  findModel.setStringToReplace(replaceWith);
  findModel.setReplaceState(true);
  findModel.setPromptOnReplace(true);
  findModel.setCaseSensitive(true);
  findModel.setRegularExpressions(false);

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

示例3: findInProject

import com.intellij.find.FindModel; //导入方法依赖的package包/类
public void findInProject(@Nonnull DataContext dataContext) {
  final boolean isOpenInNewTabEnabled;
  final boolean toOpenInNewTab;
  Content selectedContent = UsageViewManager.getInstance(myProject).getSelectedContent(true);
  if (selectedContent != null && selectedContent.isPinned()) {
    toOpenInNewTab = true;
    isOpenInNewTabEnabled = false;
  }
  else {
    toOpenInNewTab = FindSettings.getInstance().isShowResultsInSeparateView();
    isOpenInNewTabEnabled = UsageViewManager.getInstance(myProject).getReusableContentsCount() > 0;
  }

  final FindManager findManager = FindManager.getInstance(myProject);
  final FindModel findModel = findManager.getFindInProjectModel().clone();
  findModel.setReplaceState(false);
  findModel.setOpenInNewTabVisible(true);
  findModel.setOpenInNewTabEnabled(isOpenInNewTabEnabled);
  findModel.setOpenInNewTab(toOpenInNewTab);
  initModel(findModel, dataContext);

  findManager.showFindDialog(findModel, () -> {
    findModel.setOpenInNewTabVisible(false);
    if (isOpenInNewTabEnabled) {
      FindSettings.getInstance().setShowResultsInSeparateView(findModel.isOpenInNewTab());
    }
    startFindInProject(findModel);
    findModel.setOpenInNewTabVisible(false); //todo check it in both cases: dialog & popup
  });
}
 
开发者ID:consulo,项目名称:consulo,代码行数:31,代码来源:FindInProjectManager.java

示例4: findInProject

import com.intellij.find.FindModel; //导入方法依赖的package包/类
public void findInProject(@NotNull DataContext dataContext) {
  final boolean isOpenInNewTabEnabled;
  final boolean toOpenInNewTab;
  Content selectedContent = UsageViewManager.getInstance(myProject).getSelectedContent(true);
  if (selectedContent != null && selectedContent.isPinned()) {
    toOpenInNewTab = true;
    isOpenInNewTabEnabled = false;
  }
  else {
    toOpenInNewTab = FindSettings.getInstance().isShowResultsInSeparateView();
    isOpenInNewTabEnabled = UsageViewManager.getInstance(myProject).getReusableContentsCount() > 0;
  }

  final FindManager findManager = FindManager.getInstance(myProject);
  final FindModel findModel = findManager.getFindInProjectModel().clone();
  findModel.setReplaceState(false);
  findModel.setOpenInNewTabVisible(true);
  findModel.setOpenInNewTabEnabled(isOpenInNewTabEnabled);
  findModel.setOpenInNewTab(toOpenInNewTab);
  FindInProjectUtil.setDirectoryName(findModel, dataContext);

  String text = PlatformDataKeys.PREDEFINED_TEXT.getData(dataContext);
  if (text != null) {
    FindModel.initStringToFindNoMultiline(findModel, text);
  }
  else {
    Editor editor = CommonDataKeys.EDITOR.getData(dataContext);
    FindUtil.initStringToFindWithSelection(findModel, editor);
  }

  findManager.showFindDialog(findModel, new Runnable() {
    @Override
    public void run() {
      findModel.setOpenInNewTabVisible(false);
      if (isOpenInNewTabEnabled) {
        FindSettings.getInstance().setShowResultsInSeparateView(findModel.isOpenInNewTab());
      }

      startFindInProject(findModel);
    }

  });
  findModel.setOpenInNewTabVisible(false);
}
 
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:45,代码来源:FindInProjectManager.java

示例5: findInProject

import com.intellij.find.FindModel; //导入方法依赖的package包/类
public void findInProject(@NotNull DataContext dataContext) {
  final boolean isOpenInNewTabEnabled;
  final boolean[] toOpenInNewTab = new boolean[1];
  Content selectedContent = UsageViewManager.getInstance(myProject).getSelectedContent(true);
  if (selectedContent != null && selectedContent.isPinned()) {
    toOpenInNewTab[0] = true;
    isOpenInNewTabEnabled = false;
  }
  else {
    toOpenInNewTab[0] = myToOpenInNewTab;
    isOpenInNewTabEnabled = UsageViewManager.getInstance(myProject).getReusableContentsCount() > 0;
  }

  final FindManager findManager = FindManager.getInstance(myProject);
  final FindModel findModel = (FindModel) findManager.getFindInProjectModel().clone();
  findModel.setReplaceState(false);
  findModel.setOpenInNewTabVisible(true);
  findModel.setOpenInNewTabEnabled(isOpenInNewTabEnabled);
  findModel.setOpenInNewTab(toOpenInNewTab[0]);
  FindInProjectUtil.setDirectoryName(findModel, dataContext);

  Editor editor = PlatformDataKeys.EDITOR.getData(dataContext);
  FindUtil.initStringToFindWithSelection(findModel, editor);

  findManager.showFindDialog(findModel, new Runnable() {
    @Override
    public void run() {
      findModel.setOpenInNewTabVisible(false);
      final PsiDirectory psiDirectory = FindInProjectUtil.getPsiDirectory(findModel, myProject);
      if (findModel.getDirectoryName() != null && psiDirectory == null){
        return;
      }
      if (isOpenInNewTabEnabled) {
        myToOpenInNewTab = toOpenInNewTab[0] = findModel.isOpenInNewTab();
      }

      com.intellij.usages.UsageViewManager manager = com.intellij.usages.UsageViewManager.getInstance(myProject);

      if (manager == null) return;
      findManager.getFindInProjectModel().copyFrom(findModel);
      final FindModel findModelCopy = (FindModel)findModel.clone();
      final UsageViewPresentation presentation = FindInProjectUtil.setupViewPresentation(myToOpenInNewTab, findModelCopy);
      final boolean showPanelIfOnlyOneUsage = !FindSettings.getInstance().isSkipResultsWithOneUsage();

      final FindUsagesProcessPresentation processPresentation = FindInProjectUtil.setupProcessPresentation(myProject, showPanelIfOnlyOneUsage, presentation);
      UsageTarget usageTarget = StringUtil.isEmpty(findModel.getStringToFind()) ? createFileByTypeTarget(findModel)
                                                       : new FindInProjectUtil.StringUsageTarget(findModel.getStringToFind());
      manager.searchAndShowUsages(new UsageTarget[] {usageTarget},
        new Factory<UsageSearcher>() {
          @Override
          public UsageSearcher create() {
            return new UsageSearcher() {
              @Override
              public void generate(@NotNull final Processor<Usage> processor) {
                myIsFindInProgress = true;

                try {
                  AdapterProcessor<UsageInfo, Usage> consumer = new AdapterProcessor<UsageInfo, Usage>(processor, UsageInfo2UsageAdapter.CONVERTER);
                  FindInProjectUtil.findUsages(findModelCopy, psiDirectory, myProject, true, consumer, processPresentation);
                }
                finally {
                  myIsFindInProgress = false;
                }
              }
            };
          }
        },
        processPresentation,
        presentation,
        null
      );
    }
  });
  findModel.setOpenInNewTabVisible(false);
}
 
开发者ID:lshain-android-source,项目名称:tools-idea,代码行数:76,代码来源:FindInProjectManager.java


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