void (@NotNull SchemeImporter<EditorColorsScheme> importer, @NotNull VirtualFile importSource) { try { EditorColorsScheme imported = importer.importScheme(DefaultProjectFactory.getInstance().getDefaultProject(), importSource, getOptions().getSelectedScheme(), name -> { String newName = SchemeNameGenerator.getUniqueName(name != null ? name : "Unnamed", candidate -> getSchemesPanel().getModel() .containsScheme(candidate, false)); AbstractColorsScheme newScheme = new EditorColorsSchemeImpl(EmptyColorScheme.INSTANCE); newScheme.setName(newName); newScheme.setDefaultMetaInfo(EmptyColorScheme.INSTANCE); return newScheme; }); if (imported != null) { getOptions().addImportedScheme(imported); String message = importer.getAdditionalImportInfo(imported); if (message == null) { message = ApplicationBundle.message("settings.editor.scheme.import.success", importSource.getPresentableUrl(), imported.getName()); } getSchemesPanel().showStatus(message, MessageType.INFO); } } catch (SchemeImportException e) { handleError(e, importSource); } }