public void valueChanged(ListSelectionEvent e){
  if (m_mTab.getRowCount() == 0)   return;
  int rowTable=vTable.getSelectedRow();
  int rowCurrent=m_mTab.getCurrentRow();
  log.config("(" + m_mTab.toString() + ") Row in Table="+ rowTable+ ", in Model="+ rowCurrent);
  if (rowTable == -1) {
    if (rowCurrent >= 0) {
      vTable.setRowSelectionInterval(rowCurrent,rowCurrent);
      return;
    }
  }
 else {
    if (rowTable != rowCurrent) {
      int t=m_mTab.navigate(rowTable);
      if (t != rowTable) {
        rowTable=t;
        vTable.setRowSelectionInterval(rowTable,rowTable);
      }
    }
    dynamicDisplay(0);
  }
  if (m_tree != null)   m_tree.setSelectedNode(m_mTab.getRecord_ID());
}

public void valueChanged ( ListSelectionEvent e ) { if ( m_mTab . getRowCount ( ) == 0 ) return ; int rowTable = vTable . getSelectedRow ( ) ; int rowCurrent = m_mTab . getCurrentRow ( ) ; log . config ( "(" + m_mTab . toString ( ) + ") Row in Table=" + rowTable + ", in Model=" + rowCurrent ) ; if ( rowTable == - 1 ) { if ( rowCurrent >= 0 ) { vTable . setRowSelectionInterval ( rowCurrent , rowCurrent ) ; return ; } } else { if ( rowTable != rowCurrent ) { int t = m_mTab . navigate ( rowTable ) ; if ( t != rowTable ) { rowTable = t ; vTable . setRowSelectionInterval ( rowTable , rowTable ) ; } } dynamicDisplay ( 0 ) ; } if ( m_tree != null ) m_tree . setSelectedNode ( m_mTab . getRecord_ID ( ) ) ; }
list selection listener ( vtable ) - row changed
