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


Java ReopenProjectAction类代码示例

本文整理汇总了Java中com.intellij.ide.ReopenProjectAction的典型用法代码示例。如果您正苦于以下问题:Java ReopenProjectAction类的具体用法?Java ReopenProjectAction怎么用?Java ReopenProjectAction使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。


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

示例1: actionPerformed

import com.intellij.ide.ReopenProjectAction; //导入依赖的package包/类
@Override
public void actionPerformed(AnActionEvent e) {
  List<AnAction> elements = getSelectedElements(e);
  String path = ((ReopenProjectAction)elements.get(0)).getProjectPath();
  final ChangeProjectIconForm form = new ChangeProjectIconForm(path);
  DialogWrapper dialog = new DialogWrapper(null) {
    {
      init();
    }

    @Nullable
    @Override
    protected JComponent createCenterPanel() {
      return form.myRootPanel;
    }
  };
  dialog.show();
  if (dialog.isOK()) {
    try {
      form.apply();
    }
    catch (IOException e1) {
      System.out.println(e1);
    }
  }
}
 
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:27,代码来源:ChangeProjectIconAction.java

示例2: getListCellRendererComponent

import com.intellij.ide.ReopenProjectAction; //导入依赖的package包/类
@Override
public Component getListCellRendererComponent(JList list, Object value, int index, boolean isSelected, boolean cellHasFocus) {
  myHovered = myHoverIndex == index;
  Color fore = getListForeground(isSelected, list.hasFocus());
  Color back = getListBackground(isSelected, list.hasFocus());

  myName.setForeground(fore);
  myPath.setForeground(isSelected ? fore : UIUtil.getInactiveTextColor());

  setBackground(back);

  if (value instanceof ReopenProjectAction) {
    ReopenProjectAction item = (ReopenProjectAction)value;
    myName.setText(item.getTemplatePresentation().getText());
    myPath.setText(getTitle2Text(item, myPath, JBUI.scale(40)));
  } else if (value instanceof ProjectGroupActionGroup) {
    final ProjectGroupActionGroup group = (ProjectGroupActionGroup)value;
    myName.setText(group.getGroup().getName());
    myPath.setText("");
  }
  return this;
}
 
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:23,代码来源:RecentProjectPanel.java

示例3: updateRecentProjectsMenu

import com.intellij.ide.ReopenProjectAction; //导入依赖的package包/类
@Override
public void updateRecentProjectsMenu () {
  RecentProjectsManager projectsManager = RecentProjectsManager.getInstance();
  if (projectsManager == null) return;
  final AnAction[] recentProjectActions = projectsManager.getRecentProjectsActions(false);
  recentProjectsMenu.removeAll();

  for (final AnAction action : recentProjectActions) {
    MenuItem menuItem = new MenuItem(((ReopenProjectAction)action).getProjectName());
    menuItem.addActionListener(new ActionListener() {
      @Override
      public void actionPerformed(ActionEvent e) {
        action.actionPerformed(AnActionEvent.createFromAnAction(action, null, ActionPlaces.DOCK_MENU, DataManager.getInstance().getDataContext(null)));
      }
    });
    recentProjectsMenu.add(menuItem);
  }
}
 
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:19,代码来源:MacDockDelegate.java

示例4: getTitle2Text

import com.intellij.ide.ReopenProjectAction; //导入依赖的package包/类
private String getTitle2Text(ReopenProjectAction action, JComponent pathLabel) {
  String fullText = action.getProjectPath();
  int labelWidth = pathLabel.getWidth();
  if (fullText == null || fullText.length() == 0) return " ";

  String home = SystemProperties.getUserHome();
  if (FileUtil.startsWith(fullText, home)) {
    fullText = "~" + fullText.substring(home.length());
  }

  if (pathLabel.getFontMetrics(pathLabel.getFont()).stringWidth(fullText) > labelWidth) {
    return myPathShortener.getShortPath(action);
  }

  return fullText;
}
 
开发者ID:lshain-android-source,项目名称:tools-idea,代码行数:17,代码来源:RecentProjectPanel.java

示例5: getListCellRendererComponent

import com.intellij.ide.ReopenProjectAction; //导入依赖的package包/类
@Override
public Component getListCellRendererComponent(JList list, Object value, int index, boolean isSelected, boolean cellHasFocus) {
  ReopenProjectAction item = (ReopenProjectAction)value;

  Color fore = isSelected ? UIUtil.getListSelectionForeground() : list.getForeground();
  Color back = isSelected ? cellHasFocus ? UIUtil.getListSelectionBackground() : UIUtil.getListUnfocusedSelectionBackground() : list.getBackground();

  myName.setForeground(fore);
  myPath.setForeground(isSelected ? fore : UIUtil.getInactiveTextColor());

  setBackground(back);

  myName.setText(item.getProjectName());
  myPath.setText(getTitle2Text(item, myPath));

  return this;
}
 
开发者ID:lshain-android-source,项目名称:tools-idea,代码行数:18,代码来源:RecentProjectPanel.java

