/**
  * {@inheritDoc}
  *
  * @see org.eclipse.emfforms.spi.swt.core.AbstractSWTRenderer#dispose()
  */
 @Override
 protected void dispose() {
   rendererGridDescription = null;
   if (getViewModelContext() != null && domainModelListener != null) {
     getViewModelContext().unregisterDomainChangeListener(domainModelListener);
   }
   super.dispose();
 }
  /**
   * {@inheritDoc}
   *
   * @see org.eclipse.emfforms.spi.swt.core.AbstractSWTRenderer#applyValidation()
   */
  @Override
  protected void applyValidation() {
    super.applyValidation();

    if (treeViewer == null) {
      return;
    }
    Display.getDefault()
        .asyncExec(
            new Runnable() {

              @Override
              public void run() {
                if (treeViewer.getTree().isDisposed()) {
                  return;
                }
                treeViewer.refresh();
              }
            });
  }