/******************************************************************************* * Copyright (c) 2007 VTT Technical Research Centre of Finland and others. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html * * Contributors: * VTT Technical Research Centre of Finland - initial API and implementation *******************************************************************************/ package org.simantics.proconf.g3d.input; /** * InputProvider is used to listen inputs from AWT-thread, * and then input actions can be polled from the provider. * * TODO : use methods instead of public members * * @author Marko Luukkainen * */ public interface InputProvider { public boolean keyPressed(int i); public boolean keyDown(int i); public boolean keyUp(int i); public int mouseX(); public int mouseY(); public int prevMouseX(); public int prevMouseY(); public boolean mousePressed(); public boolean mouseMoved(); public boolean mouseReleased(); public boolean mouseClicked(); public boolean mouseDragged(); public int pressModifiers(); public int clickModifiers(); public int dragModifiers(); public int moveModifiers(); public int clickButton(); public void update(); // FIXME : when dnd is used, mouse inputs won't get passed public void setMouseX(int x); public void setMouseY(int y); public void setMouseMoved(boolean b); }