package jalview.urls;
-import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
+import javax.swing.event.TableModelEvent;
+import javax.swing.event.TableModelListener;
import javax.swing.table.AbstractTableModel;
/**
* @param keyColName
* name of column corresponding to keys in baseData
*/
- public UrlLinkTableModel(UrlProviderI baseData,
- List<String> displayColNames,
- String keyColName)
+ public UrlLinkTableModel(UrlProviderI baseData)
{
dataProvider = baseData;
data = baseData.getLinksForTable();
- displayColumns = new ArrayList<String>();
- displayColumns.add(keyColName);
- displayColumns.addAll(displayColNames);
+ displayColumns = UrlLinkDisplay.getDisplayColumnNames();
// find the default row
defaultRow = 0;
defaultRow++;
}
}
+
+ this.addTableModelListener(new TableModelListener()
+ {
+ @Override
+ public void tableChanged(TableModelEvent e)
+ {
+ // update the UrlProvider from data list
+ dataProvider.setUrlData(data);
+ }
+ });
+
}
@Override
return displayColumns.get(columnIndex);
}
- @Override
- public String toString()
- {
- // update the UrlProvider from data list
- dataProvider.setUrlData(data);
-
- return dataProvider.writeUrlsAsString();
- }
-
public void removeRow(int rowIndex)
{
// remove the row from data
fireTableRowsInserted(index, index);
return index;
}
+
}