1) A new class DBTableEventListener is added. Before there is no way to stop a user from moving to a different row, if the validation in current row fails. This can be handled using the method "boolean beforeRowSelectionChange(int fromRow, int toRow, int fromColumn, int toColumn) " in DBTableEventListener.

void afterColumnSelectionChange(int fromColumn, int toColumn)
This function is called after the column selection change has happened.

void afterRowSelectionChange(int fromRow, int toRow)
This function is called after the row selection change has happened.

boolean beforeColumnSelectionChange(int fromColumn, int toColumn, int fromRow, int toRow)
This function is called whenever the user changes the selection from one column to another. (Note: works JDK 1.3+ only)

boolean beforeRowSelectionChange(int fromRow, int toRow, int fromColumn, int toColumn)
This function is called whenever the user changes the selection from one row to another. (Note: works JDK 1.3+ only)

boolean onSortColumn(int column, boolean ascending)
This function is called when the user clicks on the table column header to sort by that column.

2) while tabbing through cells, doesn't tab through invisible columns. Works JDK 1.3+

3) In order to better control the cell selection color, two new methods added in CellPropertiesModel
public Color getSelectionForeground(int row, int col)
public Color getSelectionBackground(int row, int col)

4) New method "public boolean isInsertingRow(int row)" added.
From the time when the row was inserted into the table and until the inserted row was added to the database, this method will return true for that row. This will be useful if you want to allow the user to edit newly inserted rows only using CellPropertiesModel.getCellEditable(int row, int col)

5) Fixed a NullPointerException problem while using custom look & feel which doesn't define a property.

Code:

java.lang.NullPointerException
at java.util.Hashtable.put(Hashtable.java:396)
at quick.dbtable.DBTable.for(DBTable.java:5300)
at quick.dbtable.DBTable.<init>(DBTable.java:332)

6) Fixed Exception

Code:

Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
at java.util.Hashtable.put(Unknown Source)
at quick.dbtable.t.setValueAt(DBTableModel.java:1558)
at quick.dbtable.a.setValueAt(TableMap.java:85)
at javax.swing.JTable.setValueAt(Unknown Source)
at javax.swing.JTable.editingStopped(Unknown Source)

7) sometimes calling setSigned(false) for decimal columns still allows sign character . This has been resolved

8) A new property showFindReplaceMessages has been added. While doing find or replace, quicktable shows informative messages like text not found, search complete, 10 replacements etc. If you do not want these messages to be displayed set this property to false. The default value is true.

9) Lot of JDBC drivers support the getTimestamp and setTimestamp only to handle the Timestamp columns. So quicktable has started using these methods. Please test your applications if you are using this data type.

In order to fully utilize the abilities of this board, you are required to register as a member. Registration is free, and allows you to do lots of things including turning on or off certain features of this board. Register now!