import org.eclipse.core.runtime.IProgressMonitor;
import org.eclipse.jface.action.MenuManager;
import org.eclipse.jface.util.LocalSelectionTransfer;
+import org.eclipse.jface.viewers.AbstractTreeViewer;
import org.eclipse.jface.viewers.StructuredSelection;
import org.eclipse.jface.viewers.TreeNode;
import org.eclipse.jface.viewers.TreeViewer;
viewer = new TreeViewer(new Tree(parent, SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL | SWT.FULL_SELECTION));
viewer.setContentProvider(new DerivateContentProvider());
labelProvider = new DerivateLabelProvider();
+ labelProvider.setConversation(conversation);
viewer.setLabelProvider(labelProvider);
- viewer.setAutoExpandLevel(2);
+ viewer.setAutoExpandLevel(AbstractTreeViewer.ALL_LEVELS);
// Propagate selection from viewer
getSite().setSelectionProvider(viewer);
if(editorInput instanceof DerivateViewEditorInput){
SpecimenOrObservationBase<?> specimen = ((DerivateViewEditorInput) editorInput).getDerivate();
SpecimenOrObservationBase<?> rootElement = ((DerivateViewEditorInput) editorInput).getRootElement();
- setPartName(rootElement.toString());
+ setPartName(labelProvider.getDerivateText(rootElement));
viewer.setSelection(new StructuredSelection(new TreeNode(specimen)));
}
//add drag'n'drop support
Transfer[] transfers = new Transfer[] {LocalSelectionTransfer.getTransfer(),};
- viewer.addDragSupport(dndOperations, transfers, new DerivateDragListener(viewer));
+ viewer.addDragSupport(dndOperations, transfers, new DerivateDragListener(this));
viewer.addDropSupport(dndOperations, transfers, new DerivateDropListener(this));
}
*/
@Override
public void setFocus() {
+ viewer.getControl().setFocus();
//make sure to bind again if maybe in another view the conversation was unbound
if(!conversation.isBound()){
conversation.bind();
*/
@Override
public void workbenchShutdown(IMemento memento, IProgressMonitor monitor) {
+// if (!conversation.isBound()) {
+// conversation.bind();
+// }
+// conversation.close();
// if(memento == null){
// return;
// }