import org.eclipse.jface.viewers.ISelection;
import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.jface.viewers.TreeNode;
import org.eclipse.jface.viewers.Viewer;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.ui.IEditorPart;
/** {@inheritDoc} */
@Override
public void createViewer(Composite parent) {
- //selectionService.addPostSelectionListener(this);
viewer = new DetailsViewer(parent, this);
getSite().setSelectionProvider(viewer);
if((part instanceof IEditorPart) || (part instanceof IPartContentHasDetails)) {
if(structuredSelection.size() != 1){
+ setPartName(createPartTitle(null));
showEmptyPage();
return;
}
// do show the map for distributions
Feature feature = ((FeatureNodeContainer) ((IStructuredSelection) selection).getFirstElement()).getFeature();
if(!feature.equals(Feature.DISTRIBUTION())){
+ setPartName(createPartTitle(null));
showEmptyPage();
return;
}
}
+
+ setPartName(createPartTitle(((IStructuredSelection) selection).getFirstElement()));
showViewer(part, structuredSelection);
}else{
+ setPartName(createPartTitle(null));
showEmptyPage();
}
}
- /* (non-Javadoc)
- * @see eu.etaxonomy.taxeditor.view.AbstractCdmViewPart#showEmptyPage()
- */
+ private String getViewName(){
+ return "Details";
+ }
+
+ private String createPartTitle(Object selectedObject){
+ if(selectedObject!=null){
+ if(selectedObject instanceof TreeNode){
+ selectedObject = ((TreeNode) selectedObject).getValue();
+ }
+ return getViewName()+": "+selectedObject.getClass().getSimpleName();
+ }
+ return getViewName();
+ }
+
@Override
public void showEmptyPage() {
viewer.setSelection(null);
/** {@inheritDoc} */
@Override
public void dispose() {
- super.dispose();
selectionService.removePostSelectionListener(this);
+ super.dispose();
+
}
- /**
- * <p>onComplete</p>
- *
- * @return a boolean.
- */
@Override
public boolean onComplete() {
return true;