diff src/name/blackcap/exifwasher/ShowDialog.kt @ 7:65d14d44bc3f

Works, but the column layout numbers are WEIRD.
author David Barts <n5jrn@me.com>
date Fri, 10 Apr 2020 13:44:04 -0700
parents dc1f4359659d
children 0a106e9b91b4
line wrap: on
line diff
--- a/src/name/blackcap/exifwasher/ShowDialog.kt	Thu Apr 09 22:29:48 2020 -0700
+++ b/src/name/blackcap/exifwasher/ShowDialog.kt	Fri Apr 10 13:44:04 2020 -0700
@@ -24,7 +24,8 @@
     private val WIDTH = 640
     private val HEIGHT = 480
 
-    private val myTable = JTable().apply {
+    private val COLUMN_NAMES = arrayOf<String>("Key", "Type", "Value")
+    private val myTable = JTable(arrayOf<Array<Any>>(), COLUMN_NAMES).apply {
         autoCreateRowSorter = false
         rowSorter = null
         columnModel.run {
@@ -69,11 +70,7 @@
                         "Unable to read metadata.",
                         "Error", JOptionPane.ERROR_MESSAGE)
                 } else {
-                    val colNames = arrayOf("Key", "Type", "Value")
-                    myTable.apply {
-                        model = MyTableModel(tableData, colNames)
-                        validate()
-                    }
+                    myTable.model = MyTableModel(tableData, COLUMN_NAMES)
                     setVisible(true)
                 }
             }
@@ -82,7 +79,7 @@
 
     private class MyTableModel(tData: Array<Array<String>>, cNames: Array<String>) : DefaultTableModel(tData, cNames) {
         override fun isCellEditable(row: Int, col: Int) = false
-        override fun getColumnClass(col: Int) = String::class.java
+        override fun getColumnClass(col: Int) = java.lang.String::class.java
     }
 
     init {