public void run() {
ArrayList columns = new ArrayList();
if (classDisplayed.equals(ClassDisplayed.NODE)) {
ETableColumnModel columnModel = (ETableColumnModel) nodeTable.getOutlineTable().getColumnModel();
DefaultComboBoxModel model = new DefaultComboBoxModel();
for (int i = 0; i < columnModel.getColumnCount(); i++) {
if (!columnModel.isColumnHidden(columnModel.getColumn(i))) {
model.addElement(columnModel.getColumn(i).getHeaderValue());
columns.add(columnModel.getColumn(i).getHeaderValue());
}
}
columnComboBox.setModel(model);
if (columns.equals(previousNodeFilterColumns) && previousNodeColumnsFilterIndex < columnComboBox.getItemCount()) {//Preserve user selected column when the columns list does not change
columnComboBox.setSelectedIndex(previousNodeColumnsFilterIndex);
} else {
previousNodeColumnsFilterIndex = 0;
}
previousNodeFilterColumns = columns;
} else if (classDisplayed.equals(ClassDisplayed.EDGE)) {
DefaultComboBoxModel model = new DefaultComboBoxModel();
for (int i = 0; i < edgeTable.getTable().getColumnCount(); i++) {
if (edgeTable.getTable().getColumnExt(i).isVisible()) {
model.addElement(edgeTable.getTable().getColumnExt(i).getTitle());
columns.add(edgeTable.getTable().getColumnExt(i).getTitle());
}
}
columnComboBox.setModel(model);
if (columns.equals(previousEdgeFilterColumns) && previousEdgeColumnsFilterIndex < columnComboBox.getItemCount()) {//Preserve user selected column when the columns list does not change