use of org.cytoscape.model.events.ColumnNameChangedEvent in project cytoscape-impl by cytoscape.
the class TableEventHelperFacade method fireEvent.
@Override
public <E extends CyEvent<?>> void fireEvent(final E event) {
final CyEventHelper eventHelper = getEventHelper();
// always propagate the actual event
eventHelper.fireEvent(event);
// make sure the source is something we care about
Object source = event.getSource();
if (!(source instanceof CyTable))
return;
Reference<LocalTableFacade> reference;
synchronized (lock) {
reference = facadeMap.get((CyTable) source);
}
if (reference == null)
return;
LocalTableFacade facade = reference.get();
if (facade == null)
return;
// create a new event for the facade table based on the actual event
CyEvent<?> facadeEvent = null;
if (event instanceof TableTitleChangedEvent) {
TableTitleChangedEvent e = (TableTitleChangedEvent) event;
facadeEvent = new TableTitleChangedEvent(facade, e.getOldTitle());
} else if (event instanceof TablePrivacyChangedEvent) {
facadeEvent = new TablePrivacyChangedEvent(facade);
} else if (event instanceof ColumnNameChangedEvent) {
ColumnNameChangedEvent e = (ColumnNameChangedEvent) event;
facadeEvent = new ColumnNameChangedEvent(facade, e.getOldColumnName(), e.getNewColumnName());
} else if (event instanceof ColumnDeletedEvent) {
ColumnDeletedEvent e = (ColumnDeletedEvent) event;
facadeEvent = new ColumnDeletedEvent(facade, e.getColumnName());
} else if (event instanceof ColumnCreatedEvent) {
ColumnCreatedEvent e = (ColumnCreatedEvent) event;
facadeEvent = new ColumnCreatedEvent(facade, e.getColumnName());
}
// fire the new facade event
if (facadeEvent != null)
eventHelper.fireEvent(facadeEvent);
}
use of org.cytoscape.model.events.ColumnNameChangedEvent in project cytoscape-impl by cytoscape.
the class CyTableImpl method updateColumnName.
void updateColumnName(final String oldColumnName, final String newColumnName) {
synchronized (lock) {
if (currentlyActiveAttributes.remove(oldColumnName)) {
currentlyActiveAttributes.add(newColumnName);
}
String normalizedOldColName = normalizeColumnName(oldColumnName);
String normalizedNewColName = normalizeColumnName(newColumnName);
final ColumnData keyValuePairs = attributes.get(normalizedOldColName);
if (keyValuePairs != null) {
attributes.remove(normalizedOldColName);
attributes.put(normalizedNewColName, keyValuePairs);
}
final CyColumn column = types.get(normalizedOldColName);
types.remove(normalizedOldColName);
types.put(normalizedNewColName, column);
final VirtualColumn virtualColumn = virtualColumnMap.get(normalizedOldColName);
if (virtualColumn != null) {
virtualColumnMap.remove(normalizedOldColName);
virtualColumnMap.put(normalizedNewColName, virtualColumn);
}
final Set<CyColumn> columnDependents = dependents.get(normalizedOldColName);
if (columnDependents != null) {
dependents.remove(normalizedOldColName);
dependents.put(normalizedNewColName, columnDependents);
}
}
eventHelper.fireEvent(new ColumnNameChangedEvent(this, oldColumnName, newColumnName));
}
Aggregations