X-Git-Url: https://gerrit.simantics.org/r/gitweb?a=blobdiff_plain;f=org.simantics.g3d%2Fsrc%2Forg%2Fsimantics%2Fproconf%2Fg3d%2Fgizmo%2FGizmo.java;fp=org.simantics.g3d%2Fsrc%2Forg%2Fsimantics%2Fproconf%2Fg3d%2Fgizmo%2FGizmo.java;h=551033f4592bfd80eb28e0764c0bf148158cd1a4;hb=10f144a2bb2d7bec98b812b83acecb333fd098ea;hp=0000000000000000000000000000000000000000;hpb=3055b543aa5afc0cca4bb3b341704e7c5103fa6a;p=simantics%2F3d.git diff --git a/org.simantics.g3d/src/org/simantics/proconf/g3d/gizmo/Gizmo.java b/org.simantics.g3d/src/org/simantics/proconf/g3d/gizmo/Gizmo.java new file mode 100644 index 00000000..551033f4 --- /dev/null +++ b/org.simantics.g3d/src/org/simantics/proconf/g3d/gizmo/Gizmo.java @@ -0,0 +1,50 @@ +/******************************************************************************* + * Copyright (c) 2007- VTT Technical Research Centre of Finland. + * 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); + +} \ No newline at end of file