try {
final SelectElementDialog menu = new SelectElementDialog(view, xAxisHierarchy, state);
menu.addSelectionListener(new Listener<SelectionEvent>() {
public void handleEvent(SelectionEvent se) {
XObject selection = se.getSelection();
XElement selectedElement = null;
if (selection instanceof XElement) {
selectedElement = (XElement) selection;
} else if(selection instanceof XElementNode) {
XElementNode node = (XElementNode) selection;
selectedElement = node.getElement();
}
((Workbench) Registry.get(Workbench.ID)).hideWaitCursor();
if (selectedElement != null
&& !selectedElement.equals(xAxisHierarchy.getSelectedElement()))
changeSelectedElement(widget, selectedElement);
}
});
menu.show(widget);
menu.focus();