mirror of
https://gitlab.com/2009scape/tools/rs09-thanos-tool.git
synced 2026-08-01 14:39:20 -06:00
Pressing ctrl-c with rows selected now duplicates all selected rows
Bumped build number to 1.3
This commit is contained in:
parent
dd5e3f998d
commit
5155750894
4 changed files with 31 additions and 3 deletions
|
|
@ -3,7 +3,7 @@ plugins {
|
|||
}
|
||||
|
||||
group 'org.example'
|
||||
version '1.2'
|
||||
version '1.3'
|
||||
|
||||
repositories {
|
||||
repositories {
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@ import com.github.weisj.darklaf.LafManager
|
|||
import com.github.weisj.darklaf.theme.OneDarkTheme
|
||||
|
||||
object EditorConstants {
|
||||
var BUILD_NUMBER = "0.1.0"
|
||||
var BUILD_NUMBER = "1.3.0"
|
||||
|
||||
var DARK_MODE = true
|
||||
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@ import java.util.*
|
|||
import javax.swing.*
|
||||
import javax.swing.table.DefaultTableModel
|
||||
|
||||
object MainScreen : JFrame("RS09 Thanos Tool") {
|
||||
object MainScreen : JFrame("RS09 Thanos Tool ${EditorConstants.BUILD_NUMBER}") {
|
||||
val dirChooser = object : JFileChooser(DataStore.LastConfigPath){
|
||||
override fun updateUI() {
|
||||
EditorConstants.updateTheme()
|
||||
|
|
|
|||
|
|
@ -137,6 +137,34 @@ class TableEditor(val editor: Editors) : JFrame("Editing ${editor.name.replace("
|
|||
}
|
||||
}
|
||||
})
|
||||
table.addKeyListener(object : KeyListener{
|
||||
override fun keyTyped(p0: KeyEvent?) {}
|
||||
|
||||
override fun keyPressed(p0: KeyEvent?) {}
|
||||
|
||||
override fun keyReleased(event: KeyEvent) {
|
||||
if(event.isControlDown){
|
||||
if(event.keyCode == KeyEvent.VK_C){
|
||||
//copy-then-paste
|
||||
val data = model.dataVector
|
||||
Logger.logInfo("Copy event received.")
|
||||
for(i in 0 until table.selectedRowCount){
|
||||
val realRow = table.convertRowIndexToModel(table.selectedRows[i])
|
||||
val insertPos = table.convertRowIndexToModel(table.selectedRows[table.selectedRowCount - 1]) + 1
|
||||
Logger.logInfo("Copying row $realRow")
|
||||
val datum = data.elementAt(realRow) as Vector<*>
|
||||
val copiedRow = datum.clone() as Vector<*>
|
||||
val jsonData = getData()[realRow]
|
||||
val copyData = jsonData.clone() as JSONObject
|
||||
getData().add(insertPos, copyData)
|
||||
model.insertRow(insertPos, copiedRow)
|
||||
}
|
||||
table.revalidate()
|
||||
table.repaint()
|
||||
}
|
||||
}
|
||||
}
|
||||
})
|
||||
|
||||
EditorConstants.updateTheme()
|
||||
pack()
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue