import org.eclipse.core.commands.ExecutionException;
import org.eclipse.core.runtime.NullProgressMonitor;
import org.eclipse.gef.mvc.fx.domain.IDomain;
import org.eclipse.gef.mvc.fx.operations.ITransactionalOperation;
import org.eclipse.gef.mvc.fx.viewer.IViewer;
<BUG>import org.eclipse.jface.action.Action;
import org.eclipse.swt.widgets.Event;</BUG>
import javafx.beans.value.ChangeListener;
import javafx.beans.value.ObservableValue;
public abstract class AbstractViewerAction extends Action

import org.eclipse.core.commands.ExecutionException;
import org.eclipse.core.runtime.NullProgressMonitor;
import org.eclipse.gef.mvc.fx.domain.IDomain;
import org.eclipse.gef.mvc.fx.operations.ITransactionalOperation;
import org.eclipse.gef.mvc.fx.viewer.IViewer;
import org.eclipse.jface.action.Action;
import org.eclipse.jface.action.IAction;
import org.eclipse.jface.resource.ImageDescriptor;
import org.eclipse.swt.widgets.Event;
import javafx.beans.value.ChangeListener;
import javafx.beans.value.ObservableValue;
public abstract class AbstractViewerAction extends Action
