in src/main/kotlin/mobi/hsz/idea/gitignore/ui/IgnoreSettingsPanel.kt [198:230]
override fun actionPerformed(event: AnActionEvent) {
val descriptor = FileChooserDescriptor(true, false, true, false, true, false)
.withFileFilter {
it.isDirectory || it.fileType === FileTypes.ARCHIVE || it.fileType === XmlFileType.INSTANCE
}
.apply {
description = message("action.importTemplates.wrapper.description")
title = message("action.importTemplates.wrapper")
putUserData(
LangDataKeys.MODULE_CONTEXT,
LangDataKeys.MODULE.getData(event.dataContext)
)
}
FileChooser.chooseFile(descriptor, templatesListPanel, null, null)?.let { file ->
try {
val element = JDOMUtil.load(file.inputStream)
val templates = IgnoreSettings.loadTemplates(element)
templates.forEach { myListModel.addElement(it) }
Messages.showInfoMessage(
templatesListPanel,
message("action.importTemplates.success", templates.size),
message("action.exportTemplates.success.title")
)
return
} catch (e: IOException) {
e.printStackTrace()
} catch (e: JDOMException) {
e.printStackTrace()
}
}
Messages.showErrorDialog(templatesListPanel, message("action.importTemplates.error"))
}