static JTable dataToTable(O data) { ret dataToTable(showTable(), data); } static JTable dataToTable(O data, S title) { ret dataToTable(showTable(title), data); } static JTable dataToTable(JTable table, O data) { ret dataToTable(table, data, false); } // "now" is ignored now static JTable dataToTable(JTable table, O data, bool now) { new L rows; LS cols = new ContentsIndexedList; if (data instanceof L) { for (O x : (L) data) pcall { rows.add(dataToTable_makeRow(x, cols)); } } else if (data instanceof Map) { Map map = cast data; for (O key : map.keySet()) { O value = map.get(key); rows.add(litlist(structureOrTextForUser(key), structureOrTextForUser(value))); } } else if (data != null) print("Unknown data type: " + data); fillTableWithData(table, rows, cols); ret table; }