import org.eclipse.core.runtime.IStatus;
import org.eclipse.core.runtime.Status;
import org.eclipse.core.runtime.jobs.Job;
+import org.eclipse.jface.action.MenuManager;
import org.eclipse.jface.viewers.CellEditor;
import org.eclipse.jface.viewers.ICellModifier;
import org.eclipse.jface.viewers.ISelection;
import org.eclipse.jface.viewers.Viewer;
import org.eclipse.swt.SWT;
import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Control;
import org.eclipse.swt.widgets.Display;
+import org.eclipse.swt.widgets.Menu;
import org.eclipse.swt.widgets.Table;
import org.eclipse.ui.IWorkbenchPart;
import eu.etaxonomy.taxeditor.view.AbstractCdmViewPart;
/**
- * <p>ReferencingObjectsView class.</p>
- *
* @author p.ciardelli
* @created 08.07.2009
* @version 1.0
private static final Logger logger = Logger
.getLogger(ReferencingObjectsView.class);
- /** Constant <code>ID="eu.etaxonomy.taxeditor.bulkeditor.refer"{trunked}</code> */
public static final String ID = "eu.etaxonomy.taxeditor.bulkeditor.view.referencingobjects";
private TableViewer viewer;
cdmEntitySession = CdmStore.getCurrentSessionManager().bindNullSession();
}
- /* (non-Javadoc)
- * @see eu.etaxonomy.taxeditor.model.AbstractCdmViewPart#createViewer(org.eclipse.swt.widgets.Composite)
- */
/** {@inheritDoc} */
@Override
public void createViewer(Composite parent) {
viewer.setContentProvider(new ReferencingObjectsContentProvider());
viewer.setLabelProvider(new ReferencingObjectsLabelProvider());
viewer.setCellModifier(new ICellModifier() {
-
@Override
public void modify(Object element, String property, Object value) {
- // TODO Auto-generated method stub
-
}
@Override
return true;
}
});
-// viewer.setInput(new ArrayList<CdmBase>());
+
+ //create context menu
+ MenuManager menuManager = new MenuManager();
+ getSite().registerContextMenu(menuManager, viewer);
+ Control control = viewer.getControl();
+ Menu menu = menuManager.createContextMenu(control);
+ control.setMenu(menu);
+
+ // Propagate selection from viewer
+ getSite().setSelectionProvider(viewer);
}
/**
public void setFocus() {
cdmEntitySession.bind();
}
- /**
- * <p>updateReferencingObjects</p>
- *
- * @param entity a {@link eu.etaxonomy.cdm.model.common.IdentifiableEntity} object.
- */
+
public void updateReferencingObjects(final UUID entityUUID, final Class objectClass) {
final Display display = Display.getCurrent();
class ReferencingClassComparator implements Comparator<CdmBase> {
- /* (non-Javadoc)
- * @see java.util.Comparator#compare(java.lang.Object, java.lang.Object)
- */
@Override
public int compare(CdmBase o1, CdmBase o2) {
String string1 = o1.getClass().getSimpleName();
}
}
- /**
- *
- */
private void updateView(List<CdmBase> referencingObjects) {
if (viewer != null && !viewer.getControl().isDisposed()){
try{
/** {@inheritDoc} */
@Override
public void selectionChanged(IWorkbenchPart part, ISelection selection) {
+ if(part == this){
+ return;
+ }
if(! (part instanceof BulkEditor)){
setContentDescription("");
showEmptyPage();
showViewer(part, lineSelection);
}
- /* (non-Javadoc)
- * @see eu.etaxonomy.taxeditor.model.AbstractCdmViewPart#showViewer(org.eclipse.ui.IWorkbenchPart, org.eclipse.jface.viewers.ISelection)
- */
/** {@inheritDoc} */
@Override
public void showViewer(IWorkbenchPart part, IStructuredSelection selection) {
}
- /* (non-Javadoc)
- * @see eu.etaxonomy.taxeditor.model.AbstractCdmViewPart#getViewer()
- */
/** {@inheritDoc} */
@Override
public Viewer getViewer() {
return viewer;
}
- /* (non-Javadoc)
- * @see eu.etaxonomy.taxeditor.model.AbstractCdmViewPart#dirtyStateChanged()
- */
/** {@inheritDoc} */
@Override
public void changed(Object object) {
// no editing in this view
}
- /* (non-Javadoc)
- * @see eu.etaxonomy.taxeditor.operations.IPostOperationEnabled#onComplete()
- */
/** {@inheritDoc} */
@Override
public boolean onComplete() {
}
public void refresh(){
-
selectionService.removePostSelectionListener(this);
selectionService.removeSelectionListener(this);
selectionService.addPostSelectionListener(this);