示例6: updateRecentProjectsMenu

import com.intellij.ide.ReopenProjectAction; //导入依赖的package包/类
public void updateRecentProjectsMenu () {
  final AnAction[] recentProjectActions = RecentProjectsManagerBase.getInstance().getRecentProjectsActions(false);
  recentProjectsMenu.removeAll();

  for (final AnAction action : recentProjectActions) {
    MenuItem menuItem = new MenuItem(((ReopenProjectAction)action).getProjectName());
    menuItem.addActionListener(new ActionListener() {
      @Override
      public void actionPerformed(ActionEvent e) {
        action.actionPerformed(new AnActionEvent(null, DataManager.getInstance().getDataContext(null),
                                                 ActionPlaces.DOCK_MENU, action.getTemplatePresentation(),
                                                 ActionManager.getInstance(), 0));
      }
    });
    recentProjectsMenu.add(menuItem);
  }
}
 
开发者ID:lshain-android-source,项目名称:tools-idea,代码行数:18,代码来源:MacDockDelegate.java

示例7: getListCellRendererComponent

import com.intellij.ide.ReopenProjectAction; //导入依赖的package包/类
@Override
public Component getListCellRendererComponent(JList list, Object value, int index, boolean isSelected, boolean cellHasFocus) {
  myHovered = myHoverIndex == index;
  Color fore = getListForeground(isSelected, list.hasFocus());
  Color back = getListBackground(isSelected, list.hasFocus());

  myName.setForeground(fore);
  myPath.setForeground(isSelected ? fore : UIUtil.getInactiveTextColor());

  setBackground(back);

  if (value instanceof ReopenProjectAction) {
    ReopenProjectAction item = (ReopenProjectAction)value;
    myName.setText(getTitle2Text(item.getTemplatePresentation().getText(), myName, JBUI.scale(55)));
    myPath.setText(getTitle2Text(item.getProjectPath(), myPath, JBUI.scale(55)));
  }
  else if (value instanceof ProjectGroupActionGroup) {
    final ProjectGroupActionGroup group = (ProjectGroupActionGroup)value;
    myName.setText(group.getGroup().getName());
    myPath.setText("");
  }
  AccessibleContextUtil.setCombinedName(this, myName, " - ", myPath);
  AccessibleContextUtil.setCombinedDescription(this, myName, " - ", myPath);
  return this;
}
 
开发者ID:consulo,项目名称:consulo,代码行数:26,代码来源:RecentProjectPanel.java

示例8: updateRecentProjectsMenu

import com.intellij.ide.ReopenProjectAction; //导入依赖的package包/类
@Override
public void updateRecentProjectsMenu () {
  RecentProjectsManager projectsManager = RecentProjectsManager.getInstance();
  if (projectsManager == null) return;
  final AnAction[] recentProjectActions = projectsManager.getRecentProjectsActions(false);
  recentProjectsMenu.removeAll();

  for (final AnAction action : recentProjectActions) {
    MenuItem menuItem = new MenuItem(((ReopenProjectAction)action).getProjectName());
    menuItem.addActionListener(new ActionListener() {
      @Override
      public void actionPerformed(ActionEvent e) {
        action.actionPerformed(AnActionEvent.createFromAnAction(action, null, ActionPlaces.DOCK_MENU, DataManager.getInstance().getDataContext((Component)null)));
      }
    });
    recentProjectsMenu.add(menuItem);
  }
}
 
开发者ID:consulo,项目名称:consulo,代码行数:19,代码来源:MacDockDelegate.java

示例9: updateRecentProjectsMenu

import com.intellij.ide.ReopenProjectAction; //导入依赖的package包/类
@Override
public void updateRecentProjectsMenu() {
  if (ApplicationProperties.isInSandbox()) {
    return;
  }

  final AnAction[] recentProjectActions = RecentProjectsManager.getInstance().getRecentProjectsActions(false);
  RecentTasks.clear();
  String name = ApplicationNamesInfo.getInstance().getProductName().toLowerCase(Locale.US);
  File exePath = new File(PathManager.getAppHomeDirectory(), name + (SystemInfo.is64Bit ? "64" : "") + ".exe");
  if(!exePath.exists()) {
    throw new IllegalArgumentException("Executable is not exists. Path: " + exePath.getPath());
  }
  String launcher = RecentTasks.getShortenPath(exePath.getPath());
  Task[] tasks = new Task[recentProjectActions.length];
  for (int i = 0; i < recentProjectActions.length; i++) {
    ReopenProjectAction rpa = (ReopenProjectAction)recentProjectActions[i];
    tasks[i] = new Task(launcher, RecentTasks.getShortenPath(rpa.getProjectPath()), rpa.getTemplatePresentation().getText());
  }
  RecentTasks.addTasks(tasks);
}
 
开发者ID:consulo,项目名称:consulo,代码行数:22,代码来源:WinDockDelegate.java

示例10: actionPerformed

