void (@NotNull final AnActionEvent e) { final List<T> elements = myEntriesChooser.getSelectedElements(); if (elements.size() == 1) { final T entry = elements.get(0); final Collection<File> files = getContent(entry); final SplitDialog dialog = new SplitDialog(files); if (dialog.showAndGet()) { final String newName = dialog.getName(); final Collection<File> chosenFiles = dialog.getChosenFiles(); final T extracted = split(entry, newName, chosenFiles); if (extracted != null) { if (!getEntries().contains(entry)) { myEntriesChooser.removeElement(entry); } myEntriesChooser.addElement(extracted, true, new EntryProperties(extracted)); myEntriesChooser.sort(COMPARATOR); myEntriesChooser.selectElements(Collections.singleton(extracted)); } } } }