private void safeHandleEvent(Event event) { if (!(event.widget instanceof Menu)) { return; } final Menu menu = (Menu) event.widget; if (event.type == SWT.Dispose) { trace("handleMenu.Dispose", menu, null); //$NON-NLS-1$ cleanUp(menu); } Object obj = menu.getData(AbstractPartRenderer.OWNING_ME); if (obj == null && menu.getParentItem() != null) { obj = menu.getParentItem().getData(AbstractPartRenderer.OWNING_ME); } if (obj instanceof MPopupMenu) { handleContextMenu(event, menu, (MPopupMenu) obj); } else if (obj instanceof MMenu) { handleMenu(event, menu, (MMenu) obj); } }
private void handleMenu(final Event event, final Menu menu, final MMenu menuModel) { if ((menu.getStyle() & SWT.BAR) != 0) { // don't process the menu bar, it's not fair :-) return; } switch (event.type) { case SWT.Show: cleanUp(menu); showMenu(event, menu, menuModel); break; case SWT.Hide: // TODO we'll clean up on show break; } }
private void safeHandleEvent(Event event) { if (!(event.widget instanceof Menu)) { return; } final Menu menu = (Menu) event.widget; if (event.type == SWT.Dispose) { trace("handleMenu.Dispose", menu, null); //$NON-NLS-1$ cleanUp(menu); } Object obj = menu.getData(AbstractPartRenderer.OWNING_ME); if (obj == null && menu.getParentItem() != null) { obj = menu.getParentItem().getData(AbstractPartRenderer.OWNING_ME); } if (obj instanceof MPopupMenu) { handleContextMenu(event, menu, (MPopupMenu) obj); } else if (obj instanceof MMenu) { handleMenu(event, menu, (MMenu) obj); } }
private void handleMenu(final Event event, final Menu menu, final MMenu menuModel) { if ((menu.getStyle() & SWT.BAR) != 0) { // don't process the menu bar, it's not fair :-) return; } switch (event.type) { case SWT.Show: cleanUp(menu); showMenu(event, menu, menuModel); break; case SWT.Hide: // TODO we'll clean up on show break; } }