TODO: check TableCellListener.java