FileMaskPanel(Set<String> patterns, String textEmpty, String textTitle, String textAddMessage, String textAddTitle, String textEditMessage, String textEditTitle) { this.textAddMessage = textAddMessage; this.textAddTitle = textAddTitle; this.textEditMessage = textEditMessage; this.textEditTitle = textEditTitle; patternList = new JBList<>(patternModels); patternList.setEmptyText(textEmpty); patternPanel = ToolbarDecorator.createDecorator(patternList) .setAddAction(getAddActionButtonRunnable(patterns)) .setRemoveAction(getRemoveActionButtonRunnable(patterns)) .setEditAction(getEditActionButtonRunnable(patterns)) .disableUpDownActions() .createPanel(); patternPanel.setBorder(IdeBorderFactory.createTitledBorder(textTitle)); }
private void createProjectList() { projectList = new JBList(); projectList.setEmptyText("No projects found in the selected SonarQube Server"); projectList.setCellRenderer(new ProjectListRenderer()); projectList.addListSelectionListener(new ProjectItemListener()); projectList.addMouseListener(new ProjectMouseListener()); projectList.setSelectionMode(ListSelectionModel.SINGLE_SELECTION); projectList.setVisibleRowCount(10); projectList.setBorder(IdeBorderFactory.createBorder()); Convertor<Object, String> convertor = o -> { RemoteProject project = (RemoteProject) o; return project.getName() + " " + project.getKey(); }; new ListSpeedSearch(projectList, convertor); scrollPane = new JBScrollPane(projectList); }