X-Git-Url: https://dev.e-taxonomy.eu/gitweb/taxeditor.git/blobdiff_plain/1694322e0ab56c6b68ba5b5b4fffbe3660220b08..db81978c7bca9c0ea901c34b1f40fa79d45866fc:/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/view/derivateSearch/DerivateSearchView.java diff --git a/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/view/derivateSearch/DerivateSearchView.java b/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/view/derivateSearch/DerivateSearchView.java index c3e973ef0..9f950fa3f 100644 --- a/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/view/derivateSearch/DerivateSearchView.java +++ b/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/view/derivateSearch/DerivateSearchView.java @@ -10,7 +10,10 @@ package eu.etaxonomy.taxeditor.view.derivateSearch; import org.eclipse.core.runtime.IProgressMonitor; +import org.eclipse.jface.action.MenuManager; import org.eclipse.swt.widgets.Composite; +import org.eclipse.swt.widgets.Control; +import org.eclipse.swt.widgets.Menu; import org.eclipse.ui.IMemento; import org.eclipse.ui.part.ViewPart; @@ -44,6 +47,13 @@ public class DerivateSearchView extends ViewPart implements IContextListener { derivateSearchCompositeController = new DerivateSearchCompositeController(parent, this); getSite().setSelectionProvider(derivateSearchCompositeController.getResultViewer()); derivateSearchCompositeController.setEnabled(CdmStore.isActive()); + + //create context menu + MenuManager menuManager = new MenuManager(); + getSite().registerContextMenu(menuManager, derivateSearchCompositeController.getResultViewer()); + Control control = derivateSearchCompositeController.getResultViewer().getControl(); + Menu menu = menuManager.createContextMenu(control); + control.setMenu(menu); } /* (non-Javadoc) @@ -53,7 +63,7 @@ public class DerivateSearchView extends ViewPart implements IContextListener { public void setFocus() { derivateSearchCompositeController.setFocus(); //make sure to bind again if maybe in another view the conversation was unbound - if(getConversationHolder()!=null && !getConversationHolder().isBound()){ + if(getConversationHolder()!=null && !getConversationHolder().isClosed() && !getConversationHolder().isBound()){ getConversationHolder().bind(); } } @@ -93,6 +103,7 @@ public class DerivateSearchView extends ViewPart implements IContextListener { private void initConversation(){ if(conversationHolder==null){ conversationHolder = CdmStore.createConversation(); + derivateSearchCompositeController.setConversation(conversationHolder); } } @@ -101,9 +112,6 @@ public class DerivateSearchView extends ViewPart implements IContextListener { */ @Override public void workbenchShutdown(IMemento memento, IProgressMonitor monitor) { - if(getConversationHolder()!=null && getConversationHolder().isBound() && !getConversationHolder().isClosed()) { - getConversationHolder().close(); - } } /**