import com.intellij.ide.ReopenProjectAction; //导入依赖的package包/类
@Override
public void actionPerformed(AnActionEvent e) {
  final List<AnAction> elements = getSelectedElements(e);
  for (AnAction element : elements) {
    if (element instanceof ReopenProjectAction) {
      for (ProjectGroup group : RecentProjectsManager.getInstance().getGroups()) {
        group.removeProject(((ReopenProjectAction)element).getProjectPath());
      }
    }
  }

  rebuildRecentProjectsList(e);
}
 
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:14,代码来源:RemoveSelectedProjectsFromGroupsAction.java

示例11: actionPerformed

import com.intellij.ide.ReopenProjectAction; //导入依赖的package包/类
@Override
public void actionPerformed(AnActionEvent e) {
  final List<AnAction> elements = getSelectedElements(e);
  for (AnAction element : elements) {
    if (element instanceof ReopenProjectAction) {
      final String path = ((ReopenProjectAction)element).getProjectPath();
      for (ProjectGroup group : RecentProjectsManager.getInstance().getGroups()) {
        group.removeProject(path);
        myGroup.addProject(path);
      }
    }
  }
  rebuildRecentProjectsList(e);
}
 
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:15,代码来源:MoveProjectToGroupAction.java

示例12: update

import com.intellij.ide.ReopenProjectAction; //导入依赖的package包/类
@Override
public void update(AnActionEvent e) {
  final Presentation presentation = e.getPresentation();
  List<AnAction> selectedElements = getSelectedElements(e);
  boolean hasProject = false;
  boolean hasGroup = false;
  for (AnAction element : selectedElements) {
    if (element instanceof ReopenProjectAction) {
      hasProject = true;
    }
    if (element instanceof ProjectGroupActionGroup) {
      hasGroup = true;
    }

    if (hasGroup && hasProject) {
      e.getPresentation().setEnabled(false);
      return;
    }
  }
  if (ActionPlaces.WELCOME_SCREEN.equals(e.getPlace())) {
    presentation.setEnabledAndVisible(true);
    if (selectedElements.size() == 1 && selectedElements.get(0) instanceof ProjectGroupActionGroup) {
      presentation.setText("Open All Projects in Group");
    } else {
      presentation.setText("Open Selected");
    }
  } else {
    presentation.setEnabledAndVisible(false);
  }
}
 
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:31,代码来源:OpenSelectedProjectsAction.java

示例13: removeRecentProjectElement

import com.intellij.ide.ReopenProjectAction; //导入依赖的package包/类
protected static void removeRecentProjectElement(Object element) {
  final RecentProjectsManager manager = RecentProjectsManager.getInstance();
  if (element instanceof ReopenProjectAction) {
    manager.removePath(((ReopenProjectAction)element).getProjectPath());
  } else if (element instanceof ProjectGroupActionGroup) {
    final ProjectGroup group = ((ProjectGroupActionGroup)element).getGroup();
    for (String path : group.getProjects()) {
      manager.removePath(path);
    }
    manager.removeGroup(group);
  }
}
 
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:13,代码来源:RecentProjectPanel.java

示例14: RecentProjectItemRenderer

import com.intellij.ide.ReopenProjectAction; //导入依赖的package包/类
protected RecentProjectItemRenderer(UniqueNameBuilder<ReopenProjectAction> pathShortener) {
  super(new VerticalFlowLayout());
  myShortener = pathShortener;
  myPath.setFont(JBUI.Fonts.label(SystemInfo.isMac ? 10f : 11f));
  setFocusable(true);
  layoutComponents();
}
 
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:8,代码来源:RecentProjectPanel.java

示例15: getTitle2Text

import com.intellij.ide.ReopenProjectAction; //导入依赖的package包/类
protected String getTitle2Text(ReopenProjectAction action, JComponent pathLabel, int leftOffset) {
  String fullText = action.getProjectPath();
  if (fullText == null || fullText.length() == 0) return " ";

  fullText = FileUtil.getLocationRelativeToUserHome(fullText, false);

  try {
    FontMetrics fm = pathLabel.getFontMetrics(pathLabel.getFont());
    int maxWidth = RecentProjectPanel.this.getWidth() - leftOffset;
    if (maxWidth > 0 && fm.stringWidth(fullText) > maxWidth) {
      int left = 1; int right = 1;
      int center = fullText.length() / 2;
      String s = fullText.substring(0, center - left) + "..." + fullText.substring(center + right);
      while (fm.stringWidth(s) > maxWidth) {
        if (left == right) {
          left++;
        } else {
          right++;
        }

        if (center - left < 0 || center + right >= fullText.length()) {
          return "";
        }
        s = fullText.substring(0, center - left) + "..." + fullText.substring(center + right);
      }
      return s;
    }
  } catch (Exception e) {
    LOG.error("Path label font: " + pathLabel.getFont());
    LOG.error("Panel width: " + RecentProjectPanel.this.getWidth());
    LOG.error(e);
  }

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


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