/******************************************************************************* * 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.gizmo; import com.jme.scene.Node; /** * Interface for gizmos, interactive components in the scene-graph. * * @author Marko Luukkainen * */ public interface Gizmo { /** * Must return unique identifier for this gizmo * @return */ public abstract String getPickPrefix(); /** * Sets selected component (where mouse is hovering) by using its name. * Name includes pick prefix * @param name */ public abstract void setSelected(String name); /** * Returns root-node of the gizmo. It is used for inserting the gizmo into scenegraph. * @return */ public abstract Node getNode(); /** * Returns true if gizmo needs to be redrawn. * @return */ public boolean isChanged(); public void setChanged(boolean b); }