package org.simantics.g3d.vtk.common; import java.awt.event.MouseEvent; import org.eclipse.swt.widgets.Display; import org.eclipse.swt.widgets.Menu; import vtk.vtkPanel; public class ContextMenuListener extends java.awt.event.MouseAdapter{ vtkPanel panel; Menu contextMenu; public ContextMenuListener(vtkPanel panel, Menu contextMenu) { this.panel = panel; this.contextMenu = contextMenu; this.panel.addMouseListener(this); } @Override public void mouseClicked(final MouseEvent e) { if (e.getButton() == java.awt.event.MouseEvent.BUTTON3) { Display.getDefault().asyncExec(new Runnable() { public void run() { contextMenu.setLocation(e.getXOnScreen(), e.getYOnScreen()); contextMenu.setVisible(true); } }); } } }