@Override
 public void setVisible(final boolean visible) {
   if (this.visible != visible) {
     this.visible = visible;
     changeObservable.fireChangedEvent();
   }
 }
 @Override
 public void setConfig(final IAttributeConfig config) {
   Assert.paramNotNull(config, "config");
   if (config.isVisible() != null) {
     this.visible = config.isVisible();
   }
   if (config.getLabelDisplayFormat() != null) {
     this.labelDisplayFormat = config.getLabelDisplayFormat();
   }
   if (config.getDisplayFormat() != null) {
     setDisplayFormatImpl(config.getDisplayFormat());
   }
   if (config.getTableAlignment() != null) {
     this.tableAlignment = config.getTableAlignment();
   }
   if (config.getTableWidth() != null) {
     this.tableColumnWidth = config.getTableWidth();
   }
   changeObservable.fireChangedEvent();
 }
 @Override
 public void setIcon(final IImageConstant icon) {
   this.icon = icon;
   changeObservable.fireChangedEvent();
 }
 @Override
 public void setToolTipText(final String toolTipText) {
   this.toolTipText = toolTipText;
   changeObservable.fireChangedEvent();
 }
 @Override
 public void removeChangeListener(final IChangeListener listener) {
   changeObservable.removeChangeListener(listener);
 }
 @Override
 public void addChangeListener(final IChangeListener listener) {
   changeObservable.addChangeListener(listener);
 }
 @Override
 public void setAlignment(final AlignmentHorizontal alignment) {
   this.alignment = alignment;
   changeObservable.fireChangedEvent();
 }
 @Override
 public void setWidth(final int width) {
   this.width = width;
   changeObservable.fireChangedEvent();
 }
 @Override
 public void setDisplayFormat(final IDisplayFormat displayFormat) {
   setDisplayFormatImpl(displayFormat);
   changeObservable.fireChangedEvent();
 }
 @Override
 public void setLabelDisplayFormat(final DisplayFormat displayFormat) {
   this.labelDisplayFormat = displayFormat;
   changeObservable.fireChangedEvent();
 }