private void updateTypeFieldsVisibility(Column column, ColumnPropertiesEditionPart basePart) { if (column.getType() instanceof TypeInstance) { TypeInstance typeInstance = (TypeInstance) column.getType(); if (typeInstance.getNativeType() != null) { NativeTypeKind nativeTypeKind = typeInstance.getNativeType().getSpec(); boolean lengthVisible = (nativeTypeKind == NativeTypeKind.LENGTH || nativeTypeKind == NativeTypeKind.LENGTH_AND_PRECISION); boolean precisionVisible = (nativeTypeKind == NativeTypeKind.LENGTH_AND_PRECISION); boolean literalsVisible = (nativeTypeKind == NativeTypeKind.ENUM); basePart.updateTypeFields(lengthVisible, precisionVisible, literalsVisible); } } }
@Override public void updateSemanticModel(IPropertiesEditionEvent event) { Column columnObject = (Column) semanticObject; if (DatabaseViewsRepository.Column.Properties.NullablePkAndUnique.primaryKey == event.getAffectedEditor()) { if (Boolean.TRUE.equals(event.getNewValue())) { columnObject.addToPrimaryKey(); } else { columnObject.removeFromPrimaryKey(); } } if (DatabaseViewsRepository.Column.Properties.NullablePkAndUnique.unique == event.getAffectedEditor()) { if (Boolean.TRUE.equals(event.getNewValue())) { columnObject.addToUniqueIndex(); } else { columnObject.removeFromUniqueIndex(); } } super.updateSemanticModel(event); }