@Override public void refreshTableColumns(UpdatedNodeElement updated) { ERDiagram diagram = this.getDiagram(); NormalColumnFigure columnFigure = (NormalColumnFigure) this.getFigure(); NormalColumn normalColumn = (NormalColumn) this.getModel(); TableViewEditPart parent = (TableViewEditPart) this.getParent(); parent.getContentPane().add(figure); int notationLevel = diagram.getDiagramContents().getSettings().getNotationLevel(); if (notationLevel != Settings.NOTATION_LEVLE_TITLE) { TableFigure tableFigure = (TableFigure) parent.getFigure(); List<NormalColumn> selectedReferencedColulmnList = this.getSelectedReferencedColulmnList(); List<NormalColumn> selectedForeignKeyColulmnList = this.getSelectedForeignKeyColulmnList(); boolean isSelectedReferenced = selectedReferencedColulmnList.contains(normalColumn); boolean isSelectedForeignKey = selectedForeignKeyColulmnList.contains(normalColumn); boolean isAdded = false; boolean isUpdated = false; if (updated != null) { isAdded = updated.isAdded(normalColumn); isUpdated = updated.isUpdated(normalColumn); } if ((notationLevel == Settings.NOTATION_LEVLE_KEY) && !normalColumn.isPrimaryKey() && !normalColumn.isForeignKey() && !normalColumn.isReferedStrictly()) { columnFigure.clearLabel(); return; } addColumnFigure( diagram, tableFigure, columnFigure, normalColumn, isSelectedReferenced, isSelectedForeignKey, isAdded, isUpdated, false); if (selected) { columnFigure.setBackgroundColor(ColorConstants.titleBackground); columnFigure.setForegroundColor(ColorConstants.titleForeground); } } else { columnFigure.clearLabel(); return; } }