Can now select and delete multiple rows at once with the delete key

This commit is contained in:
ceikry 2021-08-02 10:52:17 -05:00
parent 807b73ffaf
commit 62988a7f4f

View file

@ -9,6 +9,7 @@ import java.awt.event.KeyListener
import java.util.*
import java.util.regex.PatternSyntaxException
import javax.swing.*
import javax.swing.JComponent.WHEN_FOCUSED
import javax.swing.event.TableModelEvent
import javax.swing.event.TableModelListener
import javax.swing.table.DefaultTableModel
@ -121,12 +122,16 @@ class TableEditor(val editor: Editors) : JFrame("Editing ${editor.name.replace("
}
})
table.getInputMap(WHEN_FOCUSED).put(KeyStroke.getKeyStroke(KeyEvent.VK_DELETE, 0), "delete")
table.actionMap.put("delete",object : AbstractAction() {
override fun actionPerformed(e: ActionEvent?) {
try {
val table = e?.source as JTable
getData().removeAt(table.convertRowIndexToModel(table.selectedRow))
model.removeRow(table.convertRowIndexToModel(table.selectedRow))
for(i in 0 until table.selectedRowCount){
val realRow = table.convertRowIndexToModel(table.selectedRows[0])
getData().removeAt(realRow)
model.removeRow(realRow)
}
repaint()
} catch(e: Exception){
Logger.logErr("Tried to remove nonexistent row ${table.selectedRow}")
}