import org.simantics.g3d.math.MathTools;
import org.simantics.g3d.math.Ray;
import org.simantics.g3d.scenegraph.IG3DNode;
-import org.simantics.g3d.vtk.action.TranslateAction;
-import org.simantics.g3d.vtk.common.InteractiveVtkPanel;
import org.simantics.g3d.vtk.common.VTKNodeMap;
+import org.simantics.g3d.vtk.swt.InteractiveVtkComposite;
+import org.simantics.g3d.vtk.swt.TranslateAction;
import org.simantics.g3d.vtk.utils.vtkUtil;
import org.simantics.plant3d.Activator;
import org.simantics.plant3d.scenegraph.InlineComponent;
private Vector3d e;
private Vector3d dir;
- public TranslateInlineAction(InteractiveVtkPanel panel, VTKNodeMap nodeMap) {
+ public TranslateInlineAction(InteractiveVtkComposite panel, VTKNodeMap nodeMap) {
super(panel, nodeMap);
setImageDescriptor(Activator.imageDescriptorFromPlugin("com.famfamfam.silk", "icons/arrow_refresh.png"));
}
}
@Override
- public void keyPressed(KeyEvent e) {
+ public boolean keyPressed(KeyEvent e) {
if (e.getKeyCode() == KeyEvent.VK_ESCAPE)
panel.useDefaultAction();
if (valid)
- return;
+ return true;
update();
+ return true;
}
@Override
}
@Override
- public void mouseDragged(MouseEvent e) {
+ public boolean mouseDragged(MouseEvent e) {
if ((e.getModifiersEx() & MouseEvent.BUTTON1_DOWN_MASK) > 0 && valid) {
Vector3d translate = getTranslate(e.getX(), e.getY(), prevTranslate);
//System.out.println("translate " + translate);
if (translate == null)
- return;
+ return true;
//boolean step = ((e.getModifiers() & MouseEvent.CTRL_MASK) > 0);
Vector3d pos = new Vector3d(node.getWorldPosition());
//pos.add(translate);
//nodeMap.modified(node);
update();
} else {
- panel.getDefaultAction().mouseDragged(e);
+ getDefaultAction().mouseDragged(e);
update();
}
+ return true;
}
protected Vector3d getTranslate(double x, double y, Vector3d offset) {
- Ray ray = vtkUtil.createMouseRay(panel.GetRenderer(),x, y);
+ Ray ray = vtkUtil.createMouseRay(panel.getRenderer(),x, y);
Vector3d p = node.getWorldPosition();